mirror of
https://github.com/esphome/esphome.git
synced 2024-11-27 09:18:00 +01:00
Ensure storage I/O for ignored devices runs in the executor (#7792)
Some checks are pending
CI / Create common environment (push) Waiting to run
CI / Check black (push) Blocked by required conditions
CI / Check flake8 (push) Blocked by required conditions
CI / Check pylint (push) Blocked by required conditions
CI / Check pyupgrade (push) Blocked by required conditions
CI / Run script/ci-custom (push) Blocked by required conditions
CI / Run pytest (push) Blocked by required conditions
CI / Check clang-format (push) Blocked by required conditions
CI / Run script/clang-tidy for ESP32 Arduino 1/4 (push) Blocked by required conditions
CI / Run script/clang-tidy for ESP32 Arduino 2/4 (push) Blocked by required conditions
CI / Run script/clang-tidy for ESP32 Arduino 3/4 (push) Blocked by required conditions
CI / Run script/clang-tidy for ESP32 Arduino 4/4 (push) Blocked by required conditions
CI / Run script/clang-tidy for ESP32 IDF (push) Blocked by required conditions
CI / Run script/clang-tidy for ESP8266 (push) Blocked by required conditions
CI / list-components (push) Blocked by required conditions
CI / Component test (push) Blocked by required conditions
CI / Split components for testing into 20 groups maximum (push) Blocked by required conditions
CI / Test split components (push) Blocked by required conditions
CI / CI Status (push) Blocked by required conditions
Some checks are pending
CI / Create common environment (push) Waiting to run
CI / Check black (push) Blocked by required conditions
CI / Check flake8 (push) Blocked by required conditions
CI / Check pylint (push) Blocked by required conditions
CI / Check pyupgrade (push) Blocked by required conditions
CI / Run script/ci-custom (push) Blocked by required conditions
CI / Run pytest (push) Blocked by required conditions
CI / Check clang-format (push) Blocked by required conditions
CI / Run script/clang-tidy for ESP32 Arduino 1/4 (push) Blocked by required conditions
CI / Run script/clang-tidy for ESP32 Arduino 2/4 (push) Blocked by required conditions
CI / Run script/clang-tidy for ESP32 Arduino 3/4 (push) Blocked by required conditions
CI / Run script/clang-tidy for ESP32 Arduino 4/4 (push) Blocked by required conditions
CI / Run script/clang-tidy for ESP32 IDF (push) Blocked by required conditions
CI / Run script/clang-tidy for ESP8266 (push) Blocked by required conditions
CI / list-components (push) Blocked by required conditions
CI / Component test (push) Blocked by required conditions
CI / Split components for testing into 20 groups maximum (push) Blocked by required conditions
CI / Test split components (push) Blocked by required conditions
CI / CI Status (push) Blocked by required conditions
This commit is contained in:
parent
3232866dc3
commit
122ff731ef
2 changed files with 4 additions and 3 deletions
|
@ -103,7 +103,7 @@ class ESPHomeDashboard:
|
||||||
self.loop = asyncio.get_running_loop()
|
self.loop = asyncio.get_running_loop()
|
||||||
self.ping_request = asyncio.Event()
|
self.ping_request = asyncio.Event()
|
||||||
self.entries = DashboardEntries(self)
|
self.entries = DashboardEntries(self)
|
||||||
self.load_ignored_devices()
|
await self.loop.run_in_executor(None, self.load_ignored_devices)
|
||||||
|
|
||||||
def load_ignored_devices(self) -> None:
|
def load_ignored_devices(self) -> None:
|
||||||
storage_path = Path(ignored_devices_storage_path())
|
storage_path = Path(ignored_devices_storage_path())
|
||||||
|
|
|
@ -544,7 +544,7 @@ class ImportRequestHandler(BaseHandler):
|
||||||
|
|
||||||
class IgnoreDeviceRequestHandler(BaseHandler):
|
class IgnoreDeviceRequestHandler(BaseHandler):
|
||||||
@authenticated
|
@authenticated
|
||||||
def post(self) -> None:
|
async def post(self) -> None:
|
||||||
dashboard = DASHBOARD
|
dashboard = DASHBOARD
|
||||||
try:
|
try:
|
||||||
args = json.loads(self.request.body.decode())
|
args = json.loads(self.request.body.decode())
|
||||||
|
@ -576,7 +576,8 @@ class IgnoreDeviceRequestHandler(BaseHandler):
|
||||||
else:
|
else:
|
||||||
dashboard.ignored_devices.discard(ignored_device.device_name)
|
dashboard.ignored_devices.discard(ignored_device.device_name)
|
||||||
|
|
||||||
dashboard.save_ignored_devices()
|
loop = asyncio.get_running_loop()
|
||||||
|
await loop.run_in_executor(None, dashboard.save_ignored_devices)
|
||||||
|
|
||||||
self.set_status(204)
|
self.set_status(204)
|
||||||
self.finish()
|
self.finish()
|
||||||
|
|
Loading…
Reference in a new issue