Skip to content

Releases: antigenomics/vdjtools

vdjtools 5.3.2

Choose a tag to compare

@mikessh mikessh released this 28 Oct 13:08
945176f

Corpus bootstrap now verifies both indexed payloads, isolates immutable cache versions, coordinates concurrent downloads with a crash-releasing lock, and repairs partial or corrupt legacy caches.

Sample PCA application projects bounded row blocks into preallocated scores. project-features --threads controls the numerical budget for fitting and application, with caller limits restored on exit.

All six source CI jobs passed. Release preflight passed source-distribution checks, all 12 platform/Python wheels and the release test gate; the produced macOS Python 3.12 wheel passed native-version and projection smoke checks. Fitted model parameters are unchanged.

vdjtools 5.3.1

Choose a tag to compare

@mikessh mikessh released this 28 Oct 09:04
6094949

Exact cohort distances now aggregate each sample once and use existing sparse matrix products for cohorts of four or more samples. Direct comparisons remain in place for three or fewer samples, and Pearson/fuzzy overlap paths keep their existing arithmetic and engines.

  • Floor logarithmic overlap distances at zero so identical repertoires can be hierarchically clustered.
  • Stream corpus SHA256 checks in bounded memory and close NPZ archives on both success and read/validation failures.
  • Validate preinitialized Polars pools against the current CPU allocation before sample maps, including the single-worker path; process workers retain serial inner kernels.
  • Explain exact-overlap formulas, memory requirements, CPU budgets, and the scope of OLGA concordance and performance measurements.

Measured on 64 synthetic samples with 1,000 clonotypes each, the four exact-distance metrics improve 17.6–19.7x over pairwise assembly. Three samples with 10 million clonotypes retain the previous direct path and exact results. These workload measurements do not imply universal core-linear scaling.

Native algorithms, model parameters, and dependency floors are unchanged from 5.3.0. The license and badge remain aligned with ARDA.

vdjtools 5.3.0

Choose a tag to compare

@mikessh mikessh released this 28 Oct 04:33
c635340

vdjtools 5.3.0 improves count correctness, native sequence scoring, bounded sample processing, and asset bootstrap.

  • Preserve exact Int64 counts, including scientific notation beyond float64 precision. Requires Polars >=1.37.
  • Reuse query-local native Pgen work and dispatch coarse chunks within the selected CPU allocation. Add explicit sample-process batches and native sampling controls; avoid nested thread oversubscription.
  • Download corpus assets atomically and clean up interrupted temporary files.
  • Refresh examples and Diataxis documentation. Preserve the Academic and Non-Commercial license and the matching ARDA license badge.
  • Require ARDA >=2.37.1 and seqtree >=1.3.2, both already published. Fitted model parameters are unchanged.

Validation includes full source CI, strict OLGA oracle checks, scheduled native Linux tests, and downstream VDJdb motif/thread-budget checks. All 28 measured warmed FastPgen conditions improved; measured 16-thread stream speedups range from 6.47x to 10.82x depending on locus and scoring mode. These measurements describe the tested workloads, not a universal speed guarantee.

vdjtools 5.2.2

Choose a tag to compare

@mikessh mikessh released this 19 Oct 14:38
b15a754

Requires seqtree >=1.3.1,<2, ensuring the released input-length gap-prior preparation fix is available.

Algorithms, native scoring kernels, ingestion behavior and bundled recombination models are unchanged from 5.2.1. The native/Python version advances consistently to 5.2.2.

Integration: #205. Release promotion: #206. Cross-platform CI includes the complete Linux reference/EM suite, plus native/dependency smoke and strict documentation checks.

vdjtools 5.2.1

Choose a tag to compare

@mikessh mikessh released this 19 Oct 10:39
a295ea6

Adds source-preserving tcR ingestion with read_mitcr(..., collapse=False), including bestVGene/bestJGene aliases, missing or ambiguous gene calls, and repeated source rows.

Preserves exact nonnegative int64 counts through ingestion and shared schema normalization, including counts above 2^53 and decimal-zero notation. The default collapsed ingestion path is unchanged.

Validated with conversion/schema regression tests, clean-wheel ingestion checks, and the complete cross-platform dependency CI before release. Native scoring kernels and bundled models are unchanged.

