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

pirl-unc / hitlist / 25166359011
80%

Build:
DEFAULT BRANCH: main
Ran 30 Apr 2026 12:53PM UTC
Jobs 1
Files 26
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

30 Apr 2026 12:51PM UTC coverage: 70.19% (+0.09%) from 70.099%
25166359011

push

github

web-flow
v1.30.10: PTM-aware peptide columns — preserve, don't strip (#194) (#195)

* v1.30.10: PTM-aware peptide columns — preserve modifications instead of stripping (#194)

IEDB embeds post-translational modifications inline in the
Epitope|Name column (e.g. "LQPFPQPQLPY + DEAM(Q8)"). v1.30.9's
discrepancies report surfaced 225K such rows where this mangled the
peptide column — length filters saw 19-char strings instead of 11-mer
peptides, model training inputs got annotation strings, and the
nonstandard-AA detector flagged spurious "X" / digits / spaces.

This commit adds a parser that pulls PTMs into structured columns
without losing information:

- peptide                — bare AA sequence (cleaned).
- peptide_modifications  — canonical "MOD:residue<pos>;..." string,
                           empty when no PTM. Sortable, parquet-
                           friendly, easy to filter on.
- has_ptm                — boolean convenience flag.
- peptide_extended       — ProForma 2.0-style string with PTM tags
                           inline at the modified residue, e.g.
                           "LQPFPQPQ[Deamidated]LPY". Suitable for
                           PTM-aware model inputs (Skyline, ProForma
                           parsers, deep learning tokenizers that
                           accept extended alphabets).

Covers all 34 modification types observed in the corpus (DEAM, OX,
PHOS, ACET, MCM, BIOT, CITR, MYRI, PALM, GLYC, …). Mod codes without
a clean ProForma name (MCM, OTH, IASA, …) keep the IEDB short code
in the extended string so no information is lost.

Defensive parsing: if IEDB claims DEAM(Q8) but position 8 isn't a Q,
we still emit the canonical mod string but DON'T inject a misleading
inline tag at the wrong residue. Unparseable annotations preserve
the input string in both bare and extended outputs rather than
silently dropping data.

Schema change requires `hitlist data build` to repopulate the
parquets — old parquets lack the three n... (continued)

3513 of 5005 relevant lines covered (70.19%)

0.7 hits per line

Coverage Regressions

Lines Coverage ∆ File
26
78.74
-0.68% scanner.py
2
54.95
-0.3% cli.py
Jobs
ID Job ID Ran Files Coverage
1 25166359011.1 30 Apr 2026 12:53PM UTC 26
70.19
GitHub Action Run
Source Files on build 25166359011
  • Tree
  • List 26
  • Changed 2
  • Source Changed 0
  • Coverage Changed 2
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #25166359011
  • 31872cc5 on github
  • Prev Build on main (#25165443155)
  • Next Build on main (#25170780743)
  • 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