J. Nick Koston
fb4d488864
Merge remote-tracking branch 'upstream/dev' into integration
2026-04-03 21:09:25 -10:00
Clyde Stubbs
89de00e7ce
[online_image] Clear LVGL dsc when image size changes. ( #15360 )
2026-04-04 17:04:01 +11:00
alorente and clydebarrow
53b6528cc5
[epaper_spi] Allow runtime rotation change ( #15419 )
...
Co-authored-by: clydebarrow <2366188+clydebarrow@users.noreply.github.com >
2026-04-04 16:02:15 +10:00
Boris Krivonog
16ae753317
[mitsubishi_cn105] Add climate component for Mitsubishi A/C units with CN105 connector (Part 2) ( #15358 )
2026-04-03 19:44:04 -10:00
J. Nick Koston
f425d8509e
Merge remote-tracking branch 'upstream/total-daily-energy-no-loop' into integration
2026-04-03 18:49:02 -10:00
J. Nick Koston
8fc753ce7e
Merge branch 'integration' of https://github.com/esphome/esphome into integration
2026-04-03 18:48:46 -10:00
J. Nick Koston
e166ee6f60
Merge remote-tracking branch 'upstream/cron-star-slash' into integration
2026-04-03 18:48:32 -10:00
J. Nick Koston
102a3e12fe
Merge branch 'integration' of https://github.com/esphome/esphome into integration
2026-04-03 18:22:32 -10:00
J. Nick Koston
06966f5641
Merge branch 'cron-star-slash' into integration
2026-04-03 18:22:20 -10:00
J. Nick Koston
c0cac732c7
Merge branch 'cron-trigger-interval' into integration
2026-04-03 18:22:14 -10:00
J. Nick Koston
90df902d09
[time] Support */N syntax in cron expressions
2026-04-03 18:20:53 -10:00
J. Nick Koston
c3b8949696
Merge branch 'cron-trigger-interval' of https://github.com/esphome/esphome into cron-trigger-interval
2026-04-03 18:13:39 -10:00
J. Nick Koston
f6f07ef147
[time] Use set_interval for CronTrigger instead of loop()
2026-04-03 18:11:45 -10:00
J. Nick Koston
89ff3491b6
[time] Use set_interval for CronTrigger instead of loop()
2026-04-03 18:10:17 -10:00
J. Nick Koston
3921e01cac
[total_daily_energy] Replace loop() with timeout-based midnight reset
2026-04-03 18:01:48 -10:00
J. Nick Koston
2447ccb315
Merge remote-tracking branch 'origin/total-daily-energy-no-loop' into integration
2026-04-03 17:57:18 -10:00
J. Nick Koston
5658a2054c
[total_daily_energy] Replace loop() with timeout-based midnight reset
2026-04-03 17:51:51 -10:00
J. Nick Koston
eb7ef2410b
Merge remote-tracking branch 'upstream/hlw8012-logv-fix' into integration
2026-04-03 17:45:03 -10:00
J. Nick Koston
1f098313ae
Merge remote-tracking branch 'upstream/total-daily-energy-no-loop' into integration
2026-04-03 17:44:58 -10:00
J. Nick Koston
089b38f77a
[total_daily_energy] Replace loop() with timeout-based midnight reset
2026-04-03 17:30:12 -10:00
J. Nick Koston
5cec03b004
[hlw8012] Change periodic sensor reading logs to LOGV
2026-04-03 17:03:03 -10:00
J. Nick Koston
1dc0b4d03d
Merge remote-tracking branch 'upstream/dev' into integration
2026-04-03 16:58:26 -10:00
J. Nick Koston
2337767c38
[modbus_controller] Fix format specifier warnings ( #15429 )
2026-04-03 16:37:31 -10:00
J. Nick Koston
4f2290d548
[web_server] Disable loop when no SSE clients are connected ( #15428 )
2026-04-03 16:37:20 -10:00
Clyde Stubbs
7ab26a4fe0
[ili9xxx][st7735] Add deprecation warnings ( #15416 )
2026-04-04 13:21:58 +11:00
J. Nick Koston
0c00af88e2
Merge remote-tracking branch 'upstream/web_server_disable_loop' into integration
2026-04-03 14:49:29 -10:00
J. Nick Koston
fec8fe932f
[web_server] Skip ping interval when no SSE clients are connected
2026-04-03 14:49:02 -10:00
J. Nick Koston
84787e05b1
Merge remote-tracking branch 'upstream/web_server_disable_loop' into integration
2026-04-03 14:33:32 -10:00
J. Nick Koston
945a6b1063
Merge remote-tracking branch 'upstream/dev' into integration
2026-04-03 14:33:20 -10:00
J. Nick Koston
308877cf6e
[web_server] Disable loop when no SSE clients are connected
2026-04-03 14:32:42 -10:00
J. Nick Koston
ef41caa347
Merge branch 'api-proto-max-length' into integration
2026-04-03 14:16:20 -10:00
J. Nick Koston
80502e8c39
[api] Rename encode_short_string to write_short_string
2026-04-03 14:15:19 -10:00
J. Nick Koston
dd08d7631e
[core] Add test for register_unit_of_measurement max length
2026-04-03 14:13:03 -10:00
J. Nick Koston
5740d74d97
[core] Enforce UNIT_OF_MEASUREMENT_MAX_LENGTH in register_unit_of_measurement
2026-04-03 14:11:51 -10:00
J. Nick Koston
f0622b7624
[api] Add max_data_length = 63 for unit_of_measurement fields
...
Add UNIT_OF_MEASUREMENT_MAX_LENGTH = 63 constant in core/config.py
and enforce it in sensor and number component validators.
Annotate unit_of_measurement proto fields with (max_data_length) = 63
so the codegen emits constant-size length varint calculations.
2026-04-03 14:10:25 -10:00
J. Nick Koston
4ce24389b7
[api] Add max_data_length = 47 for device_class fields
2026-04-03 14:06:00 -10:00
J. Nick Koston
fd68e9a827
[api] Rename encode_raw_short_string to encode_short_string
2026-04-03 14:01:14 -10:00
J. Nick Koston
2d13def0ee
[api] Add encode_raw_short_string for forced string fields with max_data_length
...
Replace 3-call sequence (write_raw_byte + write_raw_byte + encode_raw)
with single inlined encode_raw_short_string call for forced string
fields with max_data_length < 128. The compiler can hoist the pos
pointer across all three writes in one function boundary.
2026-04-03 14:00:01 -10:00
J. Nick Koston
675400cc31
[api] Use .empty() for string zero check in single-byte varint size
2026-04-03 13:51:25 -10:00
J. Nick Koston
0124087e73
[api] Add max_data_length = 63 for icon fields
2026-04-03 13:40:27 -10:00
J. Nick Koston
5dbe2a7741
[api] Add comment tying max_data_length = 120 to NAME_MAX_LENGTH
2026-04-03 13:36:32 -10:00
J. Nick Koston
e174e579ed
[api] Add max_data_length proto option and optimize entity name/object_id
...
Add max_data_length field option for string/bytes fields. When
max_data_length < 128, the codegen emits constant-size length varint
calculations and direct byte writes.
Annotate all entity name and object_id fields with
(max_data_length) = 120 and (force) = true across all 25
ListEntities*Response messages (50 fields).
Generated code changes:
- calculate_size: `calc_length(1, size)` -> `2 + size` (constant)
- encode: `encode_string(N, ref)` -> `write_raw_byte(tag) + write_raw_byte(len) + encode_raw(data, len)`
Eliminates 2 function calls per field per entity list response,
removes zero-check branches, and removes varint size computation.
2026-04-03 13:33:51 -10:00
dependabot[bot]
533eeabf1d
Bump aioesphomeapi from 44.8.1 to 44.9.0 ( #15425 )
...
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-04-03 23:17:49 +00:00
J. Nick Koston
85d9f36028
Merge remote-tracking branch 'upstream/api-proto-max-value-codegen' into integration
2026-04-03 12:48:23 -10:00
J. Nick Koston
9ece286a26
[api] Simplify _get_single_byte_varint_size
2026-04-03 12:32:32 -10:00
J. Nick Koston
fa80caf0ff
[api] Fall back to RAW_ENCODE_MAP when SMALL_MAP has no entry
2026-04-03 12:31:44 -10:00
J. Nick Koston
f3238a857e
[api] Select encode map before lookup
2026-04-03 12:31:01 -10:00
J. Nick Koston
02b424388e
[api] Use RAW_ENCODE_SMALL_MAP for max_value encode optimization
...
Replace inline encode_func check with a lookup table, matching the
existing RAW_ENCODE_MAP pattern.
2026-04-03 12:28:51 -10:00
J. Nick Koston
363d811cc1
[api] Use _get_simple_size_calculation for FixedArrayBytesType fallback
...
Replace inline calc_length/calc_length_force formatting with the
existing helper method.
2026-04-03 12:27:55 -10:00
J. Nick Koston
1e68a90ac9
[api] Extract _get_single_byte_varint_size helper in codegen
...
Refactor the constant-size varint pattern into a reusable helper
method on the TypeInfo base class, used by both UInt32Type (max_value)
and FixedArrayBytesType (fixed_array_size < 128).
2026-04-03 12:26:51 -10:00