Download Latest Version wasm-bindgen-0.2.117-x86_64-apple-darwin.tar.gz (8.3 MB)
Email in envelope

Get an email when there's a new version of wasm-bindgen

Home / 0.2.115
Name Modified Size InfoDownloads / Week
Parent folder
wasm-bindgen-0.2.115-aarch64-apple-darwin.tar.gz 2026-03-27 7.9 MB
wasm-bindgen-0.2.115-aarch64-apple-darwin.tar.gz.sha256sum 2026-03-27 126 Bytes
wasm-bindgen-0.2.115-aarch64-unknown-linux-gnu.tar.gz 2026-03-27 11.2 MB
wasm-bindgen-0.2.115-aarch64-unknown-linux-gnu.tar.gz.sha256sum 2026-03-27 131 Bytes
wasm-bindgen-0.2.115-aarch64-unknown-linux-musl.tar.gz 2026-03-27 11.2 MB
wasm-bindgen-0.2.115-aarch64-unknown-linux-musl.tar.gz.sha256sum 2026-03-27 132 Bytes
wasm-bindgen-0.2.115-x86_64-apple-darwin.tar.gz 2026-03-27 8.3 MB
wasm-bindgen-0.2.115-x86_64-apple-darwin.tar.gz.sha256sum 2026-03-27 125 Bytes
wasm-bindgen-0.2.115-x86_64-pc-windows-msvc.tar.gz 2026-03-27 7.4 MB
wasm-bindgen-0.2.115-x86_64-pc-windows-msvc.tar.gz.sha256sum 2026-03-27 128 Bytes
wasm-bindgen-0.2.115-x86_64-unknown-linux-musl.tar.gz 2026-03-27 11.3 MB
wasm-bindgen-0.2.115-x86_64-unknown-linux-musl.tar.gz.sha256sum 2026-03-27 131 Bytes
0.2.115 source code.tar.gz 2026-03-27 2.4 MB
0.2.115 source code.zip 2026-03-27 4.6 MB
README.md 2026-03-27 6.8 kB
Totals: 15 Items   64.1 MB 0

Added

  • console.debug/log/info/warn/error output from user-spawned Worker and SharedWorker instances is now forwarded to the CLI test runner during headless browser tests, just like output from the main thread. Works for blob URL workers, module workers, URL-based workers (importScripts), nested workers, and shared workers (including logs emitted before the first port connection). Non-cloneable arguments are serialized via String() rather than crashing the worker. The --nocapture flag is respected. #5037

  • js_sys::Promise<T> now implements IntoFuture, enabling direct .await on any JS promise without a wrapper type. The wasm-bindgen-futures implementation has been moved into js-sys behind an optional futures feature, which is activated automatically when wasm-bindgen-futures is a dependency. All existing wasm_bindgen_futures::* import paths continue to work unchanged via re-exports. js_sys::futures is also available directly for users who want promise.await without depending on wasm-bindgen-futures. #5049

  • Added --target emscripten support, generating a library_bindgen.js file for consumption by Emscripten at link time. Includes support for futures, JS closures, and TypeScript output. A new Emscripten-specific test runner is also included, along with CI integration. #4443

  • Added VideoFrame, VideoColorSpace, and related WebCodecs dictionaries/enums to web-sys. #5008

  • Added wasm_bindgen::handler module with set_on_abort and set_on_reinit hooks for panic=unwind builds. set_on_abort registers a callback invoked after the instance is terminated (hard abort, OOM, stack overflow). set_on_reinit registers a callback invoked after reinit() resets the WebAssembly instance via --experimental-reset-state-function. Handlers are stored as Wasm indirect-function-table indices so dispatch is safe even when linear memory is corrupt.

Changed

  • Replaced per-closure generic destructors with a single __wbindgen_destroy_closure export. #5019

  • Refactored the headless browser test runner logging pipeline for dramatically improved performance (>400x faster on Chrome, >10x on Firefox, ~5x on Safari). Switched to incremental DOM scraping with textContent.slice(offset), append-only output semantics, unified log capture across all log levels on failure, and browser-specific invisible-div optimizations (display:none for Chrome/Firefox, visibility:hidden for Safari). #4960

  • TTY-gated status/clear output in the test runner shell to avoid \r control-character artifacts in non-interactive (CI) environments. #4960

  • Added bench_console_log_10mb benchmark alongside the existing 1MB benchmark for the headless test runner. The main branch cannot complete this benchmark at any volume. #4960

  • Updated to Walrus 0.26 #5057

Fixed

  • Fixed argument order when calling multi-parameter functions in the wasm-bindgen interpreter by reversing the args collected from the stack. #5047

  • Added support for per-operation [WbgGeneric] in WebIDL, restoring typed generic return types (e.g. Promise<ImageBitmap>) for createImageBitmap on Window and WorkerGlobalScope that were lost after the VideoFrame stabilization. #5026

  • Fixed missing #[cfg(feature = "...")] gates on deprecated dictionary builder methods and getters for union-typed fields (e.g. {Open,Save,Directory}FilePickerOptions::start_in()), and fixed per-setter doc requirements to list each setter's own required features. #5039

  • Fixed JsOption::new() to use undefined instead of null, to be compatible with Option::None and JS default parameters. #5023

  • Fixed unsound unsafe transmutes in JsOption<T>::wrap, as_option, and into_option by replacing transmute_copy with unchecked_into(). Also tightened the JsGeneric trait bound and JsOption<T> impl block to require T: JsGeneric (which implies JsCast), preventing use with arbitrary non-JS types. #5030

  • Fixed headless test runner emitting \r carriage-return sequences in non-TTY environments, which polluted captured logs in CI and complicated output-matching tests. #4960

  • Fixed headless test runner printing incomplete and out-of-order log output on test failures by merging all five log levels into a single unified output div. #4960

  • Fixed large test outputs (10MB+) causing oversized WebDriver responses that were either extremely slow or crashed completely, by switching to incremental streaming output collection. #4960

  • Fixed a duplciate wasm export in node ESM atomics, when compiled in debug mode #5028

  • Fixed a type inference regression (E0283: type annotations needed) introduced in v0.2.109 where the stable FromIterator and Extend impls on js_sys::Array were changed from A: AsRef<JsValue> to A: AsRef<T>. Because #[wasm_bindgen] generates multiple AsRef impls per type, the compiler could not uniquely resolve T, breaking code like Array::from_iter([my_wasm_value]) without explicit annotations. The stable impls are restored to A: AsRef<JsValue> (returning Array<JsValue>); the generic A: AsRef<T> forms remain available under js_sys_unstable_apis. #5052

  • Fixed skip_typescript not being respected when using reexport, causing TypeScript definitions to be incorrectly emitted for re-exported items marked with #[wasm_bindgen(skip_typescript)]. #5051

Source: README.md, updated 2026-03-27