Releases: uNetworking/uWebSockets
v0.12.0 (archived)
This release is archived as a performance hack for the Node.js addon. It works around dreadful Node.js performance of node::MakeCallback
which improved performance 24%.
Just like how v0.9.0 had to work around node::Buffer
performance problems, node::MakeCallback
is just as horrific in terms of performance and should be avoided like the plague.
v0.11.0 (archived)
This release is archived as a stable iteration on 0.10.0 with further features:
USE_MICRO_UV
compilation flag to turn on µUV - the initial work that would later evolve into what is nowUSE_EPOLL
in v0.14.0.- Support for compiling the Node.js addon as an intrinsic Node.js built-in.
- Automatic heartbeats support, including custom TEXT (using one timer per server).
- Node.js server.clients.forEach & server.clients.length
v0.10.0 (archived)
This release is archived as a complete rewrite of the library. It was later made clear this release had many stability issues that got fixed up in v0.11.0.
- Added WebSocket client support.
- 20% throughput gains.
- Greatly improved Node.js addon memory usage (65% of what 0.9.0 used).
- Added the uws.native low-level interfaces later used in Primus transformer.
- Permessage-deflate now requires 1 byte per socket with shared z_stream.
- First release with decent code structure.
- Added some automatic tests.
- WebSocket transfer support to dynamically load balance multithreaded applications.
- Concept of Groups and Hubs.
- Reuse port support on Linux.
- Path routing (GET /path).
- Subprotocol support.
- IPv6 / IPv4 both supported.
- Many SSL fixes (prior versions had essentially completely broken SSL support).
v0.9.0 (archived)
This release is archived mainly as a performance workaround for the terrible node::Buffer
.
- By using Uint8Array instead of Node.js buffers, throughput of the addon was improved by 100%.
v0.8.0 (archived)
This release is archived mainly as the first Windows/Node.js version with SSL & permessage-deflate support.
- Sends from different threads are now allowed, while race conditions are still manually handled.
- Introduces EventSystem to explicitly allow multiple servers to run on the same event-loop.
v0.7.0 (archived)
This release is archived as an overhaul to the native HTTP server.
- Basic SSL support (cert / key).
- Timeout incomplete HTTP requests after 15 seconds.
- Limit HTTP request body length to 10kb.
- SSL read fixes (do not drop connections on SSL_read -1).
v0.6.0 (archived)
This release is archived as a major code restructuring, partial rewrite and clean-up.
- using namespace std; removed.
- No more opaque pointers.
- Split over multiple source files.
- More obvious separation of modules per purpose.
- Parser is now a separate, almost purely functional module.
- WebSocket and HTTPSocket for handling different protocols.
v0.5.0 (archived)
This release is archived as the first version to pass all of Autobahn including extra permessage-deflate tests.
- Adds permessage-deflate support.
- maxPayload option to hinder too long messages to be received.
- Rewritten benchmarks capable of stressing the server fully.
- Further parser optimizations, one parser path got neglected for way too long.
- Connections now default to noDelay mode (TCP_NODELAY).
v0.4.0 (archived)
This release is archived as various Node.js integration fixes.
- Node.js addon is now always using the Node.js HTTP(S) server.
- Added the addon build system still in use today (node-gyp with pre-compiled binaries as fall back).
v0.3.0 (archived)
This release is archived as the first version that passed all Autobahn tests over SSL.