Skip to content

Commit

Permalink
refactor: environment-pass and spaces
Browse files Browse the repository at this point in the history
  • Loading branch information
henryiii committed Nov 15, 2021
1 parent 4b8632c commit 74cecd4
Show file tree
Hide file tree
Showing 4 changed files with 7 additions and 6 deletions.
3 changes: 2 additions & 1 deletion cibuildwheel/environment.py
@@ -1,4 +1,5 @@
import dataclasses
import shlex
from typing import Dict, List, Mapping, Optional

import bashlex
Expand Down Expand Up @@ -85,7 +86,7 @@ def as_dictionary(
return environment

def add(self, name: str, value: str) -> None:
self.assignments.append(EnvironmentAssignment(f'{name}="{value}"'))
self.assignments.append(EnvironmentAssignment(f"{name}={shlex.quote(value)}"))

def as_shell_commands(self) -> List[str]:
return [a.as_shell_assignment() for a in self.assignments]
Expand Down
4 changes: 2 additions & 2 deletions cibuildwheel/options.py
Expand Up @@ -408,7 +408,7 @@ def build_options(self, identifier: Optional[str]) -> BuildOptions:
environment_config = self.reader.get(
"environment", table={"item": '{k}="{v}"', "sep": " "}
)
passenv = self.reader.get("passenv", sep=",").split(",")
environment_pass = self.reader.get("environment-pass", sep=" ").split()
before_build = self.reader.get("before-build", sep=" && ")
repair_command = self.reader.get("repair-wheel-command", sep=" && ")

Expand Down Expand Up @@ -441,7 +441,7 @@ def build_options(self, identifier: Optional[str]) -> BuildOptions:

# Pass through environment variables
if self.platform == "linux":
for passedenv in passenv:
for passedenv in environment_pass:
try:
environment.add(passedenv, os.environ[passedenv])
except KeyError:
Expand Down
2 changes: 1 addition & 1 deletion cibuildwheel/resources/defaults.toml
Expand Up @@ -7,7 +7,7 @@ archs = ["auto"]
build-frontend = "pip"
dependency-versions = "pinned"
environment = {}
passenv = []
environment-pass = []
build-verbosity = ""

before-all = ""
Expand Down
4 changes: 2 additions & 2 deletions unit_test/options_test.py
Expand Up @@ -15,7 +15,7 @@
manylinux-x86_64-image = "manylinux1"
passenv = ["EXAMPLE_ENV"]
environment-pass = ["EXAMPLE_ENV"]
[tool.cibuildwheel.macos]
test-requires = "else"
Expand Down Expand Up @@ -85,4 +85,4 @@ def test_passthrough(tmp_path, monkeypatch):

default_build_options = options.build_options(identifier=None)

assert default_build_options.environment == parse_environment('FOO="BAR" EXAMPLE_ENV="ONE"')
assert default_build_options.environment == parse_environment('FOO="BAR" EXAMPLE_ENV=ONE')

0 comments on commit 74cecd4

Please sign in to comment.