Commit Graph
2235 Commits
Author SHA1 Message Date
J. Nick Koston bc323e74aa Merge branch 'esp8266-native-pch' into esp32-idf-pch 2026-09-28 11:50:10 +02:00
J. Nick Koston 26b8186a73 Emit the precompiled header through a named function in the shared generator 2026-09-28 11:49:41 +02:00
J. Nick Koston 8695e9a7c7 Merge branch 'esp8266-native-pch' into esp32-idf-pch 2026-09-28 11:36:03 +02:00
J. Nick Koston 38b06cbfbd Merge remote-tracking branch 'origin/dev' into esp8266-native-pch
# Conflicts:
#	esphome/arduino8266/framework.py
#	esphome/build_gen/arduino8266.py
#	esphome/build_helpers/ccache.py
#	tests/unit_tests/build_helpers/test_ccache.py
#	tests/unit_tests/test_arduino8266_toolchain.py
2026-09-28 11:35:49 +02:00
Jesse HillsandJ. Nick Koston 32e11c4f4a [host] Build natively with ninja instead of PlatformIO (#19214)
Co-authored-by: J. Nick Koston <nick@home-assistant.io>
2026-09-28 11:29:59 +02:00
J. Nick Koston 934591058f [nrf52] Test that the mcumgr image is offered beside a UF2 (#19804) 2026-09-28 00:57:12 +02:00
J. Nick Koston 7cda9a2666 [core][sensor][binary_sensor][text_sensor][button][switch][number][select][debug][xiaomi_rtcgq02lm][tfluna][ld2412] Bind sub entity config and parent once with sub_* helpers (#19754) 2026-09-27 19:19:10 +02:00
J. Nick Koston 1f175c1942 [nrf52] Fetch only the nRF Connect SDK projects a build needs (#19735) 2026-09-27 19:18:08 +02:00
J. Nick Koston 06d88e0381 [core][sensor][binary_sensor][text_sensor][debug][xiaomi_rtcgq02lm] Add new_sub_sensor, new_sub_binary_sensor and new_sub_text_sensor helpers (#19725) 2026-09-27 12:08:36 +02:00
J. Nick Koston a6d525a44e [core] Make the generated apply function a template argument of ApplyAction and ApplyCondition (#19655) 2026-09-27 12:07:55 +02:00
J. Nick Koston 89ce3ab98c [nrf52] Run analyze-memory on the sdk-nrf toolchain (#19730) 2026-09-27 05:05:26 +01:00
J. Nick Koston 5d415ad505 [nrf52] Stream the SDK clone and resume it after an interruption (#19731) 2026-09-27 05:04:41 +01:00
J. Nick Koston 746691d5c2 [esp8266] Add native toolchain that builds the Arduino core without PlatformIO (#18539) 2026-09-26 20:44:09 +01:00
J. Nick Koston 45e79648a0 Merge branch 'esp8266-native-pch' into esp32-idf-pch 2026-09-26 11:25:04 +01:00
J. Nick Koston 3390a13e8c Merge branch 'esp8266-native-ci' into esp8266-native-pch
# Conflicts:
#	esphome/components/esp8266/__init__.py
2026-09-26 11:24:50 +01:00
J. Nick Koston 3bbe673ee5 Resolve the native backend from one shared table
The (platform, toolchain) mapping lived in both __main__ and the esp8266
component, so a renamed backend module meant editing two places and the
drift test only covered one. build_helpers/native.py now holds it; the
module stays import-light so the serial upload and logs fast path can
resolve a backend without pulling in a platform package.
2026-09-26 11:24:13 +01:00
J. Nick Koston 0d0a808e49 Merge branch 'esp8266-native-pch' into esp32-idf-pch 2026-09-26 10:32:26 +01:00
J. Nick Koston 75cece4f4f Merge branch 'esp8266-native-ci' into esp8266-native-pch 2026-09-26 10:32:26 +01:00
J. Nick Koston cf6ada1e85 Merge remote-tracking branch 'origin/dev' into esp8266-arduino-toolchain 2026-09-26 10:32:25 +01:00
J. Nick Koston 22fa536fa5 Simplify the native toolchain driver
Drops the ninja dry-run probe (a second full manifest load and stat
sweep per build to suppress one line), the compile-database stamp file
(a plain mtime compare says the same), and the ccache sentinel
(resolve_ccache_path only spawns when it returns a value, so a plain
fallback never re-probes). The crash decoder resolves addr2line and
the ELF once per run instead of once per address, which removes the
module-level warn-dedup dict along with its test fixture. The size
summary uses the toolchain path it was handed rather than re-deriving
it, and its two failure branches merge.

The framework import moves into the functions that need it: the serial
upload and logs fast path resolves this module for artifact paths
alone and was paying 16 ms and 29 modules for the package-download
stack. test_lazy_imports now guards that module so it cannot come
back. analyze-memory's idedata candidate list learns the suffixed
native cache name, and warn_if_idedata_missing goes back to being a
one-for-one extraction.
2026-09-26 10:31:52 +01:00
J. Nick Koston 76de6a672c [core] Render an id constant in an apply field as the object it names (#19694) 2026-09-26 02:16:01 +01:00
64388318e8 [light] Replace restore_mode with restore_state (#18997)
Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com>
Co-authored-by: J. Nick Koston <nick@koston.org>
Co-authored-by: J. Nick Koston <nick@home-assistant.io>
2026-09-26 08:47:25 +10:00
J. Nick Koston 269374397e Merge branch 'esp8266-native-pch' into esp32-idf-pch 2026-09-25 16:22:02 +01:00
J. Nick Koston 25f600d437 Merge branch 'esp8266-arduino-toolchain' into esp8266-native-pch 2026-09-25 16:22:02 +01:00
J. Nick Koston 739cc7fb5a Merge remote-tracking branch 'origin/dev' into esp8266-arduino-toolchain 2026-09-25 16:22:01 +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 211fd3ce54 [core] Dispatch controller updates through generated direct calls (#19588) 2026-09-24 17:24:10 +00:00
J. Nick Koston 9ddd2c5ee1 Merge branch 'esp8266-native-pch' into esp32-idf-pch 2026-09-24 17:35:35 +01:00
J. Nick Koston ce43590835 Merge branch 'esp8266-arduino-toolchain' into esp8266-native-pch 2026-09-24 17:35:35 +01:00
J. Nick Koston 4db8af29b4 Merge remote-tracking branch 'origin/dev' into esp8266-arduino-toolchain 2026-09-24 17:35:35 +01:00
J. Nick Koston f8e8295088 [api] Decode without a vtable (#19029) 2026-09-24 16:14:25 +01:00
J. Nick Koston 9f5ac44db1 [api] Default response only string fields to a null StringRef (#19025) 2026-09-24 15:52:37 +01:00
J. Nick Koston f1f83cda07 [api] Collapse the three protobuf decode virtuals into one (#19016) 2026-09-24 15:30:11 +01:00
J. Nick Koston c27cbb132d [api] Make generated encode and size entry points type erased (#19015) 2026-09-24 15:13:52 +01:00
J. Nick Koston da148bedfe [api] Pass the encode cursor by value through the protobuf helpers (#19014) 2026-09-24 14:25:50 +01:00
J. Nick Koston e92b1e27ca [core] Let register_apply_action read the parent id from another schema key (#19548) 2026-09-24 09:12:04 -04:00
J. Nick Koston 9a6b19e591 Merge branch 'esp8266-native-pch' into esp32-idf-pch 2026-09-24 14:10:04 +01:00
J. Nick Koston 7a7fc6647b Merge branch 'esp8266-arduino-toolchain' into esp8266-native-pch 2026-09-24 14:10:04 +01:00
J. Nick Koston 61a0aad593 Merge remote-tracking branch 'origin/dev' into esp8266-arduino-toolchain 2026-09-24 14:10:03 +01:00
J. Nick Koston 993c96875c [core][select] Pass the select.set option as a plain literal (#19568) 2026-09-24 09:05:24 -04:00
J. Nick Koston 807556171b [core][cover] Add register_apply_condition for conditions that only test the parent (#19540) 2026-09-24 11:00:59 +12:00
J. Nick Koston f4300d9cee [esp8266] Add the native ninja emission (#18560) 2026-09-24 10:45:54 +12:00
J. Nick Koston 62f0f0909a Merge branch 'esp8266-native-pch' into esp32-idf-pch 2026-09-23 23:13:20 +01:00
J. Nick Koston 3d6e5fd244 Merge branch 'esp8266-native-ninja-emission' into esp8266-arduino-toolchain 2026-09-23 23:13:20 +01:00
J. Nick Koston 345106c56f Merge branch 'esp8266-arduino-toolchain' into esp8266-native-pch 2026-09-23 23:13:20 +01:00
J. Nick Koston c54e671a26 Check install completeness before spawning the linker-script gcc
A half-extracted framework cache now names the missing path instead of
surfacing a gcc failure; pure reorder, the checks depend on nothing
the generation step produces.
2026-09-23 23:13:03 +01:00
J. Nick Koston 2ec4456942 Merge branch 'esp8266-native-pch' into esp32-idf-pch 2026-09-23 22:54:18 +01:00
J. Nick Koston 0f49668b76 Merge branch 'esp8266-arduino-toolchain' into esp8266-native-pch 2026-09-23 22:54:18 +01:00
J. Nick Koston 4913034584 Merge branch 'esp8266-native-ninja-emission' into esp8266-arduino-toolchain 2026-09-23 22:54:17 +01:00
J. Nick Koston 1f94d0e904 Merge remote-tracking branch 'origin/dev' into esp8266-native-ninja-emission
# Conflicts:
#	esphome/build_gen/arduino8266.py
#	tests/unit_tests/build_gen/test_arduino8266.py
2026-09-23 22:54:13 +01:00