$ python -V
Python 3.5.1
$ tox -e docs
GLOB sdist-make: /path/to/Henson-Database/setup.py
docs create: /path/to/Henson-Database/.tox/docs
docs installdeps: -rdocs-requirements.txt
docs inst: /path/to/Henson-Database/.tox/dist/Henson-Database-0.5.0.zip
docs installed: alabaster==0.7.10,alembic==0.9.8,argh==0.26.2,Babel==2.5.3,certifi==2018.1.18,chardet==3.0.4,doc8==0.8.0,docutils==0.14,Henson==1.1.0,Henson-Database==0.5.0,idna==2.6,imagesize==1.0.0,Jinja2==2.10,Mako==1.0.7,MarkupSafe==1.0,packaging==17.1,pathtools==0.1.2,pbr==3.1.1,Pygments==2.2.0,pyparsing==2.2.0,python-dateutil==2.7.0,python-editor==1.0.3,pytz==2018.3,PyYAML==3.12,requests==2.18.4,restructuredtext-lint==1.1.3,six==1.11.0,snowballstemmer==1.2.1,Sphinx==1.7.1,sphinx-rtd-theme==0.2.4,sphinxcontrib-autoprogram==0.1.4,sphinxcontrib-websupport==1.0.1,SQLAlchemy==1.2.5,stevedore==1.28.0,urllib3==1.22,watchdog==0.8.3
docs runtests: PYTHONHASHSEED='4183452930'
docs runtests: commands[0] | sphinx-build -W -b html -d /path/to/Henson-Database/.tox/docs/tmp/doctrees docs docs/_build/html
Traceback (most recent call last):
File "/path/to/Henson-Database/.tox/docs/bin/sphinx-build", line 7, in <module>
from sphinx.cmd.build import main
File "/path/to/Henson-Database/.tox/docs/lib/python3.5/site-packages/sphinx/cmd/build.py", line 13, in <module>
from typing import TYPE_CHECKING
ImportError: cannot import name 'TYPE_CHECKING'
ERROR: InvocationError: '/path/to/Henson-Database/.tox/docs/bin/sphinx-build -W -b html -d /path/to/Henson-Database/.tox/docs/tmp/doctrees docs docs/_build/html'
___________________________________ summary ____________________________________
ERROR: docs: commands failed
A change was introduced in Sphinx 1.7.1 that breaks Henson's Sphinx extension for anyone generating documentation using a version of Python older than 3.5.2 and Sphinx 1.7.1 (or, presumably, newer). This was addressed for Henson itself, but this fix won't work for anyone installing
Henson[sphinx]1.sphinx<1.7.1should be included insetup.pyas well.1 Henson-Database uses 3.6 to generate its Sphinx docs, but there's no guarantee other extensions will do this. There's some merit to generating docs using the lowest supported version of Python. If such a change were introduced to Henson-Database, that would mean the docs would be generated using 3.4.x.