Skip to content

Release 2.5.7 — use the committed mmseqs indexes + version bump - #79

Merged
mikessh merged 1 commit into
masterfrom
release/2.5.7
Jul 18, 2026
Merged

Release 2.5.7 — use the committed mmseqs indexes + version bump#79
mikessh merged 1 commit into
masterfrom
release/2.5.7

Conversation

@mikessh

@mikessh mikessh commented Jul 18, 2026

Copy link
Copy Markdown
Member

Cuts 2.5.7. Headline fix + the version bump; the reference is unchanged.

Fix — the committed precompiled indexes were never used

The precompiled mmseqs DBs shipped in database/vdj/*/mmseqs/ are gated on a version marker compared with an exact ==. But mmseqs version prints the same release+commit with different punctuation across builds — the official static binary says 18-8cc5c, the bioconda build 18.8cc5c. When arda's toolchain moved from conda's mmseqs to the static binary (#78), every committed marker (written under conda's mmseqs) stopped matching, so the shipped indexes were silently ignored and every run rebuilt a private data/mmseqs_db cache.

_committed_index and build_index now compare via mmseqs.version_key — folds [\s._-]+- and lowercases — bridging the cosmetic difference while still rejecting a genuinely different version (17-b804f18-8cc5c). Verified: the committed nt/aa indexes for every org are now selected, and the full unit + synthetic + realworld suite is green using them (303 passed).

Version bump 2.5.6 → 2.5.7

All eight places: pyproject.toml, src/arda/__init__.py, docs/conf.py, docs/pipeline_integration.rst, and the Nextflow module's main.nf / environment.yml / Dockerfile / README.md. The pypi publish job validates pyproject == tag.

CHANGELOG

## 2.5.7 covers this fix plus the two already-merged into master since 2.5.6: the stale-cache rebuild (#77) and the conda→uv toolchain switch (#78).

Release checklist

  • scripts/pack_reference.sh pre-flighted locally (2.8M, 53 members, verified — the reference-asset job will attach arda-reference-vdj.tar.gz)
  • Merge → cut GitHub Release v2.5.7publish.yml builds wheels/sdist and pauses at the pypi environment gate for approval

🤖 Generated with Claude Code

Bug fix bundled with the release bump: the precompiled mmseqs DBs shipped in
`database/vdj/*/mmseqs/` were never used. Their version marker was compared with
an exact `==`, but `mmseqs version` prints the same release+commit with different
punctuation across builds (static binary `18-8cc5c`, bioconda `18.8cc5c`), so the
markers -- written under conda's mmseqs -- stopped matching once the toolchain
moved to the static binary. Every run silently rebuilt a private cache instead.

`mmseqs.version_key` normalizes the separator (`[\s._-]+` -> `-`, lowercased) so
the comparison bridges the cosmetic difference while still rejecting a genuinely
different version. Used in `_committed_index` and `build_index`.

Also bumps the version to 2.5.7 across the eight places it lives (pyproject,
`src/arda/__init__.py`, docs conf/pipeline, and the Nextflow module's main.nf /
environment.yml / Dockerfile / README) and adds the 2.5.7 CHANGELOG entry, which
also covers the already-merged stale-cache fix (#77) and uv toolchain switch (#78).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@mikessh
mikessh merged commit 40f9b85 into master Jul 18, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant