1
1
import logging
2
- from typing import Iterable , Optional , Set , Tuple
2
+ from typing import TYPE_CHECKING , Iterable , Optional , Set , Tuple
3
3
4
4
from pip ._internal .build_env import BuildEnvironment
5
5
from pip ._internal .distributions .base import AbstractDistribution
6
6
from pip ._internal .exceptions import InstallationError
7
- from pip ._internal .index .package_finder import PackageFinder
8
7
from pip ._internal .metadata import BaseDistribution
9
8
from pip ._internal .utils .subprocess import runner_with_spinner_message
10
9
10
+ if TYPE_CHECKING :
11
+ from pip ._internal .index .package_finder import PackageFinder
12
+
11
13
logger = logging .getLogger (__name__ )
12
14
13
15
@@ -29,7 +31,7 @@ def get_metadata_distribution(self) -> BaseDistribution:
29
31
30
32
def prepare_distribution_metadata (
31
33
self ,
32
- finder : PackageFinder ,
34
+ finder : " PackageFinder" ,
33
35
build_isolation : bool ,
34
36
check_build_deps : bool ,
35
37
) -> None :
@@ -66,7 +68,7 @@ def prepare_distribution_metadata(
66
68
self ._raise_missing_reqs (missing )
67
69
self .req .prepare_metadata ()
68
70
69
- def _prepare_build_backend (self , finder : PackageFinder ) -> None :
71
+ def _prepare_build_backend (self , finder : " PackageFinder" ) -> None :
70
72
# Isolate in a BuildEnvironment and install the build-time
71
73
# requirements.
72
74
pyproject_requires = self .req .pyproject_requires
@@ -110,7 +112,7 @@ def _get_build_requires_editable(self) -> Iterable[str]:
110
112
with backend .subprocess_runner (runner ):
111
113
return backend .get_requires_for_build_editable ()
112
114
113
- def _install_build_reqs (self , finder : PackageFinder ) -> None :
115
+ def _install_build_reqs (self , finder : " PackageFinder" ) -> None :
114
116
# Install any extra build dependencies that the backend requests.
115
117
# This must be done in a second pass, as the pyproject.toml
116
118
# dependencies must be installed before we can call the backend.
0 commit comments