Cannot compile sketch that uses ESPAsyncWebServer. It seems to be an issue with breaking changes to core library.
C:\Users\...\Documents\Arduino\libraries\ESPAsyncWebServer\src\WebAuthentication.cpp: In function 'bool getMD5(uint8_t*, uint16_t, char*)':
C:\Users\...\Documents\Arduino\libraries\ESPAsyncWebServer\src\WebAuthentication.cpp:74:3: error: 'mbedtls_md5_starts_ret' was not declared in this scope; did you mean 'mbedtls_md5_starts'?
74 | mbedtls_md5_starts_ret(&_ctx);
| ^~~~~~~~~~~~~~~~~~~~~~
| mbedtls_md5_starts
C:\Users\...\Documents\Arduino\libraries\ESPAsyncWebServer\src\WebAuthentication.cpp:75:3: error: 'mbedtls_md5_update_ret' was not declared in this scope; did you mean 'mbedtls_md5_update'?
75 | mbedtls_md5_update_ret(&_ctx, data, len);
| ^~~~~~~~~~~~~~~~~~~~~~
| mbedtls_md5_update
C:\Users\...\Documents\Arduino\libraries\ESPAsyncWebServer\src\WebAuthentication.cpp:76:3: error: 'mbedtls_md5_finish_ret' was not declared in this scope; did you mean 'mbedtls_md5_finish'?
76 | mbedtls_md5_finish_ret(&_ctx, _buf);
| ^~~~~~~~~~~~~~~~~~~~~~
| mbedtls_md5_finish
C:\Users\...\Documents\Arduino\libraries\ESPAsyncWebServer\src\AsyncEventSource.cpp: In member function 'void AsyncEventSourceClient::_queueMessage(AsyncEventSourceMessage*)':
C:\Users\...\Documents\Arduino\libraries\ESPAsyncWebServer\src\AsyncEventSource.cpp:188:7: error: 'ets_printf' was not declared in this scope; did you mean 'vswprintf'?
188 | ets_printf("ERROR: Too many messages queued\n");
| ^~~~~~~~~~
| vswprintf
C:\Users\...\Documents\Arduino\libraries\ESPAsyncWebServer\src\AsyncWebSocket.cpp: In member function 'void AsyncWebSocketClient::_queueMessage(AsyncWebSocketMessage*)':
C:\Users\...\Documents\Arduino\libraries\ESPAsyncWebServer\src\AsyncWebSocket.cpp:551:7: error: 'ets_printf' was not declared in this scope; did you mean 'vswprintf'?
551 | ets_printf("ERROR: Too many messages queued\n");
| ^~~~~~~~~~
| vswprintf
C:\Users\...\Documents\Arduino\libraries\ESPAsyncWebServer\src\AsyncWebSocket.cpp: In member function 'IPAddress AsyncWebSocketClient::remoteIP()':
C:\Users\...\Documents\Arduino\libraries\ESPAsyncWebServer\src\AsyncWebSocket.cpp:832:28: error: call of overloaded 'IPAddress(unsigned int)' is ambiguous
832 | return IPAddress(0U);
| ^
In file included from C:\Users\...\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.0.0\cores\esp32/Arduino.h:196,
from C:\Users\...\Documents\Arduino\libraries\ESPAsyncWebServer\src\AsyncWebSocket.cpp:21:
C:\Users\...\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.0.0\cores\esp32/IPAddress.h:115:3: note: candidate: 'IPAddress::IPAddress(const ip_addr_t*)'
115 | IPAddress(const ip_addr_t *addr);
| ^~~~~~~~~
C:\Users\...\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.0.0\cores\esp32/IPAddress.h:73:3: note: candidate: 'IPAddress::IPAddress(const IPAddress&)'
73 | IPAddress(const IPAddress &address);
| ^~~~~~~~~
C:\Users\...\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.0.0\cores\esp32/IPAddress.h:72:3: note: candidate: 'IPAddress::IPAddress(const char*)'
72 | IPAddress(const char *address);
| ^~~~~~~~~
C:\Users\...\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.0.0\cores\esp32/IPAddress.h:69:3: note: candidate: 'IPAddress::IPAddress(const uint8_t*)'
69 | IPAddress(const uint8_t *address);
| ^~~~~~~~~
C:\Users\...\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.0.0\cores\esp32/IPAddress.h:67:3: note: candidate: 'IPAddress::IPAddress(uint32_t)'
67 | IPAddress(uint32_t address);
| ^~~~~~~~~
C:\Users\...\Documents\Arduino\libraries\ESPAsyncWebServer\src\AsyncWebSocket.cpp: In constructor 'AsyncWebSocketResponse::AsyncWebSocketResponse(const String&, AsyncWebSocket*)':
C:\Users\...\Documents\Arduino\libraries\ESPAsyncWebServer\src\AsyncWebSocket.cpp:1262:3: error: 'mbedtls_sha1_starts_ret' was not declared in this scope; did you mean 'mbedtls_sha1_starts'?
1262 | mbedtls_sha1_starts_ret(&ctx);
| ^~~~~~~~~~~~~~~~~~~~~~~
| mbedtls_sha1_starts
C:\Users\...\Documents\Arduino\libraries\ESPAsyncWebServer\src\AsyncWebSocket.cpp:1263:3: error: 'mbedtls_sha1_update_ret' was not declared in this scope; did you mean 'mbedtls_sha1_update'?
1263 | mbedtls_sha1_update_ret(&ctx, (const unsigned char*)key.c_str(), key.length());
| ^~~~~~~~~~~~~~~~~~~~~~~
| mbedtls_sha1_update
C:\Users\...\Documents\Arduino\libraries\ESPAsyncWebServer\src\AsyncWebSocket.cpp:1264:3: error: 'mbedtls_sha1_finish_ret' was not declared in this scope; did you mean 'mbedtls_sha1_finish'?
1264 | mbedtls_sha1_finish_ret(&ctx, hash);
| ^~~~~~~~~~~~~~~~~~~~~~~
| mbedtls_sha1_finish
Error during build: exit status 1
IntelliSense configuration updated. To manually rebuild your IntelliSense configuration run "Ctrl+Alt+I"
[Error] Verifying sketch 'TestServer.ino': Exit with code=1
Compile the sketch using the 3.0.0 version.
Board
Any
Device Description
Any
Hardware Configuration
Any
Version
v3.0.0
IDE Name
Arduino IDE with VSCode
Operating System
Windows 10
Flash frequency
80Mhz
PSRAM enabled
no
Upload speed
921600
Description
Cannot compile sketch that uses ESPAsyncWebServer. It seems to be an issue with breaking changes to core library.
Sketch
Debug Message
Other Steps to Reproduce
Compile the sketch using the 3.0.0 version.
I have checked existing issues, online documentation and the Troubleshooting Guide