Repository navigation
v4.2.0 — the rsig half of the real corpora
Five new corpora: blood (11,117 samples, 947 study groups), blood-uncapped (22,441), tissue (21,131 / 1,934), tissue-uncapped (33,874) and deep-tcr (3,936 amplicon samples, TRA+TRB). All nine are fitted at k=256 and ship every component. Requires vdjtools >= 4.2.0, which owns the fit and the resolver.
pip install -U mirpy-lib
mir signature --corpus blood cohort/*.tsv.gz -o rsig.tsvArtifacts are fetched, not bundled — the wheel drops from 11.5 MB to 2.13 MB
At k=256 an rsig artifact is ~3.1 MB and the nine corpora across both halves are ~110 MB. The wheel now carries corpora.json — every name, size and SHA-256 — and fetches what you name from corpora-v1 into $VDJTOOLS_CORPUS_DIR (default ~/.cache/vdjtools/signature), verified against that digest.
One resolver serves both halves, so they cannot disagree about precedence: a local path always beats a download, and a digest mismatch is deleted rather than cached. mir corpus --fetch all pre-warms. Each half is published by the library that owns it — vsig in vdjtools' corpora-v1, rsig here — and they share one cache directory because a vsig/rsig pair belongs in one place.
256 components is generous on the geometry half
rsig reaches 0.90 of variance in 7–18 components and is effectively full rank by 256, so --components 32 is usually the right request. The width exists so a wide artifact can serve every narrower one — truncating downward at apply time is exact, verified at |cos| = 1.000000 against the 128-component fit.
publish.yml publishes only for a v* tag now, every job gated.
No artifact manifest carries a cohort label, dataset name, accession or sample id: the population is rule text with aggregate counts, per-locus read floors and the measured read band.
Full changelog: https://github.com/antigenomics/mirpy/blob/master/CHANGELOG.md