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

Lost in backtracking: backtracking does not finish successfully #10965

Closed
1 task done
tstadel opened this issue Mar 15, 2022 · 1 comment
Closed
1 task done

Lost in backtracking: backtracking does not finish successfully #10965

tstadel opened this issue Mar 15, 2022 · 1 comment
Labels
type: bug A confirmed bug or unintended behavior

Comments

@tstadel
Copy link

tstadel commented Mar 15, 2022

Description

pip gets completely lost during backtracking when installing farm-haystack[dev]==1.2.0. Depending on which compiler tooling you have installed one of the following will happen:

  • pip install crashes due to a missing compiler tool (e.g. cmake or protoc) which are required by very old versions of backtracked dependencies
  • pip seems to never finish backtracking

This started about a week after releasing version 1.2.0 of farm-haystack because a subdependency named azure-core got a new version (1.23) which resulted in a overall dependency conflict of package typing-extensions.

Analyzing this we had a very bad experience. Currently in pip there is no way to see which conflict causes this problem. Only digging through pip issues and finding the branch of #10258 helped us solve this. The output of pip on this branch showed us:

The conflict is caused by:
    torch 1.10.2 depends on typing-extensions
    farm-haystack[crawler,dev,docstores,ocr,onnx,preprocessing,ray] 1.2.0 depends on typing-extensions; python_version < "3.8" and extra == "dev"
    importlib-metadata 4.11.2 depends on typing-extensions>=3.6.4; python_version < "3.8"
    pydantic 1.9.0 depends on typing-extensions>=3.7.4.3
    azure-core 1.23.0 depends on typing-extensions>=4.0.1
    gitpython 3.1.27 depends on typing-extensions>=3.7.4.3; python_version < "3.8"
    huggingface-hub 0.4.0 depends on typing-extensions>=3.7.4.3
    black[jupyter] 22.1.0 depends on typing-extensions>=3.10.0.0; python_version < "3.10"
    mypy 0.931 depends on typing-extensions>=3.10
    pylint 2.12.2 depends on typing-extensions>=3.10.0; python_version < "3.10"
    astroid 2.9.3 depends on typing-extensions>=3.10; python_version < "3.10"
    nr-util 0.8.4 depends on typing-extensions>=3.0.0
    black 22.1.0 depends on typing-extensions>=3.10.0.0; python_version < "3.10"
    jsonschema 4.4.0 depends on typing-extensions; python_version < "3.8"
    onnx 1.11.0 depends on typing-extensions>=3.6.2.1
    databind-core 1.5.1 depends on typing-extensions<4.0.0 and >=3.10.0

Further analyzing with pipdeptree showed us which direct dependencies of farm-haystack caused this conflict:

pydoc-markdown==4.6.1
  - click [required: >=7.1,<9.0, installed: 8.0.4]
  - databind [required: >=1.5.0,<2.0.0, installed: 1.5.1]
    - databind.core [required: >=1.5.1,<2.0.0, installed: 1.5.1]
azure-ai-formrecognizer [required: ==3.2.0b2, installed: 3.2.0b2]
  - azure-core [required: >=1.13.0,<2.0.0, installed: 1.22.1]
      - requests [required: >=2.18.4, installed: 2.27.1]
        - certifi [required: >=2017.4.17, installed: 2021.10.8]
        - charset-normalizer [required: ~=2.0.0, installed: 2.0.12]
        - idna [required: >=2.5,<4, installed: 3.3]
        - urllib3 [required: >=1.21.1,<1.27, installed: 1.26.8]
      - six [required: >=1.11.0, installed: 1.16.0]

So we have two direct dependencies pydoc-markdown and azure-ai-formrecognizer which have different subdependencies databind.core and azure-core which itself need a conflicting version of typing-extensions.
Version 1.23.0 of azure-core introduced the dependency of typing-extensions>=4.0.1 and thus the conflict.

Solving this would be as easy as restricting azure-core<1.23 but analyzing without the branch would have taken hours if not days.

See respecting haystack issue.

Expected behavior

At least there should be transparency about which conflict started backtracking like in #10258 or #10937. Additionally the backtracking approach of depth-first search seems to be suboptimal in certain situations. Given this situation in which an unpinned subdependency releases a new version which introduces a new dependency conflict might not be too uncommon. So I wonder whether breath-first search would be more suitable or freshness of package versions in general should have an impact on deciding where to backtrack next.

pip version

22.0.4

Python version

">=3.7"

OS

ubuntu, windows, (any?)

How to Reproduce

Try https://colab.research.google.com/drive/1UtUDxBRZcaGLMFs7Nh23JRXl_f_50VwW?usp=sharing or

!pip install --upgrade pip
!pip install farm-haystack[dev]==1.2.0

Output

Checkout https://colab.research.google.com/drive/1UtUDxBRZcaGLMFs7Nh23JRXl_f_50VwW?usp=sharing for full output (it still seems to be backtracking) or

Collecting farm-haystack[dev]==1.2.0
  Using cached farm_haystack-1.2.0-py3-none-any.whl (430 kB)
Requirement already satisfied: requests in /usr/local/lib/python3.7/dist-packages (from farm-haystack[dev]==1.2.0) (2.23.0)
Requirement already satisfied: nltk in /usr/local/lib/python3.7/dist-packages (from farm-haystack[dev]==1.2.0) (3.2.5)
Collecting elasticsearch<=7.10,>=7.7
  Using cached elasticsearch-7.10.0-py2.py3-none-any.whl (321 kB)
Requirement already satisfied: scipy>=1.3.2 in /usr/local/lib/python3.7/dist-packages (from farm-haystack[dev]==1.2.0) (1.4.1)
Collecting transformers==4.13.0
  Using cached transformers-4.13.0-py3-none-any.whl (3.3 MB)
Requirement already satisfied: tqdm in /usr/local/lib/python3.7/dist-packages (from farm-haystack[dev]==1.2.0) (4.63.0)
Requirement already satisfied: dill in /usr/local/lib/python3.7/dist-packages (from farm-haystack[dev]==1.2.0) (0.3.4)
Collecting tika
  Using cached tika-1.24.tar.gz (28 kB)
  Preparing metadata (setup.py) ... done
Requirement already satisfied: torch<1.11,>1.9 in /usr/local/lib/python3.7/dist-packages (from farm-haystack[dev]==1.2.0) (1.10.0+cu111)
Collecting quantulum3
  Using cached quantulum3-0.7.10-py3-none-any.whl (10.7 MB)
Requirement already satisfied: networkx in /usr/local/lib/python3.7/dist-packages (from farm-haystack[dev]==1.2.0) (2.6.3)
Collecting elastic-apm
  Using cached elastic_apm-6.8.1-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (359 kB)
Requirement already satisfied: more-itertools in /usr/local/lib/python3.7/dist-packages (from farm-haystack[dev]==1.2.0) (8.12.0)
Collecting langdetect
  Using cached langdetect-1.0.9.tar.gz (981 kB)
  Preparing metadata (setup.py) ... done
