Skip to content

Commit 0666d56

Browse files
committed
handle zero padding correctly
1 parent b7860ae commit 0666d56

File tree

2 files changed

+8
-8
lines changed

2 files changed

+8
-8
lines changed

python/private/py_wheel_normalize_pep440.bzl

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -519,11 +519,11 @@ def normalize_pep440(version):
519519
return parser.context()["norm"]
520520

521521
def _pad_zeros(release, n):
522-
if len(release) >= n:
522+
padding = n - len(release)
523+
if padding <= 0:
523524
return release
524525

525-
release = list(release)
526-
release += [0] * len(release)
526+
release = list(release) + [0] * padding
527527
return tuple(release)
528528

529529
# TODO @aignas 2025-05-04: add tests for the comparison
@@ -538,11 +538,9 @@ def _version_eq(left, right):
538538
if left.epoch != right.epoch:
539539
return False
540540

541-
##right_release = _pad_zeros(right.release, len(left.release))
542-
right_release = right.release
543-
544-
##left_release = _pad_zeros(left.release, len(right.release))
545-
left_release = left.release
541+
release_len = max(len(left.release), len(right.release))
542+
left_release = _pad_zeros(left.release, release_len)
543+
right_release = _pad_zeros(right.release, release_len)
546544

547545
if left_release != right_release:
548546
return False

tests/pypi/pep508/evaluate_tests.bzl

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -273,6 +273,8 @@ _MISC_EXPRESSIONS = [
273273
_expr_case('python_version == "3.*"', True, {"python_version": "3.10.1"}),
274274
_expr_case('python_version != "3.10.*"', False, {"python_version": "3.10.1"}),
275275
_expr_case('python_version != "3.11.*"', True, {"python_version": "3.10.1"}),
276+
_expr_case('python_version != "3.10"', False, {"python_version": "3.10.0"}),
277+
_expr_case('python_version == "3.10"', True, {"python_version": "3.10.0"}),
276278
]
277279

278280
def _misc_expressions(env):

0 commit comments

Comments
 (0)