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

[CRITICAL] Please don't import deprecated sphinx.util.compat anymore #65

Closed
userzimmermann opened this issue Jun 7, 2017 · 0 comments
Closed

Comments

@userzimmermann
Copy link
Contributor

userzimmermann commented Jun 7, 2017

sphinx.util.compat is deprecated and although latest sphinx-1.6.2 doesn't import it anymore internally, it causes issues with rc releases of docutils when sphinx.util.compat is imported by extensions, like:

Running Sphinx v1.6.2
making output directory...
Exception occurred:
  File "/home/travis/virtualenv/python3.4.2/lib/python3.4/site-packages/sphinx/util/compat.py", line 21, in <genexpr>
    docutils_version = tuple(int(x) for x in _du_version.split('.')[:2])
ValueError: invalid literal for int() with base 10: '14rc1'

Error log:

# Sphinx version: 1.6.2
# Python version: 3.5.3 (CPython)
# Docutils version: 0.14rc1 prerelease
# Jinja2 version: 2.9.6
# Last messages:

# Loaded extensions:
Traceback (most recent call last):
  File "c:\users\zimmermann\miniconda3\envs\coala\lib\site-packages\sphinx\cmdline.py", line 305, in main
    opts.warningiserror, opts.tags, opts.verbosity, opts.jobs)
  File "c:\users\zimmermann\miniconda3\envs\coala\lib\site-packages\sphinx\application.py", line 196, in __init__
    self.setup_extension(extension)
  File "c:\users\zimmermann\miniconda3\envs\coala\lib\site-packages\sphinx\application.py", line 456, in setup_extension
    self.registry.load_extension(self, extname)
  File "c:\users\zimmermann\miniconda3\envs\coala\lib\site-packages\sphinx\registry.py", line 196, in load_extension
    mod = __import__(extname, None, None, ['setup'])
  File "c:\users\zimmermann\miniconda3\envs\coala\lib\site-packages\sphinxarg\ext.py", line 10, in <module>
    from sphinx.util.compat import Directive
  File "c:\users\zimmermann\miniconda3\envs\coala\lib\site-packages\sphinx\util\compat.py", line 21, in <module>
    docutils_version = tuple(int(x) for x in _du_version.split('.')[:2])
  File "c:\users\zimmermann\miniconda3\envs\coala\lib\site-packages\sphinx\util\compat.py", line 21, in <genexpr>
    docutils_version = tuple(int(x) for x in _du_version.split('.')[:2])
ValueError: invalid literal for int() with base 10: '14rc1'

Then you have to add workarounds to conf.py like in coala/coala#4334

You can also read more about the deprecation here:

sphinx-doc/sphinx#3846 (comment)

cc @jfbu @tk0miya @jayvdb

@userzimmermann userzimmermann changed the title Please don't import deprecated sphinx.util.compat anymore [CRITICAL] Please don't import deprecated sphinx.util.compat anymore Jun 7, 2017
userzimmermann added a commit to userzimmermann/sphinx-argparse that referenced this issue Jun 7, 2017
Instead of sphinx.util.compat, which is deprecated and also just imports
Directive from docutils.parsers.rst

Closes alex-rudakov#65
userzimmermann added a commit to userzimmermann/sphinx-argparse that referenced this issue Jun 7, 2017
Instead of sphinx.util.compat, which is deprecated, causes problems with
rc releases of docutils, and also just imports Directive from
docutils.parsers.rst

Closes alex-rudakov#65
mhpicel added a commit to mhpicel/pyart that referenced this issue Feb 13, 2018
Removed deprecated import of sphinx.util.compat.
alex-rudakov/sphinx-argparse#65
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant