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

pirl-unc / hitlist / 24700099692
80%

Build:
DEFAULT BRANCH: main
Ran 21 Apr 2026 02:01AM UTC
Jobs 1
Files 21
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

21 Apr 2026 01:59AM UTC coverage: 48.311% (+0.2%) from 48.105%
24700099692

push

github

web-flow
v1.13.2: cache ProteomeIndex.from_fasta by resolved (path, size, mtime) (#86) (#101)

`_add_flanking` in the build pipeline groups peptides by canonical
species and calls `ProteomeIndex.from_fasta(path, ...)` once per
species. When multiple canonical names fall back to the same shared
FASTA (e.g. "LCMV Armstrong", "LCMV Pasteur", "LCMV Traub", "LCMV WE"
all resolve to one cached UniProt proteome), the indexer was rebuilt
from scratch each time. For a typical IEDB build with ~300 small-
genome species that's ~15 minutes of redundant work.

Adds a process-level cache in `hitlist.proteome` keyed on

    (resolved_path, size, mtime_ns, lengths, gene_name, gene_id)

so repeated calls with the same inputs return the SAME ProteomeIndex
instance. The (size, mtime_ns) part of the key auto-invalidates when
`fetch_species_proteome` refreshes a FASTA on disk — no manual
clear-cache needed.

Also exports `clear_fasta_index_cache()` for test isolation when
multiple tests reuse the same temp filename in one process.

Three new tests:
- test_from_fasta_caches_by_path — same inputs return same instance
- test_from_fasta_cache_invalidates_on_mtime — mtime change rebuilds
- test_from_fasta_cache_keyed_on_lengths — different lengths rebuild

Scope: this is the (a) proposal from #86 — simplest diff, biggest
ROI for the common case. The larger (b)/(c)/(d) proposals (regroup by
FASTA path in _add_flanking, canonical-name collapse via UPID, per-
FASTA ProcessPool) are left as follow-ups if more is needed.

Closes #86.

1487 of 3078 relevant lines covered (48.31%)

0.48 hits per line

Coverage Regressions

Lines Coverage ∆ File
31
73.08
1.34% proteome.py
Jobs
ID Job ID Ran Files Coverage
1 24700099692.1 21 Apr 2026 02:01AM UTC 21
48.31
GitHub Action Run
Source Files on build 24700099692
  • Tree
  • List 21
  • Changed 1
  • Source Changed 0
  • Coverage Changed 1
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #24700099692
  • 459263ce on github
  • Prev Build on main (#24700010067)
  • Next Build on main (#24700180143)
  • Delete
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