Skip to content

Commit 77754c2

Browse files
committed
fixup the generation of the config settings
1 parent 9b296d2 commit 77754c2

File tree

2 files changed

+24
-17
lines changed

2 files changed

+24
-17
lines changed

python/private/pypi/config_settings.bzl

Lines changed: 7 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -131,17 +131,6 @@ def config_settings(
131131
constraint_values.append("@platforms//cpu:" + cpu)
132132
suffix += "_" + cpu
133133

134-
if suffix:
135-
# Add python version + platform config settings
136-
_dist_config_setting(
137-
name = suffix.strip("_"),
138-
flag_values = {},
139-
python_version = python_version,
140-
is_python = is_python,
141-
visibility = visibility,
142-
native = native,
143-
)
144-
145134
_dist_config_settings(
146135
suffix = suffix,
147136
plat_flag_values = _plat_flag_values(
@@ -159,6 +148,13 @@ def config_settings(
159148
)
160149

161150
def _dist_config_settings(*, suffix, plat_flag_values, **kwargs):
151+
if kwargs.get("constraint_values"):
152+
# Add python version + platform config settings
153+
_dist_config_setting(
154+
name = suffix.strip("_"),
155+
**kwargs
156+
)
157+
162158
flag_values = {_flags.dist: ""}
163159

164160
# First create an sdist, we will be building upon the flag values, which

tests/pypi/render_pkg_aliases/render_pkg_aliases_test.bzl

Lines changed: 17 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -775,6 +775,19 @@ def _test_multiplatform_whl_aliases_filename_versioned(env):
775775

776776
_tests.append(_test_multiplatform_whl_aliases_filename_versioned)
777777

778+
def _mock_alias(container):
779+
return lambda name, **kwargs: container.append(name)
780+
781+
def _mock_config_setting(container):
782+
def _inner(name, flag_values = None, constraint_values = None, **_):
783+
if flag_values or constraint_values:
784+
container.append(name)
785+
return
786+
787+
fail("At least one of 'flag_values' or 'constraint_values' needs to be set")
788+
789+
return _inner
790+
778791
def _test_config_settings_exist_legacy(env):
779792
aliases = [
780793
whl_alias(
@@ -787,12 +800,11 @@ def _test_config_settings_exist_legacy(env):
787800
),
788801
]
789802
available_config_settings = []
790-
mock_rule = lambda name, **kwargs: available_config_settings.append(name)
791803
config_settings(
792804
python_versions = ["3.11"],
793805
native = struct(
794-
alias = mock_rule,
795-
config_setting = mock_rule,
806+
alias = _mock_alias(available_config_settings),
807+
config_setting = _mock_config_setting(available_config_settings),
796808
),
797809
target_platforms = [
798810
"linux_aarch64",
@@ -846,12 +858,11 @@ def _test_config_settings_exist(env):
846858
),
847859
]
848860
available_config_settings = []
849-
mock_rule = lambda name, **kwargs: available_config_settings.append(name)
850861
config_settings(
851862
python_versions = ["3.11"],
852863
native = struct(
853-
alias = mock_rule,
854-
config_setting = mock_rule,
864+
alias = _mock_alias(available_config_settings),
865+
config_setting = _mock_config_setting(available_config_settings),
855866
),
856867
**kwargs
857868
)

0 commit comments

Comments
 (0)