You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Originally reported to Sphinx as sphinx-doc/sphinx#9825, investigating that issue revealed that tox is installing docutils==0.18 whereas Sphinx requires <0.18.
It fails because the wrong version of docutils is installed.
docutils is required both by the project and by sphinx via the extras installed for the environment. You can see in the other report that if I create the virtualenv and install the packages directly using the same commands used by tox, pip is able to install the required version without any conflicts. However, if I run with tox, it uses the legacy resolver and reports a conflict:
pytest-checkdocs HEAD $ tox -e docs -vv --notest
using tox.ini: /Users/jaraco/code/main/pytest-checkdocs/tox.ini (pid 2093)
using tox-3.24.4 from /Users/jaraco/.local/pipx/venvs/tox/lib/python3.10/site-packages/tox/__init__.py (pid 2093)
skipping sdist step
/Users/jaraco/.local/pipx/venvs/tox/bin/python (/Users/jaraco/.local/pipx/venvs/tox/bin/python) is {'executable': '/Users/jaraco/.local/pipx/venvs/tox/bin/python', 'implementation': 'CPython', 'version_info': [3, 10, 0, 'final', 0], 'version': '3.10.0 (v3.10.0:b494f5935c, Oct 4 2021, 14:59:20) [Clang 12.0.5 (clang-1205.0.22.11)]', 'is_64': True, 'sysplatform': 'darwin', 'os_sep': '/', 'extra_version_info': None}
docs uses /Users/jaraco/.local/pipx/venvs/tox/bin/python
docs start: getenv /Users/jaraco/code/main/pytest-checkdocs/.tox/docs
docs cannot reuse: no previous config /Users/jaraco/code/main/pytest-checkdocs/.tox/docs/.tox-config1
docs create: /Users/jaraco/code/main/pytest-checkdocs/.tox/docs
setting PATH=/Users/jaraco/code/main/pytest-checkdocs/.tox/docs/bin:/Users/jaraco/.local/bin:/Users/jaraco/.local/bin:/usr/local/opt/[email protected]/bin:/Applications/Firefox.app/Contents/MacOS:/Library/Frameworks/Python.framework/Versions/3.10/bin:/Library/Frameworks/Python.framework/Versions/3.9/bin:/Library/Frameworks/Python.framework/Versions/3.8/bin:/Library/Frameworks/Python.framework/Versions/3.7/bin:/Library/Frameworks/Python.framework/Versions/3.6/bin:/Users/jaraco/.local/homebrew/bin:/usr/local/heroku/bin:/Users/jaraco/Dropbox/bin/mac:/opt/cisco/anyconnect/bin:/Users/jaraco/Dropbox/bin/scripts:/Applications/Sublime Merge.app/Contents/SharedSupport/bin:/Applications/Sublime Text.app/Contents/SharedSupport/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Applications/VMware Fusion.app/Contents/Public:/Library/Apple/usr/bin:/Library/Frameworks/Mono.framework/Versions/Current/Commands:/Applications/Wireshark.app/Contents/MacOS
[2095] /Users/jaraco/code/main/pytest-checkdocs/.tox$ /Users/jaraco/.local/pipx/venvs/tox/bin/python -m virtualenv --no-download --python /Users/jaraco/.local/pipx/venvs/tox/bin/python docs
created virtual environment CPython3.10.0.final.0-64 in 211ms
creator CPython3Posix(dest=/Users/jaraco/code/main/pytest-checkdocs/.tox/docs, clear=False, no_vcs_ignore=False, global=False)
seeder FromAppData(download=False, pip=bundle, setuptools=bundle, wheel=bundle, via=copy, app_data_dir=/Users/jaraco/Library/Application Support/virtualenv)
added seed packages: pip==21.3.1, setuptools==58.3.0, wheel==0.37.0
activators BashActivator,CShellActivator,FishActivator,NushellActivator,PowerShellActivator,PythonActivator
docs finish: getenv /Users/jaraco/code/main/pytest-checkdocs/.tox/docs after 0.40 seconds
docs start: developpkg /Users/jaraco/code/main/pytest-checkdocs
docs develop-inst: /Users/jaraco/code/main/pytest-checkdocs
write config to /Users/jaraco/code/main/pytest-checkdocs/.tox/docs/.tox-config1 as '09e2b2534307fa0a5f9ae8975ab12ee3d9c2a78fc1952b6945f79ca0b6feb853 /Users/jaraco/.local/pipx/venvs/tox/bin/python\n3.24.4 0 1 0'
setting PATH=/Users/jaraco/code/main/pytest-checkdocs/.tox/docs/bin:/Users/jaraco/.local/bin:/Users/jaraco/.local/bin:/usr/local/opt/[email protected]/bin:/Applications/Firefox.app/Contents/MacOS:/Library/Frameworks/Python.framework/Versions/3.10/bin:/Library/Frameworks/Python.framework/Versions/3.9/bin:/Library/Frameworks/Python.framework/Versions/3.8/bin:/Library/Frameworks/Python.framework/Versions/3.7/bin:/Library/Frameworks/Python.framework/Versions/3.6/bin:/Users/jaraco/.local/homebrew/bin:/usr/local/heroku/bin:/Users/jaraco/Dropbox/bin/mac:/opt/cisco/anyconnect/bin:/Users/jaraco/Dropbox/bin/scripts:/Applications/Sublime Merge.app/Contents/SharedSupport/bin:/Applications/Sublime Text.app/Contents/SharedSupport/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Applications/VMware Fusion.app/Contents/Public:/Library/Apple/usr/bin:/Library/Frameworks/Mono.framework/Versions/Current/Commands:/Applications/Wireshark.app/Contents/MacOS
[2099] /Users/jaraco/code/main/pytest-checkdocs$ /Users/jaraco/code/main/pytest-checkdocs/.tox/docs/bin/python -m pip install --exists-action w -e '/Users/jaraco/code/main/pytest-checkdocs[docs,testing]'
Obtaining file:///Users/jaraco/code/main/pytest-checkdocs
Installing build dependencies ... done
Checking if build backend supports build_editable ... done
Getting requirements to build wheel ... done
Installing backend dependencies ... done
Preparing metadata (pyproject.toml) ... done
Collecting importlib-metadata>=4
Using cached importlib_metadata-4.8.1-py3-none-any.whl (17 kB)
Collecting docutils>=0.15
Using cached docutils-0.18-py2.py3-none-any.whl (569 kB)
Collecting pep517
Using cached pep517-0.12.0-py2.py3-none-any.whl (19 kB)
Collecting pytest>=6; extra == "testing"
Using cached pytest-6.2.5-py3-none-any.whl (280 kB)
Collecting pytest-enabler>=1.0.1; extra == "testing"
Using cached pytest_enabler-1.2.0-py3-none-any.whl (4.1 kB)
Collecting pytest-flake8; extra == "testing"
Using cached pytest_flake8-1.0.7-py2.py3-none-any.whl (6.4 kB)
Processing /Users/jaraco/Library/Caches/pip/wheels/d1/5b/f7/6fb24525d8710b80c9bee578a05d3c211c8cf25e570135f1ae/pytest_black-0.3.12-py3-none-any.whl
Collecting types-docutils; extra == "testing"
Using cached types_docutils-0.17.1-py3-none-any.whl (9.5 kB)
Collecting pytest-mypy; platform_python_implementation != "PyPy" and extra == "testing"
Using cached pytest_mypy-0.8.1-py3-none-any.whl (6.7 kB)
Collecting pytest-cov; extra == "testing"
Using cached pytest_cov-3.0.0-py3-none-any.whl (20 kB)
Collecting jaraco.packaging>=8.2; extra == "docs"
Using cached jaraco.packaging-8.2.1-py3-none-any.whl (7.5 kB)
Collecting sphinx; extra == "docs"
Using cached Sphinx-4.2.0-py3-none-any.whl (3.1 MB)
Collecting rst.linker>=1.9; extra == "docs"
Using cached rst.linker-2.2.0-py3-none-any.whl (5.3 kB)
Collecting zipp>=0.5
Using cached zipp-3.6.0-py3-none-any.whl (5.3 kB)
Collecting tomli>=1.1.0; python_version >= "3.6"
Using cached tomli-1.2.2-py3-none-any.whl (12 kB)
Collecting py>=1.8.2
Using cached py-1.11.0-py2.py3-none-any.whl (98 kB)
Collecting packaging
Using cached packaging-21.2-py3-none-any.whl (40 kB)
Collecting iniconfig
Using cached iniconfig-1.1.1-py2.py3-none-any.whl (5.0 kB)
Collecting attrs>=19.2.0
Using cached attrs-21.2.0-py2.py3-none-any.whl (53 kB)
Collecting toml
Using cached toml-0.10.2-py2.py3-none-any.whl (16 kB)
Collecting pluggy<2.0,>=0.12
Using cached pluggy-1.0.0-py2.py3-none-any.whl (13 kB)
Collecting jaraco.context
Using cached jaraco.context-4.1.1-py3-none-any.whl (4.4 kB)
Collecting more-itertools
Using cached more_itertools-8.10.0-py3-none-any.whl (51 kB)
Collecting jaraco.functools
Using cached jaraco.functools-3.4.0-py3-none-any.whl (6.9 kB)
Collecting flake8>=3.5
Using cached flake8-4.0.1-py2.py3-none-any.whl (64 kB)
Collecting black; python_version >= "3.6"
Using cached black-21.10b0-py3-none-any.whl (150 kB)
Collecting filelock>=3.0
Using cached filelock-3.3.2-py3-none-any.whl (9.7 kB)
Collecting mypy>=0.780; python_version >= "3.9"
Using cached mypy-0.910-py3-none-any.whl (2.1 MB)
Collecting coverage[toml]>=5.2.1
Using cached coverage-6.1.1-cp310-cp310-macosx_10_9_x86_64.whl (179 kB)
Requirement already satisfied: setuptools in ./.tox/docs/lib/python3.10/site-packages (from jaraco.packaging>=8.2; extra == "docs"->pytest-checkdocs==2.7.2.dev8+gb4153a4) (58.3.0)
Collecting requests>=2.5.0
Using cached requests-2.26.0-py2.py3-none-any.whl (62 kB)
Collecting sphinxcontrib-htmlhelp>=2.0.0
Using cached sphinxcontrib_htmlhelp-2.0.0-py2.py3-none-any.whl (100 kB)
Collecting sphinxcontrib-qthelp
Using cached sphinxcontrib_qthelp-1.0.3-py2.py3-none-any.whl (90 kB)
Collecting sphinxcontrib-serializinghtml>=1.1.5
Using cached sphinxcontrib_serializinghtml-1.1.5-py2.py3-none-any.whl (94 kB)
Collecting sphinxcontrib-jsmath
Using cached sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl (5.1 kB)
Collecting Jinja2>=2.3
Using cached Jinja2-3.0.2-py3-none-any.whl (133 kB)
Collecting snowballstemmer>=1.1
Using cached snowballstemmer-2.1.0-py2.py3-none-any.whl (93 kB)
Collecting alabaster<0.8,>=0.7
Using cached alabaster-0.7.12-py2.py3-none-any.whl (14 kB)
Collecting sphinxcontrib-devhelp
Using cached sphinxcontrib_devhelp-1.0.2-py2.py3-none-any.whl (84 kB)
Collecting imagesize
Using cached imagesize-1.2.0-py2.py3-none-any.whl (4.8 kB)
Collecting Pygments>=2.0
Using cached Pygments-2.10.0-py3-none-any.whl (1.0 MB)
Collecting babel>=1.3
Using cached Babel-2.9.1-py2.py3-none-any.whl (8.8 MB)
Collecting sphinxcontrib-applehelp
Using cached sphinxcontrib_applehelp-1.0.2-py2.py3-none-any.whl (121 kB)
Collecting python-dateutil
Using cached python_dateutil-2.8.2-py2.py3-none-any.whl (247 kB)
Collecting pyparsing<3,>=2.0.2
Using cached pyparsing-2.4.7-py2.py3-none-any.whl (67 kB)
Collecting pyflakes<2.5.0,>=2.4.0
Using cached pyflakes-2.4.0-py2.py3-none-any.whl (69 kB)
Collecting pycodestyle<2.9.0,>=2.8.0
Using cached pycodestyle-2.8.0-py2.py3-none-any.whl (42 kB)
Collecting mccabe<0.7.0,>=0.6.0
Using cached mccabe-0.6.1-py2.py3-none-any.whl (8.6 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.4.0-py3-none-any.whl (14 kB)
Collecting click>=7.1.2
Using cached click-8.0.3-py3-none-any.whl (97 kB)
Collecting regex>=2020.1.8
Using cached regex-2021.11.2-cp310-cp310-macosx_10_9_x86_64.whl (288 kB)
Collecting typing-extensions>=3.10.0.0
Using cached typing_extensions-3.10.0.2-py3-none-any.whl (26 kB)
Collecting pathspec<1,>=0.9.0
Using cached pathspec-0.9.0-py2.py3-none-any.whl (31 kB)
Collecting idna<4,>=2.5; python_version >= "3"
Using cached idna-3.3-py3-none-any.whl (61 kB)
Collecting charset-normalizer~=2.0.0; python_version >= "3"
Using cached charset_normalizer-2.0.7-py3-none-any.whl (38 kB)
Collecting certifi>=2017.4.17
Using cached certifi-2021.10.8-py2.py3-none-any.whl (149 kB)
Collecting urllib3<1.27,>=1.21.1
Using cached urllib3-1.26.7-py2.py3-none-any.whl (138 kB)
Collecting MarkupSafe>=2.0
Using cached MarkupSafe-2.0.1-cp310-cp310-macosx_10_9_x86_64.whl (14 kB)
Collecting pytz>=2015.7
Using cached pytz-2021.3-py2.py3-none-any.whl (503 kB)
Collecting six>=1.5
Using cached six-1.16.0-py2.py3-none-any.whl (11 kB)
Installing collected packages: zipp, importlib-metadata, docutils, tomli, pep517, py, pyparsing, packaging, iniconfig, attrs, toml, pluggy, pytest, jaraco.context, more-itertools, jaraco.functools, pytest-enabler, pyflakes, pycodestyle, mccabe, flake8, pytest-flake8, mypy-extensions, platformdirs, click, regex, typing-extensions, pathspec, black, pytest-black, types-docutils, filelock, mypy, pytest-mypy, coverage, pytest-cov, jaraco.packaging, idna, charset-normalizer, certifi, urllib3, requests, sphinxcontrib-htmlhelp, sphinxcontrib-qthelp, sphinxcontrib-serializinghtml, sphinxcontrib-jsmath, MarkupSafe, Jinja2, snowballstemmer, alabaster, sphinxcontrib-devhelp, imagesize, Pygments, pytz, babel, sphinxcontrib-applehelp, sphinx, six, python-dateutil, rst.linker, pytest-checkdocs
Running setup.py develop for pytest-checkdocs
ERROR: pip's legacy dependency resolver does not consider dependency conflicts when selecting packages. This behaviour is the source of the following dependency conflicts.
sphinx 4.2.0 requires docutils<0.18,>=0.14, but you'll have docutils 0.18 which is incompatible.
Successfully installed Jinja2-3.0.2 MarkupSafe-2.0.1 Pygments-2.10.0 alabaster-0.7.12 attrs-21.2.0 babel-2.9.1 black-21.10b0 certifi-2021.10.8 charset-normalizer-2.0.7 click-8.0.3 coverage-6.1.1 docutils-0.18 filelock-3.3.2 flake8-4.0.1 idna-3.3 imagesize-1.2.0 importlib-metadata-4.8.1 iniconfig-1.1.1 jaraco.context-4.1.1 jaraco.functools-3.4.0 jaraco.packaging-8.2.1 mccabe-0.6.1 more-itertools-8.10.0 mypy-0.910 mypy-extensions-0.4.3 packaging-21.2 pathspec-0.9.0 pep517-0.12.0 platformdirs-2.4.0 pluggy-1.0.0 py-1.11.0 pycodestyle-2.8.0 pyflakes-2.4.0 pyparsing-2.4.7 pytest-6.2.5 pytest-black-0.3.12 pytest-checkdocs-2.7.2.dev8+gb4153a4 pytest-cov-3.0.0 pytest-enabler-1.2.0 pytest-flake8-1.0.7 pytest-mypy-0.8.1 python-dateutil-2.8.2 pytz-2021.3 regex-2021.11.2 requests-2.26.0 rst.linker-2.2.0 six-1.16.0 snowballstemmer-2.1.0 sphinx-4.2.0 sphinxcontrib-applehelp-1.0.2 sphinxcontrib-devhelp-1.0.2 sphinxcontrib-htmlhelp-2.0.0 sphinxcontrib-jsmath-1.0.1 sphinxcontrib-qthelp-1.0.3 sphinxcontrib-serializinghtml-1.1.5 toml-0.10.2 tomli-1.2.2 types-docutils-0.17.1 typing-extensions-3.10.0.2 urllib3-1.26.7 zipp-3.6.0
docs finish: developpkg /Users/jaraco/code/main/pytest-checkdocs after 15.34 seconds
docs start: envreport
setting PATH=/Users/jaraco/code/main/pytest-checkdocs/.tox/docs/bin:/Users/jaraco/.local/bin:/Users/jaraco/.local/bin:/usr/local/opt/[email protected]/bin:/Applications/Firefox.app/Contents/MacOS:/Library/Frameworks/Python.framework/Versions/3.10/bin:/Library/Frameworks/Python.framework/Versions/3.9/bin:/Library/Frameworks/Python.framework/Versions/3.8/bin:/Library/Frameworks/Python.framework/Versions/3.7/bin:/Library/Frameworks/Python.framework/Versions/3.6/bin:/Users/jaraco/.local/homebrew/bin:/usr/local/heroku/bin:/Users/jaraco/Dropbox/bin/mac:/opt/cisco/anyconnect/bin:/Users/jaraco/Dropbox/bin/scripts:/Applications/Sublime Merge.app/Contents/SharedSupport/bin:/Applications/Sublime Text.app/Contents/SharedSupport/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Applications/VMware Fusion.app/Contents/Public:/Library/Apple/usr/bin:/Library/Frameworks/Mono.framework/Versions/Current/Commands:/Applications/Wireshark.app/Contents/MacOS
[2139] /Users/jaraco/code/main/pytest-checkdocs$ /Users/jaraco/code/main/pytest-checkdocs/.tox/docs/bin/python -m pip freeze >.tox/docs/log/docs-0.log
docs finish: envreport after 0.60 seconds
docs installed: alabaster==0.7.12,attrs==21.2.0,Babel==2.9.1,black==21.10b0,certifi==2021.10.8,charset-normalizer==2.0.7,click==8.0.3,coverage==6.1.1,docutils==0.18,filelock==3.3.2,flake8==4.0.1,idna==3.3,imagesize==1.2.0,importlib-metadata==4.8.1,iniconfig==1.1.1,jaraco.context==4.1.1,jaraco.functools==3.4.0,jaraco.packaging==8.2.1,Jinja2==3.0.2,MarkupSafe==2.0.1,mccabe==0.6.1,more-itertools==8.10.0,mypy==0.910,mypy-extensions==0.4.3,packaging==21.2,pathspec==0.9.0,pep517==0.12.0,platformdirs==2.4.0,pluggy==1.0.0,py==1.11.0,pycodestyle==2.8.0,pyflakes==2.4.0,Pygments==2.10.0,pyparsing==2.4.7,pytest==6.2.5,pytest-black==0.3.12,-e git+gh://jaraco/pytest-checkdocs@b4153a403388c4944c5a4f883b68bfa5531b1617#egg=pytest_checkdocs,pytest-cov==3.0.0,pytest-enabler==1.2.0,pytest-flake8==1.0.7,pytest-mypy==0.8.1,python-dateutil==2.8.2,pytz==2021.3,regex==2021.11.2,requests==2.26.0,rst.linker==2.2.0,six==1.16.0,snowballstemmer==2.1.0,Sphinx==4.2.0,sphinxcontrib-applehelp==1.0.2,sphinxcontrib-devhelp==1.0.2,sphinxcontrib-htmlhelp==2.0.0,sphinxcontrib-jsmath==1.0.1,sphinxcontrib-qthelp==1.0.3,sphinxcontrib-serializinghtml==1.1.5,toml==0.10.2,tomli==1.2.2,types-docutils==0.17.1,typing-extensions==3.10.0.2,urllib3==1.26.7,zipp==3.6.0
______________________________________________________________________________ summary ______________________________________________________________________________
docs: skipped tests
congratulations :)
I took a peek at the tox code but didn't see anything that would indicate that it's configuring the legacy resolver.
Do you have any clue as to why tox causes conflicting requirements to be installed, but when I run the commands, they work as expected?
The text was updated successfully, but these errors were encountered:
Originally reported to Sphinx as sphinx-doc/sphinx#9825, investigating that issue revealed that tox is installing
docutils==0.18
whereas Sphinx requires<0.18
.First, grab jaraco/pytest-checkdocs@b4153a4 (the head has a workaround) and run
tox -e docs
.It fails because the wrong version of docutils is installed.
docutils
is required both by the project and by sphinx via the extras installed for the environment. You can see in the other report that if I create the virtualenv and install the packages directly using the same commands used by tox, pip is able to install the required version without any conflicts. However, if I run with tox, it uses the legacy resolver and reports a conflict:I took a peek at the tox code but didn't see anything that would indicate that it's configuring the legacy resolver.
Do you have any clue as to why tox causes conflicting requirements to be installed, but when I run the commands, they work as expected?
The text was updated successfully, but these errors were encountered: