v0.2.48 — sdivi-rust v0.2.48 — Smaller WASM artifact and a green CI surface
sdivi-rust v0.2.48 — Smaller WASM artifact and a green CI surface
A maintenance release (M48) that follows v0.2.47. It ships a ~25% smaller
@geoffgodwin/sdivi-wasm .wasm and restores a fully green CI surface by fixing
three pre-existing, mutually-masking gate failures that the M34–M47 batch carried.
There are no functional changes: same analysis behaviour, same wasm-bindgen
surface, same snapshot_version "1.0", same public API.
Highlights
- WASM artifact ~25% smaller. The bundler and node targets now build with the
size-optimisedrelease-wasmsettings (opt-level="z", fat LTO,
codegen-units=1), driven through wasm-pack via job-scoped
CARGO_PROFILE_RELEASE_*env overrides (sidestepping the wasm-pack 0.13.x
--release/--profileconflict). Both targets drop from ~2,062,372 to
~1,531,484 bytes. Behaviour is byte-for-byte equivalent. - WASM bundle-size gate green again. M34–M47's new pattern-category regex
tables had pushed the.wasmover the 1.75 MB per-target budget; the optimised
build lands back under it with ~300 KB headroom — no budget bump needed. - M47 consumer-surface typecheck made deterministic.
tests/typecheck/tsconfig.json
now includes"DOM"inlib, soconsole(used throughout the documented
examples) resolves on every CI runner instead of depending on an ambient
@types/node. A self-referential guard comment innegative.tsthat began with
the literal@ts-expect-errortoken (parsed by TypeScript as a real directive)
was reworded. - Rustdoc fix.
classify_hint's documentation linked to the private
CALL_DISPATCHconst, failingcargo docunderRUSTDOCFLAGS="-D warnings".
The link is now a plain code span.
What did not change
snapshot_versionis still"1.0". Snapshot JSON,pattern_metrics,
DivergenceSummary, and the 19-category contract are all unchanged from v0.2.47.- No public API change, no new
.sdivi/config.tomlkeys, no newpubitems. - The WASM dependency invariant (Rule 21) holds; the dependency tree is unchanged
— only the codegen profile differs. - Determinism, atomic-write, retention, and exit-code contracts are unchanged.
Install
# crates.io
cargo install sdivi-cli
# pre-built binary (Linux x86_64 example)
curl -Lo sdivi https://github.com/GeoffGodwin/sdivi-rust/releases/download/v0.2.48/sdivi-x86_64-unknown-linux-gnu
chmod +x sdivi && mv sdivi ~/.local/bin/
# WASM / npm
npm install @geoffgodwin/sdivi-wasm@0.2.48Documentation
- Pattern category contract: https://github.com/GeoffGodwin/sdivi-rust/blob/main/docs/pattern-categories.md
- CHANGELOG: https://github.com/GeoffGodwin/sdivi-rust/blob/main/CHANGELOG.md
Released under Apache 2.0.
What's Changed
- ci: green up post-v0.2.47 CI (wasm size + M47 typecheck + rustdoc link) by @GeoffGodwin in #6
Full Changelog: v0.2.47...v0.2.48