Jesse Hills
7b2e2850f2
Make the setup tests pass on Windows
...
The tests assumed a POSIX host, but pytest also runs on windows-latest.
Both path flavours are now built with PurePosixPath and PureWindowsPath,
which work on either host, the bin/Scripts layout is asserted against the
host, and the executable bit is only checked where it exists.
Also drops the trailing separator from PATH when PATH is unset, since an
empty entry makes Unix search the working directory for executables.
2026-09-01 08:58:51 +12:00
Jesse Hills
f8ea4873b6
[core] Consolidate setup scripts into a cross-platform setup.py
...
script/setup and script/setup.bat implemented the same workflow and were
kept in sync by hand, which had already drifted: the worktree hook fix in
#18843 landed in the bash script only. Both are now thin wrappers around
script/setup.py, so there is one implementation to maintain.
The post-checkout hook also checks for a venv/Scripts layout before doing
anything, so a branch switch on Windows can no longer clear a working
virtual environment.
2026-08-28 20:00:49 +12:00
Jesse Hills
2031be0c23
[core] Make script/setup idempotent and prepare new worktrees ( #18843 )
2026-08-28 14:11:38 +12:00
J. Nick Koston
a8094ed548
[docker] Parallelize the image's PlatformIO library preinstall ( #18777 )
2026-08-27 14:45:47 +12:00
J. Nick Koston
e53870085b
[improv_serial] Add uart bus support and host integration test ( #18794 )
2026-08-26 21:13:47 -05:00
J. Nick Koston
145373ed13
[api] Widen message type storage to uint16_t ( #18526 )
2026-08-25 18:04:41 +00:00
J. Nick Koston
49fc4be861
[ci] Run C++ unit tests when a component's Python or test override changes ( #18706 )
2026-08-24 12:18:17 -05:00
J. Nick Koston
5f6a910e2d
[core] Harden the shared library converter ( #18685 )
2026-08-23 22:24:12 -05:00
J. Nick Koston
9974ad97fa
[core] Extract the shared idedata and size-summary helpers into build_helpers ( #18661 )
2026-08-23 21:59:19 -05:00
J. Nick Koston
d877fb021c
[time] Remove C++ POSIX TZ string parser ( #18383 )
2026-08-24 13:24:00 +12:00
Jonathan Swoboda
476d540065
[ci] Fall back to files API when PR diff exceeds GitHub line limit ( #18486 )
2026-08-18 10:22:28 -04:00
J. Nick Koston
fffa902a1a
[gpio_expander][pcf8574][pca9554][tca9555][pca6416a][pi4ioe5v6408][mcp23016][mcp23xxx_base] Reject unsupported interrupt_pin options (inverted, allow_other_uses) ( #18472 )
2026-08-18 13:32:03 +12:00
J. Nick Koston
27483a4101
[core] Retry gh CLI calls on transient network errors in CI scripts ( #18292 )
2026-08-17 13:15:31 -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
37eae9b466
[api] Gate the bluetooth connection messages on their own define ( #18281 )
2026-08-11 21:31:13 -05:00
Josef Zweck and J. Nick Koston
82a63658f9
[hoermann_hcp] Add Hörmann HCP garage door component ( #17355 )
...
Co-authored-by: J. Nick Koston <nick@koston.org >
2026-08-10 17:20:20 -05:00
J. Nick Koston
d9567b2974
Normalize marker-wrapped callable keys in the schema dump ( #18218 )
2026-08-10 10:05:37 -05:00
J. Nick Koston
a7740091ec
[ci] Run CodSpeed benchmarks when top-level esphome Python modules change ( #18114 )
2026-08-05 20:50:13 -05:00
J. Nick Koston
f971e404c7
[core] Resolve GCC multilib include dirs for clang-tidy ( #18111 )
2026-08-05 19:09:13 -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
Jesse Hills
4ceae9cf85
[ci] Replace pre-commit with prek ( #18029 )
2026-08-04 16:18:46 +12: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
ca1f89e500
[ci] Enable the ruff rule requiring explicit encoding on text file I/O ( #17897 )
2026-07-29 13:44:39 -04:00
J. Nick Koston
16930c4e2c
[ci] Read the GitHub event file as UTF-8 ( #17896 )
2026-07-27 17:33:08 -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
Jonathan Swoboda
8a7d2d0ca0
[ci] Enforce list form for platform domains in test fixtures ( #17869 )
2026-07-26 19:01:15 -04:00
J. Nick Koston
37be04f58e
[core] Reduce memory footprint of esphome upload ( #17684 )
2026-07-21 12:21:12 -10:00
Jonathan Swoboda
ebaf32c82a
[ci] Add LibreTiny clang-tidy environments ( #17491 )
2026-07-17 21:38:55 -04:00
J. Nick Koston
14e71e190c
[ci] Restore memory impact detail for ESP-IDF builds ( #17587 )
2026-07-16 08:00:19 -04:00
Jonathan Swoboda
5a3c2f4d11
[ci] Add rp2 clang-tidy environment ( #17486 )
2026-07-15 21:17:21 -04:00
Jesse Hills
db9a09d05a
[script] Recursively expand nested packages when merging component tests ( #17557 )
2026-07-14 14:11:03 +12:00
Clyde Stubbs
5e3e2f82c9
[script] Fix duplicate import in build_codeowners.py ( #17543 )
2026-07-13 10:16:53 -04:00
Jesse Hills
4a82b10783
[ci] Group component test output into collapsible CI log sections ( #17536 )
2026-07-13 15:29:35 +12:00
Jonathan Swoboda
b3e03868b3
[mipi_rgb] Test in isolation to avoid bus/pin merge conflicts ( #17534 )
2026-07-13 12:00:22 +12:00
Jesse Hills
dd0d0942f5
[image] Restructure into a platform component ( #17416 )
2026-07-09 07:38:58 +12:00
Jesse Hills and Jonathan Swoboda
cdd334284e
[rp2] Rename rp2040 platform to rp2 ( #17145 )
...
Co-authored-by: Jonathan Swoboda <154711427+swoboda1337@users.noreply.github.com >
2026-07-07 08:20:24 +12:00
Clyde Stubbs
f6c260a2c5
[ci] Make import time budget more realistic ( #17406 )
2026-07-05 08:01:48 -04:00
Chris Boot and Claude Opus 4.8
8ab19c0242
[esp32] Add RTC-backed preferences (honor in_flash flag) ( #17073 )
...
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com >
2026-07-05 11:48:30 +10:00
Jonathan Swoboda
5738c60206
[nrf52] Run clang-tidy against the native sdk-nrf toolchain ( #17364 )
2026-07-03 18:09:01 -04:00
Jonathan Swoboda
187cd51867
[ci] Carry native-toolchain needs on component test batches ( #17359 )
2026-07-03 13:47:08 -04:00
fd16eec416
[nrf52] switch nrf52 builds to native sdk by default ( #17319 )
...
Co-authored-by: Jonathan Swoboda <154711427+swoboda1337@users.noreply.github.com >
Co-authored-by: ESPHome Device Builder <device-builder@esphome.io >
2026-07-03 12:16:55 -04:00
Jonathan Swoboda
3035355c0a
[ci] Widen import-time margin for CI runner variance ( #17287 )
2026-06-30 11:38:31 -04:00
Jonathan Swoboda
43b3aa0712
[ci] Fix nRF52 zigbee/network test-grouping conflict ( #17295 )
2026-06-30 11:37:59 -04:00
Bonne Eggleston and Claude Opus 4.8
9e72027b64
[devcontainer] Align base image with production, fix Python venv and build tools ( #17296 )
...
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-30 08:33:33 -04:00
Jonathan Swoboda
b8690c8e31
[core] Drop Python 3.11 support ( #17280 )
2026-06-29 12:32:28 -04:00
Clyde Stubbs and Copilot Autofix powered by AI
5f311d281e
[esphome] Warn when a YAML merge (<<:) drops a key ( #17246 )
...
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com >
2026-06-29 07:17:01 +10:00
Jesse Hills
d0e3e98d55
[dashboard] Remove legacy web dashboard ( #17124 )
2026-06-22 09:33:27 +12:00
Jonathan Swoboda
1a553018bf
[build] Skip target-platform deps when populating host unit-test config ( #17039 )
2026-06-18 15:38:57 -04:00
Jonathan Swoboda and Jesse Hills
1753ccd811
[ci] Update component-test CI for ESP-IDF default toolchain ( #16383 )
...
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com >
2026-06-18 08:57:59 -04:00
Jonathan Swoboda
7cb6cf2f2a
[ci] Replace clang-tidy hash with direct config-file diff check ( #17019 )
2026-06-17 21:12:39 -04:00