Releases: uNetworking/uWebSockets.js
Releases · uNetworking/uWebSockets.js
v20.60.0
v20.59.0
v20.58.0
Easier URL route debugging
Whenever a URL route isn't handled properly, we used to display a fatal error and terminate the process like so:
Error: Returning from a request handler without responding or attaching an abort handler is forbidden!
This was not an issue in C++ since you could easily catch what route is broken by using a debugger. This is not possible in JavaScript since you aren't debugging the C++ code, only the JS code and the error isn't coming from JS.
A simple ergonomical upgrade is to display method & URL as part of the error:
Error: Returning from a request handler without responding or attaching an abort handler is forbidden!
Method: "GET"
URL: "/this_url_is_unhandled_test"
terminate called without an active exception
v20.57.0
- Fixes a bug in uWS.getParts where returned parts were previously zero-copy references into the given buffer. These parts are now copies, eliminating potential complex memory issues which shouldn't have been be exposed to script. uWS.getParts is not a streaming parser unlike most of uWS, so I would still caution against using it (even though it is faster than all other such parsers for Node.js given small files).
v20.56.0
Streamlined cross-platform build & test
- All platforms (even Windows 😮 ) & all architectures now build using Clang, have the same build flow (build.yml) and smoke testing.
- Windows no longer requires any MSVCRT.dll, making it more portable.
- Binaries won't be updated without a passed smoke test (they run before upload now).
The entire build.yml is 42 lines now
v20.55.0
Massively improved Linux ARM64 builds
- Moving from QEMU emulation to GitHub's native ARM64 runners, we cut building times from 55 minutes to 5 minutes
- The same building flow and smoke testing is now shared for macOS, Linux x64 and Linux ARM64
- Build "scripts" are now less than 300 lines in total for the entire project across all platforms, versions and architectures

v20.54.0
Raise macOS target version to 15
- Fixes newly added Node.js 25 support on macOS.
- Removes old Linux 32-bit ARM stale binaries.
v20.53.0
Node.js 25
- Adds Node.js 25 support, removes Node.js 23
- Raises Linux target platform to Ubuntu 24.04
- 32-bit Linux ARM binaries haven't been built for this release, or the prior one and will probably be removed as a target in favor of 64-bit Linux ARM only.
v20.52.0
Node.js 24
- Bumps uWS to v20.74.0 + latest commits
- Add Node.js 24, removes Node.js 18
- Raises Linux target platform to Ubuntu 22.04
v20.51.0
Yesterday's release disabled cached HTTP support but mistakenly also disabled all HTTP support.
This release brings back HTTP support.
This release also moves to GitHub Actions macOS 13

