Skip to content

2.4.0

Compare
Choose a tag to compare
@igrr igrr released this 02 Jan 00:17
· 1907 commits to master since this release

Changes since 2.4.0-rc2

Core

  • Prevent endless loop in run_scheduled_functions (#4048)
  • Pure virtual Stream::flush() moved to empty virtual Print::flush() to follow arduino API (#4029)
  • Allow disabling global Serial and Serial1 object (#2807)
  • Export pgmspace symbols with C linkage (#3955)
  • cbuf: fix boundary condition on resize (#4016)
  • time: add micros64, support for gettimeofday and settimeofday.
  • Remove min, max, isnan, isinf macros, use tempmlates from std:: instead.
  • Updater: added constant time string comparison to avoid possible time-based attacks. (#3836)
  • Board definitions updated

ESP8266WiFi

  • ESP8266WiFiMulti: Add count function (#3073)
  • Added String hostname support to WiFiClient and WiFiClientSecure (#3349)
  • WiFiClientSecure: don't use the broken max_fragment_length extension (#4033)
  • WiFiClientSecure: configurable connect timeout, better default value (#4027)
  • WiFiClientSecure: don't trash unread decrypted data when writing (#4024)
  • Fix WiFiClient::availableForWrite() with no connection (#3985)
  • WiFiUDP: fix crash when calling destinationIP with no packet available (#4036)
  • Fix flush() to wait for empty send buffer (#1002) (#3967)
  • Add compatibility check for config() method with Arduino arg order (#3860)

Third party libraries

  • Use lwip v2 by default
  • SDK: update to v2.1.0-14-g33f234f
  • SDK: rename hostname and default_hostname symbols (#1281)
  • Add extern C blocks to SDK header files (#1352) (#4044)
  • SoftwareSerial: update to 3.3.0 (#3727)

Other libraries

  • ESP8266WebServer: fix URL parameter decoding in web server (#3313)
  • ESP8266WebServer: allocate HTTPUpload struct on demand (#2557)
  • ESP8266WebServer: send empty chunk when done sending chunked response
  • ESP8266WebServer: add CONTENT_LENGTH_UNKNOWN keyword
  • ESP8266HTTPClient: increase HTTP SEND/POST timeout to 5s (#3971)
  • ESP8266HTTPClient: handle empty URI correctly
  • ESP8266HTTPClient: allow changing connection timeout using setTimeout (#4038)
  • EEPROM: Added length and operator[] methods, added some constness, missed dirty clear (#3855)
  • EEPROM: Clear dirty flag in begin and reallocate only if necessary, add getConstDataPtr method (#2217) (#3849)
  • Set architecture=esp8266 for bundled SD and Ethernet libraries (#4035)

Examples

  • Wait for NTP to be set in example (#4000)
  • Put WiFi into station mode in examples (#3731)

Documentation for 2.4.0

Documentation for this release is hosted on readthedocs.org:
http://arduino-esp8266.readthedocs.io/en/2.4.0/