Skip to content

Commit 19bf26a

Browse files
committed
Chose metadata generator in prepare_metadata
1 parent 528d27a commit 19bf26a

File tree

3 files changed

+14
-13
lines changed

3 files changed

+14
-13
lines changed

src/pip/_internal/operations/build/metadata.py

+3-12
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,6 @@
55
import logging
66
import os
77

8-
from pip._internal.operations.build.metadata_legacy import \
9-
generate_metadata as _generate_metadata_legacy
108
from pip._internal.utils.subprocess import runner_with_spinner_message
119
from pip._internal.utils.temp_dir import TempDirectory
1210
from pip._internal.utils.typing import MYPY_CHECK_RUNNING
@@ -19,17 +17,10 @@
1917

2018
def generate_metadata(install_req):
2119
# type: (InstallRequirement) -> str
22-
"""Generate metadata and return the metadata directory.
23-
"""
24-
func = _generate_metadata
25-
if not install_req.use_pep517:
26-
func = _generate_metadata_legacy
27-
28-
return func(install_req)
29-
20+
"""Generate metadata using mechanisms described in PEP 517.
3021
31-
def _generate_metadata(install_req):
32-
# type: (InstallRequirement) -> str
22+
Returns the generated metadata directory.
23+
"""
3324
assert install_req.pep517_backend is not None
3425
build_env = install_req.build_env
3526
backend = install_req.pep517_backend

src/pip/_internal/operations/build/metadata_legacy.py

+4
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,10 @@ def depth_of_directory(dir_):
8080

8181
def generate_metadata(install_req):
8282
# type: (InstallRequirement) -> str
83+
"""Generate metadata using setup.py-based defacto mechanisms.ArithmeticError
84+
85+
Returns the generated metadata directory.
86+
"""
8387
assert install_req.unpacked_source_directory
8488

8589
req_details_str = install_req.name or "from {}".format(install_req.link)

src/pip/_internal/req/req_install.py

+7-1
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,8 @@
2525
from pip._internal.locations import distutils_scheme
2626
from pip._internal.models.link import Link
2727
from pip._internal.operations.build.metadata import generate_metadata
28+
from pip._internal.operations.build.metadata_legacy import \
29+
generate_metadata as generate_metadata_legacy
2830
from pip._internal.pyproject import load_pyproject_toml, make_pyproject_path
2931
from pip._internal.req.req_uninstall import UninstallPathSet
3032
from pip._internal.utils.compat import native_str
@@ -615,8 +617,12 @@ def prepare_metadata(self):
615617
"""
616618
assert self.source_dir
617619

620+
metadata_generator = generate_metadata
621+
if not self.use_pep517:
622+
metadata_generator = generate_metadata_legacy
623+
618624
with indent_log():
619-
self.metadata_directory = generate_metadata(self)
625+
self.metadata_directory = metadata_generator(self)
620626

621627
# Act on the newly generated metadata, based on the name and version.
622628
if not self.name:

0 commit comments

Comments
 (0)