Commit Graph
25683 Commits
Author SHA1 Message Date
J. Nick Koston 7754e517f2 [binary_sensor] Add documentation comments to StatefulEntityBase 2026-03-22 15:59:33 -10:00
J. Nick Koston 91944988ef [binary_sensor] Remove redundant optional<bool> state_ from StatefulEntityBase
Replace optional<T> state_ in StatefulEntityBase with pure virtual
get_state()/set_state_value_() that subclasses implement. BinarySensor
stores its value in the existing public bool state member and uses
EntityBase::flags_.has_state instead of the optional's discriminant.

Move trigger_on_initial_state_ into EntityBase::flags_ (1 bit from
reserved), eliminating the standalone bool and its padding.

Saves 8 bytes per BinarySensor instance:
- optional<bool> (2B) + padding (2B) = 4B removed
- bool trigger_on_initial_state_ (1B) + padding (3B) = 4B removed
2026-03-22 15:58:31 -10:00
J. Nick Koston c082ba7d64 [sensor] Fix deprecation version to 2026.4.0, removal to 2026.10.0 2026-03-22 15:44:32 -10:00
J. Nick Koston a3a1a8799a [sensor] Deprecate .raw_state, guard raw_callback_ behind USE_SENSOR_FILTER
Deprecate direct access to sensor .raw_state member in favor of
get_raw_state(). This prepares for eventually compiling out raw_state
on builds without sensor filters, saving 4 bytes per sensor instance.

Guard raw_callback_ and add_on_raw_state_callback behind
USE_SENSOR_FILTER, saving 4 bytes per sensor on builds without
filters immediately.

Guard SensorRawStateTrigger behind USE_SENSOR_FILTER and ensure
on_raw_value automation sets USE_SENSOR_FILTER define.

Fix nextion sensor to stop directly writing .raw_state/.state
members - the publish=false path was redundantly setting already-current
values.

