Wren a web browser where WebAssembly runs everything, JavaScript included

Wren 0.6.22

Wren 0.6.22 comes to Linux, runs WebAssembly threads and a real crypto.subtle, and stays far smoother on pages that change every frame.

This is still a beta, under development.

Highlights

  • A Linux package. wren-0.6.22-linux-x64.tar.gz for x86-64, an early preview: it needs glibc 2.39 or later (Ubuntu 24.04, Debian 13, Fedora 40). It is built and started on a clean machine before it is published. Keyboard, pointer and a real GPU on Linux were not checked for this release.
  • WebAssembly threads and SharedArrayBuffer under cross-origin isolation. Squoosh encodes an image in a worker.
  • A real crypto.subtle: AES, HMAC, PBKDF2, HKDF, ECDSA and ECDH on P-256 and P-384, RSA, Ed25519 and X25519, in pages and workers. amazon.com renders. P-521 is not there yet.
  • Much smoother with a UI Automation program around. A screenshot tool or PowerToys kept a page's accessibility tree updating on every frame. It now updates ten times a second at most: resizing a 10 000-item flex page went from 6.9 to about 28 frames a second, and a page of 10 000 changing nodes from 1.9 to about 8.
  • A value lost by the garbage collector. What an async function returned could be collected before its promise took it: an ArrayBuffer turned up empty, a rejection reason undefined.
  • More of the web works: blob: URLs for every load, link preload, the common SVG DOM, FontFace, real CSSRule objects, a document for blank frames. Excalidraw and tldraw load.

Edit this page on GitHub