You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This commit was created on GitHub.com and signed with GitHub’s verified signature.
0.14.8 (2026-05-11)
Enhancements
[FEATURE][web] Multi-threaded WASM proving via wasm-bindgen-rayon. Adds an MT WASM bundle alongside the existing single-threaded one, exposed under new package subpaths (@miden-sdk/miden-sdk/mt, @miden-sdk/miden-sdk/mt/lazy) and corresponding @miden-sdk/react/mt entries. Consumers in cross-origin-isolated contexts (COOP same-origin + COEP require-corp) opt in to parallel proving on supported hosts; the default @miden-sdk/miden-sdk and /lazy entries remain single-threaded and work in any context. Build matrix produces both ST and MT outputs from the same Rust workspace; uses the published miden-clientconcurrent feature, which propagates through miden-tx and miden-prover for full rayon parallelism (not just miden-crypto-only as the prior crypto/concurrent approach delivered) (#134, corresponding miden-client release: v0.14.8).
[FEATURE][rust] Bumped workspace miden-client dependency to 0.14.8 to consume the published concurrent feature (#134).
Fixes
[FIX][react] useConsume({ notes: [hexString] }) no longer crashes with null pointer passed to rust after the hook hands the NoteId array to NoteFilter (which moves the elements via Vec<NoteId> ABI). Snapshot the id strings before the move (#138).
[FIX][react] useMultiSend no longer crashes with null pointer passed to rust when any recipient uses NoteType.Private. Build NoteArray via push(¬e) instead of the Vec<Note> constructor so each output's note handle stays valid for the post-commit sendPrivateNote loop (#138).
[FIX][react] transactionId (and txId) in useTransaction, useConsume, useMint, useSwap, useSend, useMultiSend hook results no longer round-trip to "[object Object]". Hooks now call .toHex() on the WASM TransactionId instead of relying on a .toString() that doesn't exist (#138, #83).
CI / tooling
[FIX][ci] inject-linked-client-pr action pins the linked PR by rev = HEAD_SHA instead of branch = HEAD_REF. Branches on upstream miden-client are auto-deleted at merge; the prior branch-pin broke web-sdk PR CI from that moment on. SHA-pin survives branch deletion via GitHub's uploadpack.allowAnySHA1InWant (#134).
[FIX][ci] check-linked-client-pr.yml switched from pull_request to pull_request_target so the linked-client-pr-ready status check posts on fork PRs (#141).