J. Nick Koston
b75f5034e5
[ota] Address remaining Copilot comments on partition-table OTA
...
- upload_program: allow MQTT/MQTTIP devices for --partition-table.
MQTTIP gets resolved to a real IP by _resolve_network_devices(), so
rejecting any non-NETWORK port_type was incorrect; only SERIAL and
BOOTSEL are non-OTA upload paths.
- update_partition_table: re-initialize NVS on every failure path past
nvs_flash_deinit() so components that survive a failed OTA aren't
left with broken NVS handles. Success path stays as-is because the
device reboots immediately afterwards.
Adds an MQTTIP upload test and refreshes the gate's comment.
2026-05-03 09:29:05 -05:00
J. Nick Koston
b788529ad7
[ota] Polish partition-table review feedback
...
Split the combined "missing app, otadata, or nvs" verify failure into
three separate ESP_LOGE messages so users can see which check failed,
trim trailing spaces from the (err=0x%X) log strings, and document why
the partition-table espota2 test mocks SERVER_FEATURE_SUPPORTS_COMPRESSION
(intentional protocol-path coverage; the real IDFOTABackend never sets it).
2026-05-03 09:17:40 -05:00
J. Nick Koston
51c5500809
[ota] Validate partition-table binary host-side before OTA
...
Read the resolved partition-table file in upload_program before opening
a network connection. Reject anything that isn't 0xC00 bytes, doesn't
start with ESP_PARTITION_MAGIC, or is missing the MD5 checksum entry, so
mistakes (wrong file, swapped --file path) surface as a local error
instead of a post-handshake OTA_RESPONSE_ERROR_PARTITION_TABLE_VERIFY.
Includes unit tests covering size, magic, md5-presence, missing-file,
and end-to-end upload_program rejection, plus three real partition
tables checked in as fixtures (ESPHome build, ESP-IDF Hello-world,
esphome_dashboard prebuilt).
2026-05-03 09:15:28 -05:00
Mat931
2dd8a9913b
Fix
2026-05-01 18:15:40 +02:00
pre-commit-ci-lite[bot]
2068d114eb
[pre-commit.ci lite] apply automatic fixes
2026-05-01 16:02:30 +00:00
Mat931
015decce4d
Merge branch 'dev' into partition-table-ota
2026-05-01 16:01:01 +00:00
Mat931
58cb7effd4
[ota] Add extended OTA protocol ( #16164 )
...
Co-authored-by: J. Nick Koston <nick@home-assistant.io >
2026-05-01 10:40:14 -05:00
Mat931
f94ed42ae8
Merge branch 'dev' into partition-table-ota
2026-05-01 09:12:48 +00:00
Kevin Ahrendt
faa61696e0
[sendspin] Use sendspin-cpp to v0.4.0 to reduce stuttering ( #16178 )
2026-04-30 20:43:24 -05:00
J. Nick Koston
3d69169141
[climate] Fold ControlAction fields into a single stateless lambda ( #16044 )
2026-04-30 19:16:16 -05:00
J. Nick Koston
148d478dec
[api] Add encode/decode benchmarks for Z-Wave, IR/RF, and serial proxy messages ( #16157 )
2026-04-30 19:14:20 -05:00
J. Nick Koston
2fbfb4c385
[ci] Split integration tests into 3 buckets when count is more than 10 ( #16152 )
2026-04-30 19:10:53 -05:00
Kevin Ahrendt
a8b0133ec1
[audio] Enable specific codecs and configure advanced features ( #16166 )
2026-04-30 08:49:28 -04:00
Mat931
dc919e5e84
Merge branch 'dev' into partition-table-ota
2026-04-30 08:05:55 +00:00
Jesse Hills
e127268dac
[core] Strip \\?\ prefix from sys.executable for PlatformIO subprocess ( #16158 )
2026-04-30 16:04:52 +12:00
J. Nick Koston
c293869e6e
Merge branch 'dev' into partition-table-ota
2026-04-29 14:33:22 -05:00
J. Nick Koston
8fd9af7f2a
fix tests
2026-04-29 14:32:59 -05:00
J. Nick Koston
c41f38e16d
[scheduler] Add self-keyed timer API for callers without a Component ( #16127 )
2026-04-29 13:24:37 -05:00
J. Nick Koston
985dba9332
[core] Defer heavy module-scope imports in __main__, loader, and config ( #15955 )
2026-04-29 13:17:59 -05:00
J. Nick Koston
44cabc191d
[core] Catch body-read errors in download_content ( #16023 )
2026-04-29 14:06:41 -04:00
J. Nick Koston
e5b1991cf7
[fan] Add tests for fan.turn_on action field combinations ( #16125 )
2026-04-29 12:46:06 -05:00
J. Nick Koston
7fba57ce51
[valve] Add tests for valve.control action field combinations ( #16126 )
2026-04-29 12:45:30 -05:00
Jonathan Swoboda
42b8597719
[api] Extend NOLINT to cover bugprone-random-generator-seed in MAC varint test ( #16120 )
2026-04-29 13:58:19 +00:00
Mat931
f1d917a4af
Merge branch 'dev' into partition-table-ota
2026-04-29 10:26:31 +00:00
J. Nick Koston
8ceada8d04
[core] Download external_files in parallel ( #16021 )
2026-04-29 14:32:30 +12:00
J. Nick Koston
49c7a6928e
[script] Fix cpp_unit_test crash for non-MULTI_CONF platform components ( #16104 )
2026-04-29 14:32:13 +12:00
J. Nick Koston
2fce71e0d4
[wifi] Add phy_mode option for ESP8266 ( #16055 )
2026-04-29 14:31:07 +12:00
J. Nick Koston
80251c54be
[climate] Add climate.control coverage to component tests via thermostat ( #16052 )
2026-04-29 14:27:56 +12:00
J. Nick Koston
0d51a122d0
[cover] Add cover.control / cover.template.publish coverage to template tests ( #16051 )
2026-04-29 14:27:40 +12:00
J. Nick Koston
5a33c50015
[light] Use constexpr template for DimRelativeAction transition_length ( #16038 )
2026-04-29 14:26:38 +12:00
J. Nick Koston
0d150dc57e
[light] Use constexpr template for ToggleAction transition_length ( #16037 )
2026-04-29 14:25:18 +12:00
J. Nick Koston
592486ae9a
[analyze_memory] Attribute main.cpp setup()/loop() to esphome core ( #16033 )
2026-04-29 14:06:54 +12:00
J. Nick Koston
eec770d622
[core] Use ETag in external_files cache to fix re-downloads from raw.githubusercontent.com ( #16020 )
2026-04-29 13:52:09 +12:00
J. Nick Koston
d7b21a84a3
[git] Make ref fetches and submodule updates shallow ( #16014 )
2026-04-29 13:49:51 +12:00
J. Nick Koston
f05243bd9d
[api] Add 48-bit MAC address varint fast path for BLE advertisements ( #15988 )
2026-04-29 13:48:35 +12:00
J. Nick Koston
676f26919e
[mdns] Drive MDNS.update() polling from IP state events on ESP8266/RP2040 ( #15961 )
2026-04-29 13:02:21 +12:00
Clyde Stubbs
0b5835284a
[lvgl] Additional layout features ( #16041 )
2026-04-29 12:35:24 +12:00
Clyde Stubbs
8157c721a5
[mapping] Implement default value ( #15861 )
2026-04-29 06:31:37 +10:00
tomaszduda23
6b3df66bdc
[nrf52] make reset pin optional ( #11684 )
...
Co-authored-by: J. Nick Koston <nick@home-assistant.io >
2026-04-28 12:20:38 -05:00
Bonne Eggleston
52e8c50f45
[modbus] Split modbus_server from modbus_controller ( #15509 )
...
Co-authored-by: J. Nick Koston <nick+github@koston.org >
2026-04-28 10:21:25 -05:00
J. Nick Koston
0a4d9b430f
[ci] Add import-time regression check for esphome.__main__ ( #15954 )
2026-04-28 14:05:12 +00:00
J. Nick Koston
0759a3c681
[core] Split wake.{h,cpp} into per-platform files ( #15978 )
2026-04-28 08:48:13 -05:00
Clyde Stubbs
52f80618d4
[lvgl] Allow a binary sensor to report checked or pressed state ( #16073 )
...
Co-authored-by: J. Nick Koston <nick+github@koston.org >
2026-04-28 22:00:29 +10:00
Darafei Praliaskouski
41458d72e0
[esp32] Make Arduino app metadata reproducible ( #16053 )
2026-04-28 05:58:34 -05:00
J. Nick Koston
39a69385fb
[image] Fix RGB565+alpha rendering for multi-frame animations ( #16017 )
...
Co-authored-by: Claude <noreply@anthropic.com >
2026-04-28 12:57:42 +12:00
Mat931
35a54cec14
Merge branch 'dev' into partition-table-ota
2026-04-27 16:19:38 +00:00
J. Nick Koston
79b741b8dc
[core] Combine entity register + configure_entity_ into one call ( #16030 )
2026-04-27 03:03:39 +00:00
tomaszduda23
112646a9c4
[zigbee] add router for nrf52 ( #16034 )
2026-04-26 23:02:09 -04:00
J. Nick Koston
2e096bb036
[core] Combine set_component_source_ + register_component_ into one call ( #16029 )
2026-04-26 21:54:15 -05:00
pre-commit-ci-lite[bot]
51baefcd24
[pre-commit.ci lite] apply automatic fixes
2026-04-26 16:08:49 +00:00