question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

--upgrade-strategy=eger should explain why a package is not upgraded

See original GitHub issue

Description

Running pip install with -U/--upgrade on a package while listing an extra that adds a dependency that might already be installed pip does not upgrade the packages from the extra if the requirement listed is already satisfied. This is also true with the eager upgrade strategy.

Expected behavior

When using the -U/--upgrade flag all packages to be installed, even those from an extra, are upgraded to the newest version.

pip version

21.2.4

Python version

3.9.6

OS

Linux

How to Reproduce

  1. pip install 'qiskit-nature<0.2.0'
  2. pip install -U 'qiskit[nature]' (the nature extra is defined as "qiskit-nature>=0.1.5": https://github.com/Qiskit/qiskit/blob/master/setup.py#L52-L54 )
  3. pip install -U --upgrade-strategy eager 'qiskit[nature]'

Output

pip install 'qiskit-nature<0.2.0'

Collecting qiskit-nature<0.2.0
  Using cached qiskit_nature-0.1.5-py3-none-any.whl (1.5 MB)
Collecting psutil>=5
  Using cached psutil-5.8.0-cp39-cp39-manylinux2010_x86_64.whl (293 kB)
Collecting scikit-learn>=0.20.0
  Using cached scikit_learn-0.24.2-cp39-cp39-manylinux2010_x86_64.whl (23.8 MB)
Collecting numpy>=1.17
  Using cached numpy-1.21.2-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl (15.8 MB)
Collecting qiskit-terra>=0.18.0
  Using cached qiskit_terra-0.18.1-cp39-cp39-manylinux2010_x86_64.whl (6.2 MB)
Requirement already satisfied: setuptools>=40.1.0 in ./test_foo_fail/lib/python3.9/site-packages (from qiskit-nature<0.2.0) (57.4.0)
Collecting h5py<3.3
  Using cached h5py-3.2.1-cp39-cp39-manylinux1_x86_64.whl (4.5 MB)
Collecting scipy>=1.4
  Using cached scipy-1.7.1-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.whl (28.5 MB)
Collecting retworkx>=0.9.0
  Using cached retworkx-0.10.1-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (1.4 MB)
Collecting jsonschema>=2.6
  Using cached jsonschema-3.2.0-py2.py3-none-any.whl (56 kB)
Collecting symengine>0.7
  Using cached symengine-0.7.2-cp39-cp39-manylinux2010_x86_64.whl (33.9 MB)
Collecting tweedledum<2.0,>=1.1
  Using cached tweedledum-1.1.0-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl (929 kB)
Collecting python-dateutil>=2.8.0
  Using cached python_dateutil-2.8.2-py2.py3-none-any.whl (247 kB)
Collecting ply>=3.10
  Using cached ply-3.11-py2.py3-none-any.whl (49 kB)
Collecting dill>=0.3
  Using cached dill-0.3.4-py2.py3-none-any.whl (86 kB)
Collecting python-constraint>=1.4
  Using cached python_constraint-1.4.0-py2.py3-none-any.whl
Collecting sympy>=1.3
  Using cached sympy-1.8-py3-none-any.whl (6.1 MB)
Collecting fastjsonschema>=2.10
  Using cached fastjsonschema-2.15.1-py3-none-any.whl (21 kB)
Collecting pyrsistent>=0.14.0
  Using cached pyrsistent-0.18.0-cp39-cp39-manylinux1_x86_64.whl (117 kB)
Collecting six>=1.11.0
  Using cached six-1.16.0-py2.py3-none-any.whl (11 kB)
Collecting attrs>=17.4.0
  Using cached attrs-21.2.0-py2.py3-none-any.whl (53 kB)
Collecting threadpoolctl>=2.0.0
  Using cached threadpoolctl-2.2.0-py3-none-any.whl (12 kB)
Collecting joblib>=0.11
  Using cached joblib-1.0.1-py3-none-any.whl (303 kB)
Collecting mpmath>=0.19
  Using cached mpmath-1.2.1-py3-none-any.whl (532 kB)
Installing collected packages: six, pyrsistent, numpy, mpmath, attrs, tweedledum, threadpoolctl, sympy, symengine, scipy, retworkx, python-dateutil, python-constraint, psutil, ply, jsonschema, joblib, fastjsonschema, dill, scikit-learn, qiskit-terra, h5py, qiskit-nature
Successfully installed attrs-21.2.0 dill-0.3.4 fastjsonschema-2.15.1 h5py-3.2.1 joblib-1.0.1 jsonschema-3.2.0 mpmath-1.2.1 numpy-1.21.2 ply-3.11 psutil-5.8.0 pyrsistent-0.18.0 python-constraint-1.4.0 python-dateutil-2.8.2 qiskit-nature-0.1.5 qiskit-terra-0.18.1 retworkx-0.10.1 scikit-learn-0.24.2 scipy-1.7.1 six-1.16.0 symengine-0.7.2 sympy-1.8 threadpoolctl-2.2.0 tweedledum-1.1.0

pip install -U 'qiskit[nature]'

Collecting qiskit[nature]
  Using cached qiskit-0.29.0-py3-none-any.whl
Collecting qiskit-ibmq-provider==0.16.0
  Using cached qiskit_ibmq_provider-0.16.0-py3-none-any.whl (235 kB)
Collecting qiskit-aqua==0.9.4
  Using cached qiskit_aqua-0.9.4-py3-none-any.whl (2.1 MB)
Collecting qiskit-aer==0.8.2
  Using cached qiskit_aer-0.8.2-cp39-cp39-manylinux2010_x86_64.whl (18.0 MB)
Collecting qiskit-ignis==0.6.0
  Using cached qiskit_ignis-0.6.0-py3-none-any.whl (207 kB)
Requirement already satisfied: qiskit-terra==0.18.1 in ./test_foo_fail/lib/python3.9/site-packages (from qiskit[nature]) (0.18.1)
Requirement already satisfied: qiskit-nature==0.1.5 in ./test_foo_fail/lib/python3.9/site-packages (from qiskit[nature]) (0.1.5)
Collecting pybind11>=2.6
  Using cached pybind11-2.7.1-py2.py3-none-any.whl (200 kB)
Requirement already satisfied: scipy>=1.0 in ./test_foo_fail/lib/python3.9/site-packages (from qiskit-aer==0.8.2->qiskit[nature]) (1.7.1)
Requirement already satisfied: numpy>=1.16.3 in ./test_foo_fail/lib/python3.9/site-packages (from qiskit-aer==0.8.2->qiskit[nature]) (1.21.2)
Requirement already satisfied: sympy>=1.3 in ./test_foo_fail/lib/python3.9/site-packages (from qiskit-aqua==0.9.4->qiskit[nature]) (1.8)
Requirement already satisfied: psutil>=5 in ./test_foo_fail/lib/python3.9/site-packages (from qiskit-aqua==0.9.4->qiskit[nature]) (5.8.0)
Collecting dlx<=1.0.4
  Using cached dlx-1.0.4-py3-none-any.whl
Requirement already satisfied: setuptools>=40.1.0 in ./test_foo_fail/lib/python3.9/site-packages (from qiskit-aqua==0.9.4->qiskit[nature]) (57.4.0)
Requirement already satisfied: retworkx>=0.8.0 in ./test_foo_fail/lib/python3.9/site-packages (from qiskit-aqua==0.9.4->qiskit[nature]) (0.10.1)
Collecting pandas
  Using cached pandas-1.3.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (11.5 MB)
Collecting quandl
  Using cached Quandl-3.6.1-py2.py3-none-any.whl (26 kB)
Collecting yfinance<0.1.63
  Using cached yfinance-0.1.62-py2.py3-none-any.whl
Collecting fastdtw<=0.3.4
  Using cached fastdtw-0.3.4-py3-none-any.whl
Collecting docplex>=2.21.207
  Using cached docplex-2.21.207-py3-none-any.whl
Requirement already satisfied: scikit-learn>=0.20.0 in ./test_foo_fail/lib/python3.9/site-packages (from qiskit-aqua==0.9.4->qiskit[nature]) (0.24.2)
Requirement already satisfied: h5py<3.3.0 in ./test_foo_fail/lib/python3.9/site-packages (from qiskit-aqua==0.9.4->qiskit[nature]) (3.2.1)
Requirement already satisfied: python-dateutil>=2.8.0 in ./test_foo_fail/lib/python3.9/site-packages (from qiskit-ibmq-provider==0.16.0->qiskit[nature]) (2.8.2)
Collecting requests>=2.19
  Using cached requests-2.26.0-py2.py3-none-any.whl (62 kB)
Collecting websocket-client>=1.0.1
  Using cached websocket_client-1.2.1-py2.py3-none-any.whl (52 kB)
Collecting requests-ntlm>=1.1.0
  Using cached requests_ntlm-1.1.0-py2.py3-none-any.whl (5.7 kB)
Collecting urllib3>=1.21.1
  Using cached urllib3-1.26.6-py2.py3-none-any.whl (138 kB)
Requirement already satisfied: dill>=0.3 in ./test_foo_fail/lib/python3.9/site-packages (from qiskit-terra==0.18.1->qiskit[nature]) (0.3.4)
Requirement already satisfied: tweedledum<2.0,>=1.1 in ./test_foo_fail/lib/python3.9/site-packages (from qiskit-terra==0.18.1->qiskit[nature]) (1.1.0)
Requirement already satisfied: fastjsonschema>=2.10 in ./test_foo_fail/lib/python3.9/site-packages (from qiskit-terra==0.18.1->qiskit[nature]) (2.15.1)
Requirement already satisfied: ply>=3.10 in ./test_foo_fail/lib/python3.9/site-packages (from qiskit-terra==0.18.1->qiskit[nature]) (3.11)
Requirement already satisfied: symengine>0.7 in ./test_foo_fail/lib/python3.9/site-packages (from qiskit-terra==0.18.1->qiskit[nature]) (0.7.2)
Requirement already satisfied: python-constraint>=1.4 in ./test_foo_fail/lib/python3.9/site-packages (from qiskit-terra==0.18.1->qiskit[nature]) (1.4.0)
Requirement already satisfied: jsonschema>=2.6 in ./test_foo_fail/lib/python3.9/site-packages (from qiskit-terra==0.18.1->qiskit[nature]) (3.2.0)
Requirement already satisfied: six in ./test_foo_fail/lib/python3.9/site-packages (from docplex>=2.21.207->qiskit-aqua==0.9.4->qiskit[nature]) (1.16.0)
Requirement already satisfied: pyrsistent>=0.14.0 in ./test_foo_fail/lib/python3.9/site-packages (from jsonschema>=2.6->qiskit-terra==0.18.1->qiskit[nature]) (0.18.0)
Requirement already satisfied: attrs>=17.4.0 in ./test_foo_fail/lib/python3.9/site-packages (from jsonschema>=2.6->qiskit-terra==0.18.1->qiskit[nature]) (21.2.0)
Collecting charset-normalizer~=2.0.0
  Using cached charset_normalizer-2.0.4-py3-none-any.whl (36 kB)
Collecting idna<4,>=2.5
  Using cached idna-3.2-py3-none-any.whl (59 kB)
Collecting certifi>=2017.4.17
  Using cached certifi-2021.5.30-py2.py3-none-any.whl (145 kB)
Collecting cryptography>=1.3
  Using cached cryptography-3.4.8-cp36-abi3-manylinux_2_24_x86_64.whl (3.0 MB)
Collecting ntlm-auth>=1.0.2
  Using cached ntlm_auth-1.5.0-py2.py3-none-any.whl (29 kB)
Collecting cffi>=1.12
  Using cached cffi-1.14.6-cp39-cp39-manylinux1_x86_64.whl (405 kB)
Collecting pycparser
  Using cached pycparser-2.20-py2.py3-none-any.whl (112 kB)
Requirement already satisfied: threadpoolctl>=2.0.0 in ./test_foo_fail/lib/python3.9/site-packages (from scikit-learn>=0.20.0->qiskit-aqua==0.9.4->qiskit[nature]) (2.2.0)
Requirement already satisfied: joblib>=0.11 in ./test_foo_fail/lib/python3.9/site-packages (from scikit-learn>=0.20.0->qiskit-aqua==0.9.4->qiskit[nature]) (1.0.1)
Requirement already satisfied: mpmath>=0.19 in ./test_foo_fail/lib/python3.9/site-packages (from sympy>=1.3->qiskit-aqua==0.9.4->qiskit[nature]) (1.2.1)
Collecting multitasking>=0.0.7
  Using cached multitasking-0.0.9-py3-none-any.whl
Collecting lxml>=4.5.1
  Using cached lxml-4.6.3-cp39-cp39-manylinux2014_x86_64.whl (6.9 MB)
Collecting pytz>=2017.3
  Using cached pytz-2021.1-py2.py3-none-any.whl (510 kB)
Collecting more-itertools
  Using cached more_itertools-8.8.0-py3-none-any.whl (48 kB)
Collecting inflection>=0.3.1
  Using cached inflection-0.5.1-py2.py3-none-any.whl (9.5 kB)
Installing collected packages: pycparser, urllib3, pytz, idna, charset-normalizer, cffi, certifi, requests, pandas, ntlm-auth, multitasking, more-itertools, lxml, inflection, cryptography, yfinance, websocket-client, requests-ntlm, quandl, qiskit-ignis, pybind11, fastdtw, docplex, dlx, qiskit-ibmq-provider, qiskit-aqua, qiskit-aer, qiskit
Successfully installed certifi-2021.5.30 cffi-1.14.6 charset-normalizer-2.0.4 cryptography-3.4.8 dlx-1.0.4 docplex-2.21.207 fastdtw-0.3.4 idna-3.2 inflection-0.5.1 lxml-4.6.3 more-itertools-8.8.0 multitasking-0.0.9 ntlm-auth-1.5.0 pandas-1.3.2 pybind11-2.7.1 pycparser-2.20 pytz-2021.1 qiskit-0.29.0 qiskit-aer-0.8.2 qiskit-aqua-0.9.4 qiskit-ibmq-provider-0.16.0 qiskit-ignis-0.6.0 quandl-3.6.1 requests-2.26.0 requests-ntlm-1.1.0 urllib3-1.26.6 websocket-client-1.2.1 yfinance-0.1.62

The key piece being: Requirement already satisfied: qiskit-nature==0.1.5 in ./test_foo_fail/lib/python3.9/site-packages (from qiskit[nature]) (0.1.5) which doesn’t get upgraded to the newer 0.2.0: https://pypi.org/project/qiskit-nature/0.2.0/

pip install -U --upgrade-strategy eager 'qiskit[nature]'

Requirement already satisfied: qiskit[nature] in ./test_foo_fail/lib/python3.9/site-packages (0.29.0)
Requirement already satisfied: qiskit-aer==0.8.2 in ./test_foo_fail/lib/python3.9/site-packages (from qiskit[nature]) (0.8.2)
Requirement already satisfied: qiskit-terra==0.18.1 in ./test_foo_fail/lib/python3.9/site-packages (from qiskit[nature]) (0.18.1)
Requirement already satisfied: qiskit-ibmq-provider==0.16.0 in ./test_foo_fail/lib/python3.9/site-packages (from qiskit[nature]) (0.16.0)
Requirement already satisfied: qiskit-ignis==0.6.0 in ./test_foo_fail/lib/python3.9/site-packages (from qiskit[nature]) (0.6.0)
Requirement already satisfied: qiskit-aqua==0.9.4 in ./test_foo_fail/lib/python3.9/site-packages (from qiskit[nature]) (0.9.4)
Requirement already satisfied: qiskit-nature==0.1.5 in ./test_foo_fail/lib/python3.9/site-packages (from qiskit[nature]) (0.1.5)
Requirement already satisfied: numpy>=1.16.3 in ./test_foo_fail/lib/python3.9/site-packages (from qiskit-aer==0.8.2->qiskit[nature]) (1.21.2)
Requirement already satisfied: scipy>=1.0 in ./test_foo_fail/lib/python3.9/site-packages (from qiskit-aer==0.8.2->qiskit[nature]) (1.7.1)
Requirement already satisfied: pybind11>=2.6 in ./test_foo_fail/lib/python3.9/site-packages (from qiskit-aer==0.8.2->qiskit[nature]) (2.7.1)
Requirement already satisfied: sympy>=1.3 in ./test_foo_fail/lib/python3.9/site-packages (from qiskit-aqua==0.9.4->qiskit[nature]) (1.8)
Requirement already satisfied: quandl in ./test_foo_fail/lib/python3.9/site-packages (from qiskit-aqua==0.9.4->qiskit[nature]) (3.6.1)
Requirement already satisfied: pandas in ./test_foo_fail/lib/python3.9/site-packages (from qiskit-aqua==0.9.4->qiskit[nature]) (1.3.2)
Requirement already satisfied: yfinance<0.1.63 in ./test_foo_fail/lib/python3.9/site-packages (from qiskit-aqua==0.9.4->qiskit[nature]) (0.1.62)
Requirement already satisfied: docplex>=2.21.207 in ./test_foo_fail/lib/python3.9/site-packages (from qiskit-aqua==0.9.4->qiskit[nature]) (2.21.207)
Requirement already satisfied: setuptools>=40.1.0 in ./test_foo_fail/lib/python3.9/site-packages (from qiskit-aqua==0.9.4->qiskit[nature]) (57.4.0)
Requirement already satisfied: scikit-learn>=0.20.0 in ./test_foo_fail/lib/python3.9/site-packages (from qiskit-aqua==0.9.4->qiskit[nature]) (0.24.2)
Requirement already satisfied: psutil>=5 in ./test_foo_fail/lib/python3.9/site-packages (from qiskit-aqua==0.9.4->qiskit[nature]) (5.8.0)
Requirement already satisfied: fastdtw<=0.3.4 in ./test_foo_fail/lib/python3.9/site-packages (from qiskit-aqua==0.9.4->qiskit[nature]) (0.3.4)
Requirement already satisfied: dlx<=1.0.4 in ./test_foo_fail/lib/python3.9/site-packages (from qiskit-aqua==0.9.4->qiskit[nature]) (1.0.4)
Requirement already satisfied: retworkx>=0.8.0 in ./test_foo_fail/lib/python3.9/site-packages (from qiskit-aqua==0.9.4->qiskit[nature]) (0.10.1)
Requirement already satisfied: h5py<3.3.0 in ./test_foo_fail/lib/python3.9/site-packages (from qiskit-aqua==0.9.4->qiskit[nature]) (3.2.1)
Requirement already satisfied: urllib3>=1.21.1 in ./test_foo_fail/lib/python3.9/site-packages (from qiskit-ibmq-provider==0.16.0->qiskit[nature]) (1.26.6)
Requirement already satisfied: requests-ntlm>=1.1.0 in ./test_foo_fail/lib/python3.9/site-packages (from qiskit-ibmq-provider==0.16.0->qiskit[nature]) (1.1.0)
Requirement already satisfied: python-dateutil>=2.8.0 in ./test_foo_fail/lib/python3.9/site-packages (from qiskit-ibmq-provider==0.16.0->qiskit[nature]) (2.8.2)
Requirement already satisfied: requests>=2.19 in ./test_foo_fail/lib/python3.9/site-packages (from qiskit-ibmq-provider==0.16.0->qiskit[nature]) (2.26.0)
Requirement already satisfied: websocket-client>=1.0.1 in ./test_foo_fail/lib/python3.9/site-packages (from qiskit-ibmq-provider==0.16.0->qiskit[nature]) (1.2.1)
Requirement already satisfied: tweedledum<2.0,>=1.1 in ./test_foo_fail/lib/python3.9/site-packages (from qiskit-terra==0.18.1->qiskit[nature]) (1.1.0)
Requirement already satisfied: python-constraint>=1.4 in ./test_foo_fail/lib/python3.9/site-packages (from qiskit-terra==0.18.1->qiskit[nature]) (1.4.0)
Requirement already satisfied: symengine>0.7 in ./test_foo_fail/lib/python3.9/site-packages (from qiskit-terra==0.18.1->qiskit[nature]) (0.7.2)
Requirement already satisfied: dill>=0.3 in ./test_foo_fail/lib/python3.9/site-packages (from qiskit-terra==0.18.1->qiskit[nature]) (0.3.4)
Requirement already satisfied: jsonschema>=2.6 in ./test_foo_fail/lib/python3.9/site-packages (from qiskit-terra==0.18.1->qiskit[nature]) (3.2.0)
Requirement already satisfied: fastjsonschema>=2.10 in ./test_foo_fail/lib/python3.9/site-packages (from qiskit-terra==0.18.1->qiskit[nature]) (2.15.1)
Requirement already satisfied: ply>=3.10 in ./test_foo_fail/lib/python3.9/site-packages (from qiskit-terra==0.18.1->qiskit[nature]) (3.11)
Requirement already satisfied: six in ./test_foo_fail/lib/python3.9/site-packages (from docplex>=2.21.207->qiskit-aqua==0.9.4->qiskit[nature]) (1.16.0)
Requirement already satisfied: attrs>=17.4.0 in ./test_foo_fail/lib/python3.9/site-packages (from jsonschema>=2.6->qiskit-terra==0.18.1->qiskit[nature]) (21.2.0)
Requirement already satisfied: pyrsistent>=0.14.0 in ./test_foo_fail/lib/python3.9/site-packages (from jsonschema>=2.6->qiskit-terra==0.18.1->qiskit[nature]) (0.18.0)
Requirement already satisfied: charset-normalizer~=2.0.0 in ./test_foo_fail/lib/python3.9/site-packages (from requests>=2.19->qiskit-ibmq-provider==0.16.0->qiskit[nature]) (2.0.4)
Requirement already satisfied: certifi>=2017.4.17 in ./test_foo_fail/lib/python3.9/site-packages (from requests>=2.19->qiskit-ibmq-provider==0.16.0->qiskit[nature]) (2021.5.30)
Requirement already satisfied: idna<4,>=2.5 in ./test_foo_fail/lib/python3.9/site-packages (from requests>=2.19->qiskit-ibmq-provider==0.16.0->qiskit[nature]) (3.2)
Requirement already satisfied: ntlm-auth>=1.0.2 in ./test_foo_fail/lib/python3.9/site-packages (from requests-ntlm>=1.1.0->qiskit-ibmq-provider==0.16.0->qiskit[nature]) (1.5.0)
Requirement already satisfied: cryptography>=1.3 in ./test_foo_fail/lib/python3.9/site-packages (from requests-ntlm>=1.1.0->qiskit-ibmq-provider==0.16.0->qiskit[nature]) (3.4.8)
Requirement already satisfied: cffi>=1.12 in ./test_foo_fail/lib/python3.9/site-packages (from cryptography>=1.3->requests-ntlm>=1.1.0->qiskit-ibmq-provider==0.16.0->qiskit[nature]) (1.14.6)
Requirement already satisfied: pycparser in ./test_foo_fail/lib/python3.9/site-packages (from cffi>=1.12->cryptography>=1.3->requests-ntlm>=1.1.0->qiskit-ibmq-provider==0.16.0->qiskit[nature]) (2.20)
Requirement already satisfied: threadpoolctl>=2.0.0 in ./test_foo_fail/lib/python3.9/site-packages (from scikit-learn>=0.20.0->qiskit-aqua==0.9.4->qiskit[nature]) (2.2.0)
Requirement already satisfied: joblib>=0.11 in ./test_foo_fail/lib/python3.9/site-packages (from scikit-learn>=0.20.0->qiskit-aqua==0.9.4->qiskit[nature]) (1.0.1)
Requirement already satisfied: mpmath>=0.19 in ./test_foo_fail/lib/python3.9/site-packages (from sympy>=1.3->qiskit-aqua==0.9.4->qiskit[nature]) (1.2.1)
Requirement already satisfied: lxml>=4.5.1 in ./test_foo_fail/lib/python3.9/site-packages (from yfinance<0.1.63->qiskit-aqua==0.9.4->qiskit[nature]) (4.6.3)
Requirement already satisfied: multitasking>=0.0.7 in ./test_foo_fail/lib/python3.9/site-packages (from yfinance<0.1.63->qiskit-aqua==0.9.4->qiskit[nature]) (0.0.9)
Requirement already satisfied: pytz>=2017.3 in ./test_foo_fail/lib/python3.9/site-packages (from pandas->qiskit-aqua==0.9.4->qiskit[nature]) (2021.1)
Requirement already satisfied: inflection>=0.3.1 in ./test_foo_fail/lib/python3.9/site-packages (from quandl->qiskit-aqua==0.9.4->qiskit[nature]) (0.5.1)
Requirement already satisfied: more-itertools in ./test_foo_fail/lib/python3.9/site-packages (from quandl->qiskit-aqua==0.9.4->qiskit[nature]) (8.8.0)

Code of Conduct

Issue Analytics

  • State:open
  • Created 2 years ago
  • Comments:6 (4 by maintainers)

github_iconTop GitHub Comments

2reactions
uranusjrcommented, Aug 27, 2021

Sorry for missing the eager part in the original report. I just tried this, pip actually knows about qiskit-nature, but qiskit 0.29.0 requires _exactly qiskit-nature==0.1.5, so pip correctly ignores 0.2.0.

https://github.com/Qiskit/qiskit/blob/24d3df2d37c09baceb3e99591d2ff53ea6ca59bd/setup.py#L52-L54

So the behaviour is correct, although pip can probably emit some message saying what happened. This is tricky to get right though since most of the time people don’t actually care, and reporting every skipped versions could be too noisy.

1reaction
pfmoorecommented, Aug 27, 2021

Either syntax for --upgrade-strategy should work. This seems to me like it’s a valid report, so I’m going to reopen it. I don’t have time to investigate in any more detail at the moment, unfortunately. One useful next step might be to create a self-contained example using dummy packages that demonstrates the issue with less unnecessary detail - although it’s possible that someone who’s more awake than I am currently will be able to spot the problem from the given example. (IMO, it’s “obviously” related to how extras are handled, but that’s mostly just because extras are a PITA and are the root cause of pretty much everything 😉)

Read more comments on GitHub >

github_iconTop Results From Across the Web

New upgrade-strategy eager-while-respecting-dependencies
Describe the solution you'd like pip install A --upgrade --upgrade-strategy eager-while-respecting-dependencies could solve that, ...
Read more >
Options that control the installation process - PIP documentation
This option controls what other packages can be upgraded: eager - all packages will be upgraded to the latest possible version. It should...
Read more >
pip install latest dependency versions - python - Stack Overflow
Choosing the "eager" option forces installation of the newest available versions of the dependencies: pip install --upgrade --upgrade-strategy ...
Read more >
Some notes on upgrading programs with Python's pip
My primary use of Python's pip package manager is to install programs ... This can be used to switch pip to an "eager"...
Read more >
User Guide — pip 10.0.0.dev0 documentation
Note that you should not rely on the items in the file being installed by pip in any ... of an old version...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found