Migrate haier hon_climate from .raw_state to get_raw_state().
2026-03-22 15:36:17 -10:00
J. Nick Koston fbe3e7d99c [api] Emit raw tag+value writes for forced fixed32 key fields (#15051) 2026-03-22 15:28:46 -10:00
J. Nick Koston 73c8ac0acc Merge branch 'analyze-memory-pstorage-attribution' into integration 2026-03-22 15:20:09 -10:00
J. Nick Koston 6393190957 Handle esphome:: prefix in type namespace and format top symbols 2026-03-22 15:19:47 -10:00
J. Nick Koston 9cdc17566a [combination] Use FixedVector and parent pointer to enable inline Callback storage (#14947) 2026-03-22 15:06:45 -10:00
J. Nick Koston 20420d0016 Merge remote-tracking branch 'upstream/analyze-memory-pstorage-attribution' into integration 2026-03-22 15:05:20 -10:00
J. Nick Koston 8aeb3c5212 Merge remote-tracking branch 'upstream/dev' into integration 2026-03-22 15:05:18 -10:00
J. Nick Koston 2d10f8abd3 [analyze-memory] Attribute placement new storage symbols to components
Embed component namespace in storage variable names so analyze-memory
can reliably attribute them. Display as "storage for {id}" in reports
and always show regardless of size threshold.
2026-03-22 15:03:36 -10:00
J. Nick Koston 2cdb301fc4 Merge branch 'devirtualize-api-dispatch' into devirtualize-decode 2026-03-22 14:44:52 -10:00
J. Nick Koston 9c1e319aa8 Merge branch 'dev' into devirtualize-api-dispatch 2026-03-22 14:44:31 -10:00
cd05462e9f [core] Use placement new allocation for Pvariables (#15079)
Co-authored-by: J. Nick Koston <nick@home-assistant.io>
Co-authored-by: J. Nick Koston <nick@koston.org>
2026-03-22 14:42:04 -10:00
J. Nick KostonandClaude Opus 4.6 83d02c602a [logger] Fix dummy_main.cpp Logger constructor for clang-tidy (#15088)
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-23 13:25:04 +13:00
J. Nick Koston d60ab8e20f Merge branch 'kamilcuk/use-placement-new' into integration 2026-03-22 14:19:43 -10:00
J. Nick Koston 5b1b285220 Merge branch 'kamilcuk/use-placement-new' of https://github.com/Kamilcuk/esphome into kamilcuk/use-placement-new 2026-03-22 14:19:29 -10:00
J. Nick Koston 2d47c31fbf nits 2026-03-22 14:19:22 -10:00
J. Nick Koston e564114787 Merge branch 'dev' into kamilcuk/use-placement-new 2026-03-22 14:06:12 -10:00
J. Nick KostonandClaude Opus 4.6 e85065b1c4 [logger] Fix dummy_main.cpp Logger constructor for clang-tidy (#15088)
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-22 14:06:00 -10:00
J. Nick Koston 76cd51beb9 Merge remote-tracking branch 'upstream/fix-dummy-main-logger-constructor' into integration 2026-03-22 14:02:18 -10:00
J. Nick Koston ad439ea3f9 Merge branch 'kamilcuk/use-placement-new' into integration 2026-03-22 14:02:07 -10:00
J. Nick Koston 58b6d7a0df revert fix -- moved to another pr 2026-03-22 14:01:48 -10:00
J. Nick Koston 1dde810db8 revert fix -- moved to another pr 2026-03-22 14:01:32 -10:00
J. Nick Koston 280ea52002 Merge branch 'kamilcuk/use-placement-new' into integration 2026-03-22 13:58:24 -10:00
J. Nick Koston 42e1d93398 cleanup 2026-03-22 13:57:08 -10:00
J. Nick Koston 3eb0f1affd Merge branch 'kamilcuk/use-placement-new' of https://github.com/Kamilcuk/esphome into kamilcuk/use-placement-new 2026-03-22 13:54:09 -10:00
J. Nick Koston 8b89f5e036 avoid template overhead 2026-03-22 13:54:00 -10:00
J. Nick Koston 7bd4cde012 Merge branch 'dev' into kamilcuk/use-placement-new 2026-03-22 13:47:53 -10:00
J. Nick KostonandClaude Opus 4.6 67add9b9b6 [logger] Fix dummy_main.cpp Logger constructor for clang-tidy
The Logger constructor requires a task_log_buffer_size argument when
USE_ESPHOME_TASK_LOG_BUFFER is defined, which is the case in defines.h
used by clang-tidy.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-22 13:44:39 -10:00
J. Nick Koston bccaee8d79 fix test 2026-03-22 13:38:43 -10:00
J. Nick Koston f70f012dc2 fix test 2026-03-22 13:38:25 -10:00
J. Nick Koston cf27eca8fc Merge branch 'kamilcuk/use-placement-new' into integration 2026-03-22 13:14:10 -10:00
J. Nick Koston 4a2ff62d68 Merge remote-tracking branch 'upstream/dev' into integration 2026-03-22 12:58:13 -10:00
J. Nick Koston d0e705d948 [core] Inline Application::loop() to eliminate stack frame (#15041) 2026-03-22 12:46:28 -10:00
J. Nick Koston 2c06464f7b [packet_transport] Use FixedVector and parent pointer to enable inline Callback storage (#14946) 2026-03-22 12:41:54 -10:00
J. Nick Koston 84727b1f71 [esp32] Validate eFuse MAC reads and reject garbage MACs (#15049) 2026-03-22 12:41:01 -10:00
J. Nick Koston aef987dccf [core] Fix Callback::create memcpy from function reference (#14995) 2026-03-22 12:37:46 -10:00
J. Nick Koston 08df8e15f1 Merge branch 'dev' into kamilcuk/use-placement-new 2026-03-22 12:33:56 -10:00
J. Nick Koston b2b61bea6a [web_server_idf] Inline send() to reduce httpd task stack depth (#15045) 2026-03-22 12:33:06 -10:00
J. Nick Koston 30f66be1da [esp32] Mention ignore_pin_validation_error in flash pin error message (#14998) 2026-03-22 12:32:42 -10:00
J. Nick Koston 6caa9ee227 [logger] Move log level lookup tables to PROGMEM (#15003) 2026-03-22 12:32:08 -10:00
J. Nick Koston 9152f77cdd [core] Reduce automation call chain stack depth (#15042) 2026-03-22 12:31:48 -10:00
J. Nick Koston 4d09eb2cec [tests] Fix flaky ld24xx integration tests by disabling API batching (#15050) 2026-03-22 12:29:28 -10:00
J. Nick Koston 5cc4f6e85a [logger] Add task_log_buffer_zephyr.cpp to platform source filter (#15081) 2026-03-22 12:29:12 -10:00
J. Nick Koston 6d16c57747 [sht4x] Add missing hal.h include for millis() on ESP-IDF (#15087) 2026-03-23 11:23:21 +13:00
J. Nick Koston 27f3a5f5f4 [sht4x] Add missing hal.h include for millis() on ESP-IDF (#15087) 2026-03-22 11:54:54 -10:00
J. Nick Koston bc688b973a address bot comments 2026-03-22 11:34:27 -10:00
J. Nick Koston 478ac9d9f2 lint 2026-03-22 11:32:36 -10:00
J. Nick Koston 2e8b009167 fix duplication 2026-03-22 11:31:03 -10:00