Download Latest Version 2025.7.2 source code.tar.gz (4.3 MB)
Email in envelope

Get an email when there's a new version of ESPHome

Home / 2025.7.0
Name Modified Size InfoDownloads / Week
Parent folder
2025.7.0 source code.tar.gz 2025-07-16 4.3 MB
2025.7.0 source code.zip 2025-07-16 7.4 MB
README.md 2025-07-16 50.7 kB
Totals: 3 Items   11.8 MB 3

Full list of changes

New Components

  • Add support for Xiaomi XMWSDJ04MMC [#8591] by @medusalix (new-integration)
  • [opt3001] New component [#6625] by @ccutrer (new-integration)
  • [esp32_hosted] Add support for remote wifi [#8833] by @swoboda1337 (new-integration)
  • [pi4ioe5v6408] Add new IO Expander [#8888] by @jesserockz (new-integration)
  • Add support for LN882X Family (with LibreTiny) [#8954] by @lamauny (new-integration) (notable-change)
  • Replace custom OTA implementation in web_server_base [#9274] by @bdraco (new-integration) (breaking-change)
  • [ds2484] New component [#9147] by @mrk-its (new-integration)
  • [sx127x] Add sx127x component [#7490] by @swoboda1337 (new-integration)
  • Introduce base Camera class to support alternative camera implementations [#9285] by @DT-art1 (new-integration)
  • [sx126x] Add sx126x component [#8516] by @swoboda1337 (new-integration)
  • lps22: add a component [#7540] by @nagisa (new-integration)
  • Add support for GL-R01 I2C - Time of Flight sensor [#8329] by @pkejval (new-integration)

Breaking Changes

  • [binary_sensor] Add action to invalidate state and pass to HA [#8961] by @clydebarrow (breaking-change)
  • [esp32_hall] Remove esp32_hall [#9117] by @swoboda1337 (breaking-change)
  • [web_server] Upgrade ESPAsync libraries [#8867] by @kuba2k2 (breaking-change)
  • Bump ESP32 Arduino version to 3.1.3 [#8604] by @swoboda1337 (breaking-change)
  • [mqtt] Don't wait for connection unless configured to [#8933] by @jesserockz (breaking-change)
  • [API] Sub devices and areas [#8544] by @dala318 (breaking-change)
  • Reduce memory required for sensor entities [#9201] by @bdraco (breaking-change)
  • Optimize TemplatableValue memory [#9202] by @bdraco (breaking-change)
  • Optimize Application class memory layout and reduce loop_interval size [#9208] by @bdraco (breaking-change)
  • [pins] Update internal_gpio_pin_number to work directly like internal_gpio_output_pin_number [#9270] by @jesserockz (breaking-change)
  • [smt100] Rename dielectric_constant to permittivity [#9175] by @piechade (breaking-change)
  • Fix entity hash collisions by enforcing unique names across devices per platform [#9276] by @bdraco (breaking-change)
  • [esp32] Remove IDF 4 support and clean up code [#9145] by @swoboda1337 (breaking-change)
  • Replace custom OTA implementation in web_server_base [#9274] by @bdraco (new-integration) (breaking-change)
  • Reduce RAM usage by optimizing Color constant storage [#9339] by @bdraco (breaking-change)
  • Optimize logger callback API by including message length parameter [#9368] by @bdraco (breaking-change)
  • Conditionally compile API user services to save 4.3KB flash (follow-up to [#9262]) [#9451] by @bdraco (breaking-change)
  • [json] Bump ArduinoJson library to 7.4.2 [#8857] by @kahrendt (breaking-change)

Notable Changes

  • Add support for LN882X Family (with LibreTiny) [#8954] by @lamauny (new-integration) (notable-change)
  • Jinja expressions in configs (Take [#3]) [#8955] by @jpeletier (notable-change)

All changes

Show - [core/pins] improve pins types [[#8848]](https://github.com/esphome/esphome/pull/8848) by [@ximex](https://github.com/ximex) - [binary_sensor] Add action to invalidate state and pass to HA [[#8961]](https://github.com/esphome/esphome/pull/8961) by [@clydebarrow](https://github.com/clydebarrow) (breaking-change) - ina219: powerdown the sensor on shutdown [[#9053]](https://github.com/esphome/esphome/pull/9053) by [@youknow0](https://github.com/youknow0) - Build with C++17 [[#8603]](https://github.com/esphome/esphome/pull/8603) by [@HeMan](https://github.com/HeMan) - Move some consts to ``const.py`` [[#9084]](https://github.com/esphome/esphome/pull/9084) by [@kbx81](https://github.com/kbx81) - Reduce Component memory usage by 20 bytes per component [[#9080]](https://github.com/esphome/esphome/pull/9080) by [@bdraco](https://github.com/bdraco) - [ruff] Apply various ruff suggestions [[#8947]](https://github.com/esphome/esphome/pull/8947) by [@jesserockz](https://github.com/jesserockz) - Bump LibreTiny recommended version to 1.9.1 [[#9110]](https://github.com/esphome/esphome/pull/9110) by [@swoboda1337](https://github.com/swoboda1337) - [esp32_hall] Remove esp32_hall [[#9117]](https://github.com/esphome/esphome/pull/9117) by [@swoboda1337](https://github.com/swoboda1337) (breaking-change) - Resolve esphome::optional vs std::optional ambiguity in code generation [[#9119]](https://github.com/esphome/esphome/pull/9119) by [@bdraco](https://github.com/bdraco) - Add intent progress event to voice assistant enum [[#9103]](https://github.com/esphome/esphome/pull/9103) by [@synesthesiam](https://github.com/synesthesiam) - Pin libretiny to 1.9.1 [[#9118]](https://github.com/esphome/esphome/pull/9118) by [@swoboda1337](https://github.com/swoboda1337) - Bump ruff in pre-commit to 0.12.0 [[#9121]](https://github.com/esphome/esphome/pull/9121) by [@bdraco](https://github.com/bdraco) - [heatpumpir] Bump HeatpumpIR to 1.0.35 [[#9123]](https://github.com/esphome/esphome/pull/9123) by [@swoboda1337](https://github.com/swoboda1337) - [i2s_audio] Bump esphome/ESP32-audioI2S to 2.3.0 [[#9124]](https://github.com/esphome/esphome/pull/9124) by [@swoboda1337](https://github.com/swoboda1337) - Reduce CPU overhead by allowing components to disable their loop() [[#9089]](https://github.com/esphome/esphome/pull/9089) by [@bdraco](https://github.com/bdraco) - Add support for Xiaomi XMWSDJ04MMC [[#8591]](https://github.com/esphome/esphome/pull/8591) by [@medusalix](https://github.com/medusalix) (new-integration) - [web_server] Upgrade ESPAsync libraries [[#8867]](https://github.com/esphome/esphome/pull/8867) by [@kuba2k2](https://github.com/kuba2k2) (breaking-change) - Bump ESP32 Arduino version to 3.1.3 [[#8604]](https://github.com/esphome/esphome/pull/8604) by [@swoboda1337](https://github.com/swoboda1337) (breaking-change) - Remove empty generated protobuf methods [[#9098]](https://github.com/esphome/esphome/pull/9098) by [@bdraco](https://github.com/bdraco) - Reduce code duplication in auto-generated API protocol code [[#9097]](https://github.com/esphome/esphome/pull/9097) by [@bdraco](https://github.com/bdraco) - Use smaller atomic types for ESP32 BLE Tracker ring buffer indices [[#9106]](https://github.com/esphome/esphome/pull/9106) by [@bdraco](https://github.com/bdraco) - Optimize API server performance by using cached loop time [[#9104]](https://github.com/esphome/esphome/pull/9104) by [@bdraco](https://github.com/bdraco) - Optimize API component memory usage by reordering class members to reduce padding [[#9111]](https://github.com/esphome/esphome/pull/9111) by [@bdraco](https://github.com/bdraco) - Optimize bluetooth_proxy memory usage on ESP32 [[#9114]](https://github.com/esphome/esphome/pull/9114) by [@bdraco](https://github.com/bdraco) - Add enable_loop_soon_any_context() for thread and ISR-safe loop enabling [[#9127]](https://github.com/esphome/esphome/pull/9127) by [@bdraco](https://github.com/bdraco) - Optimize OTA loop to avoid unnecessary stack allocations [[#9129]](https://github.com/esphome/esphome/pull/9129) by [@bdraco](https://github.com/bdraco) - [i2c] Expose internal i2c bus port number [[#9136]](https://github.com/esphome/esphome/pull/9136) by [@jesserockz](https://github.com/jesserockz) - Disable Ethernet loop polling when connected and stable [[#9102]](https://github.com/esphome/esphome/pull/9102) by [@bdraco](https://github.com/bdraco) - Clean up RAMAllocators in audio related code [[#9140]](https://github.com/esphome/esphome/pull/9140) by [@jesserockz](https://github.com/jesserockz) - Clean up RAMAllocators in http_request code [[#9143]](https://github.com/esphome/esphome/pull/9143) by [@jesserockz](https://github.com/jesserockz) - Clean up RAMAllocators in display related code [[#9141]](https://github.com/esphome/esphome/pull/9141) by [@jesserockz](https://github.com/jesserockz) - [i2c] Make ``get_port()`` public [[#9146]](https://github.com/esphome/esphome/pull/9146) by [@jesserockz](https://github.com/jesserockz) - [esp32_camera] Allow sharing i2c bus [[#9137]](https://github.com/esphome/esphome/pull/9137) by [@jesserockz](https://github.com/jesserockz) - [nextion] Add command queuing to prevent command loss when spacing is active [[#9139]](https://github.com/esphome/esphome/pull/9139) by [@edwardtfn](https://github.com/edwardtfn) - [nextion] Cached timing optimization [[#9150]](https://github.com/esphome/esphome/pull/9150) by [@edwardtfn](https://github.com/edwardtfn) - [wifi, wifi_info] Tidy up/shorten more log messages [[#9151]](https://github.com/esphome/esphome/pull/9151) by [@kbx81](https://github.com/kbx81) - [bh1750] Remove redundant platform name from logging [[#9153]](https://github.com/esphome/esphome/pull/9153) by [@kbx81](https://github.com/kbx81) - Add option to enable support for USB Hubs [[#9154]](https://github.com/esphome/esphome/pull/9154) by [@RoganDawes](https://github.com/RoganDawes) - [spi] Enable >6 devices with ESP-IDF [[#9128]](https://github.com/esphome/esphome/pull/9128) by [@clydebarrow](https://github.com/clydebarrow) - Clean up RAMAllocators in light related code [[#9142]](https://github.com/esphome/esphome/pull/9142) by [@jesserockz](https://github.com/jesserockz) - [nextion] Extract common `upload_end_` function to shared file [[#9155]](https://github.com/esphome/esphome/pull/9155) by [@edwardtfn](https://github.com/edwardtfn) - Improve on C++17 [[#9170]](https://github.com/esphome/esphome/pull/9170) by [@HeMan](https://github.com/HeMan) - [nextion] Revert to `millis()` on `recv_ret_string_` [[#9168]](https://github.com/esphome/esphome/pull/9168) by [@edwardtfn](https://github.com/edwardtfn) - [const] Move ``CONF_DEVICES`` to ``const.py`` [[#9179]](https://github.com/esphome/esphome/pull/9179) by [@jesserockz](https://github.com/jesserockz) - Reduce Logger memory usage by optimizing variable sizes [[#9161]](https://github.com/esphome/esphome/pull/9161) by [@bdraco](https://github.com/bdraco) - Fix slow noise handshake by reading multiple messages per loop [[#9130]](https://github.com/esphome/esphome/pull/9130) by [@bdraco](https://github.com/bdraco) - Reduce RAM usage for scheduled tasks [[#9180]](https://github.com/esphome/esphome/pull/9180) by [@bdraco](https://github.com/bdraco) - Pre-reserve looping components vector to reduce memory allocations [[#9177]](https://github.com/esphome/esphome/pull/9177) by [@bdraco](https://github.com/bdraco) - [lvgl] Add start_value to bar; make values templatable and updateable [[#9056]](https://github.com/esphome/esphome/pull/9056) by [@clydebarrow](https://github.com/clydebarrow) - [lvgl] Use styles instead of object properties for themes [[#9116]](https://github.com/esphome/esphome/pull/9116) by [@clydebarrow](https://github.com/clydebarrow) - Feature fontmetrics [[#8978]](https://github.com/esphome/esphome/pull/8978) by [@JonasB2497](https://github.com/JonasB2497) - Image should not update when setting URL [[#8885]](https://github.com/esphome/esphome/pull/8885) by [@gpambrozio](https://github.com/gpambrozio) - [opt3001] New component [[#6625]](https://github.com/esphome/esphome/pull/6625) by [@ccutrer](https://github.com/ccutrer) (new-integration) - [mqtt] Don't wait for connection unless configured to [[#8933]](https://github.com/esphome/esphome/pull/8933) by [@jesserockz](https://github.com/jesserockz) (breaking-change) - [modbus_controller] Fix modbus read_lambda precision for non-floats or large integers [[#9159]](https://github.com/esphome/esphome/pull/9159) by [@jpeletier](https://github.com/jpeletier) - [helpers] Add ``format_mac_address_pretty`` function, migrate components [[#9193]](https://github.com/esphome/esphome/pull/9193) by [@kbx81](https://github.com/kbx81) - [ld2450] Use ``App.get_loop_component_start_time()``, shorten log messages [[#9192]](https://github.com/esphome/esphome/pull/9192) by [@kbx81](https://github.com/kbx81) - [ld2420] Shorten log messages + other clean-up [[#9200]](https://github.com/esphome/esphome/pull/9200) by [@kbx81](https://github.com/kbx81) - [ld2410] Use ``App.get_loop_component_start_time()``, shorten log messages [[#9194]](https://github.com/esphome/esphome/pull/9194) by [@kbx81](https://github.com/kbx81) - [esp32_hall] Add dummy component [[#9125]](https://github.com/esphome/esphome/pull/9125) by [@swoboda1337](https://github.com/swoboda1337) - fix(MQTT): Call disconnect callback on DNS error [[#9016]](https://github.com/esphome/esphome/pull/9016) by [@Rapsssito](https://github.com/Rapsssito) - Rename kVARh/VARh to kvarh/varh [[#9191]](https://github.com/esphome/esphome/pull/9191) by [@Drafteed](https://github.com/Drafteed) - [API] Sub devices and areas [[#8544]](https://github.com/esphome/esphome/pull/8544) by [@dala318](https://github.com/dala318) (breaking-change) - [binary_sensor] Add timeout filter [[#9198]](https://github.com/esphome/esphome/pull/9198) by [@clydebarrow](https://github.com/clydebarrow) - [lvgl] Allow linear positioning of grid cells [[#9196]](https://github.com/esphome/esphome/pull/9196) by [@clydebarrow](https://github.com/clydebarrow) - Reduce memory required for sensor entities [[#9201]](https://github.com/esphome/esphome/pull/9201) by [@bdraco](https://github.com/bdraco) (breaking-change) - Reduce logger CPU usage by disabling loop when buffer is empty [[#9160]](https://github.com/esphome/esphome/pull/9160) by [@bdraco](https://github.com/bdraco) - Optimize API connection loop performance [[#9184]](https://github.com/esphome/esphome/pull/9184) by [@bdraco](https://github.com/bdraco) - Optimize TemplatableValue memory [[#9202]](https://github.com/esphome/esphome/pull/9202) by [@bdraco](https://github.com/bdraco) (breaking-change) - Optimize API connection memory with tagged pointers [[#9203]](https://github.com/esphome/esphome/pull/9203) by [@bdraco](https://github.com/bdraco) - Fix missing protobuf message dump for batched messages with very verbose logging [[#9206]](https://github.com/esphome/esphome/pull/9206) by [@bdraco](https://github.com/bdraco) - Optimize Application class memory layout and reduce loop_interval size [[#9208]](https://github.com/esphome/esphome/pull/9208) by [@bdraco](https://github.com/bdraco) (breaking-change) - Use shared workflow for locking [[#9211]](https://github.com/esphome/esphome/pull/9211) by [@jesserockz](https://github.com/jesserockz) - [esp32] Improve and simplify IDF component support [[#9163]](https://github.com/esphome/esphome/pull/9163) by [@swoboda1337](https://github.com/swoboda1337) - [ld2450] More optimizing, fix copypasta [[#9210]](https://github.com/esphome/esphome/pull/9210) by [@kbx81](https://github.com/kbx81) - [ci] Lint lock.yml [[#9214]](https://github.com/esphome/esphome/pull/9214) by [@jesserockz](https://github.com/jesserockz) - [script] Add exec bit to run-in-env [[#9212]](https://github.com/esphome/esphome/pull/9212) by [@jesserockz](https://github.com/jesserockz) - [ld2410] More optimizations [[#9209]](https://github.com/esphome/esphome/pull/9209) by [@kbx81](https://github.com/kbx81) - [ld2450] Move consts to cpp file, optimize memory use [[#9215]](https://github.com/esphome/esphome/pull/9215) by [@kbx81](https://github.com/kbx81) - [tests] Remove extra newline [[#9213]](https://github.com/esphome/esphome/pull/9213) by [@jesserockz](https://github.com/jesserockz) - Optimize SafeModeComponent memory layout to reduce padding [[#9228]](https://github.com/esphome/esphome/pull/9228) by [@bdraco](https://github.com/bdraco) - [esp32_hosted] Add support for remote wifi [[#8833]](https://github.com/esphome/esphome/pull/8833) by [@swoboda1337](https://github.com/swoboda1337) (new-integration) - use c++17 `[[fallthrough]];` [[#9149]](https://github.com/esphome/esphome/pull/9149) by [@ximex](https://github.com/ximex) - [esp32] Update IDF components to use the registry [[#9223]](https://github.com/esphome/esphome/pull/9223) by [@swoboda1337](https://github.com/swoboda1337) - [wifi] Reduce memory usage [[#9232]](https://github.com/esphome/esphome/pull/9232) by [@bdraco](https://github.com/bdraco) - [ethernet] Reduce memory usage by 8 bytes [[#9231]](https://github.com/esphome/esphome/pull/9231) by [@bdraco](https://github.com/bdraco) - [gpio] Reduce ESP32 memory usage by optimizing struct padding [[#9230]](https://github.com/esphome/esphome/pull/9230) by [@bdraco](https://github.com/bdraco) - Reduce component_iterator memory usage [[#9205]](https://github.com/esphome/esphome/pull/9205) by [@bdraco](https://github.com/bdraco) - Upgrade to use C++20 [[#9135]](https://github.com/esphome/esphome/pull/9135) by [@HeMan](https://github.com/HeMan) - [mcp23xxx_base] fix pin interrupts [[#9244]](https://github.com/esphome/esphome/pull/9244) by [@ssieb](https://github.com/ssieb) - [i2c] Disable i2c scan on certain idf versions [[#9237]](https://github.com/esphome/esphome/pull/9237) by [@swoboda1337](https://github.com/swoboda1337) - Reduce libretiny logconfig messages [[#9239]](https://github.com/esphome/esphome/pull/9239) by [@bdraco](https://github.com/bdraco) - Disable dynamic log level control for ESP32 ESP-IDF builds [[#9233]](https://github.com/esphome/esphome/pull/9233) by [@bdraco](https://github.com/bdraco) - Silence protobuf compatibility warnings when importing aioesphomeapi [[#9236]](https://github.com/esphome/esphome/pull/9236) by [@bdraco](https://github.com/bdraco) - [esp32] Allow 5.4.2 [[#9243]](https://github.com/esphome/esphome/pull/9243) by [@swoboda1337](https://github.com/swoboda1337) - Remove backports of `std` [[#9246]](https://github.com/esphome/esphome/pull/9246) by [@HeMan](https://github.com/HeMan) - Fix buffer corruption in API message encoding with very verbose logging [[#9249]](https://github.com/esphome/esphome/pull/9249) by [@bdraco](https://github.com/bdraco) - Extract lock-free queue and event pool to core helpers [[#9238]](https://github.com/esphome/esphome/pull/9238) by [@bdraco](https://github.com/bdraco) - Replace ping retry timer with batch queue fallback [[#9207]](https://github.com/esphome/esphome/pull/9207) by [@bdraco](https://github.com/bdraco) - [thermostat] Memory optimizations [[#9259]](https://github.com/esphome/esphome/pull/9259) by [@kbx81](https://github.com/kbx81) - [adc] Memory optimizations [[#9247]](https://github.com/esphome/esphome/pull/9247) by [@kbx81](https://github.com/kbx81) - [light] Memory optimizations [[#9260]](https://github.com/esphome/esphome/pull/9260) by [@kbx81](https://github.com/kbx81) - Reduce web_server code duplication by extracting detail parameter parsing [[#9257]](https://github.com/esphome/esphome/pull/9257) by [@bdraco](https://github.com/bdraco) - Remove redundant get_setup_priority() overrides returning default value [[#9253]](https://github.com/esphome/esphome/pull/9253) by [@bdraco](https://github.com/bdraco) - Fix MQTT blocking main loop for multiple seconds at a time [[#8325]](https://github.com/esphome/esphome/pull/8325) by [@dwmw2](https://github.com/dwmw2) - Remove single-use send_*_info wrappers in API connection [[#9255]](https://github.com/esphome/esphome/pull/9255) by [@bdraco](https://github.com/bdraco) - Reduce API memory footprint through bitfield consolidation and type sizing [[#9252]](https://github.com/esphome/esphome/pull/9252) by [@bdraco](https://github.com/bdraco) - Reduce flash usage by making add_message_object non-template [[#9258]](https://github.com/esphome/esphome/pull/9258) by [@bdraco](https://github.com/bdraco) - Remove unused return value from read_message and fix ifdef placement in generated API code [[#9256]](https://github.com/esphome/esphome/pull/9256) by [@bdraco](https://github.com/bdraco) - Reduce web_server RAM usage by 96 bytes with conditional sorting compilation [[#9227]](https://github.com/esphome/esphome/pull/9227) by [@bdraco](https://github.com/bdraco) - Add interrupt support to GPIO binary sensors [[#9115]](https://github.com/esphome/esphome/pull/9115) by [@bdraco](https://github.com/bdraco) - [pi4ioe5v6408] Add new IO Expander [[#8888]](https://github.com/esphome/esphome/pull/8888) by [@jesserockz](https://github.com/jesserockz) (new-integration) - Reduce loop enable/disable log spam by using very verbose level [[#9267]](https://github.com/esphome/esphome/pull/9267) by [@bdraco](https://github.com/bdraco) - Fix thread-safe cleanup of event source connections in ESP-IDF web server [[#9268]](https://github.com/esphome/esphome/pull/9268) by [@bdraco](https://github.com/bdraco) - Reduce API component memory usage with conditional compilation [[#9262]](https://github.com/esphome/esphome/pull/9262) by [@bdraco](https://github.com/bdraco) - Optimize scheduler string storage to eliminate heap allocations [[#9251]](https://github.com/esphome/esphome/pull/9251) by [@bdraco](https://github.com/bdraco) - Optimize web_server UrlMatch to avoid heap allocations [[#9263]](https://github.com/esphome/esphome/pull/9263) by [@bdraco](https://github.com/bdraco) - Add support for LN882X Family (with LibreTiny) [[#8954]](https://github.com/esphome/esphome/pull/8954) by [@lamauny](https://github.com/lamauny) (new-integration) (notable-change) - Support DM9051 SPI ethernet device [[#6861]](https://github.com/esphome/esphome/pull/6861) by [@bmork](https://github.com/bmork) - [light] Fix transitions with ``lerp`` [[#9269]](https://github.com/esphome/esphome/pull/9269) by [@kbx81](https://github.com/kbx81) - [remote_base] Fix dumper base class and enable schema extension [[#9218]](https://github.com/esphome/esphome/pull/9218) by [@gabest11](https://github.com/gabest11) - [ld2420] Move consts to cpp file, optimize memory use [[#9216]](https://github.com/esphome/esphome/pull/9216) by [@kbx81](https://github.com/kbx81) - Update libsodium to 1.0.20 [[#9240]](https://github.com/esphome/esphome/pull/9240) by [@bdraco](https://github.com/bdraco) - Fixes for async MQTT [[#9273]](https://github.com/esphome/esphome/pull/9273) by [@dwmw2](https://github.com/dwmw2) - Fix flaky test_api_conditional_memory by waiting for all required states [[#9271]](https://github.com/esphome/esphome/pull/9271) by [@bdraco](https://github.com/bdraco) - [pins] Update ``internal_gpio_pin_number`` to work directly like ``internal_gpio_output_pin_number`` [[#9270]](https://github.com/esphome/esphome/pull/9270) by [@jesserockz](https://github.com/jesserockz) (breaking-change) - [http_request.update] Fix ``size_t`` printing [[#9144]](https://github.com/esphome/esphome/pull/9144) by [@jesserockz](https://github.com/jesserockz) - [smt100] Rename ``dielectric_constant`` to ``permittivity`` [[#9175]](https://github.com/esphome/esphome/pull/9175) by [@piechade](https://github.com/piechade) (breaking-change) - [ethernet] P4 changes and 5.3.0 deprecated warnings [[#8457]](https://github.com/esphome/esphome/pull/8457) by [@swoboda1337](https://github.com/swoboda1337) - Fix - Pass thread TLVs down to openthread if they are defined [[#9182]](https://github.com/esphome/esphome/pull/9182) by [@mrene](https://github.com/mrene) - Fix entity hash collisions by enforcing unique names across devices per platform [[#9276]](https://github.com/esphome/esphome/pull/9276) by [@bdraco](https://github.com/bdraco) (breaking-change) - [host] Disable platformio ldf [[#9277]](https://github.com/esphome/esphome/pull/9277) by [@jesserockz](https://github.com/jesserockz) - Jinja expressions in configs (Take [#3]) [[#8955]](https://github.com/esphome/esphome/pull/8955) by [@jpeletier](https://github.com/jpeletier) (notable-change) - Use interrupt based approach for esp32_touch [[#9059]](https://github.com/esphome/esphome/pull/9059) by [@bdraco](https://github.com/bdraco) - Add OTA support to ESP-IDF webserver [[#9264]](https://github.com/esphome/esphome/pull/9264) by [@bdraco](https://github.com/bdraco) - [modbus] Modbus server role: write holding registers [[#9156]](https://github.com/esphome/esphome/pull/9156) by [@jpeletier](https://github.com/jpeletier) - [esp32] Remove IDF 4 support and clean up code [[#9145]](https://github.com/esphome/esphome/pull/9145) by [@swoboda1337](https://github.com/swoboda1337) (breaking-change) - Fix regression: BK7231N devices not returning entities via API [[#9283]](https://github.com/esphome/esphome/pull/9283) by [@bdraco](https://github.com/bdraco) - [esp32_rmt_led_strip] Reduce memory usage by 32x with IDF 5.3 [[#8388]](https://github.com/esphome/esphome/pull/8388) by [@swoboda1337](https://github.com/swoboda1337) - [api] Dump bytes fields as hex instead of unreadable string [[#9288]](https://github.com/esphome/esphome/pull/9288) by [@jesserockz](https://github.com/jesserockz) - Reduce Component memory usage by 40% (8 bytes per component) [[#9278]](https://github.com/esphome/esphome/pull/9278) by [@bdraco](https://github.com/bdraco) - Replace custom OTA implementation in web_server_base [[#9274]](https://github.com/esphome/esphome/pull/9274) by [@bdraco](https://github.com/bdraco) (new-integration) (breaking-change) - pulse_meter total [[#9282]](https://github.com/esphome/esphome/pull/9282) by [@prchal](https://github.com/prchal) - Mmc5603 fix for devices that don't retrieve chip_id [[#8959]](https://github.com/esphome/esphome/pull/8959) by [@jsb2092](https://github.com/jsb2092) - made qr_code elements optional [[#8896]](https://github.com/esphome/esphome/pull/8896) by [@JonasB2497](https://github.com/JonasB2497) - [nextion] memory optimization [[#9164]](https://github.com/esphome/esphome/pull/9164) by [@edwardtfn](https://github.com/edwardtfn) - Use encode_bytes() for protobuf bytes fields [[#9289]](https://github.com/esphome/esphome/pull/9289) by [@bdraco](https://github.com/bdraco) - [core] Deleting CMakeCache.txt for fast recompilation with ESP-IDF [[#8750]](https://github.com/esphome/esphome/pull/8750) by [@zkoalexey](https://github.com/zkoalexey) - [heatpumpir] Add Support for PHS32 HeatPump [[#7378]](https://github.com/esphome/esphome/pull/7378) by [@mrtntome](https://github.com/mrtntome) - OpenThread - add Device Type [[#9272]](https://github.com/esphome/esphome/pull/9272) by [@rwrozelle](https://github.com/rwrozelle) - Don't compile `state_to_string()` unless debugging. [[#7473]](https://github.com/esphome/esphome/pull/7473) by [@colmbuckley](https://github.com/colmbuckley) - [time] Add ``USE_TIME_TIMEZONE`` define [[#9290]](https://github.com/esphome/esphome/pull/9290) by [@jesserockz](https://github.com/jesserockz) - [time] fix clang-tidy [[#9292]](https://github.com/esphome/esphome/pull/9292) by [@tomaszduda23](https://github.com/tomaszduda23) - [esp32_touch] Fix threshold [[#9291]](https://github.com/esphome/esphome/pull/9291) by [@clydebarrow](https://github.com/clydebarrow) - [ds2484] New component [[#9147]](https://github.com/esphome/esphome/pull/9147) by [@mrk-its](https://github.com/mrk-its) (new-integration) - Fix missing ifdef guards in API protobuf generator [[#9296]](https://github.com/esphome/esphome/pull/9296) by [@bdraco](https://github.com/bdraco) - Save flash and RAM by conditionally compiling unused API password code [[#9297]](https://github.com/esphome/esphome/pull/9297) by [@bdraco](https://github.com/bdraco) - [Packet transport] Ping timeout sensor [[#8694]](https://github.com/esphome/esphome/pull/8694) by [@dala318](https://github.com/dala318) - Allow disabling API batch delay for real-time state updates [[#9298]](https://github.com/esphome/esphome/pull/9298) by [@bdraco](https://github.com/bdraco) - Packages: optional base path for remote git packages [[#9279]](https://github.com/esphome/esphome/pull/9279) by [@dudanov](https://github.com/dudanov) - [sx127x] Add sx127x component [[#7490]](https://github.com/esphome/esphome/pull/7490) by [@swoboda1337](https://github.com/swoboda1337) (new-integration) - [microphone] simplify mute handling to avoid unnecessary copies [[#9303]](https://github.com/esphome/esphome/pull/9303) by [@kahrendt](https://github.com/kahrendt) - Add device_id to entity state messages for sub-device support [[#9304]](https://github.com/esphome/esphome/pull/9304) by [@bdraco](https://github.com/bdraco) - Fix web_server URL parsing lifetime issue [[#9309]](https://github.com/esphome/esphome/pull/9309) by [@bdraco](https://github.com/bdraco) - Reduce web_server loop overhead on ESP32 by avoiding unnecessary semaphore operations [[#9308]](https://github.com/esphome/esphome/pull/9308) by [@bdraco](https://github.com/bdraco) - Fix compiler warning in tsl2591 component [[#9310]](https://github.com/esphome/esphome/pull/9310) by [@mikelawrence](https://github.com/mikelawrence) - Fix web_server busy loop with ungracefully disconnected clients [[#9312]](https://github.com/esphome/esphome/pull/9312) by [@bdraco](https://github.com/bdraco) - Add const char overload for Component::defer() [[#9324]](https://github.com/esphome/esphome/pull/9324) by [@bdraco](https://github.com/bdraco) - [rtttl] trim extraneous whitespace in "ac_dimmer" in "PWM_BAD" list [[#9318]](https://github.com/esphome/esphome/pull/9318) by [@ximex](https://github.com/ximex) - Mark ESPTime comparison operators as const [[#9335]](https://github.com/esphome/esphome/pull/9335) by [@freundTech](https://github.com/freundTech) - [ld2450] Reduce CPU usage, eliminate redundant sensor updates [[#9334]](https://github.com/esphome/esphome/pull/9334) by [@bdraco](https://github.com/bdraco) - [nextion] Memory optimization [[#9338]](https://github.com/esphome/esphome/pull/9338) by [@edwardtfn](https://github.com/edwardtfn) - Reduce RAM usage by optimizing Color constant storage [[#9339]](https://github.com/esphome/esphome/pull/9339) by [@bdraco](https://github.com/bdraco) (breaking-change) - Eliminate API component guard variable to save 8 bytes RAM [[#9341]](https://github.com/esphome/esphome/pull/9341) by [@bdraco](https://github.com/bdraco) - Eliminate web_server_idf guard variable to save 8 bytes RAM [[#9344]](https://github.com/esphome/esphome/pull/9344) by [@bdraco](https://github.com/bdraco) - [scd4x] Optimize logging + minor code clean-up [[#9347]](https://github.com/esphome/esphome/pull/9347) by [@kbx81](https://github.com/kbx81) - [ld2410] Reduce RAM usage, general clean-up [[#9346]](https://github.com/esphome/esphome/pull/9346) by [@kbx81](https://github.com/kbx81) - [sx127x] Improve error handling [[#9351]](https://github.com/esphome/esphome/pull/9351) by [@swoboda1337](https://github.com/swoboda1337) - Fix defer() thread safety issues on multi-core platforms [[#9317]](https://github.com/esphome/esphome/pull/9317) by [@bdraco](https://github.com/bdraco) - [update, http_request_update] Implement update available trigger [[#9174]](https://github.com/esphome/esphome/pull/9174) by [@jhbruhn](https://github.com/jhbruhn) - Split LockFreeQueue into base and notifying variants to reduce memory usage [[#9330]](https://github.com/esphome/esphome/pull/9330) by [@bdraco](https://github.com/bdraco) - Fix bluetooth proxy busy loop when disconnecting pending BLE connections [[#9332]](https://github.com/esphome/esphome/pull/9332) by [@bdraco](https://github.com/bdraco) - Use std::span to eliminate heap allocation for single-packet API transmissions [[#9313]](https://github.com/esphome/esphome/pull/9313) by [@bdraco](https://github.com/bdraco) - [sx127x] Fix shaping print in dump_config and preallocate packet [[#9357]](https://github.com/esphome/esphome/pull/9357) by [@swoboda1337](https://github.com/swoboda1337) - Introduce base Camera class to support alternative camera implementations [[#9285]](https://github.com/esphome/esphome/pull/9285) by [@DT-art1](https://github.com/DT-art1) (new-integration) - [scd4x] Memory optimization [[#9358]](https://github.com/esphome/esphome/pull/9358) by [@kbx81](https://github.com/kbx81) - [nextion] Replace boolean flags with bitfields to optimize memory usage [[#9359]](https://github.com/esphome/esphome/pull/9359) by [@edwardtfn](https://github.com/edwardtfn) - [inkplate6] Require 240mhz cpu frequency [[#9356]](https://github.com/esphome/esphome/pull/9356) by [@jesserockz](https://github.com/jesserockz) - [sx126x] Add sx126x component [[#8516]](https://github.com/esphome/esphome/pull/8516) by [@swoboda1337](https://github.com/swoboda1337) (new-integration) - [nextion] Optimize settings memory usage with compile-time defines [[#9350]](https://github.com/esphome/esphome/pull/9350) by [@edwardtfn](https://github.com/edwardtfn) - [ld2450] Clean-up for consistency, reduce CPU usage when idle [[#9363]](https://github.com/esphome/esphome/pull/9363) by [@kbx81](https://github.com/kbx81) - [nextion] Review `touch_sleep_timeout` [[#9345]](https://github.com/esphome/esphome/pull/9345) by [@edwardtfn](https://github.com/edwardtfn) - [core] Move platform helper implementations into their own file [[#9361]](https://github.com/esphome/esphome/pull/9361) by [@jesserockz](https://github.com/jesserockz) - [nextion] Add optional device info storage configuration [[#9366]](https://github.com/esphome/esphome/pull/9366) by [@edwardtfn](https://github.com/edwardtfn) - Optimize Bluetooth proxy batching and increase scan buffer capacity [[#9328]](https://github.com/esphome/esphome/pull/9328) by [@bdraco](https://github.com/bdraco) - Fix scheduler race conditions and add comprehensive test suite [[#9348]](https://github.com/esphome/esphome/pull/9348) by [@bdraco](https://github.com/bdraco) - Reduce LightCall memory usage by 50 bytes per call [[#9333]](https://github.com/esphome/esphome/pull/9333) by [@bdraco](https://github.com/bdraco) - Optimize entity icon memory usage with USE_ENTITY_ICON flag [[#9337]](https://github.com/esphome/esphome/pull/9337) by [@bdraco](https://github.com/bdraco) - Reduce core RAM usage by 40 bytes with static initialization optimizations [[#9340]](https://github.com/esphome/esphome/pull/9340) by [@bdraco](https://github.com/bdraco) - Fix flaky test_api_conditional_memory by disabling API batch delay [[#9360]](https://github.com/esphome/esphome/pull/9360) by [@bdraco](https://github.com/bdraco) - Fix format specifier warnings in QuantileFilter logging [[#9364]](https://github.com/esphome/esphome/pull/9364) by [@bdraco](https://github.com/bdraco) - Optimize logger performance by eliminating redundant strlen calls [[#9369]](https://github.com/esphome/esphome/pull/9369) by [@bdraco](https://github.com/bdraco) - Replace deprecated sprintf with snprintf in API protobuf code generation [[#9365]](https://github.com/esphome/esphome/pull/9365) by [@bdraco](https://github.com/bdraco) - Refactor duplicate socket read error handling in API frame helper [[#9370]](https://github.com/esphome/esphome/pull/9370) by [@bdraco](https://github.com/bdraco) - Refactor entity lookup methods with macros in preparation for device_id support [[#9371]](https://github.com/esphome/esphome/pull/9371) by [@bdraco](https://github.com/bdraco) - Refactor API entity update dispatch to reduce code duplication [[#9372]](https://github.com/esphome/esphome/pull/9372) by [@bdraco](https://github.com/bdraco) - Don't compile unnecessary platform files (e.g. ESP8266 files on ESP32) [[#9354]](https://github.com/esphome/esphome/pull/9354) by [@bdraco](https://github.com/bdraco) - Refactor voice assistant API methods to reduce code duplication [[#9374]](https://github.com/esphome/esphome/pull/9374) by [@bdraco](https://github.com/bdraco) - Eliminate bluetooth_proxy guard variable to save 8 bytes RAM [[#9343]](https://github.com/esphome/esphome/pull/9343) by [@bdraco](https://github.com/bdraco) - [nextion] Optimize component memory usage with bitfield state management [[#9373]](https://github.com/esphome/esphome/pull/9373) by [@edwardtfn](https://github.com/edwardtfn) - Fix brightness setting not working on SSD1305 128x32 OLEDs [[#9376]](https://github.com/esphome/esphome/pull/9376) by [@DooMMasteR](https://github.com/DooMMasteR) - Optimize logger callback API by including message length parameter [[#9368]](https://github.com/esphome/esphome/pull/9368) by [@bdraco](https://github.com/bdraco) (breaking-change) - Run integration tests only on Python 3.13 to reduce CI resource usage [[#9377]](https://github.com/esphome/esphome/pull/9377) by [@bdraco](https://github.com/bdraco) - Fix flaky test_api_conditional_memory and improve integration test patterns [[#9379]](https://github.com/esphome/esphome/pull/9379) by [@bdraco](https://github.com/bdraco) - [helpers] Improve ``format_hex_pretty`` [[#9380]](https://github.com/esphome/esphome/pull/9380) by [@jesserockz](https://github.com/jesserockz) - hydreon_rgxx: remove precipitation_intensity from RG9 [[#9367]](https://github.com/esphome/esphome/pull/9367) by [@functionpointer](https://github.com/functionpointer) - [image] Add byte order option and unit tests [[#9326]](https://github.com/esphome/esphome/pull/9326) by [@clydebarrow](https://github.com/clydebarrow) - Fix integration test race condition by isolating PlatformIO directories [[#9383]](https://github.com/esphome/esphome/pull/9383) by [@bdraco](https://github.com/bdraco) - Fix format string error in waveshare_epaper.cpp [[#9322]](https://github.com/esphome/esphome/pull/9322) by [@tmpeh](https://github.com/tmpeh) - Fix race condition in scheduler string lifetime integration test [[#9382]](https://github.com/esphome/esphome/pull/9382) by [@bdraco](https://github.com/bdraco) - lps22: add a component [[#7540]](https://github.com/esphome/esphome/pull/7540) by [@nagisa](https://github.com/nagisa) (new-integration) - [nfc] Update code to use ``format_hex_pretty`` [[#9384]](https://github.com/esphome/esphome/pull/9384) by [@jesserockz](https://github.com/jesserockz) - [helpers] Fix ``format_hex_pretty`` resize without separator [[#9389]](https://github.com/esphome/esphome/pull/9389) by [@jesserockz](https://github.com/jesserockz) - Add support for GL-R01 I2C - Time of Flight sensor [[#8329]](https://github.com/esphome/esphome/pull/8329) by [@pkejval](https://github.com/pkejval) (new-integration) - [esp32] Improve flexibility of ``only_on_variant`` [[#9390]](https://github.com/esphome/esphome/pull/9390) by [@jesserockz](https://github.com/jesserockz) - ESP_EXT1_WAKEUP_ANY_LOW is for s2/s3/c6/h2; ESP_EXT1_WAKEUP_ALL_LOW otherwise [[#9387]](https://github.com/esphome/esphome/pull/9387) by [@candrews](https://github.com/candrews) - [apds9960] Add 0x9E ID [[#9392]](https://github.com/esphome/esphome/pull/9392) by [@Merikei](https://github.com/Merikei) - Fix another race in the string lifetime scheduler test [[#9399]](https://github.com/esphome/esphome/pull/9399) by [@bdraco](https://github.com/bdraco) - [esp32_touch] Fix touch v1 [[#9414]](https://github.com/esphome/esphome/pull/9414) by [@swoboda1337](https://github.com/swoboda1337) - Set lib_compat_mode to strict [[#9408]](https://github.com/esphome/esphome/pull/9408) by [@swoboda1337](https://github.com/swoboda1337) - debug: bufferoverflow mitigation in DebugComponent::on_shutdown() [[#9422]](https://github.com/esphome/esphome/pull/9422) by [@RubenKelevra](https://github.com/RubenKelevra) - Exclude internal entities from name uniqueness validation [[#9410]](https://github.com/esphome/esphome/pull/9410) by [@bdraco](https://github.com/bdraco) - Handle ESP32 chunked MQTT messages missing topic on non-first chunks, causing panic [[#5786]](https://github.com/esphome/esphome/pull/5786) by [@aaliddell](https://github.com/aaliddell) - Replace remaining instances of USE_ESP32_CAMERA with USE_CAMERA [[#9401]](https://github.com/esphome/esphome/pull/9401) by [@DT-art1](https://github.com/DT-art1) - Sync api.proto from aioesphomeapi [[#9393]](https://github.com/esphome/esphome/pull/9393) by [@bdraco](https://github.com/bdraco) - Fix scheduler crash when cancelling items with NULL names [[#9444]](https://github.com/esphome/esphome/pull/9444) by [@bdraco](https://github.com/bdraco) - [wizard] use lowercase to match [[#9448]](https://github.com/esphome/esphome/pull/9448) by [@ssieb](https://github.com/ssieb) - Optimize API flash usage by storing message size at compile time [[#9447]](https://github.com/esphome/esphome/pull/9447) by [@bdraco](https://github.com/bdraco) - Optimize API proto size calculations by removing redundant force parameter [[#9449]](https://github.com/esphome/esphome/pull/9449) by [@bdraco](https://github.com/bdraco) - [ld2410] Remove redundant ``delay()`` calls, minor optimizations [[#9453]](https://github.com/esphome/esphome/pull/9453) by [@kbx81](https://github.com/kbx81) - [ld2420] Memory optimization, code clean-up [[#9426]](https://github.com/esphome/esphome/pull/9426) by [@kbx81](https://github.com/kbx81) - Reduce API flash usage by eliminating unnecessary template instantiations [[#9452]](https://github.com/esphome/esphome/pull/9452) by [@bdraco](https://github.com/bdraco) - Conditionally compile API user services to save 4.3KB flash (follow-up to [#9262]) [[#9451]](https://github.com/esphome/esphome/pull/9451) by [@bdraco](https://github.com/bdraco) (breaking-change) - [packet_transport] Don't run update if ping_pong not enabled. [[#9434]](https://github.com/esphome/esphome/pull/9434) by [@clydebarrow](https://github.com/clydebarrow) - [sx127x, sx126x] Fix preamble_size default and validation [[#9454]](https://github.com/esphome/esphome/pull/9454) by [@swoboda1337](https://github.com/swoboda1337) - Apply existing protobuf buffer optimization to nested message encoding (~2.3x speed up) [[#9458]](https://github.com/esphome/esphome/pull/9458) by [@bdraco](https://github.com/bdraco) - Only generate protobuf encode/decode methods for the message direction they're used [[#9461]](https://github.com/esphome/esphome/pull/9461) by [@bdraco](https://github.com/bdraco) - [usb_uart] Be flexible about descriptor layout for CDC-ACM devices [[#9425]](https://github.com/esphome/esphome/pull/9425) by [@clydebarrow](https://github.com/clydebarrow) - [libretiny] Set lib_compat_mode to soft for libretiny [[#9439]](https://github.com/esphome/esphome/pull/9439) by [@swoboda1337](https://github.com/swoboda1337) - (Maybe?) fix I2S speaker internal DAC mode [[#9435]](https://github.com/esphome/esphome/pull/9435) by [@pzich](https://github.com/pzich) - [lvgl] Post-process size arguments in meter config [[#9466]](https://github.com/esphome/esphome/pull/9466) by [@pzich](https://github.com/pzich) - Automatically disable interrupts for ESP8266 GPIO16 binary sensors [[#9467]](https://github.com/esphome/esphome/pull/9467) by [@bdraco](https://github.com/bdraco) - [substitutions] Fix [#7189] [[#9469]](https://github.com/esphome/esphome/pull/9469) by [@jpeletier](https://github.com/jpeletier) - Fix pre-commit CI failures by skipping local hooks that require virtual environment [[#9476]](https://github.com/esphome/esphome/pull/9476) by [@bdraco](https://github.com/bdraco) - [esp_ldo] Component schema; default priority [[#9479]](https://github.com/esphome/esphome/pull/9479) by [@clydebarrow](https://github.com/clydebarrow) - Follow logging best practices by removing redundant component prefix [[#9481]](https://github.com/esphome/esphome/pull/9481) by [@bdraco](https://github.com/bdraco) - Fix dormant bug in RAMAllocator::reallocate() manual_size calculation [[#9482]](https://github.com/esphome/esphome/pull/9482) by [@bdraco](https://github.com/bdraco) - Suppress spurious volatile and Python syntax warnings during builds [[#9488]](https://github.com/esphome/esphome/pull/9488) by [@bdraco](https://github.com/bdraco) - [online_image] Support ``byte_order`` [[#9502]](https://github.com/esphome/esphome/pull/9502) by [@clydebarrow](https://github.com/clydebarrow) - [json] Bump ArduinoJson library to 7.4.2 [[#8857]](https://github.com/esphome/esphome/pull/8857) by [@kahrendt](https://github.com/kahrendt) (breaking-change) - [fan] Do not save state for fan if configured as NO_RESTORE [[#9472]](https://github.com/esphome/esphome/pull/9472) by [@skyegecko](https://github.com/skyegecko) - Fix LibreTiny compilation error by updating ESPAsyncWebServer and dependencies [[#9492]](https://github.com/esphome/esphome/pull/9492) by [@bdraco](https://github.com/bdraco) - [captive_portal] Add test case for libretiny [[#9457]](https://github.com/esphome/esphome/pull/9457) by [@clydebarrow](https://github.com/clydebarrow) - [opentherm.output] Fix ``lerp`` [[#9506]](https://github.com/esphome/esphome/pull/9506) by [@kbx81](https://github.com/kbx81) - [servo] Fix ``lerp`` [[#9507]](https://github.com/esphome/esphome/pull/9507) by [@kbx81](https://github.com/kbx81) - Add missing clang-tidy NOLINT comments for ArduinoJson v7 in IDF webserver [[#9508]](https://github.com/esphome/esphome/pull/9508) by [@bdraco](https://github.com/bdraco) - [core] Don't issue -Wno-volatile for host platform [[#9511]](https://github.com/esphome/esphome/pull/9511) by [@clydebarrow](https://github.com/clydebarrow) - [component] Fix ``is_ready`` flag when loop disabled [[#9501]](https://github.com/esphome/esphome/pull/9501) by [@jesserockz](https://github.com/jesserockz) - [ms8607] Fix humidity calc [[#9499]](https://github.com/esphome/esphome/pull/9499) by [@LorbusChris](https://github.com/LorbusChris) - Fix timing overflow when components disable themselves during loop [[#9529]](https://github.com/esphome/esphome/pull/9529) by [@bdraco](https://github.com/bdraco) - [as3935_spi] remove unnecessary includes [[#9528]](https://github.com/esphome/esphome/pull/9528) by [@ssieb](https://github.com/ssieb)

Dependency Changes

Show - Bump pytest-cov from 6.1.1 to 6.2.1 [[#9063]](https://github.com/esphome/esphome/pull/9063) by [@dependabot[bot]](https://github.com/apps/dependabot) - Bump pytest-asyncio from 0.26.0 to 1.0.0 [[#9067]](https://github.com/esphome/esphome/pull/9067) by [@dependabot[bot]](https://github.com/apps/dependabot) - Bump docker/setup-buildx-action from 3.10.0 to 3.11.0 in the docker-actions group [[#9105]](https://github.com/esphome/esphome/pull/9105) by [@dependabot[bot]](https://github.com/apps/dependabot) - Bump ruff from 0.11.13 to 0.12.0 [[#9120]](https://github.com/esphome/esphome/pull/9120) by [@dependabot[bot]](https://github.com/apps/dependabot) - Bump docker/setup-buildx-action from 3.11.0 to 3.11.1 in the docker-actions group [[#9133]](https://github.com/esphome/esphome/pull/9133) by [@dependabot[bot]](https://github.com/apps/dependabot) - Bump aioesphomeapi from 32.2.3 to 32.2.4 [[#9132]](https://github.com/esphome/esphome/pull/9132) by [@dependabot[bot]](https://github.com/apps/dependabot) - Bump pytest from 8.4.0 to 8.4.1 [[#9131]](https://github.com/esphome/esphome/pull/9131) by [@dependabot[bot]](https://github.com/apps/dependabot) - Bump esptool from 4.8.1 to 4.9.0 [[#9158]](https://github.com/esphome/esphome/pull/9158) by [@dependabot[bot]](https://github.com/apps/dependabot) - Bump aioesphomeapi from 32.2.4 to 33.1.0 [[#9173]](https://github.com/esphome/esphome/pull/9173) by [@dependabot[bot]](https://github.com/apps/dependabot) - Bump flake8 from 7.2.0 to 7.3.0 [[#9172]](https://github.com/esphome/esphome/pull/9172) by [@dependabot[bot]](https://github.com/apps/dependabot) - Bump aioesphomeapi from 33.1.0 to 33.1.1 [[#9187]](https://github.com/esphome/esphome/pull/9187) by [@dependabot[bot]](https://github.com/apps/dependabot) - Bump ruff from 0.12.0 to 0.12.1 [[#9241]](https://github.com/esphome/esphome/pull/9241) by [@dependabot[bot]](https://github.com/apps/dependabot) - Bump aioesphomeapi from 33.1.1 to 34.0.0 [[#9265]](https://github.com/esphome/esphome/pull/9265) by [@dependabot[bot]](https://github.com/apps/dependabot) - Bump aioesphomeapi from 34.0.0 to 34.1.0 [[#9301]](https://github.com/esphome/esphome/pull/9301) by [@dependabot[bot]](https://github.com/apps/dependabot) - Bump ruff from 0.12.1 to 0.12.2 [[#9311]](https://github.com/esphome/esphome/pull/9311) by [@dependabot[bot]](https://github.com/apps/dependabot) - Bump puremagic from 1.29 to 1.30 [[#9320]](https://github.com/esphome/esphome/pull/9320) by [@dependabot[bot]](https://github.com/apps/dependabot) - Bump aioesphomeapi from 34.1.0 to 34.2.0 [[#9391]](https://github.com/esphome/esphome/pull/9391) by [@dependabot[bot]](https://github.com/apps/dependabot) - Bump aioesphomeapi from 34.2.0 to 34.2.1 [[#9460]](https://github.com/esphome/esphome/pull/9460) by [@dependabot[bot]](https://github.com/apps/dependabot)
Source: README.md, updated 2025-07-16