Commit Graph
31363 Commits
Author SHA1 Message Date
J. Nick Koston ba60420fc5 Merge remote-tracking branch 'upstream/dev' into integration 2026-09-25 17:36:01 +01:00
J. Nick Koston 7294da9f49 [integration] Use register_apply_action for sensor.integration.reset and set_value (#19628) 2026-09-25 12:34:39 -04:00
J. Nick Koston 96d0d677b6 [alarm_control_panel] Use register_apply_action for pending and triggered, drop the chime and ready actions that had no class (#19627) 2026-09-25 12:33:35 -04:00
J. Nick Koston c598d2dee5 [display_menu_base] Use the apply helpers for the eight display_menu actions and is_active (#19626) 2026-09-25 12:32:46 -04:00
J. Nick Koston 1c68e5ddcc Merge remote-tracking branch 'origin/dev' into integration 2026-09-25 17:32:22 +01:00
J. Nick Koston 73548b0f15 [midea] Use register_apply_action for the eight midea_ac actions (#19625) 2026-09-25 12:32:16 -04:00
J. Nick Koston 9a9169305e [haier] Use register_apply_action for the thirteen climate.haier actions (#19624) 2026-09-25 12:31:34 -04:00
J. Nick Koston 54d05180b7 [duty_time] Use one import style for the automation module (#19622) 2026-09-25 12:30:10 -04:00
J. Nick Koston 1dcf0a0f9d [valve] Use register_apply_action for valve.open, valve.close, valve.stop and valve.toggle (#19618) 2026-09-25 17:00:33 +01:00
J. Nick Koston bb84409261 [sprinkler] Use register_apply_action for the seven keyless controller actions (#19617) 2026-09-25 11:58:56 -04:00
J. Nick Koston 044c4cb9bb [core] Migrate trivial action and condition builders to the shared helpers (#19322) 2026-09-25 16:46:12 +01:00
J. Nick Koston d346835e79 [wireguard] Use the apply helpers for the enable, disable, enabled and peer_online automations (#19616) 2026-09-25 11:04:51 -04:00
J. Nick Koston db566b25d0 [microphone] Use the apply helpers for the capture, mute and condition automations (#19619) 2026-09-25 11:04:14 -04:00
J. Nick Koston 45bcff2c2c [micro_wake_word] Use the apply helpers for the start, stop and model automations (#19620) 2026-09-25 11:03:32 -04:00
J. Nick Koston af4a8dac8e [esp32] Keep the NVS cache in PSRAM when PSRAM is guaranteed (#19378) 2026-09-25 15:56:01 +01:00
J. Nick Koston d3fd124c59 [core] Lint against std::nothrow, use RAMAllocator instead (#19244) 2026-09-25 15:50:32 +01:00
J. Nick Koston 2d8e43ef78 [ota] Add allow_plaintext_upload for devices that never migrated to encryption (#19396) 2026-09-25 15:42:52 +01:00
J. Nick Koston 370d76d013 [deep_sleep] Use register_apply_action for deep_sleep.prevent and deep_sleep.allow (#19607) 2026-09-25 10:26:57 -04:00
J. Nick Koston 3fb48e0bfa [script] Use register_apply_action for script.stop (#19599) 2026-09-25 10:23:33 -04:00
J. Nick Koston a17285afc7 [fan] Use register_apply_action for fan.toggle and fan.turn_off (#19600) 2026-09-25 10:23:03 -04:00
J. Nick Koston f7dd9c21c5 [lock] Use register_apply_action for lock.lock, lock.unlock and lock.open (#19601) 2026-09-25 10:21:47 -04:00
J. Nick Koston 898ab7c701 [safe_mode] Use register_apply_action for safe_mode.mark_successful (#19605) 2026-09-25 10:21:18 -04:00
J. Nick Koston 28343e1bc9 [mqtt] Use register_apply_action for mqtt.publish, mqtt.enable and mqtt.disable (#19602) 2026-09-25 10:20:13 -04:00
J. Nick Koston 6fa56e18bd [sendspin] Use register_apply_action for the switch, static delay and transition_finished actions (#19608) 2026-09-25 10:18:52 -04:00
luar123 cc5ed93247 [zigbee] move init back into setup (#19427) 2026-09-25 09:29:16 +01:00
J. Nick Koston 91210c5ef5 [button] Use register_apply_action for button.press (#19598) 2026-09-25 03:37:03 -04:00
tomaszduda23andJ. Nick Koston 8db901cbfc [nrf52] set WDT timeout to 30sec for Adafruit bootloader (#19596)
Co-authored-by: J. Nick Koston <nick+github@koston.org>
2026-09-25 06:00:33 +02:00
J. Nick Koston 4a2f17bc8b [noise] Run the ESP8266 at 160 MHz during the handshake (#19233) 2026-09-25 00:24:34 +01:00
J. Nick Koston 253793c4df [web_server] Mask the value of a password text entity, not only its state (#19385) 2026-09-24 18:56:28 -04:00
Jeff Brown 3ef0acd4b2 [sgp30][sgp4x] Migrate CONF_HUMIDITY_SOURCE to const.py (#19436) 2026-09-24 17:54:58 -04:00
dependabot[bot] 73ca04579c Update pyparsing requirement from >=3.3.2 to >=3.3.3 (#19592)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-09-24 17:53:46 -04:00
dependabot[bot] 4ccc5fa37e Bump astral-sh/setup-uv from 10.1.0 to 10.2.0 in /.github/actions/restore-python (#19593)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-09-24 17:53:25 -04:00
dependabot[bot] f70880ce96 Bump astral-sh/setup-uv from 10.1.0 to 10.2.0 (#19594)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-09-24 17:53:09 -04:00
057bf88e4a [mcp3204] Read a conversion in one SPI transaction (#19423)
Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
Co-authored-by: J. Nick Koston <nick@koston.org>
Co-authored-by: J. Nick Koston <nick@home-assistant.io>
2026-09-24 14:06:07 -04:00
tomaszduda23 16757a84e6 [nrf52] add device power manager support to deep sleep component (#19494) 2026-09-24 13:57:16 -04:00
J. Nick Koston a9111a8993 [ota] Treat a client that leaves after the handshake as a clean close (#19401) 2026-09-24 18:36:45 +01:00
J. Nick Koston 211fd3ce54 [core] Dispatch controller updates through generated direct calls (#19588) 2026-09-24 17:24:10 +00:00
Janne Snabb 9df7e825d3 [core] Keep static task TCB in internal RAM (#19426) 2026-09-24 17:59:03 +01:00
J. Nick Koston 39d13d74d7 Merge branch 'controller-static-dispatch' into integration 2026-09-24 17:35:39 +01:00
Jonathan Swoboda e63428ddce [nextion] Keep add_waveform_data() available without a waveform sensor (#19590) 2026-09-24 12:31:16 -04:00
J. Nick Koston 6174aae860 [web_server] Say why the media player callback is a stub 2026-09-24 17:19:21 +01:00
J. Nick Koston 207edd0522 [core] Tidy the controller dispatch after review
Move ControllerContract next to its only user in controller_dispatch.h,
collapse the contract check into one static_assert, and let codegen
build the tuple with ArrayInitializer after emitting the tuple include.
Share one esphome.h exclusion set between the writer and the clang-tidy
all-headers file so the dispatch header is skipped by both. Add unit
tests for the generated dispatch.
2026-09-24 17:12:32 +01:00
J. Nick Koston 4b9906c5c9 [core] Move the controller dispatch into controller_dispatch.h
Code generation now emits one function returning the registered
controllers as a tuple plus an include; the header defines the
ControllerRegistry notify functions with a fold expression and checks
ControllerContract for every tuple element.
2026-09-24 17:03:03 +01:00
J. Nick Koston d731ddefc9 [core] Dispatch controller updates through generated direct calls
APIServer and WebServer inherited both Component and Controller, so each
on_*_update override reached through the registry needed a non-virtual
thunk to adjust this to the secondary base, and every publish iterated a
StaticVector of Controller pointers with an indirect call.

Drop the Controller base class and the runtime list. ControllerRegistry
only declares notify_*; code generation defines each one in main.cpp as
direct calls on the registered controllers through the entity_types.h
X-macro. A ControllerContract concept with a generated static_assert per
controller reports a missing callback clearly.

On an ESP32 IDF config with api, web_server and four entity types this
saves 256 B of flash and 24 B of RAM.
2026-09-24 16:55:18 +01:00
J. Nick Koston f8e8295088 [api] Decode without a vtable (#19029) 2026-09-24 16:14:25 +01:00
J. Nick Koston d8fcfd319f Merge remote-tracking branch 'origin/api-decode-without-vtable' into integration 2026-09-24 16:11:30 +01:00
J. Nick Koston ac2fd48910 Merge remote-tracking branch 'upstream/dev' into integration 2026-09-24 16:11:07 +01:00
J. Nick Koston 8629ec6cda Regenerate api_pb2 for SerialProxySetModeRequest after merging dev 2026-09-24 15:53:51 +01:00
J. Nick Koston 677a88726e [api] State the destructor trade-off as a codebase rule, not a language guarantee 2026-09-24 15:53:51 +01:00
J. Nick Koston 174b683c15 [api] Use the direction helpers in the base class builder too 2026-09-24 15:53:50 +01:00