mrabarnett / mrab-regex

Other
450 stars 49 forks source link

2022.7.24 improperly released #475

Open jaklan opened 2 years ago

jaklan commented 2 years ago

When using poetry, when you try to install regex with poetry add regex using Python < 3.10, you get the following error: Unable to find installation candidates for regex (2022.7.24) When we look at poetry.lock, we can see:

[metadata.files]
regex = [
    {file = "regex-2022.7.24-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:a96826b5c9dc68417ddb29843998473f9c2c047911e6fca36a9f81a898087b01"},
    {file = "regex-2022.7.24-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:2880d21e9507869ab1636e50461afb9ffb08797f1cb76f70d3ad52e7dd13a335"},
    {file = "regex-2022.7.24-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:dbe2f16a66f64a00dc9ccc0db7f8b5ff014f409840e03675eb431f03b50ddffd"},
    {file = "regex-2022.7.24-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9e64492c8105312f080e25e457db70f9b0d02e6ba3c1ea14468087b0e3aa876f"},
]

so there are neither wheels for other Python versions nor sdist.

When running poetry add "regex<2022.7.24", 2022.7.9 is installed correctly and all the metadata are also there, so the issue is specific to that release.

jaklan commented 2 years ago

I was able to reproduce the issue directly with PyPI metadata: curl -L https://pypi.python.org/pypi/regex/2022.7.24/json | jq .urls returns exactly the same wheels which are mentioned in poetry.lock, nothing more.

EDIT: actually it returns even less - I see only 3 wheels, regex-2022.7.24-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl is not there...

shahnozaAI commented 2 years ago

I have exactly the same issue with Python = ">3.8.1, <3.11.0" trying to install with poetry add regex and getting:

  RuntimeError

  Unable to find installation candidates for regex (2022.7.24)
mrabarnett commented 2 years ago

regex 22.7.24 was built and released by GitHub Actions, just like the previous version. All the wheels, and the source distribution, are there on PyPI. 'poetry' is new to me, I use 'pip', and that works on 3 different OSes and 3 different versions of Python.

rubenaranamorera commented 2 years ago

Same problem here! Using poetry:

• Updating regex (2022.7.9 -> 2022.7.24): Failed

  RuntimeError

  Unable to find installation candidates for regex (2022.7.24)
jlerouge commented 2 years ago

I'm facing the exact same issue with Poetry. I think the issue is not with the wheels themselves (we may see them here: https://pypi.org/project/regex/#files), but with some metadata.

When we request PyPI API for the previous release, the cp36 to cp310 versions are available : https://pypi.org/pypi/regex/2022.7.9/json

jaklan commented 2 years ago

@mrabarnett unfortunately I don't know what could be the reason, but as you can see above - the metadata in PyPI are indeed incorrect and they are the "source of truth" for poetry. I don't know if there's an option to fix it for an already released version, but if previous releases worked correctly, then I hope triggering a new release could be enough.

mrabarnett commented 2 years ago

A new release is on its way. Cross your fingers!

mrabarnett commented 2 years ago

It appears to be slightly less broken, but still broken.

neersighted commented 2 years ago

The issue here is pypi/warehouse#11949 -- there is nothing wrong with the regex package itself as best I can tell. This should be resolved once the Warehouse team is able to fix their CDN fronting the JSON API.