esphome 2025.8.0b1__py3-none-any.whl → 2025.8.0b2__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.
@@ -208,11 +208,11 @@ void ESPNowComponent::enable_() {
208
208
  esp_wifi_connectionless_module_set_wake_interval(CONFIG_ESPNOW_WAKE_INTERVAL);
209
209
  #endif
210
210
 
211
+ this->state_ = ESPNOW_STATE_ENABLED;
212
+
211
213
  for (auto peer : this->peers_) {
212
214
  this->add_peer(peer.address);
213
215
  }
214
-
215
- this->state_ = ESPNOW_STATE_ENABLED;
216
216
  }
217
217
 
218
218
  void ESPNowComponent::disable() {
@@ -407,7 +407,7 @@ esp_err_t ESPNowComponent::add_peer(const uint8_t *peer) {
407
407
  }
408
408
 
409
409
  if (memcmp(peer, this->own_address_, ESP_NOW_ETH_ALEN) == 0) {
410
- this->mark_failed();
410
+ this->status_momentary_warning("peer-add-failed");
411
411
  return ESP_ERR_INVALID_MAC;
412
412
  }
413
413
 
@@ -16,6 +16,7 @@ from esphome.components.esp32.const import (
16
16
  import esphome.config_validation as cv
17
17
  from esphome.const import (
18
18
  CONF_ADVANCED,
19
+ CONF_DISABLED,
19
20
  CONF_FRAMEWORK,
20
21
  CONF_ID,
21
22
  CONF_MODE,
@@ -102,6 +103,7 @@ def get_config_schema(config):
102
103
  cv.Optional(CONF_MODE, default=modes[0]): cv.one_of(*modes, lower=True),
103
104
  cv.Optional(CONF_ENABLE_ECC, default=False): cv.boolean,
104
105
  cv.Optional(CONF_SPEED, default=speeds[0]): cv.one_of(*speeds, upper=True),
106
+ cv.Optional(CONF_DISABLED, default=False): cv.boolean,
105
107
  }
106
108
  )(config)
107
109
 
@@ -112,6 +114,8 @@ FINAL_VALIDATE_SCHEMA = validate_psram_mode
112
114
 
113
115
 
114
116
  async def to_code(config):
117
+ if config[CONF_DISABLED]:
118
+ return
115
119
  if CORE.using_arduino:
116
120
  cg.add_build_flag("-DBOARD_HAS_PSRAM")
117
121
  if config[CONF_MODE] == TYPE_OCTAL:
@@ -393,10 +393,13 @@ def icon(value):
393
393
  )
394
394
 
395
395
 
396
- def sub_device_id(value: str | None) -> core.ID:
396
+ def sub_device_id(value: str | None) -> core.ID | None:
397
397
  # Lazy import to avoid circular imports
398
398
  from esphome.core.config import Device
399
399
 
400
+ if not value:
401
+ return None
402
+
400
403
  return use_id(Device)(value)
401
404
 
402
405
 
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.8.0b1"
7
+ __version__ = "2025.8.0b2"
8
8
 
9
9
  ALLOWED_NAME_CHARS = "abcdefghijklmnopqrstuvwxyz0123456789-_"
