Skip to content

henson.contrib.sphinx broken on versions of Python older than 3.5.2 #150

Description

@dirn

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.1 should be included in setup.py as well.

$ 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

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.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions