All Versions
Latest Version
Avg Release Cycle
14 days
Latest Release
1327 days ago

Changelog History
Page 1

  • v18.17.0 Changes

    December 03, 2020

    ๐Ÿ“œ Multipart parser and other fixes

    • Introduces support for parsing multipart POSTs in an efficient and simple way. Runs about 155x faster than Node.js alternatives - especially on parts larger than a few hundred kilobytes.
    • The library now compiles without any warnings using -Wall -Wextra -Wpedantic -Wsign-conversion -Wconversion on both GCC and Clang. Hundreds of (non-default) warnings have been fixed in this release and from now we aim to keep things pedantically clean.
    • ๐Ÿ›  Fixes a permessage-deflate regression introduced in v0.17.4.
    • ๐Ÿ›  Fixes parsing bugs when compiling using WITH_PROXY=1 (introduced in v18.1.0).
  • v18.15.0 Changes

    September 30, 2020

    ๐Ÿ— Build fixes

    ๐Ÿ— Apparently the added QueryParser of v18.14.0 had multiple definition flaws that have now been fixed and will build properly.

  • v18.14.0 Changes

    September 28, 2020

    getQuery with key

    • HttpRequest::getQuery now takes (optional) key and returns the URI-decoded value if present in the querystring.
    • โœ… Fuzz test for QueryParser added, with dictionary.
    • Make sure to use this feature when possible, as decodeURIComponent is roughly 400x slower.
  • v18.13.0 Changes

    September 06, 2020

    ๐Ÿ›  Fixes

    • ๐Ÿ›  A particular edge case causing stack buffer overflow of "triggered topics" was found by fuzzing, and has been fixed.
    • ๐Ÿ›  The newly added ServerName example caused a drop in reported code quality due to a pedantic alert, which has been fixed.
  • v18.12.0 Changes

    September 05, 2020

    Server Name Indication (and more fuzzing)

    โž• Adds App::missingServerName, App::addServerName and App::removeServerName for managing multiple certificates/configurations for SSL.

    Fuzzing coverage is now about 95% overall for both uSockets and uWebSockets. This is a big improvement, esp. for uSockets coverage.

  • v18.11.0 Changes

    August 12, 2020

    Improving fuzzing coverage and fixing bugs

    ๐Ÿ›  OSS-Fuzz is now reporting 99.5% function coverage and ~94% region coverage. Furthermore there is now fuzzing of large parts of uSockets thanks to libEpollFuzzer - about 80% of non-SSL use. Overall this is a major improvement in fuzzing coverage and has led to new bugs being discovered and fixed.

    • ๐Ÿ‘€ TopicTree has seen two bug fixes; one stack overflow when trimming large trees, and one CPU hang when publishing to a large tree using wildcards (which is ill-use according to MQTT).
    • Minor misuse of HTTP header BloomFilter has been corrected.
  • v18.10.0 Changes

    July 29, 2020

    Larger HTTP streams

    HttpResponse::onWritable, HttpResponse::getWriteOffset and HttpResponse::tryEnd will now take size_t instead of int wherever size is communicated. This breaks API slightly but allows streaming files larger than 2GB.

  • v18.9.0 Changes

    July 02, 2020

    ๐Ÿ›  Fixes

    • โšก๏ธ Updates fuzzing targets for uSockets 0.5.0
    • Minor permessage-deflate tweaks, server_max_window_bits
    • โœ‚ Removes unused debug remnants
  • v18.8.0 Changes

    June 27, 2020

    Meaningful close reasons

    The library will now report more meaningful reasons when internally closing a WebSocket:

    • Close code 0 is never reported; instead the standard 1005 code will be used to denote missing close code
    • Close code 1006 is now accompanied with a meaningful text reason such as "Message too big" or "WebSocket timed out".
  • v18.7.0 Changes

    June 26, 2020

    ๐Ÿ›  Fixes

    • ๐Ÿ’ป Shutting down a WebSocket in the open handler would send WebSocket FIN, but not TCP FIN, causing minor incompatibilities with the Chrome browser.
    • AsyncSocket::getBufferedAmount is now unsigned