David Woodhouse
01d8775005
Merge branch 'dev' into buildinfo
2025-12-17 18:04:45 +00:00
Jonathan Swoboda and Claude
0e71fa97a7
[spi] Add SPIInterface stub for clang-tidy on unsupported platforms ( #12532 )
...
Co-authored-by: Claude <noreply@anthropic.com >
2025-12-17 12:18:25 -05:00
J. Nick Koston
42e061c9ae
[text] Avoid string copies in callbacks by passing const ref ( #12504 )
2025-12-17 12:00:19 -05:00
J. Nick Koston
94763ebdab
[libretiny] Store preference keys as uint32_t, convert to string only at FlashDB boundary ( #12500 )
2025-12-17 11:59:40 -05:00
J. Nick Koston
f32bb618ac
[esp32] Store preference keys as uint32_t, convert to string only at NVS boundary ( #12494 )
2025-12-17 11:59:35 -05:00
0707f383a6
[nextion] Use ESP-IDF for ESP32 Arduino ( #9429 )
...
Co-authored-by: J. Nick Koston <nick@koston.org >
Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
Co-authored-by: Jonathan Swoboda <154711427+swoboda1337@users.noreply.github.com >
2025-12-17 11:45:17 -05:00
e91c6a79ea
[deep_sleep] Deep sleep for BK72xx ( #12267 )
...
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 >
Co-authored-by: Jonathan Swoboda <154711427+swoboda1337@users.noreply.github.com >
2025-12-17 11:45:05 -05:00
J. Nick Koston
63fc8b4e5a
[core] Refactor str_snake_case and str_sanitize to use constexpr helpers ( #12454 )
2025-12-17 11:30:12 -05:00
J. Nick Koston
ab73ed76b8
[esphome] Improve OTA field alignment to save 4 bytes on 32-bit ( #12461 )
2025-12-17 11:29:58 -05:00
J. Nick Koston
bf6a03d1cf
[factory_reset] Optimize memory by storing interval as uint16_t seconds ( #12462 )
2025-12-17 11:29:51 -05:00
J. Nick Koston
9928ab09cf
[time] Convert to C++17 nested namespace syntax ( #12463 )
2025-12-17 11:29:43 -05:00
David Woodhouse
7e36112687
Merge branch 'dev' into buildinfo
2025-12-17 09:32:40 +00:00
Thomas Rupprecht and Jonathan Swoboda
56c1691d72
[pca9685,sx126x,sx127x] Use frequency/float_range check ( #12490 )
...
Co-authored-by: Jonathan Swoboda <154711427+swoboda1337@users.noreply.github.com >
2025-12-16 22:52:28 -05:00
Roger Fachini
a065990ab9
[update] Add check action to trigger update checks ( #12415 )
2025-12-16 22:20:12 -05:00
Stuart Parmenter
084f517a20
[hub75] Add set_brightness action ( #12521 )
2025-12-16 22:12:33 -05:00
David Woodhouse
77d914e67f
Merge branch 'dev' into buildinfo
2025-12-17 01:52:36 +00:00
Jonathan Swoboda and Claude
1122ec354f
[esp32] Add OTA rollback support ( #12460 )
...
Co-authored-by: Claude <noreply@anthropic.com >
2025-12-16 20:07:57 -05:00
Jonathan Swoboda and Claude
431183eebc
[ledc,mqtt,resampler] Remove unnecessary ESP-IDF framework restrictions ( #12442 )
...
Co-authored-by: Claude <noreply@anthropic.com >
2025-12-16 20:07:09 -05:00
Jonathan Swoboda and Claude
08beaf8750
[esp32] Remove Arduino-specific code from core.cpp ( #12501 )
...
Co-authored-by: Claude <noreply@anthropic.com >
2025-12-16 20:06:12 -05:00
David Woodhouse
f2f30337a0
Merge branch 'dev' into buildinfo
2025-12-17 00:44:15 +00:00
Jonathan Swoboda and Claude
18814f12dc
[http_request] Use ESP-IDF for ESP32 Arduino ( #12428 )
...
Co-authored-by: Claude <noreply@anthropic.com >
2025-12-16 19:44:14 -05:00
Jonathan Swoboda and Claude
9cd888cef6
[spi] Use ESP-IDF driver for ESP32 Arduino ( #12420 )
...
Co-authored-by: Claude <noreply@anthropic.com >
2025-12-16 19:44:01 -05:00
Thomas Rupprecht
9727c7135c
[openthread] channel range, fix typo, use C++17 nested namespace syntax ( #12422 )
2025-12-16 19:43:18 -05:00
Thomas Rupprecht
93621d85b0
[climate] Improve temperature unit regex ( #12032 )
2025-12-16 19:43:10 -05:00
Thomas Rupprecht
046ea922e8
[esp32] improve types and variable naming ( #12423 )
2025-12-16 19:42:52 -05:00
David Woodhouse
71f2331bc8
Fix clang-format: use lowercase buf_size variable name
2025-12-17 00:42:46 +00:00
Jeff Zigler and Jonathan Swoboda
fab4efb469
[esp32] Fix serial logging on h2, c2 & c61 ( #12522 )
...
Co-authored-by: Jonathan Swoboda <154711427+swoboda1337@users.noreply.github.com >
2025-12-16 19:42:12 -05:00
Jonathan Swoboda
efc5672567
Merge branch 'release' into dev
2025-12-16 18:57:37 -05:00
Jonathan Swoboda
0ea5f2fd81
Merge pull request #12525 from esphome/bump-2025.12.0
...
2025.12.0
2025.12.0
2025-12-16 18:57:20 -05:00
David Woodhouse
8358ef0096
Use ESPHOME_strncpy_P in get_build_time_string()
...
Replace platform-specific ifdef with cross-platform ESPHOME_strncpy_P
macro for consistency.
2025-12-16 23:06:31 +00:00
David Woodhouse
f8c9cf8fd9
Use PROGMEM for version text sensor strings on ESP8266
...
Build version string incrementally from PROGMEM literals using
ESPHOME_strncpy_P and ESPHOME_strncat_P. Write hash and build time
directly into buffer without temporary variables. Calculate buffer
size based on actual components needed.
Add ESPHOME_strncat_P macro to progmem.h for cross-platform PROGMEM
string concatenation.
2025-12-16 23:05:07 +00:00
Jonathan Swoboda
fa3d998c3d
Bump version to 2025.12.0
2025-12-16 17:15:50 -05:00
David Woodhouse
8429684fce
Fix clang-format: use uppercase PREFIX constant name
2025-12-16 19:46:04 +00:00
David Woodhouse
a30052e7c0
Use PROGMEM for version text sensor strings on ESP8266
...
Build version string incrementally from PROGMEM literal prefix, avoiding
format strings in RAM. Copy from PROGMEM on ESP8266, use directly on
other platforms.
2025-12-16 19:22:42 +00:00
David Woodhouse
175250deb0
Use PROGMEM for MQTT version format string on ESP8266
...
Store format string in PROGMEM and copy to RAM buffer on ESP8266 before
use. On other platforms, use the format string directly. This saves RAM
on ESP8266 while maintaining the same functionality.
2025-12-16 19:20:50 +00:00
David Woodhouse
12734ba258
Revert "Use PROGMEM format strings to reduce RAM usage on ESP8266"
...
This reverts commit da67c47a76 .
2025-12-16 19:03:13 +00:00
David Woodhouse
da67c47a76
Use PROGMEM format strings to reduce RAM usage on ESP8266
...
Replace str_sprintf() with snprintf_P() and PSTR() to keep format
strings in flash instead of RAM. Also removes 'config hash 0x' prefix
to save additional bytes.
2025-12-16 18:13:35 +00:00
David Woodhouse
38167c268f
Add get_config_version_hash() and make hash functions constexpr
...
Add Application::get_config_version_hash() as a constexpr that returns
fnv1a_hash_extend(config_hash, ESPHOME_VERSION).
Make get_config_hash(), get_build_time(), fnv1a_hash(), and
fnv1a_hash_extend() constexpr inline functions.
Replace open-coded fnv1a_hash_extend(config_hash, ESPHOME_VERSION)
calls with get_config_version_hash() in sensor and wifi components.
Remove now-unnecessary version.h includes from component files.
2025-12-16 17:15:19 +00:00
David Woodhouse
7298db0a7e
Add tests for source file removal detection in copy_src_tree
...
Add tests covering the logic that detects when source files are removed:
- test_copy_src_tree_detects_removed_source_file: Verifies that removing
a regular source file triggers sources_changed flag
- test_copy_src_tree_ignores_removed_generated_file: Verifies that removing
a generated file (like build_info_data.h) does not trigger sources_changed
2025-12-16 16:45:28 +00:00
J. Nick Koston
6eb8095480
Merge branch 'dev' into buildinfo
2025-12-16 10:29:51 -06:00
Jonathan Swoboda
5e630e9255
Merge branch 'beta' into dev
2025-12-16 11:26:08 -05:00
Jonathan Swoboda
864aaeec01
Merge pull request #12520 from esphome/bump-2025.12.0b5
...
2025.12.0b5
2025.12.0b5
2025-12-16 11:25:57 -05:00
David Woodhouse
3679a81220
Merge branch 'dev' into buildinfo
2025-12-16 15:55:36 +00:00
Jonathan Swoboda
9c88e44300
Bump version to 2025.12.0b5
2025-12-16 10:35:31 -05:00
Jonathan Swoboda and Claude
4d6a93f92d
[uart] Fix UART on default UART0 pins for ESP-IDF ( #12519 )
...
Co-authored-by: Claude <noreply@anthropic.com >
2025-12-16 10:35:31 -05:00
J. Nick Koston
7216120bfd
[socket] Fix getpeername() returning local address instead of remote in LWIP raw TCP ( #12475 )
2025-12-16 10:35:31 -05:00
Jonathan Swoboda and Claude
1897551b28
[uart] Fix UART on default UART0 pins for ESP-IDF ( #12519 )
...
Co-authored-by: Claude <noreply@anthropic.com >
2025-12-16 10:17:17 -05:00
David Woodhouse
dfae9e5750
Merge branch 'dev' into buildinfo
2025-12-16 10:21:02 +00:00
J. Nick Koston
ead60bc5c4
[socket] Fix getpeername() returning local address instead of remote in LWIP raw TCP ( #12475 )
2025-12-16 00:48:30 -06:00
David Woodhouse
87f88b8a9a
Add version.h includes to sensor components
...
Add missing version.h includes to sen5x, sgp30, and sgp4x components
for ESPHOME_VERSION definition.
2025-12-16 00:32:30 +00:00