Coverage for /pythoncovmergedfiles/medio/medio/usr/local/lib/python3.8/site-packages/pip/_internal/operations/install/editable_legacy.py: 62%
13 statements
« prev ^ index » next coverage.py v7.4.3, created at 2024-02-26 06:33 +0000
« prev ^ index » next coverage.py v7.4.3, created at 2024-02-26 06:33 +0000
1"""Legacy editable installation process, i.e. `setup.py develop`.
2"""
3import logging
4from typing import Optional, Sequence
6from pip._internal.build_env import BuildEnvironment
7from pip._internal.utils.logging import indent_log
8from pip._internal.utils.setuptools_build import make_setuptools_develop_args
9from pip._internal.utils.subprocess import call_subprocess
11logger = logging.getLogger(__name__)
14def install_editable(
15 *,
16 global_options: Sequence[str],
17 prefix: Optional[str],
18 home: Optional[str],
19 use_user_site: bool,
20 name: str,
21 setup_py_path: str,
22 isolated: bool,
23 build_env: BuildEnvironment,
24 unpacked_source_directory: str,
25) -> None:
26 """Install a package in editable mode. Most arguments are pass-through
27 to setuptools.
28 """
29 logger.info("Running setup.py develop for %s", name)
31 args = make_setuptools_develop_args(
32 setup_py_path,
33 global_options=global_options,
34 no_user_config=isolated,
35 prefix=prefix,
36 home=home,
37 use_user_site=use_user_site,
38 )
40 with indent_log():
41 with build_env:
42 call_subprocess(
43 args,
44 command_desc="python setup.py develop",
45 cwd=unpacked_source_directory,
46 )