mirror of
https://github.com/home-assistant/core.git
synced 2025-07-29 18:28:14 +02:00
Warn ontime.sleep
in event loop (#63766)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
This commit is contained in:
@ -1,14 +1,18 @@
|
||||
"""Block I/O being done in asyncio."""
|
||||
"""Block blocking calls being done in asyncio."""
|
||||
from http.client import HTTPConnection
|
||||
import time
|
||||
|
||||
from .util.async_ import protect_loop
|
||||
|
||||
|
||||
def enable() -> None:
|
||||
"""Enable the detection of I/O in the event loop."""
|
||||
"""Enable the detection of blocking calls in the event loop."""
|
||||
# Prevent urllib3 and requests doing I/O in event loop
|
||||
HTTPConnection.putrequest = protect_loop(HTTPConnection.putrequest) # type: ignore
|
||||
|
||||
# Prevent sleeping in event loop. Non-strict since 2022.02
|
||||
time.sleep = protect_loop(time.sleep, strict=False)
|
||||
|
||||
# Currently disabled. pytz doing I/O when getting timezone.
|
||||
# Prevent files being opened inside the event loop
|
||||
# builtins.open = protect_loop(builtins.open)
|
||||
|
Reference in New Issue
Block a user