Source: sphinxcontrib-websupport Version: 1.2.4-2 Severity: serious Justification: FTBFS Tags: trixie sid ftbfs User: [email protected] Usertags: ftbfs-20230925 ftbfs-trixie
Hi, During a rebuild of all packages in sid, your package failed to build on amd64. Relevant part (hopefully): > 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:291: python3.11 setup.py config > /usr/lib/python3/dist-packages/setuptools/config/setupcfg.py:293: > _DeprecatedConfig: Deprecated config in `setup.cfg` > !! > > > ******************************************************************************** > The license_file parameter is deprecated, use license_files instead. > > By 2023-Oct-30, you need to update your project and remove deprecated > calls > or your builds will no longer be supported. > > See > https://setuptools.pypa.io/en/latest/userguide/declarative_config.html for > details. > > ******************************************************************************** > > !! > parsed = self.parsers.get(option_name, lambda x: x)(value) > /usr/lib/python3/dist-packages/setuptools/dist.py:946: > SetuptoolsDeprecationWarning: The namespace_packages parameter is deprecated. > !! > > > ******************************************************************************** > Please replace its usage with implicit namespaces (PEP 420). > > See > https://setuptools.pypa.io/en/latest/references/keywords.html#keyword-namespace-packages > for details. > > ******************************************************************************** > > !! > ep.load()(self, ep.name, value) > running config > dh_auto_build -O--buildsystem=pybuild > I: pybuild base:291: /usr/bin/python3 setup.py build > /usr/lib/python3/dist-packages/setuptools/config/setupcfg.py:293: > _DeprecatedConfig: Deprecated config in `setup.cfg` > !! > > > ******************************************************************************** > The license_file parameter is deprecated, use license_files instead. > > By 2023-Oct-30, you need to update your project and remove deprecated > calls > or your builds will no longer be supported. > > See > https://setuptools.pypa.io/en/latest/userguide/declarative_config.html for > details. > > ******************************************************************************** > > !! > parsed = self.parsers.get(option_name, lambda x: x)(value) > /usr/lib/python3/dist-packages/setuptools/dist.py:946: > SetuptoolsDeprecationWarning: The namespace_packages parameter is deprecated. > !! > > > ******************************************************************************** > Please replace its usage with implicit namespaces (PEP 420). > > See > https://setuptools.pypa.io/en/latest/references/keywords.html#keyword-namespace-packages > for details. > > ******************************************************************************** > > !! > ep.load()(self, ep.name, value) > running build > running build_py > creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/sphinxcontrib > copying sphinxcontrib/__init__.py -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/sphinxcontrib > creating > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/sphinxcontrib/websupport > copying sphinxcontrib/websupport/builder.py -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/sphinxcontrib/websupport > copying sphinxcontrib/websupport/utils.py -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/sphinxcontrib/websupport > copying sphinxcontrib/websupport/errors.py -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/sphinxcontrib/websupport > copying sphinxcontrib/websupport/core.py -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/sphinxcontrib/websupport > copying sphinxcontrib/websupport/version.py -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/sphinxcontrib/websupport > copying sphinxcontrib/websupport/writer.py -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/sphinxcontrib/websupport > copying sphinxcontrib/websupport/__init__.py -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/sphinxcontrib/websupport > creating > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/sphinxcontrib/websupport/search > copying sphinxcontrib/websupport/search/whooshsearch.py -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/sphinxcontrib/websupport/search > copying sphinxcontrib/websupport/search/nullsearch.py -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/sphinxcontrib/websupport/search > copying sphinxcontrib/websupport/search/__init__.py -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/sphinxcontrib/websupport/search > copying sphinxcontrib/websupport/search/xapiansearch.py -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/sphinxcontrib/websupport/search > creating > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/sphinxcontrib/websupport/storage > copying sphinxcontrib/websupport/storage/sqlalchemystorage.py -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/sphinxcontrib/websupport/storage > copying sphinxcontrib/websupport/storage/__init__.py -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/sphinxcontrib/websupport/storage > copying sphinxcontrib/websupport/storage/sqlalchemy_db.py -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/sphinxcontrib/websupport/storage > copying sphinxcontrib/websupport/storage/differ.py -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/sphinxcontrib/websupport/storage > 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' > adding license file 'LICENSE' > writing manifest file 'sphinxcontrib_websupport.egg-info/SOURCES.txt' > /usr/lib/python3/dist-packages/setuptools/command/build_py.py:204: _Warning: > Package 'sphinxcontrib.websupport.files' is absent from the `packages` > configuration. > !! > > > ******************************************************************************** > ############################ > # Package would be ignored # > ############################ > Python recognizes 'sphinxcontrib.websupport.files' as an importable > package[^1], > but it is absent from setuptools' `packages` configuration. > > This leads to an ambiguous overall configuration. If you want to > distribute this > package, please make sure that 'sphinxcontrib.websupport.files' is > explicitly added > to the `packages` configuration field. > > Alternatively, you can also rely on setuptools' discovery methods > (for example by using `find_namespace_packages(...)`/`find_namespace:` > instead of `find_packages(...)`/`find:`). > > You can read more about "package discovery" on setuptools > documentation page: > > - > https://setuptools.pypa.io/en/latest/userguide/package_discovery.html > > If you don't want 'sphinxcontrib.websupport.files' to be distributed > and are > already explicitly excluding 'sphinxcontrib.websupport.files' via > `find_namespace_packages(...)/find_namespace` or > `find_packages(...)/find`, > you can try to use `exclude_package_data`, or > `include-package-data=False` in > combination with a more fine grained `package-data` configuration. > > You can read more about "package data files" on setuptools > documentation page: > > - https://setuptools.pypa.io/en/latest/userguide/datafiles.html > > > [^1]: For Python, any directory (with suitable naming) can be > imported, > even if it does not contain any `.py` files. > On the other hand, currently there is no concept of package data > directory, all directories are treated like packages. > > ******************************************************************************** > > !! > check.warn(importable) > /usr/lib/python3/dist-packages/setuptools/command/build_py.py:204: _Warning: > Package 'sphinxcontrib.websupport.templates' is absent from the `packages` > configuration. > !! > > > ******************************************************************************** > ############################ > # Package would be ignored # > ############################ > Python recognizes 'sphinxcontrib.websupport.templates' as an > importable package[^1], > but it is absent from setuptools' `packages` configuration. > > This leads to an ambiguous overall configuration. If you want to > distribute this > package, please make sure that 'sphinxcontrib.websupport.templates' > is explicitly added > to the `packages` configuration field. > > Alternatively, you can also rely on setuptools' discovery methods > (for example by using `find_namespace_packages(...)`/`find_namespace:` > instead of `find_packages(...)`/`find:`). > > You can read more about "package discovery" on setuptools > documentation page: > > - > https://setuptools.pypa.io/en/latest/userguide/package_discovery.html > > If you don't want 'sphinxcontrib.websupport.templates' to be > distributed and are > already explicitly excluding 'sphinxcontrib.websupport.templates' via > `find_namespace_packages(...)/find_namespace` or > `find_packages(...)/find`, > you can try to use `exclude_package_data`, or > `include-package-data=False` in > combination with a more fine grained `package-data` configuration. > > You can read more about "package data files" on setuptools > documentation page: > > - https://setuptools.pypa.io/en/latest/userguide/datafiles.html > > > [^1]: For Python, any directory (with suitable naming) can be > imported, > even if it does not contain any `.py` files. > On the other hand, currently there is no concept of package data > directory, all directories are treated like packages. > > ******************************************************************************** > > !! > check.warn(importable) > creating > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/sphinxcontrib/websupport/files > copying sphinxcontrib/websupport/files/ajax-loader.gif -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/sphinxcontrib/websupport/files > copying sphinxcontrib/websupport/files/comment-bright.png -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/sphinxcontrib/websupport/files > copying sphinxcontrib/websupport/files/comment-close.png -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/sphinxcontrib/websupport/files > copying sphinxcontrib/websupport/files/comment.png -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/sphinxcontrib/websupport/files > copying sphinxcontrib/websupport/files/down-pressed.png -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/sphinxcontrib/websupport/files > copying sphinxcontrib/websupport/files/down.png -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/sphinxcontrib/websupport/files > copying sphinxcontrib/websupport/files/up-pressed.png -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/sphinxcontrib/websupport/files > copying sphinxcontrib/websupport/files/up.png -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/sphinxcontrib/websupport/files > copying sphinxcontrib/websupport/files/websupport.js -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/sphinxcontrib/websupport/files > creating > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/sphinxcontrib/websupport/templates > copying sphinxcontrib/websupport/templates/searchresults.html -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/sphinxcontrib/websupport/templates > I: pybuild pybuild:340: rm > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/sphinxcontrib/__init__.py > dh_auto_test -O--buildsystem=pybuild > I: pybuild base:291: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build; > python3.11 -m pytest tests > ============================= test session starts > ============================== > platform linux -- Python 3.11.5, pytest-7.4.2, pluggy-1.3.0 > rootdir: /<<PKGBUILDDIR>> > configfile: setup.cfg > collected 13 items > > tests/test_searchadapters.py FF [ > 15%] > tests/test_websupport.py .F.FFFFFFF. > [100%] > > =================================== FAILURES > =================================== > _________________________________ test_xapian > __________________________________ > > @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:144: in build > app.build() > /usr/lib/python3/dist-packages/sphinx/application.py:341: in build > self.builder.build_update() > /usr/lib/python3/dist-packages/sphinx/builders/__init__.py:310: in > build_update > self.build(to_build, > /usr/lib/python3/dist-packages/sphinx/builders/__init__.py:379: in build > self.finish() > /usr/lib/python3/dist-packages/sphinx/builders/html/__init__.py:692: in finish > self.handle_finish() > sphinxcontrib/websupport/builder.py:190: in handle_finish > PickleHTMLBuilder.handle_finish(self) > /usr/lib/python3/dist-packages/sphinxcontrib/serializinghtml/__init__.py:111: > in handle_finish > self.dump_context(self.globalcontext, outfilename) > /usr/lib/python3/dist-packages/sphinxcontrib/serializinghtml/__init__.py:70: > in dump_context > context['script_files'] = [js.filename for js in context['script_files']] > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > > .0 = <list_iterator object at 0x7fc2e3ee6290> > > > context['script_files'] = [js.filename for js in context['script_files']] > E AttributeError: 'str' object has no attribute 'filename' > > /usr/lib/python3/dist-packages/sphinxcontrib/serializinghtml/__init__.py:70: > AttributeError > _________________________________ test_whoosh > __________________________________ > > @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:144: in build > app.build() > /usr/lib/python3/dist-packages/sphinx/application.py:341: in build > self.builder.build_update() > /usr/lib/python3/dist-packages/sphinx/builders/__init__.py:310: in > build_update > self.build(to_build, > /usr/lib/python3/dist-packages/sphinx/builders/__init__.py:379: in build > self.finish() > /usr/lib/python3/dist-packages/sphinx/builders/html/__init__.py:692: in finish > self.handle_finish() > sphinxcontrib/websupport/builder.py:190: in handle_finish > PickleHTMLBuilder.handle_finish(self) > /usr/lib/python3/dist-packages/sphinxcontrib/serializinghtml/__init__.py:111: > in handle_finish > self.dump_context(self.globalcontext, outfilename) > /usr/lib/python3/dist-packages/sphinxcontrib/serializinghtml/__init__.py:70: > in dump_context > context['script_files'] = [js.filename for js in context['script_files']] > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > > .0 = <list_iterator object at 0x7fc2e3966a40> > > > context['script_files'] = [js.filename for js in context['script_files']] > E AttributeError: 'str' object has no attribute 'filename' > > /usr/lib/python3/dist-packages/sphinxcontrib/serializinghtml/__init__.py:70: > AttributeError > __________________________________ test_build > __________________________________ > > support = <sphinxcontrib.websupport.core.WebSupport object at 0x7fc2e3a18310> > > @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:144: in build > app.build() > /usr/lib/python3/dist-packages/sphinx/application.py:341: in build > self.builder.build_update() > /usr/lib/python3/dist-packages/sphinx/builders/__init__.py:310: in > build_update > self.build(to_build, > /usr/lib/python3/dist-packages/sphinx/builders/__init__.py:379: in build > self.finish() > /usr/lib/python3/dist-packages/sphinx/builders/html/__init__.py:692: in finish > self.handle_finish() > sphinxcontrib/websupport/builder.py:190: in handle_finish > PickleHTMLBuilder.handle_finish(self) > /usr/lib/python3/dist-packages/sphinxcontrib/serializinghtml/__init__.py:111: > in handle_finish > self.dump_context(self.globalcontext, outfilename) > /usr/lib/python3/dist-packages/sphinxcontrib/serializinghtml/__init__.py:70: > in dump_context > context['script_files'] = [js.filename for js in context['script_files']] > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > > .0 = <list_iterator object at 0x7fc2e386afe0> > > > context['script_files'] = [js.filename for js in context['script_files']] > E AttributeError: 'str' object has no attribute 'filename' > > /usr/lib/python3/dist-packages/sphinxcontrib/serializinghtml/__init__.py:70: > AttributeError > ----------------------------- Captured stdout call > ----------------------------- > [01mRunning Sphinx v5.3.0[39;49;00m > [01mbuilding [mo]: [39;49;00mtargets for 0 po files that are out of date > [01mbuilding [websupport]: [39;49;00mtargets for 14 source files that are > out of date > [01mupdating environment: [39;49;00m[new config] 14 added, 0 changed, 0 > removed > [01mreading sources... [39;49;00m[ 7%] [35mbom[39;49;00m > > [01mreading sources... [39;49;00m[ 14%] [35mcontents[39;49;00m > > [01mreading sources... [39;49;00m[ 21%] [35mextapi[39;49;00m > > [01mreading sources... [39;49;00m[ 28%] [35mextensions[39;49;00m > > [01mreading sources... [39;49;00m[ 35%] [35mfootnote[39;49;00m > > [01mreading sources... [39;49;00m[ 42%] [35mimages[39;49;00m > > [01mreading sources... [39;49;00m[ 50%] [35mincludes[39;49;00m > > [01mreading sources... [39;49;00m[ 57%] [35mlists[39;49;00m > > [01mreading sources... [39;49;00m[ 64%] [35mmarkup[39;49;00m > > [01mreading sources... [39;49;00m[ 71%] [35mmath[39;49;00m > > [01mreading sources... [39;49;00m[ 78%] [35mmetadata[39;49;00m > > [01mreading sources... [39;49;00m[ 85%] [35mobjects[39;49;00m > > [01mreading sources... [39;49;00m[ 92%] [35msubdir/images[39;49;00m > > [01mreading sources... [39;49;00m[100%] [35msubdir/includes[39;49;00m > > > [01mlooking for now-outdated files... [39;49;00mnone found > [01mpickling environment... [39;49;00mdone > [01mchecking consistency... [39;49;00mdone > [01mpreparing documents... [39;49;00mdone > [01mwriting output... [39;49;00m[ 7%] [32mbom[39;49;00m > > [01mwriting output... [39;49;00m[ 14%] [32mcontents[39;49;00m > > [01mwriting output... [39;49;00m[ 21%] [32mextapi[39;49;00m > > [01mwriting output... [39;49;00m[ 28%] [32mextensions[39;49;00m > > [01mwriting output... [39;49;00m[ 35%] [32mfootnote[39;49;00m > > [01mwriting output... [39;49;00m[ 42%] [32mimages[39;49;00m > > [01mwriting output... [39;49;00m[ 50%] [32mincludes[39;49;00m > > [01mwriting output... [39;49;00m[ 57%] [32mlists[39;49;00m > > [01mwriting output... [39;49;00m[ 64%] [32mmarkup[39;49;00m > > [01mwriting output... [39;49;00m[ 71%] [32mmath[39;49;00m > > [01mwriting output... [39;49;00m[ 78%] [32mmetadata[39;49;00m > > [01mwriting output... [39;49;00m[ 85%] [32mobjects[39;49;00m > > [01mwriting output... [39;49;00m[ 92%] [32msubdir/images[39;49;00m > > [01mwriting output... [39;49;00m[100%] [32msubdir/includes[39;49;00m > > > [01mgenerating indices... [39;49;00mgenindex py-modindex done > [01mwriting additional pages... [39;49;00msearch done > [01mcopying images... [39;49;00m[ 14%] [33mimg.png[39;49;00m > > [01mcopying images... [39;49;00m[ 28%] [33msubdir/img.png[39;49;00m > > [01mcopying images... [39;49;00m[ 42%] [33msubdir/simg.png[39;49;00m > > [01mcopying images... [39;49;00m[ 57%] [33msvgimg.svg[39;49;00m > > [01mcopying images... [39;49;00m[ 71%] [33mimg.foo.png[39;49;00m > > [01mcopying images... [39;49;00m[ 85%] [33m../root/img.png[39;49;00m > > [01mcopying images... [39;49;00m[100%] [33mrimg.png[39;49;00m > > > [01mcopying downloadable files... [39;49;00m[ 50%] > [33m../img.png[39;49;00m > [01mcopying downloadable files... [39;49;00m[100%] > [33m../subdir/img.png[39;49;00m > > [01mcopying static files... [39;49;00mdone > [01mcopying extra files... [39;49;00mdone > ----------------------------- Captured stderr call > ----------------------------- > [91m/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/tests/root/contents.txt:10: > WARNING: toctree contains reference to nonexisting document > 'autodoc'[39;49;00m > [91m/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/tests/root/contents.txt:10: > WARNING: duplicated entry found in toctree: extensions[39;49;00m > [31m/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/tests/root/extensions.txt:7: > ERROR: Unknown interpreted text role "issue".[39;49;00m > [31m/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/tests/root/extensions.txt:7: > ERROR: Unknown interpreted text role "pyurl".[39;49;00m > [31m/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/tests/root/extensions.txt:7: > ERROR: Unknown interpreted text role "issue".[39;49;00m > [31m/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/tests/root/extensions.txt:14: > ERROR: Unknown directive type "todo". > > .. todo:: > > Test the todo extension.[39;49;00m > [31m/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/tests/root/extensions.txt:18: > ERROR: Unknown directive type "todo". > > .. todo:: > > Test with |sub| (see #286).[39;49;00m > [31m/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/tests/root/extensions.txt:28: > ERROR: Unknown directive type "todolist". > > .. todolist::[39;49;00m > [91m/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/tests/root/images.txt:9: > WARNING: image file not readable: foo.png[39;49;00m > [91m/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/tests/root/includes.txt:4: > WARNING: download file not readable: > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/tests/root/nonexisting.png[39;49;00m > [91m/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/tests/root/objects.txt:110: > WARNING: Error in declarator > If declarator-id with parameters (e.g., 'void f(int arg)'): > Invalid C declaration: Expected identifier in nested name. [error at 18] > Sphinx_DoSomething() > ------------------^ > If parenthesis in noptr-declarator (e.g., 'void (*f(int arg))(double)'): > Error in declarator or parameters > Invalid C declaration: Expected identifier in nested name. [error at 19] > Sphinx_DoSomething() > -------------------^ > [39;49;00m > [91m/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/tests/root/objects.txt:112: > WARNING: Error in declarator or parameters > Invalid C declaration: Expected identifier in nested name. [error at 19] > SphinxStruct.member > -------------------^[39;49;00m > [91m/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/tests/root/objects.txt:118: > WARNING: Error in declarator or parameters > Invalid C declaration: Expected identifier in nested name. [error at 13] > sphinx_global > -------------^[39;49;00m > [91m/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/tests/root/contents.txt:10: > WARNING: extensions is already assigned section numbers (nested numbered > toctree?)[39;49;00m > [91m/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/tests/root/objects.txt:143: > WARNING: Unparseable C cross-reference: 'SphinxType *' > Invalid C declaration: Expected end of definition. [error at 11] > SphinxType * > -----------^[39;49;00m > ________________________________ test_comments > _________________________________ > > support = <sphinxcontrib.websupport.core.WebSupport object at 0x7fc2e3bc8210> > > @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 0x7fc2e397a890> > > @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 0x7fc2e3b756d0> > > @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 0x7fc2e3b76590> > > @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 > _____________________________ > > self = <sqlalchemy.engine.base.Connection object at 0x7fc2e3b74f90> > dialect = <sqlalchemy.dialects.sqlite.pysqlite.SQLiteDialect_pysqlite object > at 0x7fc2e4115950> > constructor = <bound method DefaultExecutionContext._init_compiled of <class > 'sqlalchemy.dialects.sqlite.base.SQLiteExecutionContext'>> > statement = 'UPDATE sphinx_comments SET username=? WHERE > sphinx_comments.username = ?' > parameters = ('new_user_two', 'user_two') > execution_options = immutabledict({'autocommit': True, 'synchronize_session': > 'evaluate', '_sa_orm_update_options': default_update_options...e', > _value_evaluators={'username': <function > EvaluatorCompiler.visit_bindparam.<locals>.<lambda> at 0x7fc2e417f100>})}) > args = (<sqlalchemy.dialects.sqlite.base.SQLiteCompiler object at > 0x7fc2e3b76190>, [{}], <sqlalchemy.sql.annotation.Annotated...', 'user_two', > type_=String(length=64)), BindParameter('%(140475020829136 param)s', > 'new_user_two', type_=NullType())]) > kw = {'cache_hit': symbol('CACHE_MISS')} > branched = <sqlalchemy.engine.base.Connection object at 0x7fc2e3b74f90> > yp = None > conn = <sqlalchemy.pool.base._ConnectionFairy object at 0x7fc2e3b77ad0> > context = <sqlalchemy.dialects.sqlite.base.SQLiteExecutionContext object at > 0x7fc2e41174d0> > cursor = <sqlite3.Cursor object at 0x7fc2e48485c0>, evt_handled = False > > def _execute_context( > self, > dialect, > constructor, > statement, > parameters, > execution_options, > *args, > **kw > ): > """Create an :class:`.ExecutionContext` and execute, returning > a :class:`_engine.CursorResult`.""" > > branched = self > if self.__branch_from: > # if this is a "branched" connection, do everything in terms > # of the "root" connection, *except* for .close(), which is > # the only feature that branching provides > self = self.__branch_from > > if execution_options: > yp = execution_options.get("yield_per", None) > if yp: > execution_options = execution_options.union( > {"stream_results": True, "max_row_buffer": yp} > ) > > try: > conn = self._dbapi_connection > if conn is None: > conn = self._revalidate_connection() > > context = constructor( > dialect, self, conn, execution_options, *args, **kw > ) > except (exc.PendingRollbackError, exc.ResourceClosedError): > raise > except BaseException as e: > self._handle_dbapi_exception( > e, util.text_type(statement), parameters, None, None > ) > > if ( > self._transaction > and not self._transaction.is_active > or ( > self._nested_transaction > and not self._nested_transaction.is_active > ) > ): > self._invalid_transaction() > > elif self._trans_context_manager: > TransactionalContext._trans_ctx_check(self) > > if self._is_future and self._transaction is None: > self._autobegin() > > context.pre_exec() > > if dialect.use_setinputsizes: > context._set_input_sizes() > > cursor, statement, parameters = ( > context.cursor, > context.statement, > context.parameters, > ) > > if not context.executemany: > parameters = parameters[0] > > if self._has_events or self.engine._has_events: > for fn in self.dispatch.before_cursor_execute: > statement, parameters = fn( > self, > cursor, > statement, > parameters, > context, > context.executemany, > ) > > if self._echo: > > self._log_info(statement) > > stats = context._get_cache_stats() > > if not self.engine.hide_parameters: > self._log_info( > "[%s] %r", > stats, > sql_util._repr_params( > parameters, batches=10, ismulti=context.executemany > ), > ) > else: > self._log_info( > "[%s] [SQL parameters hidden due to hide_parameters=True]" > % (stats,) > ) > > evt_handled = False > try: > if context.executemany: > if self.dialect._has_events: > for fn in self.dialect.dispatch.do_executemany: > if fn(cursor, statement, parameters, context): > evt_handled = True > break > if not evt_handled: > self.dialect.do_executemany( > cursor, statement, parameters, context > ) > elif not parameters and context.no_parameters: > if self.dialect._has_events: > for fn in self.dialect.dispatch.do_execute_no_params: > if fn(cursor, statement, context): > evt_handled = True > break > if not evt_handled: > self.dialect.do_execute_no_params( > cursor, statement, context > ) > else: > if self.dialect._has_events: > for fn in self.dialect.dispatch.do_execute: > if fn(cursor, statement, parameters, context): > evt_handled = True > break > if not evt_handled: > > self.dialect.do_execute( > cursor, statement, parameters, context > ) > > /usr/lib/python3/dist-packages/sqlalchemy/engine/base.py:1900: > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > > self = <sqlalchemy.dialects.sqlite.pysqlite.SQLiteDialect_pysqlite object at > 0x7fc2e4115950> > cursor = <sqlite3.Cursor object at 0x7fc2e48485c0> > statement = 'UPDATE sphinx_comments SET username=? WHERE > sphinx_comments.username = ?' > parameters = ('new_user_two', 'user_two') > context = <sqlalchemy.dialects.sqlite.base.SQLiteExecutionContext object at > 0x7fc2e41174d0> > > def do_execute(self, cursor, statement, parameters, context=None): > > cursor.execute(statement, parameters) > E sqlite3.OperationalError: database is locked > > /usr/lib/python3/dist-packages/sqlalchemy/engine/default.py:736: > OperationalError > > The above exception was the direct cause of the following exception: > > support = <sphinxcontrib.websupport.core.WebSupport object at 0x7fc2e3a0b050> > > @pytest.mark.skipif(sqlalchemy_missing, reason='needs sqlalchemy') > @with_support() > def test_update_username(support): > > support.update_username('user_two', 'new_user_two') > > tests/test_websupport.py:200: > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > sphinxcontrib/websupport/core.py:385: in update_username > self.storage.update_username(old_username, new_username) > sphinxcontrib/websupport/storage/sqlalchemystorage.py:160: in update_username > update({Comment.username: new_username}) > /usr/lib/python3/dist-packages/sqlalchemy/orm/query.py:3306: in update > result = self.session.execute( > /usr/lib/python3/dist-packages/sqlalchemy/orm/session.py:1714: in execute > result = conn._execute_20(statement, params or {}, execution_options) > /usr/lib/python3/dist-packages/sqlalchemy/engine/base.py:1705: in _execute_20 > return meth(self, args_10style, kwargs_10style, execution_options) > /usr/lib/python3/dist-packages/sqlalchemy/sql/elements.py:334: in > _execute_on_connection > return connection._execute_clauseelement( > /usr/lib/python3/dist-packages/sqlalchemy/engine/base.py:1572: in > _execute_clauseelement > ret = self._execute_context( > /usr/lib/python3/dist-packages/sqlalchemy/engine/base.py:1943: in > _execute_context > self._handle_dbapi_exception( > /usr/lib/python3/dist-packages/sqlalchemy/engine/base.py:2124: in > _handle_dbapi_exception > util.raise_( > /usr/lib/python3/dist-packages/sqlalchemy/util/compat.py:211: in raise_ > raise exception > /usr/lib/python3/dist-packages/sqlalchemy/engine/base.py:1900: in > _execute_context > self.dialect.do_execute( > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > > self = <sqlalchemy.dialects.sqlite.pysqlite.SQLiteDialect_pysqlite object at > 0x7fc2e4115950> > cursor = <sqlite3.Cursor object at 0x7fc2e48485c0> > statement = 'UPDATE sphinx_comments SET username=? WHERE > sphinx_comments.username = ?' > parameters = ('new_user_two', 'user_two') > context = <sqlalchemy.dialects.sqlite.base.SQLiteExecutionContext object at > 0x7fc2e41174d0> > > def do_execute(self, cursor, statement, parameters, context=None): > > cursor.execute(statement, parameters) > E sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) database > is locked > E [SQL: UPDATE sphinx_comments SET username=? WHERE > sphinx_comments.username = ?] > E [parameters: ('new_user_two', 'user_two')] > E (Background on this error at: https://sqlalche.me/e/14/e3q8) > > /usr/lib/python3/dist-packages/sqlalchemy/engine/default.py:736: > OperationalError > ________________________________ test_proposals > ________________________________ > > support = <sphinxcontrib.websupport.core.WebSupport object at 0x7fc2e3eb92d0> > > @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 0x7fc2e3f5f110> > > @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:14 > > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/sphinxcontrib/websupport/__init__.py:14: > DeprecationWarning: pkg_resources is deprecated as an API. See > https://setuptools.pypa.io/en/latest/pkg_resources.html > __import__('pkg_resources').declare_namespace(__name__) > > sphinxcontrib/websupport/__init__.py:14 > > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/sphinxcontrib/websupport/__init__.py:14: > DeprecationWarning: Deprecated call to > `pkg_resources.declare_namespace('sphinxcontrib.websupport')`. > Implementing implicit namespace packages (as specified in PEP 420) is > preferred to `pkg_resources.declare_namespace`. See > https://setuptools.pypa.io/en/latest/references/keywords.html#keyword-namespace-packages > __import__('pkg_resources').declare_namespace(__name__) > > ../../../../../../usr/lib/python3/dist-packages/pkg_resources/__init__.py:2350 > /usr/lib/python3/dist-packages/pkg_resources/__init__.py:2350: > DeprecationWarning: Deprecated call to > `pkg_resources.declare_namespace('sphinxcontrib')`. > Implementing implicit namespace packages (as specified in PEP 420) is > preferred to `pkg_resources.declare_namespace`. See > https://setuptools.pypa.io/en/latest/references/keywords.html#keyword-namespace-packages > declare_namespace(parent) > > ../../../../../../usr/lib/python3/dist-packages/babel/messages/catalog.py:13 > /usr/lib/python3/dist-packages/babel/messages/catalog.py:13: > DeprecationWarning: 'cgi' is deprecated and slated for removal in Python 3.13 > from cgi import parse_header > > ../../../../../../usr/lib/python3/dist-packages/sphinx/util/images.py:4 > /usr/lib/python3/dist-packages/sphinx/util/images.py:4: DeprecationWarning: > 'imghdr' is deprecated and slated for removal in Python 3.13 > import imghdr > > sphinxcontrib/websupport/storage/sqlalchemy_db.py:24 > > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/sphinxcontrib/websupport/storage/sqlalchemy_db.py:24: > MovedIn20Warning: Deprecated API features detected! These feature(s) are not > compatible with SQLAlchemy 2.0. To prevent incompatible upgrades prior to > updating applications, ensure requirements files are pinned to > "sqlalchemy<2.0". Set environment variable SQLALCHEMY_WARN_20=1 to show all > deprecation warnings. Set environment variable > SQLALCHEMY_SILENCE_UBER_WARNING=1 to silence this message. (Background on > SQLAlchemy 2.0 at: https://sqlalche.me/e/b8d9) > Base = declarative_base() > > -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html > =========================== short test summary info > ============================ > FAILED tests/test_searchadapters.py::test_xapian - AttributeError: 'str' > obje... > FAILED tests/test_searchadapters.py::test_whoosh - AttributeError: 'str' > obje... > FAILED tests/test_websupport.py::test_build - AttributeError: 'str' object > ha... > FAILED tests/test_websupport.py::test_comments - IndexError: list index out > o... > FAILED tests/test_websupport.py::test_user_delete_comments - AttributeError: > ... > FAILED tests/test_websupport.py::test_moderation - IndexError: list index > out... > FAILED tests/test_websupport.py::test_moderator_delete_comments - > AttributeEr... > FAILED tests/test_websupport.py::test_update_username - > sqlalchemy.exc.Operat... > FAILED tests/test_websupport.py::test_proposals - AttributeError: 'NoneType' > ... > FAILED tests/test_websupport.py::test_voting - IndexError: list index out of > ... > ================== 10 failed, 3 passed, 6 warnings in 10.19s > =================== > E: pybuild pybuild:395: test: plugin distutils failed with: exit code=1: cd > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build; python3.11 -m pytest tests > dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p 3.11 > returned exit code 13 The full build log is available from: http://qa-logs.debian.net/2023/09/25/sphinxcontrib-websupport_1.2.4-2_unstable.log All bugs filed during this archive rebuild are listed at: https://bugs.debian.org/cgi-bin/pkgreport.cgi?tag=ftbfs-20230925;[email protected] or: https://udd.debian.org/bugs/?release=na&merged=ign&fnewerval=7&flastmodval=7&fusertag=only&fusertagtag=ftbfs-20230925&[email protected]&allbugs=1&cseverity=1&ctags=1&caffected=1#results 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! If you reassign this bug to another package, please mark it as 'affects'-ing this package. See https://www.debian.org/Bugs/server-control#affects If you fail to reproduce this, please provide a build log and diff it with mine so that we can identify if something relevant changed in the meantime.

