fix: Support environment markers in PEP 518 workaround
This commit is contained in:
@@ -8,6 +8,7 @@ from pathlib import Path
|
|||||||
from typing import Dict, List, NamedTuple, Optional, Sequence, Union
|
from typing import Dict, List, NamedTuple, Optional, Sequence, Union
|
||||||
from zipfile import ZipFile
|
from zipfile import ZipFile
|
||||||
import toml
|
import toml
|
||||||
|
import shlex
|
||||||
|
|
||||||
from .environment import ParsedEnvironment
|
from .environment import ParsedEnvironment
|
||||||
from .util import (BuildOptions, BuildSelector, download,
|
from .util import (BuildOptions, BuildSelector, download,
|
||||||
@@ -172,7 +173,8 @@ def pep_518_cp35_workaround(package_dir: Path, env: Dict[str, str]) -> None:
|
|||||||
else []
|
else []
|
||||||
)
|
)
|
||||||
if requirements:
|
if requirements:
|
||||||
shell(['pip', 'install'] + requirements, env=env)
|
escaped_requirements = [shlex.quote(s) for s in requirements]
|
||||||
|
shell(['pip', 'install'] + escaped_requirements, env=env)
|
||||||
|
|
||||||
|
|
||||||
def build(options: BuildOptions) -> None:
|
def build(options: BuildOptions) -> None:
|
||||||
|
|||||||
+7
-2
@@ -6,8 +6,12 @@ basic_project = test_projects.new_c_project(
|
|||||||
setup_py_add=textwrap.dedent(
|
setup_py_add=textwrap.dedent(
|
||||||
"""
|
"""
|
||||||
# Will fail if PEP 518 does work
|
# Will fail if PEP 518 does work
|
||||||
|
import sys
|
||||||
import requests
|
import requests
|
||||||
assert requests.__version__ == "2.23.0", "Requests found but wrong version ({0})".format(requests.__version__)
|
if sys.version_info < (3, 6, 0):
|
||||||
|
assert requests.__version__ == "2.22.0", "Requests found but wrong version ({0})".format(requests.__version__)
|
||||||
|
else:
|
||||||
|
assert requests.__version__ == "2.23.0", "Requests found but wrong version ({0})".format(requests.__version__)
|
||||||
|
|
||||||
# Just making sure environment is still set
|
# Just making sure environment is still set
|
||||||
import os
|
import os
|
||||||
@@ -24,7 +28,8 @@ basic_project.files[
|
|||||||
requires = [
|
requires = [
|
||||||
"setuptools>=42",
|
"setuptools>=42",
|
||||||
"wheel",
|
"wheel",
|
||||||
"requests==2.23.0"
|
"requests==2.22.0; python_version<'3.6'",
|
||||||
|
"requests==2.23.0; python_version>='3.6'"
|
||||||
]
|
]
|
||||||
|
|
||||||
build-backend = "setuptools.build_meta"
|
build-backend = "setuptools.build_meta"
|
||||||
|
|||||||
Reference in New Issue
Block a user