Skip to content

taffish/gffread

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

taf-gffread

TAFFISH app for GffRead, a GFF/GTF utility for annotation conversion, filtering, validation, and FASTA sequence extraction.

Package Identity

  • name: gffread
  • command: taf-gffread
  • TAFFISH version: 0.12.9-r1
  • kind: tool
  • container image: ghcr.io/taffish/gffread:0.12.9-r1
  • upstream: GffRead v0.12.9
  • runtime version: gffread --version prints 0.12.9
  • upstream license: MIT
  • TAFFISH wrapper license: Apache-2.0

Installation

taf install gffread
taf-gffread --help

The app uses a thin TAFFISH container wrapper:

<taf-app:container:ghcr.io/taffish/gffread:0.12.9-r1>
gffread ::*ARGV*::

Wrapper-level help and version are separate from the upstream command:

taf-gffread --help
taf-gffread --version
taf-gffread -- --version
taf-gffread gffread --version

Because command_mode = true, taf-gffread gffread ... runs the upstream executable directly inside the same container. Option-leading calls such as taf-gffread -T ... are passed to the default upstream command.

Examples

Convert GFF3 to GTF:

taf-gffread -T -o annotation.gtf annotation.gff3

Convert GFF/GTF annotations to BED:

taf-gffread --bed -o transcripts.bed annotation.gff3

Extract transcript, CDS, and protein FASTA from a genome FASTA:

taf-gffread annotation.gff3 \
  -g genome.fa \
  -w transcripts.fa \
  -x cds.fa \
  -y proteins.fa

Merge transcript records into loci:

taf-gffread --merge -o merged.gff3 annotation.gff3

Write a small attribute table:

taf-gffread annotation.gff3 --table @id,@geneid,chr,strand,start,end > table.tsv

Show the upstream help:

taf-gffread -- -h
taf-gffread gffread -h

Packaged Runtime

The Docker image builds GffRead from the official upstream source asset:

https://github.com/gpertea/gffread/releases/download/v0.12.9/gffread-0.12.9.tar.gz
sha256: 3ee1a3a2db938569bcccb1e8d908503392ebf0a3f203ddaff1b967b8ade614d1

That source package includes the gclib sources used by GffRead, so the container build verifies gclib/ is present and does not rely on the Makefile's fallback network clone. The final runtime image contains the gffread binary, upstream README/license files, Bash, and the glibc C++ runtime libraries needed by the compiled binary.

Native image builds are declared for linux/amd64 and linux/arm64.

Smoke Coverage

The smoke tests check:

  • gffread exists and reports exact runtime version 0.12.9.
  • the dynamic binary links against the expected C++ runtime.
  • upstream help exposes versioned usage plus core conversion and extraction options.
  • tiny self-contained GFF3 fixtures convert to GTF and BED.
  • transcript, CDS, and protein FASTA extraction works with a tiny genome FASTA.
  • --merge produces a non-empty GFF3 output containing the expected transcript.

Each smoke command creates its own tiny fixture under /tmp, so tests do not rely on state from another container run.

Boundaries

This app packages GffRead itself. It does not bundle StringTie, GffCompare, aligners, samtools, genome references, annotation databases, or tutorial datasets. Those tools and data should be provided as separate TAFFISH apps, files, or workflow inputs when needed.

GffRead can read and write common transcript annotation formats, but smoke tests only exercise representative GFF3/GTF/BED conversion, FASTA extraction, merge, help, and version paths. They are container and basic functionality checks, not a full biological validation suite for large annotations.

Upstream

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors