Skip to content

Commit

Permalink
Merge pull request #11654 from pradyunsg/replace-pep517-with-pyprojec…
Browse files Browse the repository at this point in the history
…t-hooks
  • Loading branch information
pradyunsg authored Dec 30, 2022
2 parents fb02491 + 4162f28 commit 90db7b6
Show file tree
Hide file tree
Showing 27 changed files with 152 additions and 899 deletions.
1 change: 1 addition & 0 deletions news/pep517.vendor.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Remove pep517 from vendored packages
1 change: 1 addition & 0 deletions news/pyproject-hooks.vendor.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Add pyproject-hooks 1.0.0
2 changes: 1 addition & 1 deletion src/pip/_internal/commands/debug.py
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ def create_vendor_txt_map() -> Dict[str, str]:

def get_module_from_module_name(module_name: str) -> ModuleType:
# Module name can be uppercase in vendor.txt for some reason...
module_name = module_name.lower()
module_name = module_name.lower().replace("-", "_")
# PATCH: setuptools is actually only pkg_resources.
if module_name == "setuptools":
module_name = "pkg_resources"
Expand Down
6 changes: 3 additions & 3 deletions src/pip/_internal/operations/build/metadata.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@

import os

from pip._vendor.pep517.wrappers import Pep517HookCaller
from pip._vendor.pyproject_hooks import BuildBackendHookCaller

