Repository navigation
·
40 commits
to main
since this release
Immutable
release. Only release title and notes can be modified.
Bug-for-bug compatible reimplementation of MaxBin2 2.2.7. ~8x faster EM core.
Note: v0.1.0–v0.1.2 were missing recursive binning and should not be used.
What's new in v0.1.3
- Fix float multiplication order in EM M-step to match C++ evaluation order — closes the last
double/f64divergence - All FFI equivalence tests now assert bit-identical output (not float tolerance)
- Recursive equivalence check added to CI (5000 contigs, depth-5 recursion)
- Flake restricted to x86_64-linux (the only tested platform)
Install
# Via Nix (recommended)
nix run github:werner291/maxbin-rs -- -help
# Via Docker
docker run --rm ghcr.io/werner291/maxbin-rs:latest -helpEquivalence status
At the same float width (double/f64), output is byte-for-byte identical to MaxBin2 2.2.7 on a 5000-contig subset of CAMI I High through 5 levels of recursive binning. Full-scale CAMI I High (42,038 contigs) equivalence is pending verification. The original uses long double (80-bit) on x86-64 Linux, which introduces a small number of divergences at decision boundaries where the classifier has no confidence.
Full changelog
See git log v0.1.2..v0.1.3