J. Nick Koston
e64651b52d
Merge remote-tracking branch 'origin/dev' into integration
2026-07-18 10:21:31 -10:00
J. Nick Koston
e327a7f52f
[scheduler] Remove deprecated set_retry/cancel_retry ( #17585 )
2026-07-15 17:58:41 -10:00
Jesse Hills
a3ab7961e0
[core] Fix wait_until crash when re-entered from its own continuation ( #17571 )
2026-07-16 08:14:55 +12:00
Jesse Hills
b295b8d5a2
[api] Warn when Home Assistant actions are sent with no subscribed client ( #17560 )
2026-07-15 23:11:47 +12:00
J. Nick Koston
2b3027a7fd
[api] Provision encryption keys over an encrypted zero-PSK noise connection ( #17482 )
2026-07-13 08:55:30 +12:00
J. Nick Koston
3c2dad67f4
[network] Fix logged use_address with MAC suffix and build it at runtime ( #17432 )
2026-07-07 02:07:34 -05:00
Clyde Stubbs and Copilot Autofix powered by AI
9857d508d9
[light] Preserve brightness on turn-off. ( #17103 )
...
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com >
2026-07-07 15:57:06 +12:00
J. Nick Koston
12197c45a2
Merge branch 'runtime_use_address' into integration
2026-07-06 21:18:30 -05:00
J. Nick Koston
e62c6ce81e
[network] Fix logged use_address with MAC suffix and build it at runtime
2026-07-06 21:03:07 -05:00
J. Nick Koston
be798e461e
Merge branch 'integration' of https://github.com/esphome/esphome into integration
2026-07-05 23:01:06 -05:00
J. Nick Koston
b7a2820ffe
Merge branch 'analyze-memory-dedup-aliased-ram-symbols' into integration
2026-07-05 23:00:31 -05:00
Jonathan Swoboda
b8690c8e31
[core] Drop Python 3.11 support ( #17280 )
2026-06-29 12:32:28 -04:00
Bonne Eggleston and Jonathan Swoboda
8434d54cc7
[modbus] Reinstate turnaround delay after broadcasts (Revert #17209 ) ( #17263 )
...
Co-authored-by: Jonathan Swoboda <154711427+swoboda1337@users.noreply.github.com >
2026-06-28 17:07:25 -04:00
Jonathan Swoboda
1d5490fd91
[modbus] Only apply turnaround delay after broadcasts ( #17209 )
2026-06-25 11:38:34 -04:00
J. Nick Koston
ead4518a5b
Merge remote-tracking branch 'upstream/dev' into integration
2026-06-21 17:08:00 -05:00
J. Nick Koston
c4abc5476e
[core] Remove deprecated std::string scheduler/timer overloads ( #17111 )
2026-06-21 16:22:08 -05:00
Bonne Eggleston
63d8a344c5
[modbus] Fix parsing & split out server mode ( #11969 )
2026-06-21 13:32:35 -05:00
J. Nick Koston
c533c38b36
Merge remote-tracking branch 'origin/remove-deprecated-scheduler-string-overloads' into integration
2026-06-21 11:35:05 -05:00
J. Nick Koston
9493c7a841
Merge remote-tracking branch 'origin/dev' into integration
2026-06-21 11:33:43 -05:00
J. Nick Koston
7ef6b486d2
[core] Address review: per-phase scheduler ids, log wording, doc typo
2026-06-21 11:03:46 -05:00
J. Nick Koston
1d8b38b6b4
[core] Migrate scheduler_pool fixture off std::string timer names
2026-06-21 10:52:46 -05:00
J. Nick Koston
ff56d66ced
[core] Keep scheduler string_test, migrate it to the const char* API
2026-06-21 10:29:04 -05:00
J. Nick Koston
8aa06c9d15
[core] Remove deprecated std::string scheduler/timer overloads
2026-06-21 10:23:43 -05:00
J. Nick Koston
4ae6dc355f
[select] Remove deprecated state member ( #17027 )
2026-06-19 17:08:07 +12:00
J. Nick Koston
b97182d302
[logger] Hold recursion guard while draining the task log buffer ( #17044 )
2026-06-19 09:16:14 +12:00
J. Nick Koston
70c11a7f3e
Merge remote-tracking branch 'upstream/logger-buffered-recursion-guard' into integration
2026-06-18 16:12:45 -05:00
J. Nick Koston
0b37b9a202
[logger] Wait deterministically for buffered drain in test
...
Replace the fixed asyncio.sleep(0.5) with a wait on an asyncio.Event that
fires once all thread messages have arrived over the API. Every buffered
message is delivered whether it survives intact or gets clobbered, so counting
THREADMSG occurrences is a deterministic drain-complete signal with no arbitrary
sleep and no dependence on the fix being present.
2026-06-18 14:51:04 -05:00
J. Nick Koston
c694e96f24
[logger] Hold recursion guard while draining the task log buffer
...
The synchronous logging path holds the main-task recursion guard around
notify_listeners_, but the buffered drain in Logger::process_messages_ did not.
When a message logged from a non-main thread was drained on the main loop and a
listener (the API log forwarder, or a logger.on_message automation) logged again
on the main task, that re-entrant log reused the shared tx_buffer_ and the API
shared_write_buffer_ while they were still in use, corrupting the in-flight
message; on ESP32 this surfaced as a StoreProhibited panic in the API send path.
Hold a RecursionGuard on main_task_recursion_guard_ across the drain so re-entrant
main-task logs are dropped there too, mirroring the synchronous path.
Adds an integration test that drives the buffered drain with a re-entrant
on_message log and verifies the buffered messages are delivered uncorrupted.
2026-06-18 14:07:03 -05:00
rwrozelle and Claude Sonnet 4.6
4b8568e948
[socket] bugfix Set wake-request gate flag on LwIP socket receive event ( #17010 )
...
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-18 13:54:29 +12:00
J. Nick Koston
3420cff316
[core] Attribute "took a long time" blocking warning to the owning script ( #16768 )
2026-06-16 08:46:33 +12:00
J. Nick Koston
3cc875c40b
[core] Enable ruff BLE (flake8-blind-except) lint family ( #16659 )
2026-05-27 20:09:57 +12:00
J. Nick Koston
3ce95682ca
Merge remote-tracking branch 'origin/cv-sensitive-redact-sentinel' into integration
2026-05-26 23:51:13 -05:00
J. Nick Koston
ceb9d406e1
[core] Enable ruff PIE (flake8-pie) lint family ( #16658 )
2026-05-26 07:46:44 -04:00
J. Nick Koston
ae74920b81
[core] Enable ruff PTH (flake8-use-pathlib) lint family ( #16661 )
2026-05-26 05:14:42 +00:00
J. Nick Koston
ae814cff5c
[core] Enable ruff B (flake8-bugbear) lint family ( #16655 )
2026-05-26 02:28:14 +00:00
J. Nick Koston
8edc9f4cc8
Merge remote-tracking branch 'upstream/dev' into integration
2026-05-12 12:52:15 -05:00
J. Nick Koston
727c74da3f
[script] Fix array-type parameters in script.execute ( #16374 )
2026-05-12 12:17:23 -05:00
J. Nick Koston
a52ca4f80a
[ota] Implement host platform OTA backend with re-exec for integration testing ( #16304 )
2026-05-11 10:51:08 -05:00
Jonathan Swoboda
e4d9786f00
[core] Move platformio files to subfolder ( #16347 )
2026-05-11 21:34:47 +12:00
Jonathan Swoboda
696a654733
[clang-tidy] Concatenate nested namespaces (7/7: tests, platform-gated, enable check) ( #16307 )
2026-05-07 23:05:17 -04:00
J. Nick Koston
f295d6b056
Merge remote-tracking branch 'upstream/dev' into integration
...
# Conflicts:
# esphome/__main__.py
# esphome/components/api/client.py
# esphome/components/bl0942/bl0942.cpp
# esphome/components/cover/__init__.py
# esphome/components/cover/automation.h
# esphome/components/esphome/ota/ota_esphome.cpp
# esphome/components/ota/ota_backend_esp_idf.cpp
# esphome/components/ota/ota_partitions_esp_idf.cpp
# esphome/espota2.py
# tests/components/template/common-base.yaml
# tests/unit_tests/components/api/test_client.py
# tests/unit_tests/test_main.py
2026-05-06 16:47:31 -05:00
90693fb39a
[core] Fix WiFi connection in safe mode ( #16269 )
...
Co-authored-by: J. Nick Koston <nick@home-assistant.io >
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 >
2026-05-06 09:56:33 -05:00
J. Nick Koston
39b2b901f7
[core] Replace scheduler pool vector with unbounded intrusive freelist ( #16172 )
2026-05-05 18:26:19 -05:00
J. Nick Koston
53c4e6f386
[tests] Drop duplicate on_boot_restore_from in host_mode_climate_basic_state ( #16228 )
2026-05-03 20:12:51 -05:00
J. Nick Koston
013dee44eb
[binary_sensor] Drop Component from AutorepeatFilter, use self-keyed scheduler ( #16191 )
2026-05-03 20:05:27 -05:00
J. Nick Koston
120d1e51fb
[tests] Fix flaky host_mode_climate_basic_state integration test ( #16192 )
2026-05-03 20:04:34 -05:00
J. Nick Koston
72a75f2d3f
[cover] Fold ControlAction/CoverPublishAction fields into stateless lambdas ( #16046 )
2026-05-03 20:02:07 -05:00
J. Nick Koston
df1200629f
[tests] Fix flaky host_mode_climate_basic_state ( #16225 )
2026-05-03 19:44:11 -05:00
J. Nick Koston
5c015ede77
Merge remote-tracking branch 'upstream/fix-flaky-host-mode-climate-basic-state' into integration
2026-05-03 18:20:34 -05:00
J. Nick Koston
37a44a8a6f
[tests] Fix flaky host_mode_climate_basic_state by ignoring prior MEMORY state
...
The fixture shares the `host-climate-test` build dir with
host_mode_climate_control.yaml. When the control test runs first and
leaves the thermostat in HEAT mode, MEMORY restore on the next basic_state
boot picked up HEAT and the initial-state assertion failed
(`assert ClimateMode.HEAT == ClimateMode.OFF`).
2026-05-03 17:39:39 -05:00