Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

2022.10.10 install fails with "inconsistent version: filename has '20.0.5', but metadata has '0.0.0'" #5398

Closed
jcjones1515 opened this issue Oct 10, 2022 · 8 comments · Fixed by #5399
Labels
hacktoberfest Type: Bug 🐛 This issue is a bug. Type: Regression This issue is a regression of a previous behavior.

Comments

@jcjones1515
Copy link

Issue description

pipenv install fails with below error in 2022.10.10, works ok in previous builds running 2022.10.4

Expected result

I'm expecting it to install all of our libraries

Actual result

Seems to be failing on our (private) library called pygain-lib because of some confusion around the version being 0.0.0. However I can't find anything in the tarball of that library referencing 0.0.0.

     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 576.6/576.6 kB 2.9 MB/s eta 0:00:00

Collecting pygain-lib[gcs,graph,pubsub,server]==20.0.5

  Downloading <PRIVATEURLREDACTED>/pygain-lib-20.0.5.tar.gz (576 kB)

  Preparing metadata (pyproject.toml): started

  Preparing metadata (pyproject.toml): finished with status 'done'

Discarding <PRIVATEURLREDACTED>/pygain-lib-20.0.5.tar.gz#md5=6e0535b3a29882d3ce9ae912a3d6a580 (from <URLREDACTED>/pygain-lib/): Requested pygain-lib==20.0.5 from <PRIVATEURLREDACTED>pygain-lib-20.0.5.tar.gz#md5=6e0535b3a29882d3ce9ae912a3d6a580 (from -r /var/folders/g3/kz23041j1q78y0p7kwbtmxb00000gn/T/pipenv-i76yxeuz-requirements/pipenv-6g925189-hashed-reqs.txt (line 64)) has inconsistent version: filename has '20.0.5', but metadata has '0.0.0'

WARNING: Requested pygain-lib[gcs,graph,pubsub,server]==20.0.5 from <PRIVATEURLREDACTED>/pygain-lib-20.0.5.tar.gz#md5=6e0535b3a29882d3ce9ae912a3d6a580 (from -r /var/folders/g3/kz23041j1q78y0p7kwbtmxb00000gn/T/pipenv-i76yxeuz-requirements/pipenv-6g925189-hashed-reqs.txt (line 64)), but installing version 0.0.0
ERROR: Ignored the following versions that require a different python version: 2.7 Requires-Python >=3.8; 2.7.1 Requires-Python >=3.8; 2.7rc1 Requires-Python >=3.8; 2.8 Requires-Python >=3.8; 2.8.1 Requires-Python >=3.8; 2.8.1rc1 Requires-Python >=3.8; 2.8.2 Requires-Python >=3.8; 2.8.3 Requires-Python >=3.8; 2.8.4 Requires-Python >=3.8; 2.8.5 Requires-Python >=3.8; 2.8.6 Requires-Python >=3.8; 2.8.7 Requires-Python >=3.8; 2.8rc1 Requires-Python >=3.8
ERROR: Could not find a version that satisfies the requirement pygain-lib[gcs,graph,pubsub,server]==20.0.5 (from versions: 0.0.0, 16.0.2, 16.0.3, 16.1.0, 16.1.1, 16.1.2, 16.1.3, 16.1.4, 16.1.5, 16.2.0, 16.2.1, 16.2.2, 16.2.3, 16.2.4, 16.2.5, 16.2.6, 16.2.7, 16.2.8, 16.3.0, 16.3.1, 16.4.0, 16.4.1, 16.4.2, 16.5.0, 16.5.1, 16.5.2, 16.5.3, 16.5.4, 16.5.5, 16.5.6, 16.5.7, 16.5.8, 16.5.9, 16.5.10, 16.5.11, 16.5.12, 16.5.13, 16.5.14, 16.5.15, 16.5.16, 16.5.17, 16.5.18, 16.5.19, 16.6.0, 16.6.1, 16.6.2, 16.6.3, 16.6.4, 16.6.5, 16.6.6, 16.6.7, 16.6.8, 16.6.9, 16.6.10, 16.6.11, 16.7.0, 16.7.1, 16.7.2, 16.7.3, 16.7.4, 16.7.5, 16.7.6, 16.7.7, 16.7.8, 16.7.9, 16.7.10, 17.0.0, 17.0.1, 17.0.2, 17.0.3, 17.1.0, 17.1.1, 17.2.0, 17.2.1, 17.2.2, 17.2.3, 17.2.4, 17.2.5, 17.2.6, 17.2.7, 17.2.8, 17.2.9, 17.2.10, 17.2.11, 17.2.12, 17.2.13, 18.0.5, 18.0.6, 18.0.7, 18.0.8, 18.0.9, 18.0.10, 18.1.0, 18.1.1, 18.2.0, 18.3.0, 18.3.1, 18.3.2, 18.3.3, 18.3.4, 18.4.0, 18.4.1, 18.4.2, 18.4.3, 18.4.4, 18.4.5, 18.4.6, 18.4.7, 18.4.8, 18.4.9, 19.0.0, 19.0.1, 19.0.2, 19.0.3, 19.0.4, 19.0.5, 19.0.6, 19.1.0, 19.1.1, 19.1.2, 19.1.3, 19.2.0, 19.2.1, 19.2.2, 19.2.3, 19.2.4, 20.0.0, 20.0.1, 20.0.2, 20.0.3, 20.0.4, 20.0.5)
ERROR: No matching distribution found for pygain-lib[gcs,graph,pubsub,server]==20.0.5

