J. Nick Koston
d2af639e71
Keep original template name to preserve compiler optimizations
...
Using the original register_component name (just moved to protected)
produces identical compiled output to the baseline, avoiding the
symbol name length overhead from renaming.
Co-Authored-By: J. Nick Koston <nick@koston.org >
2026-02-27 21:32:27 -10:00
J. Nick Koston
f926978f61
[core] Make register_component protected, remove runtime checks
...
Instead of runtime null, duplicate, and capacity checks in
register_component_, make the method unreachable from outside
codegen by removing the public template wrapper and granting
friend access to the codegen-generated ::setup() function.
Since ESPHOME_COMPONENT_COUNT is set to exactly
len(CORE.component_ids) at codegen time, the StaticVector is
always correctly sized and the runtime capacity check cannot
trigger from codegen. External components that bypassed codegen
to call App.register_component() directly will now get a
compile error, forcing them to properly declare their components
in their config schema.
Co-Authored-By: J. Nick Koston <nick@koston.org >
2026-02-27 21:05:34 -10:00
J. Nick Koston
5fddce6638
[logger] Make tx_buffer_ compile-time sized ( #14205 )
2026-02-23 12:02:05 +13:00
J. Nick Koston
f238f93312
[core] Move comment to PROGMEM on ESP8266 ( #12554 )
2025-12-22 21:37:51 +00:00
David Woodhouse
9de7df7b5b
Add build info to image ( #12425 )
...
Co-authored-by: J. Nick Koston <nick+github@koston.org >
Co-authored-by: J. Nick Koston <nick@home-assistant.io >
Co-authored-by: J. Nick Koston <nick@koston.org >
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-12-18 00:06:52 +00:00
DanielV
b18ff48b4a
[API] Sub devices and areas ( #8544 )
...
Co-authored-by: J. Nick Koston <nick@koston.org >
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com >
Co-authored-by: J. Nick Koston <nick+github@koston.org >
2025-06-25 12:03:41 +00:00
Keith Burzinski
f46c499c4e
Separate OTABackend from OTA component ( #6459 )
...
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com >
2024-05-16 14:01:09 +12:00
Cossid
bcfbcd9578
Add area (zone) to esphome core config to be suggested through API and MQTT. ( #5602 )
...
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com >
2023-10-27 11:38:52 +13:00
Gil Peeters
11518364a1
Display the configured esphome:comment on the WebServer ( #4246 )
2023-01-17 13:02:54 +13:00
Jesse Hills
c301ae3645
Add friendly_name to device ( #4296 )
2023-01-17 10:28:09 +13:00
Jesse Hills
6153bcc6ad
Initial Support for RP2040 platform ( #3284 )
...
Co-authored-by: Paulus Schoutsen <balloob@gmail.com >
2022-10-20 16:50:39 +13:00
Otto Winter
ac0d921413
ESP-IDF support and generic target platforms ( #2303 )
...
* Socket refactor and SSL
* esp-idf temp
* Fixes
* Echo component and noise
* Add noise API transport support
* Updates
* ESP-IDF
* Complete
* Fixes
* Fixes
* Versions update
* New i2c APIs
* Complete i2c refactor
* SPI migration
* Revert ESP Preferences migration, too complex for now
* OTA support
* Remove echo again
* Remove ssl again
* GPIOFlags updates
* Rename esphal and ICACHE_RAM_ATTR
* Make ESP32 arduino compilable again
* Fix GPIO flags
* Complete pin registry refactor and fixes
* Fixes to make test1 compile
* Remove sdkconfig file
* Ignore sdkconfig file
* Fixes in reviewing
* Make test2 compile
* Make test4 compile
* Make test5 compile
* Run clang-format
* Fix lint errors
* Use esp-idf APIs instead of btStart
* Another round of fixes
* Start implementing ESP8266
* Make test3 compile
* Guard esp8266 code
* Lint
* Reformat
* Fixes
* Fixes v2
* more fixes
* ESP-IDF tidy target
* Convert ARDUINO_ARCH_ESPxx
* Update WiFiSignalSensor
* Update time ifdefs
* OTA needs millis from hal
* RestartSwitch needs delay from hal
* ESP-IDF Uart
* Fix OTA blank password
* Allow setting sdkconfig
* Fix idf partitions and allow setting sdkconfig from yaml
* Re-add read/write compat APIs and fix esp8266 uart
* Fix esp8266 store log strings in flash
* Fix ESP32 arduino preferences not initialized
* Update ifdefs
* Change how sdkconfig change is detected
* Add checks to ci-custom and fix them
* Run clang-format
* Add esp-idf clang-tidy target and fix errors
* Fixes from clang-tidy idf round 2
* Fixes from compiling tests with esp-idf
* Run clang-format
* Switch test5.yaml to esp-idf
* Implement ESP8266 Preferences
* Lint
* Re-do PIO package version selection a bit
* Fix arduinoespressif32 package version
* Fix unit tests
* Lint
* Lint fixes
* Fix readv/writev not defined
* Fix graphing component
* Re-add all old options from core/config.py
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com >
2021-09-20 11:47:51 +02:00
Otto Winter
a4867a00ea
Activate owning-memory clang-tidy check ( #1891 )
...
* Activate owning-memory clang-tidy check
* Lint
* Lint
* Fix issue with new NfcTag constructor
* Update pointers for number and select
* Add back the NOLINT to display buffer
* Fix merge
* DSMR fixes
* Nextion fixes
* Fix pipsolar
* Fix lwip socket
* Format
* Change socket fix
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com >
2021-09-13 11:31:02 +02:00
Oxan van Leeuwen
824f3187ac
Update platformio.ini settings and fix test apps ( #1815 )
...
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com >
Co-authored-by: Otto Winter <otto@otto-winter.com >
2021-05-25 07:47:45 +12:00