From 62a06d28b51365be808658b576c67129fa9505ea Mon Sep 17 00:00:00 2001 From: Joe Rickerby Date: Mon, 18 Sep 2023 17:08:30 +0100 Subject: [PATCH] Change order of environment-pass, so environment can reference it --- cibuildwheel/environment.py | 8 ++++++-- cibuildwheel/options.py | 4 ++-- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/cibuildwheel/environment.py b/cibuildwheel/environment.py index d7727ae4..e4018b91 100644 --- a/cibuildwheel/environment.py +++ b/cibuildwheel/environment.py @@ -124,8 +124,12 @@ class ParsedEnvironment: return environment - def add(self, name: str, value: str) -> None: - self.assignments.append(EnvironmentAssignmentRaw(name=name, value=value)) + def add(self, name: str, value: str, prepend: bool = False) -> None: + assignment = EnvironmentAssignmentRaw(name=name, value=value) + if prepend: + self.assignments.insert(0, assignment) + else: + self.assignments.append(assignment) def __repr__(self) -> str: return f"{self.__class__.__name__}({[repr(a) for a in self.assignments]!r})" diff --git a/cibuildwheel/options.py b/cibuildwheel/options.py index 581e576b..89924052 100644 --- a/cibuildwheel/options.py +++ b/cibuildwheel/options.py @@ -530,9 +530,9 @@ class Options: # Pass through environment variables if self.platform == "linux": - for env_var_name in environment_pass: + for env_var_name in reversed(environment_pass): with contextlib.suppress(KeyError): - environment.add(env_var_name, self.env[env_var_name]) + environment.add(env_var_name, self.env[env_var_name], prepend=True) if dependency_versions == "pinned": dependency_constraints: None | (