feat(ribotish/predict): expose optional secondary annotation GTF input (-a flag)
@pinin4fjords is already working on this.
Since May 15, 2026.
- Dominant language
- Nextflow
- Stars
- 429
- Forks
- 1.1k
- Avg merge
- 1d 6h
- Merged PRs (30d)
- 153
Description
Summary
ribotish predict accepts a -a flag for a secondary annotation file, used for ORF background modelling and TisType classification independently of the primary discovery target (-g). The current nf-core module exposes only a single GTF input. This PR adds the optional second input.
Use case: when the nf-core/riboseq pipeline discovers ORFs on novel StringTie transcripts (no CDS), passing the canonical annotation separately via -a allows Ribo-TISH to correctly classify ORF types (Novel, CDSFrameOverlap, 5utr, etc.) and model translation background against known coding sequences, while scanning only the novel transcripts for new calls.
Change
input:
tuple val(meta), path(bam), path(bai)
path(gtf) // -g: discovery target
path(reference_gtf) // -a: optional; secondary annotation for classification
Script block:
def secondary_gtf = reference_gtf.name != 'NO_FILE' ? "-a ${reference_gtf}" : ""
ribotish predict \
${args} \
-b ${bam} \
-g ${gtf} \
${secondary_gtf} \
...
Declare reference_gtf as optional (use path(reference_gtf, stageAs: 'NO_FILE', optional: true) or equivalent) so existing callers passing a single GTF continue to work without modification.
References
- Ribo-TISH README (
-aflag): https://github.com/zhpn1024/ribotish - Zhang et al. (2017) Nat Commun. DOI: 10.1038/s41467-017-01981-8
- Current module: modules/nf-core/ribotish/predict
Required by: nf-core/riboseq novel ORF discovery wiring (companion pipeline issue: nf-core/riboseq#163)
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.