From 375ef16d08c0fba60b2930a392655f19a9346c6d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= Date: Mon, 23 Feb 2026 11:03:23 +0100 Subject: [PATCH 1/2] Remove variant label length limitation MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Michał Górny --- peps/pep-0825.rst | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/peps/pep-0825.rst b/peps/pep-0825.rst index 0bdb9fb6256..230a971e5ea 100644 --- a/peps/pep-0825.rst +++ b/peps/pep-0825.rst @@ -137,8 +137,8 @@ to: Variant wheels MUST include the variant label component. Conversely, wheels without variant label are non-variant wheels. The variant label -MUST consist only of ``0-9``, ``a-z``, ``_`` and ``.`` ASCII characters, -and be 1-16 characters long (``^[0-9a-z_.]{1,16}$``). +MUST be non-empty and consist only of ``0-9``, ``a-z``, ``_`` and ``.`` +ASCII characters (``^[0-9a-z_.]+$``). Every variant label MUST uniquely correspond to a specific set of variant properties, which MUST be the same for all wheels using the same @@ -841,6 +841,14 @@ commonly used today reject it: numpy-2.3.2-cp313-cp313t-musllinux_1_2_x86_64-x86_64_v3.whl ^^^^^ +The addition of the variant label increases the filename length, making +is slightly more likely for wheel filenames to cause issues on systems +where total path length is severely limited. However, given that the +name and version components are unrestricted, and the actual filename +length is largely dependent on them, it is better to recommend package +maintainers to bear total filename length in mind rather than impose +arbitrary limitations on variant label lengths. + Aside from this explicit incompatibility, the specification makes minimal and non-intrusive changes to the binary package format. The `variant metadata`_ is stored in a separate file in the ``.dist-info`` @@ -965,6 +973,7 @@ Change History best value that is compatible with the system, for every feature, rather than all compatible values, and add a fallback to ordering on variant label. + - Removed the variant label length limitation. Appendices From 77f7372d1bb39e38d852fa087ea73f9fcb9586b0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= Date: Mon, 23 Feb 2026 13:13:33 +0100 Subject: [PATCH 2/2] Update peps/pep-0825.rst Co-authored-by: konsti --- peps/pep-0825.rst | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/peps/pep-0825.rst b/peps/pep-0825.rst index 230a971e5ea..b16f6a48adf 100644 --- a/peps/pep-0825.rst +++ b/peps/pep-0825.rst @@ -841,13 +841,11 @@ commonly used today reject it: numpy-2.3.2-cp313-cp313t-musllinux_1_2_x86_64-x86_64_v3.whl ^^^^^ -The addition of the variant label increases the filename length, making -is slightly more likely for wheel filenames to cause issues on systems -where total path length is severely limited. However, given that the -name and version components are unrestricted, and the actual filename -length is largely dependent on them, it is better to recommend package -maintainers to bear total filename length in mind rather than impose -arbitrary limitations on variant label lengths. +The addition of the variant label increases the filename length. On platforms +with a low total path length limit such as Windows, long filenames are a +concern. However, given that the name and version components are already +unrestricted, we do not set a specific limit in this PEP. Others, such as PyPI, +may set a limit for total filename length. Aside from this explicit incompatibility, the specification makes minimal and non-intrusive changes to the binary package format. The