10
10
  VALID_SUBSTITUTIONS_CHARACTERS = (
@@ -77,8 +77,8 @@ async def setup_entity(var: MockObj, config: ConfigType, platform: str) -> None:
77
77
  """
78
78
  # Get device info
79
79
  device_name: str | None = None
80
- if CONF_DEVICE_ID in config:
81
- device_id_obj: ID = config[CONF_DEVICE_ID]
80
+ device_id_obj: ID | None
81
+ if device_id_obj := config.get(CONF_DEVICE_ID):
82
82
  device: MockObj = await get_variable(device_id_obj)
83
83
  add(var.set_device(device))
84
84
  # Get device name for object ID calculation
@@ -199,8 +199,8 @@ def entity_duplicate_validator(platform: str) -> Callable[[ConfigType], ConfigTy
199
199
  # Get device name if entity is on a sub-device
200
200
  device_name = None
201
201
  device_id = "" # Empty string for main device
202
- if CONF_DEVICE_ID in config:
203
- device_id_obj = config[CONF_DEVICE_ID]
202
+ device_id_obj: ID | None
203
+ if device_id_obj := config.get(CONF_DEVICE_ID):
204
204
  device_name = device_id_obj.id
205
205
  # Use the device ID string directly for uniqueness
206
206
  device_id = device_id_obj.id
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: esphome
3
- Version: 2025.8.0b1
3
+ Version: 2025.8.0b2
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: MIT
@@ -36,8 +36,8 @@ Requires-Dist: pyserial==3.5
36
36
  Requires-Dist: platformio==6.1.18
37
37
  Requires-Dist: esptool==5.0.2
38
38
  Requires-Dist: click==8.1.7
39
- Requires-Dist: esphome-dashboard==20250514.0
40
- Requires-Dist: aioesphomeapi==38.2.1
39
+ Requires-Dist: esphome-dashboard==20250814.0
40
+ Requires-Dist: aioesphomeapi==39.0.0
41
41
  Requires-Dist: zeroconf==0.147.0
42
42
  Requires-Dist: puremagic==1.30
43
43
  Requires-Dist: ruamel.yaml==0.18.14
@@ -4,8 +4,8 @@ esphome/automation.py,sha256=gK_oTzOSb3X-0O82bZNYk4XjAzSecpSdvHQGcY79Rcc,15661
4
4
  esphome/codegen.py,sha256=H_WB4rj0uEowvlhEb31EjJQwutLQ5CQkJIsNgDK-wx8,1917
5
5
  esphome/config.py,sha256=74-Y3XKtlB9h__fsu-Zvj6PanDWufVGo1-W4jlG-8cg,43172
6
6
  esphome/config_helpers.py,sha256=E0UO0khX9JW-br_NSsDlLH3VuE-YwMQ99_pzEQVupDc,5391
7
- esphome/config_validation.py,sha256=ylrgF9ZwGBAyb4gGX2FTZ2ut_PyvP2XTh1RpHdYD8sM,64794
8
- esphome/const.py,sha256=PpKS8OB3x8Mvk9O65BLOXFSqmBTHichskvdKChwiuT8,44162
7
+ esphome/config_validation.py,sha256=iYkDothyN3eT011IndUD-kEMke9ymZXKSsEjQjnwjSo,64840
8
+ esphome/const.py,sha256=CgwIO4HfyqEzz9SsytAC3lPl47Y4tQKgbyQbpj57lJs,44162
9
9
  esphome/coroutine.py,sha256=HNBqqhaTbpvsOI19bTXltxJCMVtoeqZPe4qTf4CKkAc,9309
10
10
  esphome/cpp_generator.py,sha256=j5FQMC8wzHDwXnZ9uii5t6wXA7ZwjwHI2SUWghTsCuE,31869
11
11
  esphome/cpp_helpers.py,sha256=xDR-Gz5ZTmW-Qp7coa0AF77_ac6fDJEBV7gpGBlZGRw,4003
@@ -950,7 +950,7 @@ esphome/components/esphome/ota/ota_esphome.cpp,sha256=wjSpISw66rKAQIeVuL_-LdOvY3
950
950
  esphome/components/esphome/ota/ota_esphome.h,sha256=M59XzEEM9b4MtTtS0tsS_hdiRHPXAlJUrGfwgUgPuAQ,1397
951
951
  esphome/components/espnow/__init__.py,sha256=ZMz0wyAmx4VW8dewtRhvSu3-TiCMbjVswF8_PvgxcvA,9780
952
952
  esphome/components/espnow/automation.h,sha256=nR-WJEfKRLpbkd1xbX2sKPId-M1TPdFrA5CD_C7LXwU,5776
953
- esphome/components/espnow/espnow_component.cpp,sha256=O7DCbKGUjCzDlKAjumLncPNU7aV9zp6xuwLGBZjuBXU,15021
953
+ esphome/components/espnow/espnow_component.cpp,sha256=cVGDLhpyYV33P0B5U__M9HUJTXmkHig6PoWwK8OYrPQ,15051
954
954
  esphome/components/espnow/espnow_component.h,sha256=wQpUgP7vnQ8quScoOxdfEyyDQ77B4i1ryhSiwbNnqSI,6971
955
955
  esphome/components/espnow/espnow_err.h,sha256=XpcviJ6_EdTPdJ7f_DX3pWcKsm9FVfLtczO-JeGMoRg,649
956
956
  esphome/components/espnow/espnow_packet.h,sha256=zZGNt5qGWWcq9Sfwmc685VgLH4AEmYYzxZBF0uHrvMM,5692
@@ -2377,7 +2377,7 @@ esphome/components/preferences/syncer.h,sha256=AaSl8_J86_P6bZFVx2j7I8cXz8VGeSdGC
2377
2377
  esphome/components/prometheus/__init__.py,sha256=nDE6iM3mGGovPVT74EOrDgXKv4yq0kQaK2UUbEbSllg,1697
2378
2378
  esphome/components/prometheus/prometheus_handler.cpp,sha256=dTvIT7QbsLDLM6VERKH0ipEKMY5oiamnNy6Eg7AVVuo,39091
2379
2379
  esphome/components/prometheus/prometheus_handler.h,sha256=oohyR_wpYfb2I7s6zWV3rO-zO9ZsQ3ybxEJSsvdbeEY,7834
2380
- esphome/components/psram/__init__.py,sha256=u059-e7Da5hVoTI0fq_tC7V5d-5dH5p2NWjyLZHfVnc,4918
2380
+ esphome/components/psram/__init__.py,sha256=1SWqKgYP0KZq8iAuZDndKKXpkobn3MSTyBBG5RmpzTI,5049
2381
2381
  esphome/components/psram/psram.cpp,sha256=ILopiIgTMmmb4mD431OuaZMEPU6v24u9Pn9K9Du1dgw,637
2382
2382
  esphome/components/psram/psram.h,sha256=LdElwxbKK68o4J9sdmMX8RZn5D94lXhCCSDm83Ge2jc,239
2383
2383
  esphome/components/pulse_counter/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -3693,7 +3693,7 @@ esphome/core/device.h,sha256=mYTwRg92-BU8uTTzmrufH-KkHCMLKsKWnvM-mjzw6I0,531
3693
3693
  esphome/core/doxygen.h,sha256=9fAJ2T-1z96-NYnj63vQhsnKthHBrh3EqBnY0h3ZN-A,439
3694
3694
  esphome/core/entity_base.cpp,sha256=4JMAGN8w3bMW-kTchQxlbA-zS43NOdYhT1Fo0Celx78,2453
3695
3695
  esphome/core/entity_base.h,sha256=BSy0wKv8I1CvrbH86REV-yRN-YCPv5ZUF3FCsv5d02g,7198
3696
- esphome/core/entity_helpers.py,sha256=cbCG91EeBgiIw4R4TsO39ukTJQRKKRUPnUjZnSBrRD8,9761
3696
+ esphome/core/entity_helpers.py,sha256=XqeVCGPX1BeOFlyrtV3m5CxVedO3BVmnvfuqZHGMdFI,9759
3697
3697
  esphome/core/event_pool.h,sha256=X8_-72rODgpG9P_dSjezkJjFaaFvXy0cV42o6X-Vv1Q,2405
3698
3698
  esphome/core/gpio.h,sha256=kLkCnPxu4_1CsLR4BI_Baj1lDGoRIh8uubbwsIkJPIA,2575
3699
3699
  esphome/core/hal.h,sha256=Le0-vtdDylYCaE9i4yvrv5-Y5PB5xoL3PM2FfMJsIeA,970
@@ -3735,9 +3735,9 @@ esphome/dashboard/util/itertools.py,sha256=8eLrWEWmICLtXNxkKdYPQV0c_N4GEz8m9Npnb
3735
3735
  esphome/dashboard/util/password.py,sha256=cQz3b9B-ijTe7zS6BeCW0hc3pWv6JjC78jmnycYYAh8,321
3736
3736
  esphome/dashboard/util/subprocess.py,sha256=T8EW6dbU4LPd2DG1dRrdh8li71tt6J1isn411poMhkk,1022
3737
3737
  esphome/dashboard/util/text.py,sha256=wwFtORlvHjsYkqb68IT-772LHAhWxT4OtnkIcPICQB0,317
3738
- esphome-2025.8.0b1.dist-info/licenses/LICENSE,sha256=HzEjkBInJe44L4WvAOPfhPJJDNj6YbnqFyvGWRzArGM,36664
3739
- esphome-2025.8.0b1.dist-info/METADATA,sha256=Fx2vOfXLjiT1dHcygMtzeI145tBREaLdN-3if4Z0I4o,3633
3740
- esphome-2025.8.0b1.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
3741
- esphome-2025.8.0b1.dist-info/entry_points.txt,sha256=mIxVNuWtbYzeEcaWCl-AQ-97aBOWbnYBAK8nbF6P4M0,50
3742
- esphome-2025.8.0b1.dist-info/top_level.txt,sha256=0GSXEW3cnITpgG3qnsSMz0qoqJHAFyfw7Y8MVtEf1Yk,8
3743
- esphome-2025.8.0b1.dist-info/RECORD,,
3738
+ esphome-2025.8.0b2.dist-info/licenses/LICENSE,sha256=HzEjkBInJe44L4WvAOPfhPJJDNj6YbnqFyvGWRzArGM,36664
3739
+ esphome-2025.8.0b2.dist-info/METADATA,sha256=q9jmveU88OVgC8Hdnid0I2ZYOlmq84kD52n0mf_T7-8,3633
3740
+ esphome-2025.8.0b2.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
3741
+ esphome-2025.8.0b2.dist-info/entry_points.txt,sha256=mIxVNuWtbYzeEcaWCl-AQ-97aBOWbnYBAK8nbF6P4M0,50
3742
+ esphome-2025.8.0b2.dist-info/top_level.txt,sha256=0GSXEW3cnITpgG3qnsSMz0qoqJHAFyfw7Y8MVtEf1Yk,8
3743
+ esphome-2025.8.0b2.dist-info/RECORD,,