6.0.10
weave-os/router6.0.10Sep 21, 2026by emscripten-bot
Upgrading?
AI Summary
This release stabilizes the SDL3 port, deprecates legacy WASM modes, and introduces performance optimizations to Embind by using the wasm stack for trivial types. It also removes the obsolete NODE_CODE_CACHING setting and improves timeout handling.
Key Highlights
- SDL3 port is no longer experimental.
- WASM=0 and WASM=2 are marked as deprecated.
- Embind now uses stack allocation for trivially constructible types.
- emscripten_clear_timeout now releases runtime keepalive.
Breaking Changes
- NODE_CODE_CACHING setting removed.
- Embind registration ABI changed (requires rebuilding object files).
- -sWASM_BINDGEN behavior changed (post-link step, EXPORTED_FUNCTIONS is authoritative).
New Features
- -sWASM_BINDGEN supports emcc usage as a post-link step.
- Embind temporaries for trivial types are placed on the wasm stack.
Full Release Notes
## What's Changed - The SDL3 port is no longer considered experimental, and the compiler diagnostic warning has been removed. (#27646) - `WASM=0` and `WASM=2` (wasm2js) were marked as deprecated. (See #27608) - mimalloc was updated to 3.5.1. (#27662) - `-sWASM_BINDGEN` supports emcc usage as a post-link step, where `EXPORTED_FUNCTIONS` is authoritative. wasm-bindgen processing is only performed when the linker inputs carry the wasm-bindgen Emscripten marker section, so `-sWASM_BINDGEN` can safely be passed to non-wasm-bindgen builds. (#27208) - Embind `value_object` and `value_array` argument temporaries for trivially constructible/destructible types (up to `alignof` 16) are now placed on the wasm stack instead of being heap-allocated per call, and per-field destructor bookkeeping is skipped when the type registers no destructor. This removes the per-call garbage on such calls. The registration ABI gained size and triviality parameters, so object files built against an older `bind.h` need to be rebuilt. (#27610) - `emscripten_clear_timeout` now releases the runtime keepalive held by the pending timeout, and both `emscripten_clear_timeout` and `emscripten_clear_immediate` are no-ops for ids that already fired. (#27720) - The `NODE_CODE_CACHING` setting was removed, as node's support for serializing WebAssembly modules has been missing for over 5 years now. ## Contributors Thanks to the following contributors: @sbc100 (46) @guybedford (9) @aheejin (4) @dschuff (4) @dimokol (2) @kleisauke (2) @brendandahl (1) @jeremy-code (1) @jrcain-usgs (1) @Kammu2000 (1) @kripken (1) @mrnickzh (1) @tlively (1) ## New Contributors * @mrnickzh made their first contribution in https://github.com/emscripten-core/emscripten/pull/26886 * @Kammu2000 made their first contribution in https://github.com/emscripten-core/emscripten/pull/27671 * @jrcain-usgs made their first contribution in https://github.com/emscripten-core/emscripten/pull/27691 * @dimokol made their first contribution in https://github.com/emscripten-core/emscripten/pull/27610 **Full Changelog**: https://github.com/emscripten-core/emscripten/compare/6.0.9...6.0.10
Related Repositories
Get up and running with Kimi, GLM, MiniMax, DeepSeek, gpt-oss, Qwen, Gemma and other models.
A fast reverse proxy to help you expose a local server behind a NAT or firewall to the internet.
RAGFlow is a leading open-source Retrieval-Augmented Generation (RAG) engine that fuses cutting-edge RAG with Agent capabilities to create a superior context layer for LLMs
The world’s fastest framework for building websites.
:cherry_blossom: A command-line fuzzy finder