Package: sphinx / 1.8.4-1

Metadata

Package Version Patches format
sphinx 1.8.4-1 3.0 (quilt)

Patch series

view the series file
Patch File delta Description
disable_js_version_check.diff | (download)

tests/test_theming.py | 1 1 + 0 - 0 !
1 file changed, 1 insertion(+)

 disable a test that checks versions of js libraries

no_snowballstemmer.diff | (download)

Sphinx.egg-info/requires.txt | 1 0 + 1 - 0 !
setup.py | 1 0 + 1 - 0 !
sphinx/search/da.py | 4 2 + 2 - 0 !
sphinx/search/de.py | 4 2 + 2 - 0 !
sphinx/search/es.py | 4 2 + 2 - 0 !
sphinx/search/fi.py | 4 2 + 2 - 0 !
sphinx/search/fr.py | 4 2 + 2 - 0 !
sphinx/search/hu.py | 4 2 + 2 - 0 !
sphinx/search/it.py | 4 2 + 2 - 0 !
sphinx/search/nl.py | 4 2 + 2 - 0 !
sphinx/search/no.py | 4 2 + 2 - 0 !
sphinx/search/pt.py | 4 2 + 2 - 0 !
sphinx/search/ro.py | 4 2 + 2 - 0 !
sphinx/search/ru.py | 4 2 + 2 - 0 !
sphinx/search/sv.py | 4 2 + 2 - 0 !
sphinx/search/tr.py | 4 2 + 2 - 0 !
16 files changed, 28 insertions(+), 30 deletions(-)

 replace snowballstemmer usage with pystemmer

The snowballstemmer module uses PyStemmer (bindings for libstemmer_c)
when it is available, and falls back to its own pure Python implementation
otherwise.

In Debian the snowballstemmer module is not packaged, so we can use
PyStemmer directly.

skip_tests_network.diff | (download)

tests/test_build_latex.py | 1 1 + 0 - 0 !
tests/test_build_linkcheck.py | 2 2 + 0 - 0 !
2 files changed, 3 insertions(+)

 skip linkcheck tests that require network access

no_require_websupport.diff | (download)

setup.py | 2 1 + 1 - 0 !
1 file changed, 1 insertion(+), 1 deletion(-)

 move sphinxcontrib-websupport to extras_require


no_external_css.diff | (download)

doc/_themes/sphinx13/layout.html | 2 0 + 2 - 0 !
sphinx/themes/pyramid/layout.html | 2 0 + 2 - 0 !
2 files changed, 4 deletions(-)

 don't use google fonts to avoid privacy breach.


no_require_setuptools.diff | (download)

setup.py | 1 0 + 1 - 0 !
1 file changed, 1 deletion(-)

 remove setuptools from install_requires

It was added there because the entry points use pkg_resources module,
but it is provided in a separate package in Debian, pulling setuptools
itself is not needed.

no_external_image.diff | (download)

doc/_templates/indexsidebar.html | 1 0 + 1 - 0 !
1 file changed, 1 deletion(-)

 do not use external image in the documentation template


python2_tests_import_hack.diff | (download)

tests/test_ext_math.py | 1 1 + 0 - 0 !
1 file changed, 1 insertion(+)

 make test_math_compat pass by adding sphinx.ext.mathbase import

If this module is not in sys.modules cache before the chdir() call
in eval_config_file(), Python 2 will try to load sphinx/ext/mathbase.py
file relative to the new working directory, not by absolute path.

This problem does not happen with Python 3.

python2_test_get_module_source.diff | (download)

tests/test_util.py | 3 2 + 1 - 0 !
1 file changed, 2 insertions(+), 1 deletion(-)

 make test_get_module_source() pass on python 2

In Python < 3.4, module.__path__ can be relative path when the module
is loaded from the current directory (not from site-packages).

However, get_module_source() makes the path absolute, which caused
this test to fail.

reproducible_graphviz.diff | (download)

sphinx/ext/graphviz.py | 4 3 + 1 - 0 !
1 file changed, 3 insertions(+), 1 deletion(-)

 ensure the graphviz filenames are reproducible.

Whilst working on the Reproducible Builds effort [0], we noticed
that sphinx could generate output that is not reproducible.

In particular, the graphviz extension module would construct
filenames based on, inter alia, the contents of the `options`
dictionary.

As this contained the absolute build path of the source file
embedded in the `docname` variable this meant that builds of
documentation were not independent of where on a filesystem they
were built from.

Example filenames might be:

  -  html/_images/graphviz-9e71e0f9ba91d0842b51211b676ec4adb7e7afb8.png
  +  html/_images/graphviz-6241bbfd7ac6bd4e2ad9af451ab0dfb8719988d2.png

We fix this by limiting how much of the `docname` variable ends up
in the final constructed filename; I assume there is a good reason
for including the `options` dictionary in the first place, otherwise
we could simply omit it.

  [0] https://reproducible-builds.org