What changed
v0.0.35 closes the gaps a September 2026 assessment found against the 2027 landscape: formal proofs for the input budgets, a WASI build, and the adoption surfaces the family lacked.
Added
- Machine-checked budgets. Nesting depth, alias occurrences, the alias-to-anchor ratio, the transitive repetition charge, expanded bytes and the node ceiling are decided by pure functions, and Kani proves them exact, monotone and free of wrap-around on every push.
- A wasm32-wasip2 build of the library in CI, the WASI component-model target.
- A GitHub Action.
uses: sebastienrousseau/noya-cli@v0.0.35installs the signed binaries, verifies their checksum and runsnoyafmt --checkandnoyavalidate. Hosted pre-commit hooks too. - A VS Code extension for noyalib-lsp, packaged as a
.vsixon every push. - Stateless MCP tools.
noyalib_parse,noyalib_editandnoyalib_validatetake content in the request and touch nothing on disk, the shape the July 2026 protocol's stateless deployments want. - A cookbook in the core: task-shaped recipes, each naming its runnable example.
Measured
- noyalib is 2.6 to 3.3 times faster than serde-saphyr 1.2.0 on every shared fixture, in one criterion run on one host, with the command disclosed. The conformance page has the table.
- Branch protection on the core now requires strict status checks, signed commits and code-owner review.
Upgrading
Bump every noyalib crate you use to 0.0.35. No public API changed
shape; the MCP server gained three tools and the CLI gained an Action
and hooks.