|
| 1 | +ESPHome 2025.6.0 - 18th June 2025 |
| 2 | +================================= |
| 3 | + |
| 4 | +.. seo:: |
| 5 | + :description: Changelog for ESPHome 2025.6.0. |
| 6 | + :image: /_static/changelog-2025.6.0.png |
| 7 | + :author: Jesse Hills |
| 8 | + :author_twitter: @jesserockz |
| 9 | + |
| 10 | +.. imgtable:: |
| 11 | + :columns: 3 |
| 12 | + |
| 13 | + OpenThread, components/openthread, openthread.png |
| 14 | + USB Host, components/usb_host, usb.svg, dark-invert |
| 15 | + USB UART, components/usb_uart, usb.svg, dark-invert |
| 16 | + CM1106, components/sensor/cm1106, cm1106.png |
| 17 | + ES8388, components/audio_dac/es8388, es8388.svg |
| 18 | + LC709203F, components/sensor/lc709203f, lc709203f.jpg |
| 19 | + ESP32-P4 LDO regulator, components/esp_ldo, ldo.svg, dark-invert |
| 20 | + |
| 21 | + |
| 22 | +ESP-IDF 5.3.2 |
| 23 | +------------- |
| 24 | + |
| 25 | +To be written... |
| 26 | + |
| 27 | + |
| 28 | +OpenThread |
| 29 | +---------- |
| 30 | + |
| 31 | +To Be written... |
| 32 | + |
| 33 | + |
| 34 | +Python 3.10 |
| 35 | +----------- |
| 36 | + |
| 37 | +From 2025.6.0, ESPHome now requires Python 3.10 or higher to run. This change is made to |
| 38 | +allow us to keep our codebase up to date with newer Python features |
| 39 | +and remove legacy code that was needed to support older Python versions. |
| 40 | +Python 3.9 reaches its `end of life in October 2025 <https://devguide.python.org/versions/>`__ |
| 41 | +and so we really needed to make this change. |
| 42 | + |
| 43 | +If you are using the Home Assistant Add-on or the provided container images, |
| 44 | +you do not need to do anything as these already use Python 3.12. |
| 45 | +If you are running ESPHome directly on your own machine, you will need to ensure |
| 46 | +that Python 3.10 or higher is installed or running ``pip install -U esphome`` |
| 47 | +will not install any version past 2025.5.2. |
| 48 | + |
| 49 | + |
| 50 | +Code optimizations |
| 51 | +------------------ |
| 52 | + |
| 53 | +There are many code optimizations going on in this release and more to come. |
| 54 | +These optimizations focus on not only speed of the :doc:`Native API </components/api>`, |
| 55 | +but also on reducing the memory footprint, and also the flash size footprint where possible. |
| 56 | + |
| 57 | + |
| 58 | +BME68x via BSEC2 |
| 59 | +---------------- |
| 60 | + |
| 61 | +Bosch merged and released a community pull request into their libraries |
| 62 | +that allows consumers like ESPHome to use the BSEC library without Arduino. |
| 63 | + |
| 64 | + |
| 65 | +Full list of changes |
| 66 | +-------------------- |
| 67 | + |
| 68 | +New Components |
| 69 | +^^^^^^^^^^^^^^ |
| 70 | + |
| 71 | +- Add CUBIC CM1106 Single Beam NDIR CO2 Sensor Module :esphomepr:`8293` by :ghuser:`andrewjswan` (new-integration) |
| 72 | +- [usb_uart] Implement USB Host mode UART :esphomepr:`8334` by :ghuser:`clydebarrow` (new-integration) |
| 73 | +- Add es8388 audio_dac :esphomepr:`8342` by :ghuser:`P4uLT` (new-integration) |
| 74 | +- [lc709203f] Add battery monitor :esphomepr:`8037` by :ghuser:`ilikecake` (new-integration) |
| 75 | +- [esp_ldo] Implement support for ESP32-P4 LDO :esphomepr:`9009` by :ghuser:`clydebarrow` (new-integration) |
| 76 | +- Add OpenThread support on ESP-IDF :esphomepr:`7506` by :ghuser:`mrene` (new-integration) |
| 77 | + |
| 78 | +Breaking Changes |
| 79 | +^^^^^^^^^^^^^^^^ |
| 80 | + |
| 81 | +- update minimal python version to 3.10 :esphomepr:`8850` by :ghuser:`ximex` (breaking-change) |
| 82 | +- Add LWIP optimization options to reduce flash usage :esphomepr:`8946` by :ghuser:`bdraco` (breaking-change) |
| 83 | +- Replace API deferred queue with efficient message batching system :esphomepr:`9012` by :ghuser:`bdraco` (breaking-change) |
| 84 | + |
| 85 | +Notable Changes |
| 86 | +^^^^^^^^^^^^^^^ |
| 87 | + |
| 88 | +- [bme68x_bsec2_i2c] Remove arduino dependency :esphomepr:`7815` by :ghuser:`luar123` (notable-change) |
| 89 | + |
| 90 | +All changes |
| 91 | +^^^^^^^^^^^ |
| 92 | + |
| 93 | +.. collapse:: Show |
| 94 | + :open: |
| 95 | + |
| 96 | + - add actions to the MAX7219Component :esphomepr:`6462` by :ghuser:`nielsnl68` |
| 97 | + - [api] Update api proto to add legacy value :esphomepr:`8802` by :ghuser:`jesserockz` |
| 98 | + - [script] Use local import for zephyr :esphomepr:`8822` by :ghuser:`clydebarrow` |
| 99 | + - Bump cryptography to 45.0.1 :esphomepr:`8826` by :ghuser:`bdraco` |
| 100 | + - unify and add missing metric suffixes :esphomepr:`8816` by :ghuser:`ximex` |
| 101 | + - Improve stability for a test that crashes intermittently in CI :esphomepr:`8699` by :ghuser:`dala318` |
| 102 | + - update ruff version to ``0.11.10`` in ``.pre-commit-config.yaml`` :esphomepr:`8851` by :ghuser:`ximex` |
| 103 | + - add python 3.13 to ci pipeline :esphomepr:`8855` by :ghuser:`ximex` |
| 104 | + - [esp32] Use IDF 5.3.2 as default for IDF builds :esphomepr:`8464` by :ghuser:`swoboda1337` |
| 105 | + - update minimal python version to 3.10 :esphomepr:`8850` by :ghuser:`ximex` (breaking-change) |
| 106 | + - [esp32, logger] Add initial P4 support :esphomepr:`8439` by :ghuser:`swoboda1337` |
| 107 | + - Add CUBIC CM1106 Single Beam NDIR CO2 Sensor Module :esphomepr:`8293` by :ghuser:`andrewjswan` (new-integration) |
| 108 | + - Updates for development environment :esphomepr:`8801` by :ghuser:`jesserockz` |
| 109 | + - [sync] Update and fix sync workflow :esphomepr:`8873` by :ghuser:`jesserockz` |
| 110 | + - [lvgl] Try to allocate smaller buffer on failure :esphomepr:`8814` by :ghuser:`clydebarrow` |
| 111 | + - [lvgl] Add content styling to tabview :esphomepr:`8823` by :ghuser:`clydebarrow` |
| 112 | + - [usb_uart] Implement USB Host mode UART :esphomepr:`8334` by :ghuser:`clydebarrow` (new-integration) |
| 113 | + - OTA: Close and clean up client when setsockopt fails :esphomepr:`8865` by :ghuser:`luuoaoa` |
| 114 | + - Add const DEVICE_CLASS_WIND_DIRECTION :esphomepr:`8870` by :ghuser:`Pi57` |
| 115 | + - Synchronise Device Classes from Home Assistant :esphomepr:`8874` by :ghuser:`esphomebot` |
| 116 | + - Optimize API frame helper buffer management :esphomepr:`8805` by :ghuser:`bdraco` |
| 117 | + - Use UINT16_MAX instead of hard coded 65535 in api :esphomepr:`8884` by :ghuser:`bdraco` |
| 118 | + - feat: `wifi.configure` now emits error after reconnecting to old AP :esphomepr:`8653` by :ghuser:`Rapsssito` |
| 119 | + - [modbus_controller] Add assumed_state to switch :esphomepr:`8880` by :ghuser:`gotnone` |
| 120 | + - [const] Move ``CONF_RESET`` to const.py :esphomepr:`8889` by :ghuser:`jesserockz` |
| 121 | + - [bme68x_bsec2_i2c] Remove arduino dependency :esphomepr:`7815` by :ghuser:`luar123` (notable-change) |
| 122 | + - [i2s_audio] Add basic support for esp32-p4 :esphomepr:`8887` by :ghuser:`jesserockz` |
| 123 | + - [esp32, logger, core] Add initial c5 support :esphomepr:`8895` by :ghuser:`swoboda1337` |
| 124 | + - Resolve regex library warnings :esphomepr:`8890` by :ghuser:`emmanuel-ferdman` |
| 125 | + - Add integration tests for host :esphomepr:`8912` by :ghuser:`bdraco` |
| 126 | + - Fix flakey tests :esphomepr:`8914` by :ghuser:`bdraco` |
| 127 | + - [sx1509] add support for keys :esphomepr:`8413` by :ghuser:`ssieb` |
| 128 | + - Add es8388 audio_dac :esphomepr:`8342` by :ghuser:`P4uLT` (new-integration) |
| 129 | + - [online_image] Last-Modified-Date and ETag response caching :esphomepr:`8782` by :ghuser:`candrews` |
| 130 | + - [aht10] Various optimizations/clean-up :esphomepr:`8921` by :ghuser:`kbx81` |
| 131 | + - [rtttl] Various optimizations/clean-up :esphomepr:`8923` by :ghuser:`kbx81` |
| 132 | + - [ledc] Various optimizations/clean-up :esphomepr:`8922` by :ghuser:`kbx81` |
| 133 | + - Streamline setup() logging (a, b) :esphomepr:`8924` by :ghuser:`kbx81` |
| 134 | + - Streamline setup() logging (c, d) :esphomepr:`8925` by :ghuser:`kbx81` |
| 135 | + - Streamline setup() logging (e, f) :esphomepr:`8926` by :ghuser:`kbx81` |
| 136 | + - Streamline setup() logging (g, h, i) :esphomepr:`8927` by :ghuser:`kbx81` |
| 137 | + - Streamline setup() logging (k, l, m) :esphomepr:`8928` by :ghuser:`kbx81` |
| 138 | + - Streamline setup() logging (n, o, p, q, r) :esphomepr:`8929` by :ghuser:`kbx81` |
| 139 | + - Streamline setup() logging (s, t, u, v, w, x, y, z) :esphomepr:`8930` by :ghuser:`kbx81` |
| 140 | + - [speaker mediaplayer] Yaml config initial volume (on first boot) :esphomepr:`8898` by :ghuser:`mrtoy-me` |
| 141 | + - [i2s_audio] Bump esphome/ESP32-audioI2S to 2.2.0 :esphomepr:`8920` by :ghuser:`jesserockz` |
| 142 | + - Add more demo platforms :esphomepr:`8903` by :ghuser:`jesserockz` |
| 143 | + - Migrate wifi component to use App.get_loop_component_start_time :esphomepr:`8931` by :ghuser:`bdraco` |
| 144 | + - Optimize socket operations by checking readiness in the main loop :esphomepr:`8918` by :ghuser:`bdraco` |
| 145 | + - Improve logging in integration tests when port does not open :esphomepr:`8932` by :ghuser:`bdraco` |
| 146 | + - [pmwcs3] Optimize logging :esphomepr:`8936` by :ghuser:`kbx81` |
| 147 | + - [tmp102] Remove `setup()`, optimize logging :esphomepr:`8937` by :ghuser:`kbx81` |
| 148 | + - Optimize plaintext API header reading to reduce system calls :esphomepr:`8941` by :ghuser:`bdraco` |
| 149 | + - [gcja5] Remove unused `setup()` method :esphomepr:`8935` by :ghuser:`kbx81` |
| 150 | + - [alarm_control_panel] BYPASS_AUTO option for Template Alarm Control Panel sensors left open when armed :esphomepr:`8795` by :ghuser:`heythisisnate` |
| 151 | + - Fix select() logging flood in very verbose mode :esphomepr:`8942` by :ghuser:`bdraco` |
| 152 | + - particle matter improvements :esphomepr:`8846` by :ghuser:`ximex` |
| 153 | + - Fix colors in update all :esphomepr:`8854` by :ghuser:`swoboda1337` |
| 154 | + - Add flip X and Y on inkplate6 component :esphomepr:`7904` by :ghuser:`Leicas` |
| 155 | + - [modbus] [modbus_controller] Fix server role read coil 0x1 crc :esphomepr:`8859` by :ghuser:`gotnone` |
| 156 | + - [rp2040] Allow changing watchdog timeout :esphomepr:`8868` by :ghuser:`kuba2k2` |
| 157 | + - [esp32] Regenerate boards from recommended platform version :esphomepr:`8938` by :ghuser:`jesserockz` |
| 158 | + - Introduce "communication failed" log macro :esphomepr:`8939` by :ghuser:`kbx81` |
| 159 | + - [demo] FIx some of the entities :esphomepr:`8943` by :ghuser:`jesserockz` |
| 160 | + - Redundant Log Messages Cleanup :esphomepr:`8944` by :ghuser:`bdraco` |
| 161 | + - [dht] Clean-up, shorten some log messages :esphomepr:`8949` by :ghuser:`kbx81` |
| 162 | + - Have ESPHome's YAML dumper comply with its own yamllint rules :esphomepr:`8957` by :ghuser:`jpeletier` |
| 163 | + - Allow Weikai to pass data_bit validation :esphomepr:`8917` by :ghuser:`timdaman` |
| 164 | + - [max9611] Remove redundant "max9611" from log messages :esphomepr:`8967` by :ghuser:`kbx81` |
| 165 | + - [nextion] Allocate NextionQueue in PSRAM (if available) :esphomepr:`8979` by :ghuser:`edwardtfn` |
| 166 | + - [esp32c6] Add test base file and platformio env :esphomepr:`8973` by :ghuser:`jesserockz` |
| 167 | + - Add missing icons and device classes to BME680 sensors :esphomepr:`8960` by :ghuser:`tronikos` |
| 168 | + - [preferences] Shorten log messages :esphomepr:`8982` by :ghuser:`kbx81` |
| 169 | + - [lc709203f] Add battery monitor :esphomepr:`8037` by :ghuser:`ilikecake` (new-integration) |
| 170 | + - [mdns] Set up only after API is set up :esphomepr:`9000` by :ghuser:`jesserockz` |
| 171 | + - [const] Move CONF_X and CONF_Y to const.py :esphomepr:`8999` by :ghuser:`Hannah-GBS` |
| 172 | + - [core] Update defines.h esp-idf version :esphomepr:`8974` by :ghuser:`jesserockz` |
| 173 | + - [spi] Remove redundant "SPI" from log messages :esphomepr:`8970` by :ghuser:`kbx81` |
| 174 | + - [sdp3x] Remove redundant "sdp3x" from log messages :esphomepr:`8969` by :ghuser:`kbx81` |
| 175 | + - [ethernet] Remove redundant "ethernet" from log messages :esphomepr:`8966` by :ghuser:`kbx81` |
| 176 | + - [bmp3xx] Remove redundant "bmp3xx" from log messages :esphomepr:`8965` by :ghuser:`kbx81` |
| 177 | + - Remove unnecessary ellipsis :esphomepr:`8964` by :ghuser:`kbx81` |
| 178 | + - [wireguard] Remove redundant "wireguard" from log messages :esphomepr:`8963` by :ghuser:`kbx81` |
| 179 | + - [dashboard] Fix logging colors :esphomepr:`8984` by :ghuser:`swoboda1337` |
| 180 | + - [sps30] Shorten log messages :esphomepr:`8971` by :ghuser:`kbx81` |
| 181 | + - [bmp581] Shorten some log messages :esphomepr:`8948` by :ghuser:`kbx81` |
| 182 | + - [api] Streamline some log strings :esphomepr:`8962` by :ghuser:`kbx81` |
| 183 | + - [mqtt] Remove redundant "mqtt" from log messages :esphomepr:`8968` by :ghuser:`kbx81` |
| 184 | + - [ci, nrf52] make zephyr clang mandatory :esphomepr:`8992` by :ghuser:`tomaszduda23` |
| 185 | + - [sdl] Add config for SDL window flags :esphomepr:`8998` by :ghuser:`Hannah-GBS` |
| 186 | + - [nextion] Add optional `max_queue_size` limit to prevent queue overflows :esphomepr:`8976` by :ghuser:`edwardtfn` |
| 187 | + - Move CONF_REQUEST_HEADERS to const.py :esphomepr:`9002` by :ghuser:`numo68` |
| 188 | + - [api] Fix build error in IDF 5.5 :esphomepr:`9007` by :ghuser:`swoboda1337` |
| 189 | + - [list-components.py] Only add platforms that are actually platforms. :esphomepr:`9005` by :ghuser:`clydebarrow` |
| 190 | + - [qwiic_pir] Clean-up, shorten some log messages :esphomepr:`8951` by :ghuser:`kbx81` |
| 191 | + - [esp32] Add config vars for compiler :esphomepr:`9023` by :ghuser:`kbx81` |
| 192 | + - Implement proper API connection teardown before deep sleep/reboot :esphomepr:`9008` by :ghuser:`bdraco` |
| 193 | + - [config] Clean build on ESP-IDF when component/platform combos change :esphomepr:`9028` by :ghuser:`clydebarrow` |
| 194 | + - Disable ruff rule UP038 :esphomepr:`9029` by :ghuser:`bdraco` |
| 195 | + - Update webserver local assets to 20250608-225410 :esphomepr:`9030` by :ghuser:`esphomebot` |
| 196 | + - Reduce ESP_LOGCONFIG calls :esphomepr:`9026` by :ghuser:`bdraco` |
| 197 | + - Force socket ready when high frequency looping :esphomepr:`9032` by :ghuser:`juanboro` |
| 198 | + - [psram] Add P4 support :esphomepr:`8545` by :ghuser:`clydebarrow` |
| 199 | + - [nextion] Use safe restart to properly handle globals and restart logging :esphomepr:`9010` by :ghuser:`edwardtfn` |
| 200 | + - [max7219digit, servo, tsl2591] ESP_LOGCONFIG call reduction (Extend #9026) :esphomepr:`9033` by :ghuser:`kbx81` |
| 201 | + - [tsl2561, tsl2591] Shorten log messages :esphomepr:`9034` by :ghuser:`kbx81` |
| 202 | + - Change RP2040 PIO SK6812 timings :esphomepr:`9020` by :ghuser:`pseud0sphere` |
| 203 | + - Add LWIP optimization options to reduce flash usage :esphomepr:`8946` by :ghuser:`bdraco` (breaking-change) |
| 204 | + - [globals] Prevent redundant oversized string checks in loop :esphomepr:`9001` by :ghuser:`edwardtfn` |
| 205 | + - [nextion] Optimize log messages to reduce memory usage :esphomepr:`9039` by :ghuser:`edwardtfn` |
| 206 | + - [nextion] Add configurable limit for commands processed per loop :esphomepr:`8972` by :ghuser:`edwardtfn` |
| 207 | + - [lvgl] Fix templated argument to `lvgl.is_idle` :esphomepr:`9014` by :ghuser:`clydebarrow` |
| 208 | + - Replace API deferred queue with efficient message batching system :esphomepr:`9012` by :ghuser:`bdraco` (breaking-change) |
| 209 | + - Reduce Bluetooth overhead by disabling unused logging categories :esphomepr:`8945` by :ghuser:`bdraco` |
| 210 | + - [inkplate] Remove arduino dependency :esphomepr:`9031` by :ghuser:`jesserockz` |
| 211 | + - [core] Include esp_mac.h on Arduino too :esphomepr:`9040` by :ghuser:`swoboda1337` |
| 212 | + - Use a `define` for log message constants :esphomepr:`8952` by :ghuser:`kbx81` |
| 213 | + - [esp_ldo] Implement support for ESP32-P4 LDO :esphomepr:`9009` by :ghuser:`clydebarrow` (new-integration) |
| 214 | + - Fix: Seeed Studio MR60FDA2 threshold height could not be set :esphomepr:`9011` by :ghuser:`limengdu` |
| 215 | + - [esp32] Use release zip from pioarduino/platform-espressif32 instead of git tag :esphomepr:`8975` by :ghuser:`jesserockz` |
| 216 | + - [esp32_rmt] Add variant validation for use_dma :esphomepr:`8897` by :ghuser:`swoboda1337` |
| 217 | + - Ensure components only powerdown after teardown :esphomepr:`9044` by :ghuser:`bdraco` |
| 218 | + - use ``encode_uintXX`` :esphomepr:`8847` by :ghuser:`ximex` |
| 219 | + - Add OpenThread support on ESP-IDF :esphomepr:`7506` by :ghuser:`mrene` (new-integration) |
| 220 | + - [shtcx] Shorten log messages :esphomepr:`9046` by :ghuser:`kbx81` |
| 221 | + - [application] Fix build error on some IDF versions :esphomepr:`9045` by :ghuser:`kbx81` |
| 222 | + - [spi] Restrict octal spi to S3/S2/P4 :esphomepr:`9041` by :ghuser:`clydebarrow` |
| 223 | + - Reserve memory for component and platform vectors :esphomepr:`9042` by :ghuser:`bdraco` |
| 224 | + - Improve shutdown reliability when tx buffer is full :esphomepr:`9043` by :ghuser:`bdraco` |
| 225 | + - Add support for custom request headers in online_image component :esphomepr:`8985` by :ghuser:`numo68` |
| 226 | + - Openthread code updates :esphomepr:`9047` by :ghuser:`jesserockz` |
| 227 | + - [sgp4x] Shorten log messages, various clean-up :esphomepr:`9048` by :ghuser:`kbx81` |
| 228 | + |
| 229 | +Dependency Changes |
| 230 | +^^^^^^^^^^^^^^^^^^ |
| 231 | + |
| 232 | +.. collapse:: Show |
| 233 | + |
| 234 | + - Bump aioesphomeapi from 30.2.0 to 31.0.0 :esphomepr:`8779` by :ghuser:`dependabot[bot]` |
| 235 | + - Bump cairosvg from 2.7.1 to 2.8.0 :esphomepr:`8780` by :ghuser:`dependabot[bot]` |
| 236 | + - Bump cairosvg from 2.8.0 to 2.8.1 :esphomepr:`8799` by :ghuser:`dependabot[bot]` |
| 237 | + - Bump aioesphomeapi from 31.0.0 to 31.0.1 :esphomepr:`8809` by :ghuser:`dependabot[bot]` |
| 238 | + - Bump setuptools from 80.4.0 to 80.7.1 :esphomepr:`8808` by :ghuser:`dependabot[bot]` |
| 239 | + - Bump ruff from 0.11.9 to 0.11.10 :esphomepr:`8818` by :ghuser:`dependabot[bot]` |
| 240 | + - Bump cairosvg from 2.8.1 to 2.8.2 :esphomepr:`8817` by :ghuser:`dependabot[bot]` |
| 241 | + - Bump codecov/codecov-action from 5.4.2 to 5.4.3 :esphomepr:`8820` by :ghuser:`dependabot[bot]` |
| 242 | + - Bump aioesphomeapi from 31.0.1 to 31.1.0 :esphomepr:`8849` by :ghuser:`dependabot[bot]` |
| 243 | + - Bump setuptools from 80.7.1 to 80.8.0 :esphomepr:`8858` by :ghuser:`dependabot[bot]` |
| 244 | + - Bump tornado from 6.4.2 to 6.5.1 :esphomepr:`8882` by :ghuser:`dependabot[bot]` |
| 245 | + - Bump ruff from 0.11.10 to 0.11.11 :esphomepr:`8883` by :ghuser:`dependabot[bot]` |
| 246 | + - Bump pyupgrade from 3.19.1 to 3.20.0 :esphomepr:`8891` by :ghuser:`dependabot[bot]` |
| 247 | + - Bump actions/checkout from 4.1.7 to 4.2.2 :esphomepr:`8904` by :ghuser:`jesserockz` |
| 248 | + - Bump ruamel-yaml from 0.18.10 to 0.18.11 :esphomepr:`8910` by :ghuser:`dependabot[bot]` |
| 249 | + - Bump pytest-mock from 3.14.0 to 3.14.1 :esphomepr:`8909` by :ghuser:`dependabot[bot]` |
| 250 | + - Bump setuptools from 80.8.0 to 80.9.0 :esphomepr:`8915` by :ghuser:`dependabot[bot]` |
| 251 | + - Bump pytest-xdist from 3.6.1 to 3.7.0 :esphomepr:`8916` by :ghuser:`dependabot[bot]` |
| 252 | + - Bump docker/build-push-action from 6.17.0 to 6.18.0 in /.github/actions/build-image :esphomepr:`8919` by :ghuser:`dependabot[bot]` |
| 253 | + - Bump pytest from 8.3.5 to 8.4.0 :esphomepr:`8993` by :ghuser:`dependabot[bot]` |
| 254 | + - Bump ruamel-yaml from 0.18.11 to 0.18.12 :esphomepr:`8977` by :ghuser:`dependabot[bot]` |
| 255 | + - Bump aioesphomeapi from 31.1.0 to 32.0.0 :esphomepr:`9004` by :ghuser:`dependabot[bot]` |
| 256 | + - Bump ruff from 0.11.11 to 0.11.13 :esphomepr:`9017` by :ghuser:`dependabot[bot]` |
| 257 | + - Bump ruamel-yaml from 0.18.12 to 0.18.13 :esphomepr:`9018` by :ghuser:`dependabot[bot]` |
| 258 | + - Bump aioesphomeapi from 32.0.0 to 32.1.0 :esphomepr:`9024` by :ghuser:`dependabot[bot]` |
| 259 | + - Bump aioesphomeapi from 32.1.0 to 32.2.0 :esphomepr:`9025` by :ghuser:`dependabot[bot]` |
| 260 | + - Bump aioesphomeapi from 32.2.0 to 32.2.1 :esphomepr:`9038` by :ghuser:`dependabot[bot]` |
| 261 | + - Bump ruamel-yaml from 0.18.13 to 0.18.14 :esphomepr:`9037` by :ghuser:`dependabot[bot]` |
| 262 | + |
| 263 | + |
| 264 | +Past Changelogs |
| 265 | +--------------- |
| 266 | + |
| 267 | +.. collapse:: Show |
| 268 | + |
| 269 | + - :doc:`2025.5.0` |
| 270 | + - :doc:`2025.4.0` |
| 271 | + - :doc:`2025.3.0` |
| 272 | + - :doc:`2025.2.0` |
| 273 | + - :doc:`2024.12.0` |
| 274 | + - :doc:`2024.11.0` |
| 275 | + - :doc:`2024.10.0` |
| 276 | + - :doc:`2024.9.0` |
| 277 | + - :doc:`2024.8.0` |
| 278 | + - :doc:`2024.7.0` |
| 279 | + - :doc:`2024.6.0` |
| 280 | + - :doc:`2024.5.0` |
| 281 | + - :doc:`2024.4.0` |
| 282 | + - :doc:`2024.3.0` |
| 283 | + - :doc:`2024.2.0` |
| 284 | + - :doc:`2023.12.0` |
| 285 | + - :doc:`2023.11.0` |
| 286 | + - :doc:`2023.10.0` |
| 287 | + - :doc:`2023.9.0` |
| 288 | + - :doc:`2023.8.0` |
| 289 | + - :doc:`2023.7.0` |
| 290 | + - :doc:`2023.6.0` |
| 291 | + - :doc:`2023.5.0` |
| 292 | + - :doc:`2023.4.0` |
| 293 | + - :doc:`2023.3.0` |
| 294 | + - :doc:`2023.2.0` |
| 295 | + - :doc:`2022.12.0` |
| 296 | + - :doc:`2022.11.0` |
| 297 | + - :doc:`2022.10.0` |
| 298 | + - :doc:`2022.9.0` |
| 299 | + - :doc:`2022.8.0` |
| 300 | + - :doc:`2022.6.0` |
| 301 | + - :doc:`2022.5.0` |
| 302 | + - :doc:`2022.4.0` |
| 303 | + - :doc:`2022.3.0` |
| 304 | + - :doc:`2022.2.0` |
| 305 | + - :doc:`2022.1.0` |
| 306 | + - :doc:`2021.12.0` |
| 307 | + - :doc:`2021.11.0` |
| 308 | + - :doc:`2021.10.0` |
| 309 | + - :doc:`2021.9.0` |
| 310 | + - :doc:`2021.8.0` |
| 311 | + - :doc:`v1.20.0` |
| 312 | + - :doc:`v1.19.0` |
| 313 | + - :doc:`v1.18.0` |
| 314 | + - :doc:`v1.17.0` |
| 315 | + - :doc:`v1.16.0` |
| 316 | + - :doc:`v1.15.0` |
| 317 | + - :doc:`v1.14.0` |
| 318 | + - :doc:`v1.13.0` |
| 319 | + - :doc:`v1.12.0` |
| 320 | + - :doc:`v1.11.0` |
| 321 | + - :doc:`v1.10.0` |
| 322 | + - :doc:`v1.9.0` |
| 323 | + - :doc:`v1.8.0` |
| 324 | + - :doc:`v1.7.0` |
0 commit comments