Releases: ESP32Async/ESPAsyncWebServer
v3.10.3
What's Changed
- Fix race conditions in the SSE and WS code by @mathieucarbou in #414
- Code cleanup with regard to PR 414, operator overloads and default constructor for WebRequestMethodComposite by @mathieucarbou in #415
Full Changelog: v3.10.2...v3.10.3
v3.10.2
What's Changed
- Fix bug introduced in #400 in method matching for AsyncCallbackJsonWebHandler by @mathieucarbou in #405
- Added HTTPMethods example by @mathieucarbou in #406
- Update HTTPMethods example to add an example for Json handler taken from issue 404 by @mathieucarbou in #412
- Review HTTP method enum definition to avoid collisions with plaforms ones by @willmmiles and @mathieucarbou in #413
Full Changelog: v3.10.1...v3.10.2
v3.10.1
⚠️ DO NOT USE
We have just discovered an issue in this release in the JSON handler. Please do not use this release and wait for the next one, or point your project to the main branch with lib_deps = https://github.com/ESP32Async/ESPAsyncWebServer
What's Changed
- Reduce warning level to warn for some lines by @mathieucarbou in #396
- Review logging across WebSocket implementation by @mathieucarbou in #397
- Put HTTP_METHOD symbols in namespace by @willmmiles in #400
Full Changelog: v3.10.0...v3.10.1
v3.10.0
🔗 New Website!
- The project has a new website for its documentation at https://esp32async.github.io/ESPAsyncWebServer
⚠️ Important Notice
-
The WebSocket code has been refactored and several issues fixed. The performance of WebSocket is now insanely fast, with the ability of sending from server to several clients messages at a rate of 20-60 messages per second without even overflowing the message queue, even on Windows!
-
When receiving data in the onData handler, this is not required anymore to add the final
\0(null terminator) for WS_TEXT frames after the buffer like it was documented. This wrong documented design asking user to write after the buffer is fixed. -
The basics for WebDAV support was added by @MitchBradley (see below)
-
ESPHome team put some efforts lately to improve ESP8266 support. All ESP8266 users can thank them for that!
💡 New Features
-
Add HTTP request methods defined by WebDAV RFC 4918 by @MitchBradley in #376
-
Support chunked encoding in requests by @MitchBradley in #377
🐛 Fixes
- Fix broken WebSocket defragmentation by @mathieucarbou in #383
- Fix #384: Remove the buffer overflow intended by design allowing users to add a null terminator after the buffer end by @mathieucarbou in #385
- Fix poor websocket throughput on Windows by @broddo in #387
- Refactor the code handling WS data event to remove code duplication and fix the usages of pinfo->opcode in examples by @mathieucarbou in #388
⚙️ Under the hood
New Contributors
- @MitchBradley made their first contribution in #376
- @broddo made their first contribution in #387
Full Changelog: v3.9.6...v3.10.0
v3.9.6
What's Changed
Full Changelog: v3.9.5...v3.9.6
v3.9.5
What's Changed
- Fix: Process ETag header value to be RFC 9110 compliant. by @StefanOberhumer in #367
- Fix ESP8266 crash in logging macros due to FUNCTION in flash by @bdraco in #371
- Store HTTP response strings in PROGMEM on ESP8266 by @bdraco in #372
- Code cleanup and null checks by @mathieucarbou in #373
New Contributors
- @StefanOberhumer made their first contribution in #367
Full Changelog: v3.9.4...v3.9.5
v3.9.4
What's Changed
- URGENT - Fix bug introduced in #349 by @mathieucarbou in #363
- ESP32Async/AsyncTCP @ 3.4.10 by @mathieucarbou in #362
Full Changelog: v3.9.3...v3.9.4
v3.9.3
What's Changed
- Fix compiler warning on Arduino Core 2 by @mathieucarbou in #357
- fix: strlen is not constexpr by @proxict in #354
- Deal with safari fragmented pong data by @DeqingSun in #353
New Contributors
- @proxict made their first contribution in #354
- @DeqingSun made their first contribution in #353
Full Changelog: v3.9.2...v3.9.3
v3.9.2
What's Changed
- Several fixes around Chunk processing (Json) of a large Json document and available length passed to fill send buffer by @mathieucarbou in #349
Full Changelog: v3.9.1...v3.9.2
v3.9.1
⚠️ This release works on ESP8266
What's Changed
- Introduce cpplint check by @mathieucarbou in #334
- Correctly support ESP8266 for examples and default filters by @mathieucarbou in #344
- Support ESP8266 TCP stack config by @willmmiles in #345
Full Changelog: v3.9.0...v3.9.1