1
0
mirror of https://github.com/esphome/esphome.git synced 2025-11-16 23:05:46 +00:00
Commit Graph

15849 Commits

Author SHA1 Message Date
J. Nick Koston
e17b69c20d Revert "[core] Deduplicate entity icon and device class logging"
This reverts commit 2ddfabe09e.
2025-11-05 23:46:49 -06:00
J. Nick Koston
ffd5b12324 Merge branch 'de_dupe_logging' into integration 2025-11-05 22:51:04 -06:00
J. Nick Koston
2ddfabe09e [core] Deduplicate entity icon and device class logging 2025-11-05 22:49:13 -06:00
rwrozelle
26607713bb [openthread] add poll period for mtd devices (#11374)
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
2025-11-06 16:57:31 +13:00
J. Nick Koston
6c09b16b38 Revert "[esp32_ble] Store custom GAP device name in flash"
This reverts commit 70d947fab9.
2025-11-05 21:28:17 -06:00
J. Nick Koston
39b63ae87e Merge branch 'store_custom_ble_gap_name_flash' into integration 2025-11-05 21:22:17 -06:00
J. Nick Koston
70d947fab9 [esp32_ble] Store custom GAP device name in flash 2025-11-05 21:20:27 -06:00
Szewcson
895d76ca03 [gdk101] Fix fw version reporting (#11029)
Signed-off-by: szewcu <szewcson@gmail.com>
Co-authored-by: Jonathan Swoboda <154711427+swoboda1337@users.noreply.github.com>
2025-11-05 22:19:29 -05:00
J. Nick Koston
74187845b7 [select] Convert remaining components to use index-based control() (#11693)
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
2025-11-06 15:55:26 +13: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
Clyde Stubbs
ab5d8f67ae [core] Add helper functions for clamp_at_... (#10387) 2025-11-06 15:48:02 +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
5eea7bdb44 Update AI instructions with C++ style guidelines from developers docs (#11743) 2025-11-06 14:45:48 +13:00
J. Nick Koston
bdfd88441a [ci] Skip memory impact analysis when more than 40 components changed (#11741) 2025-11-05 19:31:23 -06:00
J. Nick Koston
dc3f4007df Merge branch 'api_services_flash' into integration 2025-11-05 19:17:55 -06:00
J. Nick Koston
8fded918b7 adjust 2025-11-05 19:16:37 -06:00
J. Nick Koston
99f5018dd2 Merge branch 'api_services_flash' into integration 2025-11-05 19:02:17 -06:00
J. Nick Koston
ce4f9db778 adjust 2025-11-05 19:01:36 -06:00
J. Nick Koston
d7c0ea22c4 Merge branch 'api_services_flash' into integration 2025-11-05 18:58:56 -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
89bd9d8d91 Merge branch 'ai_instructions_code_base' into integration 2025-11-05 18:06:02 -06:00
J. Nick Koston
aaee3f2899 Merge remote-tracking branch 'upstream/dev' into integration
# Conflicts:
#	esphome/components/mqtt/mqtt_binary_sensor.cpp
#	esphome/components/mqtt/mqtt_component.cpp
#	esphome/components/mqtt/mqtt_cover.cpp
#	esphome/components/mqtt/mqtt_event.cpp
#	esphome/components/mqtt/mqtt_number.cpp
#	esphome/components/mqtt/mqtt_sensor.cpp
#	esphome/components/mqtt/mqtt_text_sensor.cpp
#	esphome/components/mqtt/mqtt_valve.cpp
2025-11-05 18:05:09 -06:00
Clyde Stubbs
20b6e0d5c2 [lvgl] Allow text substitution for NaN (#11712) 2025-11-06 10:37:38 +11:00
J. Nick Koston
f8aee13a3a use actual pattern 2025-11-05 16:44:06 -06:00
J. Nick Koston
c83e5e076b cleanup 2025-11-05 16:41:26 -06:00
J. Nick Koston
e331056500 Update AI instructions with C++ style guidelines from developers documentation 2025-11-05 16:35:01 -06:00
J. Nick Koston
ce5e608863 [ci] Skip memory impact analysis for release and beta branches (#11740) 2025-11-05 14:32:45 -06:00
J. Nick Koston
aa5795c019 [tests] Fix ID collision between bl0940 and nau7802 component tests (#11739) 2025-11-05 13:17:34 -06:00
J. Nick Koston
00c0854323 [core] Deprecate get_icon(), get_device_class(), get_unit_of_measurement() and fix remaining non-MQTT usages (#11732) 2025-11-05 12:50:35 -06:00
J. Nick Koston
8514fbcf71 Revert "Revert "Revert "[api] Release excess buffer capacity after initial sync"""
This reverts commit e8c7f74abd.
2025-11-05 12:36:27 -06:00
J. Nick Koston
be006ecadd [mdns] Eliminate redundant hostname copy to save heap memory (#11734) 2025-11-05 18:31:19 +00:00
J. Nick Koston
b08419fa47 [mqtt] Use StringRef to avoid string copies in discovery (#11731) 2025-11-06 07:30:45 +13:00
J. Nick Koston
e8c7f74abd Revert "Revert "[api] Release excess buffer capacity after initial sync""
This reverts commit 1fce2918fb.
2025-11-05 12:25:16 -06:00
J. Nick Koston
1fce2918fb Revert "[api] Release excess buffer capacity after initial sync"
This reverts commit 90e4d15fd9.
2025-11-05 12:22:13 -06:00
J. Nick Koston
d36ef050a9 [template] Mark all component classes as final (#11733) 2025-11-06 07:15:50 +13:00
J. Nick Koston
c9feb5cf65 Merge branch 'api_shrink_after_initial_sync' into integration 2025-11-05 12:15:24 -06:00
J. Nick Koston
90e4d15fd9 [api] Release excess buffer capacity after initial sync 2025-11-05 12:14:09 -06:00
J. Nick Koston
df53ff7afe [scheduler] Extract helper functions to improve code readability (#11730) 2025-11-06 07:13:12 +13:00
J. Nick Koston
6ccea58ee2 merge 2025-11-05 11:45:27 -06:00
J. Nick Koston
7f4f4033ee Merge branch 'deprecate_get_icon_get_device_class_get_unit_of_measurement' into integration 2025-11-05 11:44:58 -06:00
J. Nick Koston
2352114757 [graph] Remove unnecessary .c_str() calls when appending StringRef to std::string
StringRef has an operator+= overload that allows direct appending to std::string.
No need to call .c_str() first - this is even more efficient.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-05 11:42:52 -06:00
J. Nick Koston
cf209e3694 touch ups 2025-11-05 11:42:13 -06:00
J. Nick Koston
8c1bebb3f4 Merge remote-tracking branch 'upstream/mqtt_copies' into integration 2025-11-05 11:27:46 -06:00
J. Nick Koston
d056db42fa Merge branch 'mdns_dup_storage' into integration 2025-11-05 11:27:31 -06:00
J. Nick Koston
2accba4e0c Merge branch 'template_final' into integration 2025-11-05 11:27:24 -06:00
J. Nick Koston
ed0d9e60b8 [mdns] Eliminate redundant hostname copy to save heap memory 2025-11-05 11:19:06 -06:00
J. Nick Koston
4c5533b2ea move comments 2025-11-05 11:16:43 -06:00
J. Nick Koston
4c097616ae move comments 2025-11-05 11:10:13 -06:00