Collecting mlflow<=1.13.1
  Using cached mlflow-1.13.1-py3-none-any.whl (14.1 MB)
Collecting pydantic
  Using cached pydantic-1.9.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (10.9 MB)
Requirement already satisfied: importlib-metadata in /usr/local/lib/python3.7/dist-packages (from farm-haystack[dev]==1.2.0) (4.11.2)
Requirement already satisfied: scikit-learn>=1.0.0 in /usr/local/lib/python3.7/dist-packages (from farm-haystack[dev]==1.2.0) (1.0.2)
Requirement already satisfied: pandas in /usr/local/lib/python3.7/dist-packages (from farm-haystack[dev]==1.2.0) (1.3.5)
Collecting azure-ai-formrecognizer==3.2.0b2
  Using cached azure_ai_formrecognizer-3.2.0b2-py2.py3-none-any.whl (219 kB)
Collecting python-docx
  Using cached python-docx-0.8.11.tar.gz (5.6 MB)
  Preparing metadata (setup.py) ... done
Collecting sentence-transformers>=0.4.0
  Using cached sentence-transformers-2.2.0.tar.gz (79 kB)
  Preparing metadata (setup.py) ... done
Collecting mmh3
  Using cached mmh3-3.0.0-cp37-cp37m-manylinux2010_x86_64.whl (50 kB)
Collecting seqeval
  Using cached seqeval-1.2.2.tar.gz (43 kB)
  Preparing metadata (setup.py) ... done
Requirement already satisfied: pytest in /usr/local/lib/python3.7/dist-packages (from farm-haystack[dev]==1.2.0) (3.6.4)
Requirement already satisfied: coverage in /usr/local/lib/python3.7/dist-packages (from farm-haystack[dev]==1.2.0) (3.7.1)
Collecting black[jupyter]
  Using cached black-22.1.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.4 MB)
Requirement already satisfied: psutil in /usr/local/lib/python3.7/dist-packages (from farm-haystack[dev]==1.2.0) (5.4.8)
Collecting responses
  Using cached responses-0.19.0-py3-none-any.whl (41 kB)
Collecting pylint
  Using cached pylint-2.12.2-py3-none-any.whl (414 kB)
Collecting python-multipart
  Using cached python-multipart-0.0.5.tar.gz (32 kB)
  Preparing metadata (setup.py) ... done
Collecting pydoc-markdown<5,>=4
  Using cached pydoc_markdown-4.6.3-py3-none-any.whl (64 kB)
Requirement already satisfied: typing-extensions in /usr/local/lib/python3.7/dist-packages (from farm-haystack[dev]==1.2.0) (3.10.0.2)
Collecting mkdocs
  Using cached mkdocs-1.2.3-py3-none-any.whl (6.4 MB)
Collecting jupytercontrib
  Using cached jupytercontrib-0.0.7-py2.py3-none-any.whl (8.8 kB)
Collecting mypy
  Using cached mypy-0.941-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (14.4 MB)
Collecting watchdog
  Using cached watchdog-2.1.6-py3-none-manylinux2014_x86_64.whl (76 kB)
Collecting tox
  Using cached tox-3.24.5-py2.py3-none-any.whl (85 kB)
Collecting azure-core<2.0.0,>=1.13.0
  Using cached azure_core-1.23.0-py3-none-any.whl (179 kB)
Requirement already satisfied: six>=1.11.0 in /usr/local/lib/python3.7/dist-packages (from azure-ai-formrecognizer==3.2.0b2->farm-haystack[dev]==1.2.0) (1.15.0)
Collecting azure-common~=1.1
  Using cached azure_common-1.1.28-py2.py3-none-any.whl (14 kB)
Collecting msrest>=0.6.21
  Using cached msrest-0.6.21-py2.py3-none-any.whl (85 kB)
Requirement already satisfied: regex!=2019.12.17 in /usr/local/lib/python3.7/dist-packages (from transformers==4.13.0->farm-haystack[dev]==1.2.0) (2019.12.20)
Collecting pyyaml>=5.1
  Using cached PyYAML-6.0-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (596 kB)
Collecting tokenizers<0.11,>=0.10.1
  Using cached tokenizers-0.10.3-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (3.3 MB)
Requirement already satisfied: numpy>=1.17 in /usr/local/lib/python3.7/dist-packages (from transformers==4.13.0->farm-haystack[dev]==1.2.0) (1.21.5)
Requirement already satisfied: packaging>=20.0 in /usr/local/lib/python3.7/dist-packages (from transformers==4.13.0->farm-haystack[dev]==1.2.0) (21.3)
Collecting huggingface-hub<1.0,>=0.1.0
  Using cached huggingface_hub-0.4.0-py3-none-any.whl (67 kB)
Requirement already satisfied: filelock in /usr/local/lib/python3.7/dist-packages (from transformers==4.13.0->farm-haystack[dev]==1.2.0) (3.6.0)
Collecting sacremoses
  Using cached sacremoses-0.0.47-py2.py3-none-any.whl (895 kB)
Requirement already satisfied: certifi in /usr/local/lib/python3.7/dist-packages (from elasticsearch<=7.10,>=7.7->farm-haystack[dev]==1.2.0) (2021.10.8)
Requirement already satisfied: urllib3<2,>=1.21.1 in /usr/local/lib/python3.7/dist-packages (from elasticsearch<=7.10,>=7.7->farm-haystack[dev]==1.2.0) (1.24.3)
Requirement already satisfied: cloudpickle in /usr/local/lib/python3.7/dist-packages (from mlflow<=1.13.1->farm-haystack[dev]==1.2.0) (1.3.0)
Requirement already satisfied: click>=7.0 in /usr/local/lib/python3.7/dist-packages (from mlflow<=1.13.1->farm-haystack[dev]==1.2.0) (7.1.2)
Collecting querystring-parser
  Using cached querystring_parser-1.2.4-py2.py3-none-any.whl (7.9 kB)
Requirement already satisfied: Flask in /usr/local/lib/python3.7/dist-packages (from mlflow<=1.13.1->farm-haystack[dev]==1.2.0) (1.1.4)
Requirement already satisfied: protobuf>=3.6.0 in /usr/local/lib/python3.7/dist-packages (from mlflow<=1.13.1->farm-haystack[dev]==1.2.0) (3.17.3)
Requirement already satisfied: python-dateutil in /usr/local/lib/python3.7/dist-packages (from mlflow<=1.13.1->farm-haystack[dev]==1.2.0) (2.8.2)
Requirement already satisfied: sqlparse>=0.3.1 in /usr/local/lib/python3.7/dist-packages (from mlflow<=1.13.1->farm-haystack[dev]==1.2.0) (0.4.2)
Collecting databricks-cli>=0.8.7
  Using cached databricks-cli-0.16.4.tar.gz (58 kB)
  Preparing metadata (setup.py) ... done
