sphinxcontrib-versioning
sphinxcontrib-versioning copied to clipboard
sphinx1.7+: ImportError workaround, allows to see help
upstream merged + branch/commit renamed (https://github.com/sphinx-contrib/sphinxcontrib-versioning/pull/69)
UPD: add reproduce details python 3.7.5
Package Version
----------------------------- ----------
...
Sphinx 2.2.2
sphinxcontrib-applehelp 1.0.1
sphinxcontrib-devhelp 1.0.1
sphinxcontrib-htmlhelp 1.0.2
sphinxcontrib-jsmath 1.0.1
sphinxcontrib-qthelp 1.0.2
sphinxcontrib-serializinghtml 1.1.3
sphinxcontrib-versioning 2.2.1
...
$ venv/bin/sphinx-versioning --help
Traceback (most recent call last):
File "venv/bin/sphinx-versioning", line 11, in <module>
load_entry_point('sphinxcontrib-versioning', 'console_scripts', 'sphinx-versioning')()
File ".../sphinxcontrib-versioning/venv/lib/python3.7/site-packages/setuptools-40.8.0-py3.7.egg/pkg_resources/__init__.py", line 489, in load_entry_point
File ".../sphinxcontrib-versioning/venv/lib/python3.7/site-packages/setuptools-40.8.0-py3.7.egg/pkg_resources/__init__.py", line 2793, in load_entry_point
File ".../sphinxcontrib-versioning/venv/lib/python3.7/site-packages/setuptools-40.8.0-py3.7.egg/pkg_resources/__init__.py", line 2411, in load
File ".../sphinxcontrib-versioning/venv/lib/python3.7/site-packages/setuptools-40.8.0-py3.7.egg/pkg_resources/__init__.py", line 2417, in resolve
File ".../sphinxcontrib-versioning/sphinxcontrib/versioning/__main__.py", line 13, in <module>
from sphinxcontrib.versioning.routines import build_all, gather_git_info, pre_build, read_local_conf
File ".../sphinxcontrib-versioning/sphinxcontrib/versioning/routines.py", line 11, in <module>
from sphinxcontrib.versioning.sphinx_ import build, read_config
File ".../sphinxcontrib-versioning/sphinxcontrib/versioning/sphinx_.py", line 9, in <module>
from sphinx import application, build_main, locale
ImportError: cannot import name 'build_main' from 'sphinx'
Can you fix the linting error:
./sphinxcontrib/versioning/sphinx_.py:17:1: I202 Additional newline in a group of imports. 'from sphinx.builders.html import StandaloneHTMLBuilder' is identified as Third Party and 'from sphinx import application, locale' is identified as Third Party.
@TimKam fixed
@TimKam any progress on this one?
@TimKam there is a good number of users who would love to this merged (and released!) :)
Sorry, my GitHub inbox is so full that I can hardly see what's relevant. I'll take a look tomorrow night latest.
I am getting an error:
File "/Users/timotheuskampik/Desktop/github/sphinx-forks/sphinxcontrib-versioning/sphinxcontrib/versioning/sphinx_.py", line 95, in html_page_context
cls.VERSIONS.context = context
AttributeError: 'NoneType' object has no attribute 'context'
I cannot see where in the code cls.VERSIONS
could possibly be set.
I cannot see where in the code
cls.VERSIONS
could possibly be set.
I'm not sure that this particular issue is related
I am also not sure, but I cannot successfully do a manual test. If you point me to a doc set that should "just work" with this branch, I'll test it and consider it good enough/create a follow-up issue.
I had these issues, too, and decided to write a new, clean implementation of a sphinx versioning extension. If you're still having problems with this, you could try https://holzhaus.github.io/sphinx-multiversion/master/index.html
@Holzhaus great, wouldn't it make sense to consolidate these two projects? I.e. if your extension has the same functionality as this one but works reliably, we can deprecate this extension and ideally move yours into this GitHub project (but you remain maintainer). What do you think?
The extension works vastly different internally. Check the FAQ page.
I wrote it to add versioning to the existing sphinx documentation of the Mixxx DJ Software. Hence, I made sure does not require any changes to old branches/tags (i.e. adding the extension to conf.py
). Also, it always uses the configuration of the branch you're building from, so that all versions share the same theme/templates/extensions, etc.
So it might not be the right choice for everyone.
I suggest you try it out first before we start to talk about dropping sphinx-versioning
in favor of sphinx-multiversion
:stuck_out_tongue:
Codecov Report
Merging #78 into master will increase coverage by
0.11%
. The diff coverage is60.00%
.
@@ Coverage Diff @@
## master #78 +/- ##
==========================================
+ Coverage 98.34% 98.46% +0.11%
==========================================
Files 8 8
Lines 908 912 +4
Branches 176 176
==========================================
+ Hits 893 898 +5
Misses 7 7
+ Partials 8 7 -1
Impacted Files | Coverage Δ | |
---|---|---|
sphinxcontrib/versioning/sphinx_.py | 98.64% <60.00%> (-1.36%) |
:arrow_down: |
sphinxcontrib/versioning/git.py | 97.14% <0.00%> (+1.42%) |
:arrow_up: |
Continue to review full report at Codecov.
Legend - Click here to learn more
Δ = absolute <relative> (impact)
,ø = not affected
,? = missing data
Powered by Codecov. Last update 0b56210...d6d0260. Read the comment docs.
Any progress on this? What's holding it up from being merged in?