esphome 2024.11.0b1__py3-none-any.whl → 2024.11.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.
@@ -204,11 +204,11 @@ void BME68xBSEC2Component::update_subscription_() {
204
204
  }
205
205
 
206
206
  void BME68xBSEC2Component::run_() {
207
+ this->op_mode_ = this->bsec_settings_.op_mode;
207
208
  int64_t curr_time_ns = this->get_time_ns_();
208
- if (curr_time_ns < this->next_call_ns_) {
209
+ if (curr_time_ns < this->bsec_settings_.next_call) {
209
210
  return;
210
211
  }
211
- this->op_mode_ = this->bsec_settings_.op_mode;
212
212
  uint8_t status;
213
213
 
214
214
  ESP_LOGV(TAG, "Performing sensor run");
@@ -219,57 +219,60 @@ void BME68xBSEC2Component::run_() {
219
219
  ESP_LOGW(TAG, "Failed to fetch sensor control settings (BSEC2 error code %d)", this->bsec_status_);
220
220
  return;
221
221
  }
222
- this->next_call_ns_ = this->bsec_settings_.next_call;
223
222
 
224
- if (this->bsec_settings_.trigger_measurement) {
225
- bme68x_get_conf(&bme68x_conf, &this->bme68x_);
223
+ switch (this->bsec_settings_.op_mode) {
224
+ case BME68X_FORCED_MODE:
225
+ bme68x_get_conf(&bme68x_conf, &this->bme68x_);
226
226
 
227
- bme68x_conf.os_hum = this->bsec_settings_.humidity_oversampling;
228
- bme68x_conf.os_temp = this->bsec_settings_.temperature_oversampling;
229
- bme68x_conf.os_pres = this->bsec_settings_.pressure_oversampling;
230
- bme68x_set_conf(&bme68x_conf, &this->bme68x_);
227
+ bme68x_conf.os_hum = this->bsec_settings_.humidity_oversampling;
228
+ bme68x_conf.os_temp = this->bsec_settings_.temperature_oversampling;
229
+ bme68x_conf.os_pres = this->bsec_settings_.pressure_oversampling;
230
+ bme68x_set_conf(&bme68x_conf, &this->bme68x_);
231
+ this->bme68x_heatr_conf_.enable = BME68X_ENABLE;
232
+ this->bme68x_heatr_conf_.heatr_temp = this->bsec_settings_.heater_temperature;
233
+ this->bme68x_heatr_conf_.heatr_dur = this->bsec_settings_.heater_duration;
231
234
 
232
- switch (this->bsec_settings_.op_mode) {
233
- case BME68X_FORCED_MODE:
234
- this->bme68x_heatr_conf_.enable = BME68X_ENABLE;
235
- this->bme68x_heatr_conf_.heatr_temp = this->bsec_settings_.heater_temperature;
236
- this->bme68x_heatr_conf_.heatr_dur = this->bsec_settings_.heater_duration;
235
+ // status = bme68x_set_op_mode(this->bsec_settings_.op_mode, &this->bme68x_);
236
+ status = bme68x_set_heatr_conf(BME68X_FORCED_MODE, &this->bme68x_heatr_conf_, &this->bme68x_);
237
+ status = bme68x_set_op_mode(BME68X_FORCED_MODE, &this->bme68x_);
238
+ this->op_mode_ = BME68X_FORCED_MODE;
239
+ ESP_LOGV(TAG, "Using forced mode");
237
240
 
238
- status = bme68x_set_op_mode(this->bsec_settings_.op_mode, &this->bme68x_);
239
- status = bme68x_set_heatr_conf(BME68X_FORCED_MODE, &this->bme68x_heatr_conf_, &this->bme68x_);
240
- status = bme68x_set_op_mode(BME68X_FORCED_MODE, &this->bme68x_);
241
- this->op_mode_ = BME68X_FORCED_MODE;
242
- this->sleep_mode_ = false;
243
- ESP_LOGV(TAG, "Using forced mode");
241
+ break;
242
+ case BME68X_PARALLEL_MODE:
243
+ if (this->op_mode_ != this->bsec_settings_.op_mode) {
244
+ bme68x_get_conf(&bme68x_conf, &this->bme68x_);
244
245
 
245
- break;
246
- case BME68X_PARALLEL_MODE:
247
- if (this->op_mode_ != this->bsec_settings_.op_mode) {
248
- this->bme68x_heatr_conf_.enable = BME68X_ENABLE;
249
- this->bme68x_heatr_conf_.heatr_temp_prof = this->bsec_settings_.heater_temperature_profile;
250
- this->bme68x_heatr_conf_.heatr_dur_prof = this->bsec_settings_.heater_duration_profile;
251
- this->bme68x_heatr_conf_.profile_len = this->bsec_settings_.heater_profile_len;
252
- this->bme68x_heatr_conf_.shared_heatr_dur =
253
- BSEC_TOTAL_HEAT_DUR -
254
- (bme68x_get_meas_dur(BME68X_PARALLEL_MODE, &bme68x_conf, &this->bme68x_) / INT64_C(1000));
255
-
256
- status = bme68x_set_heatr_conf(BME68X_PARALLEL_MODE, &this->bme68x_heatr_conf_, &this->bme68x_);
257
-
258
- status = bme68x_set_op_mode(BME68X_PARALLEL_MODE, &this->bme68x_);
259
- this->op_mode_ = BME68X_PARALLEL_MODE;
260
- this->sleep_mode_ = false;
261
- ESP_LOGV(TAG, "Using parallel mode");
262
- }
263
- break;
264
- case BME68X_SLEEP_MODE:
265
- if (!this->sleep_mode_) {
266
- bme68x_set_op_mode(BME68X_SLEEP_MODE, &this->bme68x_);
267
- this->sleep_mode_ = true;
268
- ESP_LOGV(TAG, "Using sleep mode");
269
- }
270
- break;
271
- }
246
+ bme68x_conf.os_hum = this->bsec_settings_.humidity_oversampling;
247
+ bme68x_conf.os_temp = this->bsec_settings_.temperature_oversampling;
248
+ bme68x_conf.os_pres = this->bsec_settings_.pressure_oversampling;
249
+ bme68x_set_conf(&bme68x_conf, &this->bme68x_);
250
+
251
+ this->bme68x_heatr_conf_.enable = BME68X_ENABLE;
252
+ this->bme68x_heatr_conf_.heatr_temp_prof = this->bsec_settings_.heater_temperature_profile;
253
+ this->bme68x_heatr_conf_.heatr_dur_prof = this->bsec_settings_.heater_duration_profile;
254
+ this->bme68x_heatr_conf_.profile_len = this->bsec_settings_.heater_profile_len;
255
+ this->bme68x_heatr_conf_.shared_heatr_dur =
256
+ BSEC_TOTAL_HEAT_DUR -
257
+ (bme68x_get_meas_dur(BME68X_PARALLEL_MODE, &bme68x_conf, &this->bme68x_) / INT64_C(1000));
258
+
259
+ status = bme68x_set_heatr_conf(BME68X_PARALLEL_MODE, &this->bme68x_heatr_conf_, &this->bme68x_);
260
+
261
+ status = bme68x_set_op_mode(BME68X_PARALLEL_MODE, &this->bme68x_);
262
+ this->op_mode_ = BME68X_PARALLEL_MODE;
263
+ ESP_LOGV(TAG, "Using parallel mode");
264
+ }
265
+ break;
266
+ case BME68X_SLEEP_MODE:
267
+ if (this->op_mode_ != this->bsec_settings_.op_mode) {
268
+ bme68x_set_op_mode(BME68X_SLEEP_MODE, &this->bme68x_);
269
+ this->op_mode_ = BME68X_SLEEP_MODE;
270
+ ESP_LOGV(TAG, "Using sleep mode");
271
+ }
272
+ break;
273
+ }
272
274
 
275
+ if (this->bsec_settings_.trigger_measurement && this->bsec_settings_.op_mode != BME68X_SLEEP_MODE) {
273
276
  uint32_t meas_dur = 0;
274
277
  meas_dur = bme68x_get_meas_dur(this->op_mode_, &bme68x_conf, &this->bme68x_);
275
278
  ESP_LOGV(TAG, "Queueing read in %uus", meas_dur);
@@ -113,13 +113,11 @@ class BME68xBSEC2Component : public Component {
113
113
 
114
114
  struct bme68x_heatr_conf bme68x_heatr_conf_;
115
115
  uint8_t op_mode_; // operating mode of sensor
116
- bool sleep_mode_;
117
116
  bsec_library_return_t bsec_status_{BSEC_OK};
118
117
  int8_t bme68x_status_{BME68X_OK};
119
118
 
120
119
  int64_t last_time_ms_{0};
121
120
  uint32_t millis_overflow_counter_{0};
122
- int64_t next_call_ns_{0};
123
121
 
124
122
  std::queue<std::function<void()>> queue_;
125
123
 
@@ -65,6 +65,9 @@ void ESP32BLETracker::setup() {
65
65
  [this](ota::OTAState state, float progress, uint8_t error, ota::OTAComponent *comp) {
66
66
  if (state == ota::OTA_STARTED) {
67
67
  this->stop_scan();
68
+ for (auto *client : this->clients_) {
69
+ client->disconnect();
70
+ }
68
71
  }
69
72
  });
70
73
  #endif
@@ -99,14 +99,6 @@ void I2SAudioSpeaker::setup() {
99
99
  this->mark_failed();
100
100
  return;
101
101
  }
102
-
103
- this->i2s_event_queue_ = xQueueCreate(I2S_EVENT_QUEUE_COUNT, sizeof(i2s_event_t));
104
-
105
- if (this->i2s_event_queue_ == nullptr) {
106
- ESP_LOGE(TAG, "Failed to create I2S event queue");
107
- this->mark_failed();
108
- return;
109
- }
110
102
  }
111
103
 
112
104
  void I2SAudioSpeaker::loop() {
@@ -339,7 +331,7 @@ void I2SAudioSpeaker::speaker_task(void *params) {
339
331
  }
340
332
 
341
333
  void I2SAudioSpeaker::start() {
342
- if (this->is_failed() || this->status_has_error())
334
+ if (!this->is_ready() || this->is_failed() || this->status_has_error())
343
335
  return;
344
336
  if ((this->state_ == speaker::STATE_STARTING) || (this->state_ == speaker::STATE_RUNNING))
345
337
  return;
@@ -519,7 +511,6 @@ void I2SAudioSpeaker::delete_task_(size_t buffer_size) {
519
511
  }
520
512
 
521
513
  xEventGroupSetBits(this->event_group_, SpeakerEventGroupBits::STATE_STOPPED);
522
- xQueueReset(this->i2s_event_queue_);
523
514
 
524
515
  this->task_created_ = false;
525
516
  vTaskDelete(nullptr);
@@ -23,7 +23,7 @@ namespace i2s_audio {
23
23
 
24
24
  class I2SAudioSpeaker : public I2SAudioOut, public speaker::Speaker, public Component {
25
25
  public:
26
- float get_setup_priority() const override { return esphome::setup_priority::LATE; }
26
+ float get_setup_priority() const override { return esphome::setup_priority::PROCESSOR; }
27
27
 
28
28
  void setup() override;
29
29
  void loop() override;
@@ -180,7 +180,7 @@ void LD2420Component::apply_config_action() {
180
180
  }
181
181
 
182
182
  void LD2420Component::factory_reset_action() {
183
- ESP_LOGCONFIG(TAG, "Setiing factory defaults...");
183
+ ESP_LOGCONFIG(TAG, "Setting factory defaults...");
184
184
  if (this->set_config_mode(true) == LD2420_ERROR_TIMEOUT) {
185
185
  ESP_LOGE(TAG, "LD2420 module has failed to respond, check baud rate and serial connections.");
186
186
  this->mark_failed();
@@ -38,7 +38,7 @@ void SDMMeter::on_modbus_data(const std::vector<uint8_t> &data) {
38
38
 
39
39
  ESP_LOGD(
40
40
  TAG,
41
- "SDMMeter Phase %c: V=%.3f V, I=%.3f A, Active P=%.3f W, Apparent P=%.3f VA, Reactive P=%.3f VAR, PF=%.3f, "
41
+ "SDMMeter Phase %c: V=%.3f V, I=%.3f A, Active P=%.3f W, Apparent P=%.3f VA, Reactive P=%.3f var, PF=%.3f, "
42
42
  "PA=%.3f °",
43
43
  i + 'A', voltage, current, active_power, apparent_power, reactive_power, power_factor, phase_angle);
44
44
  if (phase.voltage_sensor_ != nullptr)
esphome/const.py CHANGED
@@ -1,6 +1,6 @@
1
1
  """Constants used by esphome."""
2
2
 
3
- __version__ = "2024.11.0b1"
3
+ __version__ = "2024.11.0b2"
4
4
 
5
5
  ALLOWED_NAME_CHARS = "abcdefghijklmnopqrstuvwxyz0123456789-_"
6
6
  VALID_SUBSTITUTIONS_CHARACTERS = (
@@ -1095,7 +1095,7 @@ UNIT_STEPS = "steps"
1095
1095
  UNIT_VOLT = "V"
1096
1096
  UNIT_VOLT_AMPS = "VA"
1097
1097
  UNIT_VOLT_AMPS_HOURS = "VAh"
1098
- UNIT_VOLT_AMPS_REACTIVE = "VAR"
1098
+ UNIT_VOLT_AMPS_REACTIVE = "var"
1099
1099
  UNIT_VOLT_AMPS_REACTIVE_HOURS = "VARh"
1100
1100
  UNIT_WATT = "W"
1101
1101
  UNIT_WATT_HOURS = "Wh"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: esphome
3
- Version: 2024.11.0b1
3
+ Version: 2024.11.0b2
4
4
  Summary: Make creating custom firmwares for ESP32/ESP8266 super easy.
5
5
  Author-email: The ESPHome Authors <esphome@nabucasa.com>
6
6
  License: MIT
@@ -5,7 +5,7 @@ esphome/codegen.py,sha256=GePHUM7xdXb_Pil59SHVsXg2F4VBPgkH-Fz2PDX8Z54,1873
5
5
  esphome/config.py,sha256=nOiXPZv8wHtmytkNlGcewp0uuJd9G5rRjkqevYXtjzo,39618
6
6
  esphome/config_helpers.py,sha256=MKf_wzO35nn41FvigXE0iYKDslPgL2ruf8R-EPtTT2I,3256
7
7
  esphome/config_validation.py,sha256=RaF7hC9-VwtWA8C6vYaKVzyz4XqeoOOajr3EJDnaBaI,66311
8
- esphome/const.py,sha256=Ih-5bSQlMPrMXQH7J4-cf4Tw-PKXcHvZ6LcevLSfIBk,40261
8
+ esphome/const.py,sha256=5FDAKAoaQ4XOuFEDIKVwNq0X5Xlhcfd5arInNhLIjCQ,40261
9
9
  esphome/coroutine.py,sha256=j_14z8dIIzIBeuNO30D4c1RJvMMt1xZFZ58Evd-EvJA,9344
10
10
  esphome/cpp_generator.py,sha256=lXPXHYUsFIvBSAoZ93mXYlGcXYg5L18nTtYGHE4_rr8,31203
11
11
  esphome/cpp_helpers.py,sha256=6C2vNbOIhZKi43xRVlk5hp9GfshfBn-rc5D_ZFUEYaE,4801
@@ -387,8 +387,8 @@ esphome/components/bme680_bsec/bme680_bsec.h,sha256=aUGZXwSiu0wOlt13_mxhy0yKxToA
387
387
  esphome/components/bme680_bsec/sensor.py,sha256=w26_mIroRS4r8ZWZb_kPnFih1G17cschuzqnHly5ZAM,4012
388
388
  esphome/components/bme680_bsec/text_sensor.py,sha256=9CsWVu3VLV74nnrpChN9IabeZDhkwEi_G2xHdHFrpRI,920
389
389
  esphome/components/bme68x_bsec2/__init__.py,sha256=ZHqqKsnyQh9LYyZAfvRhZPgs1actOKRugZPqG4r3aiw,6161
390
- esphome/components/bme68x_bsec2/bme68x_bsec2.cpp,sha256=kTbYtw5SztJVQj71mAIY4cl2U-CHNG9GBVtew47d8T8,20223
391
- esphome/components/bme68x_bsec2/bme68x_bsec2.h,sha256=BkOXWdcLh5WN0wr-Sgz0y60Mq46ANIHd_Fyu5jfDfY0,5463
390
+ esphome/components/bme68x_bsec2/bme68x_bsec2.cpp,sha256=2ol94BS57jvthW_1AmC-moSy7zdFLHeA0tE39owL0aI,20477
391
+ esphome/components/bme68x_bsec2/bme68x_bsec2.h,sha256=EVck6JgQOYydwRfO9Vvv5YgY4CDiMMwHzOXozJZZsNA,5415
392
392
  esphome/components/bme68x_bsec2/sensor.py,sha256=fZ04TAM3yw9ly0_x48IxoPylCMjwYNRAeErqm1U3Uqo,4254
393
393
  esphome/components/bme68x_bsec2/text_sensor.py,sha256=ASxXU6gdsqXnnf7aqYQdokpMGkqJemkpwSazu_Cfq6E,909
394
394
  esphome/components/bme68x_bsec2_i2c/__init__.py,sha256=6QtxvZcW0h5iZv9YyBIAgT0QSOJti4sTJCGewQ3YQtI,766
@@ -820,7 +820,7 @@ esphome/components/esp32_ble_server/ble_service.cpp,sha256=zs-xQT9ISP8hn40DoL3k9
820
820
  esphome/components/esp32_ble_server/ble_service.h,sha256=MTQ1FsfwMgDoDiLNo0RqPObE8b9sE4NcCSVxlmR49v8,2328
821
821
  esphome/components/esp32_ble_tracker/__init__.py,sha256=Sgr8LKTUWh5nC2bh_iKNlQQZY7GSRr5FLG2QxI-piaY,12362
822
822
  esphome/components/esp32_ble_tracker/automation.h,sha256=0pDA6EX__f14sT0KJwcnqg7UOsueKjjegHPznQj9biw,3795
823
- esphome/components/esp32_ble_tracker/esp32_ble_tracker.cpp,sha256=x0e81DwrOvBl9RSryR-i9ASagHE9m2qBuPSzEIfn7fY,26439
823
+ esphome/components/esp32_ble_tracker/esp32_ble_tracker.cpp,sha256=fv_2osjqejPyR-UeWChjYkTeYU_9zw5bmc3OVew-M9k,26533
824
824
  esphome/components/esp32_ble_tracker/esp32_ble_tracker.h,sha256=9PE-RHLPS0uax7Zb5EnV4Yinmhyss-BZ9SmqbxxOPIs,8875
825
825
  esphome/components/esp32_camera/__init__.py,sha256=qhJ3Jgv1gum3m8kfkOFZLK7TLNsbuHZxIrqxBb11mz0,12649
826
826
  esphome/components/esp32_camera/esp32_camera.cpp,sha256=Ba2nu453rF4FDSlIJwD5sLnzE8ru4kKK4xVCvMdoyac,16960
@@ -1204,8 +1204,8 @@ esphome/components/i2s_audio/microphone/__init__.py,sha256=bUKAY5HBZrBJGufEA9MkC
1204
1204
  esphome/components/i2s_audio/microphone/i2s_audio_microphone.cpp,sha256=-AN8LLxtcLp9r-JCpfSG2huLk3ptbgijvKsH-XWl3XQ,6228
1205
1205
  esphome/components/i2s_audio/microphone/i2s_audio_microphone.h,sha256=dMNlVDWJ8Agz8NJe0pNvxDN9ZM9GMU3XNxPqQgHLQ5c,1036
1206
1206
  esphome/components/i2s_audio/speaker/__init__.py,sha256=DcG-0I2ETqk3akuTvzl7szVERy99qEgo-Ma8iFJjN4c,4013
1207
- esphome/components/i2s_audio/speaker/i2s_audio_speaker.cpp,sha256=JplMNgfwxrV_5mDdn_3VTkxl6eaDcddQ_BgPVacP20k,20397
1208
- esphome/components/i2s_audio/speaker/i2s_audio_speaker.h,sha256=2coh-0jpkgB93olsrB5gp3uKmbrfiN6f2Uege9s4JUQ,6500
1207
+ esphome/components/i2s_audio/speaker/i2s_audio_speaker.cpp,sha256=_A6wSdfJ9Eos_8v4RIeik8Eco26u9GytV_xjUj1WpyQ,20153
1208
+ esphome/components/i2s_audio/speaker/i2s_audio_speaker.h,sha256=KELo3Nxxss3lMCyUO4CQQiqd9aG0argbANTTSfCd5aU,6505
1209
1209
  esphome/components/iaqcore/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
1210
1210
  esphome/components/iaqcore/iaqcore.cpp,sha256=hKSC0Xar693LMqOHpYShl_-VdWkKc18i21AzjdjB7e4,2268
1211
1211
  esphome/components/iaqcore/iaqcore.h,sha256=wYuMlxOawAHkok41WzryDsV-2a4-YTsG0TU-gfP-ZyE,678
@@ -1347,7 +1347,7 @@ esphome/components/ld2410/switch/bluetooth_switch.h,sha256=B-oPEG1KV23aATKLLRqqt
1347
1347
  esphome/components/ld2410/switch/engineering_mode_switch.cpp,sha256=DtyDtB0m9xyiEjfrKCg_z0aUVlexvS2t6EdkZ_j1S4Q,258
1348
1348
  esphome/components/ld2410/switch/engineering_mode_switch.h,sha256=YtfYVHHSWRic0qg9iei16S52urpQHAeUMddDXon2EII,364
1349
1349
  esphome/components/ld2420/__init__.py,sha256=RsAhN7qo0D3m3OkUTYOCgaILRkG1ORX3EMAI92qwlFo,898
1350
- esphome/components/ld2420/ld2420.cpp,sha256=DRXAODnYlI2I9xzXQA5MZ_VmH4-mJcYMmos2_5AsB30,31819
1350
+ esphome/components/ld2420/ld2420.cpp,sha256=VwVEdDEwaF00hhFypHbC02_8RoEpTNHC16Jx9PmR5fY,31819
1351
1351
  esphome/components/ld2420/ld2420.h,sha256=WxZbC3l7cc8dOJgSFVPnM5MYrOAKrFfrP4VdRBfWnXI,11863
1352
1352
  esphome/components/ld2420/binary_sensor/__init__.py,sha256=z6nd2xRbTZnMA7dDyAyc0ya52OOYbAaDlRFI7xM0iUQ,1099
1353
1353
  esphome/components/ld2420/binary_sensor/ld2420_binary_sensor.cpp,sha256=c-uJCQ2TMZmTrmMlzy0KBVaAJlaykmfVxkysBPXGcl8,396
@@ -2377,7 +2377,7 @@ esphome/components/sdl/sdl_esphome.h,sha256=Zm10wrvS2U3_KdRxIXqRYlDsKHy6Ar80aj9l
2377
2377
  esphome/components/sdl/touchscreen/__init__.py,sha256=n7dRzjNzDuM7hfACtgJmneufLWH_xM05FstsDBxxgnQ,633
2378
2378
  esphome/components/sdl/touchscreen/sdl_touchscreen.h,sha256=dgw2wGuEvjX6zbPjqMOPLkOl-aVYVWxY7n7Gc_kAKm0,595
2379
2379
  esphome/components/sdm_meter/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2380
- esphome/components/sdm_meter/sdm_meter.cpp,sha256=QSvx5YJAoPEL654tSIZHH_CxafyU4uqo_VcQQSmsLac,5223
2380
+ esphome/components/sdm_meter/sdm_meter.cpp,sha256=xJOcz4A7d7USwbUuYn5dY3kMZk3c0RGNg9ihMdizAwQ,5223
2381
2381
  esphome/components/sdm_meter/sdm_meter.h,sha256=-ZrIeuFjRgAWkrOvHjNFtbUihjeHa_dcspmuNLzY6vQ,3449
2382
2382
  esphome/components/sdm_meter/sdm_meter_registers.h,sha256=8aESi_oho70EyVeMcmfA1NO0bWilxuuUiq-Lc5llaF8,5891
2383
2383
  esphome/components/sdm_meter/sensor.py,sha256=2A1WjaUrtmLc0auiN5RgiWHTlkfT0XzgBCWxCQ-ETrE,6172
@@ -3355,9 +3355,9 @@ esphome/dashboard/util/itertools.py,sha256=8eLrWEWmICLtXNxkKdYPQV0c_N4GEz8m9Npnb
3355
3355
  esphome/dashboard/util/password.py,sha256=cQz3b9B-ijTe7zS6BeCW0hc3pWv6JjC78jmnycYYAh8,321
3356
3356
  esphome/dashboard/util/subprocess.py,sha256=T8EW6dbU4LPd2DG1dRrdh8li71tt6J1isn411poMhkk,1022
3357
3357
  esphome/dashboard/util/text.py,sha256=ENDnfN4O0NdA3CKVJjQYabFbwbrsIhVKrAMQe53qYu4,534
3358
- esphome-2024.11.0b1.dist-info/LICENSE,sha256=HzEjkBInJe44L4WvAOPfhPJJDNj6YbnqFyvGWRzArGM,36664
3359
- esphome-2024.11.0b1.dist-info/METADATA,sha256=yLww3VPi9ijklr74bZ2oukYce9eXI94nOaMHwkwJ5aM,3455
3360
- esphome-2024.11.0b1.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
3361
- esphome-2024.11.0b1.dist-info/entry_points.txt,sha256=mIxVNuWtbYzeEcaWCl-AQ-97aBOWbnYBAK8nbF6P4M0,50
3362
- esphome-2024.11.0b1.dist-info/top_level.txt,sha256=0GSXEW3cnITpgG3qnsSMz0qoqJHAFyfw7Y8MVtEf1Yk,8
3363
- esphome-2024.11.0b1.dist-info/RECORD,,
3358
+ esphome-2024.11.0b2.dist-info/LICENSE,sha256=HzEjkBInJe44L4WvAOPfhPJJDNj6YbnqFyvGWRzArGM,36664
3359
+ esphome-2024.11.0b2.dist-info/METADATA,sha256=ibM7RnyCmrX_-gOxTnBJU6MSYOfpH2HzgYnABoXgQp4,3455
3360
+ esphome-2024.11.0b2.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
3361
+ esphome-2024.11.0b2.dist-info/entry_points.txt,sha256=mIxVNuWtbYzeEcaWCl-AQ-97aBOWbnYBAK8nbF6P4M0,50
3362
+ esphome-2024.11.0b2.dist-info/top_level.txt,sha256=0GSXEW3cnITpgG3qnsSMz0qoqJHAFyfw7Y8MVtEf1Yk,8
3363
+ esphome-2024.11.0b2.dist-info/RECORD,,