Mercurial > repos > iuc > nanocomp
comparison nanocomp.xml @ 3:8b2f1e817c9d draft default tip
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/nanocomp commit 69a2f2135f021f6e7bc35bce7b4954d2779efc07
| author | iuc |
|---|---|
| date | Fri, 12 Dec 2025 08:20:02 +0000 |
| parents | 0670dca750f7 |
| children |
comparison
equal
deleted
inserted
replaced
| 2:0670dca750f7 | 3:8b2f1e817c9d |
|---|---|
| 1 <tool id="nanocomp" name="NanoComp" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="23.2"> | 1 <tool id="nanocomp" name="NanoComp" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="23.2"> |
| 2 <description>Compare multiple runs of long read sequencing data and alignments</description> | 2 <description>Compare multiple runs of long read sequencing data and alignments</description> |
| 3 <macros> | 3 <macros> |
| 4 <token name="@TOOL_VERSION@">1.25.6</token> | 4 <token name="@TOOL_VERSION@">1.25.6</token> |
| 5 <token name="@VERSION_SUFFIX@">0</token> | 5 <token name="@VERSION_SUFFIX@">1</token> |
| 6 </macros> | 6 </macros> |
| 7 <xrefs> | 7 <xrefs> |
| 8 <xref type="bio.tools">nanocomp</xref> | 8 <xref type="bio.tools">nanocomp</xref> |
| 9 </xrefs> | 9 </xrefs> |
| 10 <requirements> | 10 <requirements> |
| 11 <requirement type="package" version="@TOOL_VERSION@">nanocomp</requirement> | 11 <requirement type="package" version="@TOOL_VERSION@">nanocomp</requirement> |
| 12 </requirements> | 12 </requirements> |
| 13 <version_command>NanoComp -v</version_command> | 13 <version_command>NanoComp -v</version_command> |
| 14 <command detect_errors="exit_code"><![CDATA[ | 14 <command detect_errors="exit_code"><![CDATA[ |
| 15 #import re | 15 #import re |
| 16 ##link input file with names | 16 |
| 17 ##link input files with proper names (Nanocomp checks file-extensions) | |
| 18 #set $linked_files = [] | |
| 17 #for $file in $inputs.input_type.input_data | 19 #for $file in $inputs.input_type.input_data |
| 18 #if '.' in str($file.name) | 20 #if '.' in str($file.name) |
| 19 #set $in_name = re.sub('[\-\:\s]', '_', str($file.name)) | 21 #set $in_name = re.sub('[\-\:\s]', '_', str($file.name)) |
| 20 #else | 22 #else |
| 21 #set $in_name = re.sub('[\-\:\s]', '_', str($file.name)) + "." + $file.ext | 23 #set $in_name = re.sub('[\-\:\s]', '_', str($file.name)) + "." + $file.ext |
| 22 #end if | 24 #end if |
| 23 ln -sf $file $in_name && | 25 ln -sf '$file' '$in_name' && |
| 26 #silent $linked_files.append($in_name) | |
| 24 #end for | 27 #end for |
| 25 | 28 |
| 26 ##run nanocomp | 29 ##run nanocomp |
| 27 NanoComp | 30 NanoComp |
| 28 | 31 |
| 29 ##no need for the static images (becomes deprecated) | 32 ##no need for the static images (becomes deprecated) |
| 30 --make_no_static | 33 --make_no_static |
| 31 | 34 |
| 32 ## Compute options | 35 ##Compute options |
| 33 --threads \${GALAXY_SLOTS:-4} | 36 --threads \${GALAXY_SLOTS:-4} |
| 34 | 37 |
| 35 ##add input files | 38 ##add input files |
| 36 #if $inputs.input_type.input_type_selector == "fastq" | 39 #if $inputs.input_type.input_type_selector == "fastq" |
| 37 --fastq | 40 --fastq |
| 49 --pickle | 52 --pickle |
| 50 #else if $inputs.input_type.input_type_selector == "arrow" | 53 #else if $inputs.input_type.input_type_selector == "arrow" |
| 51 --arrow | 54 --arrow |
| 52 #end if | 55 #end if |
| 53 | 56 |
| 54 #for $file in $inputs.input_type.input_data | 57 ## add the input files |
| 55 #if '.' in str($file.name) | 58 #for $file in $linked_files |
| 56 #set $in_name = re.sub('[\-\:\s]', '_', str($file.name)) | 59 '$file' |
| 57 #else | |
| 58 #set $in_name = re.sub('[\-\:\s]', '_', str($file.name)) + "." + $file.ext | |
| 59 #end if | |
| 60 $in_name | |
| 61 #end for | 60 #end for |
| 62 | 61 |
| 63 ##Filter options | 62 ##Filter options |
| 64 #if $filters.maxlength | 63 #if $filters.maxlength |
| 65 --maxlength $filters.maxlength | 64 --maxlength $filters.maxlength |
| 92 | 91 |
| 93 --verbose | 92 --verbose |
| 94 >& $out_log | 93 >& $out_log |
| 95 | 94 |
| 96 ]]></command> | 95 ]]></command> |
| 97 <inputs> | 96 <inputs> |
| 98 <section name="inputs" title="Input data" expanded="True"> | 97 <section name="inputs" title="Input data" expanded="True"> |
| 99 <conditional name="input_type"> | 98 <conditional name="input_type"> |
| 100 <param name="input_type_selector" type="select" label="Choose Input Format and Files"> | 99 <param name="input_type_selector" type="select" label="Choose Input Format and Files"> |
| 101 <option value="fastq" selected="true">FASTQ files</option> | 100 <option value="fastq" selected="true">FASTQ files</option> |
| 102 <option value="fastq_r">FASTQ-rich files</option> | 101 <option value="fastq_r">FASTQ-rich files</option> |
| 103 <option value="fasta">FASTA files</option> | 102 <option value="fasta">FASTA files</option> |
| 104 <option value="bam">BAM files</option> | 103 <option value="bam">BAM files</option> |
| 105 <option value="ubam">uBAM files</option> | 104 <option value="ubam">uBAM files</option> |
| 106 <option value="cram">CRAM files</option> | 105 <option value="cram">CRAM files</option> |
| 107 <option value="pickle">PICKLE files</option> | 106 <option value="pickle">PICKLE files</option> |
| 108 <option value="arrow">ARROW files</option> | 107 <option value="arrow">ARROW files</option> |
| 109 </param> | 108 </param> |
| 110 <when value="fastq"> | 109 <when value="fastq"> |
| 111 <param name="input_data" type="data" format="fastq,fastq.gz" multiple="true" label="FASTQ input files" help="Data is in (compressed) fastq format" /> | 110 <param name="input_data" type="data" format="fastqsanger,fastqsanger.gz" multiple="true" label="FASTQ input files" help="Data is in (compressed) fastq format" /> |
| 112 </when> | 111 </when> |
| 113 <when value="fastq_r"> | 112 <when value="fastq_r"> |
| 114 <param name="input_data" type="data" format="fastq,fastq.gz" multiple="true" label="FASTQ input files" help="Data is in one or more fastq file(s) generated by MinKNOW or guppy with additional information concerning channel and time" /> | 113 <param name="input_data" type="data" format="fastqsanger,fastqsanger.gz" multiple="true" label="FASTQ input files" help="Data is in one or more fastq file(s) generated by MinKNOW or guppy with additional information concerning channel and time" /> |
| 115 </when> | 114 </when> |
| 116 <when value="fasta"> | 115 <when value="fasta"> |
| 117 <param name="input_data" type="data" format="fasta,fasta.gz" multiple="true" label="FASTA input files" help="Data is in (compressed) fasta format" /> | 116 <param name="input_data" type="data" format="fasta,fasta.gz" multiple="true" label="FASTA input files" help="Data is in (compressed) fasta format" /> |
| 118 </when> | 117 </when> |
| 119 <when value="bam"> | 118 <when value="bam"> |
| 120 <param name="input_data" type="data" format="bam" multiple="true" label="BAM input files" help="Data is in sorted bam files." /> | 119 <param name="input_data" type="data" format="bam" multiple="true" label="BAM input files" help="Data is in sorted bam files." /> |
| 121 </when> | 120 </when> |
| 122 <when value="ubam"> | 121 <when value="ubam"> |
| 123 <param name="input_data" type="data" format="bam" multiple="true" label="Unmapped BAM input files" help="Data is in one or more unmapped bam files." /> | 122 <param name="input_data" type="data" format="bam" multiple="true" label="Unmapped BAM input files" help="Data is in one or more unmapped bam files." /> |
| 124 </when> | 123 </when> |
| 125 <when value="cram"> | 124 <when value="cram"> |
| 126 <param name="input_data" type="data" format="cram" multiple="true" label="CRAM input files" help="Data is in sorted cram files." /> | 125 <param name="input_data" type="data" format="cram" multiple="true" label="CRAM input files" help="Data is in sorted cram files." /> |
| 127 </when> | 126 </when> |
| 128 <when value="pickle"> | 127 <when value="pickle"> |
| 129 <param name="input_data" type="data" format="binary" multiple="true" label="PICKLE input files" help="Data is in one or more pickle file(s) from using NanoComp/NanoPlot." /> | 128 <param name="input_data" type="data" format="binary" multiple="true" label="PICKLE input files" help="Data is in one or more pickle file(s) from using NanoComp/NanoPlot." /> |
| 130 </when> | 129 </when> |
| 131 <when value="arrow"> | 130 <when value="arrow"> |
| 132 <param name="input_data" type="data" format="binary" multiple="true" label="ARROW input files" help="Data is in one or more feather/arrow file(s)." /> | 131 <param name="input_data" type="data" format="binary" multiple="true" label="ARROW input files" help="Data is in one or more feather/arrow file(s)." /> |
| 133 </when> | 132 </when> |
| 134 </conditional> | 133 </conditional> |
| 135 </section> | 134 </section> |
| 136 | 135 |
| 137 <section name="filters" title="Filtering Input Prior To Plotting" expanded="false"> | 136 <section name="filters" title="Filtering Input Prior To Plotting" expanded="false"> |
| 138 <param argument="--maxlength" type="integer" optional="true" label="Max read length filtering" help="Drop reads longer than length specified." /> | 137 <param argument="--maxlength" type="integer" optional="true" label="Max read length filtering" help="Drop reads longer than length specified." /> |
| 139 <param argument="--minlength" type="integer" optional="true" label="Min read length filtering" help="Drop reads shorter than length specified." /> | 138 <param argument="--minlength" type="integer" optional="true" label="Min read length filtering" help="Drop reads shorter than length specified." /> |
| 140 </section> | 139 </section> |
| 141 | 140 |
| 142 <section name="plot_options" title="Plot Customization Options" expanded="false"> | 141 <section name="plot_options" title="Plot Customization Options" expanded="false"> |
| 143 <param argument="--plot" type="select" label="Plot Type" help="Specify the type of plot to be used."> | 142 <param argument="--plot" type="select" label="Plot Type" help="Specify the type of plot to be used."> |
| 144 <option value="box">Box plot</option> | 143 <option value="box">Box plot</option> |
| 145 <option value="violin" selected="true">Violin plot</option> | 144 <option value="violin" selected="true">Violin plot</option> |
| 146 <option value="ridge">Ridge (joyplot) plot</option> | 145 <option value="ridge">Ridge (joyplot) plot</option> |
| 147 <option value="not">No plot</option> | 146 <option value="not">No plot</option> |
| 148 </param> | 147 </param> |
| 149 <param argument="--title" type="text" label="Custom plot titles" help="Add a title to all plots." /> | 148 <param argument="--title" type="text" label="Custom plot titles" help="Add a title to all plots." /> |
| 150 <param argument="--names" type="text" label="Custom names" help="Specify the names (space seperated, respective to input) to be used for the datasets." /> | 149 <param argument="--names" type="text" label="Custom names" help="Specify the names (space seperated, respective to input) to be used for the datasets." /> |
| 151 <param argument="--colors" type="text" label="Custom colors" help="Specify the colors (space seperated, respective to input) to be used for each the datasets. Can be any valid Matplotlib color: Named, HEX-string, RGB, ... " /> | 150 <param argument="--colors" type="text" label="Custom colors" help="Specify the colors (space seperated, respective to input) to be used for each the datasets. Can be any valid Matplotlib color: Named, HEX-string, RGB, ... " /> |
| 152 </section> | 151 </section> |
| 153 | 152 |
| 154 <section name="output_options" title="Output Options" expanded="false"> | 153 <section name="output_options" title="Output Options" expanded="false"> |
| 155 <param argument="--tsv_stats" type="boolean" truevalue="--tsv_stats" falsevalue="" optional="true" checked="false" label="TSV Output Format" help="Output the statistics file as properly formatted TSV."/> | 154 <param argument="--tsv_stats" type="boolean" truevalue="--tsv_stats" falsevalue="" optional="true" checked="false" label="TSV Output Format" help="Output the statistics file as properly formatted TSV."/> |
| 156 </section> | 155 </section> |
| 157 | 156 |
| 158 </inputs> | 157 </inputs> |
| 159 | 158 |
| 160 | 159 <outputs> |
| 161 <outputs> | 160 <data name="out_log" format="txt" label="${tool.name} on ${on_string}: Log file"/> |
| 162 <data name="out_log" format="txt" label="${tool.name} on ${on_string}: Log file"/> | 161 <data name="stats_file" format="txt" from_work_dir="NanoStats.txt" label="${tool.name} on ${on_string}: Statistics file"/> |
| 163 <data name="stats_file" format="txt" from_work_dir="NanoStats.txt" label="${tool.name} on ${on_string}: Statistics file"/> | 162 <data name="html_report" format="html" from_work_dir="NanoComp-report.html" label="${tool.name} on ${on_string}: Html Report"/> |
| 164 <data name="html_report" format="html" from_work_dir="NanoComp-report.html" label="${tool.name} on ${on_string}: Html Report"/> | 163 </outputs> |
| 165 </outputs> | 164 <tests> |
| 166 <tests> | 165 <!-- 1) fastq.gz input --> |
| 167 <test expect_num_outputs="3"> | 166 <test expect_num_outputs="3"> |
| 168 <section name="inputs"> | 167 <section name="inputs"> |
| 169 <conditional name="input_type"> | 168 <conditional name="input_type"> |
| 170 <param name="input_type_selector" value="fastq" /> | 169 <param name="input_type_selector" value="fastq" /> |
| 171 <param name="input_data" value="in1.fastq.gz,in2.fastq.gz,in3.fastq.gz" /> | 170 <param name="input_data" ftype="fastqsanger.gz" value="in1.fastq.gz,in2.fastq.gz,in3.fastq.gz" /> |
| 172 </conditional> | 171 </conditional> |
| 173 </section> | 172 </section> |
| 174 <output name="stats_file" > | 173 <output name="stats_file" ftype="txt"> |
| 175 <assert_contents> | 174 <assert_contents> |
| 176 <has_text text="General summary" /> | 175 <has_text text="General summary" /> |
| 177 </assert_contents> | 176 </assert_contents> |
| 178 </output> | 177 </output> |
| 179 <output name="html_report"> | 178 <output name="html_report" ftype="html"> |
| 180 <assert_contents> | 179 <assert_contents> |
| 181 <has_text text="html"/> | 180 <has_text text="html"/> |
| 182 <has_text text="Summary statistics"/> | 181 <has_text text="Summary statistics"/> |
| 183 </assert_contents> | 182 </assert_contents> |
| 184 </output> | 183 </output> |
| 185 </test> | 184 </test> |
| 186 <test expect_num_outputs="3"> | 185 <!-- 2) bam input --> |
| 187 <section name="inputs"> | 186 <test expect_num_outputs="3"> |
| 188 <conditional name="input_type"> | 187 <section name="inputs"> |
| 189 <param name="input_type_selector" value="bam" /> | 188 <conditional name="input_type"> |
| 190 <param name="input_data" value="in4.bam,in5.bam" /> | 189 <param name="input_type_selector" value="bam" /> |
| 191 </conditional> | 190 <param name="input_data" ftype="bam" value="in4.bam,in5.bam" /> |
| 192 </section> | 191 </conditional> |
| 193 <section name="filters" > | 192 </section> |
| 194 <param name="maxlength" value="15000"/> | 193 <section name="filters" > |
| 195 <param name="minlength" value="500"/> | 194 <param name="maxlength" value="15000"/> |
| 196 </section> | 195 <param name="minlength" value="500"/> |
| 197 <output name="html_report"> | 196 </section> |
| 198 <assert_contents> | 197 <output name="html_report" ftype="html"> |
| 199 <has_text text="html"/> | 198 <assert_contents> |
| 200 <has_text text="Summary statistics"/> | 199 <has_text text="html"/> |
| 201 </assert_contents> | 200 <has_text text="Summary statistics"/> |
| 202 </output> | 201 </assert_contents> |
| 203 </test> | 202 </output> |
| 204 <test expect_num_outputs="3"> | 203 </test> |
| 205 <section name="inputs"> | 204 <!-- 3) fastq.gz input, tsv output --> |
| 206 <conditional name="input_type"> | 205 <test expect_num_outputs="3"> |
| 207 <param name="input_type_selector" value="fastq" /> | 206 <section name="inputs"> |
| 208 <param name="input_data" value="in1.fastq.gz,in3.fastq.gz" /> | 207 <conditional name="input_type"> |
| 209 </conditional> | 208 <param name="input_type_selector" value="fastq" /> |
| 210 </section> | 209 <param name="input_data" ftype="fastqsanger.gz" value="in1.fastq.gz,in3.fastq.gz" /> |
| 211 <section name="output_options"> | 210 </conditional> |
| 212 <param name="tsv_stats" value="true"/> | 211 </section> |
| 213 </section> | 212 <section name="output_options"> |
| 214 <output name="stats_file" > | 213 <param name="tsv_stats" value="true"/> |
| 215 <assert_contents> | 214 </section> |
| 216 <has_text text="Metrics" /> | 215 <output name="stats_file" ftype="txt"> |
| 217 </assert_contents> | 216 <assert_contents> |
| 218 </output> | 217 <has_text text="Metrics" /> |
| 219 </test> | 218 </assert_contents> |
| 220 <test expect_num_outputs="3"> | 219 </output> |
| 221 <section name="inputs"> | 220 </test> |
| 222 <conditional name="input_type"> | 221 <!-- 4) bam input, box plot output --> |
| 223 <param name="input_type_selector" value="bam" /> | 222 <test expect_num_outputs="3"> |
| 224 <param name="input_data" value="in4.bam,in5.bam" /> | 223 <section name="inputs"> |
| 225 </conditional> | 224 <conditional name="input_type"> |
| 226 </section> | 225 <param name="input_type_selector" value="bam" /> |
| 227 <section name="plot_options" > | 226 <param name="input_data" ftype="bam" value="in4.bam,in5.bam" /> |
| 228 <param name="plot" value="box"/> | 227 </conditional> |
| 229 </section> | 228 </section> |
| 230 <output name="html_report"> | 229 <section name="plot_options" > |
| 231 <assert_contents> | 230 <param name="plot" value="box"/> |
| 232 <has_text text="html"/> | 231 </section> |
| 233 <has_text text="Plots"/> | 232 <output name="html_report" ftype="html"> |
| 234 </assert_contents> | 233 <assert_contents> |
| 235 </output> | 234 <has_text text="html"/> |
| 236 </test> | 235 <has_text text="Plots"/> |
| 237 </tests> | 236 </assert_contents> |
| 238 <help>< | 255 - **Official Repository**: [GitHub - wdecoster/nanocomp](https://github.com/wdecoster/nanocomp) |
| 254 ]]></help> | 256 ]]></help> |
| 255 <citations> | 257 <citations> |
| 256 <citation type="doi">10.1093/bioinformatics/btad311</citation> | 258 <citation type="doi">10.1093/bioinformatics/btad311</citation> |
| 257 </citations> | 259 </citations> |
| 258 </tool> | 260 </tool> |
