diff gffread.xml @ 6:6ea09f60dee9 draft

"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/gffread commit 956566e1f7b4390719db56b7488a720ccad181a4"
author iuc
date Fri, 01 Nov 2019 12:54:52 -0400
parents 69e0806b63a4
children 4dea02886337
line wrap: on
line diff
--- a/gffread.xml	Tue Oct 01 12:20:13 2019 -0400
+++ b/gffread.xml	Fri Nov 01 12:54:52 2019 -0400
@@ -1,7 +1,7 @@
-<tool id="gffread" name="gffread" version="@VERSION@.2">
+<tool id="gffread" name="gffread" version="@VERSION@.1">
     <description>Filters and/or converts GFF3/GTF2 records</description>
     <macros>
-        <import>cuff_macros.xml</import>
+        <token name="@VERSION@">0.11.4</token>
         <xml name="fasta_output_select">
             <param name="fa_outputs" type="select" display="checkboxes" multiple="true" label="Select fasta outputs">
                 <option value="-w exons.fa">fasta file with spliced exons for each GFF transcript (-w exons.fa)</option>
@@ -47,7 +47,9 @@
             </param>
         </xml>
     </macros>
-    <expand macro="requirements" />
+    <requirements>
+        <requirement type="package" version="@VERSION@">gffread</requirement>
+    </requirements>
     <command detect_errors="aggressive">
 <![CDATA[
     #if $reference_genome.source == 'history':
@@ -124,7 +126,9 @@
             <option value="-C">coding only: discard mRNAs that have no CDS feature (-C)</option>
             <option value="-G">only parse additional exon attributes from the first exon and move them to the mRNA level (useful for GTF input) (-G)</option>
             <option value="-O">process also non-transcript GFF records (by default non-transcript records are ignored) (-O)</option>
-            <option value="--no-pseudo">filter out records matching the 'pseudo' keyword (--no-pseudo)</option>
+            <!-- The no-pseudo option is broken in 0.11.4 of gffread.
+                 See https://github.com/gpertea/gffread/issues/43 -->
+            <!-- <option value="\-\-no-pseudo">filter out records matching the 'pseudo' keyword (\-\-no-pseudo)</option> -->
         </param>
         <conditional name="region">
             <param name="region_filter" type="select" label="Filter by genome region">
@@ -272,10 +276,13 @@
             <param name="full_gff_attribute_preservation" value="-F"/>
             <output name="output_gff" file="ecoli-k12.processed.gff3" ftype="gff3" lines_diff="2" />
         </test>
-
+        
+<!-- The no-pseudo option is broken in 0.11.4 of gffread.
+     See https://github.com/gpertea/gffread/issues/43 -->
+<!-- 
         <test>
             <param name="input" ftype="gtf" value="Homo_sapiens.GRCh37_19.71.gtf"/>
-            <param name="filtering" value="--no-pseudo"/>
+            <param name="filtering" value="/-/-no-pseudo"/> # Fix dashes when uncommenting
             <param name="gff_fmt" value="gtf"/>
             <output name="output_gtf">
                 <assert_contents>
@@ -283,6 +290,7 @@
                 </assert_contents>
             </output>
         </test>
+-->
 
         <test>
             <param name="input" ftype="gtf" value="Homo_sapiens.GRCh37_19.71.gtf"/>
@@ -335,25 +343,25 @@
             <param name="gff_fmt" value="gtf"/>
             <output name="output_gtf">
                 <assert_contents>
-                    <not_has_text text="ENST00000587541" />
+                    <has_text text="ENST00000587541" />
                     <has_text text="ENST00000382683" />
                 </assert_contents>
             </output>
             <output name="output_exons">
                 <assert_contents>
-                    <has_text text="ENST00000346144 gene=MADCAM1 CDS=47-932" />
+                    <has_text text="ENST00000346144 CDS=47-934" />
                     <has_text text="CTATTTAAGCGGCTTCCCCGCGGCCTCGGGACAGAGGGGACTGAGCATGGATTTCGGACTGGCCCTCCTG" />
                 </assert_contents>
             </output>
             <output name="output_cds">
                 <assert_contents>
-                    <has_text text="ENST00000346144 gene=MADCAM1" />
+                    <has_text text="ENST00000346144" />
                     <has_text text="ATGGATTTCGGACTGGCCCTCCTGCTGGCGGGGCTTCTGGGGCTCCTCCTCGGCCAGTCCCTCCAGGTGA" />
                 </assert_contents>
             </output>
             <output name="output_pep">
                 <assert_contents>
-                    <has_text text="ENST00000346144 gene=MADCAM1" />
+                    <has_text text="ENST00000346144" />
                     <has_text text="MDFGLALLLAGLLGLLLGQSLQVKPLQVEPPEPVVAVALGASRQLTCRLACADRGASVQWRGLDTSLGAV" />
                 </assert_contents>
             </output>
@@ -364,89 +372,140 @@
 <![CDATA[
 **gffread   Filters and/or converts GFF3/GTF2 records**
 
-The gffread command is distributed with the cufflinks_ package.
-
-.. _cufflinks: http://cole-trapnell-lab.github.io/cufflinks/
-
-Usage: ::
+The gffread command is documented with the stringtie_ package.
 
- gffread "input_gff" [-g "genomic_seqs_fasta" | "dir"][-s "seq_info.fsize"]
-   [-o "outfile.gff"] [-t "tname"] [-r [["strand"]"chr":]"start".."end" [-R]]
-   [-CTVNJMKQAFGUBHZWTOLE] [-w "exons.fa"] [-x "cds.fa"] [-y "tr_cds.fa"]
-   [-i "maxintron"]
+.. _stringtie: http://ccb.jhu.edu/software/stringtie/gff.shtml#gffread
 
-Options: ::
+
+gffread v0.11.4. Usage: ::
 
-  -g  full path to a multi-fasta file with the genomic sequences
-      for all input mappings, OR a directory with single-fasta files
-      (one per genomic sequence, with file names matching sequence names)
-  -s  <seq_info.fsize> is a tab-delimited file providing this info
-      for each of the mapped sequences:
-      <seq-name> <seq-length> <seq-description>
-      (useful for -A option with mRNA/EST/protein mappings)
-  -i  discard transcripts having an intron larger than <maxintron>
-  -r  only show transcripts overlapping coordinate range <start>..<end>
-      (on chromosome/contig <chr>, strand <strand> if provided)
-  -R  for -r option, discard all transcripts that are not fully
-      contained within the given range
-  -U  discard single-exon transcripts
-  -C  coding only: discard mRNAs that have no CDS feature
-  -F  full GFF attribute preservation (all attributes are shown)
-  -G  only parse additional exon attributes from the first exon
-      and move them to the mRNA level (useful for GTF input)
-  -A  use the description field from <seq_info.fsize> and add it
-      as the value for a 'descr' attribute to the GFF record
+    gffread <input_gff> [-g <genomic_seqs_fasta> | <dir>][-s <seq_info.fsize>] 
+     [-o <outfile>] [-t <trackname>] [-r [[<strand>]<chr>:]<start>..<end> [-R]]
+     [-CTVNJMKQAFPGUBHZWTOLE] [-w <exons.fa>] [-x <cds.fa>] [-y <tr_cds.fa>]
+     [-i <maxintron>] [--bed] [--table <attrlist>] [--sort-by <refseq_list.txt>]
+     
+     Filter, convert or cluster GFF/GTF/BED records, extract the sequence of
+     transcripts (exon or CDS) and more.
+     By default (i.e. without -O) only transcripts are processed, discarding any
+     other non-transcript features. Default output is a simplified GFF3 with only
+     the basic attributes.
+     
+     <input_gff> is a GFF file, use '-' for stdin
+ 
+    Options:
 
-  -O  process also non-transcript GFF records (by default non-transcript
-      records are ignored)
-  -V  discard any mRNAs with CDS having in-frame stop codons
-  -H  for -V option, check and adjust the starting CDS phase
-      if the original phase leads to a translation with an
-      in-frame stop codon
-  -B  for -V option, single-exon transcripts are also checked on the
-      opposite strand
-  -N  discard multi-exon mRNAs that have any intron with a non-canonical
-      splice site consensus (i.e. not GT-AG, GC-AG or AT-AC)
-  -J  discard any mRNAs that either lack initial START codon
-      or the terminal STOP codon, or have an in-frame stop codon
-      (only print mRNAs with a fulll, valid CDS)
-  --no-pseudo: filter out records matching the 'pseudo' keyword
-
-  -M/--merge : cluster the input transcripts into loci, collapsing matching
-       transcripts (those with the same exact introns and fully contained)
-  -d <dupinfo> : for -M option, write collapsing info to file <dupinfo>
-  --cluster-only: same as --merge but without collapsing matching transcripts
-  -K  for -M option: also collapse shorter, fully contained transcripts
-      with fewer introns than the container
-  -Q  for -M option, remove the containment restriction:
-      (multi-exon transcripts will be collapsed if just their introns match,
-      while single-exon transcripts can partially overlap (80%))
-
-  --force-exons: make sure that the lowest level GFF features are printed as
-      "exon" features
-  -E  expose (warn about) duplicate transcript IDs and other potential
-      problems with the given GFF/GTF records
-  -D  decode url encoded characters within attributes
-  -Z  merge close exons into a single exon (for intron size<4)
-  -w  write a fasta file with spliced exons for each GFF transcript
-  -x  write a fasta file with spliced CDS for each GFF transcript
-  -W  for -w and -x options, also write for each fasta record the exon
-      coordinates projected onto the spliced sequence
-  -y  write a protein fasta file with the translation of CDS for each record
-  -L  Ensembl GTF to GFF3 conversion (implies -F; should be used with -m)
-  -m  <chr_replace> is a reference (genomic) sequence replacement table with
-      this format:
-      <original_ref_ID> <new_ref_ID>
-      For example from UCSC naming to Ensembl naming:
-      chr1	1
-      chr2	2
-      GFF records on reference sequences that are not found among the
-      <original_ref_ID> entries in this file will be filtered out
-  -o  the "filtered" GFF records will be written to <outfile.gff>
-      (use -o- for printing to stdout)
-  -t  use <trackname> in the second column of each GFF output line
-  -T  -o option will output GTF format instead of GFF3
-
+     -i   discard transcripts having an intron larger than <maxintron>
+     -l   discard transcripts shorter than <minlen> bases
+     -r   only show transcripts overlapping coordinate range <start>..<end>
+          (on chromosome/contig <chr>, strand <strand> if provided)
+     -R   for -r option, discard all transcripts that are not fully 
+          contained within the given range
+     -U   discard single-exon transcripts
+     -C   coding only: discard mRNAs that have no CDS features
+     --nc non-coding only: discard mRNAs that have CDS features
+     --ignore-locus : discard locus features and attributes found in the input
+     -A   use the description field from <seq_info.fsize> and add it
+          as the value for a 'descr' attribute to the GFF record
+     -s   <seq_info.fsize> is a tab-delimited file providing this info
+          for each of the mapped sequences:
+          <seq-name> <seq-length> <seq-description>
+          (useful for -A option with mRNA/EST/protein mappings)
+      
+     Sorting: (by default, chromosomes are kept in the order they were found)
+     --sort-alpha : chromosomes (reference sequences) are sorted alphabetically
+     --sort-by : sort the reference sequences by the order in which their
+          names are given in the <refseq.lst> file
+              
+    Misc options: 
+     -F   preserve all GFF attributes (for non-exon features)
+     --keep-exon-attrs : for -F option, do not attempt to reduce redundant
+          exon/CDS attributes
+     -G   do not keep exon attributes, move them to the transcript feature
+          (for GFF3 output)
+     --keep-genes : in transcript-only mode (default), also preserve gene records
+     --keep-comments: for GFF3 input/output, try to preserve comments
+     -O   process other non-transcript GFF records (by default non-transcript
+          records are ignored)
+     -V   discard any mRNAs with CDS having in-frame stop codons (requires -g)
+     -H   for -V option, check and adjust the starting CDS phase
+          if the original phase leads to a translation with an 
+          in-frame stop codon
+     -B   for -V option, single-exon transcripts are also checked on the
+          opposite strand (requires -g)
+     -P   add transcript level GFF attributes about the coding status of each
+          transcript, including partialness or in-frame stop codons (requires -g)
+     --add-hasCDS : add a "hasCDS" attribute with value "true" for transcripts
+          that have CDS features
+     --adj-stop stop codon adjustment: enables -P and performs automatic
+          adjustment of the CDS stop coordinate if premature or downstream
+     -N   discard multi-exon mRNAs that have any intron with a non-canonical
+          splice site consensus (i.e. not GT-AG, GC-AG or AT-AC)
+     -J   discard any mRNAs that either lack initial START codon
+          or the terminal STOP codon, or have an in-frame stop codon
+          (i.e. only print mRNAs with a complete CDS)
+     --no-pseudo: filter out records matching the 'pseudo' keyword
+     --in-bed: input should be parsed as BED format (automatic if the input
+               filename ends with .bed*)
+     --in-tlf: input GFF-like one-line-per-transcript format without exon/CDS
+               features (see --tlf option below); automatic if the input
+               filename ends with .tlf)
+               
+    Clustering:
+     -M/--merge : cluster the input transcripts into loci, discarding
+          "duplicated" transcripts (those with the same exact introns
+          and fully contained or equal boundaries)
+     -d <dupinfo> : for -M option, write duplication info to file <dupinfo>
+     --cluster-only: same as -M/--merge but without discarding any of the
+          "duplicate" transcripts, only create "locus" features
+     -K   for -M option: also discard as redundant the shorter, fully contained
+           transcripts (intron chains matching a part of the container)
+     -Q   for -M option, no longer require boundary containment when assessing
+          redundancy (can be combined with -K); only introns have to match for
+          multi-exon transcripts, and >=80% overlap for single-exon transcripts
+     -Y   for -M option, enforce -Q but also discard overlapping single-exon 
+          transcripts, even on the opposite strand (can be combined with -K)
+          
+    Output options:
+     --force-exons: make sure that the lowest level GFF features are considered
+           "exon" features
+     --gene2exon: for single-line genes not parenting any transcripts, add an
+           exon feature spanning the entire gene (treat it as a transcript)
+     --t-adopt:  try to find a parent gene overlapping/containing a transcript
+           that does not have any explicit gene Parent
+     -D    decode url encoded characters within attributes
+     -Z    merge very close exons into a single exon (when intron size<4)
+     -g   full path to a multi-fasta file with the genomic sequences
+          for all input mappings, OR a directory with single-fasta files
+          (one per genomic sequence, with file names matching sequence names)
+     -w    write a fasta file with spliced exons for each GFF transcript
+     -x    write a fasta file with spliced CDS for each GFF transcript
+     -y    write a protein fasta file with the translation of CDS for each record
+     -W    for -w and -x options, write in the FASTA defline the exon
+           coordinates projected onto the spliced sequence;
+           for -y option, write transcript attributes in the FASTA defline
+     -S    for -y option, use '*' instead of '.' as stop codon translation
+     -L    Ensembl GTF to GFF3 conversion (implies -F; should be used with -m)
+     -m    <chr_replace> is a name mapping table for converting reference 
+           sequence names, having this 2-column format:
+           <original_ref_ID> <new_ref_ID>
+           WARNING: all GFF records on reference sequences whose original IDs
+           are not found in the 1st column of this table will be discarded!
+     -t    use <trackname> in the 2nd column of each GFF/GTF output line
+     -o    write the records into <outfile> instead of stdout
+     -T    main output will be GTF instead of GFF3
+     --bed output records in BED format instead of default GFF3
+     --tlf output "transcript line format" which is like GFF
+           but exons, CDS features and related data are stored as GFF 
+           attributes in the transcript feature line, like this:
+             exoncount=N;exons=<exons>;CDSphase=<N>;CDS=<CDScoords> 
+           <exons> is a comma-delimited list of exon_start-exon_end coordinates;
+           <CDScoords> is CDS_start:CDS_end coordinates or a list like <exons>
+     --table output a simple tab delimited format instead of GFF, with columns
+           having the values of GFF attributes given in <attrlist>; special
+           pseudo-attributes (prefixed by @) are recognized:
+           @chr, @start, @end, @strand, @numexons, @exons, @cds, @covlen, @cdslen
+     -v,-E expose (warn about) duplicate transcript IDs and other potential
+           problems with the given GFF/GTF records
 ]]>
     </help>
     <citations>