1
1
Fork 0
mirror of https://github.com/pypa/pip synced 2023-12-13 21:30:23 +01:00

Pass self to the metadata generation function

This commit is contained in:
Pradyun Gedam 2019-09-19 21:32:38 +05:30
parent b2e0a12363
commit 6d8c3fdd29
No known key found for this signature in database
GPG key ID: DA17C4B29CB32E4B
2 changed files with 20 additions and 3 deletions

View file

@ -1,9 +1,26 @@
"""Metadata generation logic for source distributions.
"""
from pip._internal.utils.typing import MYPY_CHECK_RUNNING
if MYPY_CHECK_RUNNING:
from typing import Callable
from pip._internal.req.req_install import InstallRequirement
def get_metadata_generator(install_req):
# type: (InstallRequirement) -> Callable[[InstallRequirement], None]
if not install_req.use_pep517:
return install_req.run_egg_info
return _generate_metadata_legacy
return install_req.prepare_pep517_metadata
return _generate_metadata
def _generate_metadata_legacy(install_req):
# type: (InstallRequirement) -> None
install_req.run_egg_info()
def _generate_metadata(install_req):
# type: (InstallRequirement) -> None
install_req.prepare_pep517_metadata()

View file

@ -562,7 +562,7 @@ class InstallRequirement(object):
metadata_generator = get_metadata_generator(self)
with indent_log():
metadata_generator()
metadata_generator(self)
if not self.req:
if isinstance(parse_version(self.metadata["Version"]), Version):