Merge pull request #665 from joerick/ensurepip-2

Try using ensurepip instead of get-pip
This commit is contained in:
Joe Rickerby
2021-05-18 13:01:50 +01:00
committed by GitHub
5 changed files with 48 additions and 22340 deletions
+23 -3
View File
@@ -19,7 +19,6 @@ from .util import (
NonPlatformWheelError,
download,
get_build_verbosity_extra_flags,
get_pip_script,
install_certifi_script,
prepare_command,
read_python_configs,
@@ -228,8 +227,29 @@ def setup_python(
)
sys.exit(1)
# install pip & wheel
call(["python", get_pip_script, *dependency_constraint_flags], env=env, cwd="/tmp")
# Install pip
requires_reinstall = not (installation_bin_path / "pip").exists()
if requires_reinstall:
# maybe pip isn't installed at all. ensurepip resolves that.
call(["python", "-m", "ensurepip"], env=env, cwd="/tmp")
# upgrade pip to the version matching our constraints
# if necessary, reinstall it to ensure that it's available on PATH as 'pip'
call(
[
"python",
"-m",
"pip",
"install",
"--force-reinstall" if requires_reinstall else "--upgrade",
"pip",
*dependency_constraint_flags,
],
env=env,
cwd="/tmp",
)
assert (installation_bin_path / "pip").exists()
call(["which", "pip"], env=env)
call(["pip", "--version"], env=env)