Repository navigation
Stable release, covering the whole arc from 1.1.8 through 2.0.0-rc.4. Highlights below; full details are in
the beta/rc entries beneath this one. The only change since rc.4 itself is CI-only: release.yml gates the
GitHub release job behind a manual-approval environment and no longer deletes a pre-existing release for the
same tag before publishing.
Changed
- BREAKING: bclibc no longer throws. Every fallible function returns
BCLIBC_Result<T>wrapping one
taggedBCLIBC_Error, replacing the old exception classes and theBCLIBC_BaseResult/BCLIBC_EngineResult
split. The flat C ABI, which already returned error codes, is unaffected at that boundary. - BREAKING: the RK45 tolerance/stats API is now per-instance. The thread-local
BCLIBC_cashKarpSetRelativeTolerance-style functions are replaced byBCLIBC_CashKarpIntegrator/
BCLIBC_DormandPrinceIntegrator/BCLIBC_TsitourasIntegratorclasses, each owning its own tolerances and
accepted/rejected step counts (safe to share across threads viastd::ref). - Event/row interpolation is interval-based, not per-raw-point, and a scheduled sample no longer silently
merges with a physical event at a nearby timestamp — both fix real accuracy/row-count bugs that adaptive
stepping exposed. tiny_bclibcmigrated its adaptive core from Cash-Karp to Tsitouras 5(4), matching bclibc's own default.- The bare WebAssembly build (
BCLIBC_WASM_BARE=ON) is one flavour for both toolchains (wasi-sdk, zig) now
that the core never throws.
Added
- Dormand-Prince 5(4) and Tsitouras 5(4) adaptive integrators, alongside the existing Cash-Karp.
- Bare (import-nothing) WebAssembly builds for both
bclibcandtiny_bclibc, verified bit-identical to
native. BCLIBCFFI_interpolate_trajectory_data,BCLIBCFFI_hermite,BCLIBCFFI_interpolate_3pt/_2ptin the flat
C ABI.- CI actually runs the C++ test suite and the
tiny_bclibcidentity test on every PR, plus a dedicated
"no exceptions or RTTI in the core" guard.
Removed
- The Emscripten-based wasm build (
build_wasm.sh) and its automated emsdk-bump workflow, superseded by the
bare wasm build.