-
Couldn't load subscription status.
- Fork 330
Open
Description
Bleak has too much repeating conditional imports that do the same things, some of them are deprecated and can be simplified with typing_extensions
It should be refactored to some single module like _compat.py and then imported
It can improve and make simlplier to create and maintain platform dependend backends (as one described in #1812)
I can refactor it and create a PR with just this changes
There are the few examples:
# __init__.py
if sys.version_info < (3, 12):
from typing_extensions import Buffer
else:
from collections.abc import Buffer
if sys.version_info < (3, 11):
from async_timeout import timeout as async_timeout
from typing_extensions import Never, Self, Unpack, assert_never
else:
from asyncio import timeout as async_timeout
from typing import Never, Self, Unpack, assert_never# client.py
if sys.version_info < (3, 12):
from typing_extensions import Buffer
else:
from collections.abc import Buffer# winrt/client.py
if sys.version_info < (3, 12):
from typing_extensions import Buffer, override
else:
from collections.abc import Buffer
from typing import override
if sys.version_info < (3, 11):
from async_timeout import timeout as async_timeout
from typing_extensions import Self, assert_never
else:
from asyncio import timeout as async_timeout
from typing import Self, assert_neverMetadata
Metadata
Assignees
Labels
No labels