writr@6.1.5 — 2026-07-25
Widens engines.node to allow Node 24+; adds the unpublished writr-rs Rust engine workspace.
Bug Fixes
- allow Node 24+ in
engines.node—^22.18.0resolves to>=22.18.0 <23.0.0, excluding the Node versions writr is tested on, so installs underengine-strict=trueaborted withERR_PNPM_UNSUPPORTED_ENGINE(cf8efa4, #488)
Internal
- writr-rs: byte-exact Rust markdown engine — Cargo workspace with a commonmark-exact core, GFM alerts, toc/emoji/slug transforms, raw-HTML replay over html5ever, a highlight.js 11.11.1 engine port, and a KaTeX 0.16.45 bridge (097608b, 5997924, 684b143, 0ddec57, fc83338, f425e5f, #487)
- writr-rs: napi bindings (native + wasm32-wasip1 + browser ESM) with golden-harness parity across all 2,041 goldens on seven profiles, plus packed
renderBatchBufferbatch rendering (a51b7d6, bacd8d9, 126ca04, #487) - writr-rs: optimization pass — streaming serializer, copy-free hljs hot loop, 40-byte
u32parser events,wasm-opt -O3+ SIMD128, opt-in PGO build (87e09f0, 708a55e, 06c0fa4, 758e6ef, ef79f3c, a77fe00, f97d743, #487) - add
build:rs,build:rs:wasm, andbuild:rs:pgoscripts plusbenchmark/benchmark-rust.ts(#487) - add
.github/workflows/writr-rs.yml— fmt, clippy-D warnings, tests, coverage gate, codegen-freshness check, harness parity, native build matrix (b676fde, e68b3c4, edaa457, b19791f, #487) - refresh performance numbers after the M10 optimization pass (e88ce86, #487)
- pin browser install to the pinned playwright-core (f70fa36, #488)
Notes
- The published package's runtime is unchanged in this release.
src/**has zero changes sincev6.1.4, sodist/builds byte-identical to6.1.4.writr-rs/is not part of the npm tarball (files: ["dist", "README.md", "LICENSE"]) — it is built from source viapnpm build:rs. The only tarball-affecting change is theengines.nodewidening, which is why this is a patch rather than a minor.
Contributors
- @jaredwray (23 — writr-rs commits agent-authored)
Full List of Changes
- writr-rs: byte-exact Rust markdown engine (native + wasm + browser) with multi-core rendering by @jaredwray in #487
- root - fix: allow Node 24+ in engines.node by @jaredwray in #488
Full diff: v6.1.4...v6.1.5