Skip to content

Releases: uNetworking/uWebSockets

v20.70.0

26 Oct 21:18
Compare
Choose a tag to compare

More HTTP testing & corrections

This release adds more HTTP tests and makes some minor corrections for passing those tests:

Screenshot 2024-10-26 230016

v20.69.0

25 Oct 21:14
Compare
Choose a tag to compare

HTTP spec. compliance testing

A basic HTTP RFC9112 spec. compliance test has been added and minor changes have been made to pass all tests immediately:

Screenshot 2024-10-25 230748

This basic test catches no issues in Node.js, but it catches 2 issues in Deno (reported). The test can be found here:

https://github.com/uNetworkingAB/h1spec

In contrast, running the test on completely broken servers like mrhttp you get an obvious indication of so:

Screenshot 2024-10-25 231156

v20.68.0

21 Oct 10:47
Compare
Choose a tag to compare

Improved (restored) backwards compatibility

For some users, recent introduction of CachedApp broke seamless backwards compatibility. If you rely on uWS::App being uWS::TemplatedApp<false> and not something else (like uWS::CachedApp<false> 😉), this release fixes your build:

    typedef uWS::TemplatedApp<false> App;
    typedef uWS::TemplatedApp<true> SSLApp;

v20.67.0

24 Sep 06:18
Compare
Choose a tag to compare
  • Adds removeChildApp

v20.66.0

11 Sep 16:18
Compare
Choose a tag to compare

Minor HTTP corrections

  • Emit 431 on too many headers (not just too long headers)
  • Don't emit 505 on fragmented request line (regression since 505 was introduced)

v20.65.0

06 Aug 12:08
Compare
Choose a tag to compare
  • Always put a reason message on 1006 close events
  • Template refactors needed for coming HTTP cache; it should be entirely backwards compatible for your app

v20.64.0

03 Jul 19:06
933b984
Compare
Choose a tag to compare
  • uWebSockets is now 22% faster than simdutf in validating [mostly English] UTF-8.

v20.63.0

19 Jun 14:18
Compare
Choose a tag to compare
  • Make use of ERR_INVALID_CLOSE_PAYLOAD to better explain such closures.
  • Remove C-API as it is no longer maintained here, but rather over at the Bun repo.
  • It's invalid to pass nullptr to memcpy even with 0 size according to UndefinedBehaviorSanitizer, so this is now fixed.

v20.62.0

10 Mar 20:41
Compare
Choose a tag to compare

RFC 9110 fix part trois

  • DQUOTE is not a valid field name char
  • "431 Request Header Fields Too Large" will be emitted more strictly
    • Reminder: you can set the environment variable UWS_HTTP_MAX_HEADERS_SIZE higher if you need to

v20.61.0

09 Mar 20:34
Compare
Choose a tag to compare

RFC 9110 fix part deux

Previous release did not fix all problems with, for instance, underscores in HTTP field names. This release properly fixes such cases and also makes the HTTP server 14% faster in user space.

A new benchmarking project has been added for reliably benchmarking the entire user space portion of the server by overriding epoll syscalls with traffic producing alternatives. This is a similar approach to how we currently fuzz the user space.