J. Nick Koston
395ab306bd
Merge remote-tracking branch 'upstream/dev' into integration
2026-03-03 14:32:48 -10:00
J. Nick Koston
b4892a85b8
Merge remote-tracking branch 'origin/std-optional' into integration
2026-03-03 13:45:12 -10:00
J. Nick Koston
64b44bbe64
expand one more missed in first pass
2026-03-03 13:44:54 -10:00
J. Nick Koston
17c8332d8b
Merge remote-tracking branch 'origin/std-optional' into integration
2026-03-03 13:41:13 -10:00
J. Nick Koston
103653c44f
expand all sites, part 6
2026-03-03 13:32:53 -10:00
J. Nick Koston
e8c8806267
expand all sites, part 5
2026-03-03 13:32:25 -10:00
J. Nick Koston
92e2f80666
expand all sites, part 4
2026-03-03 13:31:51 -10:00
J. Nick Koston
a34e36e22e
expand all sites, part 3
2026-03-03 13:31:08 -10:00
J. Nick Koston
aca73e8438
expand all sites, part 2
2026-03-03 13:30:49 -10:00
J. Nick Koston
d74a8ea385
expand all sites
2026-03-03 13:30:27 -10:00
J. Nick Koston
92cd08aa38
return ON part 2
2026-03-03 13:25:55 -10:00
J. Nick Koston
341123cd40
return ON
2026-03-03 13:24:51 -10:00
Jesse Hills
989330d6bc
[globals] Fix handling of string booleans in yaml ( #14447 )
2026-03-03 22:54:40 +00:00
Jonathan Swoboda and Claude Opus 4.6
ee78d7a0c0
[tests] Fix integration test race condition in PlatformIO cache init ( #14435 )
...
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-03 17:42:41 -05:00
J. Nick Koston
f50d7b516e
Merge remote-tracking branch 'upstream/std-optional' into integration
2026-03-03 12:18:40 -10:00
J. Nick Koston
a90f29fc60
Merge branch 'configure_entity' into integration
2026-03-03 12:16:11 -10:00
J. Nick Koston and Claude Opus 4.6
ceee1378db
add bit layout comment to configure_entity unpacking
...
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-03 12:13:18 -10:00
J. Nick Koston
c52ff5dcbc
Merge branch 'configure_entity' into integration
...
# Conflicts:
# esphome/core/entity_base.h
2026-03-03 12:12:01 -10:00
J. Nick Koston and Claude Opus 4.6
67ba4bd386
inline set_name/set_entity_strings directly into configure_entity
...
No separate functions needed — configure_entity is the only caller.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-03 12:04:39 -10:00
J. Nick Koston and Claude Opus 4.6
c0873973c1
fix component tests to match configure_entity codegen
...
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-03 11:53:27 -10:00
J. Nick Koston and Claude Opus 4.6
42fa6ef818
[core] Merge set_name + set_entity_strings into configure_entity
...
Every entity generated two codegen calls:
entity->set_name("Name", hash);
entity->set_entity_strings(packed);
Merge these into a single configure_entity(name, hash, packed) call
to reduce generated code size. For a config with 50+ entities this
eliminates 50+ function calls from the generated setup() function.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-03 11:47:14 -10:00
J. Nick Koston
10595d5f65
Merge branch 'dev' of https://github.com/esphome/esphome into integration
2026-03-03 11:41:57 -10:00
J. Nick Koston
6f4718f3d5
Merge branch 'move_device_class_progmem' into integration
2026-03-03 11:25:58 -10:00
J. Nick Koston
f73076bb8b
should be in tu
2026-03-03 11:25:18 -10:00
J. Nick Koston
214a27d49f
Merge branch 'move_device_class_progmem' into integration
2026-03-03 11:23:20 -10:00
J. Nick Koston
2fe9de7dbc
add max length validation for device class strings
...
Defense-in-depth: validate device class strings don't exceed the
48-byte PROGMEM buffer limit (47 chars + null), matching the same
pattern used for icon strings.
2026-03-03 11:23:06 -10:00
J. Nick Koston
df863b99b6
Merge branch 'move_device_class_progmem' into integration
2026-03-03 11:10:14 -10:00
Thomas Rupprecht
96793a99ce
[rtttl] add new codeowner ( #14440 )
2026-03-03 10:55:56 -10:00
J. Nick Koston
ca6a05bfdd
move device class strings to PROGMEM on ESP8266
...
Same treatment as icons in #14437 . Device class strings were in
.rodata (RAM on ESP8266). Now stored as individual PROGMEM char arrays.
- Add get_device_class_to(std::span<char, MAX_DEVICE_CLASS_LENGTH>)
buffer API matching get_icon_to() pattern
- Add fill_and_encode_entity_info_with_device_class() wrapper to
deduplicate buffer handling across 10 API entity types
- Centralize MQTT device_class in send_discovery_() lambda where
buffer lifetime outlives ArduinoJson serialization
- Deprecate get_device_class_ref()/get_device_class() on non-ESP8266
- static_assert error on ESP8266 directing to get_device_class_to()
- Update all callers: api, mqtt, web_server, log helper
2026-03-03 10:50:39 -10:00
Clyde Stubbs
380c0db020
[usb_uart] Don't claim interrupt interface for ch34x ( #14431 )
2026-03-03 14:49:38 -06:00
J. Nick Koston
5ba1886b9b
Merge branch 'move_icons_progmem' into integration
2026-03-03 08:43:46 -10:00
J. Nick Koston
afb8ba6813
preen
2026-03-03 08:43:35 -10:00
J. Nick Koston
06c7bbd4ee
Merge branch 'move_icons_progmem' into integration
2026-03-03 08:40:03 -10:00
J. Nick Koston
6425c15ee1
bot review
2026-03-03 08:33:04 -10:00
J. Nick Koston
6fd20056ad
Merge branch 'move_icons_progmem' into integration
2026-03-03 08:23:52 -10:00
J. Nick Koston
7becceb3b1
Merge remote-tracking branch 'upstream/dev' into integration
2026-03-03 08:23:42 -10:00
J. Nick Koston
4267d29cb5
simplify get_icon_to: single lookup call on non-ESP8266
...
- Non-ESP8266: just return entity_icon_lookup(idx) directly
- ESP8266: short-circuit idx==0 to avoid strncpy_P on non-PROGMEM ""
2026-03-03 08:19:30 -10:00
J. Nick Koston
8335bb5f8e
remove unnecessary PROGMEM empty string from weak default
...
The weak default is only reached when USE_ENTITY_ICON is disabled,
and get_icon_to() already short-circuits with return "" in that case.
2026-03-03 08:18:18 -10:00
J. Nick Koston
4a22afb79d
fix: ensure icon empty string is PROGMEM, skip lookup when disabled
...
- When USE_ENTITY_ICON is disabled, return "" directly without
calling through the lookup table
- When enabled, ensure the empty-string fallback (index 0 / out of
range) is a PROGMEM char array so strncpy_P on ESP8266 is safe
2026-03-03 08:15:56 -10:00
J. Nick Koston
1108511c63
move icons to progmem
2026-03-03 08:06:55 -10:00
J. Nick Koston
807e3f9efc
move icons to progmem
2026-03-03 08:04:09 -10:00
J. Nick Koston
b4bad962b1
Merge branch 'dev' into std-optional
2026-03-03 07:12:29 -10:00
J. Nick Koston
95544dddf8
[ci] Add code-owner-approved label workflow ( #14421 )
2026-03-03 07:11:47 -10:00
J. Nick Koston
b209c903bb
[core] Inline trivial Component state accessors ( #14425 )
2026-03-03 07:05:15 -10:00
J. Nick Koston
4f69c487da
[bk72xx] Fix ~100ms loop stalls by raising main task priority ( #14420 )
2026-03-03 07:04:12 -10:00
J. Nick Koston
78602ccacb
[ci] Add lint check to prevent powf in core and base entity platforms ( #14126 )
2026-03-03 07:03:50 -10:00
J. Nick Koston
1f1b20f4fe
[core] Pack entity string properties into PROGMEM-indexed uint8_t fields ( #14171 )
2026-03-03 07:03:24 -10:00
J. Nick Koston
d53ff7892a
[socket] Cache lwip_sock pointers and inline ready() chain ( #14408 )
2026-03-03 07:03:02 -10:00
b6f0bb9b6b
[speaker] Add off on capability to media player ( #9295 )
...
Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
Co-authored-by: Kevin Ahrendt <kevin.ahrendt@openhomefoundation.org >
2026-03-03 10:59:01 -05:00
Clyde Stubbs
cfde0613bb
[const][uart][usb_uart][weikai][core] Move constants to components/const ( #14430 )
2026-03-03 07:53:18 -05:00