J. Nick Koston
bc2a811568
[core] Skip !secret and !lambda in legacy fallback regex
...
Address reviewer feedback:
- legacy regex was wrapping password: !secret name and clobbering
the dumper's user-friendly !secret round-trip; extend the negative
lookahead to skip !secret (and !lambda) values entirely
- drop the in-replacement !lambda check now that the lookahead handles it
- reword the thread-safety claim in dump() since _SECRET_VALUES /
_SECRET_CACHE remain module globals
- reword the SensitiveStr representer registration comment to reflect
PyYAML's MRO-walked dispatch rather than registration order
- tighten the legacy regex comment
Adds tests for the !secret and !lambda skip paths.
2026-05-26 22:23:40 -05:00
J. Nick Koston
6d689e8297
[core] Suppress deprecation warning for lambda values in tagged fields
...
Lambda values in cv.sensitive(cv.templatable(...)) fields still hit the
legacy regex because Lambda isn't a str and therefore doesn't carry the
SensitiveStr tag. The field IS tagged correctly; warning the author to
add cv.sensitive would be misleading. Still wrap the first line so the
user-visible output matches the prior regex.
2026-05-26 22:18:09 -05:00
J. Nick Koston
e358b8328f
[core] Cover command_config redaction wiring
...
Add two tests that exercise command_config end-to-end: one confirms the
legacy fallback wraps an unmarked sensitive field, the other confirms
--show-secrets bypasses redaction. Closes the patch-coverage gap on the
'output = _redact_with_legacy_fallback(output)' line.
2026-05-26 22:13:49 -05:00
J. Nick Koston
27385cee32
[core] Tighten legacy redaction regex to avoid mid-word matches
...
The trailing \w* after the fragment over-matched fields like
key_value_pair: which the prior regex did not catch. Drop it so the
fragment must end the captured field name, preserving the previous
matching scope while still capturing the full field name (via the
leading \w*) for the warning message.
2026-05-26 22:06:25 -05:00
J. Nick Koston
2e53a226a3
[core] Keep legacy redaction regex as deprecation fallback
...
Restore the substring regex as a second pass in command_config so
sensitive-shaped fields that haven't been tagged with cv.sensitive(...)
yet are still redacted. Each unique unmarked field name caught by the
heuristic emits a one-time deprecation warning naming the field and the
fix; the fallback itself is slated for removal in 2026.12.0.
2026-05-26 21:55:35 -05:00
J. Nick Koston
489cf483d0
[core] Enable ruff PYI (flake8-pyi) lint family ( #16654 )
2026-05-25 20:55:35 -05:00
76d3433425
[cli] Add config-hash command ( #15548 )
...
Co-authored-by: J. Nick Koston <nick@koston.org >
Co-authored-by: J. Nick Koston <nick@home-assistant.io >
2026-05-12 20:43:48 +00:00
Clyde Stubbs
4ff946ac15
[cli] Add --no-states flag to run command ( #16366 )
2026-05-12 07:52:07 -04:00
Jonathan Swoboda
e4d9786f00
[core] Move platformio files to subfolder ( #16347 )
2026-05-11 21:34:47 +12:00
e9cc10fedc
[core] Native idf full support ( #14678 )
...
Co-authored-by: Jonathan Swoboda <154711427+swoboda1337@users.noreply.github.com >
Co-authored-by: Jonathan Swoboda <swoboda1337@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: Jesse Hills <3060199+jesserockz@users.noreply.github.com >
2026-05-11 02:12:07 +00:00
J. Nick Koston
66e2dcffc4
[cli] Tighten command_rename: scoped name rewrite, target-collision check ( #16296 )
2026-05-11 13:00:09 +12:00
1365251365
[ota] Add bootloader update functionality to ota component ( #16238 )
...
Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
Co-authored-by: J. Nick Koston <nick@home-assistant.io >
2026-05-08 21:36:06 +00:00
J. Nick Koston
85f33978e7
[core] Skip external component update on esphome clean ( #16268 )
2026-05-06 07:23:35 -04:00
J. Nick Koston
f30ad588ea
[cli] Add --ota-platform flag to pick web_server or native API OTA ( #16207 )
2026-05-05 18:25:53 -05:00
Diorcet Yann
690a197346
[main] Move stacktrace handling out of platformio_api and FlashImage into platform components/util ( #16186 )
2026-05-04 15:07:31 -04:00
7cfab58a05
[ota] Add partition table update functionality to ota component ( #15780 )
...
Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
Co-authored-by: J. Nick Koston <nick@home-assistant.io >
Co-authored-by: J. Nick Koston <nick@koston.org >
2026-05-03 19:42:10 -05:00
Mat931 and J. Nick Koston
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
J. Nick Koston
985dba9332
[core] Defer heavy module-scope imports in __main__, loader, and config ( #15955 )
2026-04-29 13:17:59 -05:00
Paulus Schoutsen
9b45b046a8
[core] Allow finding all devices as target that match mac suffix ( #13135 )
2026-04-23 08:43:32 -05:00
J. Nick Koston and Copilot Autofix powered by AI
edb16a27d3
[esphome] Skip missing extra flash images in upload_using_esptool ( #15723 )
...
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com >
2026-04-13 16:58:48 -10:00
J. Nick Koston
ef6c65c7ec
[cli] Add config bundle CLI command for remote compilation ( #13791 )
2026-04-07 10:37:19 -10:00
J. Nick Koston
a22d47c719
[api] Add --no-states flag to esphome logs command ( #15160 )
2026-03-25 07:36:53 -10:00
J. Nick Koston
3e845d387a
[tests] Fix test_show_logs_serial taking 30s due to unmocked serial port wait ( #14903 )
2026-03-17 14:44:17 -10:00
J. Nick Koston and Claude Opus 4.6
6356e3def9
[core] Warn on crystal frequency mismatch during serial upload ( #14582 )
...
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-10 20:42:38 +00:00
J. Nick Koston
2c7ef4f758
[rp2040] Use picotool for BOOTSEL upload and improve upload UX ( #14483 )
2026-03-10 09:10:33 -10:00
tomaszduda23
48ba007c22
[nrf52] print line number after crash in logs ( #14165 )
2026-02-21 14:16:20 -05:00
Jonathan Swoboda and Claude Opus 4.5
8e461db301
[ota] Fix CLI upload option shown when only http_request platform configured ( #13784 )
...
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com >
2026-02-06 04:09:48 -05:00
Jonathan Swoboda and Claude Opus 4.5
1996bc425f
[core] Fix state leakage and module caching when processing multiple configurations ( #13368 )
...
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com >
2026-01-19 14:46:24 -05:00
J. Nick Koston
b7dbda497a
[core] Improve log timestamp accuracy by batching serial reads ( #12750 )
2026-01-07 08:28:31 -10:00
J. Nick Koston
39526e5360
[analyze-memory] Add RAM symbol analysis by component ( #13040 )
2026-01-07 08:24:44 -10:00
9de7df7b5b
Add build info to image ( #12425 )
...
Co-authored-by: J. Nick Koston <nick+github@koston.org >
Co-authored-by: J. Nick Koston <nick@home-assistant.io >
Co-authored-by: J. Nick Koston <nick@koston.org >
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-12-18 00:06:52 +00:00
Jesse Hills
7fd79fdded
[esp32] Change imports to use esp32 only, not .const ( #12243 )
2025-12-05 09:53:08 -05:00
J. Nick Koston
101103c666
[core] Add RAM strings and symbols analysis to analyze-memory command ( #12161 )
2025-12-02 10:02:09 -06:00
J. Nick Koston and Copilot
769137fc09
[mqtt] Fix crash with empty broker during upload/logs ( #11866 )
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-11-13 13:40:26 +13:00
Markus
077cce9848
[core] .local addresses are only resolvable if mDNS is enabled ( #11508 )
2025-10-30 10:08:08 -05:00
J. Nick Koston and Copilot
6a18367949
[cli] Add analyze-memory command ( #11395 )
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-10-20 14:26:37 +13:00
J. Nick Koston
e993312640
[core] Fix IndexError when OTA devices cannot be resolved ( #11311 )
2025-10-20 08:15:47 +13:00
J. Nick Koston
fe4857fabb
[tests] Fix OTA password test assertions after merge collision ( #11275 )
2025-10-16 13:28:19 +13:00
Jesse Hills
3054c2bc29
[ota.esphome] Handle blank password the same as no password defined ( #11271 )
2025-10-16 13:07:37 +13:00
J. Nick Koston
b190f37ae7
[ota] Fix MQTT resolution when static IP appears first in device list ( #11272 )
2025-10-16 13:06:02 +13:00
J. Nick Koston
9fb254fdc2
Fix log retrieval with FQDN when mDNS is disabled ( #11202 )
2025-10-14 10:23:44 +13:00
Jonathan Swoboda
74f09a2b59
[core] Rename to clean-platform to clean-all ( #10876 )
2025-09-25 11:55:43 -04:00
Jonathan Swoboda
3cb2a4569c
[core] Add a clean-platform option ( #10831 )
2025-09-23 12:41:25 -04:00
J. Nick Koston
0432a10543
Add coverage for Path to str fix in #10807 ( #10808 )
2025-09-22 08:59:19 +12:00
J. Nick Koston
4729bc87fa
[core] Fix TypeError in update-all command after Path migration ( #10821 )
2025-09-21 13:07:27 -04:00
9ea3643b74
[core] os.path -> Path ( #10654 )
...
Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
Co-authored-by: J. Nick Koston <nick@koston.org >
Co-authored-by: J. Nick Koston <nick@home-assistant.io >
2025-09-19 12:59:48 +00:00
J. Nick Koston
11c595bb09
[mqtt] Fix KeyError when MQTT logging configured without explicit level ( #10774 )
2025-09-18 07:38:02 +12:00
d3592c451b
[core] fix upload to device via MQTT IP lookup (e.g. when mDNS is disable) ( #10632 )
...
Co-authored-by: J. Nick Koston <nick@koston.org >
Co-authored-by: J. Nick Koston <nick@home-assistant.io >
Co-authored-by: J. Nick Koston <nick+github@koston.org >
2025-09-12 16:31:53 -05:00
J. Nick Koston and Copilot
24eb33a1c0
Add additional dashboard and main tests ( #10688 )
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-09-13 09:04:56 +12:00
J. Nick Koston
4813c5134e
[tests] Add upload_program and show_logs test coverage to prevent regressions ( #10684 )
2025-09-12 17:04:22 +12:00