Requirement already satisfied: entrypoints in /usr/local/lib/python3.7/dist-packages (from mlflow<=1.13.1->farm-haystack[dev]==1.2.0) (0.4)
Collecting azure-storage-blob>=12.0.0
  Using cached azure_storage_blob-12.10.0-py3-none-any.whl (346 kB)
Requirement already satisfied: sqlalchemy in /usr/local/lib/python3.7/dist-packages (from mlflow<=1.13.1->farm-haystack[dev]==1.2.0) (1.4.32)
Collecting docker>=4.0.0
  Using cached docker-5.0.3-py2.py3-none-any.whl (146 kB)
Collecting gitpython>=2.1.0
  Using cached GitPython-3.1.27-py3-none-any.whl (181 kB)
Collecting gunicorn
  Using cached gunicorn-20.1.0-py3-none-any.whl (79 kB)
Collecting prometheus-flask-exporter
  Using cached prometheus_flask_exporter-0.19.0-py3-none-any.whl (18 kB)
Collecting alembic<=1.4.1
  Using cached alembic-1.4.1.tar.gz (1.1 MB)
  Preparing metadata (setup.py) ... done
Collecting tomli_w<2.0.0,>=1.0.0
  Using cached tomli_w-1.0.0-py3-none-any.whl (6.0 kB)
Collecting docspec-python<3.0.0,>=2.0.0a1
  Using cached docspec_python-2.0.0-py3-none-any.whl (13 kB)
Requirement already satisfied: tomli<3.0.0,>=2.0.0 in /usr/local/lib/python3.7/dist-packages (from pydoc-markdown<5,>=4->farm-haystack[dev]==1.2.0) (2.0.1)
Collecting jinja2<4.0.0,>=3.0.0
  Using cached Jinja2-3.0.3-py3-none-any.whl (133 kB)
Collecting nr.util<1.0.0,>=0.7.5
  Using cached nr.util-0.8.4-py3-none-any.whl (86 kB)
Collecting databind<2.0.0,>=1.5.0
  Using cached databind-1.5.1-py3-none-any.whl (1.6 kB)
Collecting docspec<3.0.0,>=2.0.0a1
  Using cached docspec-2.0.0-py3-none-any.whl (9.5 kB)
Collecting yapf>=0.30.0
  Using cached yapf-0.32.0-py2.py3-none-any.whl (190 kB)
Collecting docstring-parser<0.12,>=0.11
  Using cached docstring_parser-0.11.tar.gz (22 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Collecting pyyaml>=5.1
  Using cached PyYAML-5.4.1-cp37-cp37m-manylinux1_x86_64.whl (636 kB)
Requirement already satisfied: chardet<4,>=3.0.2 in /usr/local/lib/python3.7/dist-packages (from requests->farm-haystack[dev]==1.2.0) (3.0.4)
Requirement already satisfied: idna<3,>=2.5 in /usr/local/lib/python3.7/dist-packages (from requests->farm-haystack[dev]==1.2.0) (2.10)
Requirement already satisfied: threadpoolctl>=2.0.0 in /usr/local/lib/python3.7/dist-packages (from scikit-learn>=1.0.0->farm-haystack[dev]==1.2.0) (3.1.0)
Requirement already satisfied: joblib>=0.11 in /usr/local/lib/python3.7/dist-packages (from scikit-learn>=1.0.0->farm-haystack[dev]==1.2.0) (1.1.0)
Requirement already satisfied: torchvision in /usr/local/lib/python3.7/dist-packages (from sentence-transformers>=0.4.0->farm-haystack[dev]==1.2.0) (0.11.1+cu111)
Collecting sentencepiece
  Using cached sentencepiece-0.1.96-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.2 MB)
Collecting pathspec>=0.9.0
  Using cached pathspec-0.9.0-py2.py3-none-any.whl (31 kB)
Collecting typed-ast>=1.4.2
  Using cached typed_ast-1.5.2-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (843 kB)
Collecting click>=7.0
  Using cached click-8.0.4-py3-none-any.whl (97 kB)
Collecting mypy-extensions>=0.4.3
  Using cached mypy_extensions-0.4.3-py2.py3-none-any.whl (4.5 kB)
Collecting platformdirs>=2
  Using cached platformdirs-2.5.1-py3-none-any.whl (14 kB)
Collecting ipython>=7.8.0
  Using cached ipython-7.32.0-py3-none-any.whl (793 kB)
Collecting tokenize-rt>=3.2.0
  Using cached tokenize_rt-4.2.1-py2.py3-none-any.whl (6.1 kB)
Requirement already satisfied: zipp>=0.5 in /usr/local/lib/python3.7/dist-packages (from importlib-metadata->farm-haystack[dev]==1.2.0) (3.7.0)
Requirement already satisfied: nbconvert in /usr/local/lib/python3.7/dist-packages (from jupytercontrib->farm-haystack[dev]==1.2.0) (5.6.1)
Collecting ghp-import>=1.0
  Using cached ghp_import-2.0.2-py3-none-any.whl (11 kB)
Collecting mergedeep>=1.3.4
  Using cached mergedeep-1.3.4-py3-none-any.whl (6.4 kB)
Collecting pyyaml-env-tag>=0.1
  Using cached pyyaml_env_tag-0.1-py3-none-any.whl (3.9 kB)
Requirement already satisfied: Markdown>=3.2.1 in /usr/local/lib/python3.7/dist-packages (from mkdocs->farm-haystack[dev]==1.2.0) (3.3.6)
Requirement already satisfied: pytz>=2017.3 in /usr/local/lib/python3.7/dist-packages (from pandas->farm-haystack[dev]==1.2.0) (2018.9)
Collecting isort<6,>=4.2.5
  Using cached isort-5.10.1-py3-none-any.whl (103 kB)
Collecting toml>=0.9.2
  Using cached toml-0.10.2-py2.py3-none-any.whl (16 kB)
Collecting mccabe<0.7,>=0.6
  Using cached mccabe-0.6.1-py2.py3-none-any.whl (8.6 kB)
Collecting astroid<2.10,>=2.9.0
  Using cached astroid-2.9.3-py3-none-any.whl (254 kB)
Requirement already satisfied: pluggy<0.8,>=0.5 in /usr/local/lib/python3.7/dist-packages (from pytest->farm-haystack[dev]==1.2.0) (0.7.1)
Requirement already satisfied: atomicwrites>=1.0 in /usr/local/lib/python3.7/dist-packages (from pytest->farm-haystack[dev]==1.2.0) (1.4.0)
Requirement already satisfied: setuptools in /usr/local/lib/python3.7/dist-packages (from pytest->farm-haystack[dev]==1.2.0) (57.4.0)
Requirement already satisfied: attrs>=17.4.0 in /usr/local/lib/python3.7/dist-packages (from pytest->farm-haystack[dev]==1.2.0) (21.4.0)
Requirement already satisfied: py>=1.5.0 in /usr/local/lib/python3.7/dist-packages (from pytest->farm-haystack[dev]==1.2.0) (1.11.0)
Requirement already satisfied: lxml>=2.3.2 in /usr/local/lib/python3.7/dist-packages (from python-docx->farm-haystack[dev]==1.2.0) (4.2.6)
Collecting num2words
  Using cached num2words-0.5.10-py3-none-any.whl (101 kB)
