J. Nick Koston
7c58d26d13
[api] Add encode_progmem_string for progmem string fields
...
Generated code passes the ProgmemStringRef instead of spelling out the cast.
2026-10-08 20:17:55 -10:00
J. Nick Koston
88f7fc7454
Allow progmem on any string field and split the ProgmemStringRef tests
...
Long or unforced progmem strings encode through encode_progmem_bytes, which
API action strings need. The ProgmemStringRef tests move to their own file.
2026-10-08 20:04:18 -10:00
J. Nick Koston
13057b7ae3
Type the API progmem name field as ProgmemStringRef
...
Progmem string fields must take the short encode path, the outlined encode
helper takes a ProgmemStringRef, and the hasher test checks the Python value.
2026-10-08 18:22:29 -10:00
J. Nick Koston
afac871938
[api] Encode entity names straight from flash
...
Extend the progmem proto option to string fields and mark the entity info
name field with it, so ListEntities copies the name once instead of through
a stack buffer.
2026-10-08 17:58:37 -10:00
Jesse Hills
e03db60a52
[core] Add a DOMAIN constant to every component ( #20395 )
2026-10-08 14:04:26 -10:00
J. Nick Koston
b4bd95b2ac
[ci] Deal clang-tidy files across five shards ( #20411 )
2026-10-08 13:48:03 -10:00
J. Nick Koston
052f5a4cc6
[core] Declare component log tags with ESPHOME_LOG_TAG ( #20291 )
2026-10-08 07:24:17 -10:00
J. Nick Koston
7aeed8455e
[api] Add a progmem option for bytes fields kept in flash ( #20318 )
2026-10-08 16:24:27 +13:00
J. Nick Koston
3296bccd3c
[api] Keep the protobuf write cursor in a register and emit sub-message tags inline ( #20124 )
2026-10-07 10:08:25 -10:00
Bascht74
718b6651fe
[ci] Run pylint when its version, dependencies or configuration change ( #20202 )
2026-10-05 21:20:28 -05:00
J. Nick Koston
d970e9292e
[esphome][ota][core] Compress OTA uploads on ESP32, RP2040, LibreTiny and host ( #19037 )
2026-10-02 08:00:10 -05:00
J. Nick Koston
797682cccc
[espidf] Skip the lwip sources that compile to empty objects ( #20000 )
2026-10-02 07:59:52 -05:00
J. Nick Koston
8617368294
[espidf] Read the ESP-IDF version in process instead of starting idf_tools ( #19998 )
2026-10-01 19:48:00 -05:00
J. Nick Koston
7962b52d2a
[ci] Skip the bootloader in the component batch build jobs ( #19931 )
2026-10-01 14:05:15 -05:00
J. Nick Koston
0ed997da92
[espidf] Add --skip-bootloader for OTA only builds ( #19925 )
2026-10-01 13:55:30 -05:00
J. Nick Koston and Jonathan Swoboda
788d2bc631
[ci] Balance component test batches by estimated build time ( #19980 )
...
Co-authored-by: Jonathan Swoboda <154711427+swoboda1337@users.noreply.github.com >
2026-10-01 18:19:30 +00:00
J. Nick Koston
7e32770c5a
[ci] Pin SOURCE_DATE_EPOCH in the idf.py equivalence check ( #19970 )
2026-10-01 12:37:42 +00:00
J. Nick Koston
b8ba8aa1a8
[espidf] Run cmake and ninja directly instead of through idf.py ( #19871 )
2026-09-29 19:55:22 +02:00
J. Nick Koston
d31ffd4ca3
[esp32] Enable the precompiled header on the PlatformIO toolchain ( #19825 )
2026-09-28 19:41:59 +02:00
Jesse Hills and J. 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
b9dfae50c1
[ci] Compile esp8266 component tests with the native toolchain ( #19740 )
2026-09-27 12:09:06 +02:00
J. Nick Koston
b5b6d0bacd
[ci] Add the native ESP8266 compile smoke test ( #19714 )
2026-09-26 21:00:48 +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
211fd3ce54
[core] Dispatch controller updates through generated direct calls ( #19588 )
2026-09-24 17:24:10 +00: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
Jesse Hills
b0c9a7d5bd
[core] Lint duplicate UNIT_/CONF_ constants against both const homes ( #19422 )
2026-09-24 14:21:32 +01:00
J. Nick Koston and esphbot
8c3ebd3414
[docker] Drop the unused PlatformIO library preinstall ( #19504 )
...
Co-authored-by: esphbot <287758279+esphbot@users.noreply.github.com >
2026-09-23 12:14:04 +01:00
J. Nick Koston
91ab229086
[core] Lint bare string literal ternaries in ESP_LOG arguments ( #18908 )
2026-09-17 09:17:08 -05:00
Jesse Hills
4be8302190
[ci] Move skills to .agents/skills with .claude and .github symlinks ( #19369 )
2026-09-16 23:36:08 -05:00
J. Nick Koston
2f248390b2
[modbus] Remove disable_crc validation stub ( #19078 )
2026-09-17 09:53:35 +12:00
d824a32ef1
[uart_mux] New component to share a UART between a CDC-ACM bridge and local consumers ( #19066 )
...
Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com >
Co-authored-by: J. Nick Koston <nick@koston.org >
2026-09-15 20:32:15 -05:00
J. Nick Koston
4f0faac148
[core] Add FixedVector::try_init so callers can handle an exhausted heap ( #19253 )
2026-09-14 09:16:37 +12:00
ebb9037ea1
[bridge] New component and cdc_acm_uart platform ( #11689 )
...
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com >
Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com >
Co-authored-by: J. Nick Koston <nick@koston.org >
2026-09-11 22:08:23 -05:00
Jesse Hills
c66fa81208
[core] Consolidate setup scripts into a cross-platform setup.py ( #18856 )
2026-09-10 14:09:49 +12:00
J. Nick Koston
1ce0bed3f6
[core] Share compiled binaries across modbus integration tests ( #18945 )
2026-09-08 18:10:45 +02:00
Jesse Hills
1700a40b7c
[core] Restore the shared git hooks after post-checkout runs script/setup ( #19036 )
2026-09-08 19:59:55 +12:00
Jesse Hills and pre-commit-ci-lite[bot]
5e37872da2
[ci] Sync pre-commit revs and prek version from requirements files ( #19026 )
...
Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
2026-09-08 10:32:18 +12:00
Jesse Hills
d58b37faa1
[esp32_hosted] Add ESP-NOW-over-hosted shim for the ESP32-P4 ( #17712 )
2026-09-07 10:29:20 +12:00
Bonne Eggleston
afb0022dd0
[core] Lint: require braces around single ESP_LOG control-statement bodies ( #18727 )
2026-09-01 11:53:39 +12:00
J. Nick Koston
1ba1aebfa1
[ci] Balance integration test buckets by recorded durations ( #18895 )
2026-08-31 13:20:47 -05:00
J. Nick Koston
fc977b7b5e
[ci] Cache the integration test PlatformIO dir ( #18896 )
2026-08-30 17:34:32 -05:00
J. Nick Koston
ce163b8258
[ci] Cache clang-tidy idedata and key ESP-IDF cache on Python version ( #18868 )
2026-08-28 20:41:57 -05:00
Jesse Hills
2031be0c23
[core] Make script/setup idempotent and prepare new worktrees ( #18843 )
2026-08-28 14:11:38 +12:00
J. Nick Koston
a8094ed548
[docker] Parallelize the image's PlatformIO library preinstall ( #18777 )
2026-08-27 14:45:47 +12:00
J. Nick Koston
e53870085b
[improv_serial] Add uart bus support and host integration test ( #18794 )
2026-08-26 21:13:47 -05:00
J. Nick Koston
145373ed13
[api] Widen message type storage to uint16_t ( #18526 )
2026-08-25 18:04:41 +00:00