Steps to replicate

(this works fine if I pin to 2022.10.4)

  1. Upgrade from 2022.10.4 to 2022.10.10
  2. pipenv install --dev -v
  3. get error listed above

I'd be happy to provide pipenv --support output in a non-public place to avoid disclosing any info here

@jcjones1515 jcjones1515 changed the title 2022.10.10 causing build failures with some form of version confusion 2022.10.10 causing build failures with "inconsistent version: filename has '20.0.5', but metadata has '0.0.0'" Oct 10, 2022
@jcjones1515 jcjones1515 changed the title 2022.10.10 causing build failures with "inconsistent version: filename has '20.0.5', but metadata has '0.0.0'" 2022.10.10 install fails with "inconsistent version: filename has '20.0.5', but metadata has '0.0.0'" Oct 10, 2022
@steved
Copy link

steved commented Oct 11, 2022

I believe this is due to the change to no_build_isolation from #5366. I hit this with setuptools SCM, are you using that as well?

@matteius
Copy link
Member

This is unfortunate; the no build isolation change has a lot of devils in the details with reasons to want it both ways, I wish their was a hybrid approach--what is the story with setuptools SCM?

@jcjones1515
Copy link
Author

not setuptools-scm, but setuptools-git-versioning which is similar

@steved
Copy link

steved commented Oct 11, 2022

This is the simplest reproduction I could come up with that matches how we ran into internally. For better or worse, in my case an updated pip/setuptools combo let's me get past it, because it picks up the info from pyproject.toml: https://github.com/steved/pipenv-isolation-repro.

@matteius
Copy link
Member

If it continues to be an issue, you could also try installing those packages as a prerequisite -- there are some similar examples on this issue report here: #5391

@matteius
Copy link
Member

Hmmm, so I wonder if it would be better to default back to build isolation -- there is only one failing test and I can fix it by requiring for that case that --extra-pip-args="--no-build-isolation" be passed when dealing with those type of setup.py that require explicit pre-requisites to be able to build the setup.py. Thoughts?

@matteius
Copy link
Member

pipenv==2022.10.11 is released and reverts back to build isolation by default, since it is possible for users to pass --extra-pip-args="--no-build-isolation" but it is not possible to retract it if it is supplied by default, this was part of the decision.

@jcjones1515
Copy link
Author

I can confirm that this resolved the issue for me. big thank you to @matteius

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
hacktoberfest Type: Bug 🐛 This issue is a bug. Type: Regression This issue is a regression of a previous behavior.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants