mirror of
https://github.com/esphome/esphome.git
synced 2026-06-24 15:46:54 +00:00
8dd594afa2b35c93d342ae9859ff1d8cab6237bf
api_connection.h now forward-declares APIServer instead of including api_server.h, and api_server.h includes api_connection.h before clients_ is declared. With APIConnection complete at that point, libc++ no longer trips the incomplete-type assert in default_delete<APIConnection> when parsing std::array<unique_ptr<APIConnection>, MAX_API_CONNECTIONS>, so the custom APIConnectionDeleter introduced in #16050 is no longer needed. The two APIConnection inline methods that touched APIServer (encode_to_buffer, get_batch_delay_ms_) are now defined at the bottom of api_server.h, where APIServer is complete; api_connection.cpp gains a direct include of api_server.h so those definitions are visible there. Verified locally on macOS host platform with python3.14 -m esphome compile (the path that reproduces the libc++ error). Noise and plaintext integration tests pass.
Description
ESPHome is a system to control your ESP8266/ESP32 by simple yet powerful configuration files and control them remotely through Home Automation systems.
Readme
Multiple Licenses
393 MiB
Languages
C++
60.7%
Python
38.9%
C
0.3%
