J. Nick Koston
fd7e340e81
Type-hint the to_code test stub
2026-08-22 14:54:39 -05:00
J. Nick Koston
84a8ac3772
Use a docstring instead of pass in the to_code test stub
2026-08-22 14:54:24 -05:00
J. Nick Koston
4a459e3d0d
Lift the remaining function-local imports in test_main to top level
2026-08-22 14:52:38 -05:00
J. Nick Koston
3b091676bf
Drop the unreachable nameless-dependency check in the walk
...
normalize_dependencies guarantees every entry carries a non-empty
string name, so only the version can be absent.
2026-08-22 14:49:39 -05:00
J. Nick Koston
121795fa8d
Trim comment and docstring essays
2026-08-22 14:44:12 -05:00
J. Nick Koston
dbd6f323c0
Extract the build-info staleness check so its branches are testable
...
copy_src_tree is always mocked in the writer tests, so the new
missing/stale/unreadable debug branches were unreachable; the decision
moves into _build_info_stale with a test covering every branch.
2026-08-22 14:41:30 -05:00
J. Nick Koston
11875ec040
Dump the main.cpp config comment with sorted keys
...
voluptuous fills schema defaults in set-iteration order, so the
validated dict's key order changes with the process hash seed; the
unsorted dump churned the comment block in main.cpp and relinked the
firmware on every esphome run for any config using a defaults-heavy
action (logger.log in a button's on_press was enough). Affects the
PlatformIO path identically.
2026-08-22 14:37:42 -05:00
J. Nick Koston
afeb1a5ea1
Name the changed source when the writer flags a rebuild
...
Every sources_changed site now logs which file (or which build-info
staleness) triggered it, so a config that relinks on every run can be
diagnosed from one -v compile instead of diffing the build tree.
2026-08-22 14:31:36 -05:00
J. Nick Koston
fb06b4d631
Download a wave of registry libraries in parallel
...
The walk now drains its frontier, prefetches the wave's registry
archives with a small thread pool (deduped by URL, progress bars
suppressed per thread since parallel bars would interleave), and then
processes the wave sequentially; the sequential download() call stays
authoritative so failures surface with resume exactly as before. Same
approach as the espidf tool prefetch in #18513 .
2026-08-22 14:10:40 -05:00
J. Nick Koston
65609bb94b
Move the backend-agnostic library hardening down from the arduino backend PR
...
The typed IncompatiblePlatform exception, dependency_is_usable,
warn_properties_depends, the lex_build_flags helper (espidf switches to
it), the normalize_dependencies validation, the manifest shape check,
the component-level drop-warning split, and the SCons case-sensitive
.C/.C++ suffixes all harden the shared converter independently of the
arduino backend, so they belong in this PR; the provides hook and the
version-less reconciliation stay with the backend that needs them.
2026-08-22 12:46:16 -05:00
J. Nick Koston
f71867ed2d
Merge remote-tracking branch 'origin/dev' into esp8266-native-shared-helpers
2026-08-22 12:15:30 -05:00
J. Nick Koston
e99e0cc8b8
Trim comment essays and hoist function-local test imports
2026-08-22 11:34:32 -05:00
Oliver Kleinecke and p1ngb4ck
d119ad6c60
[usb_uart] Extract non-final USBUartChannelBase from USBUartChannel ( #17472 )
...
Co-authored-by: p1ngb4ck <p@local>
2026-08-22 10:47:46 -05:00
esphome[bot]
74fc2e367a
Bump bundled esphome-device-builder to 1.12.4 ( #18651 )
2026-08-22 15:42:53 +00:00
Jesse Hills and Jonathan Swoboda
ea10f94376
[core] Add type annotations to component Python (10/11) ( #18347 )
...
Co-authored-by: Jonathan Swoboda <154711427+swoboda1337@users.noreply.github.com >
2026-08-22 10:31:47 -05:00
ef1d77885d
[captive_portal] Show each network once in the scan list ( #17847 )
...
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: Bluetooth Devices Bot <bluetooth@koston.org >
2026-08-22 05:04:08 +00:00
Keith Burzinski
dccf55eadc
[remote_transmitter] Use hardware PWM on rtl87xx to fix watchdog crash ( #18579 )
2026-08-21 23:53:16 -05:00
Boris Krivonog and J. Nick Koston
65704e881f
[mitsubishi_cn105] Add Fahrenheit support ( #15488 )
...
Co-authored-by: J. Nick Koston <nick@koston.org >
2026-08-21 23:52:18 -05:00
Brandon Harvey
a30e82459f
[deep_sleep] Reject wakeup_pin_mode at both levels on BK72xx ( #18615 )
2026-08-21 23:51:19 -05:00
Brandon Harvey
5a300e92f1
[wifi] Inline the trivial WiFiScanResult accessors ( #18613 )
2026-08-22 04:14:56 +00:00
Keith Burzinski and J. Nick Koston
8e9fb0f93c
[remote_transmitter] Fix repeat gap timing on LibreTiny Beken ( #18585 )
...
Co-authored-by: J. Nick Koston <nick@koston.org >
2026-08-21 23:10:47 -05:00
esphome[bot]
11ea819bc7
Bump aioesphomeapi from 45.12.0 to 45.13.1 ( #18600 )
2026-08-21 14:36:47 -05:00
esphome[bot]
abc9098bd8
Bump bundled esphome-device-builder to 1.12.3 ( #18601 )
2026-08-21 14:05:00 -05:00
Kevin Ahrendt
00cffa09a2
[sendspin] Convert tests to package-style includes ( #18588 )
2026-08-21 13:05:07 -05:00
Jesse Hills
aa944456e0
[core] Add type annotations to component Python (6/11) ( #18343 )
2026-08-21 11:11:52 -05:00
Jonathan Swoboda
409d74a48d
[esp32_hosted] Fire on_update_available trigger when update is detected ( #18591 )
2026-08-21 11:53:44 -04:00
7957808f00
[emontx] Fix sensor state_class defaults not being applied correctly ( #17610 )
...
Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-08-21 09:57:58 -05:00
J. Nick Koston
2c229debe8
Best-effort bad encodings, dedupe append warnings, tolerate structurally odd compile DBs
2026-08-20 21:09:38 -05:00
J. Nick Koston
6b6344b454
Cover the healthy post-compile idedata path
2026-08-20 20:53:30 -05:00
J. Nick Koston
73ab04330e
Treat sys.exit(0) as script success, fail on an unreadable declared script
2026-08-20 20:48:30 -05:00
J. Nick Koston
91eed262c8
Repr zero-arg script exceptions, surface a None idedata after an IDF build
2026-08-20 20:46:15 -05:00
J. Nick Koston
c95e0b90f5
Raise on a traversing extraScript, survive sys.exit in vendored scripts, fix the caveats wording
2026-08-20 19:51:26 -05:00
J. Nick Koston
5cf2135038
Cover the warn-once dedup branch
2026-08-20 19:29:27 -05:00
J. Nick Koston
5bd328e6c4
Fail on a declared-but-absent extraScript, warn once per unsupported env method, split and widen tests
2026-08-20 19:25:33 -05:00
J. Nick Koston
ef2f16713a
Widen the post-compile idedata guard to every failure the comment promises
2026-08-20 19:02:35 -05:00
J. Nick Koston
790c6d6353
Drop the never-hitting parse memo, guard the post-compile idedata refresh, pin the kind map
2026-08-20 18:40:29 -05:00
J. Nick Koston
bc6b997350
Restore the lazy shlex import, pin the probe convention, assert the shim diagnostics
2026-08-20 18:17:56 -05:00
J. Nick Koston
52bfc0efb1
[espnow] Fix dump_config crash when enable_on_boot is false ( #18572 )
2026-08-20 18:06:23 -05:00
J. Nick Koston
9b12934307
Reject a launcher compile DB by name before the probe, discard partial script captures, log dropped env keys
2026-08-20 17:52:54 -05:00
J. Nick Koston
d33a097152
Name every skipped size line, best-effort script compile, unusable idedata returns None
2026-08-20 17:29:47 -05:00
guillempages and J. Nick Koston
46f90d0c54
[core] Add portable strcasestr implementation named str_contains_ignore_case ( #18497 )
...
Co-authored-by: J. Nick Koston <nick@koston.org >
2026-08-20 17:28:17 -05:00
5177972c04
[runtime_image] keep decoder allocated ( #18488 )
...
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-08-20 17:27:44 -05:00
J. Nick Koston
466f890e1f
Clean errors for non-string flags, visible size-summary skips, partial extra-script capture
2026-08-20 17:12:19 -05:00
esphome[bot]
ece90ee97b
Bump bundled esphome-device-builder to 1.12.2 ( #18573 )
2026-08-20 16:59:30 -05:00
J. Nick Koston
4ab2a7ba98
Join flag args per entry like ParseFlags, pin the launcher strip log, record the asm merge decision
2026-08-20 16:54:28 -05:00
J. Nick Koston
a0f0ad8729
Restore the underscore in test_parse_library_json
2026-08-20 16:30:13 -05:00
J. Nick Koston
57a9c71da8
Cover the malformed build.flags rejection
2026-08-20 16:25:47 -05:00
J. Nick Koston
1483b7c10b
Detect launchers by a closed denylist instead of guessing compiler names
2026-08-20 16:24:21 -05:00
J. Nick Koston
7fe0847e5c
Update espidf test to the public parse_library_json name
2026-08-20 16:13:19 -05:00
J. Nick Koston
80815f1dc7
Make parse_library_json public alongside its properties sibling
2026-08-20 16:12:52 -05:00