vdjtools 5.2.0 — configured corpora and bounded fitting

Choose a tag to compare

@mikessh mikessh released this 17 Oct 18:53
3ac89a6

Configured statistical features and reproducible named corpus projection:

  • Basic/joint feature sets with frozen motif and V-gene definitions.
  • 70 configured real-corpus models plus nine preserved legacy models; list names with vdjtools corpus --list and fetch only the model needed. All 158 public parameter files have verified SHA256 identities and exact byte counts.
  • Bounded sparse/centered fitting, joined feature workers before numerical fitting, and compatible SciPy column-vector handling.
  • Shared TRA/TRD germline membership repairs, bounded unseen-taxon bootstrap memory, closed-form richness rarefaction, and impossible V/J suffix pruning.
  • Correct download-size diagnostics after partial-file cleanup.

Requires arda-mapper >=2.36.2 and seqtree >=1.2.0,<2. Both upstream versions are published and verified. Configured synthetic models remain deferred; existing model parameters were not refitted during this release work.

Validation: exact integration-head CI is green across Python 3.10/3.12 on Linux/macOS, native C++ and strict docs. A full Linux gate passed 1,385 tests plus the bounded-resource regression. Compatibility checks pass in both the normal and CI-pinned environments. Public named corpus fetch/load/projection passes from an empty cache.

vdjtools 5.1.0

Choose a tag to compare

@mikessh mikessh released this 13 Oct 05:22
cda4872

Table PCA models now preserve explained-variance ratios when fitted, saved and loaded. Validation checks their shape, finite nonnegative values and total; older saved rotations remain loadable without this optional field.

The raw-feature guide clarifies reference selection and coordinate compatibility. Raw feature and signature representations remain unchanged. Fitted reference PCA bundles are separate outputs and are not included in the package or release assets.

Validation: all six CI jobs passed, including the Linux heavy tier; focused projection tests and warning-free documentation build passed. Rebuilt wheel and source distribution passed inventory checks and isolated installation/native-import verification.

vdjtools 5.0.2

Choose a tag to compare

@mikessh mikessh released this 12 Oct 11:34

Cohort processing now uses a fixed number of workers and one queued task per worker, with serial inner numerical kernels. Worker failures propagate without leaving the pool waiting. Known large numerical allocations check the available container memory before allocation.

Adds vdjtools features for unrotated statistical features and channels, and vdjtools pca to fit, save or apply a compatible sample-table rotation. Existing signature corpus behavior is preserved. AIRR identifiers retain leading zeros.

Validation: fast regression suite, focused worker/resource/PCA checks, warning-free docs and isolated wheel/native import checks. A generated 10,000-sample feature-table benchmark with four workers stayed below 0.5 GiB peak RSS under a 16 GiB limit.

vdjtools 5.0.1

Choose a tag to compare

@mikessh mikessh released this 11 Oct 19:38
633e90b

Allocation-aware CPU budgets prevent nested compute oversubscription in containers and scheduled jobs. Shared thread workers reduce process and memory overhead; serial mode starts no pool.

Native worker startup and execution failures now join started workers and propagate Python exceptions instead of aborting the interpreter. Corpus workers release mapped resources before scratch cleanup.

The unchanged reference corpus sampler remains GIL-limited; CLI help and documentation explain the throughput tradeoff.

Validation: all six CI jobs pass on the reviewed source, including Linux/macOS C++ and Python 3.10/3.12 coverage. Focused worker/resource regressions and warning-free documentation builds pass.

vdjtools 5.0.0

Choose a tag to compare

@mikessh mikessh released this 06 Oct 18:50
dc3f37f

Breaking API change: remove the formerly unused compare_models(labels=...) keyword, deprecated in 4.9.0. Remove it from table comparisons; use compare_net_dot(..., labels=("first", "second")) for graph labels. Distance-table columns and values are unchanged, and the CLI retains graph labels.

Gene-prior regression tests retain full TRB zero/default equivalence and share one positive-prior fit for invariants. Exact M-step edge cases now run on every CI platform. On a 16-core Mac with the same native Release build, the original four tests took 122.81 seconds and the optimized suite plus five new cases took 89.21 seconds. Native E-step calls fell from 11 to 7; production inference and fitted artifacts are unchanged.