Emscripten 6.0.12 is out! 馃殌 github.com/emscripten-c...
Emscripten
Emscripten reposted
With the new experimental support for the Emscripten target in Rust Workers, many previously unsupported Rust libraries and applications can now be built and deployed directly to Cloudflare鈥檚 global Workers platform, including upcoming support for Tokio async. https://cfl.re/4hlHSNC #BirthdayWeek
Emscripten 6.0.10 is out! 馃殌 github.com/emscripten-c... Includes: - SDL3 port out of experimental - wasm-bindgen integration improvements
Emscripten 6.0.7 is out! 馃殌 github.com/emscripten-c...
Emscripten 6.0.6 is out! 馃殌 github.com/emscripten-c... Includes some build system simplifications (C++ linking now works like gcc/clang), library updates, and bugfixes.
Emscripten reposted
Spent a while getting OpenMW, the open-source Morrowind engine, to compile to WebAssembly. The full game now runs in a browser tab at 60fps, entirely client-side. Genuinely wouldn't have been possible without @emscripten.org Thank you for the toolchain. morrowind.virtastic.app @kripken.com
Emscripten 6.0.3 is out! 馃殌 github.com/emscripten-c... Includes SIMD and GROWABLE_ARRAYBUFFERS improvements.
Emscripten 6.0.1 is out! 馃殌 github.com/emscripten-c... Includes support for Rust's wasm-bindgen, and the new Cross-Origin Storage browser API. Also we are now using Github releases (as in the link here)
The main Emscripten website has a brand new theme! emscripten.org Check it out and let us know if anything looks wrong or is broken.
Emscripten 6.0.0 is out! 馃殌 github.com/emscripten-c... Includes a lot of modernization to things like browser support, dynamic linking, and windows launchers.
Emscripten 5.0.7 is out! 馃殌 github.com/emscripten-c... Includes significant improvements to multithreading performance and support. Note that if you were using the low-level emscripten_futex_wait() API, as a result of these changes you now need to handle EINTR.
Emscripten 5.0.5 is out 馃殌 github.com/emscripten-c... Includes a fix to multithreading logic that caused hangs in rare cases.
Emscripten 5.0.3 is out 馃殌 github.com/emscripten-c... Includes port updates + cleanups
Emscripten reposted
First @jupyter.org JupyterLite #Python notebook for serverless, in-browser #SageMath computations in algebraic combinatorics, using passagemath-combinat compiled to #WebAssembly with @emscripten.org passagemath.org/passagemath-... #OpenSource #Mathematics
Emscripten 5.0.2 is out! 馃殌 github.com/emscripten-c... Includes some nice cleanups for no-longer-needed Node.js hacks.
Emscripten 5.0.0 is out! 馃殌 github.com/emscripten-c... First release of the year, given a major version bump. Large LLVM update, new -sEXECUTABLE option, and Asyncify/JSPI improvements are among the changes since 4.0.23
Emscripten 4.0.23 is out! 馃殌 github.com/emscripten-c... Includes improvements to Audio Worklet support.
Emscripten 4.0.22 is out! 馃殌 github.com/emscripten-c... Includes source map improvements and link-time speedups
Some details about the Emscripten porting here: groups.google.com/g/emscripten...
Unreal Tournament can now be played IN A BROWSER dos.zone/mp/?lobby=ut Along with other late 90s PC FPS classics but yeah. UT99 in a browser window... just fantastic. Thanks to the r/LGR subreddit for letting me know about it!
Emscripten 4.0.19 is out! 馃帀 github.com/emscripten-c... A major improvement for dynamic linking landed: the main module is built statically, without relocation overhead, making it smaller and faster. Only dynamic libraries now have relocation overhead. This makes dynamic linking much more useful 馃殌
Emscripten 4.0.18 is out! 馃殌 github.com/emscripten-c... - Better support for cross-origin hosting - WebGPU support is now via an external port, which is updated more frequently
Emscripten 4.0.16 is out! github.com/emscripten-c... Includes a bunch of work on modernization, dropping support for some older browsers, and moving embind towards (eventually) depending on C++17
Emscripten reposted
Something I wanted in SDL3 for a long time just landed; you can make the SDL window just take up the whole browser window in Emscripten now. So instead of this: icculus.org/~icculus/ems... You can do this: icculus.org/~icculus/ems... Feels more friendly to browser games.
Useful tips for using Emscripten's MEMORY64 flag, which enables wasm64 (64-bit pointers in wasm), based on the experience of SQLite: github.com/emscripten-c... In wasm64 all pointers are BigInts and not Numbers, and JS treats those differently in various ways (reasonably, but it can be surprising)
Emscripten 4.0.15 is out! 馃殌 github.com/emscripten-c... A long-requested change appears here: Source maps no longer force-enable other debug info (like the names section). This allows generation of source maps for a fully-optimized build (e.g. using it for stack traces from production)
Emscripten 4.0.14 is out! 馃殌 github.com/emscripten-c... As part of our efforts to simplify and shrink code size, there are some changes here that you might notice if you use internal APIs, see the changelog.
QEMU 10.1 adds experimental Wasm support using Emscripten wiki.qemu.org/ChangeLog/10.1
Emscripten 4.0.13 is out! 馃殌 github.com/emscripten-c... Some internal JS APIs (preload plugins) are being rewritten to use modern async style (if you maintain out-of-tree uses of those internal APIs, you may need changes). Also the file packager now supports ES6 imports.
Emscripten 4.0.12 is out! 馃殌 github.com/emscripten-c... Includes a few minor API changes (see changelog), like using 64-bit indexes in statfs (needed for large filesystems)
Emscripten 4.0.11 is out! 馃殌 github.com/emscripten-c... Among other changes, this includes support for LLVM's source-based code coverage: clang.llvm.org/docs/SourceB...
Emscripten 4.0.10 is out! 馃殌 github.com/emscripten-c... Includes LLVM library updates, better support for pkg-config, and lots of cleanups.
Nice and detailed video about porting games to the Web using Emscripten and WebAssembly. Good summary of the things that port easily, and the things that don't (e.g. DirectX), and possible solutions. www.youtube.com/watch?v=xMve...
Emscripten 4.0.9 is out! 馃殌 github.com/emscripten-c... Includes 64-bit integer handling fixes in several JS interop APIs (see changelog for more)
Emscripten 4.0.8 is out! 馃殌 github.com/emscripten-c... The wasm workers and audio worklets features no longer generate files on the side (.ww.js, .aw.js, respectively). Bundling the worker content in the main .js file improves code size and startup times.
Emscripten 4.0.7 is out! 馃殌 github.com/emscripten-c... Note that as the changelog mentions, there are some API changes to improve consistency and default code size. Most users should not be affected, but see the changelog for what might require a small modification.
Emscripten reposted
JSPI, the wasm JavaScript Promise Integration proposal, is now at phase 4: github.com/WebAssembly/... That means it is considered fully standardized. JSPI lets wasm call JS APIs that return a Promise. The wasm awaits it. It is still behind a flag in most browsers, but hopefully not for long!
Emscripten 4.0.6 is out! 馃殌 github.com/emscripten-c... Includes improved source maps support for easier debugging.
Emscripten 4.0.5 is out! 馃殌 github.com/emscripten-c... Mostly cleanups and fixes. Work continues on WasmFS. There is experimental support for wasm source imports, github.com/tc39/proposa...
Emscripten 4.0.4 is out! 馃殌 github.com/emscripten-c... This release includes ports of SDL3 and Lua.
Emscripten reposted
Emscripten reposted
I got Linux running in a PDF file using a RISC-V emulator. PDFs support Javascript, so Emscripten is used to compile the TinyEMU emulator to asm.js, which runs in the PDF. It boots in about 30 seconds and emulates a riscv32 buildroot system. linux.doompdf.dev/linux.pdf github.com/ading2210/li...
Emscripten reposted
馃摙 Scaling multithreaded #WebAssembly applications with mimalloc and WasmFS, by @kripken.com: web.dev/articles/sca.... If you have a multithreaded #Wasm application that does lots of allocations or uses files, then you may benefit greatly by using WasmFS and/or mimalloc.
Emscripten 4.0.2 is out! 馃コ github.com/emscripten-c... Wasm exception handling with exnref now uses LLVM rather than a translation from the old non-exnref code. This should only be noticeable as smaller and more efficient code, but it is a large change, please file issues if you see any problems.
Emscripten reposted
Being used to the npm package hell it's kinda weird when an important software I use everyday (the Emscripten SDK) has a major version bump after 3 years from 3.x to 4.0 and nothing breaks :D Congratulations @kripken.com (and the whole Emscripten team)!