from pip._internal.build_env import BuildEnvironment
from pip._internal.exceptions import (
Expand All @@ -15,7 +15,7 @@


def generate_metadata(
build_env: BuildEnvironment, backend: Pep517HookCaller, details: str
build_env: BuildEnvironment, backend: BuildBackendHookCaller, details: str
) -> str:
"""Generate metadata using mechanisms described in PEP 517.
Expand All @@ -26,7 +26,7 @@ def generate_metadata(
metadata_dir = metadata_tmpdir.path

with build_env:
# Note that Pep517HookCaller implements a fallback for
# Note that BuildBackendHookCaller implements a fallback for
# prepare_metadata_for_build_wheel, so we don't have to
# consider the possibility that this hook doesn't exist.
runner = runner_with_spinner_message("Preparing metadata (pyproject.toml)")
Expand Down
6 changes: 3 additions & 3 deletions src/pip/_internal/operations/build/metadata_editable.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@

import os

from pip._vendor.pep517.wrappers import Pep517HookCaller
from pip._vendor.pyproject_hooks import BuildBackendHookCaller

from pip._internal.build_env import BuildEnvironment
from pip._internal.exceptions import (
Expand All @@ -15,7 +15,7 @@


def generate_editable_metadata(
build_env: BuildEnvironment, backend: Pep517HookCaller, details: str
build_env: BuildEnvironment, backend: BuildBackendHookCaller, details: str
) -> str:
"""Generate metadata using mechanisms described in PEP 660.
Expand All @@ -26,7 +26,7 @@ def generate_editable_metadata(
metadata_dir = metadata_tmpdir.path

with build_env:
# Note that Pep517HookCaller implements a fallback for
# Note that BuildBackendHookCaller implements a fallback for
# prepare_metadata_for_build_wheel/editable, so we don't have to
# consider the possibility that this hook doesn't exist.
runner = runner_with_spinner_message(
Expand Down
4 changes: 2 additions & 2 deletions src/pip/_internal/operations/build/wheel.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
import os
from typing import Optional

from pip._vendor.pep517.wrappers import Pep517HookCaller
from pip._vendor.pyproject_hooks import BuildBackendHookCaller

from pip._internal.utils.subprocess import runner_with_spinner_message

Expand All @@ -11,7 +11,7 @@

def build_wheel_pep517(
name: str,
backend: Pep517HookCaller,
backend: BuildBackendHookCaller,
metadata_directory: str,
tempd: str,
) -> Optional[str]:
Expand Down
4 changes: 2 additions & 2 deletions src/pip/_internal/operations/build/wheel_editable.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
import os
from typing import Optional

from pip._vendor.pep517.wrappers import HookMissing, Pep517HookCaller
from pip._vendor.pyproject_hooks import BuildBackendHookCaller, HookMissing

from pip._internal.utils.subprocess import runner_with_spinner_message

Expand All @@ -11,7 +11,7 @@

def build_wheel_editable(
name: str,
backend: Pep517HookCaller,
backend: BuildBackendHookCaller,
metadata_directory: str,
tempd: str,
) -> Optional[str]:
Expand Down
8 changes: 4 additions & 4 deletions src/pip/_internal/req/req_install.py
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
from pip._vendor.packaging.utils import canonicalize_name
from pip._vendor.packaging.version import Version
from pip._vendor.packaging.version import parse as parse_version
from pip._vendor.pep517.wrappers import Pep517HookCaller
from pip._vendor.pyproject_hooks import BuildBackendHookCaller

from pip._internal.build_env import BuildEnvironment, NoOpBuildEnvironment
from pip._internal.exceptions import InstallationError, LegacyInstallFailure
Expand Down Expand Up @@ -51,7 +51,7 @@
)
from pip._internal.utils.hashes import Hashes
from pip._internal.utils.misc import (
ConfiguredPep517HookCaller,
ConfiguredBuildBackendHookCaller,
ask_path_exists,
backup_dir,
display_path,
Expand Down Expand Up @@ -173,7 +173,7 @@ def __init__(
self.requirements_to_check: List[str] = []

# The PEP 517 backend we should use to build the project
self.pep517_backend: Optional[Pep517HookCaller] = None
self.pep517_backend: Optional[BuildBackendHookCaller] = None

# Are we using PEP 517 for this requirement?
# After pyproject.toml has been loaded, the only valid values are True
Expand Down Expand Up @@ -482,7 +482,7 @@ def load_pyproject_toml(self) -> None:
requires, backend, check, backend_path = pyproject_toml_data
self.requirements_to_check = check
self.pyproject_requires = requires
self.pep517_backend = ConfiguredPep517HookCaller(
self.pep517_backend = ConfiguredBuildBackendHookCaller(
self,
self.unpacked_source_directory,
backend,
Expand Down
6 changes: 3 additions & 3 deletions src/pip/_internal/utils/misc.py
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@
cast,
)

from pip._vendor.pep517 import Pep517HookCaller
from pip._vendor.pyproject_hooks import BuildBackendHookCaller
from pip._vendor.tenacity import retry, stop_after_delay, wait_fixed

from pip import __version__
Expand All @@ -57,7 +57,7 @@
"captured_stdout",
"ensure_dir",
"remove_auth_from_url",
"ConfiguredPep517HookCaller",
"ConfiguredBuildBackendHookCaller",
]


Expand Down Expand Up @@ -635,7 +635,7 @@ def partition(
return filterfalse(pred, t1), filter(pred, t2)


class ConfiguredPep517HookCaller(Pep517HookCaller):
class ConfiguredBuildBackendHookCaller(BuildBackendHookCaller):
def __init__(
self,
config_holder: Any,
Expand Down
4 changes: 2 additions & 2 deletions src/pip/_internal/utils/subprocess.py
Original file line number Diff line number Diff line change
Expand Up @@ -239,8 +239,8 @@ def call_subprocess(
def runner_with_spinner_message(message: str) -> Callable[..., None]:
"""Provide a subprocess_runner that shows a spinner message.
Intended for use with for pep517's Pep517HookCaller. Thus, the runner has
an API that matches what's expected by Pep517HookCaller.subprocess_runner.
Intended for use with for BuildBackendHookCaller. Thus, the runner has
an API that matches what's expected by BuildBackendHookCaller.subprocess_runner.
"""

def runner(
Expand Down
1 change: 0 additions & 1 deletion src/pip/_vendor/pep517.pyi

This file was deleted.

6 changes: 0 additions & 6 deletions src/pip/_vendor/pep517/__init__.py

This file was deleted.

126 changes: 0 additions & 126 deletions src/pip/_vendor/pep517/build.py

This file was deleted.

Loading

0 comments on commit 90db7b6

Please sign in to comment.