David Woodhouse
87a125f303
Add test coverage for build_info.json change detection
...
Add tests to cover:
- Detection of config_hash changes in existing build_info.json
- Detection of esphome_version changes in existing build_info.json
- Handling of invalid/corrupted build_info.json files
These tests cover the exception handling and change detection logic
in copy_src_tree() that checks the existing build_info.json.
2025-12-15 16:45:15 +00:00
David Woodhouse
09e9b58eb6
Change build_time_str format to ISO 8601 with timezone
...
Use YYYY-MM-DD HH:MM:SS +ZZZZ format instead of the locale-dependent
'%b %d %Y, %H:%M:%S' format. This provides:
- Unambiguous date format (YYYY-MM-DD)
- Timezone information
- Locale-independent formatting
- Better sortability and parseability
Example: "2025-12-15 16:30:27 +0000" instead of "Dec 15 2025, 16:30:27"
Tests validate the format using strptime with '%Y-%m-%d %H:%M:%S %z'.
2025-12-15 16:38:44 +00:00
David Woodhouse
c451fbd697
Postpone breaking changes for another PR
...
I think we need to put a little more thought into whether we really
want the build time in each of these, or whether it should be just
the config_hash (perhaps extended with version, and in some cases
the component's own serial number or other identifier).
So put the old compilation_time_ and its access methods back, so
this PR only adds the *new* fields. We can migrate users over and
then remove the compilation_time_ separately.
2025-12-15 16:26:15 +00:00
Jonathan Swoboda
853372a814
Fix
2025-12-15 10:48:48 -05:00
David Woodhouse
5eab42441e
Fix dummy_main.cpp to match new pre_setup signature
...
Remove compilation timestamp argument as build time is now handled
through build_info_data.h instead of being passed to pre_setup().
2025-12-15 09:06:49 +00:00
David Woodhouse
b27229d9b9
Merge branch 'dev' into buildinfo
2025-12-15 08:11:00 +00:00
J. Nick Koston
995cf8be9c
Merge remote-tracking branch 'upstream/dev' into integration
2025-12-14 21:34:22 -06:00
mbohdal
fa5b14fad4
[ethernet] fix used pins validation in configuration of RMII pins ( #12486 )
2025-12-14 16:40:08 -05:00
J. Nick Koston
45f413de0e
Merge branch 'wifi_timeout' into integration
2025-12-14 15:30:58 -06:00
J. Nick Koston
780a407b10
[dashboard] Add ESPHOME_TRUSTED_DOMAINS support to events WebSocket ( #12479 )
2025-12-14 13:30:55 -06:00
Jonathan Swoboda and Claude
cfc0d8bdfc
[cc1101] Add packet mode support ( #12474 )
...
Co-authored-by: Claude <noreply@anthropic.com >
2025-12-14 13:22:55 -05:00
Clyde Stubbs and Copilot
ede64a9f47
[packet_transport] Ensure retransmission at update intervals ( #12472 )
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-12-14 12:47:15 -05:00
J. Nick Koston
0d7fbb79b3
Merge branch 'events_trusted_domains' into integration
2025-12-14 09:38:01 -06:00
J. Nick Koston
f50ffb2b92
cover
2025-12-14 09:09:24 -06:00
J. Nick Koston
4892bfb6e4
[dashboard] Add ESPHOME_TRUSTED_DOMAINS support to events WebSocket
2025-12-14 09:00:27 -06:00
J. Nick Koston
0e60aefdec
Merge remote-tracking branch 'upstream/dev' into integration
2025-12-13 22:15:41 -06:00
David Woodhouse
1ebfd5b4eb
Update test for new get_build_info behaviour
...
get_build_info() now always returns current time instead of preserving
the existing build_time. The timestamp preservation logic is now handled
in copy_src_tree() based on sources_changed flag.
2025-12-14 09:07:44 +09:00
David Woodhouse
841d9664d3
Fix build system to relink when source files change
...
- Make copy_file_if_changed() return bool indicating if file was copied
- Track sources_changed in copy_src_tree() to detect when source files change
- Only update build_info timestamp when sources/config/version change
- Exclude generated files (build_info_data.h) from sources_changed tracking
- Add build_info_data.h to ignore_targets to prevent copying from resources
- Track changes to generated headers (defines.h, esphome.h, version.h)
- Check for config_hash or version changes to trigger rebuild
- Pretty-print build_info.json with indentation and trailing newline
- Update mock_copy_file_if_changed to return True by default
This fixes the issue where changing a source file would recompile the .o
file but not relink the final program executable.
2025-12-14 08:51:59 +09:00
J. Nick Koston
ba0f559856
better cover
2025-12-13 10:10:24 -06:00
J. Nick Koston
0539c5d4d2
cover
2025-12-13 10:02:54 -06:00
J. Nick Koston
de500450d9
coverage for hash order change
2025-12-13 09:45:17 -06:00
J. Nick Koston
b4a54f2df1
sort so config hash does not change
2025-12-13 09:40:26 -06:00
J. Nick Koston
cf8708b888
writer coverage
2025-12-13 09:28:52 -06:00
J. Nick Koston
959a2e8ddd
Merge branch 'dev' into buildinfo
2025-12-13 09:22:09 -06:00
J. Nick Koston
4b937b5228
some coverage
2025-12-13 09:21:53 -06:00
J. Nick Koston
6d91f1cd77
tests
2025-12-13 08:56:12 -06:00
J. Nick Koston
67937aeda4
tests
2025-12-13 08:55:26 -06:00
J. Nick Koston
e0ce66e011
[core] Fix CORE.raw_config not updated after package merge ( #12456 )
2025-12-13 07:38:31 -06:00
J. Nick Koston
75b8279361
Merge remote-tracking branch 'upstream/dev' into integration
2025-12-12 21:03:28 -06:00
David Woodhouse
6fce0a6104
Add host platform support to MD5 component ( #12458 )
2025-12-13 02:50:34 +00:00
J. Nick Koston
20b6d28c90
Merge remote-tracking branch 'upstream/dev' into integration
2025-12-12 19:24:14 -06:00
David Woodhouse
ff7651875e
Add HMAC-MD5 component tests ( #12459 )
2025-12-12 19:19:31 -06:00
J. Nick Koston
16a532f565
Merge remote-tracking branch 'upstream/dev' into integration
2025-12-12 11:39:31 -06:00
J. Nick Koston
7a9fce90cb
[text] Add integration tests for text command API ( #12401 )
2025-12-10 12:13:40 -05:00
J. Nick Koston
efbdbc63d0
Merge remote-tracking branch 'upstream/dev' into integration
2025-12-10 01:36:11 +01:00
Javier Peletier and J. Nick Koston
9f2693ead5
[core] Packages refactor and conditional package inclusion (package refactor part 1) ( #11605 )
...
Co-authored-by: J. Nick Koston <nick@koston.org >
2025-12-10 00:59:58 +01:00
J. Nick Koston
3642399460
[tests] Fix clang-tidy warnings in custom_api_device_component fixture ( #12390 )
2025-12-10 00:50:26 +01:00
J. Nick Koston
3a6edbc2c7
[micronova] Fix test UART package key to match directory name ( #12391 )
2025-12-10 00:49:44 +01:00
J. Nick Koston
724fb222dc
Merge remote-tracking branch 'upstream/dev' into integration
...
# Conflicts:
# esphome/components/api/api_connection.cpp
# esphome/components/api/api_server.cpp
# esphome/components/api/api_server.h
# esphome/components/wifi_signal/wifi_signal_sensor.h
# esphome/core/string_ref.h
2025-12-09 23:51:44 +01:00
J. Nick Koston
72c74bc0b3
[api] Store Home Assistant state subscriptions in flash instead of heap ( #12008 )
2025-12-09 16:26:11 +01:00
J. Nick Koston
443f9c3f57
[api] Use StringRef for ActionResponse error message to avoid copy ( #12240 )
2025-12-09 16:10:43 +01:00
Javier Peletier
88a2e75989
[packages] Add more information and deprecation deadline for "single package" includes ( #12280 )
2025-12-09 16:04:10 +01:00
smarthome-10 and pre-commit-ci-lite[bot]
4c31961ae9
Update URLs ( #12369 )
...
Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
2025-12-08 14:37:45 -05:00
Johannes Nau
7e486b1c25
[pca9685] Allow to disable the phase balancer for PCA9685 ( #9792 )
2025-12-08 10:34:26 -05:00
eda743ee48
[usb_cdc_acm] New component ( #11687 )
...
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com >
Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
2025-12-08 09:50:23 -05:00
Sébastien Blanchet
5144154f91
[hub75] fix id conflict ( #12365 )
2025-12-08 14:31:05 +00:00
c7382fc494
[hlw8032] Single-phase metering IC ( #7241 )
...
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 >
Co-authored-by: Jonathan Swoboda <154711427+swoboda1337@users.noreply.github.com >
2025-12-08 09:07:10 -05:00
95efb37045
[micronova] Set the write bit automatically ( #12318 )
...
Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
Co-authored-by: Jonathan Swoboda <154711427+swoboda1337@users.noreply.github.com >
2025-12-08 08:39:43 -05:00
J. Nick Koston
ed8b21aec3
Merge branch 'libretiny_wifi' into integration
2025-12-07 22:13:42 -06:00
Robert Resch and Jonathan Swoboda
c5cc91f6f0
[micronova] Add FINAL_VALIDATE_SCHEMA to validate uart ( #12350 )
...
Co-authored-by: Jonathan Swoboda <154711427+swoboda1337@users.noreply.github.com >
2025-12-07 21:02:05 -05:00