Requirement already satisfied: inflect in /usr/local/lib/python3.7/dist-packages (from quantulum3->farm-haystack[dev]==1.2.0) (2.1.0)
Collecting urllib3<2,>=1.21.1
  Using cached urllib3-1.25.11-py2.py3-none-any.whl (127 kB)
Collecting tox
  Using cached tox-3.24.4-py2.py3-none-any.whl (85 kB)
  Using cached tox-3.24.3-py2.py3-none-any.whl (85 kB)
  Using cached tox-3.24.2-py2.py3-none-any.whl (85 kB)
  Using cached tox-3.24.1-py2.py3-none-any.whl (85 kB)
  Using cached tox-3.24.0-py2.py3-none-any.whl (85 kB)
  Using cached tox-3.23.1-py2.py3-none-any.whl (85 kB)
  Using cached tox-3.23.0-py2.py3-none-any.whl (85 kB)
  Using cached tox-3.22.0-py2.py3-none-any.whl (84 kB)
  Using cached tox-3.21.4-py2.py3-none-any.whl (84 kB)
  Using cached tox-3.21.3-py2.py3-none-any.whl (84 kB)
  Using cached tox-3.21.2-py2.py3-none-any.whl (84 kB)
  Using cached tox-3.21.1-py2.py3-none-any.whl (84 kB)
  Using cached tox-3.21.0-py2.py3-none-any.whl (84 kB)
  Using cached tox-3.20.1-py2.py3-none-any.whl (83 kB)
  Using cached tox-3.20.0-py2.py3-none-any.whl (83 kB)
  Using cached tox-3.19.0-py2.py3-none-any.whl (83 kB)
  Using cached tox-3.18.1-py2.py3-none-any.whl (82 kB)
  Using cached tox-3.18.0-py2.py3-none-any.whl (82 kB)
  Using cached tox-3.17.1-py2.py3-none-any.whl (82 kB)
  Using cached tox-3.17.0-py2.py3-none-any.whl (82 kB)
  Using cached tox-3.16.0-py2.py3-none-any.whl (82 kB)
  Using cached tox-3.15.2-py2.py3-none-any.whl (137 kB)
  Using cached tox-3.15.1-py2.py3-none-any.whl (82 kB)
  Using cached tox-3.15.0-py2.py3-none-any.whl (82 kB)
  Using cached tox-3.14.6-py2.py3-none-any.whl (81 kB)
  Using cached tox-3.14.5-py2.py3-none-any.whl (81 kB)
Collecting virtualenv>=16.0.0
  Using cached virtualenv-20.13.3-py2.py3-none-any.whl (8.7 MB)
Collecting tox
  Using cached tox-3.14.4-py2.py3-none-any.whl (81 kB)
  Using cached tox-3.14.3-py2.py3-none-any.whl (80 kB)
  Using cached tox-3.14.2-py2.py3-none-any.whl (80 kB)
  Using cached tox-3.14.1-py2.py3-none-any.whl (80 kB)
  Using cached tox-3.14.0-py2.py3-none-any.whl (80 kB)
  Using cached tox-3.13.2-py2.py3-none-any.whl (80 kB)
  Using cached tox-3.13.1-py2.py3-none-any.whl (80 kB)
  Using cached tox-3.13.0-py2.py3-none-any.whl (80 kB)
  Using cached tox-3.12.1-py2.py3-none-any.whl (79 kB)
Collecting Mako
  Using cached Mako-1.2.0-py3-none-any.whl (78 kB)
Collecting python-editor>=0.3
  Using cached python_editor-1.0.4-py3-none-any.whl (4.9 kB)
Requirement already satisfied: wrapt<1.14,>=1.11 in /usr/local/lib/python3.7/dist-packages (from astroid<2.10,>=2.9.0->pylint->farm-haystack[dev]==1.2.0) (1.13.3)
Collecting lazy-object-proxy>=1.4.0
  Using cached lazy_object_proxy-1.7.1-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (57 kB)
Collecting typing-extensions
  Using cached typing_extensions-4.1.1-py3-none-any.whl (26 kB)
Collecting cryptography>=2.1.4
  Using cached cryptography-36.0.1-cp36-abi3-manylinux_2_24_x86_64.whl (3.6 MB)
Collecting databind.json<2.0.0,>=1.5.1
  Using cached databind.json-1.5.1-py3-none-any.whl (14 kB)
Collecting databind.core<2.0.0,>=1.5.1
  Using cached databind.core-1.5.1-py3-none-any.whl (35 kB)
Requirement already satisfied: tabulate>=0.7.7 in /usr/local/lib/python3.7/dist-packages (from databricks-cli>=0.8.7->mlflow<=1.13.1->farm-haystack[dev]==1.2.0) (0.8.9)
Collecting websocket-client>=0.32.0
  Using cached websocket_client-1.3.1-py3-none-any.whl (54 kB)
Collecting Deprecated<2.0.0,>=1.2.12
  Using cached Deprecated-1.2.13-py2.py3-none-any.whl (9.6 kB)
Collecting gitdb<5,>=4.0.1
  Using cached gitdb-4.0.9-py3-none-any.whl (63 kB)
Collecting prompt-toolkit!=3.0.0,!=3.0.1,<3.1.0,>=2.0.0
  Using cached prompt_toolkit-3.0.28-py3-none-any.whl (380 kB)
Requirement already satisfied: backcall in /usr/local/lib/python3.7/dist-packages (from ipython>=7.8.0->black[jupyter]->farm-haystack[dev]==1.2.0) (0.2.0)
Requirement already satisfied: matplotlib-inline in /usr/local/lib/python3.7/dist-packages (from ipython>=7.8.0->black[jupyter]->farm-haystack[dev]==1.2.0) (0.1.3)
Requirement already satisfied: decorator in /usr/local/lib/python3.7/dist-packages (from ipython>=7.8.0->black[jupyter]->farm-haystack[dev]==1.2.0) (4.4.2)
Requirement already satisfied: pickleshare in /usr/local/lib/python3.7/dist-packages (from ipython>=7.8.0->black[jupyter]->farm-haystack[dev]==1.2.0) (0.7.5)
Requirement already satisfied: pexpect>4.3 in /usr/local/lib/python3.7/dist-packages (from ipython>=7.8.0->black[jupyter]->farm-haystack[dev]==1.2.0) (4.8.0)
Requirement already satisfied: jedi>=0.16 in /usr/local/lib/python3.7/dist-packages (from ipython>=7.8.0->black[jupyter]->farm-haystack[dev]==1.2.0) (0.18.1)
Requirement already satisfied: pygments in /usr/local/lib/python3.7/dist-packages (from ipython>=7.8.0->black[jupyter]->farm-haystack[dev]==1.2.0) (2.6.1)
Requirement already satisfied: traitlets>=4.2 in /usr/local/lib/python3.7/dist-packages (from ipython>=7.8.0->black[jupyter]->farm-haystack[dev]==1.2.0) (5.1.1)
Requirement already satisfied: MarkupSafe>=2.0 in /usr/local/lib/python3.7/dist-packages (from jinja2<4.0.0,>=3.0.0->pydoc-markdown<5,>=4->farm-haystack[dev]==1.2.0) (2.0.1)
Requirement already satisfied: requests-oauthlib>=0.5.0 in /usr/local/lib/python3.7/dist-packages (from msrest>=0.6.21->azure-ai-formrecognizer==3.2.0b2->farm-haystack[dev]==1.2.0) (1.3.1)
Collecting isodate>=0.6.0
  Using cached isodate-0.6.1-py2.py3-none-any.whl (41 kB)
