Skip to content

v0.12.0

Choose a tag to compare

@iamalwaysuncomfortable iamalwaysuncomfortable released this 01 Oct 16:20
· 29 commits to mainnet since this release
9bbe5e6

What's Changed

Dependencies

  • Update snarkVM to v4.11.0 (#1413). All ten snarkvm-* crates move from 4.10.0 to 4.11.0. Package versions bump to 0.12.0.
  • Bump undici from 6.28.0 to 6.29.0 (#1412). Lockfile only.
  • Bump axios from 1.18.0 to 1.20.0 (#1414). Affects the website demo app only; no published package depends on it.

What snarkVM v4.11.0 brings

  • Varuna V3: a new version of the Varuna proving system, activated by ConsensusVersion::V21. Mainnet activates V21 at height 22,437,000 (targeted for October 1, 2026 at 21:00 UTC). Testnet has no activation height scheduled yet.
  • ConsensusVersion::V22: a placeholder, set to u32::MAX on both networks.
  • Exhaustive VarunaVersion checks: every match on the Varuna version now handles V1, V2 and V3 explicitly.

Breaking: snarkVerify and snarkVerifyBatch now verify Varuna V3 proofs

Both off-chain verifiers previously hardcoded Varuna V2. They now use the Varuna version required by the latest consensus version, mirroring the on-chain snark_verify rule. From this release that is Varuna V3, so proofs generated with Varuna V2 no longer verify. Regenerate any stored proofs with snarkVM v4.11.0 or later before passing them to these functions.

The snark-verify test fixture in sdk/tests/data/ has been regenerated as a Varuna V3 proof.

Consensus-version count

NUM_CONSENSUS_VERSIONS goes 21 → 22, so getOrInitConsensusVersionTestHeights now requires twenty-two heights. Every copy of the consensus-heights list is extended by one value:

  • sdk/tests/wasm.test.ts and the test_set_genesis_block_non_zero_fails input in wasm/src/utilities/mod.rs
  • the getOrInitConsensusVersionTestHeights doc example in wasm/src/utilities/mod.rs
  • the JSDoc examples in sdk/src/program-manager.ts and their docs/api_reference mirror
  • create-leo-app/template-devnode-js/index.js

Devnet users who call getOrInitConsensusVersionTestHeights with an explicit list must pass twenty-two heights.

Testing

  • All CI checks pass on the release commit: build, clippy (mainnet and testnet), CJS smoke + exports validation, every create-leo-app template build, and the create-leo-app CLI, run, dynamic-dispatch and loyalty-program jobs.

Full Changelog: v0.11.11...v0.12.0