J. Nick Koston
|
8a90fa302e
|
Merge branch 'integration' into memory_api
|
2025-11-28 16:57:14 -06:00 |
|
J. Nick Koston
|
83dd53954b
|
Merge branch 'alarm_control_panel_reduce_complexity' into integration
|
2025-11-28 16:57:04 -06:00 |
|
J. Nick Koston
|
d3918dc784
|
reduce
|
2025-11-28 16:39:05 -06:00 |
|
J. Nick Koston
|
2060ed0a92
|
tests
|
2025-11-28 16:32:28 -06:00 |
|
J. Nick Koston
|
30ee14813f
|
cover
|
2025-11-28 12:48:41 -06:00 |
|
J. Nick Koston
|
1d24bf8438
|
Merge branch 'integration' into memory_api
|
2025-11-25 21:21:30 -06:00 |
|
J. Nick Koston
|
cbbdd634c1
|
Merge upstream/dev into integration
|
2025-11-25 21:21:03 -06:00 |
|
J. Nick Koston
|
a571033b43
|
[script] Fix script.wait hanging when triggered from on_boot (#12102)
|
2025-11-25 10:30:01 -06:00 |
|
J. Nick Koston
|
46a26560fd
|
[template.alarm_control_panel] Replace std::map with FixedVector for heap and flash savings (#11893)
|
2025-11-25 16:21:56 +13:00 |
|
J. Nick Koston
|
fa1efb1048
|
Merge branch 'integration' into memory_api
|
2025-11-24 12:10:08 -06:00 |
|
J. Nick Koston
|
a6446ee179
|
Merge branch 'error_logstr' into integration
|
2025-11-24 12:09:58 -06:00 |
|
J. Nick Koston
|
06815fe177
|
[script][wait_until] Fix FIFO ordering and reentrancy bugs (#12049)
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
|
2025-11-24 10:41:24 -06:00 |
|
J. Nick Koston
|
0d3919747c
|
Merge branch 'integration' into memory_api
|
2025-11-19 22:52:08 -06:00 |
|
J. Nick Koston
|
19c377b6de
|
Merge branch 'api_ha_subs' into integration
|
2025-11-19 22:51:56 -06:00 |
|
J. Nick Koston
|
b9595c0795
|
cover
|
2025-11-19 22:49:52 -06:00 |
|
J. Nick Koston
|
fd0d1c41b7
|
Merge branch 'integration' into memory_api
|
2025-11-16 09:19:04 -06:00 |
|
J. Nick Koston
|
d878e9a8f2
|
Merge remote-tracking branch 'upstream/web_server_shutdown_race_fix' into integration
|
2025-11-16 09:18:58 -06:00 |
|
J. Nick Koston
|
6f4042f401
|
Add tests for sensor timeout filters (#11923)
|
2025-11-15 22:21:38 -06:00 |
|
J. Nick Koston
|
6370132cbb
|
Merge branch 'integration' into memory_api
|
2025-11-13 12:38:14 -06:00 |
|
J. Nick Koston
|
1f408ce41c
|
[template.alarm_control_panel] Use FixedVector for iteration-only sensor storage
|
2025-11-13 12:35:43 -06:00 |
|
J. Nick Koston
|
3a5b3ad77d
|
[thermostat] Replace std::map with FixedVector, reduce flash usage (#11875)
|
2025-11-12 17:55:06 -06:00 |
|
J. Nick Koston
|
9a2574a2fe
|
Merge branch 'integration' into memory_api
|
2025-11-12 14:56:02 -06:00 |
|
J. Nick Koston
|
20388ce848
|
[thermostat] Replace std::map with FixedVector, reduce flash usage
|
2025-11-12 14:54:23 -06:00 |
|
J. Nick Koston
|
9accb16b4a
|
Merge branch 'integration' into memory_api
|
2025-11-12 12:02:04 -06:00 |
|
J. Nick Koston
|
9de80b635a
|
[core] Fix wait_until hanging when used in on_boot automations (#11869)
|
2025-11-12 17:56:19 +00:00 |
|
J. Nick Koston
|
ef19d7bb24
|
Merge branch 'integration' into memory_api
|
2025-11-05 21:22:24 -06:00 |
|
J. Nick Koston
|
822eacfd77
|
[core] Fix wait_until and for_condition timing regression in automation chains (#11716)
|
2025-11-06 15:49:24 +13:00 |
|
J. Nick Koston
|
83f30a64ed
|
[api] Store YAML service names in flash instead of heap (#11744)
|
2025-11-06 15:31:59 +13:00 |
|
J. Nick Koston
|
b3fdef3ac4
|
Merge branch 'integration' into memory_api
|
2025-11-05 18:59:08 -06:00 |
|
J. Nick Koston
|
15c167b5ce
|
adjust
|
2025-11-05 18:55:04 -06:00 |
|
J. Nick Koston
|
ab6cb2dee6
|
remove extra test
|
2025-11-05 18:51:38 -06:00 |
|
J. Nick Koston
|
bd0705cdc0
|
[api] Store YAML service names in flash instead of heap
Reduces memory usage for YAML-defined API services by storing service
names and argument names as pointers to string literals in flash instead
of heap-allocated std::string objects.
Implementation:
- Created UserServiceBase<Ts...> for YAML services (const char* storage)
- Created UserServiceDynamic<Ts...> for custom_api_device (std::string storage)
- Updated CustomAPIDeviceService to inherit from UserServiceDynamic
- UserServiceTrigger uses UserServiceBase (YAML-only)
Memory savings per YAML service:
- 0 args: 32 bytes (57% reduction)
- 2 args: 48 bytes (60% reduction)
- 5 args: 96 bytes (63% reduction)
Custom API device services maintain same memory footprint (no regression).
Typical ESPHome device (2-5 services): 100-240 bytes saved
High-service device (10+ services): 400-800 bytes saved
|
2025-11-05 18:51:17 -06:00 |
|
J. Nick Koston
|
4810c36141
|
[api] Store YAML service names in flash instead of heap
Reduces memory usage for YAML-defined API services by storing service
names and argument names as pointers to string literals in flash instead
of heap-allocated std::string objects.
Implementation:
- Created UserServiceBase<Ts...> for YAML services (const char* storage)
- Created UserServiceDynamic<Ts...> for custom_api_device (std::string storage)
- Updated CustomAPIDeviceService to inherit from UserServiceDynamic
- UserServiceTrigger uses UserServiceBase (YAML-only)
Memory savings per YAML service:
- 0 args: 32 bytes (57% reduction)
- 2 args: 48 bytes (60% reduction)
- 5 args: 96 bytes (63% reduction)
Custom API device services maintain same memory footprint (no regression).
Typical ESPHome device (2-5 services): 100-240 bytes saved
High-service device (10+ services): 400-800 bytes saved
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-11-05 18:49:58 -06:00 |
|
J. Nick Koston
|
1446e7174a
|
[core] Reduce action framework argument copies by 83% (#11704)
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
|
2025-11-05 01:23:24 +00:00 |
|
J. Nick Koston
|
42833c85f5
|
[climate] Replace std::vector<std::string> with const char* for custom fan modes and presets (#11621)
|
2025-11-02 23:16:39 -06:00 |
|
J. Nick Koston
|
40f919eaa6
|
Add action continuation tests (#11674)
|
2025-11-03 14:07:03 +13:00 |
|
Kjell Braden
|
86402be9e3
|
actions: fix loop re-entry (#7972)
Co-authored-by: Clyde Stubbs <2366188+clydebarrow@users.noreply.github.com>
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: J. Nick Koston <nick@home-assistant.io>
|
2025-11-02 17:02:13 -06:00 |
|
Kjell Braden
|
f6946c0b9a
|
add integration test for script re-entry argument issue (#11652)
Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
|
2025-11-02 15:08:45 -06:00 |
|
J. Nick Koston
|
58235049e3
|
[template] Eliminate optional wrapper to save 4 bytes RAM per instance (#11610)
|
2025-10-30 15:06:21 +13:00 |
|
J. Nick Koston
|
7ed7e7ad26
|
[climate] Replace std::set with FiniteSetMask for trait storage (#11466)
|
2025-10-29 08:46:44 +13:00 |
|
J. Nick Koston
|
dfb4b31bf9
|
[template] Store initial option as index in template select (#11523)
|
2025-10-28 11:37:40 +13:00 |
|
Jesse Hills
|
2c1927fd12
|
[api] Allow clearing noise psk if dynamically set (#11429)
|
2025-10-22 14:24:56 +13:00 |
|
Keith Burzinski
|
66afe4a9be
|
[climate] Add some integration tests (#11439)
|
2025-10-21 02:26:18 -05:00 |
|
J. Nick Koston
|
46101fd830
|
Add tests for FilterOutValueFilter and ThrottleWithPriorityFilter (#11408)
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
|
2025-10-20 09:25:03 -10:00 |
|
J. Nick Koston
|
1b38518c63
|
[tests] Fix flaky test_noise_corrupt_encrypted_frame integration test (#11405)
|
2025-10-20 03:45:44 +00:00 |
|
J. Nick Koston
|
c9312d5c27
|
[script] Fix unbounded queue growth, optimize queued mode (default max_runs=5) (#11308)
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
|
2025-10-19 09:42:17 -10:00 |
|
J. Nick Koston
|
85babe85e4
|
[sensor] Optimize sliding window filters to eliminate heap fragmentation (#11282)
|
2025-10-20 07:59:47 +13:00 |
|
J. Nick Koston
|
fdecda3d65
|
[light] Use bitmask instead of std::set for color modes (#11348)
|
2025-10-20 07:48:14 +13:00 |
|
Juan Antonio Aldea
|
d5c36eaf2a
|
[tests] Remove superfluous else-blocks from lambdas (#11322)
Co-authored-by: J. Nick Koston <nick@koston.org>
|
2025-10-17 21:40:54 -10:00 |
|
J. Nick Koston
|
5aff20a624
|
[api] Add message size limits to prevent memory exhaustion (#10936)
|
2025-10-08 00:47:31 +00:00 |
|