Requirement already satisfied: pyparsing!=3.0.5,>=2.0.2 in /usr/local/lib/python3.7/dist-packages (from packaging>=20.0->transformers==4.13.0->farm-haystack[dev]==1.2.0) (3.0.7)
Requirement already satisfied: greenlet!=0.4.17 in /usr/local/lib/python3.7/dist-packages (from sqlalchemy->mlflow<=1.13.1->farm-haystack[dev]==1.2.0) (1.1.2)
Collecting distlib<1,>=0.3.1
  Using cached distlib-0.3.4-py2.py3-none-any.whl (461 kB)
Collecting Flask
  Using cached Flask-2.0.3-py3-none-any.whl (95 kB)
Collecting itsdangerous>=2.0
  Using cached itsdangerous-2.1.1-py3-none-any.whl (15 kB)
Collecting Werkzeug>=2.0
  Using cached Werkzeug-2.0.3-py3-none-any.whl (289 kB)
Requirement already satisfied: defusedxml in /usr/local/lib/python3.7/dist-packages (from nbconvert->jupytercontrib->farm-haystack[dev]==1.2.0) (0.7.1)
Requirement already satisfied: nbformat>=4.4 in /usr/local/lib/python3.7/dist-packages (from nbconvert->jupytercontrib->farm-haystack[dev]==1.2.0) (5.1.3)
Requirement already satisfied: bleach in /usr/local/lib/python3.7/dist-packages (from nbconvert->jupytercontrib->farm-haystack[dev]==1.2.0) (4.1.0)
Requirement already satisfied: jupyter-core in /usr/local/lib/python3.7/dist-packages (from nbconvert->jupytercontrib->farm-haystack[dev]==1.2.0) (4.9.2)
Requirement already satisfied: mistune<2,>=0.8.1 in /usr/local/lib/python3.7/dist-packages (from nbconvert->jupytercontrib->farm-haystack[dev]==1.2.0) (0.8.4)
Requirement already satisfied: testpath in /usr/local/lib/python3.7/dist-packages (from nbconvert->jupytercontrib->farm-haystack[dev]==1.2.0) (0.6.0)
Requirement already satisfied: pandocfilters>=1.4.1 in /usr/local/lib/python3.7/dist-packages (from nbconvert->jupytercontrib->farm-haystack[dev]==1.2.0) (1.5.0)
Requirement already satisfied: docopt>=0.6.2 in /usr/local/lib/python3.7/dist-packages (from num2words->quantulum3->farm-haystack[dev]==1.2.0) (0.6.2)
Requirement already satisfied: prometheus-client in /usr/local/lib/python3.7/dist-packages (from prometheus-flask-exporter->mlflow<=1.13.1->farm-haystack[dev]==1.2.0) (0.13.1)
Requirement already satisfied: pillow!=8.3.0,>=5.3.0 in /usr/local/lib/python3.7/dist-packages (from torchvision->sentence-transformers>=0.4.0->farm-haystack[dev]==1.2.0) (7.1.2)
Requirement already satisfied: cffi>=1.12 in /usr/local/lib/python3.7/dist-packages (from cryptography>=2.1.4->azure-storage-blob>=12.0.0->mlflow<=1.13.1->farm-haystack[dev]==1.2.0) (1.15.0)
INFO: pip is looking at multiple versions of cryptography to determine which version is compatible with other requirements. This could take a while.
Collecting cryptography>=2.1.4
  Using cached cryptography-36.0.0-cp36-abi3-manylinux_2_24_x86_64.whl (3.6 MB)
INFO: pip is looking at multiple versions of torchvision to determine which version is compatible with other requirements. This could take a while.
Collecting torchvision
  Using cached torchvision-0.12.0-cp37-cp37m-manylinux1_x86_64.whl (21.0 MB)
INFO: pip is looking at multiple versions of sentencepiece to determine which version is compatible with other requirements. This could take a while.
Collecting sentencepiece
  Using cached sentencepiece-0.1.95-cp37-cp37m-manylinux2014_x86_64.whl (1.2 MB)
