Olympe dependency installation fails with pip 20.3.1

./products/olympe/linux/env/postinst fails with pip 20.3.1.

Collecting sphinx-rtd-theme
  Using cached sphinx_rtd_theme-0.5.0-py2.py3-none-any.whl (10.8 MB)
Collecting Sphinx-Substitution-Extensions==2018.11.12.3
  Using cached Sphinx_Substitution_Extensions-2018.11.12.3-py3-none-any.whl (8.0 kB)
INFO: pip is looking at multiple versions of sphinx-rtd-theme to determine which version is compatible with other requirements. This could take a while.
Collecting sphinx-rtd-theme
  Using cached sphinx_rtd_theme-0.4.3-py2.py3-none-any.whl (6.4 MB)
  Using cached sphinx_rtd_theme-0.4.2-py2.py3-none-any.whl (6.4 MB)
  Using cached sphinx_rtd_theme-0.4.1-py2.py3-none-any.whl (5.4 MB)
  Using cached sphinx_rtd_theme-0.4.0-py2.py3-none-any.whl (5.4 MB)
  Using cached sphinx_rtd_theme-0.3.1-py2.py3-none-any.whl (2.2 MB)
  Using cached sphinx_rtd_theme-0.3.0-py2.py3-none-any.whl (2.2 MB)
  Using cached sphinx_rtd_theme-0.2.4-py2.py3-none-any.whl (1.4 MB)
INFO: pip is looking at multiple versions of sphinx-rtd-theme to determine which version is compatible with other requirements. This could take a while.
  Using cached sphinx_rtd_theme-0.2.3-py2.py3-none-any.whl (1.4 MB)
  Using cached sphinx_rtd_theme-0.2.2-py2.py3-none-any.whl (1.4 MB)
  Using cached sphinx_rtd_theme-0.2.1-py2.py3-none-any.whl (1.4 MB)
  Using cached sphinx_rtd_theme-0.2.0-py2.py3-none-any.whl (1.4 MB)
  Using cached sphinx_rtd_theme-0.1.9-py3-none-any.whl (693 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 sphinx_rtd_theme-0.1.8-py2.py3-none-any.whl (418 kB)
  Using cached sphinx_rtd_theme-0.1.7.tar.gz (220 kB)
  Using cached sphinx_rtd_theme-0.1.6.tar.gz (217 kB)
  Using cached sphinx_rtd_theme-0.1.5.tar.gz (210 kB)
  Using cached sphinx_rtd_theme-0.1.4.tar.gz (225 kB)
  Using cached sphinx_rtd_theme-0.1.3.tar.gz (4.4 kB)
    ERROR: Command errored out with exit status 1:
     command: /home/kristian/code/flycam/groundsdk/.python/py3/bin/python -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-2hdtpx54/sphinx-rtd-theme_1dde5bc4d87d4438a76ce9f8416ff3d7/setup.py'"'"'; __file__='"'"'/tmp/pip-install-2hdtpx54/sphinx-rtd-theme_1dde5bc4d87d4438a76ce9f8416ff3d7/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base /tmp/pip-pip-egg-info-fepl57tg
         cwd: /tmp/pip-install-2hdtpx54/sphinx-rtd-theme_1dde5bc4d87d4438a76ce9f8416ff3d7/
    Complete output (5 lines):
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/tmp/pip-install-2hdtpx54/sphinx-rtd-theme_1dde5bc4d87d4438a76ce9f8416ff3d7/setup.py", line 30, in <module>
        install_requires=open('requirements.txt').read().splitlines(),
    FileNotFoundError: [Errno 2] No such file or directory: 'requirements.txt'
    ----------------------------------------
ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.

Apparently pip has changed how dependencies are installed (https://github.com/pypa/pip/issues/9215).

I manged to work around the problem by adding --use-deprecated=legacy-resolver to the pip install command in /products/olympe/linux/env/postinst

2 Likes