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

1"""Legacy editable installation process, i.e. `setup.py develop`. 

2""" 

3import logging 

4from typing import Optional, Sequence 

5 

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 

10 

11logger = logging.getLogger(__name__) 

12 

13 

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) 

30 

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 ) 

39 

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 )