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

Release 2022.8.31 introduced issues with the install command #5332

Closed
CoburnJoe opened this issue Sep 6, 2022 · 3 comments
Closed

Release 2022.8.31 introduced issues with the install command #5332

CoburnJoe opened this issue Sep 6, 2022 · 3 comments
Labels
triage Type: Possible Bug This issue describes a possible bug in pipenv.

Comments

@CoburnJoe
Copy link

Hi! I have a large number of codebases using Pipenv, and some (not all) are failing to install dependencies.

Python version: 3.8
Pipenv version: 2022.8.31, 2022.9.2, 2022.9.4.
Pip version: Latest - 22.2.2

Error snippet:

Installing initially failed dependencies...
[pipenv.exceptions.InstallError]: Collecting attrs==21.4.0

× python [setup.py](http://setup.py/) egg_info did not run successfully.
[pipenv.exceptions.InstallError]:   │ exit code: 1
[pipenv.exceptions.InstallError]:   ╰─> [153 lines of output]
[pipenv.exceptions.InstallError]:       
[pipenv.exceptions.InstallError]:           No working compiler found, or bogus compiler options passed to
[pipenv.exceptions.InstallError]:           the compiler from Python's standard "distutils" module.  See
[pipenv.exceptions.InstallError]:           the error messages above.  Likely, the problem is not related
[pipenv.exceptions.InstallError]:           to CFFI but generic to the [setup.py](http://setup.py/) of any Python package that
[pipenv.exceptions.InstallError]:           tries to compile C code.  (Hints: on OS/X 10.8, for errors about
[pipenv.exceptions.InstallError]:           -mno-fused-madd see http://stackoverflow.com/questions/22313407/
[pipenv.exceptions.InstallError]:           Otherwise, see https://wiki.python.org/moin/CompLangPython or
[pipenv.exceptions.InstallError]:           the IRC channel #python on irc.libera.chat.)
[pipenv.exceptions.InstallError]:       
[pipenv.exceptions.InstallError]:           Trying to continue anyway.  If you are trying to install CFFI from
[pipenv.exceptions.InstallError]:           a build done in a different context, you can ignore this warning.
[pipenv.exceptions.InstallError]:       
[pipenv.exceptions.InstallError]:       warning: build_py: byte-compiling is disabled, skipping.
[pipenv.exceptions.InstallError]:

^ this happens for every dependency, but I do know that Pipenv version 2022.8.31 appears to have introduced the issue, and it is still present in all subsequent releases.

I have ran builds with multiple previous versions of Pipenv, all of which work fine:

  • 2022.1.8 works
  • 2022.4.8 works
  • 2022.7.4 works
  • 2022.8.15 works
  • 2022.8.17 works
  • 2022.8.19 works
  • 2022.8.24 works
  • 2022.8.30 works

I'm not sure why only some projects have this issue, but I do know the only change to make the builds fail is upgrading Pipenv...

😃

@matteius
Copy link
Member

matteius commented Sep 6, 2022

@CoburnJoe I have two theories, if they are both wrong I am going to need more information -- one is can you try 2022.9.4 missed the part in your opening statement where you tried this-- the other is that you have a dependency in your install chain that this setup.py depends on, in which case you'll want to run pipenv run pip install <dependency> ahead of the pipenv sync or pipenv install --deploy command--you may have been getting lucky before when dependencies were installed individually, that it was available by the time this setup.py was invoked. The error seems to indicate something is missing causing a setup.py invocation to fail. We saw a different issue where a user needed to pre-install six this way as a workaround for when setup.py requires one of the other installed dependencies, because batch install will not get lucky anymore, it installs in typically 1, at most 2 pip invocations in order to cut the install times in half: #5319 Inspect the setup.py of that project/specifier for what it imports or does to install, to get a better idea of what might be going on. If you run with --verbose do you get more details? Which package is this failing on, even though I see attrs right above, I suspect this is a different pakage?

@matteius matteius added triage Type: Possible Bug This issue describes a possible bug in pipenv. labels Sep 6, 2022
@CoburnJoe
Copy link
Author

@CoburnJoe I have two theories, if they are both wrong I am going to need more information -- one is can you try 2022.9.4 -- the other is that you have a dependency in your install chain that this setup.py depends on, in which case you'll want to run pipenv run pip install <dependency> ahead of the pipenv sync or pipenv install --deploy command--you may have been getting lucky before when dependencies were installed individually, that it was available by the time this setup.py was invoked. The error seems to indicate something is missing causing a setup.py invocation to fail. We saw a different issue where a user needed to pre-install six this way as a workaround for when setup.py requires one of the other installed dependencies, because batch install will not get lucky anymore, it installs in typically 1, at most 2 pip invocations in order to cut the install times in half: #5319 Inspect the setup.py of that project/specifier for what it imports or does to install, to get a better idea of what might be going on.

Thanks for the reply - I've tried 2022.9.4 (all releases since the "working" release - 2022.8.31, 2022.9.2, 2022.9.4) with no change.

I think your second suggestion is the most likely answer - I'll report back ASAP - but this may take me some time to track down.

@CoburnJoe
Copy link
Author

@matteius I'm now certain this is as you described, and basically the same as #5319 - i.e. not a problem you need to solve with Pipenv - closing now, thanks so much for your quick reply!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
triage Type: Possible Bug This issue describes a possible bug in pipenv.
Projects
None yet
Development

No branches or pull requests

2 participants