From v6.2 to v6.3

HTTP parser

The http-parser library has been replaced with llhttp. See Issue #2988.

If this update causes problems with your code, please ensure you avoid any direct use of library definitions. Instead, use the Sming-provided defined in Sming/Components/Network/src/Network/Http/HttpCommon.h.

Main differences:

  • llhttp uses about 14K more flash than http-parser

  • httpGetErrorDescription() is deprecated as llhttp does not provide error descriptions, so returns the same text as toString(HttpError)().

  • There are minor differences in how the parser is used

If any of this is a problem, you can revert to the legacy http-parser by (re-)building with USE_LEGACY_HTTP_PARSER=1. Once the codebase starts making use of the newer features of llhttp this may be removed.

Bear SSL comms and TCP buffering

The default value of TCP_SND_BUF has been increased from (2*TCP_MSS) to (3*TCP_MSS) for Esp8266 and Host architectures. This does not appear to directly increase memory usage as buffers are pre-allocated internally by LWIP.

See :issue:3022.