Skip to content

feat: hitsFromSuppOrth and runSuppOrth for SuppOrth consensus orthologs - #763

Closed
edkerk wants to merge 1 commit into
develop3from
feat/supporth
Closed

edkerk wants to merge 1 commit into
develop3from
feat/supporth

Conversation

@edkerk

@edkerk edkerk commented Oct 14, 2026

Copy link
Copy Markdown
Member

Main improvements in this PR:

  • features:
    • hitsFromSuppOrth reads the consensus orthologs of SuppOrth (suppOrth.tsv) into a blastStructure for getModelFromHomology. Each pair between the new organism and a template is written in both directions. Pairs can be filtered on the number of supporting predictors (minSupport), on required predictors (requireTools), and on SuppOrth's identity and e-value. proteinToGene maps protein ids to gene ids (cell array, containers.Map, JSON or tab-separated file), taking the highest support over isoform pairs. speciesToModel renames species or leaves them out. The e-value, identity, alignment length and ppos are placeholders that pass the filters of getModelFromHomology; the bitscore is SuppOrth's own, which strictness 3 ranks by. SuppOrth's values per gene pair are returned as a second output.
    • runSuppOrth runs the suppOrth command (from the suppOrth argument, the RAVEN_SUPPORTH environment variable, or the PATH) on the proteomes of the new organism and the templates, with the model ids as species labels, and reads the result with hitsFromSuppOrth. Proteomes that share protein ids are passed with a per-species prefix that is removed from the hits. SuppOrth's output is written to run_supporth.log, and a failed run raises an error with the end of that output. SuppOrth's predictors do not run on Windows, where runSuppOrth raises an error.
  • documentation:
    • help texts of getModelFromHomology, getBlast, getDiamond and makeFakeBlastStructure refer to the new functions.
  • tests:
    • tReconstruction has tests for reading, filtering, species and gene mapping, the path through getModelFromHomology at strictness 1–3, and runSuppOrth against a stub command.

The functions match hits_from_supporth and run_supporth in raven-toolbox (SysBioChalmers/raven-toolbox#171). On a SuppOrth run with OrthoFinder, SonicParanoid and Broccoli of Kluyveromyces lactis (UniProt UP000000598) against Saccharomyces cerevisiae (SGD orf_trans), with yeast-GEM 9.1.1 as template, both give the same hits and the same draft models (reactions and grRules) for minSupport 1–3 and strictness 1–3.

Instructions on merging this PR:

  • This PR has develop3 as target branch, and will be resolved with a squash-merge.
  • This PR has main as target branch, and will be resolved as descriped here.

hitsFromSuppOrth reads suppOrth.tsv into a blastStructure for
getModelFromHomology, in both directions, with filters on support,
predictors, identity and e-value, and mapping of protein ids to gene ids.
runSuppOrth runs the suppOrth command and reads its output. Matches
hits_from_supporth and run_supporth in raven-toolbox.
@github-actions

Copy link
Copy Markdown

Function test results

399 tests   360 ✅  1m 32s ⏱️
 24 suites   39 💤
  1 files      0 ❌

Results for commit fb7df09.

@edkerk

edkerk commented Oct 16, 2026

Copy link
Copy Markdown
Member Author

Development of this pull request continues in CompMetEng/RAVEN#4, which has the same commits on the copied history.

@edkerk edkerk closed this Oct 16, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant