dependency resolution behaves differently with requirements.txt vs listing on the command-line
See original GitHub issueDescription
When doing pip install -r requirements.txt
the resolver notices a version conflict and fails quickly, whereas listing the same requirements on the command line causes an extended un-resolved backtracking. pip install -r
failed in 20s on my machine, while the pip install
command is still running after an hour so far.
Expected behavior
pip install -r
and pip install
behave the same with respect to the resolver
pip version
21.2.4
Python version
3.9
OS
Mac OS 10.15.6
How to Reproduce
- pip install -r requirements.txt
- pip install ‘numpy>1.18’ -e .
requirements.txt contains:
-e .
numpy>1.19
setup.py contains
from setuptools import setup
setup(
install_requires=[
"configparser>=3.5",
"kafka>=1.3.5; python_version<'3.7'",
"kafka-python>=1.4.3; python_version>='3.7'",
"confluent-kafka[avro]==1.3.0",
"fastavro", # Whatever's needed by confluent-kafka[avro]
'avro-python3==1.9.2.1', # confluent-kafka[avro] defines a dependency on 1.9.2, but only 1.9.2.1 works
"isort>=4",
"scipy>=1.2.1, <=1.4.1; python_version<'3.7'",
"scipy",
"numpy>=1.17; python_version<'3.9'",
"numpy>1.17.2; python_version>='3.9'",
"teamcity-messages>=1.17",
"vertica_python>=0.9.1", # Literally any version since we only need imports to succeed
"mido>=1.2.8",
"requests<=2.23.0", # We've tested with up to 2.23.0, but snowflake-connector-python requires less than that :'(
"python-Levenshtein>=0.12",
"aubio==0.4.9",
"future>=0.17",
"six>=1.11",
"datasketch>=1.5",
"jams>=0.3",
"python-slugify>=3",
],
)
Output
$ pip install -r requirements.txt
Looking in indexes: https://pypi.org/simple, http://sfw.sf.smle.co:8080/sfw/pip
Looking in links: file:///Users/stefansullivan/code/test_pip_resolution.
Obtaining file:///Users/stefansullivan/code/test_pip_resolution (from -r requirements.in (line 3))
Installing build dependencies: started
Installing build dependencies: finished with status 'done'
Getting requirements to build wheel: started
Getting requirements to build wheel: finished with status 'done'
Preparing wheel metadata: started
Preparing wheel metadata: finished with status 'done'
Obtaining file:///<my project dir> (from -r requirements.in (line 4))
Requirement already satisfied: bokeh in /Users/stefansullivan/venvs/mir39/lib/python3.9/site-packages (from -r requirements.in (line 5)) (2.4.0)
Requirement already satisfied: matplotlib in /Users/stefansullivan/venvs/mir39/lib/python3.9/site-packages (from -r requirements.in (line 6)) (3.4.3)
Requirement already satisfied: pandas in /Users/stefansullivan/venvs/mir39/lib/python3.9/site-packages (from -r requirements.in (line 7)) (1.3.3)
Requirement already satisfied: brigit in /Users/stefansullivan/venvs/mir39/lib/python3.9/site-packages (from -r requirements.in (line 8)) (1.3.0)
Requirement already satisfied: tqdm in /Users/stefansullivan/venvs/mir39/lib/python3.9/site-packages (from -r requirements.in (line 9)) (4.62.3)
Requirement already satisfied: numpy>1.18 in /Users/stefansullivan/venvs/mir39/lib/python3.9/site-packages (from -r requirements.in (line 10)) (1.21.2)
Collecting confluent-kafka[avro]==1.3.0
Using cached confluent_kafka-1.3.0-cp39-cp39-macosx_10_15_x86_64.whl
Collecting mido<=1.2.9,>=1.2.8
Downloading http://sfw.sf.smle.co:8080/sfw/pip/mido/mido-1.2.9-py2.py3-none-any.whl (52 kB)
Collecting isort==4.3.21
Downloading http://sfw.sf.smle.co:8080/sfw/pip/isort/isort-4.3.21-py2.py3-none-any.whl (42 kB)
Collecting datasketch==1.5.1
Downloading http://sfw.sf.smle.co:8080/sfw/pip/datasketch/datasketch-1.5.1-py2.py3-none-any.whl (73 kB)
Collecting kafka==1.3.5
Using cached kafka-1.3.5-py2.py3-none-any.whl (207 kB)
Collecting requests<=2.23.0,==2.22.0
Downloading http://sfw.sf.smle.co:8080/sfw/pip/requests/requests-2.22.0-py2.py3-none-any.whl (57 kB)
Collecting jams==0.3.4
Downloading http://sfw.sf.smle.co:8080/sfw/pip/jams/jams-0.3.4-py3-none-any.whl (64 kB)
Collecting avro-python3==1.9.2.1
Downloading http://sfw.sf.smle.co:8080/sfw/pip/avro-python3/avro_python3-1.9.2.1-py3-none-any.whl (43 kB)
Collecting configparser==3.5.0
Using cached configparser-3.5.0-py3-none-any.whl
Collecting scipy<=1.4.1,>=1.2.1
Using cached scipy-1.4.1.tar.gz (24.6 MB)
Installing build dependencies: started
Installing build dependencies: finished with status 'done'
Getting requirements to build wheel: started
Getting requirements to build wheel: finished with status 'done'
Preparing wheel metadata: started
Preparing wheel metadata: finished with status 'done'
Collecting vertica-python<=0.10.2,>=0.9.1
Using cached vertica_python-0.10.2-py2.py3-none-any.whl (152 kB)
Collecting python-Levenshtein==0.12.0
Using cached python_Levenshtein-0.12.0-cp39-cp39-macosx_10_15_x86_64.whl
Collecting aubio==0.4.9
Using cached aubio-0.4.9+smule.1-cp39-cp39-macosx_10_15_x86_64.whl
The conflict is caused by:
The user requested numpy>1.18
unknown 0.1 depends on numpy==1.17.1
To fix this you could try to:
1. loosen the range of package versions you've specified
2. remove package versions to allow pip attempt to solve the dependency conflict
$ pip install 'numpy>1.18' -e .
Looking in indexes: https://pypi.org/simple, http://sfw.sf.smle.co:8080/sfw/pip
Looking in links: .
Obtaining file:///Users/stefansullivan/code/test_pip_resolution
Installing build dependencies: started
Installing build dependencies: finished with status 'done'
Getting requirements to build wheel: started
Getting requirements to build wheel: finished with status 'done'
Preparing wheel metadata: started
Preparing wheel metadata: finished with status 'done'
Obtaining file:///<my project dir>
Requirement already satisfied: bokeh in /Users/stefansullivan/venvs/mir39/lib/python3.9/site-packages (2.4.0)
Requirement already satisfied: matplotlib in /Users/stefansullivan/venvs/mir39/lib/python3.9/site-packages (3.4.3)
Requirement already satisfied: pandas in /Users/stefansullivan/venvs/mir39/lib/python3.9/site-packages (1.3.3)
Requirement already satisfied: brigit in /Users/stefansullivan/venvs/mir39/lib/python3.9/site-packages (1.3.0)
Requirement already satisfied: tqdm in /Users/stefansullivan/venvs/mir39/lib/python3.9/site-packages (4.62.3)
Requirement already satisfied: numpy>1.18 in /Users/stefansullivan/venvs/mir39/lib/python3.9/site-packages (1.21.2)
Requirement already satisfied: pillow>=7.1.0 in /Users/stefansullivan/venvs/mir39/lib/python3.9/site-packages (from bokeh) (8.3.2)
Requirement already satisfied: Jinja2>=2.9 in /Users/stefansullivan/venvs/mir39/lib/python3.9/site-packages (from bokeh) (3.0.1)
Requirement already satisfied: tornado>=5.1 in /Users/stefansullivan/venvs/mir39/lib/python3.9/site-packages (from bokeh) (6.1)
Requirement already satisfied: packaging>=16.8 in /Users/stefansullivan/venvs/mir39/lib/python3.9/site-packages (from bokeh) (21.0)
Requirement already satisfied: PyYAML>=3.10 in /Users/stefansullivan/venvs/mir39/lib/python3.9/site-packages (from bokeh) (5.4.1)
Requirement already satisfied: typing-extensions>=3.10.0 in /Users/stefansullivan/venvs/mir39/lib/python3.9/site-packages (from bokeh) (3.10.0.2)
Requirement already satisfied: kiwisolver>=1.0.1 in /Users/stefansullivan/venvs/mir39/lib/python3.9/site-packages (from matplotlib) (1.3.2)
Requirement already satisfied: python-dateutil>=2.7 in /Users/stefansullivan/venvs/mir39/lib/python3.9/site-packages (from matplotlib) (2.8.2)
Requirement already satisfied: pyparsing>=2.2.1 in /Users/stefansullivan/venvs/mir39/lib/python3.9/site-packages (from matplotlib) (2.4.7)
Requirement already satisfied: cycler>=0.10 in /Users/stefansullivan/venvs/mir39/lib/python3.9/site-packages (from matplotlib) (0.10.0)
Requirement already satisfied: pytz>=2017.3 in /Users/stefansullivan/venvs/mir39/lib/python3.9/site-packages (from pandas) (2021.1)
Requirement already satisfied: log-colorizer in /Users/stefansullivan/venvs/mir39/lib/python3.9/site-packages (from brigit) (1.8.6)
Collecting configparser==3.5.0
Using cached configparser-3.5.0-py3-none-any.whl
Collecting datasketch==1.5.1
Downloading http://sfw.sf.smle.co:8080/sfw/pip/datasketch/datasketch-1.5.1-py2.py3-none-any.whl (73 kB)
Collecting teamcity-messages==1.17
Using cached teamcity_messages-1.17-py3-none-any.whl
Collecting requests<=2.23.0,==2.22.0
Downloading http://sfw.sf.smle.co:8080/sfw/pip/requests/requests-2.22.0-py2.py3-none-any.whl (57 kB)
Collecting isort==4.3.21
Downloading http://sfw.sf.smle.co:8080/sfw/pip/isort/isort-4.3.21-py2.py3-none-any.whl (42 kB)
Collecting six<=1.14.0,>=1.11.0
Using cached six-1.14.0-py2.py3-none-any.whl (10 kB)
INFO: pip is looking at multiple versions of numpy to determine which version is compatible with other requirements. This could take a while.
Collecting numpy>1.18
Using cached numpy-1.21.2-cp39-cp39-macosx_10_9_x86_64.whl (17.0 MB)
INFO: pip is looking at multiple versions of <Python from Requires-Python> to determine which version is compatible with other requirements. This could take a while.
Using cached numpy-1.21.1-cp39-cp39-macosx_10_9_x86_64.whl (17.0 MB)
Using cached numpy-1.21.0-cp39-cp39-macosx_10_9_x86_64.whl (16.9 MB)
Using cached numpy-1.20.3-cp39-cp39-macosx_10_9_x86_64.whl (16.1 MB)
Using cached numpy-1.20.2-cp39-cp39-macosx_10_9_x86_64.whl (16.1 MB)
Using cached numpy-1.20.1-cp39-cp39-macosx_10_9_x86_64.whl (16.1 MB)
Using cached numpy-1.20.0-cp39-cp39-macosx_10_9_x86_64.whl (16.1 MB)
INFO: pip is looking at multiple versions of numpy to determine which version is compatible with other requirements. This could take a while.
Using cached numpy-1.19.5-cp39-cp39-macosx_10_9_x86_64.whl (15.6 MB)
INFO: pip is looking at multiple versions of <Python from Requires-Python> to determine which version is compatible with other requirements. This could take a while.
Using cached numpy-1.19.4-cp39-cp39-macosx_10_9_x86_64.whl (15.4 MB)
Using cached numpy-1.19.3-cp39-cp39-macosx_10_9_x86_64.whl (15.9 MB)
Using cached numpy-1.19.2.zip (7.3 MB)
Installing build dependencies: started
Installing build dependencies: finished with status 'done'
Getting requirements to build wheel: started
Getting requirements to build wheel: finished with status 'done'
Preparing wheel metadata: started
Preparing wheel metadata: finished with status 'done'
Using cached numpy-1.19.1.zip (7.3 MB)
Installing build dependencies: started
Installing build dependencies: finished with status 'done'
Getting requirements to build wheel: started
Getting requirements to build wheel: finished with status 'done'
Preparing wheel metadata: started
Preparing wheel metadata: finished with status 'done'
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. If you want to abort this run, you can press Ctrl + C to do so. To improve how pip performs, tell us what happened here: https://pip.pypa.io/surveys/backtracking
Using cached numpy-1.19.0.zip (7.3 MB)
Installing build dependencies: started
Installing build dependencies: finished with status 'done'
Getting requirements to build wheel: started
Getting requirements to build wheel: finished with status 'done'
Preparing wheel metadata: started
Preparing wheel metadata: finished with status 'done'
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. If you want to abort this run, you can press Ctrl + C to do so. To improve how pip performs, tell us what happened here: https://pip.pypa.io/surveys/backtracking
Using cached numpy-1.18.5.zip (5.4 MB)
Installing build dependencies: started
Installing build dependencies: finished with status 'done'
Getting requirements to build wheel: started
Getting requirements to build wheel: finished with status 'done'
Preparing wheel metadata: started
Preparing wheel metadata: finished with status 'done'
Using cached numpy-1.18.4.zip (5.4 MB)
Installing build dependencies: started
Installing build dependencies: finished with status 'done'
Getting requirements to build wheel: started
Getting requirements to build wheel: finished with status 'done'
Preparing wheel metadata: started
Preparing wheel metadata: finished with status 'done'
Using cached numpy-1.18.3.zip (5.4 MB)
Installing build dependencies: started
Installing build dependencies: finished with status 'done'
Getting requirements to build wheel: started
Getting requirements to build wheel: finished with status 'done'
Preparing wheel metadata: started
Preparing wheel metadata: finished with status 'done'
Using cached numpy-1.18.2.zip (5.4 MB)
Installing build dependencies: started
Installing build dependencies: finished with status 'done'
Getting requirements to build wheel: started
Getting requirements to build wheel: finished with status 'done'
Preparing wheel metadata: started
Preparing wheel metadata: finished with status 'done'
Using cached numpy-1.18.1.zip (5.4 MB)
Installing build dependencies: started
Installing build dependencies: finished with status 'done'
Getting requirements to build wheel: started
Getting requirements to build wheel: finished with status 'done'
Preparing wheel metadata: started
Preparing wheel metadata: finished with status 'done'
INFO: pip is looking at multiple versions of tqdm to determine which version is compatible with other requirements. This could take a while.
Collecting tqdm
Using cached tqdm-4.62.3-py2.py3-none-any.whl (76 kB)
Using cached tqdm-4.62.2-py2.py3-none-any.whl (76 kB)
Using cached tqdm-4.62.1-py2.py3-none-any.whl (76 kB)
Using cached tqdm-4.62.0-py2.py3-none-any.whl (76 kB)
Using cached tqdm-4.61.2-py2.py3-none-any.whl (76 kB)
Using cached tqdm-4.61.1-py2.py3-none-any.whl (75 kB)
Using cached tqdm-4.61.0-py2.py3-none-any.whl (75 kB)
INFO: pip is looking at multiple versions of tqdm to determine which version is compatible with other requirements. This could take a while.
Using cached tqdm-4.60.0-py2.py3-none-any.whl (75 kB)
Using cached tqdm-4.59.0-py2.py3-none-any.whl (74 kB)
Using cached tqdm-4.58.0-py2.py3-none-any.whl (73 kB)
Using cached tqdm-4.57.0-py2.py3-none-any.whl (72 kB)
Using cached tqdm-4.56.2-py2.py3-none-any.whl (72 kB)
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. If you want to abort this run, you can press Ctrl + C to do so. To improve how pip performs, tell us what happened here: https://pip.pypa.io/surveys/backtracking
Using cached tqdm-4.56.1-py2.py3-none-any.whl (72 kB)
Using cached tqdm-4.56.0-py2.py3-none-any.whl (72 kB)
Using cached tqdm-4.55.2-py2.py3-none-any.whl (68 kB)
Using cached tqdm-4.55.1-py2.py3-none-any.whl (68 kB)
Using cached tqdm-4.55.0-py2.py3-none-any.whl (68 kB)
Using cached tqdm-4.54.1-py2.py3-none-any.whl (69 kB)
Using cached tqdm-4.54.0-py2.py3-none-any.whl (69 kB)
Using cached tqdm-4.53.0-py2.py3-none-any.whl (70 kB)
Using cached tqdm-4.52.0-py2.py3-none-any.whl (71 kB)
Using cached tqdm-4.51.0-py2.py3-none-any.whl (70 kB)
Using cached tqdm-4.50.2-py2.py3-none-any.whl (70 kB)
Using cached tqdm-4.50.1-py2.py3-none-any.whl (70 kB)
Using cached tqdm-4.50.0-py2.py3-none-any.whl (70 kB)
Using cached tqdm-4.49.0-py2.py3-none-any.whl (69 kB)
Using cached tqdm-4.48.2-py2.py3-none-any.whl (68 kB)
Using cached tqdm-4.48.1-py2.py3-none-any.whl (68 kB)
Using cached tqdm-4.48.0-py2.py3-none-any.whl (67 kB)
Using cached tqdm-4.47.0-py2.py3-none-any.whl (66 kB)
Using cached tqdm-4.46.1-py2.py3-none-any.whl (63 kB)
Using cached tqdm-4.46.0-py2.py3-none-any.whl (63 kB)
Using cached tqdm-4.45.0-py2.py3-none-any.whl (60 kB)
Using cached tqdm-4.44.1-py2.py3-none-any.whl (60 kB)
Using cached tqdm-4.44.0-py2.py3-none-any.whl (60 kB)
Using cached tqdm-4.43.0-py2.py3-none-any.whl (59 kB)
Using cached tqdm-4.42.1-py2.py3-none-any.whl (59 kB)
Using cached tqdm-4.42.0-py2.py3-none-any.whl (59 kB)
Using cached tqdm-4.41.1-py2.py3-none-any.whl (56 kB)
Using cached tqdm-4.41.0-py2.py3-none-any.whl (56 kB)
Using cached tqdm-4.40.2-py2.py3-none-any.whl (55 kB)
Using cached tqdm-4.40.1-py2.py3-none-any.whl (55 kB)
Using cached tqdm-4.40.0-py2.py3-none-any.whl (54 kB)
Using cached tqdm-4.39.0-py2.py3-none-any.whl (53 kB)
Using cached tqdm-4.38.0-py2.py3-none-any.whl (53 kB)
Using cached tqdm-4.37.0-py2.py3-none-any.whl (53 kB)
Using cached tqdm-4.36.1-py2.py3-none-any.whl (52 kB)
Using cached tqdm-4.36.0-py2.py3-none-any.whl (52 kB)
Using cached tqdm-4.35.0-py2.py3-none-any.whl (50 kB)
Using cached tqdm-4.34.0-py2.py3-none-any.whl (50 kB)
Using cached tqdm-4.33.0-py2.py3-none-any.whl (50 kB)
Using cached tqdm-4.32.2-py2.py3-none-any.whl (50 kB)
Using cached tqdm-4.32.1-py2.py3-none-any.whl (49 kB)
Using cached tqdm-4.32.0-py2.py3-none-any.whl (49 kB)
Using cached tqdm-4.31.1-py2.py3-none-any.whl (48 kB)
Using cached tqdm-4.31.0-py2.py3-none-any.whl (48 kB)
Using cached tqdm-4.30.0-py2.py3-none-any.whl (47 kB)
Using cached tqdm-4.29.1-py2.py3-none-any.whl (46 kB)
Using cached tqdm-4.29.0-py2.py3-none-any.whl (46 kB)
Using cached tqdm-4.28.1-py2.py3-none-any.whl (45 kB)
Using cached tqdm-4.28.0-py2.py3-none-any.whl (43 kB)
Using cached tqdm-4.27.0-py2.py3-none-any.whl (44 kB)
Using cached tqdm-4.26.0-py2.py3-none-any.whl (43 kB)
Using cached tqdm-4.25.0-py2.py3-none-any.whl (43 kB)
Using cached tqdm-4.24.0-py2.py3-none-any.whl (43 kB)
Using cached tqdm-4.23.4-py2.py3-none-any.whl (42 kB)
Using cached tqdm-4.23.3-py2.py3-none-any.whl (42 kB)
Using cached tqdm-4.23.2-py2.py3-none-any.whl (42 kB)
Using cached tqdm-4.23.1-py2.py3-none-any.whl (42 kB)
Using cached tqdm-4.23.0-py2.py3-none-any.whl (42 kB)
Using cached tqdm-4.22.0-py2.py3-none-any.whl (42 kB)
Using cached tqdm-4.21.0-py2.py3-none-any.whl (42 kB)
Using cached tqdm-4.20.0-py2.py3-none-any.whl (41 kB)
Using cached tqdm-4.19.9-py2.py3-none-any.whl (52 kB)
Using cached tqdm-4.19.8-py2.py3-none-any.whl (52 kB)
Using cached tqdm-4.19.7-py2.py3-none-any.whl (52 kB)
Using cached tqdm-4.19.6-py2.py3-none-any.whl (52 kB)
Using cached tqdm-4.19.5-py2.py3-none-any.whl (51 kB)
Using cached tqdm-4.19.4-py2.py3-none-any.whl (50 kB)
Using cached tqdm-4.19.2-py2.py3-none-any.whl (50 kB)
Using cached tqdm-4.19.1.post1-py2.py3-none-any.whl (51 kB)
Using cached tqdm-4.19.1-py2.py3-none-any.whl (50 kB)
Using cached tqdm-4.18.0-py2.py3-none-any.whl (48 kB)
Using cached tqdm-4.17.1-py2.py3-none-any.whl (47 kB)
Using cached tqdm-4.17.0-py2.py3-none-any.whl (47 kB)
Using cached tqdm-4.16.0-py2.py3-none-any.whl (47 kB)
Using cached tqdm-4.15.0-py2.py3-none-any.whl (46 kB)
Using cached tqdm-4.14.0-py2.py3-none-any.whl (46 kB)
Using cached tqdm-4.13.0-py2.py3-none-any.whl (46 kB)
Using cached tqdm-4.12.0-py2.py3-none-any.whl (46 kB)
Using cached tqdm-4.11.2-py2.py3-none-any.whl (46 kB)
Using cached tqdm-4.11.1-py2.py3-none-any.whl (45 kB)
Using cached tqdm-4.11.0-py2.py3-none-any.whl (45 kB)
Using cached tqdm-4.10.0-py2.py3-none-any.whl (43 kB)
Using cached tqdm-4.9.0-py2.py3-none-any.whl (42 kB)
Using cached tqdm-4.8.4-py2.py3-none-any.whl (39 kB)
Using cached tqdm-4.8.3-py2.py3-none-any.whl (42 kB)
Using cached tqdm-4.8.2-py2.py3-none-any.whl (42 kB)
Using cached tqdm-4.8.1-py2.py3-none-any.whl (42 kB)
Using cached tqdm-4.7.6-py2.py3-none-any.whl (40 kB)
Using cached tqdm-4.7.4-py2.py3-none-any.whl (40 kB)
Using cached tqdm-4.7.2-py2.py3-none-any.whl (40 kB)
Using cached tqdm-4.7.1-py2.py3-none-any.whl (39 kB)
Using cached tqdm-4.7.0-py2.py3-none-any.whl (39 kB)
Using cached tqdm-4.6.2-py2.py3-none-any.whl (38 kB)
Using cached tqdm-4.6.1-py2.py3-none-any.whl (38 kB)
Using cached tqdm-4.5.2-py2.py3-none-any.whl (34 kB)
Using cached tqdm-4.5.0-py2.py3-none-any.whl (34 kB)
Using cached tqdm-4.4.3-py2.py3-none-any.whl (33 kB)
Using cached tqdm-4.4.1-py2.py3-none-any.whl (32 kB)
Using cached tqdm-4.4.0-py2.py3-none-any.whl (32 kB)
Using cached tqdm-4.1.0-py2.py3-none-any.whl (29 kB)
Using cached tqdm-3.8.0-py2.py3-none-any.whl (28 kB)
Using cached tqdm-3.7.1-py2.py3-none-any.whl (28 kB)
Using cached tqdm-3.7.0-py2.py3-none-any.whl (28 kB)
Using cached tqdm-3.4.0-py2.py3-none-any.whl (26 kB)
Using cached tqdm-3.1.4-py2.py3-none-any.whl (19 kB)
Using cached tqdm-3.1.3-py2.py3-none-any.whl (19 kB)
Using cached tqdm-2.2.4-py2.py3-none-any.whl (17 kB)
Using cached tqdm-2.2.3-py2.py3-none-any.whl (17 kB)
Using cached tqdm-2.0.0-py2.py3-none-any.whl (16 kB)
Using cached tqdm-1.0.tar.gz (1.8 kB)
INFO: pip is looking at multiple versions of brigit to determine which version is compatible with other requirements. This could take a while.
Collecting brigit
Downloading http://sfw.sf.smle.co:8080/sfw/pip/brigit/brigit-1.3.0-py2.py3-none-any.whl (8.6 kB)
Using cached brigit-1.2.tar.gz (2.5 kB)
Using cached brigit-1.1.tar.gz (2.5 kB)
Using cached brigit-1.0.tar.gz (2.5 kB)
INFO: pip is looking at multiple versions of pandas to determine which version is compatible with other requirements. This could take a while.
Collecting pandas
Using cached pandas-1.3.3-cp39-cp39-macosx_10_9_x86_64.whl (11.6 MB)
INFO: pip is looking at multiple versions of brigit to determine which version is compatible with other requirements. This could take a while.
Using cached pandas-1.3.2-cp39-cp39-macosx_10_9_x86_64.whl (11.6 MB)
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. If you want to abort this run, you can press Ctrl + C to do so. To improve how pip performs, tell us what happened here: https://pip.pypa.io/surveys/backtracking
Using cached pandas-1.3.1-cp39-cp39-macosx_10_9_x86_64.whl (11.3 MB)
Using cached pandas-1.3.0-cp39-cp39-macosx_10_9_x86_64.whl (11.6 MB)
Using cached pandas-1.2.5-cp39-cp39-macosx_10_9_x86_64.whl (10.7 MB)
Using cached pandas-1.2.4-cp39-cp39-macosx_10_9_x86_64.whl (10.7 MB)
Using cached pandas-1.2.3-cp39-cp39-macosx_10_9_x86_64.whl (10.7 MB)
INFO: pip is looking at multiple versions of pandas to determine which version is compatible with other requirements. This could take a while.
Using cached pandas-1.2.2-cp39-cp39-macosx_10_9_x86_64.whl (10.7 MB)
Using cached pandas-1.2.1-cp39-cp39-macosx_10_9_x86_64.whl (10.7 MB)
Using cached pandas-1.2.0-cp39-cp39-macosx_10_9_x86_64.whl (10.7 MB)
Using cached pandas-1.1.5-cp39-cp39-macosx_10_9_x86_64.whl (10.3 MB)
Using cached pandas-1.1.4-cp39-cp39-macosx_10_9_x86_64.whl (10.3 MB)
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. If you want to abort this run, you can press Ctrl + C to do so. To improve how pip performs, tell us what happened here: https://pip.pypa.io/surveys/backtracking
Using cached pandas-1.1.3-cp39-cp39-macosx_10_9_x86_64.whl (10.3 MB)
Using cached pandas-1.1.2.tar.gz (5.2 MB)
Installing build dependencies: started
Installing build dependencies: finished with status 'done'
Getting requirements to build wheel: started
Getting requirements to build wheel: finished with status 'done'
Preparing wheel metadata: started
Preparing wheel metadata: finished with status 'done'
Using cached pandas-1.1.1.tar.gz (5.2 MB)
Installing build dependencies: started
Installing build dependencies: finished with status 'done'
Getting requirements to build wheel: started
Getting requirements to build wheel: finished with status 'done'
Preparing wheel metadata: started
Preparing wheel metadata: finished with status 'done'
Using cached pandas-1.1.0.tar.gz (5.2 MB)
Installing build dependencies: started
Installing build dependencies: finished with status 'done'
Getting requirements to build wheel: started
Getting requirements to build wheel: finished with status 'done'
Preparing wheel metadata: started
Preparing wheel metadata: finished with status 'done'
Using cached pandas-1.0.5.tar.gz (5.0 MB)
Installing build dependencies: started
Installing build dependencies: finished with status 'done'
Getting requirements to build wheel: started
Getting requirements to build wheel: finished with status 'done'
Preparing wheel metadata: started
Preparing wheel metadata: finished with status 'done'
Using cached pandas-1.0.4.tar.gz (5.0 MB)
Installing build dependencies: started
Installing build dependencies: still running...
Installing build dependencies: still running...
Installing build dependencies: finished with status 'error'
Using cached pandas-1.0.3.tar.gz (5.0 MB)
Installing build dependencies: started
Installing build dependencies: still running...
Installing build dependencies: still running...
Installing build dependencies: finished with status 'error'
Using cached pandas-1.0.2.tar.gz (5.0 MB)
Installing build dependencies: started
Installing build dependencies: still running...
Installing build dependencies: still running...
Installing build dependencies: finished with status 'error'
Using cached pandas-1.0.1.tar.gz (4.9 MB)
Installing build dependencies: started
Installing build dependencies: still running...
Installing build dependencies: still running...
Installing build dependencies: finished with status 'error'
Using cached pandas-1.0.0.tar.gz (4.8 MB)
Installing build dependencies: started
Installing build dependencies: still running...
Installing build dependencies: still running...
Installing build dependencies: finished with status 'error'
Using cached pandas-0.25.3.tar.gz (12.6 MB)
Using cached pandas-0.25.2.tar.gz (12.6 MB)
Using cached pandas-0.25.1.tar.gz (12.6 MB)
Using cached pandas-0.25.0.tar.gz (12.6 MB)
Using cached pandas-0.24.2.tar.gz (11.8 MB)
Using cached pandas-0.24.1.tar.gz (11.8 MB)
Using cached pandas-0.24.0.tar.gz (11.8 MB)
Using cached pandas-0.23.4.tar.gz (10.5 MB)
Using cached pandas-0.23.3.tar.gz (10.5 MB)
Using cached pandas-0.23.2.tar.gz (10.0 MB)
Using cached pandas-0.23.1.tar.gz (13.1 MB)
Using cached pandas-0.23.0.tar.gz (13.1 MB)
Using cached pandas-0.22.0.tar.gz (11.3 MB)
Installing build dependencies: started
Installing build dependencies: still running...
Installing build dependencies: finished with status 'error'
Using cached pandas-0.21.1.tar.gz (11.3 MB)
Installing build dependencies: started
Installing build dependencies: still running...
Installing build dependencies: finished with status 'error'
Using cached pandas-0.21.0.tar.gz (11.3 MB)
Installing build dependencies: started
Installing build dependencies: still running...
Installing build dependencies: finished with status 'error'
Using cached pandas-0.20.3.tar.gz (10.4 MB)
Using cached pandas-0.20.2.tar.gz (10.3 MB)
Using cached pandas-0.20.1.tar.gz (10.3 MB)
Using cached pandas-0.20.0.tar.gz (10.3 MB)
Using cached pandas-0.19.2.tar.gz (9.2 MB)
Code of Conduct
- I agree to follow the PSF Code of Conduct.
Issue Analytics
- State:
- Created 2 years ago
- Comments:15 (8 by maintainers)
Top Results From Across the Web
Better Python dependency while packaging your project
txt will result in different packages being installed every time, then new versions of sub-dependencies will be released. Pip doesn't have dependency resolution...
Read more >Dependency Resolution - pip documentation v22.3.1
The process of determining which version of a dependency to install is known as dependency resolution. This behaviour can be disabled by passing...
Read more >Commands | Documentation | Poetry - Python dependency ...
Options # · --without : The dependency groups to ignore. · --why : When showing the full list, or a --tree for a...
Read more >python - requirements.txt vs setup.py - Stack Overflow
txt or dependencies -dev.txt . Those serve the same purpose as dependencies.txt but generally list additional dependencies of interest to developers of the ......
Read more >Pipenv: A Guide to the New Python Packaging Tool
Dependency Management with requirements.txt; Development of Projects with Different ... A very common tool for this is virtualenv (or venv in Python 3)....
Read more >Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start FreeTop Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
Top GitHub Comments
Personally, I feel that any attempt to preserve the order of normal requirements and
-e
is problematic. The logic of “options and positional arguments are independent” is common, and I’m concerned that not following that will be confusing for users. Furthermore, we have a long-outstanding intention to switch our option parsing from optparse to “something more modern” (probably click) and when we do that, I’d rather not have non-standard semantics that could potentially be difficult to port to a new library.But I’m happy to hear what the other pip developers say here - I don’t have a strong opinion, so if someone else does, I’ll defer to them.
Relying on callbacks has an additional issue of relying on the argument parsing library calling them sequentially. I don’t think either
optparse
orargparse
guarantees that, and it’s not unimaginable for either of them to implement some sort of optimisation that breaks this. So assuming we don’t do manualsys.argv
parsing (it seems like the case), this is probably not possible unless we switch to a parsing library that natively guarantees to preserve argument ordering.