Skip to content

Releases: uNetworking/uWebSockets

v20.12.0

17 Mar 01:03
eea4b7e
Compare
Choose a tag to compare

Safari 15.4 finally fixed?

It is believed that Apple finally fixed their permessage-deflate ("WebSocket compression") in Safari 15.4. This release will disable permessage-deflate for broken versions of Safari (15.0 - 15.3), but not for 15.4 and forwards. If you experience issues with Safari 15.4 and compression, report it and we can mark 15.4 as broken as well. Apple is not a transparent company and we cannot know what black magic they are up to and their releases do not explain anything.

Think different, think Apple. And now punch yourself in the face. Mmm, nosebleed.

v20.11.0

27 Jan 23:41
Compare
Choose a tag to compare
  • All versions of Safari 15 for iOS and macOS are entirely broken when it comes to WebSocket. This release adds exceptions to the standard, applied only to Safari user agents in order to play along with Apple's thorough and unmatched incompetence.

v20.10.0

25 Jan 12:08
43669bb
Compare
Choose a tag to compare
  • Last release broke unmasking of large WebSocket messages

v20.9.0

04 Jan 03:37
Compare
Choose a tag to compare
  • Adds HttpResponse::pause, HttpResponse::resume for throttling of data I/O.
  • Adds new fast path for zero masked WebSocket messages and optimizes large message unmasking.
  • Fixes HttpRouter ordering issues in certain undiscovered edge cases & adds tests.
  • Adds endWithoutBody for responding without a body or content-length.
  • Clear subscriptions before calling close handler, not after.

v20.8.0

31 Oct 03:40
Compare
Choose a tag to compare
  • CompressOptions got scrambled in v20.7.0 which broke compression, this is now fixed.

v20.7.0

30 Oct 22:11
Compare
Choose a tag to compare

More decompressors

  • Fixes DEDICATED_DECOMPRESSOR introduced in v20.3.0
  • Adds a range of DEDICATED_DECOMPRESSOR_32KB .. DEDICATED_DECOMPRESSOR_512B

v20.6.0

18 Oct 00:32
5d89839
Compare
Choose a tag to compare

Minor build fix

Fixes a build issue where TopicTree::iteratingSubscriber was private within WebSocket::iterateTopics function.

v20.5.0

30 Sep 20:17
Compare
Choose a tag to compare

Reordering & flags fix

  • In v19.8.0 while optimizing large message sending, a reordering bug was introduced that may reorder outgoing messages.
  • uSockets 0.8.1 fixes a bug passing invalid flags down to send syscall.

v20.4.0

28 Sep 23:46
Compare
Choose a tag to compare

Optimizes large publishes

  • Large message publishing is now just as fast as regular WebSocket::send and bypasses any effort to coalesce with small messages.
  • Fixes a potential memory leak in TopicTree::publish.

v20.3.0

28 Sep 04:18
Compare
Choose a tag to compare

Dedicated decompressors

Adds uWS::CompressOptions::DEDICATED_DECOMPRESSOR. This (decompressor) flag can be OR:ed with one (compressor) flag to easily create a complete compression preference such as:

.compression = uWS::CompressOptions(uWS::DEDICATED_COMPRESSOR_4KB | uWS::DEDICATED_DECOMPRESSOR),

See #1347. This change is backwards compatible. More specific decompressors will be added with time.