mirror of
https://github.com/esphome/esphome.git
synced 2026-09-27 15:00:24 +00:00
Add automated benchmarks using Google Benchmark to prevent performance regressions in the API protobuf encoding/decoding and core loop paths. Benchmarks cover: - Protobuf encode: SensorState, BinarySensorState, HelloResponse, LightState, DeviceInfoResponse (20 nested devices + 20 areas) - Protobuf decode: HelloRequest, SwitchCommand, LightCommand - Protobuf calculate_size and full calc+encode send path - Varint parse/encode/size for various value ranges - Scheduler call/next_schedule_in with idle and active timers - Application loop component dispatch and blocking guard overhead Infrastructure: - Extract shared build logic from cpp_unit_test.py into test_helpers.py - Add cpp_benchmark.py mirroring the unit test build pattern - Support benchmark.yaml per component dir for declaring dependencies - Add CodSpeed CI workflow triggered on api/core changes - Fix ProtoMessage protected destructor on host platform
6 lines
170 B
Plaintext
6 lines
170 B
Plaintext
# Gitignore settings for ESPHome
|
|
# This is an example and may include too much for your use-case.
|
|
# You can modify this file to suit your needs.
|
|
/.esphome/
|
|
/secrets.yaml
|