INFO: pip is looking at multiple versions of sacremoses to determine which version is compatible with other requirements. This could take a while.
Collecting sacremoses
  Downloading sacremoses-0.0.46-py3-none-any.whl (895 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 895.2/895.2 KB 18.1 MB/s eta 0:00:00
INFO: pip is looking at multiple versions of querystring-parser to determine which version is compatible with other requirements. This could take a while.
Collecting querystring-parser
  Downloading querystring_parser-1.2.3.tar.gz (5.3 kB)
  Preparing metadata (setup.py) ... done
INFO: pip is looking at multiple versions of prometheus-flask-exporter to determine which version is compatible with other requirements. This could take a while.
Collecting prometheus-flask-exporter
  Downloading prometheus_flask_exporter-0.18.7-py3-none-any.whl (17 kB)
INFO: pip is looking at multiple versions of num2words to determine which version is compatible with other requirements. This could take a while.
Collecting num2words
  Downloading num2words-0.5.9-py3-none-any.whl (99 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 99.1/99.1 KB 9.9 MB/s eta 0:00:00
INFO: pip is looking at multiple versions of nbconvert to determine which version is compatible with other requirements. This could take a while.
Collecting nbconvert
  Using cached nbconvert-6.4.4-py3-none-any.whl (561 kB)
INFO: pip is looking at multiple versions of inflect to determine which version is compatible with other requirements. This could take a while.
Collecting inflect
  Downloading inflect-5.4.0-py3-none-any.whl (33 kB)
INFO: pip is looking at multiple versions of gunicorn to determine which version is compatible with other requirements. This could take a while.
Collecting gunicorn
  Downloading gunicorn-20.0.4-py2.py3-none-any.whl (77 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 77.9/77.9 KB 6.7 MB/s eta 0:00:00
INFO: pip is looking at multiple versions of flask to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of entrypoints to determine which version is compatible with other requirements. This could take a while.
Collecting entrypoints
  Downloading entrypoints-0.4-py3-none-any.whl (5.3 kB)
INFO: pip is looking at multiple versions of cloudpickle to determine which version is compatible with other requirements. This could take a while.
Collecting cloudpickle
  Downloading cloudpickle-2.0.0-py3-none-any.whl (25 kB)
INFO: pip is looking at multiple versions of black to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of zipp to determine which version is compatible with other requirements. This could take a while.
Collecting zipp>=0.5
  Downloading zipp-3.7.0-py3-none-any.whl (5.3 kB)
INFO: pip is looking at multiple versions of yapf to determine which version is compatible with other requirements. This could take a while.
Collecting yapf>=0.30.0
  Using cached yapf-0.31.0-py2.py3-none-any.whl (185 kB)
INFO: pip is looking at multiple versions of virtualenv to determine which version is compatible with other requirements. This could take a while.
Collecting virtualenv>=14.0.0
  Using cached virtualenv-20.13.2-py2.py3-none-any.whl (8.7 MB)
INFO: pip is looking at multiple versions of urllib3 to determine which version is compatible with other requirements. This could take a while.
Collecting urllib3<2,>=1.21.1
  Downloading urllib3-1.25.10-py2.py3-none-any.whl (127 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 127.6/127.6 KB 8.5 MB/s eta 0:00:00
INFO: pip is looking at multiple versions of typed-ast to determine which version is compatible with other requirements. This could take a while.
Collecting typed-ast>=1.4.2
  Using cached typed_ast-1.5.1-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (843 kB)
INFO: pip is looking at multiple versions of tomli-w to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of tomli to determine which version is compatible with other requirements. This could take a while.
Collecting tomli<3.0.0,>=2.0.0
  Using cached tomli-2.0.1-py3-none-any.whl (12 kB)
INFO: pip is looking at multiple versions of toml to determine which version is compatible with other requirements. This could take a while.
Collecting toml>=0.9.2
  Using cached toml-0.10.1-py2.py3-none-any.whl (19 kB)
INFO: pip is looking at multiple versions of black to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of tokenizers to determine which version is compatible with other requirements. This could take a while.
Collecting tokenizers<0.11,>=0.10.1
  Downloading tokenizers-0.10.2-cp37-cp37m-manylinux2010_x86_64.whl (3.3 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 3.3/3.3 MB 42.1 MB/s eta 0:00:00
INFO: pip is looking at multiple versions of tokenize-rt to determine which version is compatible with other requirements. This could take a while.
Collecting tokenize-rt>=3.2.0
  Using cached tokenize_rt-4.1.0-py2.py3-none-any.whl (6.1 kB)
INFO: pip is looking at multiple versions of threadpoolctl to determine which version is compatible with other requirements. This could take a while.
Collecting threadpoolctl>=2.0.0
  Downloading threadpoolctl-3.1.0-py3-none-any.whl (14 kB)
INFO: pip is looking at multiple versions of sqlparse to determine which version is compatible with other requirements. This could take a while.
Collecting sqlparse>=0.3.1
  Downloading sqlparse-0.4.2-py3-none-any.whl (42 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 42.3/42.3 KB 4.0 MB/s eta 0:00:00
INFO: pip is looking at multiple versions of sqlalchemy to determine which version is compatible with other requirements. This could take a while.
Collecting sqlalchemy
  Downloading SQLAlchemy-1.4.32-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.6 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.6/1.6 MB 41.5 MB/s eta 0:00:00
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
INFO: pip is looking at multiple versions of six to determine which version is compatible with other requirements. This could take a while.
Collecting six>=1.11.0
  Downloading six-1.16.0-py2.py3-none-any.whl (11 kB)
INFO: pip is looking at multiple versions of regex to determine which version is compatible with other requirements. This could take a while.
Collecting regex!=2019.12.17
  Downloading regex-2022.3.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (749 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 749.3/749.3 KB 32.1 MB/s eta 0:00:00
INFO: pip is looking at multiple versions of pyyaml-env-tag to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of pyyaml to determine which version is compatible with other requirements. This could take a while.
Collecting pyyaml>=5.1
  Downloading PyYAML-5.4-cp37-cp37m-manylinux1_x86_64.whl (636 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 636.5/636.5 KB 29.1 MB/s eta 0:00:00
INFO: pip is looking at multiple versions of pytz to determine which version is compatible with other requirements. This could take a while.
Collecting pytz>=2017.3
  Downloading pytz-2021.3-py2.py3-none-any.whl (503 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 503.5/503.5 KB 25.4 MB/s eta 0:00:00
INFO: pip is looking at multiple versions of python-dateutil to determine which version is compatible with other requirements. This could take a while.
Collecting python-dateutil
  Downloading python_dateutil-2.8.2-py2.py3-none-any.whl (247 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 247.7/247.7 KB 17.8 MB/s eta 0:00:00
INFO: pip is looking at multiple versions of py to determine which version is compatible with other requirements. This could take a while.
Collecting py>=1.5.0
  Using cached py-1.11.0-py2.py3-none-any.whl (98 kB)
INFO: pip is looking at multiple versions of protobuf to determine which version is compatible with other requirements. This could take a while.
Collecting protobuf>=3.6.0
  Downloading protobuf-3.19.4-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.1 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.1/1.1 MB 39.8 MB/s eta 0:00:00
INFO: pip is looking at multiple versions of pluggy to determine which version is compatible with other requirements. This could take a while.
Collecting pluggy<0.8,>=0.5
  Using cached pluggy-0.7.1-py2.py3-none-any.whl (14 kB)
INFO: pip is looking at multiple versions of platformdirs to determine which version is compatible with other requirements. This could take a while.
Collecting platformdirs>=2
  Using cached platformdirs-2.5.0-py3-none-any.whl (14 kB)
INFO: pip is looking at multiple versions of pathspec to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of packaging to determine which version is compatible with other requirements. This could take a while.
Collecting packaging>=20.0
  Downloading packaging-21.3-py3-none-any.whl (40 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 40.8/40.8 KB 3.6 MB/s eta 0:00:00
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.17
  Downloading numpy-1.21.5-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl (15.7 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 15.7/15.7 MB 41.0 MB/s eta 0:00:00
INFO: pip is looking at multiple versions of nr-util to determine which version is compatible with other requirements. This could take a while.
Collecting nr.util<1.0.0,>=0.7.5
  Using cached nr.util-0.8.3-py3-none-any.whl (86 kB)
  Using cached nr.util-0.8.2-py3-none-any.whl (86 kB)
  Using cached nr.util-0.8.1-py3-none-any.whl (86 kB)
  Using cached nr.util-0.8.0-py3-none-any.whl (86 kB)
  Using cached nr.util-0.7.6-py3-none-any.whl (78 kB)
  Using cached nr.util-0.7.5-py3-none-any.whl (78 kB)
INFO: pip is looking at multiple versions of mypy-extensions to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of msrest to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of mergedeep to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of mccabe to determine which version is compatible with other requirements. This could take a while.
Collecting mccabe<0.7,>=0.6
  Using cached mccabe-0.6.0-py2.py3-none-any.whl (8.5 kB)
INFO: pip is looking at multiple versions of nr-util to determine which version is compatible with other requirements. This could take a while.
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
INFO: pip is looking at multiple versions of markdown to determine which version is compatible with other requirements. This could take a while.
Collecting Markdown>=3.2.1
  Downloading Markdown-3.3.6-py3-none-any.whl (97 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 97.8/97.8 KB 12.6 MB/s eta 0:00:00
INFO: pip is looking at multiple versions of lxml to determine which version is compatible with other requirements. This could take a while.
Collecting lxml>=2.3.2
  Downloading lxml-4.8.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl (6.4 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 6.4/6.4 MB 63.9 MB/s eta 0:00:00
INFO: pip is looking at multiple versions of joblib to determine which version is compatible with other requirements. This could take a while.
Collecting joblib>=0.11
  Downloading joblib-1.1.0-py2.py3-none-any.whl (306 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 307.0/307.0 KB 26.7 MB/s eta 0:00:00
INFO: pip is looking at multiple versions of jinja2 to determine which version is compatible with other requirements. This could take a while.
Collecting jinja2<4.0.0,>=3.0.0
  Using cached Jinja2-3.0.2-py3-none-any.whl (133 kB)
INFO: pip is looking at multiple versions of isort to determine which version is compatible with other requirements. This could take a while.
Collecting isort<6,>=4.2.5
  Using cached isort-5.10.0-py3-none-any.whl (103 kB)
INFO: pip is looking at multiple versions of ipython to determine which version is compatible with other requirements. This could take a while.
Collecting ipython>=7.8.0
  Using cached ipython-7.31.1-py3-none-any.whl (792 kB)
INFO: pip is looking at multiple versions of idna to determine which version is compatible with other requirements. This could take a while.
Collecting idna<3,>=2.5
  Downloading idna-2.10-py2.py3-none-any.whl (58 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 58.8/58.8 KB 6.6 MB/s eta 0:00:00
INFO: pip is looking at multiple versions of huggingface-hub to determine which version is compatible with other requirements. This could take a while.
Collecting huggingface-hub<1.0,>=0.1.0
  Downloading huggingface_hub-0.2.1-py3-none-any.whl (61 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 61.9/61.9 KB 4.8 MB/s eta 0:00:00
  Downloading huggingface_hub-0.2.0-py3-none-any.whl (61 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 61.9/61.9 KB 7.2 MB/s eta 0:00:00
  Downloading huggingface_hub-0.1.2-py3-none-any.whl (59 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 59.6/59.6 KB 5.6 MB/s eta 0:00:00
  Downloading huggingface_hub-0.1.1-py3-none-any.whl (59 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 59.6/59.6 KB 6.3 MB/s eta 0:00:00
  Downloading huggingface_hub-0.1.0-py3-none-any.whl (59 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 59.6/59.6 KB 5.8 MB/s eta 0:00:00
INFO: pip is looking at multiple versions of gitpython to determine which version is compatible with other requirements. This could take a while.
Collecting gitpython>=2.1.0
  Downloading GitPython-3.1.26-py3-none-any.whl (180 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 180.9/180.9 KB 18.6 MB/s eta 0:00:00
INFO: pip is looking at multiple versions of huggingface-hub to determine which version is compatible with other requirements. This could take a while.
  Downloading GitPython-3.1.25-py3-none-any.whl (180 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 180.9/180.9 KB 19.6 MB/s eta 0:00:00
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
  Downloading GitPython-3.1.24-py3-none-any.whl (180 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 180.1/180.1 KB 18.8 MB/s eta 0:00:00
  Downloading GitPython-3.1.18-py3-none-any.whl (170 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 170.1/170.1 KB 14.9 MB/s eta 0:00:00
  Downloading GitPython-3.1.14-py3-none-any.whl (159 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 159.8/159.8 KB 1.1 MB/s eta 0:00:00
  Downloading GitPython-3.1.13-py3-none-any.whl (159 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 159.6/159.6 KB 15.9 MB/s eta 0:00:00
INFO: pip is looking at multiple versions of ghp-import to determine which version is compatible with other requirements. This could take a while.
Collecting ghp-import>=1.0
  Using cached ghp_import-2.0.1-py3-none-any.whl (11 kB)
INFO: pip is looking at multiple versions of filelock to determine which version is compatible with other requirements. This could take a while.
Collecting filelock
  Downloading filelock-3.6.0-py3-none-any.whl (10.0 kB)
INFO: pip is looking at multiple versions of docstring-parser to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of docspec-python to determine which version is compatible with other requirements. This could take a while.
Collecting docspec-python<3.0.0,>=2.0.0a1
  Using cached docspec_python-2.0.0a1-py3-none-any.whl (13 kB)
INFO: pip is looking at multiple versions of docspec to determine which version is compatible with other requirements. This could take a while.
Collecting docspec<3.0.0,>=2.0.0a1
  Using cached docspec-2.0.0a1-py3-none-any.whl (9.6 kB)
INFO: pip is looking at multiple versions of docker to determine which version is compatible with other requirements. This could take a while.
Collecting docker>=4.0.0
  Downloading docker-5.0.2-py2.py3-none-any.whl (145 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 146.0/146.0 KB 16.3 MB/s eta 0:00:00
INFO: pip is looking at multiple versions of databricks-cli to determine which version is compatible with other requirements. This could take a while.
Collecting databricks-cli>=0.8.7
  Downloading databricks-cli-0.16.3.tar.gz (58 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 58.2/58.2 KB 6.4 MB/s eta 0:00:00
  Preparing metadata (setup.py) ... done
INFO: pip is looking at multiple versions of databind to determine which version is compatible with other requirements. This could take a while.
Collecting databind<2.0.0,>=1.5.0
  Using cached databind-1.5.0-py3-none-any.whl (1.6 kB)
Collecting databind.core<2.0.0,>=1.5.0
  Using cached databind.core-1.5.0-py3-none-any.whl (35 kB)
Collecting nr.stream<0.2.0,>=0.1.1
  Downloading nr.stream-0.1.2-py3-none-any.whl (6.3 kB)
Collecting nr.parsing.date<2.0.0,>=1.0.1
  Downloading nr.parsing.date-1.0.3-py3-none-any.whl (12 kB)
INFO: pip is looking at multiple versions of databind to determine which version is compatible with other requirements. This could take a while.
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
INFO: pip is looking at multiple versions of click to determine which version is compatible with other requirements. This could take a while.
Collecting click>=7.0
  Downloading click-8.0.3-py3-none-any.whl (97 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 97.5/97.5 KB 10.5 MB/s eta 0:00:00
  Downloading click-8.0.2-py3-none-any.whl (97 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 97.6/97.6 KB 10.9 MB/s eta 0:00:00
  Downloading click-8.0.1-py3-none-any.whl (97 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 97.4/97.4 KB 9.0 MB/s eta 0:00:00
  Downloading click-8.0.0-py3-none-any.whl (96 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 96.9/96.9 KB 10.8 MB/s eta 0:00:00
INFO: pip is looking at multiple versions of click to determine which version is compatible with other requirements. This could take a while.
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
INFO: pip is looking at multiple versions of chardet to determine which version is compatible with other requirements. This could take a while.
Collecting chardet<4,>=3.0.2
  Downloading chardet-3.0.4-py2.py3-none-any.whl (133 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 133.4/133.4 KB 14.5 MB/s eta 0:00:00
  Downloading chardet-3.0.3-py2.py3-none-any.whl (133 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 133.4/133.4 KB 14.0 MB/s eta 0:00:00
  Downloading chardet-3.0.2-py2.py3-none-any.whl (133 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 133.3/133.3 KB 14.7 MB/s eta 0:00:00
INFO: pip is looking at multiple versions of chardet to determine which version is compatible with other requirements. This could take a while.
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
INFO: pip is looking at multiple versions of certifi to determine which version is compatible with other requirements. This could take a while.
Collecting certifi
  Downloading certifi-2021.10.8-py2.py3-none-any.whl (149 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 149.2/149.2 KB 15.9 MB/s eta 0:00:00
  Downloading certifi-2021.5.30-py2.py3-none-any.whl (145 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 145.5/145.5 KB 16.0 MB/s eta 0:00:00
  Downloading certifi-2020.12.5-py2.py3-none-any.whl (147 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 147.5/147.5 KB 15.6 MB/s eta 0:00:00
  Downloading certifi-2020.11.8-py2.py3-none-any.whl (155 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 155.4/155.4 KB 13.5 MB/s eta 0:00:00
  Downloading certifi-2020.6.20-py2.py3-none-any.whl (156 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 156.6/156.6 KB 16.6 MB/s eta 0:00:00
  Downloading certifi-2020.4.5.2-py2.py3-none-any.whl (157 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 157.7/157.7 KB 16.8 MB/s eta 0:00:00
  Downloading certifi-2020.4.5.1-py2.py3-none-any.whl (157 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 157.0/157.0 KB 17.5 MB/s eta 0:00:00
INFO: pip is looking at multiple versions of certifi to determine which version is compatible with other requirements. This could take a while.
  Downloading certifi-2020.4.5-py2.py3-none-any.whl (156 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 157.0/157.0 KB 14.4 MB/s eta 0:00:00
  Downloading certifi-2019.11.28-py2.py3-none-any.whl (156 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 156.0/156.0 KB 16.5 MB/s eta 0:00:00
  Downloading certifi-2019.9.11-py2.py3-none-any.whl (154 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 154.4/154.4 KB 15.2 MB/s eta 0:00:00
  Downloading certifi-2019.6.16-py2.py3-none-any.whl (157 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 157.1/157.1 KB 15.2 MB/s eta 0:00:00
  Downloading certifi-2019.3.9-py2.py3-none-any.whl (158 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 158.6/158.6 KB 15.6 MB/s eta 0:00:00
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
  Downloading certifi-2018.11.29-py2.py3-none-any.whl (154 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 154.2/154.2 KB 15.2 MB/s eta 0:00:00
  Downloading certifi-2018.10.15-py2.py3-none-any.whl (146 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 146.3/146.3 KB 16.2 MB/s eta 0:00:00
  Downloading certifi-2018.8.24-py2.py3-none-any.whl (147 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 147.3/147.3 KB 12.5 MB/s eta 0:00:00
  Downloading certifi-2018.8.13-py2.py3-none-any.whl (146 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 146.5/146.5 KB 17.6 MB/s eta 0:00:00
  Downloading certifi-2018.4.16-py2.py3-none-any.whl (150 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 150.4/150.4 KB 16.4 MB/s eta 0:00:00
  Downloading certifi-2018.1.18-py2.py3-none-any.whl (151 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 151.6/151.6 KB 14.1 MB/s eta 0:00:00
  Downloading certifi-2017.11.5-py2.py3-none-any.whl (330 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 330.6/330.6 KB 22.5 MB/s eta 0:00:00
  Downloading certifi-2017.7.27.1-py2.py3-none-any.whl (349 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 349.6/349.6 KB 24.5 MB/s eta 0:00:00
  Downloading certifi-2017.7.27-py2.py3-none-any.whl (349 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 349.5/349.5 KB 25.4 MB/s eta 0:00:00
  Downloading certifi-2017.4.17-py2.py3-none-any.whl (375 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 375.9/375.9 KB 25.8 MB/s eta 0:00:00
INFO: pip is looking at multiple versions of azure-storage-blob to determine which version is compatible with other requirements. This could take a while.
Collecting azure-storage-blob>=12.0.0
  Downloading azure_storage_blob-12.9.0-py2.py3-none-any.whl (356 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 356.5/356.5 KB 10.7 MB/s eta 0:00:00
  Downloading azure_storage_blob-12.8.1-py2.py3-none-any.whl (345 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 345.8/345.8 KB 22.9 MB/s eta 0:00:00
  Downloading azure_storage_blob-12.8.0-py2.py3-none-any.whl (341 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 341.8/341.8 KB 20.1 MB/s eta 0:00:00
  Downloading azure_storage_blob-12.7.1-py2.py3-none-any.whl (339 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 339.4/339.4 KB 19.2 MB/s eta 0:00:00
  Downloading azure_storage_blob-12.7.0-py2.py3-none-any.whl (339 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 339.4/339.4 KB 20.7 MB/s eta 0:00:00
  Downloading azure_storage_blob-12.6.0-py2.py3-none-any.whl (328 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 328.9/328.9 KB 19.7 MB/s eta 0:00:00
  Downloading azure_storage_blob-12.5.0-py2.py3-none-any.whl (326 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 326.9/326.9 KB 22.4 MB/s eta 0:00:00
truncated here see colab notebook

Code of Conduct

@tstadel tstadel added S: needs triage Issues/PRs that need to be triaged type: bug A confirmed bug or unintended behavior labels Mar 15, 2022
@pradyunsg
Copy link
Member

pradyunsg commented Mar 15, 2022

Consolidating into #9254.

I appreciate that complicated dependency graph problems are take a non-neglibile amount of work to detangle and not presenting information about why pip is backtracking can make it dififcult to understand. That said, the specific request for more information is already being tracked in #9254. There have been discussions about "freshness" and "breadth first" search reordering, on this issue tracker -- which can be summarised as, they might seem to be an improvement, but (a) it'd likely end up being more difficult to reason about + control for an end user and (b) the information is not as useful for heuristics as it might seem.

@github-actions github-actions bot locked as resolved and limited conversation to collaborators Apr 15, 2022
@pradyunsg pradyunsg removed the S: needs triage Issues/PRs that need to be triaged label Mar 17, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
type: bug A confirmed bug or unintended behavior
Projects
None yet
Development

No branches or pull requests

2 participants