esphome 2025.10.1__py3-none-any.whl → 2025.10.2__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of esphome might be problematic. Click here for more details.

esphome/__main__.py CHANGED
@@ -185,7 +185,9 @@ def choose_upload_log_host(
185
185
  else:
186
186
  resolved.append(device)
187
187
  if not resolved:
188
- _LOGGER.error("All specified devices: %s could not be resolved.", defaults)
188
+ raise EsphomeError(
189
+ f"All specified devices {defaults} could not be resolved. Is the device connected to the network?"
190
+ )
189
191
  return resolved
190
192
 
191
193
  # No devices specified, show interactive chooser
@@ -41,7 +41,7 @@ CONFIG_SCHEMA = cv.All(
41
41
  cv.Schema(
42
42
  {
43
43
  cv.GenerateID(): cv.declare_id(BME680BSECComponent),
44
- cv.Optional(CONF_TEMPERATURE_OFFSET, default=0): cv.temperature,
44
+ cv.Optional(CONF_TEMPERATURE_OFFSET, default=0): cv.temperature_delta,
45
45
  cv.Optional(CONF_IAQ_MODE, default="STATIC"): cv.enum(
46
46
  IAQ_MODE_OPTIONS, upper=True
47
47
  ),
@@ -139,7 +139,7 @@ CONFIG_SCHEMA_BASE = (
139
139
  cv.Optional(CONF_SUPPLY_VOLTAGE, default="3.3V"): cv.enum(
140
140
  VOLTAGE_OPTIONS, upper=True
141
141
  ),
142
- cv.Optional(CONF_TEMPERATURE_OFFSET, default=0): cv.temperature,
142
+ cv.Optional(CONF_TEMPERATURE_OFFSET, default=0): cv.temperature_delta,
143
143
  cv.Optional(
144
144
  CONF_STATE_SAVE_INTERVAL, default="6hours"
145
145
  ): cv.positive_time_period_minutes,
@@ -30,14 +30,12 @@ class DateTimeBase : public EntityBase {
30
30
  #endif
31
31
  };
32
32
 
33
- #ifdef USE_TIME
34
33
  class DateTimeStateTrigger : public Trigger<ESPTime> {
35
34
  public:
36
35
  explicit DateTimeStateTrigger(DateTimeBase *parent) {
37
36
  parent->add_on_state_callback([this, parent]() { this->trigger(parent->state_as_esptime()); });
38
37
  }
39
38
  };
40
- #endif
41
39
 
42
40
  } // namespace datetime
43
41
  } // namespace esphome
@@ -790,6 +790,7 @@ async def to_code(config):
790
790
  add_idf_sdkconfig_option("CONFIG_AUTOSTART_ARDUINO", True)
791
791
  add_idf_sdkconfig_option("CONFIG_MBEDTLS_PSK_MODES", True)
792
792
  add_idf_sdkconfig_option("CONFIG_MBEDTLS_CERTIFICATE_BUNDLE", True)
793
+ add_idf_sdkconfig_option("CONFIG_ESP_PHY_REDUCE_TX_POWER", True)
793
794
 
794
795
  cg.add_build_flag("-Wno-nonnull-compare")
795
796
 
@@ -6,6 +6,7 @@
6
6
  #include <freertos/FreeRTOS.h>
7
7
  #include <freertos/task.h>
8
8
  #include <esp_idf_version.h>
9
+ #include <esp_ota_ops.h>
9
10
  #include <esp_task_wdt.h>
10
11
  #include <esp_timer.h>
11
12
  #include <soc/rtc.h>
@@ -52,6 +53,16 @@ void arch_init() {
52
53
  disableCore1WDT();
53
54
  #endif
54
55
  #endif
56
+
57
+ // If the bootloader was compiled with CONFIG_BOOTLOADER_APP_ROLLBACK_ENABLE the current
58
+ // partition will get rolled back unless it is marked as valid.
59
+ esp_ota_img_states_t state;
60
+ const esp_partition_t *running = esp_ota_get_running_partition();
61
+ if (esp_ota_get_state_partition(running, &state) == ESP_OK) {
62
+ if (state == ESP_OTA_IMG_PENDING_VERIFY) {
63
+ esp_ota_mark_app_valid_cancel_rollback();
64
+ }
65
+ }
55
66
  }
56
67
  void IRAM_ATTR HOT arch_feed_wdt() { esp_task_wdt_reset(); }
57
68
 
@@ -9,8 +9,8 @@ static const char *const TAG = "htu21d";
9
9
 
10
10
  static const uint8_t HTU21D_ADDRESS = 0x40;
11
11
  static const uint8_t HTU21D_REGISTER_RESET = 0xFE;
12
- static const uint8_t HTU21D_REGISTER_TEMPERATURE = 0xE3;
13
- static const uint8_t HTU21D_REGISTER_HUMIDITY = 0xE5;
12
+ static const uint8_t HTU21D_REGISTER_TEMPERATURE = 0xF3;
13
+ static const uint8_t HTU21D_REGISTER_HUMIDITY = 0xF5;
14
14
  static const uint8_t HTU21D_WRITERHT_REG_CMD = 0xE6; /**< Write RH/T User Register 1 */
15
15
  static const uint8_t HTU21D_REGISTER_STATUS = 0xE7;
16
16
  static const uint8_t HTU21D_WRITEHEATER_REG_CMD = 0x51; /**< Write Heater Control Register */
@@ -81,7 +81,7 @@ CONFIG_SCHEMA = (
81
81
  cv.int_range(min=0, max=0xFFFF, max_included=False),
82
82
  ),
83
83
  cv.Optional(CONF_AMBIENT_PRESSURE_COMPENSATION): cv.pressure,
84
- cv.Optional(CONF_TEMPERATURE_OFFSET, default="4°C"): cv.temperature,
84
+ cv.Optional(CONF_TEMPERATURE_OFFSET, default="4°C"): cv.temperature_delta,
85
85
  cv.Optional(CONF_AMBIENT_PRESSURE_COMPENSATION_SOURCE): cv.use_id(
86
86
  sensor.Sensor
87
87
  ),
@@ -244,6 +244,20 @@ RESERVED_IDS = [
244
244
  "uart0",
245
245
  "uart1",
246
246
  "uart2",
247
+ # ESP32 ROM functions
248
+ "crc16_be",
249
+ "crc16_le",
250
+ "crc32_be",
251
+ "crc32_le",
252
+ "crc8_be",
253
+ "crc8_le",
254
+ "dbg_state",
255
+ "debug_timer",
256
+ "one_bits",
257
+ "recv_packet",
258
+ "send_packet",
259
+ "check_pos",
260
+ "software_reset",
247
261
  ]
248
262
 
249
263
 
esphome/const.py CHANGED
@@ -4,7 +4,7 @@ from enum import Enum
4
4
 
5
5
  from esphome.enum import StrEnum
6
6
 
7
- __version__ = "2025.10.1"
7
+ __version__ = "2025.10.2"
8
8
 
9
9
  ALLOWED_NAME_CHARS = "abcdefghijklmnopqrstuvwxyz0123456789-_"
10
10
  VALID_SUBSTITUTIONS_CHARACTERS = (
@@ -696,6 +696,7 @@ CONF_OPEN_DRAIN = "open_drain"
696
696
  CONF_OPEN_DRAIN_INTERRUPT = "open_drain_interrupt"
697
697
  CONF_OPEN_DURATION = "open_duration"
698
698
  CONF_OPEN_ENDSTOP = "open_endstop"
699
+ CONF_OPENTHREAD = "openthread"
699
700
  CONF_OPERATION = "operation"
700
701
  CONF_OPTIMISTIC = "optimistic"
701
702
  CONF_OPTION = "option"
esphome/core/__init__.py CHANGED
@@ -11,6 +11,7 @@ from esphome.const import (
11
11
  CONF_COMMENT,
12
12
  CONF_ESPHOME,
13
13
  CONF_ETHERNET,
14
+ CONF_OPENTHREAD,
14
15
  CONF_PORT,
15
16
  CONF_USE_ADDRESS,
16
17
  CONF_WEB_SERVER,
@@ -641,6 +642,9 @@ class EsphomeCore:
641
642
  if CONF_ETHERNET in self.config:
642
643
  return self.config[CONF_ETHERNET][CONF_USE_ADDRESS]
643
644
 
645
+ if CONF_OPENTHREAD in self.config:
646
+ return f"{self.name}.local"
647
+
644
648
  return None
645
649
 
646
650
  @property
@@ -10,6 +10,10 @@ from esphome.helpers import get_bool_env
10
10
 
11
11
  from .util.password import password_hash
12
12
 
13
+ # Sentinel file name used for CORE.config_path when dashboard initializes.
14
+ # This ensures .parent returns the config directory instead of root.
15
+ _DASHBOARD_SENTINEL_FILE = "___DASHBOARD_SENTINEL___.yaml"
16
+
13
17
 
14
18
  class DashboardSettings:
15
19
  """Settings for the dashboard."""
@@ -48,7 +52,12 @@ class DashboardSettings:
48
52
  self.config_dir = Path(args.configuration)
49
53
  self.absolute_config_dir = self.config_dir.resolve()
50
54
  self.verbose = args.verbose
51
- CORE.config_path = self.config_dir / "."
55
+ # Set to a sentinel file so .parent gives us the config directory.
56
+ # Previously this was `os.path.join(self.config_dir, ".")` which worked because
57
+ # os.path.dirname("/config/.") returns "/config", but Path("/config/.").parent
58
+ # normalizes to Path("/config") first, then .parent returns Path("/"), breaking
59
+ # secret resolution. Using a sentinel file ensures .parent gives the correct directory.
60
+ CORE.config_path = self.config_dir / _DASHBOARD_SENTINEL_FILE
52
61
 
53
62
  @property
54
63
  def relative_url(self) -> str:
@@ -1058,7 +1058,8 @@ class DownloadBinaryRequestHandler(BaseHandler):
1058
1058
  "download",
1059
1059
  f"{storage_json.name}-{file_name}",
1060
1060
  )
1061
- path = storage_json.firmware_bin_path.with_name(file_name)
1061
+
1062
+ path = storage_json.firmware_bin_path.parent.joinpath(file_name)
1062
1063
 
1063
1064
  if not path.is_file():
1064
1065
  args = ["esphome", "idedata", settings.rel_path(configuration)]
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: esphome
3
- Version: 2025.10.1
3
+ Version: 2025.10.2
4
4
  Summary: ESPHome is a system to configure your microcontrollers by simple yet powerful configuration files and control them remotely through Home Automation systems.
5
5
  Author-email: The ESPHome Authors <esphome@openhomefoundation.org>
6
6
  License-Expression: MIT
@@ -1,12 +1,12 @@
1
1
  esphome/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2
- esphome/__main__.py,sha256=CyF97d_1fVXAe_S71fgwljmwX5egquqVxt0-qQZeoRU,43870
2
+ esphome/__main__.py,sha256=mZntGYZogDYs6njugstrFFe7RZx2TlQv-2AmUOCdE3I,43943
3
3
  esphome/address_cache.py,sha256=mXLDjOZ6NZebwRXSldZLnpPn51jfXeReRx0YdQ6oxOE,4622
4
4
  esphome/automation.py,sha256=Gd_VHPDp5a1GYVNgwrzsCMuzHobmv49gcWdlV3y646g,17696
5
5
  esphome/codegen.py,sha256=91Q9SVbTlgH_gFU4_sbVi6YEAiOjLuAGHG6qqV3lLHo,1939
6
6
  esphome/config.py,sha256=fu7G01comMPAfWd-ZZzUyIqO6cuLb6F44Sxv2LIFCUc,45156
7
7
  esphome/config_helpers.py,sha256=P-tlafqFIQuCxdWERlk38MXQcB9apHcR68-DgeUco5s,6207
8
- esphome/config_validation.py,sha256=WOIf3s3CIhWiAFJ7NdpmMzLfCNv89J67pvZXHmiBz5I,64808
9
- esphome/const.py,sha256=n64w5wIHdaCrpC_RSrNmb3C1to0xC-cRsEEnmOUax6s,44456
8
+ esphome/config_validation.py,sha256=r1llmDF0ePekWWblPwLd0Cnrbxwn0W1BBZubpBtYuEc,65057
9
+ esphome/const.py,sha256=299M2xhdejxA6mx0fM5n8_uRX4G_Kzeo12dRUwfy7zc,44487
10
10
  esphome/coroutine.py,sha256=JFBDo8ngY46zhxvjk5aQ5MO_-qrqKDfKQTglEIqHrYY,11946
11
11
  esphome/cpp_generator.py,sha256=DhHZT5s-Pbx5MJ762N_hFOYFo4Q9c0wJQG4p7UU_1lc,31901
12
12
  esphome/cpp_helpers.py,sha256=r-hrUp7luke-ByuK2Z0TCzIvn4tTswMUkAzlVoKntiI,4039
@@ -418,12 +418,12 @@ esphome/components/bme680/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJW
418
418
  esphome/components/bme680/bme680.cpp,sha256=WrRH-u_NJitaM5mFZkanPTVOjzyZ4EIq3rlf9aa1Oxc,16989
419
419
  esphome/components/bme680/bme680.h,sha256=zdTFcpzNb3nSPy7q9V3iSJ5uBsmoZgJkzxU3Fcwf_BY,4678
420
420
  esphome/components/bme680/sensor.py,sha256=fjZOcC0AymBF4f3vdgd-WfTfkqL0QrCOnaXdnGvGolU,5801
421
- esphome/components/bme680_bsec/__init__.py,sha256=FmtARbE-B7Dkb1FnOWQavaAdOggraJqrDIocHitQrmI,3062
421
+ esphome/components/bme680_bsec/__init__.py,sha256=gv6WRGGwdPw6-F0iVde6ahKAwt3g8n9QKbPqnVWCkeE,3068
422
422
  esphome/components/bme680_bsec/bme680_bsec.cpp,sha256=I3YR9oQF_jP-9_FAG-BMhBZi_hE0mB_Ym8u0ZN6o9Mc,22630
423
423
  esphome/components/bme680_bsec/bme680_bsec.h,sha256=aUGZXwSiu0wOlt13_mxhy0yKxToAInX2rnhZ_UQc7TM,5907
424
424
  esphome/components/bme680_bsec/sensor.py,sha256=Y4efGwK7zDHbS8ET7o-bF__A86OJsZt2Ypl4sRtqKLE,4114
425
425
  esphome/components/bme680_bsec/text_sensor.py,sha256=h2WQ_GjAOTsPqhCXwlfa-WmfOsUVWBcLKU5iO0fDEFw,921
426
- esphome/components/bme68x_bsec2/__init__.py,sha256=OarBjxWaiAoR_xc6isNHHSaa6PkDXinQY4-Wur9BR-I,6234
426
+ esphome/components/bme68x_bsec2/__init__.py,sha256=j0KAh7MifXz7E9PWuW1G5pSMN8AdsdrwzD1ZWKjlOtM,6240
427
427
  esphome/components/bme68x_bsec2/bme68x_bsec2.cpp,sha256=LRIAb86G4WL2orOYPsKmOaeehPgQHwjP7yXR2DH8kjQ,20493
428
428
  esphome/components/bme68x_bsec2/bme68x_bsec2.h,sha256=EVck6JgQOYydwRfO9Vvv5YgY4CDiMMwHzOXozJZZsNA,5415
429
429
  esphome/components/bme68x_bsec2/sensor.py,sha256=AM-oEOcJuOmu55lkYZ7SOrbqx7wUYd4ku8s_DxK1cR8,4336
@@ -673,7 +673,7 @@ esphome/components/dashboard_import/dashboard_import.h,sha256=gPLB3_vwG3ma-j-VHe
673
673
  esphome/components/datetime/__init__.py,sha256=_NjXvuxRyOQvLmf5E5A9B2e3PF8ZWmRTtw98dM10GGc,8911
674
674
  esphome/components/datetime/date_entity.cpp,sha256=IbEWpZwT6bqNOd6WRu8_Jm6RH9j2oXznydiZ_xRPg7w,3700
675
675
  esphome/components/datetime/date_entity.h,sha256=vg5e6YYGMaRQw0lz8c-xt4Sji6Tk2rzDwp5Q4g70kq0,2592
676
- esphome/components/datetime/datetime_base.h,sha256=t-65pTVsHCOk9zWNWkgLFC296DjHAZb5NvKCC_smWCw,1051
676
+ esphome/components/datetime/datetime_base.h,sha256=6exbxBZDJOcziQBQfuI4Kjxk2m6XUXO2yJbnZYCJgeM,1028
677
677
  esphome/components/datetime/datetime_entity.cpp,sha256=gWxzAJFSnkxWw1xYdPo-KDYvjZxMs-IHT8UAN8q476A,7758
678
678
  esphome/components/datetime/datetime_entity.h,sha256=C7wW-0U2GV6FJWSBpP5vNKJtI3pK3jJxjGggHG5kGgA,3750
679
679
  esphome/components/datetime/time_entity.cpp,sha256=R7bZ569BcA8qxhl0cfhEyh2uyxLdIrfbcWCvM4wHjd0,4411
@@ -863,10 +863,10 @@ esphome/components/es8388/select/adc_input_mic_select.cpp,sha256=xBlweJHP_BHSvwP
863
863
  esphome/components/es8388/select/adc_input_mic_select.h,sha256=1Wf54OGjnrj9vFe7WuIU10qraRAJX7HM1qEcCTTSlvc,336
864
864
  esphome/components/es8388/select/dac_output_select.cpp,sha256=FDOC7NHBaR34BqzzsPrmzBIzY_4o_YkF3_wSs_A9LC8,302
865
865
  esphome/components/es8388/select/dac_output_select.h,sha256=u00z0jHqKmqsaKht3b3k7aGtYudU0cCJRTOw1Zh-mbw,334
866
- esphome/components/esp32/__init__.py,sha256=NNLUijHeU5ZSlf5AbS0Sk8oYQN5wk5-cbfnFwIRqttc,39042
866
+ esphome/components/esp32/__init__.py,sha256=OIvKIuakzmwF5a0VUqvI1vFhZMD_RwVk7kjgueZaDUE,39115
867
867
  esphome/components/esp32/boards.py,sha256=O2f122xZLngeY1pBbyjThMd1rLfrda1332rZF68n2KM,58436
868
868
  esphome/components/esp32/const.py,sha256=3sPibOKzbGgtSUIn7PfTQJRyob6x1vUtxagKCGS9CyY,1130
869
- esphome/components/esp32/core.cpp,sha256=7zSi6LBjWUV1qMNdCTs3R4LRLkg6Xnl8a7bsTGy-f8Q,2747
869
+ esphome/components/esp32/core.cpp,sha256=wgkilw_-s3YRT-b0CBSaPNj5r3Ey77ZEE0qd63B8Drs,3197
870
870
  esphome/components/esp32/gpio.cpp,sha256=_lXijDd4c6cB2HI8vIUtrmKodoGZ43AOSRgdOkS3pIg,6870
871
871
  esphome/components/esp32/gpio.h,sha256=uMa21XBEGZedxBP9EsXhf815BuOSTr7md4Ww6cFHcws,2314
872
872
  esphome/components/esp32/gpio.py,sha256=gQFf7rA1DB-TRgu72ADY11LBBmKhWWFRTuQwxGgdgSc,7760
@@ -1286,7 +1286,7 @@ esphome/components/http_request/update/__init__.py,sha256=cIoR3Gw0Bc2ZKoc-1LfW1g
1286
1286
  esphome/components/http_request/update/http_request_update.cpp,sha256=ly_2n4pE751OPPhYpXARBKswhr8krxpW5LPTCTkVLB4,7517
1287
1287
  esphome/components/http_request/update/http_request_update.h,sha256=8OP3PwsEAUsqJfkNOwOHUJl7HJdgknHBBOiAbAiBPXU,1255
1288
1288
  esphome/components/htu21d/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
1289
- esphome/components/htu21d/htu21d.cpp,sha256=XAeGTYFgDnUDSGv65K7zTKQWwzLTKRbgPC5oQO_GAFM,4560
1289
+ esphome/components/htu21d/htu21d.cpp,sha256=WP0_Wvtm7BAhb8iwTsBnQS39joxtUkzPqqrk-9ERCEI,4560
1290
1290
  esphome/components/htu21d/htu21d.h,sha256=zbuxEFgwjRWYp1x1mW1AX0_B1ZfV5BeNX2Ce56xV1Lc,1894
1291
1291
  esphome/components/htu21d/sensor.py,sha256=yetZH4qlaDqyFU9Mo3B7ByqB5kNpVeqrQuqJDM0Ifeg,3839
1292
1292
  esphome/components/htu31d/__init__.py,sha256=OVxEVhYcUY-P_ZwdHRIQ_gjZCxGPi12jHy7xuix1z-A,36
@@ -2680,7 +2680,7 @@ esphome/components/scd4x/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZ
2680
2680
  esphome/components/scd4x/automation.h,sha256=bGkGwV0wHimPe_0oug111GAsCJyahpr1LRoW0n1F81E,715
2681
2681
  esphome/components/scd4x/scd4x.cpp,sha256=fgXtz-GTE4A0gFG4XJerYuAxSdXsuM1tPDTEW5uHlRY,11834
2682
2682
  esphome/components/scd4x/scd4x.h,sha256=ZCCgczDXJ4ocxEMKeAN9RFaMcZTWls4E-tIru5DCIcU,2216
2683
- esphome/components/scd4x/sensor.py,sha256=NYhoNVTz6inXvoY2wu6l8aWDEKpzOrGBax8lj6y5QnQ,5623
2683
+ esphome/components/scd4x/sensor.py,sha256=p2C1A80yBw42C69jUtimAPdVBz3E5CjvvGY2nWf8mU8,5629
2684
2684
  esphome/components/script/__init__.py,sha256=N4B0qNFRls5Z4LfHQLDgeCZ24RVD8mIhjA6Er-SBXCk,7771
2685
2685
  esphome/components/script/script.cpp,sha256=7-ucdkKqP25FdHWkrEWa70oo85si2zKB1lbY1QKZXmM,531
2686
2686
  esphome/components/script/script.h,sha256=Pc-CfDOklDggE2RIurKoLBxxeyM5LltZO636STEplwI,8584
@@ -3723,7 +3723,7 @@ esphome/components/zyaura/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJW
3723
3723
  esphome/components/zyaura/sensor.py,sha256=cSmO4ozYdi4ZD7NK4lmYjswWVmJoDvEruU1HhGrZSE0,2476
3724
3724
  esphome/components/zyaura/zyaura.cpp,sha256=F7WM8XAZ5MYuCD3eERm2_IA-O7sP1i-A-yF5TV4PqX8,3679
3725
3725
  esphome/components/zyaura/zyaura.h,sha256=7O3EGFIopUEfBp3A5sBC0l4zx2mesRxDWa_MBdGtPKQ,2307
3726
- esphome/core/__init__.py,sha256=4TnnZeKAoV-EAiKVdRu5dkBWz1ettqW3RO4Z9VxxkhI,30466
3726
+ esphome/core/__init__.py,sha256=a2o-xr9YWut3tF8oZZOY43pl3gdb-EhLfckgel3ZjoQ,30571
3727
3727
  esphome/core/application.cpp,sha256=3cpbiUjvUf4W4qmDOmXMkWUVtMz5BmnOkgj3eylC1wo,22814
3728
3728
  esphome/core/application.h,sha256=Enfg00Tc0egbU3-WvoNGqTDy4TZk12tYwMS5Laf4_Y8,20439
3729
3729
  esphome/core/area.h,sha256=mtFxmuv8fC2hArcey3cZ0F6hMXSO2QpFZ9Xv49z4rvk,393
@@ -3775,8 +3775,8 @@ esphome/dashboard/dashboard.py,sha256=4k32z98tQXj01FKHfXePLlP_zch-piHSxdbhjdgf3a
3775
3775
  esphome/dashboard/dns.py,sha256=zmePZ5i_qTMbjku-7sOFSRHLBH_BuI4wiu2nLhIlm9c,1999
3776
3776
  esphome/dashboard/entries.py,sha256=L-o0Wvo4moS-W-OGViZ3lOUTWyR_Sm1V6P_RrbApqqw,15607
3777
3777
  esphome/dashboard/models.py,sha256=YKr-M-PY1IO-_mtxL2sw5hWbFGXVsBQXq0-mLiyJXsc,2181
3778
- esphome/dashboard/settings.py,sha256=17ia_N1BMGCFnUC5XHOOJhV4FUs8atPLDpnTVoWNHfM,2836
3779
- esphome/dashboard/web_server.py,sha256=TQGkuADbyI86IAGUOksBTOyCXZGyT0fGYVkGLMUpSdk,56658
3778
+ esphome/dashboard/settings.py,sha256=CI9WO--Xntt1Nyyknbj61vVfWFYGA7QUFfwoR0UOHCg,3495
3779
+ esphome/dashboard/web_server.py,sha256=xQ3aTnQNqpEK02Vi4YE0-ipuEp-mT9EGA8Z-bln2-ks,56665
3780
3780
  esphome/dashboard/status/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
3781
3781
  esphome/dashboard/status/mdns.py,sha256=2cxZsnIxDSsaaEiNQ_jIxW-LdvEigFMerfPTr2zy31g,6621
3782
3782
  esphome/dashboard/status/mqtt.py,sha256=2QOq1vgwJCHW5uL_hqmi_R5fX5OTeTJUHx7c0pMLQKE,2578
@@ -3786,9 +3786,9 @@ esphome/dashboard/util/itertools.py,sha256=8eLrWEWmICLtXNxkKdYPQV0c_N4GEz8m9Npnb
3786
3786
  esphome/dashboard/util/password.py,sha256=cQz3b9B-ijTe7zS6BeCW0hc3pWv6JjC78jmnycYYAh8,321
3787
3787
  esphome/dashboard/util/subprocess.py,sha256=T8EW6dbU4LPd2DG1dRrdh8li71tt6J1isn411poMhkk,1022
3788
3788
  esphome/dashboard/util/text.py,sha256=wwFtORlvHjsYkqb68IT-772LHAhWxT4OtnkIcPICQB0,317
3789
- esphome-2025.10.1.dist-info/licenses/LICENSE,sha256=HzEjkBInJe44L4WvAOPfhPJJDNj6YbnqFyvGWRzArGM,36664
3790
- esphome-2025.10.1.dist-info/METADATA,sha256=686fJT3AL6uuhrCF4LZWVu1c5XTclV41e4HMbttq4IY,3633
3791
- esphome-2025.10.1.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
3792
- esphome-2025.10.1.dist-info/entry_points.txt,sha256=mIxVNuWtbYzeEcaWCl-AQ-97aBOWbnYBAK8nbF6P4M0,50
3793
- esphome-2025.10.1.dist-info/top_level.txt,sha256=0GSXEW3cnITpgG3qnsSMz0qoqJHAFyfw7Y8MVtEf1Yk,8
3794
- esphome-2025.10.1.dist-info/RECORD,,
3789
+ esphome-2025.10.2.dist-info/licenses/LICENSE,sha256=HzEjkBInJe44L4WvAOPfhPJJDNj6YbnqFyvGWRzArGM,36664
3790
+ esphome-2025.10.2.dist-info/METADATA,sha256=eY6T-qd00Ac2b8uC53Z5H5DldOlH4cSwuPVaVYizt5g,3633
3791
+ esphome-2025.10.2.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
3792
+ esphome-2025.10.2.dist-info/entry_points.txt,sha256=mIxVNuWtbYzeEcaWCl-AQ-97aBOWbnYBAK8nbF6P4M0,50
3793
+ esphome-2025.10.2.dist-info/top_level.txt,sha256=0GSXEW3cnITpgG3qnsSMz0qoqJHAFyfw7Y8MVtEf1Yk,8
3794
+ esphome-2025.10.2.dist-info/RECORD,,