J. Nick Koston
746b294ed7
Harden idedata against non-list compile DBs and stale caches, blanket the size summary
...
A compile DB that parses as valid JSON but is not a list now raises
EsphomeError inside IDEDATA_BEST_EFFORT_ERRORS instead of a TypeError that
fails an already-linked build. Cached idedata is validated on read against
the write path's guarantees (dict shape, no launcher as compiler, include
union present) so caches from older versions regenerate instead of serving
degraded data, and the served copy is re-stamped with the current ELF path.
Response-file shape sentinels key on the output object rather than the
source file, so two objects built from one source keep both include sets.
The size summary mirrors the standalone hardening PR: a blank partition
size cell raises by name, and a blanket guard keeps unexpected nested
shapes from raising past a build that already linked.
2026-08-23 10:12:40 -05:00
J. Nick Koston
8230c16f12
Order the launcher strip before the empty guard, never dedupe rsp commands, harden the size summary
2026-08-22 23:21:04 -05:00
J. Nick Koston
48c6948ae8
Guard empty compile commands, refuse a compile DB with no ESPHome TU, share the launcher rejection
2026-08-22 22:39:16 -05:00
J. Nick Koston
dada0f2c2b
[core] Extract the shared idedata and size-summary helpers into build_helpers
2026-08-22 21:58:41 -05:00
J. Nick Koston
74bdf275d2
[core] Dump the main.cpp config comment with sorted keys ( #18653 )
2026-08-22 20:58:28 -05:00
J. Nick Koston
c062d0c717
[ota] Log prepare, upload, and total OTA timing in espota2 ( #18582 )
2026-08-22 20:57:13 -05:00
David van 't Wout
2ab09e1a77
[core] Add add_cmake_arg ( #18498 )
2026-08-20 12:30:33 -05:00
J. Nick Koston
a3ea77c2f1
[core] Keep templated !include filenames as strings so Windows path normalization cannot corrupt them ( #18549 )
2026-08-20 11:32:15 -05:00
J. Nick Koston
a8e721abeb
[esp32] Apply IDF component exclusions to native toolchain builds ( #18531 )
2026-08-20 10:03:49 -04:00
J. Nick Koston
132f494195
[nrf52] Rebuild the Python env when its interpreter symlink dangles ( #18540 )
2026-08-20 07:59:57 -04:00
470226ca03
[image] Restore defaults:/files: support for platform entries ( #18032 )
...
Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com >
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com >
Co-authored-by: J. Nick Koston <nick@koston.org >
2026-08-19 12:30:12 -05:00
J. Nick Koston
8b637b339b
[vscode] Report the origin of an unexpected exception during validation ( #18494 )
2026-08-18 19:37:10 -05:00
J. Nick Koston
4f866c563b
[platformio] Give the ccache wrapper a cmd.exe safe path ( #18495 )
2026-08-18 19:36:57 -05:00
Jesse Hills
463e3833da
[light] Replace rgb_order/is_rgbw/is_wrgb with channel_colors ( #18474 )
2026-08-18 13:19:48 +12:00
J. Nick Koston
de3e657d8b
[platformio] Skip ccache when the binary on PATH fails to run ( #18407 )
2026-08-16 08:42:47 -07:00
J. Nick Koston
b178f74e5d
[core] Save the validated config cache on the first upload or logs run ( #18367 )
2026-08-14 18:45:23 -07:00
Karl Beecken
617e2ec1e0
[core] fix PYTHONPATH leak ( #18360 )
2026-08-14 17:23:34 +12:00
J. Nick Koston
1afac0312d
[core] Restore cv.parse_esphome_version as a deprecated helper ( #18366 )
2026-08-14 17:22:22 +12:00
J. Nick Koston
dd51624fbb
[core] Partially revert "Hash entity keys from the raw name to fix collisions" ( #18361 )
2026-08-13 20:06:48 -05:00
J. Nick Koston
945c2458b3
[core] Load component aliases from a generated registry ( #18335 )
2026-08-13 13:31:19 -05:00
J. Nick Koston
7420d23867
[ota] Retry uploads that fail from network errors ( #18332 )
2026-08-13 13:31:06 -05:00
J. Nick Koston
8e624b4117
[core] Retry framework downloads on transient network errors ( #18330 )
2026-08-13 12:14:50 +12:00
J. Nick Koston
787a909aa4
[core] Don't block logs startup on MQTT IP discovery when addresses are known ( #18313 )
2026-08-13 12:11:32 +12:00
J. Nick Koston
22153be4cd
[core] Add esphome logs over web_server HTTP SSE ( #17110 )
2026-08-12 22:00:07 +12:00
J. Nick Koston
58a42fe5c2
[core] Batch remote file downloads during config validation ( #18069 )
2026-08-12 18:44:35 +12:00
J. Nick Koston
622942482c
[rp2] Size the lwIP segment pool and heap for concurrent senders ( #18257 )
2026-08-12 17:30:17 +12:00
J. Nick Koston
37eae9b466
[api] Gate the bluetooth connection messages on their own define ( #18281 )
2026-08-11 21:31:13 -05:00
Jesse Hills
3349046c5d
[rp2] Record the RP2350 die on generated board entries ( #18305 )
2026-08-12 01:56:05 +00:00
Jonathan Swoboda and J. Nick Koston
be5e28ea9e
[core] Warn when running a different source tree than the one you are in ( #18288 )
...
Co-authored-by: J. Nick Koston <nick@koston.org >
2026-08-11 21:06:57 -04:00
J. Nick Koston
94fbfa05de
[core] Show the out-of-flash tip instead of crashing the build ( #18280 )
2026-08-11 14:35:06 -05:00
J. Nick Koston
3ae651af7b
[core] Stop dropping complete lines behind an unfinished one ( #18279 )
2026-08-11 12:38:55 -05:00
J. Nick Koston
9938a2487d
[core] Show the last line when output stops without a newline ( #18265 )
2026-08-11 10:55:42 -05:00
J. Nick Koston
f3a5a9fbd5
[core] Retry transient git network failures with backoff ( #18242 )
2026-08-11 08:41:55 -05:00
J. Nick Koston
eefd2a00c7
[espidf] Flush the runner's output so dashboard builds stream ( #18264 )
2026-08-11 08:11:42 -05:00
J. Nick Koston
e8852c5950
[core] Flush stdout in safe_print so logs stream live ( #18261 )
2026-08-11 08:11:23 -05:00
Jesse Hills
f697cf2011
[api] Add DeviceCapabilities message for optional-feature flags ( #17984 )
2026-08-11 14:52:19 +12:00
J. Nick Koston
bae7f19323
[core] Extend '/' in names deprecation window to 2027.7.0 ( #18236 )
2026-08-10 11:32:02 -05:00
J. Nick Koston
f3d1fc0d64
[bluetooth_proxy] Migrate esp32 onto the neutral GATT backend ( #18198 )
2026-08-10 10:47:56 -05:00
J. Nick Koston
02fa18b74f
[core] Skip colorama init for terminal and dashboard runs ( #18224 )
2026-08-10 09:44:01 -05:00
J. Nick Koston
25cb440005
[core] Use Happy Eyeballs for remote file downloads ( #18050 )
2026-08-10 17:29:00 +12:00
J. Nick Koston
0f59ef36a9
[core] Store the validated-config cache as JSON to drop YAML off the upload fast path ( #18106 )
2026-08-10 17:26:41 +12:00
J. Nick Koston
73689f8d8b
[rp2] Limit pin validation to GPIO 0-29 on RP2350A boards ( #18102 )
2026-08-06 08:55:24 -05:00
J. Nick Koston
eb0fac9cbf
[core] Only snapshot the user config when esphome config --no-defaults asks for it ( #18113 )
2026-08-05 21:20:52 -05:00
J. Nick Koston
524b278811
[core] Defer stdlib imports out of the upload and logs fast path ( #18105 )
2026-08-05 19:09:00 -05:00
J. Nick Koston
b700193a0a
[core] Generalize the resolver's async thread dispatch into run_async ( #18088 )
2026-08-05 20:57:08 +00:00
J. Nick Koston
4fd2ddee55
[core] Trim the stacktrace gate commentary ( #18097 )
2026-08-05 20:50:48 +00:00
J. Nick Koston
a2d1f73bca
[core] Defer voluptuous and bundle imports out of the upload and logs fast path ( #18093 )
2026-08-05 20:39:19 +00:00
J. Nick Koston
253ecdd145
[core] Resolve the stacktrace decoder lazily behind an address gate ( #18048 )
2026-08-05 14:34:16 -05:00
J. Nick Koston
6bcbdd79c3
[core] Lift the log line processor into esphome/stacktrace.py ( #18076 )
2026-08-05 08:43:14 -05:00
Pete Keen
3d093c0ae8
[esp32_rmt_led_strip] Add RGBW channel ordering ( #18028 )
2026-08-05 07:57:59 -04:00