You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Make OnPair the default string-fragmentation scheme + register globally
Two changes that together stop FSST from being the default and make
OnPair work end-to-end through the file writer + reader.
vortex-btrblocks
* Remove `FSSTScheme` from `ALL_SCHEMES`. The struct and `Scheme` impl
stay in place so callers can opt back in via
`BtrBlocksCompressorBuilder::with_new_scheme(&FSSTScheme)`; it just
isn't in the default cascade anymore. OnPair fills the
string-fragmentation slot.
* Tighten `only_cuda_compatible` to exclude OnPair (heavier toolchain
dep) instead of FSST.
* Tests: drop the FSST-vs-OnPair tie-break test; add
`test_onpair_compressed` (FSST-style corpus → OnPair) and
`test_fsst_opt_in_still_works` (empty builder + with_new_scheme +
FSSTScheme).
vortex-file
* New `onpair` Cargo feature (default-on, mirrors `vortex-btrblocks`'s)
that pulls in `vortex-onpair` and registers `OnPair` in both
`register_default_encodings` and `ALLOWED_ENCODINGS`. Without this
the normalizer rejects vortex.onpair with "normalize forbids
encoding (vortex.onpair)" when round-tripping a file. Consumers
without a C++ toolchain can `default-features = false`.
CI / reproducibility
* Pin `onpair_cpp` to a full commit SHA in `cmake/onpair_pin.cmake`
(was tracking `main`). CI's `FetchContent` step is now reproducible
and won't break when upstream's main branch moves.
Tests: 109 across vortex-onpair, vortex-btrblocks, vortex-file; all
green. Clippy clean.
Signed-off-by: Claude <noreply@anthropic.com>
0 commit comments