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

openvax / topiary / 25872231615
90%
master: 90%

Build:
Build:
LAST BUILD BRANCH: v5.16.2
DEFAULT BRANCH: master
Ran 14 May 2026 04:42PM UTC
Jobs 3
Files 35
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

14 May 2026 04:34PM UTC coverage: 89.836% (+0.2%) from 89.625%
25872231615

Pull #167

github

iskandr
DSL: class_i / class_ii shortcuts + ranking docs catch-up

- `topiary.class_i` and `topiary.class_ii` — pre-built `IsIn` nodes
  referencing the `mhc_class` column.  Compose with any other DSL node:
  `apply_filter(df, class_i & (Affinity.value <= 500))`.
- `topiary.derive_mhc_class(allele_series)` — public utility for
  stamping `mhc_class` onto a DataFrame produced outside the pvacseq
  loader (e.g. a fresh `TopiaryPredictor` result that carries class
  only at the model-level `kind_support`).  Returns a Series of
  `"I"` / `"II"` / `pd.NA`.

`docs/ranking.md` — `Column()` section gets an "Equality / membership
on any dtype" subsection covering:

- `Column("x").eq(value)` / `.ne(value)` / `.isin(values)` and why
  `Column("x") == "y"` doesn't compose (`__eq__` deliberately not
  overridden — nodes stay hashable).
- The `parse('mhc_class == "I"')` string-DSL form and the
  `<` / `<=` / `>` / `>=` rejection on string operands.
- The `class_i` / `class_ii` shortcuts and the `derive_mhc_class`
  utility for non-pvacseq DataFrames.

Also tightens the "Only numeric columns" wording — it's still true
for arithmetic and ordered comparisons, but no longer for equality /
membership.

Tests: 4 new `TestIsIn` cases for the shortcuts and their composition
with numeric clauses; `test_derive_mhc_class_public_utility` covers
the new package-level export across class I / class II / heterodimer /
unknown / None inputs.

143 dsl + pvacseq tests pass; 701 across pvacseq / io / io_lens / dsl /
ranking / wide.
Pull Request #167: Add pVACseq report loader (closes #94)

267 of 302 new or added lines in 5 files covered. (88.41%)

59 existing lines in 2 files now uncovered.

4552 of 5067 relevant lines covered (89.84%)

2.7 hits per line

Uncovered Changes

Lines Coverage ∆ File
19
88.86
-0.82% topiary/ranking/nodes.py
15
93.53
topiary/io_pvacseq.py
1
92.16
-0.06% topiary/ranking/parser.py

Coverage Regressions

Lines Coverage ∆ File
55
88.86
-0.82% topiary/ranking/nodes.py
4
94.31
5.88% topiary/ranking/apply.py
Jobs
ID Job ID Ran Files Coverage
1 python-3.12 - 25872231615.1 14 May 2026 04:42PM UTC 35
89.84
GitHub Action Run
2 python-3.10 - 25872231615.2 14 May 2026 04:42PM UTC 35
89.84
GitHub Action Run
3 python-3.11 - 25872231615.3 14 May 2026 04:42PM UTC 35
89.84
GitHub Action Run
Source Files on build 25872231615
  • Tree
  • List 35
  • Changed 6
  • Source Changed 5
  • Coverage Changed 6
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #25872231615
  • Pull Request #167
  • PR Base - master (#25821572339)
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