Repository 'sra_tools'
hg clone https://toolshed.g2.bx.psu.edu/repos/iuc/sra_tools

Changeset 27:9a776b080193 (2023-01-22)
Previous changeset 26:83c7d564b128 (2021-09-03) Next changeset 28:4df8de2d0e48 (2023-02-06)
Commit message:
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/sra-tools commit cbb1499906c801443d72bdf313d86f0182aca010
modified:
fasterq_dump.xml
fastq_dump.xml
sam_dump.xml
test-data/ERR086330_1.fastq.gz
test-data/ERR086330_2.fastq.gz
test-data/SRR002702_1.fastq.gz
test-data/SRR002702_2.fastq.gz
test-data/SRR11953971_1.fastq.gz
test-data/SRR11953971_2.fastq.gz
test-data/SRR522874.fastq.gz
test-data/SRR522874.sra_1.fastq.gz
test-data/SRR522874.sra_2.fastq.gz
test-data/SRR522874.sra_3.fastq.gz
test-data/SRR522874.sra_4.fastq.gz
test-data/SRR522874_1.fastq.gz
test-data/SRR522874_2.fastq.gz
added:
macros.xml
test-data/SRR522874_sam_dump_result.sam
test-data/SRR925743_forward.fastqsanger
test-data/SRR925743_reverse.fastqsanger
test-data/SRR925743_sam_dump_result.sam
removed:
sra_macros.xml
test-data/fastq_dump_result.fastq
test-data/fastq_dump_result.fastq.gz
test-data/sam_dump_result.sam
b
diff -r 83c7d564b128 -r 9a776b080193 fasterq_dump.xml
--- a/fasterq_dump.xml Fri Sep 03 16:17:53 2021 +0000
+++ b/fasterq_dump.xml Sun Jan 22 17:51:50 2023 +0000
[
b'@@ -1,22 +1,21 @@\n-<tool id="fasterq_dump" name="Faster Download and Extract Reads in FASTQ" version="@VERSION@+galaxy1" profile="18.01">\n+<tool id="fasterq_dump" name="Faster Download and Extract Reads in FASTQ" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="@PROFILE@">\n     <description>format from NCBI SRA</description>\n-    <expand macro="bio_tools"/>\n     <macros>\n-        <import>sra_macros.xml</import>\n+        <import>macros.xml</import>\n     </macros>\n+    <expand macro="edam_ontology"/>\n+    <expand macro="bio_tools"/>\n     <expand macro="requirements"/>\n-    <version_command>fasterq-dump --version</version_command>\n+    <version_command>fasterq-dump --version | tr -d $\'\\n\'</version_command>\n     <command detect_errors="exit_code"><![CDATA[\n     set -o | grep -q pipefail && set -o pipefail;\n     @COPY_CONFIGFILE@\n+    @CONFIGURE_RETRY@\n     @SET_ACCESSIONS@\n-    #if $input.input_select == "file":\n-        acc=\'${input.file.name}\' &&\n-        ln -s \'${input.file}\' "\\$acc" &&\n-    #end if\n-    @CONFIGURE_RETRY@\n     while [ \\$SRA_PREFETCH_ATTEMPT -le \\$SRA_PREFETCH_RETRIES ] ; do\n         fasterq-dump "\\$acc" -e \\${GALAXY_SLOTS:-1}\n+        --seq-defline \'@\\$sn/\\$ri\'\n+        --qual-defline \'+\'\n         $adv.split\n         #if str( $adv.minlen ) != "":\n             --min-read-len "$adv.minlen"\n@@ -33,7 +32,7 @@\n     mkdir -p output &&\n     mkdir -p outputOther &&\n     count="\\$(ls *.fastq | wc -l)" &&\n-    echo "There are \\$count fastq" &&\n+    echo "There are \\$count fastq files" &&\n     data=(\\$(ls *.fastq)) &&\n     if [ "\\$count" -eq 1 ]; then\n         @COMPRESS@ "\\${data[0]}" > output/"\\${acc}"__single.fastqsanger.gz &&\n@@ -61,13 +60,11 @@\n             rm "\\$file";\n         done;\n     fi;\n-    #if $input.input_select=="file_list":\n-        ) ; done\n-\n-        ;\n-    #elif  $input.input_select=="accession_number":\n-    );\n+    \n+    #if $input.input_select != "sra_file":\n+        ); done;\n     #end if\n+    echo "Done with all accessions."\n     ]]>\n     </command>\n     <expand macro="configfile_hack"/>\n@@ -109,10 +106,8 @@\n             <param name="accession" value="ERR086330"/>\n             <output_collection name="list_paired" type="list:paired" count="1">\n                 <element name="ERR086330">\n-                    <element name="forward" file="ERR086330_1.fastq.gz" decompress="True">\n-                    </element>\n-                    <element name="reverse" file="ERR086330_2.fastq.gz" decompress="True">\n-                    </element>\n+                    <element name="forward" file="ERR086330_1.fastq.gz" ftype="fastqsanger.gz" decompress="True"/>\n+                    <element name="reverse" file="ERR086330_2.fastq.gz" ftype="fastqsanger.gz" decompress="True"/>\n                 </element>\n             </output_collection>\n         </test>\n@@ -127,22 +122,34 @@\n             </output_collection>\n         </test>\n         <test expect_num_outputs="4">\n-            <param name="input_select" value="file"/>\n-            <param name="file" value="SRR522874.sra"/>\n+            <param name="input_select" value="accession_number"/>\n+            <param name="accession" value="ERR086330, SRR11953971"/>\n+            <output_collection name="list_paired" type="list:paired" count="2">\n+                <element name="ERR086330">\n+                    <element name="forward" file="ERR086330_1.fastq.gz" ftype="fastqsanger.gz" decompress="True"/>\n+                    <element name="reverse" file="ERR086330_2.fastq.gz" ftype="fastqsanger.gz" decompress="True"/>\n+                </element>\n+                <element name="SRR11953971">\n+                    <element name="forward" file="SRR11953971_1.fastq.gz" ftype="fastqsanger.gz" decompress="True"/>\n+                    <element name="reverse" file="SRR11953971_2.fastq.gz" ftype="fastqsanger.gz" decompress="True"/>\n+                </element>\n+            </output_collection>\n+        </test>\n+        <test expect_num_outputs="4">\n+            <param name="input_se'..b'single accession number (e.g., `SRR1582967`) into **Accession** box and click **Execute** the tool will fetch data for you.\n+This tool extracts data (in fastq_ format) from the Short Read Archive (SRA) at the National Center for Biotechnology Information (NCBI). It is based on the fasterq-dump_ utility of the SRA Toolkit.  The following applies:\n \n------\n-\n-**Uploading multiple datasets using a list of accessions**\n-\n-A more realistic scenario is when you want to upload a number of datasets at once. To do this you need a list of accession, where there is only one accession per line (see below for information on how to generate such a file). Once you have this file:\n+ - if data is paired-ended (or mate-pair) the tool will generate a collection of file pairs, in which each element will be a pair of fastq_ files containing forward and reverse mates.\n+ - if data is single ended, each element of the collection will be a single fastq_ dataset.\n \n- 1. Upload it into your history using Galaxy\'s upload tool\n- 2. Once the list of accessions is uploaded choose *List of SRA accessions, one per line* from **select input type** dropdown\n- 3. Choose uploaded file within the **sra accession list** field\n- 4. Click **Execute**\n \n------\n-\n-**Extract data from already uploaded SRA dataset**\n-\n-If a SRA dataset is present in the history, it can be converted into fastq dataset by setting **select input type** drop-down to *SRA archive in current history*. Just like in the case of extracting data for single accession number the following applies:\n-\n- - if data is paired-ended (or mate-pair) the tool will generate a single *interleaved* dataset, in which forward and reverse mates are alternating (see example below).\n- - if data is single ended, a standard fastq dataset will be produced\n+@HOW_TO_USE_IT@\n \n -----\n \n **Output**\n \n-In every case, fastq datasets produced will be saved in Galaxy\'s history as a collection_ - a single history element containing multiple datasets.\n-In fact, three collections will be produced: one containing paired-end data, another containing single-end data, and a third one which contains reads which could not be classified.\n-Some collections may be empty if the accessions provided in the list does not contain one of the type of data.\n+In every case, fastq datasets produced will be saved in Galaxy\'s history as a collection_ - a single history element containing multiple datasets. In fact, regardless of the experimental design, three collections will be produced: one containing paired-end data, another containing single-end data, and a third one which contains reads which could not be classified.\n+Some collections may be empty if the accessions provided in the list do not contain one of the type of data.\n \n .. class:: warningmark\n \n@@ -236,7 +212,7 @@\n .. class:: warningmark\n \n By default, only biological reads are dumped and in case of PAIRED dataset only the spots which have both reads will be in the paired-end collection. The remaining single reads will be in the other colletion.\n-To keep all reads, and maybe do not have the same number of reads in forward and reverse use the --split-files option in Advanced Options, Select how to split the spots.\n+To keep all reads, and potentially not have the same number of reads in forward and reverse use the --split-files option in Advanced Options, Select how to split the spots.\n \n @ACCESSION_LIST_HOWTO@\n \n@@ -244,14 +220,12 @@\n \n \n .. _fastq: https://en.wikipedia.org/wiki/FASTQ_format\n-.. _fastq-dump: https://trace.ncbi.nlm.nih.gov/Traces/sra/sra.cgi?view=toolkit_doc&f=fastq-dump\n .. _fasterq-dump: https://github.com/ncbi/sra-tools/wiki/HowTo:-fasterq-dump\n .. _collection: https://galaxyproject.org/tutorials/collections/\n-.. _link: https://trace.ncbi.nlm.nih.gov/Traces/sra/sra.cgi?view=studies\n+.. _link: https://trace.ncbi.nlm.nih.gov/Traces/index.html?view=run_browser&display=reads\n \n @SRATOOLS_ATTRRIBUTION@\n-\n ]]>\n     </help>\n     <expand macro="citation"/>\n-  </tool>\n+</tool>\n'
b
diff -r 83c7d564b128 -r 9a776b080193 fastq_dump.xml
--- a/fastq_dump.xml Fri Sep 03 16:17:53 2021 +0000
+++ b/fastq_dump.xml Sun Jan 22 17:51:50 2023 +0000
[
b'@@ -1,16 +1,17 @@\n-<tool id="fastq_dump" name="Download and Extract Reads in FASTA/Q" version="@VERSION@+galaxy0" profile="18.01">\n+<tool id="fastq_dump" name="Download and Extract Reads in FASTQ" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="@PROFILE@">\n     <description>format from NCBI SRA</description>\n-    <expand macro="bio_tools"/>\n     <macros>\n-        <import>sra_macros.xml</import>\n+        <import>macros.xml</import>\n     </macros>\n+    <expand macro="edam_ontology"/>\n+    <expand macro="bio_tools"/>\n     <expand macro="requirements"/>\n-    <version_command>fastq-dump --version</version_command>\n+    <version_command>fastq-dump --version | tr -d $\'\\n\'</version_command>\n     <command detect_errors="exit_code"><![CDATA[\n     @COPY_CONFIGFILE@\n     @SET_ACCESSIONS@\n \n-    #if $input.input_select == "file":\n+    #if $input.input_select == "sra_file":\n         fastq-dump --log-level fatal --accession \'${input.file.name}\'\n     #else:\n         ## Do not use prefetch if region is specified, to avoid downloading\n@@ -64,38 +65,21 @@\n     #if str($adv.table) != "":\n         --table $adv.table\n     #end if\n-\n-\n-    #if $input.input_select=="file":\n-        --stdout\n-        "$input.file" > "$output_file"\n+    ;\n     \n-    #elif $input.input_select=="accession_number":\n-        --stdout\n-        "\\$acc" > "$output_accession" )\n+    mkdir -p output &&\n+    data=(\\$(ls ./*.fast*));\n+    if [ \\${\\#data[@]} -eq 2 ]; then\n+        mv "\\${data[0]}" output/"\\${data[0]}"_forward.$outputformat;\n+        mv "\\${data[1]}" output/"\\${data[1]}"_reverse.$outputformat;\n+    elif [ \\${\\#data[@]} -eq 1 ]; then\n+        mv "\\${data[0]}" output/"\\${data[0]}"__single.$outputformat;\n+    fi;\n+    \n+    #if $input.input_select != "sra_file":\n+        ); done;\n     #end if\n-\n-    #if $input.input_select=="file_list":\n-        "\\$acc"\n-        ) ; done\n-\n-        ;\n-\n-        for i in `ls *.fast* | cut -f 1 -d \'_\' | uniq` ; do\n-            count=`ls \\$i* | wc -l` ;\n-            data=(\\$(ls -d \\$i*));\n-      \n-            if [ "\\$count" -eq 2 ]; then\n-                mv "\\${data[0]}" "\\${data[0]}"_forward.$outputformat;  mv "\\${data[1]}" "\\${data[1]}"_reverse.$outputformat ;\n-            elif [ "\\$count" -eq 1 ]; then\n-                 mv "\\${data[0]}" "\\${data[0]}"__single.$outputformat ;\n-            fi;\n-        done\n-\n-\n-    #end if\n-\n-\n+    echo "Done with all accessions."\n     ]]>\n     </command>\n     <expand macro="configfile_hack"/>\n@@ -122,227 +106,165 @@\n                 <option value="redacted">redacted</option>\n             </param>\n             <param name="spotgroups" type="text" label="Filter by spot-groups" optional="true" argument="--spot-groups"/>\n-            <param name="clip" type="boolean" truevalue="--clip" falsevalue="" argument="--clip" label="Apply left and right clips" />\n-            <param name="skip_technical" type="boolean" truevalue="--skip-technical" falsevalue="" checked="False" label="Dump only biological reads" argument="--skip-technical"/>\n-            <param name="table" label="Table name within cSRA object" type="text" value="" optional="true" help="For SRA of noisy long-reads put SEQUENCE" argument="--table"/>\n+            <param type="boolean" truevalue="--clip" falsevalue="" argument="--clip" label="Apply left and right clips" />\n+            <param type="boolean" truevalue="--skip-technical" falsevalue="" checked="False" label="Dump only biological reads" argument="--skip-technical"/>\n+            <param label="Table name within cSRA object" type="text" value="" optional="true" help="For SRA of noisy long-reads put SEQUENCE" argument="--table"/>\n         </section>\n     </inputs>\n     <outputs>\n-        <collection name="list_paired" type="list:paired" label="Pair-end data (fastq-dump)">\n-            <filter>input[\'input_select\'] == "file_list"</filter>\n-\n+        <collection name="list_paired" type="list:paired" label="Paired-end data (fastq-dump)">\n         <!-- Use named regex group to grab patt'..b'ine* from **select input type** dropdown\n- 3. Choose uploaded file within the **sra accession list** field\n- 4. Click **Execute**\n+In every case, fastq datasets produced will be saved in Galaxy\'s history as a collection_ - a single history element containing multiple datasets. In fact, regardless of the experimental design, three collections will be produced: one containing paired-end data, another containing single-end data, and a third one which contains reads which could not be classified.\n+Some collections may be empty if the accessions provided in the list do not contain one of the type of data.\n \n .. class:: warningmark\n \n-Fastq datasets produced by this option will be saved in Galaxy\'s history as a collection_ - a single history element containing multiple datasets. In fact, two collections will be produced: one containing paired-end data and another containing single-end data. Single-end or pair-end collections may be empty if the accessions provided in the list contain only SINGLE or PAIRED data, respectively.\n-\n------\n+When you decide to dump technical reads (in Advanced Options Dump only biological reads is set to No), you will probably find your PAIRED data in the other data collection as it is impossible to determine if it was 2 biological reads or one biological and one technical.\n \n-**Extract data from already uploaded SRA dataset**\n+.. class:: warningmark\n \n-If a SRA dataset is present in the history, it can be converted into fastq dataset by setting **select input type** drop-down to *SRA archive in current history*. Just like in the case of extracting data for single accession number the following applies:\n-\n- - if data is paired-ended (or mate-pair) the tool will generate a single *interleaved* dataset, in which forward and reverse mates are alternating (see example below).\n- - if data is single ended, a standard fastq dataset will be produced\n+By default, only biological reads are dumped and in case of PAIRED dataset only the spots which have both reads will be in the paired-end collection. The remaining single reads will be in the other colletion.\n+To keep all reads, and potentially not have the same number of reads in forward and reverse use the --split-files option in Advanced Options, Select how to split the spots.\n \n @ACCESSION_LIST_HOWTO@\n \n -----\n \n-**Paired-end (and mate-pair) data in fastq format**\n-\n-Paired end datasets can be represented as two individual datasets:\n-\n-First dataset::\n-\n- @1/1\n- AGGGATGTGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTA\n- +\n- EGGEGGGDFGEEEAEECGDEGGFEEGEFGBEEDDECFEFDD@CDD<ED\n- @2/1\n- AGGGATGTGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTA\n- +\n- HHHHHHEGFHEEFEEHEEHHGGEGGGGEFGFGGGGHHHHFBEEEEEFG\n-\n-Second dataset::\n-\n- @1/2\n- CCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAAC\n- +\n- GHHHDFDFGFGEGFBGEGGEGEGGGHGFGHFHFHHHHHHHEF?EFEFF\n- @2/2\n- CCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAAC\n- +\n- HHHHHHHHHHHHHGHHHHHHGHHHHHHHHHHHFHHHFHHHHHHHHHHH\n-\n-Or a single *interleaved* dataset::\n-\n- @1/1\n- AGGGATGTGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTA\n- +\n- EGGEGGGDFGEEEAEECGDEGGFEEGEFGBEEDDECFEFDD@CDD<ED\n- @1/2\n- CCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAAC\n- +\n- GHHHDFDFGFGEGFBGEGGEGEGGGHGFGHFHFHHHHHHHEF?EFEFF\n- @2/1\n- AGGGATGTGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTA\n- +\n- HHHHHHEGFHEEFEEHEEHHGGEGGGGEFGFGGGGHHHHFBEEEEEFG\n- @2/2\n- CCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAAC\n- +\n- HHHHHHHHHHHHHGHHHHHHGHHHHHHHHHHHFHHHFHHHHHHHHHHH\n-\n-----\n-\n \n .. _fastq: https://en.wikipedia.org/wiki/FASTQ_format\n-.. _fastq-dump: https://trace.ncbi.nlm.nih.gov/Traces/sra/sra.cgi?view=toolkit_doc&f=fastq-dump\n+.. _fasterq-dump: https://github.com/ncbi/sra-tools/wiki/HowTo:-fasterq-dump\n .. _collection: https://galaxyproject.org/tutorials/collections/\n-.. _link: https://trace.ncbi.nlm.nih.gov/Traces/sra/sra.cgi?view=studies\n+.. _link: https://trace.ncbi.nlm.nih.gov/Traces/index.html?view=run_browser&display=reads\n \n @SRATOOLS_ATTRRIBUTION@\n-\n ]]>\n     </help>\n     <expand macro="citation"/>\n-  </tool>\n+</tool>\n'
b
diff -r 83c7d564b128 -r 9a776b080193 macros.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/macros.xml Sun Jan 22 17:51:50 2023 +0000
[
b'@@ -0,0 +1,188 @@\n+<macros>\n+    <token name="@TOOL_VERSION@">3.0.0</token>\n+    <token name="@VERSION_SUFFIX@">0</token>\n+    <token name="@PROFILE@">22.01</token>\n+    <xml name="edam_ontology">\n+        <edam_topics>\n+            <edam_topic>topic_0622</edam_topic> <!-- Genomics -->\n+            <edam_topic>topic_0091</edam_topic> <!-- Bioinformatics -->\n+        </edam_topics>\n+        <edam_operations>\n+            <edam_operation>operation_2422</edam_operation> <!-- Data retrieval -->\n+            <edam_operation>operation_0335</edam_operation> <!-- Formatting -->\n+        </edam_operations>\n+    </xml>\n+    <macro name="requirements">\n+        <requirements>\n+            <requirement type="package" version="@TOOL_VERSION@">sra-tools</requirement>\n+            <requirement type="package" version="2.6">pigz</requirement>\n+            <requirement type="package" version="1.16.1">samtools</requirement>\n+            <yield/>\n+        </requirements>\n+    </macro>\n+    <token name="@ACCESSIONS_FROM_FILE@">\n+        grep \'^[[:space:]]*[E|S|D]RR[0-9]\\{1,\\}[[:space:]]*$\'\n+    </token>\n+    <token name="@COMPRESS@"><![CDATA[pigz -cqp \\${GALAXY_SLOTS:-1}]]></token>\n+    <token name="@CONFIGURE_RETRY@"><![CDATA[\n+        export SRA_PREFETCH_RETRIES=3 &&\n+        export SRA_PREFETCH_ATTEMPT=1 &&\n+    ]]></token>\n+    <xml name="bio_tools">\n+        <xrefs>\n+            <xref type="bio.tools">sra-tools</xref>\n+        </xrefs>\n+    </xml>\n+    <token name="@COPY_CONFIGFILE@"><![CDATA[\n+        mkdir -p ~/.ncbi &&\n+        cp \'$user_settings_mkfg\' ~/.ncbi/user-settings.mkfg &&\n+        vdb-config -s "/repository/user/main/public/root=\\$PWD" &&\n+        vdb-config -s "/repository/user/ad/public/root=\\$PWD" &&\n+        vdb-config -s "/repository/user/default-path=\\$PWD" &&\n+        vdb-config -s "/repository/user/main/public/root=\\$PWD" &&\n+        vdb-config -s /http/timeout/read=10000 &&\n+    ]]></token>\n+    <token name="@SET_ACCESSIONS@"><![CDATA[\n+        #if $input.input_select == "sra_file":\n+            acc=\'${input.sra_file.name}\' &&\n+            ln -s \'${input.sra_file}\' "\\$acc" &&\n+        #else    \n+            #if $input.input_select == "file_list":\n+                #if $input.file_list.is_of_type(\'sra_manifest.tabular\'):\n+                    #set $column = $input.file_list.unsanitized.metadata.column_names.index(\'Run\') + 1\n+                    cut -f $column \'$input.file_list\'| tail -n +2 > accessions &&\n+                #else\n+                    @ACCESSIONS_FROM_FILE@ \'$input.file_list\' > accessions &&\n+                #end if\n+            #elif $input.input_select == "accession_number":\n+                echo \'${input.accession}\' | sed -r \'s/(\\,|\\;|__cn__)/\\n/g\' > accessions &&\n+            #end if\n+            for acc in \\$(cat ./accessions);\n+            do (\n+                echo "Downloading accession: \\$acc..." &&\n+        #end if  \n+    ]]></token>\n+    <macro name="configfile_hack">\n+        <configfiles>\n+            <configfile name="user_settings_mkfg"><![CDATA[\n+/LIBS/GUID = "3cdc38d0-711a-49ce-9536-f544eaf69eec"\n+/config/default = "false"\n+/libs/temp_cache = "."\n+/tools/prefetch/download_to_cache = "false"\n+            ]]></configfile>\n+        </configfiles>\n+    </macro>\n+    <macro name="sanitize_query">\n+        <sanitizer>\n+            <valid initial="string.printable">\n+                <remove value=" "/>\n+                <remove value="&apos;" />\n+            </valid>\n+            <mapping initial="none">\n+                <add source=" " target=""/>\n+                <add source="&apos;" target="&apos;&quot;&apos;&quot;&apos;"/>\n+            </mapping>\n+        </sanitizer>\n+    </macro>\n+    <macro name="input_conditional">\n+        <conditional name="input">\n+            <param name="input_select" type="select" label="select input type">\n+                <option value="accession_number">SRR accession</option>\n+                <option value="file_list">List of SRA accession, one per line</option>\n+   '..b'nt status." argument="--aligned and --unaligned">\n+            <option value="both">both</option>\n+            <option value="aligned">aligned only</option>\n+            <option value="unaligned">unaligned only</option>\n+        </param>\n+    </macro>\n+    <macro name="minMapq">\n+        <param name="minMapq" type="integer" min="0" max="42" label="Minimum mapping quality" optional="true" help="Minimum mapping quality an alignment has to have, to be dumped." argument="--min-mapq"/>\n+    </macro>\n+    <macro name="region">\n+        <param format="text" name="region" type="text" label="aligned region" optional="true"\n+               help="Filter by position on genome. Can be either accession.version (ex: NC_000001.10), chromosome name (ex:chr1 or 1) or 1-based coordinates (ex: chr1:1-101)." argument="--aligned-region"/>\n+    </macro>\n+    <macro name="matepairDist">\n+        <param name="matepairDist" type="text" label="mate-pair distance (from-to|unknown)" optional="true"\n+               help="Filter by distance between matepairs. Use unknown to find matepairs split between the references. Use from-to (inclusive) to limit matepair distance on the same reference" argument="--matepair-distance"/>\n+    </macro>\n+    <macro name="citation">\n+        <citations>\n+            <citation type="doi">10.1093/nar/gkq1019</citation>\n+            <citation type="bibtex">\n+@misc{github_sratools,\n+  author = {NCBI},\n+  title = {sra-tools},\n+  publisher = {GitHub},\n+  journal = {GitHub repository},\n+  url = {https://github.com/ncbi/sra-tools},\n+}</citation>\n+        </citations>\n+    </macro>\n+    <token name="@HOW_TO_USE_IT@">\n+    **How to use it?**\n+\n+There are three ways in which you can download data:\n+\n+ 1. Plain text input of accession number(s)\n+ 2. Providing a list of accessions from file\n+ 3. Extracting data from an already uploaded SRA dataset\n+\n+Below we discuss each in detail.\n+\n+------\n+\n+**Plain text input of accession number(s)**\n+\n+When you type an accession number (e.g., `SRR1582967`) into **Accession** box and click **Execute** the tool will fetch the data for you. You can also provide a list of multiple accession numbers (e.g. `SRR3141592, SRR271828, SRR112358`).\n+\n+-----\n+\n+**Providing a list of accessions from file**\n+\n+A more realistic scenario is when you want to upload a number of datasets at once. To do this you need a list of accession, where there is only one accession per line (see below for information on how to generate such a file). Once you have this file:\n+\n+ 1. Upload it into your history using Galaxy\'s upload tool\n+ 2. Once the list of accessions is uploaded choose *List of SRA accessions, one per line* from **select input type** dropdown\n+ 3. Choose uploaded file within the **sra accession list** field\n+ 4. Click **Execute**\n+\n+-----\n+\n+**Extract data from an already uploaded SRA dataset**\n+\n+If an SRA dataset is already present in the history, the sequencing data can be extracted in a human-readable data format (fastq, sam, bam) by setting **select input type** drop-down to *SRA archive in current history*.\n+    </token>\n+    <token name="@ACCESSION_LIST_HOWTO@">\n+-----\n+\n+**How to generate accession lists**\n+\n+ 1. Go to **SRA Run Selector** by clicking this link_\n+ 2. Find the study you are interested in by typing a search term within the **Search** box. This can be a word (e.g., *mitochondria*) or an accession you have gotten from a paper (e.g., *SRR1582967*).\n+ 3. Once you click on the study of interest you will see the number of datasets in this study within the **Related SRA data** box\n+ 4. Click on the Runs number\n+ 5. On the page that would open you will see **Accession List** button\n+ 6. Clicking of this button will produce a file that you will need to upload into Galaxy and use as the input to this tool.\n+    </token>\n+    <token name="@SRATOOLS_ATTRRIBUTION@">\n+For credits, information, support and bug reports, please refer ato https://github.com/galaxyproject/tools-iuc.\n+    </token>\n+</macros>\n'
b
diff -r 83c7d564b128 -r 9a776b080193 sam_dump.xml
--- a/sam_dump.xml Fri Sep 03 16:17:53 2021 +0000
+++ b/sam_dump.xml Sun Jan 22 17:51:50 2023 +0000
[
b'@@ -1,23 +1,21 @@\n-<tool id="sam_dump" name="Download and Extract Reads in BAM" version="@VERSION@+galaxy0" profile="18.01">\n+<tool id="sam_dump" name="Download and Extract Reads in BAM" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="@PROFILE@">\n     <description>format from NCBI SRA</description>\n-    <expand macro="bio_tools"/>\n     <macros>\n-        <import>sra_macros.xml</import>\n+        <import>macros.xml</import>\n     </macros>\n-    <expand macro="requirements">\n-        <requirement type="package" version="1.10">samtools</requirement>\n-    </expand>\n-    <version_command>sam-dump --version</version_command>\n-    <command detect_errors="exit_code">\n-<![CDATA[\n+    <expand macro="edam_ontology"/>\n+    <expand macro="bio_tools"/>\n+    <expand macro="requirements"/>\n+    <version_command>sam-dump --version | tr -d $\'\\n\'</version_command>\n+    <command detect_errors="exit_code"><![CDATA[\n         @COPY_CONFIGFILE@\n         @SET_ACCESSIONS@\n \n         ## Do not use prefetch if region is specified, to avoid downloading\n         ## the complete sra file.\n \n-        #if $input.input_select == "file":\n-            sam-dump --log-level fatal  \'${input.file.name}\'\n+        #if $input.input_select == "sra_file":\n+            sam-dump --log-level fatal  --accession \'\\$acc\'\n         #else:\n             #if ( str( $adv.region ) == "" ):\n                 prefetch -X 200000000 "\\$acc" &&\n@@ -45,32 +43,18 @@\n         #if (str( $adv.primary ) == "yes") and (str ( $adv.alignments != "unaligned") ):\n             --primary\n         #end if\n-        #if $input.input_select == "file":\n-            \'$input.file\'\n-        #elif $input.input_select == "accession_number":\n-            "\\$acc"\n-        #elif $input.input_select=="file_list":\n-            "\\$acc"\n-        #end if\n+        "\\$acc"\n \n         #if str( $outputformat ) == "bam":\n-            | samtools view -Sb - 2> /dev/null\n-        #end if\n-        #if $input.input_select == "file":\n-            > \'$output_file\'\n-        #elif $input.input_select == "accession_number":\n-            > \'$output_accession\' )\n+            | samtools view -Sb - 2> /dev/null > "\\$acc.bam"\n+        #elif str( $outputformat ) == "sam":\n+            > "\\$acc.sam"\n         #end if\n-\n-        #if $input.input_select=="file_list":\n-                 #if str( $outputformat ) == "bam":\n-                      > "\\$acc.bam"\n-                 #elif str( $outputformat ) == "sam":\n-                      > "\\$acc.sam"\n-                 #end if\n-        ) ; done\n+        \n+        #if $input.input_select != "sra_file":\n+            ); done;\n         #end if\n-\n+        echo "Done with all accessions."\n         ]]>\n     </command>\n     <expand macro="configfile_hack"/>\n@@ -93,23 +77,10 @@\n         </section>\n     </inputs>\n     <outputs>\n-        <collection name="output_collection" type="list" label="SAM/BAM data (fastq-dump)">\n-          <filter>input[\'input_select\'] == "file_list"</filter>\n-          <discover_datasets pattern="(?P&lt;designation&gt;.+)\\.bam" directory="." ext=\'bam\'/>\n-          <discover_datasets pattern="(?P&lt;designation&gt;.+)\\.sam" directory="." ext=\'sam\'/>\n+        <collection name="output_collection" type="list" label="sam-dump: Downloaded SAM/BAM data">\n+            <discover_datasets pattern="(?P&lt;designation&gt;.+)\\.bam" directory="." ext=\'bam\'/>\n+            <discover_datasets pattern="(?P&lt;designation&gt;.+)\\.sam" directory="." ext=\'sam\'/>\n         </collection>\n-        <data name="output_accession" format="bam" label="${input.accession} (sam-dump)">\n-            <filter>input[\'input_select\'] == "accession_number"</filter>\n-            <change_format>\n-                <when input="outputformat" value="sam" format="sam"/>\n-            </change_format>\n-        </data>\n-        <data name="output_file" format="bam" label="${input.file.name} (sam-dump)">\n-            <filter>input[\'input_select\'] == "file"</filter>\n-            <change_format>\n-                <when input="outpu'..b'e="sam" format="sam"/>\n-            </change_format>\n-        </data>\n     </outputs>\n     <tests>\n         <test>\n@@ -117,60 +88,38 @@\n             <param name="accession" value="SRR925743"/>\n             <param name="outputformat" value="sam"/>\n             <param name="region" value="17:41243452-41277500"/>\n-            <output name="output_accession" file="sam_dump_result.sam" compare="contains" ftype="sam"/>\n+            <output_collection name="output_collection" type="list" count="1">\n+                <element name="SRR925743" file="SRR925743_sam_dump_result.sam" compare="contains" ftype="sam"/>\n+            </output_collection>\n+        </test>\n+        <test>\n+            <param name="input_select" value="accession_number"/>\n+            <param name="accession" value="SRR925743,SRR522874"/>\n+            <param name="outputformat" value="sam"/>\n+            <param name="region" value="17:41243452-41277500"/>\n+            <output_collection name="output_collection" type="list" count="2">\n+                <element name="SRR522874" file="SRR522874_sam_dump_result.sam" compare="contains" ftype="sam"/>\n+                <element name="SRR925743" file="SRR925743_sam_dump_result.sam" compare="contains" ftype="sam"/>\n+            </output_collection>\n         </test>\n     </tests>\n     <help><![CDATA[\n \n **What it does?**\n \n-This tool extracts data (in BAM_ format) from the Short Read Archive (SRA) at the National Center for Biotechnology Information (NCBI). It is based on the sam-dump_ utility of the SRA Toolkit.\n-\n-**How to use it?**\n-\n-There are three ways in which you can download data:\n-\n- 1. Data for single accession\n- 2. Multiple datasets using a list of accessions\n- 3. Extract data from already uploaded SRA dataset\n-\n-Below we discuss each in detail.\n-\n-------\n-\n-**Uploading data for a single accession**\n-\n-When you type a single accession number (e.g., `SRR1582967`) into **Accession** box and click **Execute** the tool will fetch data for you. As a result you will get a single BAM (or SAM) dataset in the history.\n+This tool extracts data (in BAM_ format) from the Short Read Archive (SRA) at the National Center for Biotechnology Information (NCBI). It is based on the sam-dump_ utility of the SRA Toolkit and returns a collection of NGS data containing one file for each accession number provided.\n \n------\n \n-**Uploading multiple datasets using a list of accessions**\n-\n-A more realistic scenario is when you want to upload a number of datasets at once. To do this you need a list of accession, where there is only one accession per line (see below for information on how to generate such a file). Once you have this file:\n-\n- 1. Upload it into your history using Galaxy\'s upload tool\n- 2. Once the list of accessions is uploaded choose *List of SRA accessions, one per line* from **select input type** dropdown\n- 3. Choose uploaded file within the **sra accession list** field\n- 4. Click **Execute**\n-\n-.. class:: warningmark\n-\n-BAM datasets produced by this option will be saved in Galaxy\'s history as a collection_ - a single history element containing multiple datasets.\n-\n------\n-\n-**Extract data from already uploaded SRA dataset**\n-\n-If a SRA dataset is present in the history, it can be converted into BAM dataset by setting **select input type** drop-down to *SRA archive in current history*. Just like in the case of extracting data for single accession number a single BAM dataset will be generated in the history.\n+@HOW_TO_USE_IT@\n \n @ACCESSION_LIST_HOWTO@\n \n -----\n \n+.. _sam-dump: https://github.com/ncbi/sra-tools\n .. _BAM: https://samtools.github.io/hts-specs/SAMv1.pdf\n-.. _sam-dump: https://trace.ncbi.nlm.nih.gov/Traces/sra/sra.cgi?view=toolkit_doc&f=sam-dump\n .. _collection: https://galaxyproject.org/tutorials/collections/\n-.. _link: https://trace.ncbi.nlm.nih.gov/Traces/sra/sra.cgi?view=studies\n+.. _link: https://trace.ncbi.nlm.nih.gov/Traces/index.html?view=run_browser&display=reads\n \n @SRATOOLS_ATTRRIBUTION@\n     ]]></help>\n'
b
diff -r 83c7d564b128 -r 9a776b080193 sra_macros.xml
--- a/sra_macros.xml Fri Sep 03 16:17:53 2021 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
[
@@ -1,132 +0,0 @@
-<macros>
-    <token name="@VERSION@">2.11.0</token>
-    <token name="@ACCESSIONS_FROM_FILE@">
-        grep '^[[:space:]]*[E|S|D]RR[0-9]\{1,\}[[:space:]]*$'
-    </token>
-    <token name="@COMPRESS@"><![CDATA[pigz -cqp \${GALAXY_SLOTS:-1}]]></token>
-    <token name="@CONFIGURE_RETRY@"><![CDATA[
-        export SRA_PREFETCH_RETRIES=3 &&
-        export SRA_PREFETCH_ATTEMPT=1 &&
-    ]]></token>
-    <xml name="bio_tools">
-        <xrefs>
-            <xref type="bio.tools">sra-tools</xref>
-        </xrefs>
-    </xml>
-    <token name="@COPY_CONFIGFILE@"><![CDATA[
-    mkdir -p ~/.ncbi &&
-    cp '$user_settings_mkfg' ~/.ncbi/user-settings.mkfg &&
-    vdb-config -s "/repository/user/main/public/root=\$PWD" &&
-    vdb-config -s "/repository/user/ad/public/root=\$PWD" &&
-    vdb-config -s "/repository/user/default-path=\$PWD" &&
-    vdb-config -s "/repository/user/main/public/root=\$PWD" &&
-    vdb-config -s /http/timeout/read=10000 &&
-    ]]></token>
-    <token name="@SET_ACCESSIONS@"><![CDATA[
-        #if $input.input_select=="file_list":
-            #if $input.file_list.is_of_type('sra_manifest.tabular'):
-                #set $column = $input.file_list.unsanitized.metadata.column_names.index('Run') + 1
-                cut -f $column '$input.file_list'| tail -n +2 > "manifest" &&
-            #else
-                ln -s '$input.file_list' manifest &&
-            #end if
-            for acc in `@ACCESSIONS_FROM_FILE@ manifest` ;
-            do (
-        #elif $input.input_select=="accession_number":
-            acc='${input.accession}' && [ ""\$acc" =~ ^[E|S|D]RR[0-9]{1,}$" ] && (
-        #end if
-    ]]></token>
-
-    <macro name="requirements">
-        <requirements>
-            <requirement type="package" version="@VERSION@">sra-tools</requirement>
-            <requirement type="package" version="2.5">pigz</requirement>
-            <yield/>
-        </requirements>
-    </macro>
-    <macro name="configfile_hack">
-        <configfiles>
-            <configfile name="user_settings_mkfg"><![CDATA[
-/LIBS/GUID = "3cdc38d0-711a-49ce-9536-f544eaf69eec"
-/config/default = "false"
-/libs/temp_cache = "."
-/tools/prefetch/download_to_cache = "false"
-            ]]></configfile>
-        </configfiles>
-    </macro>
-    <macro name="sanitize_query">
-        <sanitizer>
-            <valid initial="string.printable">
-                <remove value=" "/>
-                <remove value="&apos;" />
-            </valid>
-            <mapping initial="none">
-                <add source=" " target=""/>
-                <add source="&apos;" target="&apos;&quot;&apos;&quot;&apos;" />
-            </mapping>
-        </sanitizer>
-    </macro>
-    <macro name="input_conditional">
-        <conditional name="input">
-            <param name="input_select" type="select" label="select input type">
-                <option value="accession_number">SRR accession</option>
-                <option value="file_list">List of SRA accession, one per line</option>
-                <option value="file">SRA archive in current history</option>
-            </param>
-            <when value="accession_number">
-                <param name="accession" type="text" label="Accession" help="Must start with SRR, DRR or ERR, e.g. SRR925743, ERR343809">
-                    <expand macro="sanitize_query" />
-                    <validator type="empty_field" message="An accession is required"/>
-                </param>
-            </when>
-            <when value="file">
-                <param format="sra" name="file" type="data" label="sra archive"/>
-            </when>
-            <when value="file_list">
-                <param format="txt" name="file_list" type="data" label="sra accession list"/>
-            </when>
-        </conditional>
-    </macro>
-    <macro name="alignments">
-        <param name="alignments" type="select" value="both" label="Output aligned or unaligned reads" help="Output reads according to their alignment status." argument="--aligned and --unaligned">
-            <option value="both">both</option>
-            <option value="aligned">aligned only</option>
-            <option value="unaligned">unaligned only</option>
-        </param>
-    </macro>
-    <macro name="minMapq">
-        <param name="minMapq" type="integer" min="0" max="42" label="Minimum mapping quality" optional="true" help="Minimum mapping quality an alignment has to have, to be dumped." argument="--min-mapq"/>
-    </macro>
-    <macro name="region">
-        <param format="text" name="region" type="text" label="aligned region" optional="true"
-               help="Filter by position on genome. Can be either accession.version (ex: NC_000001.10), chromosome name (ex:chr1 or 1) or 1-based coordinates (ex: chr1:1-101)." argument="--aligned-region"/>
-    </macro>
-    <macro name="matepairDist">
-        <param name="matepairDist" type="text" label="mate-pair distance (from-to|unknown)" optional="true"
-               help="Filter by distance between matepairs. Use unknown to find matepairs split between the references. Use from-to (inclusive) to limit matepair distance on the same reference" argument="--matepair-distance"/>
-    </macro>
-    <macro name="citation">
-        <citations>
-            <citation type="doi">10.1093/nar/gkq1019</citation>
-        </citations>
-    </macro>
-    <token name="@ACCESSION_LIST_HOWTO@">
------
-
-**How to generate accession lists**
-
- 1. Go to **SRA Run Selector** by clicking this link_
- 2. Find the study you are interested in by typing a search term within the **Search** box. This can be a word (e.g., *mitochondria*) or an accession you have gotten from a paper (e.g., *SRR1582967*).
- 3. Once you click on the study of interest you will see the number of datasets in this study within the **Related SRA data** box
- 4. Click on the Runs number
- 5. On the page that would open you will see **Accession List** button
- 6. Clicking of this button will produce a file that you will need to upload into Galaxy and use as the input to this tool.
-    </token>
-
-    <token name="@SRATOOLS_ATTRRIBUTION@">
-Galaxy tool wrapper originally written by Matt Shirley (mdshw5 at gmail.com).
-Wrapper modified by Philip Mabon ( philip.mabon at phac-aspc.gc.ca ).
-Tool dependencies, clean-up and bug-fixes by Marius van den Beek (m.vandenbeek at gmail.com).
-For support and bug reports contact Matt Shirley or Marius van den Beek or go to https://github.com/galaxyproject/tools-iuc.
-    </token>
-</macros>
b
diff -r 83c7d564b128 -r 9a776b080193 test-data/ERR086330_1.fastq.gz
b
Binary file test-data/ERR086330_1.fastq.gz has changed
b
diff -r 83c7d564b128 -r 9a776b080193 test-data/ERR086330_2.fastq.gz
b
Binary file test-data/ERR086330_2.fastq.gz has changed
b
diff -r 83c7d564b128 -r 9a776b080193 test-data/SRR002702_1.fastq.gz
b
Binary file test-data/SRR002702_1.fastq.gz has changed
b
diff -r 83c7d564b128 -r 9a776b080193 test-data/SRR002702_2.fastq.gz
b
Binary file test-data/SRR002702_2.fastq.gz has changed
b
diff -r 83c7d564b128 -r 9a776b080193 test-data/SRR11953971_1.fastq.gz
b
Binary file test-data/SRR11953971_1.fastq.gz has changed
b
diff -r 83c7d564b128 -r 9a776b080193 test-data/SRR11953971_2.fastq.gz
b
Binary file test-data/SRR11953971_2.fastq.gz has changed
b
diff -r 83c7d564b128 -r 9a776b080193 test-data/SRR522874.fastq.gz
b
Binary file test-data/SRR522874.fastq.gz has changed
b
diff -r 83c7d564b128 -r 9a776b080193 test-data/SRR522874.sra_1.fastq.gz
b
Binary file test-data/SRR522874.sra_1.fastq.gz has changed
b
diff -r 83c7d564b128 -r 9a776b080193 test-data/SRR522874.sra_2.fastq.gz
b
Binary file test-data/SRR522874.sra_2.fastq.gz has changed
b
diff -r 83c7d564b128 -r 9a776b080193 test-data/SRR522874.sra_3.fastq.gz
b
Binary file test-data/SRR522874.sra_3.fastq.gz has changed
b
diff -r 83c7d564b128 -r 9a776b080193 test-data/SRR522874.sra_4.fastq.gz
b
Binary file test-data/SRR522874.sra_4.fastq.gz has changed
b
diff -r 83c7d564b128 -r 9a776b080193 test-data/SRR522874_1.fastq.gz
b
Binary file test-data/SRR522874_1.fastq.gz has changed
b
diff -r 83c7d564b128 -r 9a776b080193 test-data/SRR522874_2.fastq.gz
b
Binary file test-data/SRR522874_2.fastq.gz has changed
b
diff -r 83c7d564b128 -r 9a776b080193 test-data/SRR522874_sam_dump_result.sam
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/SRR522874_sam_dump_result.sam Sun Jan 22 17:51:50 2023 +0000
b
@@ -0,0 +1,6 @@
+ETOOIVN07D9GPH 13 * 0 0 * * 0 0 GAATCCCGATATCATCATGAA 2L5AW?.A@BAB?A@ABBCN8
+ETOOIVN07D9GPH 141 * 0 0 * * 0 0 CATTGCTGAAAAACTCGGCGGCTGAGCGGGCTGGCAAGGC 8CN8=BC?]C7.%BA?I5?K7@>AA@AT@/A=K8BK8K7@
+ETOOIVN07ED00L 13 * 0 0 * * 0 0 ACTGAACACCACGAAGTAGA 5B@@G/:BN8A>AM6CCAA@
+ETOOIVN07ED00L 141 * 0 0 * * 0 0 AGTCGTACAGACGACGGTTGTCTGAGCGGGCTGGCAAGGC B7@A?CB>>ABB=BCM6N8==BBBA=AV@1=@K8AJ7K8A
+ETOOIVN07EE1GA 13 * 0 0 * * 0 0 GGAATTTTTCCGTTGCTGAT 7#K5]B7-$N8BM7BBCB>B
+ETOOIVN07EE1GA 141 * 0 0 * * 0 0 GCCAGGTGGACGTTAAATATCTGAGCGGGCTGGCAAGGC 9M7BK7AK4A>:N8Z@1<CAC@BA??S?-?@K7AK8K8@
b
diff -r 83c7d564b128 -r 9a776b080193 test-data/SRR925743_forward.fastqsanger
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/SRR925743_forward.fastqsanger Sun Jan 22 17:51:50 2023 +0000
b
@@ -0,0 +1,20 @@
+@1/1
+AGGGATGTGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGT
++
+EGGEGGGDFGEEEAEECGDEGGFEEGEFGBEEDDECFEFDD@CDD<EDDE?2@?AEEDEED=D+C?5@A=6:>BA8:>@:4+36945&4354445>/B>@
+@2/1
+AGGGATGTGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGGTAGGGTTAGGGT
++
+HHHHHHEGFHEEFEEHEEHHGGEGGGGEFGFGGGGHHHHFBEEEEEFGGEEAEEEDD0ADDBD9BDBDDA@6?BA;?CD=:-7<<::)1;5,6-6A@?=9
+@3/1
+CCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCCA
++
+HHHHFHHHHHHHHHHHFHHHHHHHHHHHHHHHHHHHHHHHGEFHGEGGFGGGGGGHHHHEFEIDDEEEEEDD4DD;??:6>6<@.<==@?.@@<?#####
+@4/1
+CCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACACTAACCCTAACCCTAACCCTAACCCTA
++
+HHGBHHHHGFHHHHHFDHHFHGEHHHHHEFHHHHEGEGEFFFAFFFDCFGF?@GCDFGFEFHHEFDF*F6DC4DD:A8>@D@CD8->=>=<@CB@#####
+@5/1
+CCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACACTAACCCTCACACTCACCCTA
++
+GGGFGFFGGGFBGGEGGFFGGGCFFGGGGGEGFFFFFGFFGFFFDFFB+FGGFEE?FCF::7B5A?+BB###############################
b
diff -r 83c7d564b128 -r 9a776b080193 test-data/SRR925743_reverse.fastqsanger
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/SRR925743_reverse.fastqsanger Sun Jan 22 17:51:50 2023 +0000
b
@@ -0,0 +1,20 @@
+@1/2
+CCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTA
++
+GHHHDFDFGFGEGFBGEGGEGEGGGHGFGHFHFHHHHHHHEF?EFEFF?EHGGHHHGHFHEHDEHGHFFEEE9BDDBEBAD.AD:ACBBC=4@>?5>=+?
+@2/2
+CCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTA
++
+HHHHHHHHHHHHHGHHHHHHGHHHHHHHHHHHFHHHFHHHHHHHHHHHHHHHHHHHGHHHGHHBHGHHFDBDDED5FCFCEEGF<@>>>@,<5<@@?>;D
+@3/2
+ATGGATGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGT
++
+HHHHHHHHHFIEGFHFHDHHHHGFFHGEGDIGGEGGHHHAGEGGGDHHHHHHHHHHHFGDGGGEGDFFF>BEEEE3B;BB;>B7C@DA=DFBDD.BEE=9
+@4/2
+ATGGATGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGT
++
+GFFFHHFFHHHFHHFEFGGBGEEEE?<9?6=>>:=DDDD@DBGDB;DBDBA.ADD8<2<>6A@=A5>550=>>>>BE;EEEDEEE79+336<68=BCEB@
+@5/2
+ATGGATGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGGTAGGGTTAGGGTTAGGGTTAGGGGTAGGGT
++
+479<.>><:<A7BABBE8@=:<<:@BB?C75:2?;.5<<3FEFGEEC88FEDEE=AB><AA@B<ABDC8.27<9:58.58??6<:@>+?=9@########
b
diff -r 83c7d564b128 -r 9a776b080193 test-data/SRR925743_sam_dump_result.sam
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/SRR925743_sam_dump_result.sam Sun Jan 22 17:51:50 2023 +0000
b
@@ -0,0 +1,10 @@
+44155511 165 * 0 0 * 17 41275978 0 CATTAATGCTATGCAGATAATCATAGGAATCCCAAATTAATACACTCTTGTGCTGACTTACCAGATGGGACACTCTAAGATTTTCTGCATAGCATTAATG HHHHHHHHHHHHHHHHHGHDHHHHHHHHHHHHHEHHHHHHHGHHHGHHHHHHHHHHHHHHHHHHHGFHHFHHHHHFHEBGHHHHHD<EFGBBBCAGFGE; RG:Z:0
+44155516 165 * 0 0 * 17 41275988 0 CATTAATGCTATGCAGATAATCATAGGAATCCCAAATTAATACACTCTTGTGCTGACTTACCAGATGGGACACTCTAAGATTTTCTGCATAGCATTAATG HHHHHHHHHHHHHHHHFGHHHHHHGHHHHHHHHGHFHHHHHHHEHHHHHFHHHHHFHHHHHHHHHFCCDDHFFHGFHHHBBHFHHFFF@FEFCCBBEE=: RG:Z:0
+44155520 133 * 0 0 * 17 41276001 0 ATCCCAAATTAATACACTCTTAGAGTGTCCCATCTGGTAAGTCAGCACAAGAGTGTATTAATTTGGGATAGATCGGAAGAGCGTCGTGTAGGGAAAGAGG HHHHHHHHHHHHHHHHHHHHHGHFHDHFHFHHHHHHHFHBHEHHFHHHHHGGGBGEHGGIHHHHHDHEHHEHHHHBHHHHHFFFFFEHEECHEBDEFEF# RG:Z:0
+44155522 133 * 0 0 * 17 41276005 0 CAAATTAATACACTCTTCGCGTTGAAGAAGTACAAAATGTCATTAATGCTATGCAGAAAATCTTAGAGTGTCCCATCTGGTAAGTCAGCACAAGAGTGTA HHHHHHHHHHHGHHHGHHHHGHHHFHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHEHFHEHGHHHHGHHHBHEHFHHHEF3FF###### RG:Z:0
+44155523 133 * 0 0 * 17 41276005 0 CAAATTAATACACTCTTCGCGTTGAAGAAGTACAAAATGTCATTAATGCTATGCAGAAAATCTTAGAGTGTCCCATCTGGTAAGTCAGCACAAGAGTGTA FGDBGEFFDGGDEFGFFGFG=EACE>CBDDFCFBBDBCCDEGGFEEEE=ECADDFFGD@BGFFEEC8EEE=EEGDBDDDEGBDFG7@B>BAGBADGDEEB RG:Z:0
+44155531 165 * 0 0 * 17 41276036 0 AAGTTCATTGGGACACTCTAAGATTTTCTGCATAGCATTAATGACATTTTGTACTTCTTCAACGCGAAGAGCAGATAAATCCATTTCTTTCTGTTCCAAT HFHHEHHHHHHHHHFHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHEHHHHHACFIFGIGHHHFHFGHHHHHFHHFF5HH RG:Z:0
+44155532 165 * 0 0 * 17 41276056 0 AGAAAGAAATGGATTTTCTGCATAGCATTAATGACATTTTGTACTTCTTCAACGCGAAGAGCAGATAAATCCATTTCTTTCTAGATCGGAAGAGCGTCGT HHHHHHHHHHHHHHHHHGHHHHHHHHHHHFHHHHHHGHHHHFGHHGHHHHHHHHHHHHHHHEHHFGBGGGFHHHHHHDHHHHHHFGHHC:EA9BEEDDGB RG:Z:0
+44155533 165 * 0 0 * 17 41276058 0 AGAAAGAAATGGATTTTCTGCATAGCATTAATGACATTTTGTACTTCTTCAACGCGAAGAGCAGATAAATCCATTTCTTTCTAGATCGGAAGAGCGTCGT HHHHHHHHHHHHHHHHHHHHHHDEHEHHHHEHHHHHHHHHHHHHHHHHHHHHHHGHHHHHHHHHGHEHHEHHHHHHHHHHHHEHHHHHFHHFHHHEEHF9 RG:Z:0
+44155535 165 * 0 0 * 17 41276061 0 AGAAAGAAATGGATTTTCTGCATAGCATTAATGACATTTTGTACTTCTTCAACGCGAAGAGCAGATAAATCCATTTCTTTCTAGATCGGAAGAGCGTCGT HHHHHHFHHHHHHHHHHHHGHHHFHHHHHFHHHHHFHHHHHHHHHHFHHHGFHHFGHHHHHHHHHEFHHHHHGHHGGHHGHHHHEGH=CHG@E<G@CEA? RG:Z:0
+44155536 165 * 0 0 * 17 41276063 0 AACAGAAAGAAATGGATTTTCTGCATAGCATTAATGACATTTTGTACTTCTTCAACGCGAAGAGCAGATAAATCCATTTCTTTCTGTTAGATCGGAAGAG HHHHHHHHHFHHHHHHHHHHHHHHHFHHHHHHHHHHHHHHHHHHHHHHHFHHHHEHEHHHEHGHHHFEHFHHHHHHHHHFHEHHGHFHHHHFBFHHHHHF RG:Z:0
b
diff -r 83c7d564b128 -r 9a776b080193 test-data/fastq_dump_result.fastq
--- a/test-data/fastq_dump_result.fastq Fri Sep 03 16:17:53 2021 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
b
@@ -1,40 +0,0 @@
-@1/1
-AGGGATGTGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGT
-+
-EGGEGGGDFGEEEAEECGDEGGFEEGEFGBEEDDECFEFDD@CDD<EDDE?2@?AEEDEED=D+C?5@A=6:>BA8:>@:4+36945&4354445>/B>@
-@1/2
-CCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTA
-+
-GHHHDFDFGFGEGFBGEGGEGEGGGHGFGHFHFHHHHHHHEF?EFEFF?EHGGHHHGHFHEHDEHGHFFEEE9BDDBEBAD.AD:ACBBC=4@>?5>=+?
-@2/1
-AGGGATGTGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGGTAGGGTTAGGGT
-+
-HHHHHHEGFHEEFEEHEEHHGGEGGGGEFGFGGGGHHHHFBEEEEEFGGEEAEEEDD0ADDBD9BDBDDA@6?BA;?CD=:-7<<::)1;5,6-6A@?=9
-@2/2
-CCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTA
-+
-HHHHHHHHHHHHHGHHHHHHGHHHHHHHHHHHFHHHFHHHHHHHHHHHHHHHHHHHGHHHGHHBHGHHFDBDDED5FCFCEEGF<@>>>@,<5<@@?>;D
-@3/1
-CCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCCA
-+
-HHHHFHHHHHHHHHHHFHHHHHHHHHHHHHHHHHHHHHHHGEFHGEGGFGGGGGGHHHHEFEIDDEEEEEDD4DD;??:6>6<@.<==@?.@@<?#####
-@3/2
-ATGGATGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGT
-+
-HHHHHHHHHFIEGFHFHDHHHHGFFHGEGDIGGEGGHHHAGEGGGDHHHHHHHHHHHFGDGGGEGDFFF>BEEEE3B;BB;>B7C@DA=DFBDD.BEE=9
-@4/1
-CCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACACTAACCCTAACCCTAACCCTAACCCTA
-+
-HHGBHHHHGFHHHHHFDHHFHGEHHHHHEFHHHHEGEGEFFFAFFFDCFGF?@GCDFGFEFHHEFDF*F6DC4DD:A8>@D@CD8->=>=<@CB@#####
-@4/2
-ATGGATGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGT
-+
-GFFFHHFFHHHFHHFEFGGBGEEEE?<9?6=>>:=DDDD@DBGDB;DBDBA.ADD8<2<>6A@=A5>550=>>>>BE;EEEDEEE79+336<68=BCEB@
-@5/1
-CCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACACTAACCCTCACACTCACCCTA
-+
-GGGFGFFGGGFBGGEGGFFGGGCFFGGGGGEGFFFFFGFFGFFFDFFB+FGGFEE?FCF::7B5A?+BB###############################
-@5/2
-ATGGATGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGTTAGGGGTAGGGTTAGGGTTAGGGTTAGGGGTAGGGT
-+
-479<.>><:<A7BABBE8@=:<<:@BB?C75:2?;.5<<3FEFGEEC88FEDEE=AB><AA@B<ABDC8.27<9:58.58??6<:@>+?=9@########
b
diff -r 83c7d564b128 -r 9a776b080193 test-data/fastq_dump_result.fastq.gz
b
Binary file test-data/fastq_dump_result.fastq.gz has changed
b
diff -r 83c7d564b128 -r 9a776b080193 test-data/sam_dump_result.sam
--- a/test-data/sam_dump_result.sam Fri Sep 03 16:17:53 2021 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
b
@@ -1,10 +0,0 @@
-44155511 165 * 0 0 * 17 41275978 0 CATTAATGCTATGCAGATAATCATAGGAATCCCAAATTAATACACTCTTGTGCTGACTTACCAGATGGGACACTCTAAGATTTTCTGCATAGCATTAATG HHHHHHHHHHHHHHHHHGHDHHHHHHHHHHHHHEHHHHHHHGHHHGHHHHHHHHHHHHHHHHHHHGFHHFHHHHHFHEBGHHHHHD<EFGBBBCAGFGE; RG:Z:0
-44155516 165 * 0 0 * 17 41275988 0 CATTAATGCTATGCAGATAATCATAGGAATCCCAAATTAATACACTCTTGTGCTGACTTACCAGATGGGACACTCTAAGATTTTCTGCATAGCATTAATG HHHHHHHHHHHHHHHHFGHHHHHHGHHHHHHHHGHFHHHHHHHEHHHHHFHHHHHFHHHHHHHHHFCCDDHFFHGFHHHBBHFHHFFF@FEFCCBBEE=: RG:Z:0
-44155520 133 * 0 0 * 17 41276001 0 ATCCCAAATTAATACACTCTTAGAGTGTCCCATCTGGTAAGTCAGCACAAGAGTGTATTAATTTGGGATAGATCGGAAGAGCGTCGTGTAGGGAAAGAGG HHHHHHHHHHHHHHHHHHHHHGHFHDHFHFHHHHHHHFHBHEHHFHHHHHGGGBGEHGGIHHHHHDHEHHEHHHHBHHHHHFFFFFEHEECHEBDEFEF# RG:Z:0
-44155522 133 * 0 0 * 17 41276005 0 CAAATTAATACACTCTTCGCGTTGAAGAAGTACAAAATGTCATTAATGCTATGCAGAAAATCTTAGAGTGTCCCATCTGGTAAGTCAGCACAAGAGTGTA HHHHHHHHHHHGHHHGHHHHGHHHFHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHEHFHEHGHHHHGHHHBHEHFHHHEF3FF###### RG:Z:0
-44155523 133 * 0 0 * 17 41276005 0 CAAATTAATACACTCTTCGCGTTGAAGAAGTACAAAATGTCATTAATGCTATGCAGAAAATCTTAGAGTGTCCCATCTGGTAAGTCAGCACAAGAGTGTA FGDBGEFFDGGDEFGFFGFG=EACE>CBDDFCFBBDBCCDEGGFEEEE=ECADDFFGD@BGFFEEC8EEE=EEGDBDDDEGBDFG7@B>BAGBADGDEEB RG:Z:0
-44155531 165 * 0 0 * 17 41276036 0 AAGTTCATTGGGACACTCTAAGATTTTCTGCATAGCATTAATGACATTTTGTACTTCTTCAACGCGAAGAGCAGATAAATCCATTTCTTTCTGTTCCAAT HFHHEHHHHHHHHHFHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHEHHHHHACFIFGIGHHHFHFGHHHHHFHHFF5HH RG:Z:0
-44155532 165 * 0 0 * 17 41276056 0 AGAAAGAAATGGATTTTCTGCATAGCATTAATGACATTTTGTACTTCTTCAACGCGAAGAGCAGATAAATCCATTTCTTTCTAGATCGGAAGAGCGTCGT HHHHHHHHHHHHHHHHHGHHHHHHHHHHHFHHHHHHGHHHHFGHHGHHHHHHHHHHHHHHHEHHFGBGGGFHHHHHHDHHHHHHFGHHC:EA9BEEDDGB RG:Z:0
-44155533 165 * 0 0 * 17 41276058 0 AGAAAGAAATGGATTTTCTGCATAGCATTAATGACATTTTGTACTTCTTCAACGCGAAGAGCAGATAAATCCATTTCTTTCTAGATCGGAAGAGCGTCGT HHHHHHHHHHHHHHHHHHHHHHDEHEHHHHEHHHHHHHHHHHHHHHHHHHHHHHGHHHHHHHHHGHEHHEHHHHHHHHHHHHEHHHHHFHHFHHHEEHF9 RG:Z:0
-44155535 165 * 0 0 * 17 41276061 0 AGAAAGAAATGGATTTTCTGCATAGCATTAATGACATTTTGTACTTCTTCAACGCGAAGAGCAGATAAATCCATTTCTTTCTAGATCGGAAGAGCGTCGT HHHHHHFHHHHHHHHHHHHGHHHFHHHHHFHHHHHFHHHHHHHHHHFHHHGFHHFGHHHHHHHHHEFHHHHHGHHGGHHGHHHHEGH=CHG@E<G@CEA? RG:Z:0
-44155536 165 * 0 0 * 17 41276063 0 AACAGAAAGAAATGGATTTTCTGCATAGCATTAATGACATTTTGTACTTCTTCAACGCGAAGAGCAGATAAATCCATTTCTTTCTGTTAGATCGGAAGAG HHHHHHHHHFHHHHHHHHHHHHHHHFHHHHHHHHHHHHHHHHHHHHHHHFHHHHEHEHHHEHGHHHFEHFHHHHHHHHHFHEHHGHFHHHHFBFHHHHHF RG:Z:0