J. Nick Koston
ac259c1565
[rp2] Address review: correct the sizing numbers and pin the invariants
...
Segment pool entries are 20 bytes on this build, not the nominal 16 that
struct tcp_seg suggests; the comment now quotes the measured figure.
The MEM_SIZE justification did not close as written: two connections at
~6KB each is ~12KB, which fits inside the old 16KB heap. The missing
term is that mem.c is first-fit, so what has to be free is a contiguous
1.5KB block, and at 75% occupancy interleaved with ARP, DHCP/DNS and
mDNS allocations the largest run collapses long before the total does.
That is also why the failure looked intermittent. Spelled out in both
the Python comment and the header template.
Hoist the lwIP sizing values to module constants so the two numeric
invariants can be tested: the segment pool must stay above the per-PCB
send queue, and MEM_SIZE must stay under 64000 or lwIP widens
mem_size_t to u32_t. Both were previously enforced by prose alone, and
the first would silently rebuild the starvation this change removes.
The generated header is byte identical.
2026-08-10 22:33:58 -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
J. Nick Koston
112d8b26ee
[core] Skip source range tracking when loading the validated config cache ( #18046 )
2026-08-04 21:24:38 -05:00
J. Nick Koston
d47acf5d0b
[core] Read the mqtt IP discovery flag without importing the mqtt component ( #18066 )
2026-08-04 15:12:57 -05:00
J. Nick Koston
79a305d69a
[core] Drop the duplicate ESPHome version parser ( #18065 )
2026-08-04 14:48:39 -05:00
J. Nick Koston
d344fd74d1
[core] Read the esp32 variant for esptool without importing the esp32 package ( #18067 )
2026-08-04 19:47:07 +00:00
J. Nick Koston
68640f8074
[core] Shared slot count factory for codegen sized listener storage ( #18057 )
2026-08-04 19:46:44 +00:00
J. Nick Koston
342f3d6994
[core] Share the stacktrace analyzer resolution in platform_hooks ( #18075 )
2026-08-04 14:38:28 -05:00
J. Nick Koston
a904426431
[core] Unbind the esp-idf toolchain from the esp32 component package ( #18068 )
2026-08-04 14:38:10 -05:00
J. Nick Koston
5abd100b53
[core] Resolve platform CLI hooks from a registry instead of importing the platform package ( #18044 )
2026-08-04 11:08:56 -05:00
J. Nick Koston
adb86a052c
[core] Ship secrets referenced by remote package files in config bundles ( #18053 )
2026-08-04 11:05:52 -05:00
J. Nick Koston
c2ddc17063
[libretiny] Give each platform its own CONFIG_SCHEMA instance ( #18056 )
2026-08-04 11:05:04 -05:00
J. Nick Koston
1b3891866c
[core] Parse stored framework versions without importing the validation stack ( #18045 )
2026-08-03 20:59:38 -05:00
Jonathan Swoboda
735c64d138
[core] Support local library directories via file:// on the native toolchain ( #18005 )
2026-08-03 21:48:57 -04:00
J. Nick Koston
4f67932e0d
[substitutions][core] Expand templated !include paths to on-disk candidates during bundle discovery ( #17647 )
2026-08-03 20:48:11 -05:00
J. Nick Koston
a1c2983394
[core] Hash entity keys from the raw name to fix collisions ( #17949 )
2026-08-03 20:05:25 -05:00
J. Nick Koston
4424af8c5b
[api] Move runtime log client out of the component package ( #18043 )
2026-08-03 19:57:52 -05:00
J. Nick Koston
e8dadf2852
[esp32] Flag crash records captured by a different firmware build ( #17770 )
2026-08-03 19:56:20 -05:00
d6ad1560fa
[nrf52] feat: add support for zephyr pwm ( #16483 )
...
Co-authored-by: Jonathan Swoboda <154711427+swoboda1337@users.noreply.github.com >
Co-authored-by: tomaszduda23 <tomaszduda23@gmail.com >
2026-08-02 21:16:21 +00:00
Jonathan Swoboda and J. Nick Koston
44f08d15db
[espidf] Use forward slashes in generated component CMakeLists ( #17965 )
...
Co-authored-by: J. Nick Koston <nick@koston.org >
2026-07-30 20:34:04 -04:00
J. Nick Koston
963a3379a6
[core] Log when a git source update is skipped and when it will next refresh ( #17943 )
2026-07-30 13:06:32 -10:00
J. Nick Koston
4951f4fc2e
[git] Fix device adoption failing on first attempt: lock the clone cache against concurrent resolutions ( #17923 )
2026-07-30 11:44:12 -10:00
Jesse Hills
c23a107a87
[config_validation] Add underscore/hyphen normalization to one_of ( #17792 )
2026-07-30 18:36:28 +12:00
J. Nick Koston
ca1f89e500
[ci] Enable the ruff rule requiring explicit encoding on text file I/O ( #17897 )
2026-07-29 13:44:39 -04:00
Brandon Harvey
227f1d3842
[core] Reject configs that set both keys in cv.rename_key ( #17916 )
2026-07-28 22:32:59 -04:00
Brandon Harvey
f1f8b102e2
[core] Add optional deprecation warning to cv.rename_key ( #17740 )
2026-07-27 22:10:34 -04:00
0959141f88
[nrf52] Clone the sdk-nrf manifest repository shallow ( #17892 )
...
Co-authored-by: esphbot <esphome@openhomefoundation.org >
Co-authored-by: Jonathan Swoboda <154711427+swoboda1337@users.noreply.github.com >
2026-07-27 19:58:50 -04:00
J. Nick Koston
700c0b0460
[esp8266] Speed up builds with ccache when available ( #17722 )
2026-07-27 08:42:52 -10:00
J. Nick Koston
c0aa121c3d
[espidf] Install only the toolchains for the variants being built ( #17688 )
2026-07-27 08:39:03 -10:00
dependabot[bot] and Jonathan Swoboda
345bd11a2c
Bump ruff from 0.15.22 to 0.16.0 ( #17818 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Jonathan Swoboda <154711427+swoboda1337@users.noreply.github.com >
2026-07-27 12:08:51 -04:00
J. Nick Koston
43526a815e
[git] Fix submodule update failure when cloning libraries on the esp-idf toolchain ( #17862 )
2026-07-27 19:42:21 +12:00
Rui Marinho
ed066cf0fe
[espidf] Include .cc, .cxx and .c++ sources in the app source glob ( #17754 )
2026-07-27 10:34:29 +12:00
J. Nick Koston and copilot-swe-agent[bot]
9dd7dcb06d
[espidf] Also skip installing gdb and ULP toolchains ESPHome never runs ( #17687 )
...
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com >
2026-07-25 20:07:14 -10:00
J. Nick Koston
e0644ab20a
[esp32] Capture fault address and raw cause in crash handler ( #17769 )
2026-07-25 18:12:53 -10:00
Jonathan Swoboda
7fbb647c65
[espidf] Honor compile_process_limit in native ESP-IDF builds ( #17857 )
2026-07-25 23:59:33 -04:00
J. Nick Koston
98c6fa294a
[bundle] Remap absolute file paths when compiling an extracted bundle ( #17765 )
2026-07-23 11:28:22 +12:00