We have been using cibuildwheel in github to build wheels. For whatever reason we came across a name length limit in a local pypi for this package
rl_accel-0.9.0-cp37-abi3-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
we could easily fix, but it made me wonder if there are limits on download name lengths in the real pypi and also what sort of name lengths cibuildwheel might end up generating.
1 Like
hugovk
(Hugo van Kemenade)
November 2, 2023, 2:10pm
2
Searching sethmlarson/pypi-data , the longest wheel filename is 253 characters and the next few are 191:
❯ sqlite3 'pypi.db' 'SELECT filename FROM wheels ORDER BY LENGTH(filename) desc LIMIT 10;'
uselesscapitalquiz-3.14159265358979323846264338327950288419716939937510582097494459230781640628620899862803482534211706798214808651328230664709384460955058223172535940812848111745028410270193852110555964462294895493038196442881097566593-py3-none-any.whl
pyms_nist_search-0.6.3.post1-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl
pyms_nist_search-0.6.3.post1-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl
pyms_nist_search-0.6.3.post1-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl
pyms_nist_search-0.6.3.post1-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl
pyms_nist_search-0.6.3.post1-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl
pyms_nist_search-0.6.3.post1-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl
pyms_nist_search-0.6.3.post1-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl
pyms_nist_search-0.6.3.post1-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl
pyms_nist_search-0.6.3.post1-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl
And unfortunately that example is unnecessary as packaging.tags
will generate the complete list of tags for manylinux_2_*
from the glibc version number down. So the manylinux_2_5_x86_64
is the only necessary bit and the rest is superfluous.