mirror of https://github.com/pypa/pip
Move utils.misc.cast to avoid circular import
This commit is contained in:
parent
0339983b0f
commit
912f5763c6
|
@ -13,8 +13,7 @@ from pip._vendor.retrying import retry # type: ignore
|
||||||
from pip._vendor.six import PY2
|
from pip._vendor.six import PY2
|
||||||
|
|
||||||
from pip._internal.utils.compat import get_path_uid
|
from pip._internal.utils.compat import get_path_uid
|
||||||
from pip._internal.utils.misc import cast
|
from pip._internal.utils.typing import MYPY_CHECK_RUNNING, cast
|
||||||
from pip._internal.utils.typing import MYPY_CHECK_RUNNING
|
|
||||||
|
|
||||||
if MYPY_CHECK_RUNNING:
|
if MYPY_CHECK_RUNNING:
|
||||||
from typing import BinaryIO, Iterator
|
from typing import BinaryIO, Iterator
|
||||||
|
|
|
@ -39,7 +39,7 @@ from pip._internal.utils.compat import (
|
||||||
str_to_display,
|
str_to_display,
|
||||||
)
|
)
|
||||||
from pip._internal.utils.marker_files import write_delete_marker_file
|
from pip._internal.utils.marker_files import write_delete_marker_file
|
||||||
from pip._internal.utils.typing import MYPY_CHECK_RUNNING
|
from pip._internal.utils.typing import MYPY_CHECK_RUNNING, cast
|
||||||
from pip._internal.utils.virtualenv import (
|
from pip._internal.utils.virtualenv import (
|
||||||
running_under_virtualenv,
|
running_under_virtualenv,
|
||||||
virtualenv_no_global,
|
virtualenv_no_global,
|
||||||
|
@ -53,16 +53,11 @@ else:
|
||||||
if MYPY_CHECK_RUNNING:
|
if MYPY_CHECK_RUNNING:
|
||||||
from typing import (
|
from typing import (
|
||||||
Any, AnyStr, Container, Iterable, List, Optional, Text,
|
Any, AnyStr, Container, Iterable, List, Optional, Text,
|
||||||
Tuple, Union, cast,
|
Tuple, Union,
|
||||||
)
|
)
|
||||||
from pip._vendor.pkg_resources import Distribution
|
from pip._vendor.pkg_resources import Distribution
|
||||||
|
|
||||||
VersionInfo = Tuple[int, int, int]
|
VersionInfo = Tuple[int, int, int]
|
||||||
else:
|
|
||||||
# typing's cast() is needed at runtime, but we don't want to import typing.
|
|
||||||
# Thus, we use a dummy no-op version, which we tell mypy to ignore.
|
|
||||||
def cast(type_, value): # type: ignore
|
|
||||||
return value
|
|
||||||
|
|
||||||
|
|
||||||
__all__ = ['rmtree', 'display_path', 'backup_dir',
|
__all__ = ['rmtree', 'display_path', 'backup_dir',
|
||||||
|
|
|
@ -27,3 +27,12 @@ Ref: https://github.com/python/mypy/issues/3216
|
||||||
"""
|
"""
|
||||||
|
|
||||||
MYPY_CHECK_RUNNING = False
|
MYPY_CHECK_RUNNING = False
|
||||||
|
|
||||||
|
|
||||||
|
if MYPY_CHECK_RUNNING:
|
||||||
|
from typing import cast
|
||||||
|
else:
|
||||||
|
# typing's cast() is needed at runtime, but we don't want to import typing.
|
||||||
|
# Thus, we use a dummy no-op version, which we tell mypy to ignore.
|
||||||
|
def cast(type_, value): # type: ignore
|
||||||
|
return value
|
||||||
|
|
Loading…
Reference in New Issue