• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

openvax / topiary / 24469534512
88%
master: 90%

Build:
Build:
LAST BUILD BRANCH: v5.16.2
DEFAULT BRANCH: master
Ran 15 Apr 2026 05:56PM UTC
Jobs 3
Files 33
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

15 Apr 2026 05:48PM UTC coverage: 88.26% (+0.01%) from 88.246%
24469534512

Pull #136

github

iskandr
CachedPredictor: CLI support + real NetMHC fixtures + README reorder

## CLI

New `--mhc-cache-*` argument group lets users run topiary entirely
from pre-computed prediction files, without invoking a live MHC
predictor.  Every CachedPredictor loader has a CLI path:

  topiary --peptide-csv peptides.csv \
      --mhc-cache-file netmhcpan_run.out \
      --mhc-cache-format netmhcpan_stdout \
      --output-csv results.csv

Flags: --mhc-cache-file, --mhc-cache-directory (+ pattern),
--mhc-cache-format (8 choices), --mhc-cache-predictor-name /
--mhc-cache-predictor-version overrides, --mhc-cache-tsv-column
(repeatable), --mhc-cache-tsv-sep, plus format-specific mode and
version knobs for the NetMHC family.

--mhc-predictor / --mhc-alleles become optional when a cache is
supplying predictions.  A combined --mhc-cache-file +
--mhc-cache-directory raises; missing --mhc-cache-format with a
--mhc-cache-file raises; etc. — all validated with actionable
messages.

## Real NetMHC fixtures

tests/data/netmhc_fixtures/ now holds captured stdout from the
netmhc-bundle binaries for peptide SLLQHLIGL against HLA-A*02:01,
HLA-A*24:02, HLA-B*07:02 (substituted for B*07:01 which isn't in
NetMHCpan's allele list):

- netmhcpan-4.1 and 4.0 output (single-allele per file)
- netmhc-4.0 output (multi-allele works)
- netmhcstabpan output (single-allele)

Multi-allele NetMHCpan outputs are also committed but currently
don't parse through mhctools; filed as openvax/mhctools#195 with
the root-cause analysis (per-allele "Distance to training data"
header lines confuse the row parser).  NetMHCcons skipped because
the binary requires python2 which isn't on this machine's PATH.

## Tests

- 6 new TestRealNetMHCFixtures tests assert the actual numeric
  predictions (e.g. SLLQHLIGL × HLA-A*02:01 = 8.82 nM, 0.105%rank)
  parse through each from_*_stdout loader.
- 9 new tests in tests/test_cli_cached_predictor.py exercise the
  CLI end-to-end: error paths, happy paths for netmhcpan / net... (continued)
Pull Request #136: CachedPredictor CLI + real NetMHC fixtures + README reorder

59 of 66 new or added lines in 3 files covered. (89.39%)

39 existing lines in 2 files now uncovered.

3368 of 3816 relevant lines covered (88.26%)

2.65 hits per line

Uncovered Changes

Lines Coverage ∆ File
7
87.27
topiary/cli/cached_predictor.py

Coverage Regressions

Lines Coverage ∆ File
21
89.41
0.0% topiary/cached.py
18
90.94
0.29% topiary/cli/args.py
Jobs
ID Job ID Ran Files Coverage
1 python-3.12 - 24469534512.1 15 Apr 2026 05:56PM UTC 33
88.26
GitHub Action Run
2 python-3.11 - 24469534512.2 15 Apr 2026 05:56PM UTC 33
88.26
GitHub Action Run
3 python-3.10 - 24469534512.3 15 Apr 2026 05:56PM UTC 33
88.26
GitHub Action Run
Source Files on build 24469534512
  • Tree
  • List 33
  • Changed 2
  • Source Changed 2
  • Coverage Changed 2
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #24469534512
  • Pull Request #136
  • PR Base - master (#24430359255)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc