Repository 'gffread'
hg clone https://toolshed.g2.bx.psu.edu/repos/devteam/gffread

Changeset 9:3e436657dcd0 (2023-12-15)
Previous changeset 8:154d00cbbf2d (2021-09-25)
Commit message:
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/gffread commit 0d019235fcfc835b99d5651b0bc4fd0da06707ac
modified:
gffread.xml
added:
test-data/Homo_sapiens.GRCh37_19.71_ensemble.gff3
b
diff -r 154d00cbbf2d -r 3e436657dcd0 gffread.xml
--- a/gffread.xml Sat Sep 25 15:38:31 2021 +0000
+++ b/gffread.xml Fri Dec 15 19:39:24 2023 +0000
[
b'@@ -1,12 +1,9 @@\n <tool id="gffread" name="gffread" version="@GALAXY_TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="20.05">\n     <description>Filters and/or converts GFF3/GTF2 records</description>\n-    <xrefs>\n-        <xref type="bio.tools">gffread</xref>\n-    </xrefs>\n     <macros>\n         <!-- the version of this tool must not be lowered since in the past 2.x was used\n             lets use small increments and hope that gffread catches up one day -->\n-        <token name="@GALAXY_TOOL_VERSION@">2.2.1.3</token>\n+        <token name="@GALAXY_TOOL_VERSION@">2.2.1.4</token>\n         <token name="@TOOL_VERSION@">0.12.7</token>\n         <token name="@VERSION_SUFFIX@">0</token>\n         <xml name="fasta_output_select">\n@@ -55,6 +52,9 @@\n             </param>\n         </xml>\n     </macros>\n+    <xrefs>\n+        <xref type="bio.tools">gffread</xref>\n+    </xrefs>\n     <requirements>\n         <requirement type="package" version="@TOOL_VERSION@">gffread</requirement>\n     </requirements>\n@@ -116,13 +116,13 @@\n             #echo \' \' + \' \'.join(str($reference_genome.fa_outputs).split(\',\'))\n         #end if\n     #end if\n+\n     #if $gffs.gff_fmt != \'none\':\n         #if $gffs.gff_fmt != \'bed\' and $gffs.tname:\n             -t \'$gffs.tname\'\n         #end if\n         #if $gffs.gff_fmt == \'gff\':\n-            ## TODO bug \'gft\' -> \'gtf\'\n-            #if $input.datatype.file_ext == \'gft\':\n+            #if $input.datatype.file_ext == \'gtf\':\n                 $gffs.ensembl\n             #end if\n         #end if\n@@ -132,6 +132,8 @@\n             --bed\n         #end if\n         -o output.$gffs.gff_fmt\n+    #else if \'fa_outputs\' not in $reference_genome or \'.fa\' not in str($reference_genome[\'fa_outputs\'])\n+        -o output.gff\n     #end if\n \n ## Missing options\n@@ -253,11 +255,10 @@\n         <conditional name="reference_genome">\n             <param name="source" type="select" label="Reference Genome" help="NOTE: Required for fasta outputs">\n                 <option value="none">none</option>\n-                <option value="cached"></option>\n+                <option value="cached">Cached reference data</option>\n                 <option value="history">From your history</option>\n             </param>\n-            <when value="none">\n-            </when>\n+            <when value="none"/>\n             <when value="cached">\n                 <param argument="-g" name="fasta_indexes" type="select" label="Source FASTA Sequence">\n                     <options from_data_table="all_fasta"/>\n@@ -280,8 +281,7 @@\n                 <option value="gtf">GTF</option>\n                 <option value="bed">BED</option>\n             </param>\n-            <when value="none">\n-            </when>\n+            <when value="none"/>\n             <when value="gff">\n                 <param argument="-L" name="ensembl" type="boolean" truevalue="-L" falsevalue="" checked="false" label="Ensembl GTF to GFF3 conversion" help=""/>\n                 <expand macro="trackname" />\n@@ -289,8 +289,7 @@\n             <when value="gtf">\n                 <expand macro="trackname" />\n             </when>\n-            <when value="bed">\n-            </when>\n+            <when value="bed"/>\n         </conditional>\n \n         <param argument="-F" name="full_gff_attribute_preservation" type="boolean" truevalue="-F" falsevalue="" checked="false"\n@@ -303,7 +302,8 @@\n     </inputs>\n     <outputs>\n         <data name="output_gff" format="gff3" metadata_source="input" label="${tool.name} on ${on_string}: gff3" from_work_dir="output.gff">\n-            <filter>gffs[\'gff_fmt\'] == \'gff\'</filter>\n+            <!-- output gff also if the user deselected all outputs: none is selected and all .fa outputs are disabled  -->\n+            <filter>gffs[\'gff_fmt\'] == \'gff\' or (gffs[\'gff_fmt\'] == \'none\' and (\'fa_outputs\' not in reference_genome or \'.fa\' not in str(reference_genome[\'fa_outputs\'])))</filter>\n         </data>\n         <data name="output_gtf" format="gtf" metadata_source="input" label="${tool.name} on ${on_s'..b'/>\n+                <param name="ensembl" value="true"/>\n+                <param name="tname" value="track name"/>\n+            </conditional>\n+            <output name="output_gff" file="Homo_sapiens.GRCh37_19.71_ensemble.gff3" ftype="gff3" lines_diff="4" />\n+            <assert_command>\n+                <has_text text="-L"/>\n+                <has_text text="-t &#39;track name&#39;"/>\n+            </assert_command>\n+            <assert_stdout>\n+                <has_n_lines n="0"/>\n+            </assert_stdout>\n         </test>\n         <test expect_num_outputs="1">\n             <param name="input" ftype="gtf" value="Homo_sapiens.GRCh37_19.71.gtf"/>\n             <param name="gff_fmt" value="gff"/>\n             <output name="output_gff" file="Homo_sapiens.GRCh37_19.71.gff3" ftype="gff3" lines_diff="4" />\n+            <assert_stdout>\n+                <has_n_lines n="0"/>\n+            </assert_stdout>\n         </test>\n         <test expect_num_outputs="1">\n             <param name="input" ftype="gtf" value="ecoli-k12.gff3"/>\n             <param name="gff_fmt" value="gff"/>\n             <param name="full_gff_attribute_preservation" value="-F"/>\n             <output name="output_gff" file="ecoli-k12.processed.gff3" ftype="gff3" lines_diff="4" />\n+            <assert_stdout>\n+                <has_n_lines n="0"/>\n+            </assert_stdout>\n         </test>\n         <!-- bed output -->\n         <test expect_num_outputs="1">\n@@ -351,6 +401,9 @@\n                     <has_n_columns n="13"/>\n                 </assert_contents>\n             </output>\n+            <assert_stdout>\n+                <has_n_lines n="0"/>\n+            </assert_stdout>\n         </test>\n         <!-- bed input and test tname -->\n         <test expect_num_outputs="1">\n@@ -365,6 +418,9 @@\n                     <has_text text="track name"/>\n                 </assert_contents>\n             </output>\n+            <assert_stdout>\n+                <has_n_lines n="0"/>\n+            </assert_stdout>\n         </test>\n         <test expect_num_outputs="1">\n             <param name="input" ftype="gtf" value="Homo_sapiens.GRCh37_19.71.gtf"/>\n@@ -377,6 +433,9 @@\n                     <has_text text="ENST00000382683" />\n                 </assert_contents>\n             </output>\n+            <assert_stdout>\n+                <has_n_lines n="0"/>\n+            </assert_stdout>\n         </test>\n         <test expect_num_outputs="1">\n             <param name="input" ftype="gtf" value="Homo_sapiens.GRCh37_19.71.gtf"/>\n@@ -390,6 +449,9 @@\n                     <has_text text="ENST00000382683" />\n                 </assert_contents>\n             </output>\n+            <assert_stdout>\n+                <has_n_lines n="0"/>\n+            </assert_stdout>\n         </test>\n         <test expect_num_outputs="1">\n             <param name="input" ftype="gtf" value="Homo_sapiens.GRCh37_19.71.gtf"/>\n@@ -403,6 +465,9 @@\n                     <has_text text="ENST00000382683" />\n                 </assert_contents>\n             </output>\n+            <assert_stdout>\n+                <has_n_lines n="0"/>\n+            </assert_stdout>\n         </test>\n         <test expect_num_outputs="4">\n             <param name="input" ftype="gtf" value="Homo_sapiens.GRCh37_19.71.gtf"/>\n@@ -436,6 +501,9 @@\n                     <has_text text="MDFGLALLLAGLLGLLLGQSLQVKPLQVEPPEPVVAVALGASRQLTCRLACADRGASVQWRGLDTSLGAV" />\n                 </assert_contents>\n             </output>\n+            <assert_stdout>\n+                <has_n_lines n="0"/>\n+            </assert_stdout>\n         </test>\n         <test expect_num_outputs="1">\n             <param name="input" ftype="gtf" value="stop_codons.gtf"/>\n@@ -448,6 +516,9 @@\n                     <has_text text="PLRGLHPRV*LQTPLERCPCWPPAGGTGGCPHCLLHLRLLQSPTPTALSEGGGAGTEAQPVTDVDPGRG*" />\n                 </assert_contents>\n             </output>\n+            <assert_stdout>\n+                <has_n_lines n="0"/>\n+            </assert_stdout>\n         </test>\n     </tests>\n     <help>\n'
b
diff -r 154d00cbbf2d -r 3e436657dcd0 test-data/Homo_sapiens.GRCh37_19.71_ensemble.gff3
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/Homo_sapiens.GRCh37_19.71_ensemble.gff3 Fri Dec 15 19:39:24 2023 +0000
b
b'@@ -0,0 +1,314 @@\n+##gff-version 3\n+# gffread v0.12.7\n+# gffread /tmp/tmpvxc_8nmx/files/9/a/6/dataset_9a6a5831-b7ee-4eee-9b23-08af98672088.dat -L -o /home/berntm/projects/tools-iuc/tools/gffread/test-data/Homo_sapiens.GRCh37_19.71_ensemble.gff3 -t track name\n+19\ttrack name\ttranscript\t223158\t223261\t.\t-\t.\tID=ENST00000410397;geneID=ENSG00000222329;gene_name=U6;gene_biotype=snRNA;transcript_name=U6.795-201\n+19\ttrack name\texon\t223158\t223261\t.\t-\t.\tParent=ENST00000410397\n+19\ttrack name\ttranscript\t229640\t230165\t.\t-\t.\tID=ENST00000587910;geneID=ENSG00000267600;gene_name=AC098474.1;gene_biotype=pseudogene;transcript_name=AC098474.1-001\n+19\ttrack name\texon\t229640\t229709\t.\t-\t.\tParent=ENST00000587910\n+19\ttrack name\texon\t230084\t230165\t.\t-\t.\tParent=ENST00000587910\n+19\ttrack name\ttranscript\t239145\t239247\t.\t-\t.\tID=ENST00000588755;geneID=ENSG00000267305;gene_name=CTD-3113P16.7;gene_biotype=pseudogene;transcript_name=CTD-3113P16.7-001\n+19\ttrack name\texon\t239145\t239247\t.\t-\t.\tParent=ENST00000588755\n+19\ttrack name\ttranscript\t279495\t280170\t.\t+\t.\tID=ENST00000589981;geneID=ENSG00000267447;gene_name=VN2R11P;gene_biotype=pseudogene;transcript_name=VN2R11P-001\n+19\ttrack name\texon\t279495\t280170\t.\t+\t.\tParent=ENST00000589981\n+19\ttrack name\ttranscript\t281043\t291386\t.\t-\t.\tID=ENST00000269812;geneID=ENSG00000141934;gene_name=PPAP2C;gene_biotype=protein_coding;transcript_name=PPAP2C-001;protein_id=ENSP00000269812\n+19\ttrack name\texon\t281043\t281537\t.\t-\t.\tParent=ENST00000269812\n+19\ttrack name\texon\t282134\t282310\t.\t-\t.\tParent=ENST00000269812\n+19\ttrack name\texon\t282752\t282809\t.\t-\t.\tParent=ENST00000269812\n+19\ttrack name\texon\t287474\t287751\t.\t-\t.\tParent=ENST00000269812\n+19\ttrack name\texon\t288020\t288171\t.\t-\t.\tParent=ENST00000269812\n+19\ttrack name\texon\t291285\t291386\t.\t-\t.\tParent=ENST00000269812\n+19\ttrack name\tCDS\t281388\t281537\t.\t-\t0\tParent=ENST00000269812\n+19\ttrack name\tCDS\t282134\t282310\t.\t-\t0\tParent=ENST00000269812\n+19\ttrack name\tCDS\t282752\t282809\t.\t-\t1\tParent=ENST00000269812\n+19\ttrack name\tCDS\t287474\t287751\t.\t-\t0\tParent=ENST00000269812\n+19\ttrack name\tCDS\t288020\t288171\t.\t-\t2\tParent=ENST00000269812\n+19\ttrack name\tCDS\t291285\t291336\t.\t-\t0\tParent=ENST00000269812\n+19\ttrack name\ttranscript\t281345\t291393\t.\t-\t.\tID=ENST00000434325;geneID=ENSG00000141934;gene_name=PPAP2C;gene_biotype=protein_coding;transcript_name=PPAP2C-003;protein_id=ENSP00000388565\n+19\ttrack name\texon\t281345\t281537\t.\t-\t.\tParent=ENST00000434325\n+19\ttrack name\texon\t282134\t282310\t.\t-\t.\tParent=ENST00000434325\n+19\ttrack name\texon\t282752\t282809\t.\t-\t.\tParent=ENST00000434325\n+19\ttrack name\texon\t287474\t287751\t.\t-\t.\tParent=ENST00000434325\n+19\ttrack name\texon\t288020\t288171\t.\t-\t.\tParent=ENST00000434325\n+19\ttrack name\texon\t291326\t291393\t.\t-\t.\tParent=ENST00000434325\n+19\ttrack name\tCDS\t281388\t281537\t.\t-\t0\tParent=ENST00000434325\n+19\ttrack name\tCDS\t282134\t282310\t.\t-\t0\tParent=ENST00000434325\n+19\ttrack name\tCDS\t282752\t282809\t.\t-\t1\tParent=ENST00000434325\n+19\ttrack name\tCDS\t287474\t287751\t.\t-\t0\tParent=ENST00000434325\n+19\ttrack name\tCDS\t288020\t288055\t.\t-\t0\tParent=ENST00000434325\n+19\ttrack name\ttranscript\t281388\t291200\t.\t-\t.\tID=ENST00000327790;geneID=ENSG00000141934;gene_name=PPAP2C;gene_biotype=protein_coding;transcript_name=PPAP2C-004;protein_id=ENSP00000329697\n+19\ttrack name\texon\t281388\t281537\t.\t-\t.\tParent=ENST00000327790\n+19\ttrack name\texon\t282134\t282310\t.\t-\t.\tParent=ENST00000327790\n+19\ttrack name\texon\t282752\t282809\t.\t-\t.\tParent=ENST00000327790\n+19\ttrack name\texon\t287474\t287751\t.\t-\t.\tParent=ENST00000327790\n+19\ttrack name\texon\t288020\t288171\t.\t-\t.\tParent=ENST00000327790\n+19\ttrack name\texon\t290952\t291200\t.\t-\t.\tParent=ENST00000327790\n+19\ttrack name\tCDS\t281388\t281537\t.\t-\t0\tParent=ENST00000327790\n+19\ttrack name\tCDS\t282134\t282310\t.\t-\t0\tParent=ENST00000327790\n+19\ttrack name\tCDS\t282752\t282809\t.\t-\t1\tParent=ENST00000327790\n+19\ttrack name\tCDS\t287474\t287751\t.\t-\t0\tParent=ENST00000327790\n+19\ttrack name\tCDS\t288020\t288171\t.\t-\t2\tParent=ENST00000327790\n+19\ttrack name\tCDS\t290952\t291066\t.\t-\t0\tParent=ENST00000327790\n+19\ttrack name\ttranscript\t281991\t2876'..b'1\t474880\t.\t-\t.\tParent=ENST00000382696\n+19\ttrack name\tCDS\t463844\t464364\t.\t-\t2\tParent=ENST00000382696\n+19\ttrack name\tCDS\t467649\t467762\t.\t-\t2\tParent=ENST00000382696\n+19\ttrack name\tCDS\t474621\t474747\t.\t-\t0\tParent=ENST00000382696\n+19\ttrack name\ttranscript\t464146\t472631\t.\t-\t.\tID=ENST00000591681;geneID=ENSG00000181781;gene_name=ODF3L2;gene_biotype=protein_coding;transcript_name=ODF3L2-003\n+19\ttrack name\texon\t464146\t464364\t.\t-\t.\tParent=ENST00000591681\n+19\ttrack name\texon\t467649\t467762\t.\t-\t.\tParent=ENST00000591681\n+19\ttrack name\texon\t472394\t472631\t.\t-\t.\tParent=ENST00000591681\n+19\ttrack name\ttranscript\t489176\t505342\t.\t+\t.\tID=ENST00000587541;geneID=ENSG00000099866;gene_name=MADCAM1;gene_biotype=protein_coding;transcript_name=MADCAM1-004\n+19\ttrack name\texon\t489176\t490039\t.\t+\t.\tParent=ENST00000587541\n+19\ttrack name\texon\t501669\t501929\t.\t+\t.\tParent=ENST00000587541\n+19\ttrack name\texon\t504745\t505342\t.\t+\t.\tParent=ENST00000587541\n+19\ttrack name\ttranscript\t490046\t507813\t.\t-\t.\tID=ENST00000592413;geneID=ENSG00000266933;gene_name=AC005775.2;gene_biotype=antisense;transcript_name=AC005775.2-001\n+19\ttrack name\texon\t490046\t490353\t.\t-\t.\tParent=ENST00000592413\n+19\ttrack name\texon\t501541\t501624\t.\t-\t.\tParent=ENST00000592413\n+19\ttrack name\texon\t507376\t507813\t.\t-\t.\tParent=ENST00000592413\n+19\ttrack name\ttranscript\t496454\t505207\t.\t+\t.\tID=ENST00000346144;geneID=ENSG00000099866;gene_name=MADCAM1;gene_biotype=protein_coding;transcript_name=MADCAM1-001;protein_id=ENSP00000304247\n+19\ttrack name\texon\t496454\t496551\t.\t+\t.\tParent=ENST00000346144\n+19\ttrack name\texon\t497833\t498117\t.\t+\t.\tParent=ENST00000346144\n+19\ttrack name\texon\t498496\t498825\t.\t+\t.\tParent=ENST00000346144\n+19\ttrack name\texon\t504745\t505207\t.\t+\t.\tParent=ENST00000346144\n+19\ttrack name\tCDS\t496500\t496551\t.\t+\t0\tParent=ENST00000346144\n+19\ttrack name\tCDS\t497833\t498117\t.\t+\t2\tParent=ENST00000346144\n+19\ttrack name\tCDS\t498496\t498825\t.\t+\t2\tParent=ENST00000346144\n+19\ttrack name\tCDS\t504745\t504965\t.\t+\t2\tParent=ENST00000346144\n+19\ttrack name\ttranscript\t496454\t505347\t.\t+\t.\tID=ENST00000215637;geneID=ENSG00000099866;gene_name=MADCAM1;gene_biotype=protein_coding;transcript_name=MADCAM1-002;protein_id=ENSP00000215637\n+19\ttrack name\texon\t496454\t496551\t.\t+\t.\tParent=ENST00000215637\n+19\ttrack name\texon\t497833\t498117\t.\t+\t.\tParent=ENST00000215637\n+19\ttrack name\texon\t498496\t498825\t.\t+\t.\tParent=ENST00000215637\n+19\ttrack name\texon\t501669\t501929\t.\t+\t.\tParent=ENST00000215637\n+19\ttrack name\texon\t504745\t505347\t.\t+\t.\tParent=ENST00000215637\n+19\ttrack name\tCDS\t496500\t496551\t.\t+\t0\tParent=ENST00000215637\n+19\ttrack name\tCDS\t497833\t498117\t.\t+\t2\tParent=ENST00000215637\n+19\ttrack name\tCDS\t498496\t498825\t.\t+\t2\tParent=ENST00000215637\n+19\ttrack name\tCDS\t501669\t501929\t.\t+\t2\tParent=ENST00000215637\n+19\ttrack name\tCDS\t504745\t504965\t.\t+\t2\tParent=ENST00000215637\n+19\ttrack name\ttranscript\t496500\t504965\t.\t+\t.\tID=ENST00000382683;geneID=ENSG00000099866;gene_name=MADCAM1;gene_biotype=protein_coding;transcript_name=MADCAM1-003;protein_id=ENSP00000372130\n+19\ttrack name\texon\t496500\t496551\t.\t+\t.\tParent=ENST00000382683\n+19\ttrack name\texon\t498496\t498825\t.\t+\t.\tParent=ENST00000382683\n+19\ttrack name\texon\t504745\t504965\t.\t+\t.\tParent=ENST00000382683\n+19\ttrack name\tCDS\t496500\t496551\t.\t+\t0\tParent=ENST00000382683\n+19\ttrack name\tCDS\t498496\t498825\t.\t+\t2\tParent=ENST00000382683\n+19\ttrack name\tCDS\t504745\t504965\t.\t+\t2\tParent=ENST00000382683\n+19\ttrack name\ttranscript\t507299\t519654\t.\t+\t.\tID=ENST00000359315;geneID=ENSG00000141933;gene_name=TPGS1;gene_biotype=protein_coding;transcript_name=TPGS1-001;protein_id=ENSP00000352265\n+19\ttrack name\texon\t507299\t507844\t.\t+\t.\tParent=ENST00000359315\n+19\ttrack name\texon\t518889\t519654\t.\t+\t.\tParent=ENST00000359315\n+19\ttrack name\tCDS\t507507\t507844\t.\t+\t0\tParent=ENST00000359315\n+19\ttrack name\tCDS\t518889\t519423\t.\t+\t1\tParent=ENST00000359315\n+19\ttrack name\ttranscript\t507500\t510372\t.\t+\t.\tID=ENST00000588278;geneID=ENSG00000141933;gene_name=TPGS1;gene_biotype=protein_coding;transcript_name=TPGS1-002\n+19\ttrack name\texon\t507500\t510372\t.\t+\t.\tParent=ENST00000588278\n'