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

Installing v1.0.2 with pipenv on Ubuntu 20.04 fails #22088

Closed
alanbuxton opened this issue Dec 28, 2021 · 2 comments
Closed

Installing v1.0.2 with pipenv on Ubuntu 20.04 fails #22088

alanbuxton opened this issue Dec 28, 2021 · 2 comments
Labels

Comments

@alanbuxton
Copy link

Describe the bug

pipenv install scikit-learn attempts to install v1.0.2 but fails.
pipenv install scikit-learn==1.0.1 works ok

Steps/Code to Reproduce

Assuming you have pipenv installed

~/apps/foo$ pipenv install scikit-learn

Expected Results

No error is thrown

Actual Results

Generates the following output (some items removed for brevity)

Creating a virtualenv for this project…
Using /usr/bin/python3 (3.8.10) to create virtualenv…
⠋created virtual environment CPython3.8.10.final.0-64 in 76ms
...
Creating a Pipfile for this project…
Installing scikit-learn…
Looking in indexes: https://pypi.python.org/simple
Collecting scikit-learn
  Using cached scikit_learn-1.0.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (26.7 MB)
Collecting joblib>=0.11
  Using cached joblib-1.1.0-py2.py3-none-any.whl (306 kB)
Collecting scipy>=1.1.0
  Using cached scipy-1.7.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (39.3 MB)
Collecting numpy>=1.14.6
  Using cached numpy-1.21.5-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl (15.7 MB)
Collecting threadpoolctl>=2.0.0
  Using cached threadpoolctl-3.0.0-py3-none-any.whl (14 kB)
Installing collected packages: joblib, numpy, scipy, threadpoolctl, scikit-learn
Successfully installed joblib-1.1.0 numpy-1.21.5 scikit-learn-1.0.2 scipy-1.7.3 threadpoolctl-3.0.0

Adding scikit-learn to Pipfile's [packages]…
Pipfile.lock not found, creating…
Locking [dev-packages] dependencies…
Locking [packages] dependencies…
elf.repository.get_dependencies(ireq)
  File "/usr/lib/python3/dist-packages/pipenv/patched/piptools/repositories/pypi.py", line 174, in get_dependencies
    legacy_results = self.get_legacy_dependencies(ireq)
  File "/usr/lib/python3/dist-packages/pipenv/patched/piptools/repositories/pypi.py", line 222, in get_legacy_dependencies
    result = reqset._prepare_file(self.finder, ireq, ignore_requires_python=True)
  File "/usr/lib/python3/dist-packages/pipenv/patched/notpip/req/req_set.py", line 644, in _prepare_file
    abstract_dist.prep_for_dist()
  File "/usr/lib/python3/dist-packages/pipenv/patched/notpip/req/req_set.py", line 134, in prep_for_dist
    self.req_to_install.run_egg_info()
  File "/usr/lib/python3/dist-packages/pipenv/vendor/pip9/req/req_install.py", line 435, in run_egg_info
    call_subprocess(
  File "/usr/lib/python3/dist-packages/pipenv/vendor/pip9/utils/__init__.py", line 705, in call_subprocess
    raise InstallationError(
pip9.exceptions.InstallationError: Command "python setup.py egg_info" failed with error code 1 in /tmp/tmplunus3ikbuild/scikit-learn/

scikit-learn v1.0.1 works fine:

~/apps/bar$ pipenv install scikit-learn==1.0.1
Creating a virtualenv for this project…
Using /usr/bin/python3 (3.8.10) to create virtualenv…
⠋created virtual environment CPython3.8.10.final.0-64 in 78ms
 ...
Creating a Pipfile for this project…
Installing scikit-learn==1.0.1…
Looking in indexes: https://pypi.python.org/simple
Collecting scikit-learn==1.0.1
  Using cached scikit_learn-1.0.1-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl (25.9 MB)
Collecting joblib>=0.11
  Using cached joblib-1.1.0-py2.py3-none-any.whl (306 kB)
Collecting numpy>=1.14.6
  Using cached numpy-1.21.5-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl (15.7 MB)
Collecting scipy>=1.1.0
  Using cached scipy-1.7.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (39.3 MB)
Collecting threadpoolctl>=2.0.0
  Using cached threadpoolctl-3.0.0-py3-none-any.whl (14 kB)
Installing collected packages: joblib, numpy, scipy, threadpoolctl, scikit-learn
Successfully installed joblib-1.1.0 numpy-1.21.5 scikit-learn-1.0.1 scipy-1.7.3 threadpoolctl-3.0.0

Adding scikit-learn==1.0.1 to Pipfile's [packages]…
Pipfile.lock not found, creating…
Locking [dev-packages] dependencies…
Locking [packages] dependencies…
Updated Pipfile.lock (75dd10)!
Installing dependencies from Pipfile.lock (75dd10)…
  🐍   ▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉ 5/5 — 00:00:00
To activate this project's virtualenv, run the following:
 $ pipenv shell

Versions

v1.0.2

@alanbuxton alanbuxton added Bug Needs Triage Issue requires triage labels Dec 28, 2021
@thomasjpfan
Copy link
Member

thomasjpfan commented Dec 29, 2021

I think this is related to how we dropped manylinux1 in 1.0.2. We did this because manylinux1 will reach EOL in Jan 1st, 2022 and SciPy has also dropped manylinux1 support. (I saw pipenv/vendor/pip9 in the error message and the manylinux2010 wheels require pip 19.3)

Locally, I can confirm that older version of pipenv does raise this error and that updating to a newer version fixes the error. May you try updating pipenv to 2021.11.2 see if you get the error?

@thomasjpfan thomasjpfan removed the Needs Triage Issue requires triage label Dec 29, 2021
@alanbuxton
Copy link
Author

Thanks for your speedy assistance. That did the trick for me.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants