Commit Graph
19021 Commits
Author SHA1 Message Date
J. Nick Koston eeefc0e6c4 [wifi] Replace optional with sentinel values to reduce RAM and clarify API 2025-12-12 12:35:30 -06:00
J. Nick Koston d54088d1fb Merge branch 'integration' into memory_api 2025-12-12 11:39:41 -06:00
J. Nick Koston 16a532f565 Merge remote-tracking branch 'upstream/dev' into integration 2025-12-12 11:39:31 -06:00
Jonathan Swoboda 64d650c65c Merge branch 'beta' into dev 2025-12-12 12:15:52 -05:00
Jonathan Swoboda 375e53105f Merge pull request #12444 from esphome/bump-2025.12.0b2
2025.12.0b2
2025.12.0b2
2025-12-12 12:15:41 -05:00
David Woodhouse 7d3afe5de0 Merge branch 'dev' into buildinfo 2025-12-13 01:45:43 +09:00
David Woodhouse b5703523f9 nolint for the macros that have to be macros 2025-12-13 01:44:25 +09:00
David Woodhouse 07d784b0bf Pass config hash and build date in as strings via linker symbols
This saves the RAM we were using to build it at runtime.
2025-12-13 01:39:29 +09:00
Jonathan Swoboda c9506b056d Bump version to 2025.12.0b2 2025-12-12 11:12:58 -05:00
Jonathan SwobodaandClaude 2c77668a05 [http_request] Skip update check when network not connected (#12418)
Co-authored-by: Claude <noreply@anthropic.com>
2025-12-12 11:12:58 -05:00
J. Nick Koston 5567d96dd9 [esp8266] Eliminate up to 16ms socket latency (#12397) 2025-12-12 11:12:58 -05:00
J. Nick Koston 78b76045ce [api] Fix potential buffer overflow in noise PSK base64 decode (#12395) 2025-12-12 11:12:58 -05:00
J. Nick Koston 1d13d18a16 [light] Add zero-copy support for API effect commands (#12384) 2025-12-12 11:12:58 -05:00
Jonathan SwobodaandClaude d30d8156c1 [http_request] Skip update check when network not connected (#12418)
Co-authored-by: Claude <noreply@anthropic.com>
2025-12-12 10:31:17 -05:00
David Woodhouse 25805da008 Merge branch 'dev' into buildinfo 2025-12-12 09:54:47 +09:00
dependabot[bot] 8d1e68c4c1 Bump tornado from 6.5.2 to 6.5.3 (#12430)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-12-11 17:53:12 -06:00
David Woodhouse ccebe613e2 Optimize buildinfo RAM usage on 32-bit platforms
Use direct symbol access on 32-bit platforms to avoid 8 bytes of RAM
overhead. Keep indirection workaround only on 64-bit platforms where
PC-relative relocations cause linking issues.
2025-12-12 01:51:12 +09:00
David Woodhouse 295b317809 Optimize get_build_time_string to avoid repeated formatting
Apply same concurrency fix as get_config_hash to prevent race
conditions when multiple threads access the function.
2025-12-11 22:54:19 +09:00
David Woodhouse 58fddeb74f Optimize get_config_hash to avoid repeated snprintf calls
Check if hash string is already formatted before calling snprintf,
since static variables in BSS are zero-initialized.
2025-12-11 22:53:03 +09:00
David Woodhouse 54ed6154eb Expand non-const comment 2025-12-11 22:49:32 +09:00
David Woodhouse 0b1ea8f2ca Add nolint for non-const buildinfo variables
Variables must remain non-const to prevent compiler optimization
that would bypass the indirection workaround for PC-relative
relocation issues.
2025-12-11 22:48:02 +09:00
David Woodhouse 478f12f75e Remove const from buildinfo static variables
The const qualifier allows compiler optimization that bypasses our
indirection workaround, causing PC-relative relocations that fail
on some platforms. Keep variables non-const to force data section
relocations.
2025-12-11 22:46:09 +09:00
David Woodhouse cfdb5a82e2 Replace __DATE__/__TIME__ with buildinfo functions
- Add get_build_time_string() function to format build time consistently
- Replace __DATE__ ", " __TIME__ in App.pre_setup() with buildinfo call
- Eliminates dependency on compiler-provided date/time macros
- Ensures consistent build time across all build information displays
2025-12-11 22:24:30 +09:00
David Woodhouse edc320fef8 Add buildinfo system with config hash and build time
To allow for more selective managed updates, allow the config hash and
build time to be built into the image itself.

To avoid triggering unneeded rebuilds, do this through a linker script
so that the new config hash and timestamp are included only if the
firmware is actually relinked.

Add a _check_and_emit_buildinfo() step after building, which prints
the information after the firmware was rebuilt. A subsequent commit
will emit a manifest here, or at least the HMAC-MD5 for signing OTA
updates using the hmac_key configured in this image.
2025-12-11 22:24:30 +09:00
J. Nick Koston 74218bc742 [api] Release prologue memory after noise handshake completes (#12412) 2025-12-10 19:33:22 -06:00
J. Nick Koston 369cc70fdf [climate] Save 48 bytes per entity by conditionally compiling visual overrides (#12406) 2025-12-10 19:10:42 -06:00
dependabot[bot] 1f0a27b181 Bump codecov/codecov-action from 5.5.1 to 5.5.2 (#12408)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-12-10 22:34:24 +01:00
J. Nick Koston d7cb3d8e35 Merge branch 'integration' into memory_api 2025-12-10 22:32:19 +01:00
J. Nick Koston 6519b90829 Merge branch 'noise_prologue_not_released' into integration 2025-12-10 22:31:59 +01:00
J. Nick Koston 5c39ff7b5c [api] Release prologue memory after noise handshake completes 2025-12-10 22:31:09 +01:00
dependabot[bot] 22918d3bd5 Bump peter-evans/create-pull-request from 7.0.11 to 8.0.0 (#12409)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-12-10 22:21:29 +01: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 4f9c00382e Merge branch 'integration' into memory_api 2025-12-10 13:50:46 +01:00
J. Nick Koston afd9fc6c96 Merge branch 'visual_overrides_rarely_used' into integration 2025-12-10 13:50:33 +01:00
J. Nick Koston a3017ca3be [climate] Save 48 bytes per entity by conditionally compiling visual overrides 2025-12-10 13:46:50 +01:00
dependabot[bot] d1d376ebc8 Bump actions/create-github-app-token from 2.2.0 to 2.2.1 (#12370)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-12-10 13:05:01 +01:00
J. Nick Koston 2d3ccab0b3 [api] Add zero-copy support for noise encryption key requests 2025-12-10 12:48:04 +01:00
J. Nick Koston fdd560b165 [fan] Add zero-copy support for API preset mode commands 2025-12-10 12:40:35 +01:00
J. Nick Koston 6b810b340a fix 2025-12-10 12:38:04 +01:00
J. Nick Koston 3cd14fa39d [climate] Add zero-copy support for API custom fan mode and preset commands 2025-12-10 10:45:07 +01:00
J. Nick Koston c124d72ea9 [esp8266] Eliminate up to 16ms socket latency (#12397) 2025-12-10 03:45:27 +00:00
J. Nick Koston 5b83e9e81b Merge branch 'integration' into memory_api 2025-12-10 04:34:28 +01:00
J. Nick Koston e85aa1e24b Merge remote-tracking branch 'upstream/dev' into integration 2025-12-10 04:34:16 +01:00
J. Nick Koston 567e82cfec [api] Fix potential buffer overflow in noise PSK base64 decode (#12395) 2025-12-10 04:20:23 +01:00
J. Nick Koston b1f9100b02 [core] Add constexpr parse_hex_char helper and simplify parse_hex (#12394) 2025-12-10 04:20:08 +01:00
J. Nick KostonandCopilot d0fbc82f47 [esp32_ble_client] Use stack-based MAC formatting in auth logging (#12393)
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-12-10 04:19:52 +01:00
J. Nick Koston 03c391bd43 [light] Add zero-copy support for API effect commands (#12384) 2025-12-10 04:19:29 +01:00
J. Nick Koston 95609480b7 Merge branch 'integration' into memory_api 2025-12-10 04:01:12 +01:00
J. Nick Koston 7dca3c9eee Merge branch 'esp8266_wake' into integration 2025-12-10 04:01:07 +01:00
J. Nick Koston cbbb3bbabc wake flag 2025-12-10 04:00:54 +01:00