J. Nick Koston
150a65de8c
[store_yaml] Force-load deferred includes; cover secrets.yml
...
- Promote `_force_load_include_files` from bundle.py to yaml_util.py as
`force_load_include_files`. bundle.py and the new caller now share it.
- Call it inside the `track_yaml_loads` block in config.py so deferred
`!include` values, packages, and similar are loaded while the listener
is active. Without this, `CORE.data["yaml_sources"]` only contained the
entry YAML, and store_yaml shipped an incomplete recovery blob.
- Treat both `secrets.yaml` and `secrets.yml` as secrets (matches
`esphome.const.SECRETS_FILES`); also check the original (non-resolved)
filename to catch a `secrets.yaml` symlinked to an unrelated target.
- Update bundle tests for the new import path and message wording.
2026-05-15 10:20:45 -07:00
J. Nick Koston
783afaeaf2
[store_yaml] Streaming: advance pos only on successful send
...
Drop the pre-advance + rewind-on-failure dance in try_send_store_yaml_; match
the camera streaming pattern (advance after send_message succeeds, retry the
same chunk on WOULD_BLOCK). Also remove the unreachable `|| pos == 0` branch
in the while condition — on_get_yaml_request short-circuits the zero-size
path before this function is ever called.
2026-05-15 10:20:04 -07:00
J. Nick Koston
59e8242756
[store_yaml] Address review: combined dump_config, encapsulate PROGMEM read
...
- Coalesce dump_config into a single ESP_LOGCONFIG call.
- Replace the raw get_data() accessor with a read_chunk() helper that copies
bytes via progmem_read_byte, so callers cannot accidentally dereference the
PROGMEM pointer directly on ESP8266.
- Update the API streaming handler to use read_chunk().
2026-05-15 10:20:04 -07:00
J. Nick Koston
d0510364c9
[store_yaml] Embed user YAML in firmware for recovery
...
Adds a new opt-in component that compresses the on-disk YAML files with zstd
at codegen time and stores them in PROGMEM. The native API exposes a chunked
GetYaml RPC so a lost configuration can be retrieved from a running device.
Decompression happens client-side; no decompressor is shipped on-device.
2026-05-15 10:20:04 -07:00
J. Nick Koston
1674ed9744
[ci] Use uv for pip installs across CI workflows ( #16451 )
2026-05-15 10:18:27 -07:00
J. Nick Koston
46be0f4f62
[ci] Log top 30 pytest durations ( #16455 )
2026-05-15 10:18:07 -07:00
J. Nick Koston
ec1826a6ed
[yaml_util] Promote include-discovery helper, share it with bundle ( #16447 )
2026-05-15 10:17:50 -07:00
Simone Chemelli and J. Nick Koston
8b3bc47547
[uptime] Update device_class for Uptime sensor ( #16434 )
...
Co-authored-by: J. Nick Koston <nick@koston.org >
2026-05-15 17:16:01 +00:00
J. Nick Koston
4381a8baaa
[ci] pr-title-check: skip all bot authors, not just dependabot ( #16453 )
2026-05-15 09:59:35 -07:00
esphome[bot] and esphomebot
4189979391
Synchronise Device Classes from Home Assistant ( #16452 )
...
Co-authored-by: esphomebot <esphome@openhomefoundation.org >
2026-05-15 09:57:49 -07:00
J. Nick Koston
1b1e21d470
[ci] sync-device-classes: drop branch-switch hack, skip no-commit-to-branch instead ( #16450 )
2026-05-15 09:54:01 -07:00
J. Nick Koston
5b6c54c961
[ci] sync-device-classes: use uv for installs and skip pylint ( #16449 )
2026-05-15 09:45:11 -07:00
Jonathan Swoboda
ff968a4629
[ci] Fix sync-device-classes workflow (failing daily for weeks) ( #16448 )
2026-05-15 09:36:01 -07:00
Edward Firmo and pre-commit-ci-lite[bot]
d832ce51cd
[nextion] Replace connect_info vector with fixed-size field parser, always log device info ( #16059 )
...
Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
2026-05-14 22:42:10 -05:00
Kevin Ahrendt
d663d80fde
[sound_level] Use RingBufferAudioSource ( #16436 )
2026-05-14 20:33:36 -07:00
Kevin Ahrendt
c5c627d534
[audio] Bump microMP3 to v0.2.1 ( #16429 )
2026-05-14 20:31:11 -07:00
Jonathan Swoboda
d046dd7276
[esp32_hosted] Bump esp_hosted to 2.12.7 ( #16440 )
2026-05-14 22:51:14 -04:00
Jonathan Swoboda
56983f414f
[espidf] Gate esp_idf_size --ng on IDF version ( #16441 )
2026-05-14 22:41:36 -04:00
Jonathan Swoboda
a92b607754
[ci] Add ci-run-all label to force full CI matrix ( #16421 )
2026-05-14 18:54:13 -04:00
Jonathan Swoboda
313d974983
[multiple] Fix -Wformat= mismatches in component .cpp sources ( #16433 )
2026-05-14 18:53:42 -04:00
Jonathan Swoboda and Copilot Autofix powered by AI
1d86d856d1
[docker] Install libusb-1.0 so ESP-IDF tools can validate openocd ( #16424 )
...
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com >
2026-05-14 15:51:59 -07:00
Jonathan Swoboda
1bb191aa77
[ci] Skip dashboard-deprecation bot on release/beta-bump PRs ( #16427 )
2026-05-14 15:51:36 -07:00
dependabot[bot]
5d9d6e83f7
Bump ruff from 0.15.12 to 0.15.13 ( #16437 )
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-05-14 15:41:32 -07:00
Jonathan Swoboda
f3d7743460
[tests] Fix -Wformat= mismatches in test YAML lambdas/logger.log ( #16435 )
2026-05-14 18:40:40 -04:00
Jonathan Swoboda
f291dc8d2f
[esp32] Sweep ESP-IDF toolchain warnings + bump deprecated mark_failed ( #16432 )
2026-05-14 18:39:16 -04:00
Jonathan Swoboda
a8e69a15e4
[clang-tidy] Enable readability-container-contains ( #16438 )
2026-05-14 18:38:09 -04:00
Keith Burzinski and Claude Opus 4.7
7436d1c199
[tinyusb] Reject logger.hardware_uart: USB_CDC ( #16417 )
...
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-14 20:29:56 +00:00
Keith Burzinski and Claude Opus 4.7
348b92910e
[tinyusb] Reject tinyusb: configured without a USB class companion ( #16413 )
...
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-14 15:07:38 -05:00
Jonathan Swoboda
f89a6f4f9c
[espidf] Trim has_outdated_files watch list; embed IDF version in sdkconfig ( #16416 )
2026-05-14 04:02:22 +00:00
Jesse Hills
c3ee962b83
Merge branch 'beta' into dev
2026-05-14 15:25:38 +12:00
Jesse Hills
59847d56e8
Merge pull request #16411 from esphome/bump-2026.5.0b1
...
2026.5.0b1
2026.5.0b1
2026-05-14 15:24:58 +12:00
Jonathan Swoboda
e593cb6efc
[espidf] Stop perpetual reconfigure loop on native ESP-IDF builds ( #16415 )
2026-05-13 23:19:30 -04:00
J. Nick Koston
d2107e40c8
[ci] Prohibit curly braces in PR titles for MDX safety ( #16412 )
2026-05-14 14:03:45 +12:00
Jesse Hills
09a926fa13
Bump version to 2026.5.0b1
2026-05-14 12:33:43 +12:00
Jesse Hills
78b60ac6fa
Bump version to 2026.6.0-dev
2026-05-14 12:33:43 +12:00
Jonathan Swoboda
a3b6f92433
[espidf] Regenerate bundled CMakeLists; auto-REQUIRE via IDF build properties ( #16406 )
2026-05-13 23:58:48 +00:00
dependabot[bot]
06786da7dd
Bump actions/create-github-app-token from 3.1.1 to 3.2.0 ( #16409 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-05-13 16:28:47 -07:00
Jonathan Swoboda
910cc38dd7
[writer] Clean ESP-IDF build artifacts in clean_build ( #16410 )
2026-05-13 19:25:35 -04:00
dependabot[bot]
c8aba6913b
Bump requests from 2.34.0 to 2.34.1 ( #16408 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-05-13 15:38:13 -05:00
Boris Krivonog
ce8810bc42
[mitsubishi_cn105] Add vane and wide-vane support ( #16405 )
2026-05-13 13:25:32 -05:00
Jonathan Swoboda
1c6966b761
[espidf] Run PIO extraScript with SCons-env shim ( #16404 )
2026-05-13 13:07:59 -04:00
J. Nick Koston and pre-commit-ci-lite[bot]
03f5e4775c
[tests] Add CodSpeed benchmark for compiled-config cache fast path ( #16402 )
...
Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
2026-05-13 12:06:20 -05:00
Boris Krivonog
445d841229
[mitsubishi_cn105] Simplified protocol lookups ( #16399 )
2026-05-13 16:49:32 +00:00
Jonathan Swoboda
d7b00047bd
[espidf] Emit -W warning flags at project scope so managed components also see them ( #16403 )
2026-05-13 12:27:06 -04:00
Jonathan Swoboda
3fee97ae5a
[espidf] Partition pio_components cache by framework ( #16401 )
2026-05-13 12:08:51 -04:00
J. Nick Koston
cb520cda6b
[core] Retry PlatformIO downloads on transport-layer errors ( #16397 )
2026-05-13 10:01:42 -05:00
J. Nick Koston
8bce32ec35
[tests] Cover top-level !include failure path in track_yaml_loads ( #16396 )
2026-05-13 10:01:26 -05:00
J. Nick Koston
b866525437
[ci] Skip native ESP-IDF compile test when no relevant files changed ( #16395 )
2026-05-13 10:01:11 -05:00
J. Nick Koston
0e4922a340
[core] Cache validated config to skip re-validation on upload/logs ( #16381 )
2026-05-13 22:14:19 +12:00
Boris Krivonog
45a4811bb4
[mitsubishi_cn105] Unified timeout handling ( #16385 )
2026-05-13 01:40:19 -05:00