1
0
mirror of https://github.com/esphome/esphome.git synced 2025-09-01 10:52:19 +01:00
Commit Graph

271 Commits

Author SHA1 Message Date
J. Nick Koston
f808c38f10 [ruff] Enable PERF rules and fix all violations (#9874) 2025-07-25 08:15:54 -10:00
J. Nick Koston
ffebd30033 [ruff] Enable SIM rules and fix code simplification violations (#9872) 2025-07-25 18:26:08 +12:00
J. Nick Koston
c74f12be98 [api] Use C++17 nested namespace syntax (#9856) 2025-07-24 07:15:42 +00:00
J. Nick Koston
4a27b34685 [api] Reduce code duplication in protobuf dump methods with helper functions (#9809) 2025-07-24 15:19:58 +12:00
J. Nick Koston
f863189f96 [api] Simplify generated authentication check code (#9806) 2025-07-24 15:18:01 +12:00
J. Nick Koston
04d9698681 [api] Replace magic numbers with MESSAGE_TYPE constants in protobuf switch cases (#9776) 2025-07-24 15:16:54 +12:00
J. Nick Koston
6ac1073469 [ci] Support C++17 nested namespace syntax in linter (#9826) 2025-07-23 23:32:35 +12:00
Jonathan Swoboda
116c91e9c5 Bump ESP32 IDF version to 5.4.2 and Arduino version to 3.2.1 (#9770) 2025-07-22 13:15:31 -10:00
Guillermo Ruffino
3bb5a9e2f7 [schema-gen] fix referenced schemas when schema in component platform (#9755) 2025-07-23 06:52:56 +12:00
J. Nick Koston
a614a68f1a [api] Implement zero-copy string optimization for outgoing protobuf messages (#9790)
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
2025-07-22 07:33:03 -10:00
J. Nick Koston
ac08fb314f [api] Optimize protobuf memory usage with fixed-size arrays for Bluetooth UUIDs (#9782) 2025-07-22 21:50:49 +12:00
J. Nick Koston
db62a94712 [api] Implement zero-copy for all protobuf bytes fields (#9761) 2025-07-22 09:38:39 +12:00
J. Nick Koston
acca629c5c [api] Fix missing ifdef guards for AreaInfo and DeviceInfo messages (#9730) 2025-07-20 23:05:53 +00:00
J. Nick Koston
2540e7edb2 [api] Remove deprecated protobuf fields to reduce flash usage (#9679) 2025-07-21 10:35:53 +12:00
J. Nick Koston
5b3d61b4a6 [api] Fix missing ifdef guards for field_ifdef fields in protobuf base classes (#9693) 2025-07-20 15:41:00 +12:00
J. Nick Koston
89b9bddf1b [CI] Fix clang-tidy not running when platformio.ini changes (#9678) 2025-07-19 20:55:21 +12:00
Jesse Hills
19a68dc650 Add core team as codeowner of .github folder (#9663) 2025-07-19 10:55:22 +12:00
J. Nick Koston
71cc298363 Use message_source_map consistently in proto generation (#9542) 2025-07-19 00:28:08 +12:00
J. Nick Koston
ec5a517a76 Fix bluetooth_proxy heap allocations during BLE scanning (#9633) 2025-07-18 16:24:29 +12:00
J. Nick Koston
f5afe1145e Refactor API send_message from template to non-template implementation (#9561) 2025-07-18 10:28:14 +12:00
Jesse Hills
b361b93722 Add some AI instructions (#9606) 2025-07-17 22:40:28 +12:00
J. Nick Koston
9e621a1769 Update script/helpers.py to use ESPHome YAML parser for integration fixtures (#9544) 2025-07-16 22:19:27 +12:00
J. Nick Koston
15768ec00d Reduce API proto vtable overhead by splitting decode functionality (#9541) 2025-07-16 20:46:04 +12:00
J. Nick Koston
3ab1ee7a04 Reduce binary size with field-level conditional compilation for protobuf messages (#9473)
Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
2025-07-16 18:36:26 +12:00
J. Nick Koston
c691f01c7f Reduce flash usage by replacing ProtoSize template with specialized methods (#9487) 2025-07-16 01:50:32 +00:00
J. Nick Koston
f745135bdc Drop Python 3.10 support, require Python 3.11+ (#9522)
Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
2025-07-15 15:20:58 -10:00
J. Nick Koston
b5be45273f Improve API protobuf decode method readability and reduce code size (#9455) 2025-07-16 13:15:11 +12:00
J. Nick Koston
856cb182fc Remove dead code: 64-bit protobuf types never used in 7 years (#9471) 2025-07-15 15:12:12 -10:00
J. Nick Koston
63b8a219e6 Include entire platformio.ini in clang-tidy hash calculation (#9509) 2025-07-15 01:26:39 -05:00
J. Nick Koston
b2a8b0a22f Add pre-commit hooks to fix common formatting issues causing CI failures (#9494) 2025-07-15 12:25:18 +12:00
J. Nick Koston
1fda40f0ce Only generate protobuf encode/decode methods for the message direction they're used (#9461) 2025-07-13 10:58:57 +12:00
J. Nick Koston
8863188dd8 Apply existing protobuf buffer optimization to nested message encoding (~2.3x speed up) (#9458) 2025-07-13 06:55:32 +12:00
J. Nick Koston
ca5ee0ce07 Reduce API flash usage by eliminating unnecessary template instantiations (#9452) 2025-07-12 03:56:08 +00:00
J. Nick Koston
01f949e097 Optimize API proto size calculations by removing redundant force parameter (#9449) 2025-07-11 21:08:52 -05:00
J. Nick Koston
143bf694c7 Optimize API flash usage by storing message size at compile time (#9447) 2025-07-11 19:38:23 -05:00
J. Nick Koston
8953e53a04 CI: Centralize test determination logic to reduce unnecessary job runners (#9432) 2025-07-11 21:54:57 +12:00
J. Nick Koston
e9c7596e00 Fix clang-tidy triggering full scan on Python-only core file changes (#9412) 2025-07-10 12:41:59 +12:00
J. Nick Koston
6616567b05 Speed up clang-tidy CI by 80%+ with incremental checking (#9396) 2025-07-10 09:00:44 +12:00
J. Nick Koston
e58c793da2 Replace deprecated sprintf with snprintf in API protobuf code generation (#9365) 2025-07-08 08:38:41 +12:00
Jesse Hills
8147d117a0 [core] Move platform helper implementations into their own file (#9361) 2025-07-07 15:55:02 +00:00
J. Nick Koston
4ef5c941c9 Fix missing ifdef guards in API protobuf generator (#9296) 2025-07-03 09:39:20 +12:00
J. Nick Koston
eba2c82fec Use encode_bytes() for protobuf bytes fields (#9289) 2025-07-02 04:36:09 +00:00
Jesse Hills
6a096c1d5a [api] Dump bytes fields as hex instead of unreadable string (#9288) 2025-07-02 13:36:15 +12:00
J. Nick Koston
e907050a17 Remove unused return value from read_message and fix ifdef placement in generated API code (#9256) 2025-06-30 11:45:03 +12:00
Jesse Hills
09e5aa6011 [script] Add exec bit to run-in-env (#9212) 2025-06-26 00:59:16 -05:00
J. Nick Koston
f029f4f20e Fix missing protobuf message dump for batched messages with very verbose logging (#9206) 2025-06-26 13:57:41 +12:00
J. Nick Koston
a08d021f77 Reduce code duplication in auto-generated API protocol code (#9097) 2025-06-19 12:10:01 +12:00
J. Nick Koston
b7b1d17ecb Remove empty generated protobuf methods (#9098) 2025-06-19 12:06:39 +12:00
J. Nick Koston
1dbebe90ba Add common base classes for entity protobuf messages to reduce duplicate code (#9090) 2025-06-16 09:29:25 +12:00
J. Nick Koston
2ed5611a08 Replace API deferred queue with efficient message batching system (#9012) 2025-06-11 11:49:15 +12:00