Source: sphinxcontrib-websupport Version: 1.2.0-1 Severity: important Tags: ftbfs User: python-modules-t...@lists.alioth.debian.org Usertags: sphinx2.4
Hi, sphinxcontrib-websupport fails to build with Sphinx 2.4, currently available in experimental. Relevant part (hopefully): > dpkg-buildpackage > ----------------- > > Command: dpkg-buildpackage -us -uc -sa -rfakeroot > dpkg-buildpackage: info: source package sphinxcontrib-websupport > dpkg-buildpackage: info: source version 1.2.0-1 > dpkg-buildpackage: info: source distribution unstable > dpkg-buildpackage: info: source changed by Dmitry Shachnev > <mity...@debian.org> > dpkg-source --before-build . > dpkg-buildpackage: info: host architecture amd64 > debian/rules clean > dh clean --with python3 --buildsystem=pybuild > dh_auto_clean -O--buildsystem=pybuild > I: pybuild base:217: python3.7 setup.py clean > running clean > removing '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.7/build' (and everything under > it) > 'build/bdist.linux-x86_64' does not exist -- can't clean it > 'build/scripts-3.7' does not exist -- can't clean it > I: pybuild base:217: python3.8 setup.py clean > running clean > removing '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.8/build' (and everything under > it) > 'build/bdist.linux-x86_64' does not exist -- can't clean it > 'build/scripts-3.8' does not exist -- can't clean it > dh_autoreconf_clean -O--buildsystem=pybuild > dh_clean -O--buildsystem=pybuild > dpkg-source -b . > dpkg-source: info: using source format '3.0 (quilt)' > dpkg-source: info: building sphinxcontrib-websupport using existing > ./sphinxcontrib-websupport_1.2.0.orig.tar.gz > dpkg-source: info: using patch list from debian/patches/series > dpkg-source: warning: ignoring deletion of file PKG-INFO, use > --include-removal to override > dpkg-source: warning: ignoring deletion of directory > sphinxcontrib_websupport.egg-info > dpkg-source: warning: ignoring deletion of file > sphinxcontrib_websupport.egg-info/SOURCES.txt, use --include-removal to > override > dpkg-source: warning: ignoring deletion of file > sphinxcontrib_websupport.egg-info/top_level.txt, use --include-removal to > override > dpkg-source: warning: ignoring deletion of file > sphinxcontrib_websupport.egg-info/namespace_packages.txt, use > --include-removal to override > dpkg-source: warning: ignoring deletion of file > sphinxcontrib_websupport.egg-info/dependency_links.txt, use --include-removal > to override > dpkg-source: warning: ignoring deletion of file > sphinxcontrib_websupport.egg-info/PKG-INFO, use --include-removal to override > dpkg-source: warning: ignoring deletion of file > sphinxcontrib_websupport.egg-info/requires.txt, use --include-removal to > override > dpkg-source: warning: ignoring deletion of file > sphinxcontrib_websupport.egg-info/not-zip-safe, use --include-removal to > override > dpkg-source: warning: ignoring deletion of file > sphinxcontrib_websupport.egg-info/entry_points.txt, use --include-removal to > override > dpkg-source: info: building sphinxcontrib-websupport in > sphinxcontrib-websupport_1.2.0-1.debian.tar.xz > dpkg-source: info: building sphinxcontrib-websupport in > sphinxcontrib-websupport_1.2.0-1.dsc > debian/rules binary > dh binary --with python3 --buildsystem=pybuild > dh_update_autotools_config -O--buildsystem=pybuild > dh_autoreconf -O--buildsystem=pybuild > dh_auto_configure -O--buildsystem=pybuild > I: pybuild base:217: python3.7 setup.py config > running config > I: pybuild base:217: python3.8 setup.py config > running config > dh_auto_build -O--buildsystem=pybuild > I: pybuild base:217: /usr/bin/python3.7 setup.py build > running build > running build_py > creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.7/build/sphinxcontrib > copying sphinxcontrib/__init__.py -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.7/build/sphinxcontrib > creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.7/build/sphinxcontrib/websupport > copying sphinxcontrib/websupport/errors.py -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.7/build/sphinxcontrib/websupport > copying sphinxcontrib/websupport/core.py -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.7/build/sphinxcontrib/websupport > copying sphinxcontrib/websupport/__init__.py -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.7/build/sphinxcontrib/websupport > copying sphinxcontrib/websupport/builder.py -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.7/build/sphinxcontrib/websupport > copying sphinxcontrib/websupport/version.py -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.7/build/sphinxcontrib/websupport > copying sphinxcontrib/websupport/writer.py -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.7/build/sphinxcontrib/websupport > copying sphinxcontrib/websupport/utils.py -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.7/build/sphinxcontrib/websupport > creating > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.7/build/sphinxcontrib/websupport/storage > copying sphinxcontrib/websupport/storage/__init__.py -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.7/build/sphinxcontrib/websupport/storage > copying sphinxcontrib/websupport/storage/sqlalchemy_db.py -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.7/build/sphinxcontrib/websupport/storage > copying sphinxcontrib/websupport/storage/sqlalchemystorage.py -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.7/build/sphinxcontrib/websupport/storage > copying sphinxcontrib/websupport/storage/differ.py -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.7/build/sphinxcontrib/websupport/storage > creating > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.7/build/sphinxcontrib/websupport/search > copying sphinxcontrib/websupport/search/__init__.py -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.7/build/sphinxcontrib/websupport/search > copying sphinxcontrib/websupport/search/whooshsearch.py -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.7/build/sphinxcontrib/websupport/search > copying sphinxcontrib/websupport/search/nullsearch.py -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.7/build/sphinxcontrib/websupport/search > copying sphinxcontrib/websupport/search/xapiansearch.py -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.7/build/sphinxcontrib/websupport/search > running egg_info > creating sphinxcontrib_websupport.egg-info > writing sphinxcontrib_websupport.egg-info/PKG-INFO > writing dependency_links to > sphinxcontrib_websupport.egg-info/dependency_links.txt > writing entry points to sphinxcontrib_websupport.egg-info/entry_points.txt > writing namespace_packages to > sphinxcontrib_websupport.egg-info/namespace_packages.txt > writing requirements to sphinxcontrib_websupport.egg-info/requires.txt > writing top-level names to sphinxcontrib_websupport.egg-info/top_level.txt > writing manifest file 'sphinxcontrib_websupport.egg-info/SOURCES.txt' > reading manifest file 'sphinxcontrib_websupport.egg-info/SOURCES.txt' > reading manifest template 'MANIFEST.in' > writing manifest file 'sphinxcontrib_websupport.egg-info/SOURCES.txt' > creating > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.7/build/sphinxcontrib/websupport/files > copying sphinxcontrib/websupport/files/ajax-loader.gif -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.7/build/sphinxcontrib/websupport/files > copying sphinxcontrib/websupport/files/comment-bright.png -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.7/build/sphinxcontrib/websupport/files > copying sphinxcontrib/websupport/files/comment-close.png -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.7/build/sphinxcontrib/websupport/files > copying sphinxcontrib/websupport/files/comment.png -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.7/build/sphinxcontrib/websupport/files > copying sphinxcontrib/websupport/files/down-pressed.png -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.7/build/sphinxcontrib/websupport/files > copying sphinxcontrib/websupport/files/down.png -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.7/build/sphinxcontrib/websupport/files > copying sphinxcontrib/websupport/files/up-pressed.png -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.7/build/sphinxcontrib/websupport/files > copying sphinxcontrib/websupport/files/up.png -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.7/build/sphinxcontrib/websupport/files > copying sphinxcontrib/websupport/files/websupport.js -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.7/build/sphinxcontrib/websupport/files > creating > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.7/build/sphinxcontrib/websupport/templates > copying sphinxcontrib/websupport/templates/searchresults.html -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.7/build/sphinxcontrib/websupport/templates > I: pybuild base:217: /usr/bin/python3 setup.py build > running build > running build_py > creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8/build/sphinxcontrib > copying sphinxcontrib/__init__.py -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8/build/sphinxcontrib > creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8/build/sphinxcontrib/websupport > copying sphinxcontrib/websupport/errors.py -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8/build/sphinxcontrib/websupport > copying sphinxcontrib/websupport/core.py -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8/build/sphinxcontrib/websupport > copying sphinxcontrib/websupport/__init__.py -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8/build/sphinxcontrib/websupport > copying sphinxcontrib/websupport/builder.py -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8/build/sphinxcontrib/websupport > copying sphinxcontrib/websupport/version.py -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8/build/sphinxcontrib/websupport > copying sphinxcontrib/websupport/writer.py -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8/build/sphinxcontrib/websupport > copying sphinxcontrib/websupport/utils.py -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8/build/sphinxcontrib/websupport > creating > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8/build/sphinxcontrib/websupport/storage > copying sphinxcontrib/websupport/storage/__init__.py -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8/build/sphinxcontrib/websupport/storage > copying sphinxcontrib/websupport/storage/sqlalchemy_db.py -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8/build/sphinxcontrib/websupport/storage > copying sphinxcontrib/websupport/storage/sqlalchemystorage.py -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8/build/sphinxcontrib/websupport/storage > copying sphinxcontrib/websupport/storage/differ.py -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8/build/sphinxcontrib/websupport/storage > creating > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8/build/sphinxcontrib/websupport/search > copying sphinxcontrib/websupport/search/__init__.py -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8/build/sphinxcontrib/websupport/search > copying sphinxcontrib/websupport/search/whooshsearch.py -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8/build/sphinxcontrib/websupport/search > copying sphinxcontrib/websupport/search/nullsearch.py -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8/build/sphinxcontrib/websupport/search > copying sphinxcontrib/websupport/search/xapiansearch.py -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8/build/sphinxcontrib/websupport/search > running egg_info > writing sphinxcontrib_websupport.egg-info/PKG-INFO > writing dependency_links to > sphinxcontrib_websupport.egg-info/dependency_links.txt > writing entry points to sphinxcontrib_websupport.egg-info/entry_points.txt > writing namespace_packages to > sphinxcontrib_websupport.egg-info/namespace_packages.txt > writing requirements to sphinxcontrib_websupport.egg-info/requires.txt > writing top-level names to sphinxcontrib_websupport.egg-info/top_level.txt > reading manifest file 'sphinxcontrib_websupport.egg-info/SOURCES.txt' > reading manifest template 'MANIFEST.in' > writing manifest file 'sphinxcontrib_websupport.egg-info/SOURCES.txt' > creating > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8/build/sphinxcontrib/websupport/files > copying sphinxcontrib/websupport/files/ajax-loader.gif -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8/build/sphinxcontrib/websupport/files > copying sphinxcontrib/websupport/files/comment-bright.png -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8/build/sphinxcontrib/websupport/files > copying sphinxcontrib/websupport/files/comment-close.png -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8/build/sphinxcontrib/websupport/files > copying sphinxcontrib/websupport/files/comment.png -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8/build/sphinxcontrib/websupport/files > copying sphinxcontrib/websupport/files/down-pressed.png -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8/build/sphinxcontrib/websupport/files > copying sphinxcontrib/websupport/files/down.png -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8/build/sphinxcontrib/websupport/files > copying sphinxcontrib/websupport/files/up-pressed.png -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8/build/sphinxcontrib/websupport/files > copying sphinxcontrib/websupport/files/up.png -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8/build/sphinxcontrib/websupport/files > copying sphinxcontrib/websupport/files/websupport.js -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8/build/sphinxcontrib/websupport/files > creating > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8/build/sphinxcontrib/websupport/templates > copying sphinxcontrib/websupport/templates/searchresults.html -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8/build/sphinxcontrib/websupport/templates > dh_auto_test -O--buildsystem=pybuild > I: pybuild base:217: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.7/build; > python3.7 -m pytest tests > ============================= test session starts > ============================== > platform linux -- Python 3.7.7, pytest-4.6.9, py-1.8.1, pluggy-0.13.0 > rootdir: /<<PKGBUILDDIR>>, inifile: setup.cfg > collected 13 items > > tests/test_searchadapters.py FF [ > 15%] > tests/test_websupport.py FFFFFFFFFF. > [100%] > > =================================== FAILURES > =================================== > _________________________________ test_xapian > __________________________________ > > self = <sphinx.registry.SphinxComponentRegistry object at 0x7ff9cc509850> > app = <sphinx.application.Sphinx object at 0x7ff9cbbc1f10> > extname = 'sphinxcontrib.websupport.builder' > > def load_extension(self, app: "Sphinx", extname: str) -> None: > """Load a Sphinx extension.""" > if extname in app.extensions: # alread loaded > return > if extname in EXTENSION_BLACKLIST: > logger.warning(__('the extension %r was already merged with > Sphinx since ' > 'version %s; this extension is ignored.'), > extname, EXTENSION_BLACKLIST[extname]) > return > > # update loading context > prefix = __('while setting up extension %s:') % extname > with prefixed_warnings(prefix): > try: > > mod = import_module(extname) > > /usr/lib/python3/dist-packages/sphinx/registry.py:453: > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > > name = 'sphinxcontrib.websupport.builder', package = None > > def import_module(name, package=None): > """Import a module. > > The 'package' argument is required when performing a relative import. > It > specifies the package to use as the anchor point from which to > resolve the > relative import to an absolute import. > > """ > level = 0 > if name.startswith('.'): > if not package: > msg = ("the 'package' argument is required to perform a > relative " > "import for {!r}") > raise TypeError(msg.format(name)) > for character in name: > if character != '.': > break > level += 1 > > return _bootstrap._gcd_import(name[level:], package, level) > > /usr/lib/python3.7/importlib/__init__.py:127: > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > > name = 'sphinxcontrib.websupport.builder', package = None, level = 0 > > > ??? > > <frozen importlib._bootstrap>:1006: > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > > name = 'sphinxcontrib.websupport.builder' > import_ = <function _gcd_import at 0x7ff9ce10cb00> > > > ??? > > <frozen importlib._bootstrap>:983: > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > > name = 'sphinxcontrib.websupport.builder' > import_ = <function _gcd_import at 0x7ff9ce10cb00> > > > ??? > > <frozen importlib._bootstrap>:967: > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > > spec = ModuleSpec(name='sphinxcontrib.websupport.builder', > loader=<_frozen_importlib_external.SourceFileLoader object at > 0x7f...trib-websupport-hkeho8/sphinxcontrib-websupport-1.2.0/.pybuild/cpython3_3.7/build/sphinxcontrib/websupport/builder.py') > > > ??? > > <frozen importlib._bootstrap>:677: > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > > self = <_frozen_importlib_external.SourceFileLoader object at 0x7ff9caea23d0> > module = <module 'sphinxcontrib.websupport.builder' from > '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.7/build/sphinxcontrib/websupport/builder.py'> > > > ??? > > <frozen importlib._bootstrap_external>:728: > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > > f = <built-in function exec> > args = (<code object <module> at 0x7ff9caea6c00, file > "/<<PKGBUILDDIR>>/...ontrib-websupport-1.2.0/.pybuild/cpython3_3.7/build/sphinxcontrib/websupport/__pycache__/builder.cpython-37.pyc', > ...}) > kwds = {} > > > ??? > > <frozen importlib._bootstrap>:219: > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > > """ > > from os import path > import posixpath > import shutil > > from docutils.io import StringOutput > > from sphinx import version_info as sphinx_version > from sphinx.jinja2glue import BuiltinTemplateLoader > from sphinx.util.osutil import os_path, relative_uri, ensuredir, copyfile > > from sphinx.builders.html import PickleHTMLBuilder > E ImportError: cannot import name 'PickleHTMLBuilder' from > 'sphinx.builders.html' (unknown location) > > sphinxcontrib/websupport/builder.py:21: ImportError > > During handling of the above exception, another exception occurred: > > @skip_unless_importable('xapian', 'needs xapian bindings installed') > @pytest.mark.skipif(sqlalchemy_missing, reason='needs sqlalchemy') > def test_xapian(): > > search_adapter_helper('xapian') > > tests/test_searchadapters.py:64: > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > tests/test_searchadapters.py:32: in search_adapter_helper > support.build() > sphinxcontrib/websupport/core.py:139: in build > warning=self.warning) > /usr/lib/python3/dist-packages/sphinx/application.py:239: in __init__ > self.setup_extension(extension) > /usr/lib/python3/dist-packages/sphinx/application.py:391: in setup_extension > self.registry.load_extension(self, extname) > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > > self = <sphinx.registry.SphinxComponentRegistry object at 0x7ff9cc509850> > app = <sphinx.application.Sphinx object at 0x7ff9cbbc1f10> > extname = 'sphinxcontrib.websupport.builder' > > def load_extension(self, app: "Sphinx", extname: str) -> None: > """Load a Sphinx extension.""" > if extname in app.extensions: # alread loaded > return > if extname in EXTENSION_BLACKLIST: > logger.warning(__('the extension %r was already merged with > Sphinx since ' > 'version %s; this extension is ignored.'), > extname, EXTENSION_BLACKLIST[extname]) > return > > # update loading context > prefix = __('while setting up extension %s:') % extname > with prefixed_warnings(prefix): > try: > mod = import_module(extname) > except ImportError as err: > logger.verbose(__('Original exception:\n') + > traceback.format_exc()) > > raise ExtensionError(__('Could not import extension %s') % > > extname, err) > E sphinx.errors.ExtensionError: Could not import extension > sphinxcontrib.websupport.builder (exception: cannot import name > 'PickleHTMLBuilder' from 'sphinx.builders.html' (unknown location)) > > /usr/lib/python3/dist-packages/sphinx/registry.py:456: ExtensionError > _________________________________ test_whoosh > __________________________________ > > self = <sphinx.registry.SphinxComponentRegistry object at 0x7ff9cbb48150> > app = <sphinx.application.Sphinx object at 0x7ff9cbba0e10> > extname = 'sphinxcontrib.websupport.builder' > > def load_extension(self, app: "Sphinx", extname: str) -> None: > """Load a Sphinx extension.""" > if extname in app.extensions: # alread loaded > return > if extname in EXTENSION_BLACKLIST: > logger.warning(__('the extension %r was already merged with > Sphinx since ' > 'version %s; this extension is ignored.'), > extname, EXTENSION_BLACKLIST[extname]) > return > > # update loading context > prefix = __('while setting up extension %s:') % extname > with prefixed_warnings(prefix): > try: > > mod = import_module(extname) > > /usr/lib/python3/dist-packages/sphinx/registry.py:453: > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > > name = 'sphinxcontrib.websupport.builder', package = None > > def import_module(name, package=None): > """Import a module. > > The 'package' argument is required when performing a relative import. > It > specifies the package to use as the anchor point from which to > resolve the > relative import to an absolute import. > > """ > level = 0 > if name.startswith('.'): > if not package: > msg = ("the 'package' argument is required to perform a > relative " > "import for {!r}") > raise TypeError(msg.format(name)) > for character in name: > if character != '.': > break > level += 1 > > return _bootstrap._gcd_import(name[level:], package, level) > > /usr/lib/python3.7/importlib/__init__.py:127: > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > > name = 'sphinxcontrib.websupport.builder', package = None, level = 0 > > > ??? > > <frozen importlib._bootstrap>:1006: > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > > name = 'sphinxcontrib.websupport.builder' > import_ = <function _gcd_import at 0x7ff9ce10cb00> > > > ??? > > <frozen importlib._bootstrap>:983: > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > > name = 'sphinxcontrib.websupport.builder' > import_ = <function _gcd_import at 0x7ff9ce10cb00> > > > ??? > > <frozen importlib._bootstrap>:967: > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > > spec = ModuleSpec(name='sphinxcontrib.websupport.builder', > loader=<_frozen_importlib_external.SourceFileLoader object at > 0x7f...trib-websupport-hkeho8/sphinxcontrib-websupport-1.2.0/.pybuild/cpython3_3.7/build/sphinxcontrib/websupport/builder.py') > > > ??? > > <frozen importlib._bootstrap>:677: > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > > self = <_frozen_importlib_external.SourceFileLoader object at 0x7ff9caba0750> > module = <module 'sphinxcontrib.websupport.builder' from > '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.7/build/sphinxcontrib/websupport/builder.py'> > > > ??? > > <frozen importlib._bootstrap_external>:728: > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > > f = <built-in function exec> > args = (<code object <module> at 0x7ff9cae51c00, file > "/<<PKGBUILDDIR>>/...ontrib-websupport-1.2.0/.pybuild/cpython3_3.7/build/sphinxcontrib/websupport/__pycache__/builder.cpython-37.pyc', > ...}) > kwds = {} > > > ??? > > <frozen importlib._bootstrap>:219: > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > > """ > > from os import path > import posixpath > import shutil > > from docutils.io import StringOutput > > from sphinx import version_info as sphinx_version > from sphinx.jinja2glue import BuiltinTemplateLoader > from sphinx.util.osutil import os_path, relative_uri, ensuredir, copyfile > > from sphinx.builders.html import PickleHTMLBuilder > E ImportError: cannot import name 'PickleHTMLBuilder' from > 'sphinx.builders.html' (unknown location) > > sphinxcontrib/websupport/builder.py:21: ImportError > > During handling of the above exception, another exception occurred: > > @skip_unless_importable('whoosh', 'needs whoosh package installed') > @pytest.mark.skipif(sqlalchemy_missing, reason='needs sqlalchemy') > def test_whoosh(): > > search_adapter_helper('whoosh') > > tests/test_searchadapters.py:70: > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > tests/test_searchadapters.py:32: in search_adapter_helper > support.build() > sphinxcontrib/websupport/core.py:139: in build > warning=self.warning) > /usr/lib/python3/dist-packages/sphinx/application.py:239: in __init__ > self.setup_extension(extension) > /usr/lib/python3/dist-packages/sphinx/application.py:391: in setup_extension > self.registry.load_extension(self, extname) > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > > self = <sphinx.registry.SphinxComponentRegistry object at 0x7ff9cbb48150> > app = <sphinx.application.Sphinx object at 0x7ff9cbba0e10> > extname = 'sphinxcontrib.websupport.builder' > > def load_extension(self, app: "Sphinx", extname: str) -> None: > """Load a Sphinx extension.""" > if extname in app.extensions: # alread loaded > return > if extname in EXTENSION_BLACKLIST: > logger.warning(__('the extension %r was already merged with > Sphinx since ' > 'version %s; this extension is ignored.'), > extname, EXTENSION_BLACKLIST[extname]) > return > > # update loading context > prefix = __('while setting up extension %s:') % extname > with prefixed_warnings(prefix): > try: > mod = import_module(extname) > except ImportError as err: > logger.verbose(__('Original exception:\n') + > traceback.format_exc()) > > raise ExtensionError(__('Could not import extension %s') % > > extname, err) > E sphinx.errors.ExtensionError: Could not import extension > sphinxcontrib.websupport.builder (exception: cannot import name > 'PickleHTMLBuilder' from 'sphinx.builders.html' (unknown location)) > > /usr/lib/python3/dist-packages/sphinx/registry.py:456: ExtensionError > ________________________________ test_no_srcdir > ________________________________ > > self = <sphinx.registry.SphinxComponentRegistry object at 0x7ff9cabb5290> > app = <sphinx.application.Sphinx object at 0x7ff9cabb5210> > extname = 'sphinxcontrib.websupport.builder' > > def load_extension(self, app: "Sphinx", extname: str) -> None: > """Load a Sphinx extension.""" > if extname in app.extensions: # alread loaded > return > if extname in EXTENSION_BLACKLIST: > logger.warning(__('the extension %r was already merged with > Sphinx since ' > 'version %s; this extension is ignored.'), > extname, EXTENSION_BLACKLIST[extname]) > return > > # update loading context > prefix = __('while setting up extension %s:') % extname > with prefixed_warnings(prefix): > try: > > mod = import_module(extname) > > /usr/lib/python3/dist-packages/sphinx/registry.py:453: > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > > name = 'sphinxcontrib.websupport.builder', package = None > > def import_module(name, package=None): > """Import a module. > > The 'package' argument is required when performing a relative import. > It > specifies the package to use as the anchor point from which to > resolve the > relative import to an absolute import. > > """ > level = 0 > if name.startswith('.'): > if not package: > msg = ("the 'package' argument is required to perform a > relative " > "import for {!r}") > raise TypeError(msg.format(name)) > for character in name: > if character != '.': > break > level += 1 > > return _bootstrap._gcd_import(name[level:], package, level) > > /usr/lib/python3.7/importlib/__init__.py:127: > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > > name = 'sphinxcontrib.websupport.builder', package = None, level = 0 > > > ??? > > <frozen importlib._bootstrap>:1006: > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > > name = 'sphinxcontrib.websupport.builder' > import_ = <function _gcd_import at 0x7ff9ce10cb00> > > > ??? > > <frozen importlib._bootstrap>:983: > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > > name = 'sphinxcontrib.websupport.builder' > import_ = <function _gcd_import at 0x7ff9ce10cb00> > > > ??? > > <frozen importlib._bootstrap>:967: > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > > spec = ModuleSpec(name='sphinxcontrib.websupport.builder', > loader=<_frozen_importlib_external.SourceFileLoader object at > 0x7f...trib-websupport-hkeho8/sphinxcontrib-websupport-1.2.0/.pybuild/cpython3_3.7/build/sphinxcontrib/websupport/builder.py') > > > ??? > > <frozen importlib._bootstrap>:677: > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > > self = <_frozen_importlib_external.SourceFileLoader object at 0x7ff9caa06c90> > module = <module 'sphinxcontrib.websupport.builder' from > '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.7/build/sphinxcontrib/websupport/builder.py'> > > > ??? > > <frozen importlib._bootstrap_external>:728: > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > > f = <built-in function exec> > args = (<code object <module> at 0x7ff9cabb1c00, file > "/<<PKGBUILDDIR>>/...ontrib-websupport-1.2.0/.pybuild/cpython3_3.7/build/sphinxcontrib/websupport/__pycache__/builder.cpython-37.pyc', > ...}) > kwds = {} > > > ??? > > <frozen importlib._bootstrap>:219: > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > > """ > > from os import path > import posixpath > import shutil > > from docutils.io import StringOutput > > from sphinx import version_info as sphinx_version > from sphinx.jinja2glue import BuiltinTemplateLoader > from sphinx.util.osutil import os_path, relative_uri, ensuredir, copyfile > > from sphinx.builders.html import PickleHTMLBuilder > E ImportError: cannot import name 'PickleHTMLBuilder' from > 'sphinx.builders.html' (unknown location) > > sphinxcontrib/websupport/builder.py:21: ImportError > > During handling of the above exception, another exception occurred: > > support = <sphinxcontrib.websupport.core.WebSupport object at 0x7ff9cabad1d0> > > @with_support(storage=NullStorage()) > def test_no_srcdir(support): > # make sure the correct exception is raised if srcdir is not given. > with pytest.raises(RuntimeError): > > support.build() > > tests/test_websupport.py:57: > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > sphinxcontrib/websupport/core.py:139: in build > warning=self.warning) > /usr/lib/python3/dist-packages/sphinx/application.py:239: in __init__ > self.setup_extension(extension) > /usr/lib/python3/dist-packages/sphinx/application.py:391: in setup_extension > self.registry.load_extension(self, extname) > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > > self = <sphinx.registry.SphinxComponentRegistry object at 0x7ff9cabb5290> > app = <sphinx.application.Sphinx object at 0x7ff9cabb5210> > extname = 'sphinxcontrib.websupport.builder' > > def load_extension(self, app: "Sphinx", extname: str) -> None: > """Load a Sphinx extension.""" > if extname in app.extensions: # alread loaded > return > if extname in EXTENSION_BLACKLIST: > logger.warning(__('the extension %r was already merged with > Sphinx since ' > 'version %s; this extension is ignored.'), > extname, EXTENSION_BLACKLIST[extname]) > return > > # update loading context > prefix = __('while setting up extension %s:') % extname > with prefixed_warnings(prefix): > try: > mod = import_module(extname) > except ImportError as err: > logger.verbose(__('Original exception:\n') + > traceback.format_exc()) > > raise ExtensionError(__('Could not import extension %s') % > > extname, err) > E sphinx.errors.ExtensionError: Could not import extension > sphinxcontrib.websupport.builder (exception: cannot import name > 'PickleHTMLBuilder' from 'sphinx.builders.html' (unknown location)) > > /usr/lib/python3/dist-packages/sphinx/registry.py:456: ExtensionError > ----------------------------- Captured stdout call > ----------------------------- > [01mRunning Sphinx v2.4.3[39;49;00m > __________________________________ test_build > __________________________________ > > self = <sphinx.registry.SphinxComponentRegistry object at 0x7ff9ca993150> > app = <sphinx.application.Sphinx object at 0x7ff9ca993210> > extname = 'sphinxcontrib.websupport.builder' > > def load_extension(self, app: "Sphinx", extname: str) -> None: > """Load a Sphinx extension.""" > if extname in app.extensions: # alread loaded > return > if extname in EXTENSION_BLACKLIST: > logger.warning(__('the extension %r was already merged with > Sphinx since ' > 'version %s; this extension is ignored.'), > extname, EXTENSION_BLACKLIST[extname]) > return > > # update loading context > prefix = __('while setting up extension %s:') % extname > with prefixed_warnings(prefix): > try: > > mod = import_module(extname) > > /usr/lib/python3/dist-packages/sphinx/registry.py:453: > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > > name = 'sphinxcontrib.websupport.builder', package = None > > def import_module(name, package=None): > """Import a module. > > The 'package' argument is required when performing a relative import. > It > specifies the package to use as the anchor point from which to > resolve the > relative import to an absolute import. > > """ > level = 0 > if name.startswith('.'): > if not package: > msg = ("the 'package' argument is required to perform a > relative " > "import for {!r}") > raise TypeError(msg.format(name)) > for character in name: > if character != '.': > break > level += 1 > > return _bootstrap._gcd_import(name[level:], package, level) > > /usr/lib/python3.7/importlib/__init__.py:127: > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > > name = 'sphinxcontrib.websupport.builder', package = None, level = 0 > > > ??? > > <frozen importlib._bootstrap>:1006: > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > > name = 'sphinxcontrib.websupport.builder' > import_ = <function _gcd_import at 0x7ff9ce10cb00> > > > ??? > > <frozen importlib._bootstrap>:983: > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > > name = 'sphinxcontrib.websupport.builder' > import_ = <function _gcd_import at 0x7ff9ce10cb00> > > > ??? > > <frozen importlib._bootstrap>:967: > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > > spec = ModuleSpec(name='sphinxcontrib.websupport.builder', > loader=<_frozen_importlib_external.SourceFileLoader object at > 0x7f...trib-websupport-hkeho8/sphinxcontrib-websupport-1.2.0/.pybuild/cpython3_3.7/build/sphinxcontrib/websupport/builder.py') > > > ??? > > <frozen importlib._bootstrap>:677: > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > > self = <_frozen_importlib_external.SourceFileLoader object at 0x7ff9cab50b90> > module = <module 'sphinxcontrib.websupport.builder' from > '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.7/build/sphinxcontrib/websupport/builder.py'> > > > ??? > > <frozen importlib._bootstrap_external>:728: > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > > f = <built-in function exec> > args = (<code object <module> at 0x7ff9cab53300, file > "/<<PKGBUILDDIR>>/...ontrib-websupport-1.2.0/.pybuild/cpython3_3.7/build/sphinxcontrib/websupport/__pycache__/builder.cpython-37.pyc', > ...}) > kwds = {} > > > ??? > > <frozen importlib._bootstrap>:219: > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > > """ > > from os import path > import posixpath > import shutil > > from docutils.io import StringOutput > > from sphinx import version_info as sphinx_version > from sphinx.jinja2glue import BuiltinTemplateLoader > from sphinx.util.osutil import os_path, relative_uri, ensuredir, copyfile > > from sphinx.builders.html import PickleHTMLBuilder > E ImportError: cannot import name 'PickleHTMLBuilder' from > 'sphinx.builders.html' (unknown location) > > sphinxcontrib/websupport/builder.py:21: ImportError > > During handling of the above exception, another exception occurred: > > support = <sphinxcontrib.websupport.core.WebSupport object at 0x7ff9ca998610> > > @pytest.mark.skipif(sqlalchemy_missing, reason='needs sqlalchemy') > @with_support() > def test_build(support): > > support.build() > > tests/test_websupport.py:63: > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > sphinxcontrib/websupport/core.py:139: in build > warning=self.warning) > /usr/lib/python3/dist-packages/sphinx/application.py:239: in __init__ > self.setup_extension(extension) > /usr/lib/python3/dist-packages/sphinx/application.py:391: in setup_extension > self.registry.load_extension(self, extname) > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > > self = <sphinx.registry.SphinxComponentRegistry object at 0x7ff9ca993150> > app = <sphinx.application.Sphinx object at 0x7ff9ca993210> > extname = 'sphinxcontrib.websupport.builder' > > def load_extension(self, app: "Sphinx", extname: str) -> None: > """Load a Sphinx extension.""" > if extname in app.extensions: # alread loaded > return > if extname in EXTENSION_BLACKLIST: > logger.warning(__('the extension %r was already merged with > Sphinx since ' > 'version %s; this extension is ignored.'), > extname, EXTENSION_BLACKLIST[extname]) > return > > # update loading context > prefix = __('while setting up extension %s:') % extname > with prefixed_warnings(prefix): > try: > mod = import_module(extname) > except ImportError as err: > logger.verbose(__('Original exception:\n') + > traceback.format_exc()) > > raise ExtensionError(__('Could not import extension %s') % > > extname, err) > E sphinx.errors.ExtensionError: Could not import extension > sphinxcontrib.websupport.builder (exception: cannot import name > 'PickleHTMLBuilder' from 'sphinx.builders.html' (unknown location)) > > /usr/lib/python3/dist-packages/sphinx/registry.py:456: ExtensionError > ----------------------------- Captured stdout call > ----------------------------- > [01mRunning Sphinx v2.4.3[39;49;00m > ______________________________ test_get_document > _______________________________ > > self = <sphinxcontrib.websupport.core.WebSupport object at 0x7ff9ca9391d0> > docname = 'contents', username = '', moderator = False > > def get_document(self, docname, username='', moderator=False): > """Load and return a document from a pickle. The document will > be a dict object which can be used to render a template:: > > support = WebSupport(datadir=datadir) > support.get_document('index', username, moderator) > > In most cases `docname` will be taken from the request path and > passed directly to this function. In Flask, that would be something > like this:: > > @app.route('/<path:docname>') > def index(docname): > username = g.user.name if g.user else '' > moderator = g.user.moderator if g.user else False > try: > document = support.get_document(docname, username, > moderator) > except DocumentNotFoundError: > abort(404) > render_template('doc.html', document=document) > > The document dict that is returned contains the following items > to be used during template rendering. > > * **body**: The main body of the document as HTML > * **sidebar**: The sidebar of the document as HTML > * **relbar**: A div containing links to related documents > * **title**: The title of the document > * **css**: Links to css files used by Sphinx > * **script**: Javascript containing comment options > > This raises > :class:`~sphinxcontrib.websupport.errors.DocumentNotFoundError` > if a document matching `docname` is not found. > > :param docname: the name of the document to load. > """ > docpath = path.join(self.datadir, 'pickles', docname) > if path.isdir(docpath): > infilename = docpath + '/index.fpickle' > if not docname: > docname = 'index' > else: > docname += '/index' > else: > infilename = docpath + '.fpickle' > > try: > > with open(infilename, 'rb') as f: > E FileNotFoundError: [Errno 2] No such file or directory: > '/tmp/tmpcy3d8f89/websupport/data/pickles/contents.fpickle' > > sphinxcontrib/websupport/core.py:203: FileNotFoundError > > During handling of the above exception, another exception occurred: > > support = <sphinxcontrib.websupport.core.WebSupport object at 0x7ff9ca9391d0> > > @pytest.mark.skipif(sqlalchemy_missing, reason='needs sqlalchemy') > @with_support() > def test_get_document(support): > with pytest.raises(DocumentNotFoundError): > support.get_document('nonexisting') > > > contents = support.get_document('contents') > > tests/test_websupport.py:72: > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > > self = <sphinxcontrib.websupport.core.WebSupport object at 0x7ff9ca9391d0> > docname = 'contents', username = '', moderator = False > > def get_document(self, docname, username='', moderator=False): > """Load and return a document from a pickle. The document will > be a dict object which can be used to render a template:: > > support = WebSupport(datadir=datadir) > support.get_document('index', username, moderator) > > In most cases `docname` will be taken from the request path and > passed directly to this function. In Flask, that would be something > like this:: > > @app.route('/<path:docname>') > def index(docname): > username = g.user.name if g.user else '' > moderator = g.user.moderator if g.user else False > try: > document = support.get_document(docname, username, > moderator) > except DocumentNotFoundError: > abort(404) > render_template('doc.html', document=document) > > The document dict that is returned contains the following items > to be used during template rendering. > > * **body**: The main body of the document as HTML > * **sidebar**: The sidebar of the document as HTML > * **relbar**: A div containing links to related documents > * **title**: The title of the document > * **css**: Links to css files used by Sphinx > * **script**: Javascript containing comment options > > This raises > :class:`~sphinxcontrib.websupport.errors.DocumentNotFoundError` > if a document matching `docname` is not found. > > :param docname: the name of the document to load. > """ > docpath = path.join(self.datadir, 'pickles', docname) > if path.isdir(docpath): > infilename = docpath + '/index.fpickle' > if not docname: > docname = 'index' > else: > docname += '/index' > else: > infilename = docpath + '.fpickle' > > try: > with open(infilename, 'rb') as f: > document = pickle.load(f) > except IOError: > raise errors.DocumentNotFoundError( > > 'The document "%s" could not be found' % docname) > E sphinxcontrib.websupport.errors.DocumentNotFoundError: The > document "contents" could not be found > > sphinxcontrib/websupport/core.py:207: DocumentNotFoundError > ________________________________ test_comments > _________________________________ > > support = <sphinxcontrib.websupport.core.WebSupport object at 0x7ff9cc509850> > > @pytest.mark.skipif(sqlalchemy_missing, reason='needs sqlalchemy') > @with_support() > def test_comments(support): > session = Session() > nodes = session.query(Node).all() > > first_node = nodes[0] > E IndexError: list index out of range > > tests/test_websupport.py:82: IndexError > __________________________ test_user_delete_comments > ___________________________ > > support = <sphinxcontrib.websupport.core.WebSupport object at 0x7ff9cab50e10> > > @pytest.mark.skipif(sqlalchemy_missing, reason='needs sqlalchemy') > @with_support() > def test_user_delete_comments(support): > def get_comment(): > session = Session() > node = session.query(Node).first() > session.close() > return support.get_data(node.id)['comments'][0] > > > comment = get_comment() > > tests/test_websupport.py:135: > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > > def get_comment(): > session = Session() > node = session.query(Node).first() > session.close() > > return support.get_data(node.id)['comments'][0] > E AttributeError: 'NoneType' object has no attribute 'id' > > tests/test_websupport.py:133: AttributeError > _______________________________ test_moderation > ________________________________ > > support = <sphinxcontrib.websupport.core.WebSupport object at 0x7ff9cabad450> > > @pytest.mark.skipif(sqlalchemy_missing, reason='needs sqlalchemy') > @with_support(moderation_callback=moderation_callback) > def test_moderation(support): > session = Session() > nodes = session.query(Node).all() > > node = nodes[7] > E IndexError: list index out of range > > tests/test_websupport.py:160: IndexError > ________________________ test_moderator_delete_comments > ________________________ > > support = <sphinxcontrib.websupport.core.WebSupport object at 0x7ff9ca998690> > > @pytest.mark.skipif(sqlalchemy_missing, reason='needs sqlalchemy') > @with_support() > def test_moderator_delete_comments(support): > def get_comment(): > session = Session() > node = session.query(Node).first() > session.close() > return support.get_data(node.id, moderator=True)['comments'][1] > > > comment = get_comment() > > tests/test_websupport.py:190: > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > > def get_comment(): > session = Session() > node = session.query(Node).first() > session.close() > > return support.get_data(node.id, moderator=True)['comments'][1] > E AttributeError: 'NoneType' object has no attribute 'id' > > tests/test_websupport.py:188: AttributeError > _____________________________ test_update_username > _____________________________ > > support = <sphinxcontrib.websupport.core.WebSupport object at 0x7ff9cab89b50> > > @pytest.mark.skipif(sqlalchemy_missing, reason='needs sqlalchemy') > @with_support() > def test_update_username(support): > support.update_username('user_two', 'new_user_two') > session = Session() > comments = session.query(Comment).\ > filter(Comment.username == 'user_two').all() > assert len(comments) == 0 > votes = session.query(CommentVote).\ > filter(CommentVote.username == 'user_two').all() > assert len(votes) == 0 > comments = session.query(Comment).\ > filter(Comment.username == 'new_user_two').all() > > assert len(comments) == 1 > E assert 0 == 1 > E + where 0 = len([]) > > tests/test_websupport.py:210: AssertionError > ________________________________ test_proposals > ________________________________ > > support = <sphinxcontrib.websupport.core.WebSupport object at 0x7ff9caa86950> > > @pytest.mark.skipif(sqlalchemy_missing, reason='needs sqlalchemy') > @with_support() > def test_proposals(support): > session = Session() > node = session.query(Node).first() > > > data = support.get_data(node.id) > E AttributeError: 'NoneType' object has no attribute 'id' > > tests/test_websupport.py:222: AttributeError > _________________________________ test_voting > __________________________________ > > support = <sphinxcontrib.websupport.core.WebSupport object at 0x7ff9cab52390> > > @pytest.mark.skipif(sqlalchemy_missing, reason='needs sqlalchemy') > @with_support() > def test_voting(support): > session = Session() > nodes = session.query(Node).all() > > node = nodes[0] > E IndexError: list index out of range > > tests/test_websupport.py:237: IndexError > =============================== warnings summary > =============================== > sphinxcontrib/websupport/__init__.py:18 > > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.7/build/sphinxcontrib/websupport/__init__.py:18: > RemovedInSphinx40Warning: sphinx.util.pycompat.htmlescape is deprecated. > Check CHANGES for Sphinx API modifications. > from sphinxcontrib.websupport.core import WebSupport # NOQA > > sphinxcontrib/websupport/core.py:32 > > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.7/build/sphinxcontrib/websupport/core.py:32: > RemovedInSphinx40Warning: sphinx.util.jsonimpl is deprecated > from sphinx.util.jsonimpl import dumps as dump_json > > .pybuild/cpython3_3.7/build/tests/test_searchadapters.py::test_xapian > /usr/lib/python3/dist-packages/jinja2/sandbox.py:19: DeprecationWarning: > Using or importing the ABCs from 'collections' instead of from > 'collections.abc' is deprecated since Python 3.3,and in 3.9 it will stop > working > from collections import Mapping > > -- Docs: https://docs.pytest.org/en/latest/warnings.html > =============== 12 failed, 1 passed, 3 warnings in 0.91 seconds > ================ > E: pybuild pybuild:352: test: plugin distutils failed with: exit code=1: cd > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.7/build; python3.7 -m pytest tests > dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p "3.7 > 3.8" returned exit code 13 The full build log is available from: http://qa-logs.debian.net/2020/03/26/sphinxcontrib-websupport_1.2.0-1_unstable_sphinx243.log Please see [1] for Sphinx changelog, which may give a hint of what changes in Sphinx caused this error. Also see [2] for the list of deprecated/removed APIs and possible alternatives to them. Sphinx 2.4 is going to be uploaded to unstable in a couple of weeks. When that happens, the severity of this bug will be bumped to serious. In case you have questions, please Cc sph...@packages.debian.org on reply. [1]: https://www.sphinx-doc.org/en/2.0/changes.html [2]: https://www.sphinx-doc.org/en/2.0/extdev/deprecated.html#dev-deprecated-apis A list of current common problems and possible solutions is available at http://wiki.debian.org/qa.debian.org/FTBFS . You're welcome to contribute! About the archive rebuild: The rebuild was done on EC2 VM instances from Amazon Web Services, using a clean, minimal and up-to-date chroot. Every failed build was retried once to eliminate random failures. _______________________________________________ Python-modules-team mailing list Python-modules-team@alioth-lists.debian.net https://alioth-lists.debian.net/cgi-bin/mailman/listinfo/python-modules-team