J. Nick Koston
ab7e02d6bf
tweak
2026-02-21 20:21:34 -06:00
J. Nick Koston
46c123ec61
Merge branch 'dev' into api-stringref-user-services
2026-02-21 19:01:36 -06:00
J. Nick Koston
9571a979eb
[ci] Suggest StringRef instead of std::string_view ( #14183 )
2026-02-21 13:53:45 -06:00
J. Nick Koston
9f17994082
Merge branch 'dev' into api-stringref-user-services
2026-02-21 11:18:04 -06:00
J. Nick Koston
f77da803c9
[api] Write protobuf encode output to pre-sized buffer directly ( #14018 )
2026-02-20 21:39:18 -06:00
Jonathan Swoboda
9ce01fc369
[esp32] Add engineering_sample option for ESP32-P4 ( #14139 )
...
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-20 11:20:05 -05:00
J. Nick Koston
b5a8e1c94c
[ci] Update lint message to recommend constexpr over static const ( #14099 )
2026-02-19 09:06:46 -06:00
J. Nick Koston
0b2f79480b
[api] Use StringRef for user service string arguments
...
Replace std::string with StringRef (non-owning string view) for
user service string arguments in YAML-generated services. This
avoids unnecessary heap allocation when the protobuf decode buffer
already contains the string data.
Key changes:
- Frame helpers reserve +1 byte in rx_buf_ so string fields can be
safely null-terminated in-place after decode
- Add (null_terminate) protobuf field option to target only fields
that need it (ExecuteServiceArgument.string_ and
HomeAssistantStateResponse.state)
- Add StringRef template specializations for get_execute_arg_value
and to_service_arg_type
- Python codegen uses StringRef for string service args, with
automatic std::string fallback when deferred actions (delay,
wait_until, script.wait) are present in the action chain
- Add deferred flag to action registry for detecting actions that
store trigger args for later execution
- Simplify HomeAssistantStateResponse handler by removing
SmallBufferWithHeapFallback copy (state is null-terminated
in-place)
- Add compare() method to StringRef for external component
compatibility
Saves ~240 bytes of flash on ESP8266 by eliminating std::string
template instantiations for user service string arguments.
2026-02-12 19:51:39 -06:00
Guillermo Ruffino
7b251dcc31
[schema-gen] fix Windows: ensure UTF-8 encoding when reading component files ( #13952 )
2026-02-12 11:23:59 -05:00
J. Nick Koston
6c6da8a3cd
[api] Skip class generation for empty SOURCE_CLIENT protobuf messages ( #13880 )
2026-02-09 18:45:24 +00:00
J. Nick Koston
e4ea016d1e
[ci] Block new std::to_string() usage, suggest snprintf alternatives ( #13369 )
2026-02-09 12:26:19 -06:00
J. Nick Koston
c658d7b57f
[api] Merge auth check into base read_message, eliminate APIServerConnection ( #13873 )
2026-02-09 12:02:02 -06:00
J. Nick Koston
3cde3daceb
[api] Collapse APIServerConnection intermediary layer ( #13872 )
2026-02-09 08:45:33 -06:00
J. Nick Koston
140ec0639c
[api] Elide empty message construction in protobuf dispatch ( #13871 )
2026-02-09 03:24:45 -06:00
J. Nick Koston
55ef8393af
[api] Remove is_single parameter and fix batch buffer preparation ( #13773 )
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2026-02-05 15:19:03 +01:00
J. Nick Koston
f4e410f47f
[ci] Block new scanf() usage to prevent ~9.8KB flash bloat ( #13657 )
2026-02-06 02:56:43 +13:00
dependabot[bot]
4d05cd3059
Bump ruff from 0.14.14 to 0.15.0 ( #13752 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: J. Nick Koston <nick@home-assistant.io >
2026-02-04 09:24:05 +00:00
J. Nick Koston
8d0ce49eb4
[api] Eliminate intermediate buffers in protobuf dump helpers ( #13742 )
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2026-02-03 16:34:15 +01:00
J. Nick Koston
a7fbecb25c
[ci] Soft-deprecate str_sprintf/str_snprintf to prevent hidden heap allocations ( #13227 )
2026-01-26 17:28:07 -10:00
J. Nick Koston
fc16ad806a
[ci] Block sprintf/vsprintf usage, suggest snprintf alternatives ( #13305 )
2026-01-20 17:53:36 -10:00
J. Nick Koston
ea0fac96cb
[core][mqtt] Add str_sanitize_to(), soft-deprecate str_sanitize() ( #13233 )
2026-01-18 18:42:04 -10:00
J. Nick Koston
3f892711c7
[core][opentherm] Add format_bin_to(), soft-deprecate format_bin() ( #13232 )
2026-01-17 11:09:42 -10:00
J. Nick Koston
42491569c8
[analyze_memory] Add nRF52/Zephyr platform support for memory analysis ( #13249 )
2026-01-15 17:53:53 -10:00
J. Nick Koston
00cc9e44b6
[analyze_memory] Fix ELF section mapping for RTL87xx and LN882X platforms ( #13213 )
2026-01-15 10:38:24 -10:00
J. Nick Koston
7fed9144a6
[api] Use stack buffer for VERY_VERBOSE proto message dumps ( #13176 )
2026-01-13 08:04:48 -10:00
J. Nick Koston
6c043be4d3
[ci] Add format_hex_pretty to heap-allocating helper lint check ( #13178 )
2026-01-12 20:55:23 -10:00
J. Nick Koston
889886909b
[core] Soft deprecate heap-allocating string helpers to prevent fragmentation patterns ( #13156 )
2026-01-12 12:48:54 -10:00
J. Nick Koston
7ea6bcef88
[api] Use stack buffer for bytes field dumping in proto message logs ( #13162 )
2026-01-12 07:37:58 -10:00
J. Nick Koston
912f94d1e8
[api] Use StringRef for HomeassistantServiceMap.value to eliminate heap allocations ( #13154 )
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2026-01-11 17:54:06 -10:00
J. Nick Koston
45c0796e40
[ci] Add RP2040 to memory impact analysis ( #13134 )
2026-01-11 17:19:00 -10:00
Keith Burzinski
f2eb61a767
[api] Proto code generator changes for #12985 ( #13100 )
...
Co-authored-by: J. Nick Koston <nick@koston.org >
2026-01-10 15:43:27 -10:00
J. Nick Koston
546cdbde0d
[api] Simplify string handling by removing bifurcated client/server storage ( #12822 )
2026-01-07 08:23:28 -10:00
J. Nick Koston
5b9be7c169
[ci] Add lint check to prevent usage of deprecated CORE.using_esp_idf ( #13029 )
2026-01-06 17:54:04 -10:00
David Woodhouse
94bedd83be
async_tcp: Add AsyncClient for ESP-IDF and host ( #12337 )
...
Co-authored-by: J. Nick Koston <nick@home-assistant.io >
Co-authored-by: J. Nick Koston <nick+github@koston.org >
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2026-01-05 23:37:38 +00:00
J. Nick Koston
6aaaae5d0e
[ci] Add LibreTiny (BK72XX) to memory impact analysis ( #12983 )
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2026-01-05 07:40:49 -10:00
tomaszduda23
12027569d3
[nrf52,zigbee] add support for binary_input ( #11535 )
...
Co-authored-by: J. Nick Koston <nick@koston.org >
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
Co-authored-by: J. Nick Koston <nick+github@koston.org >
Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
Co-authored-by: Jonathan Swoboda <154711427+swoboda1337@users.noreply.github.com >
Co-authored-by: J. Nick Koston <nick@home-assistant.io >
2026-01-04 21:11:14 -05:00
J. Nick Koston
00fd4f2fdd
[esp8266] Exclude unused waveform code to save ~596 bytes RAM ( #12690 )
2026-01-02 19:51:07 -10:00
J. Nick Koston
2a5be725c8
[api] Enable zero-copy bytes SOURCE_BOTH messages ( #12816 )
2026-01-02 19:50:30 -10:00
J. Nick Koston
e7001c5eea
[api] Auto-generate zero-copy pointer access for incoming API bytes fields ( #12654 )
2026-01-02 14:05:37 -10:00
J. Nick Koston
6d4f4d8d23
[api] Auto-generate StringRef for incoming API string fields ( #12648 )
2026-01-02 08:17:05 -10:00
J. Nick Koston
b47b7d43fd
[api] Remove unused force parameter from encode_message ( #12551 )
2025-12-18 09:06:16 -07:00
Jonathan Swoboda
3d673ac55e
[ci] Check changed headers in clang-tidy when using --changed ( #12540 )
...
Co-authored-by: Claude <noreply@anthropic.com >
2025-12-17 11:13:18 -10:00
J. Nick Koston
608f834eaa
[ci] Isolate usb_cdc_acm in component tests due to tinyusb/usb_host conflict ( #12392 )
2025-12-10 00:49:29 +01:00
J. Nick Koston
5919355d18
[ci] Allow memory impact target branch build to fail without blocking CI ( #12381 )
2025-12-10 00:26:24 +01:00
Clyde Stubbs
3c7d6b7fc6
[ci-custom] Fix after switch from string to path ( #12314 )
2025-12-06 07:49:23 -06:00
Keith Burzinski
d4bd282bb4
[helpers] Fix unit tests following #12135 ( #12237 )
2025-12-01 22:08:49 +00:00
J. Nick Koston
fb82362e9c
[api] Eliminate rx_buf heap churn and release buffers after initial sync ( #12133 )
2025-11-28 12:13:29 -06:00
Jonathan Swoboda
61cef0a75c
[api] Fix format warnings in dump ( #11999 )
2025-11-19 12:58:47 -05:00
J. Nick Koston
82692d7053
[tests] Migrate components to shared packages and fix ID ambiguity ( #11819 )
2025-11-10 19:00:54 -06:00
J. Nick Koston
a5bf55b6ac
[ci] Fix component batching for beta/release branches (3-4 → 40 per batch) ( #11759 )
2025-11-07 20:19:45 +13:00