Package: src:mkdocstrings
Version: 0.27.0-1
Severity: serious
Tags: ftbfs trixie sid

Dear maintainer:

During a rebuild of all packages in unstable, your package failed to build:

--------------------------------------------------------------------------------
[...]
 debian/rules clean
dh clean --buildsystem=pybuild
   dh_auto_clean -O--buildsystem=pybuild
   dh_autoreconf_clean -O--buildsystem=pybuild
   debian/rules override_dh_clean
make[1]: Entering directory '/<<PKGBUILDDIR>>'
dh_clean
rm -rf .pdm-build .mypy_cache
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
 debian/rules binary
dh binary --buildsystem=pybuild
   dh_update_autotools_config -O--buildsystem=pybuild
   dh_autoreconf -O--buildsystem=pybuild
   dh_auto_configure -O--buildsystem=pybuild
   dh_auto_build -O--buildsystem=pybuild
I: pybuild plugin_pyproject:129: Building wheel for python3.12 with "build" 
module
I: pybuild base:311: python3.12 -m build --skip-dependency-check --no-isolation 
--wheel --outdir /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_mkdocstrings  
* Building wheel...
 - Adding .pdm-build/mkdocstrings-0.27.0.dist-info/METADATA -> 
mkdocstrings-0.27.0.dist-info/METADATA
 - Adding .pdm-build/mkdocstrings-0.27.0.dist-info/WHEEL -> 
mkdocstrings-0.27.0.dist-info/WHEEL
 - Adding .pdm-build/mkdocstrings-0.27.0.dist-info/entry_points.txt -> 
mkdocstrings-0.27.0.dist-info/entry_points.txt
 - Adding .pdm-build/mkdocstrings-0.27.0.dist-info/licenses/LICENSE -> 
mkdocstrings-0.27.0.dist-info/licenses/LICENSE
 - Adding src/mkdocstrings/__init__.py -> mkdocstrings/__init__.py
 - Adding src/mkdocstrings/_cache.py -> mkdocstrings/_cache.py
 - Adding src/mkdocstrings/debug.py -> mkdocstrings/debug.py
 - Adding src/mkdocstrings/extension.py -> mkdocstrings/extension.py
 - Adding src/mkdocstrings/handlers/__init__.py -> 
mkdocstrings/handlers/__init__.py
 - Adding src/mkdocstrings/handlers/base.py -> mkdocstrings/handlers/base.py
 - Adding src/mkdocstrings/handlers/rendering.py -> 
mkdocstrings/handlers/rendering.py
 - Adding src/mkdocstrings/inventory.py -> mkdocstrings/inventory.py
 - Adding src/mkdocstrings/loggers.py -> mkdocstrings/loggers.py
 - Adding src/mkdocstrings/plugin.py -> mkdocstrings/plugin.py
 - Adding src/mkdocstrings/py.typed -> mkdocstrings/py.typed
 - Adding mkdocstrings-0.27.0.dist-info/RECORD -> 
mkdocstrings-0.27.0.dist-info/RECORD
Successfully built mkdocstrings-0.27.0-py3-none-any.whl
I: pybuild plugin_pyproject:144: Unpacking wheel built for python3.12 with 
"installer" module
I: pybuild plugin_pyproject:129: Building wheel for python3.13 with "build" 
module
I: pybuild base:311: python3.13 -m build --skip-dependency-check --no-isolation 
--wheel --outdir /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_mkdocstrings  
* Building wheel...
 - Adding .pdm-build/mkdocstrings-0.27.0.dist-info/METADATA -> 
mkdocstrings-0.27.0.dist-info/METADATA
 - Adding .pdm-build/mkdocstrings-0.27.0.dist-info/WHEEL -> 
mkdocstrings-0.27.0.dist-info/WHEEL
 - Adding .pdm-build/mkdocstrings-0.27.0.dist-info/entry_points.txt -> 
mkdocstrings-0.27.0.dist-info/entry_points.txt
 - Adding .pdm-build/mkdocstrings-0.27.0.dist-info/licenses/LICENSE -> 
mkdocstrings-0.27.0.dist-info/licenses/LICENSE
 - Adding src/mkdocstrings/__init__.py -> mkdocstrings/__init__.py
 - Adding src/mkdocstrings/_cache.py -> mkdocstrings/_cache.py
 - Adding src/mkdocstrings/debug.py -> mkdocstrings/debug.py
 - Adding src/mkdocstrings/extension.py -> mkdocstrings/extension.py
 - Adding src/mkdocstrings/handlers/__init__.py -> 
mkdocstrings/handlers/__init__.py
 - Adding src/mkdocstrings/handlers/base.py -> mkdocstrings/handlers/base.py
 - Adding src/mkdocstrings/handlers/rendering.py -> 
mkdocstrings/handlers/rendering.py
 - Adding src/mkdocstrings/inventory.py -> mkdocstrings/inventory.py
 - Adding src/mkdocstrings/loggers.py -> mkdocstrings/loggers.py
 - Adding src/mkdocstrings/plugin.py -> mkdocstrings/plugin.py
 - Adding src/mkdocstrings/py.typed -> mkdocstrings/py.typed
 - Adding mkdocstrings-0.27.0.dist-info/RECORD -> 
mkdocstrings-0.27.0.dist-info/RECORD
Successfully built mkdocstrings-0.27.0-py3-none-any.whl
I: pybuild plugin_pyproject:144: Unpacking wheel built for python3.13 with 
"installer" module
   dh_auto_test -O--buildsystem=pybuild
I: pybuild pybuild:308: cp -r /<<PKGBUILDDIR>>/docs /<<PKGBUILDDIR>>/mkdocs.yml 
/<<PKGBUILDDIR>>/*.md /<<PKGBUILDDIR>>/src 
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_mkdocstrings/build
I: pybuild base:311: cd 
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_mkdocstrings/build; python3.12 -m 
pytest -k ' not test_sphinx_load_mkdocstrings_inventory_file and not 
test_extended_templates and not test_disabling_plugin and not 
test_load_inventory '
============================= test session starts ==============================
platform linux -- Python 3.12.8, pytest-8.3.4, pluggy-1.5.0
rootdir: /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_mkdocstrings/build
configfile: pyproject.toml
plugins: typeguard-4.4.1
collected 62 items / 2 deselected / 1 skipped / 60 selected

tests/test_cache.py .............................                        [ 48%]
tests/test_extension.py ......XXX.F....                                  [ 73%]
tests/test_handlers.py ........                                          [ 86%]
tests/test_loggers.py ......                                             [ 96%]
tests/test_plugin.py ..                                                  [100%]

=================================== FAILURES ===================================
________________ test_dont_register_every_identifier_as_anchor _________________

plugin = <mkdocstrings.plugin.MkdocstringsPlugin object at 0x7fbd178106b0>
ext_markdown = <markdown.core.Markdown object at 0x7fbd178104a0>

    def test_dont_register_every_identifier_as_anchor(plugin: 
MkdocstringsPlugin, ext_markdown: Markdown) -> None:
        """Assert that we don't preemptively register all identifiers of a 
rendered object."""
        handler = plugin._handlers.get_handler("python")  # type: 
ignore[union-attr]
        ids = ("id1", "id2", "id3")
        handler.get_anchors = lambda _: ids  # type: ignore[method-assign]
        ext_markdown.convert("::: tests.fixtures.headings")
        autorefs = 
ext_markdown.parser.blockprocessors["mkdocstrings"]._autorefs  # type: 
ignore[attr-defined]
        for identifier in ids:
>           assert identifier not in autorefs._url_map
E           AttributeError: 'AutorefsPlugin' object has no attribute '_url_map'

tests/test_extension.py:166: AttributeError
=============================== warnings summary ===============================
tests/test_extension.py: 15 warnings
  
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_mkdocstrings/build/mkdocstrings/plugin.py:190:
 DeprecationWarning: Setting a fallback anchor function is deprecated and will 
be removed in a future release.
    autorefs.get_fallback_anchor = self.handlers.get_anchors

-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
=========================== short test summary info ============================
FAILED tests/test_extension.py::test_dont_register_every_identifier_as_anchor
= 1 failed, 56 passed, 1 skipped, 2 deselected, 3 xpassed, 15 warnings in 1.04s 
=
E: pybuild pybuild:389: test: plugin pyproject failed with: exit code=1: cd 
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_mkdocstrings/build; python3.12 -m 
pytest -k ' not test_sphinx_load_mkdocstrings_inventory_file and not 
test_extended_templates and not test_disabling_plugin and not 
test_load_inventory '
I: pybuild pybuild:308: cp -r /<<PKGBUILDDIR>>/docs /<<PKGBUILDDIR>>/mkdocs.yml 
/<<PKGBUILDDIR>>/*.md /<<PKGBUILDDIR>>/src 
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_mkdocstrings/build
I: pybuild base:311: cd 
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_mkdocstrings/build; python3.13 -m 
pytest -k ' not test_sphinx_load_mkdocstrings_inventory_file and not 
test_extended_templates and not test_disabling_plugin and not 
test_load_inventory '
============================= test session starts ==============================
platform linux -- Python 3.13.1, pytest-8.3.4, pluggy-1.5.0
rootdir: /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_mkdocstrings/build
configfile: pyproject.toml
plugins: typeguard-4.4.1
collected 62 items / 2 deselected / 1 skipped / 60 selected

tests/test_cache.py .............................                        [ 48%]
tests/test_extension.py ......XXX.F....                                  [ 73%]
tests/test_handlers.py ........                                          [ 86%]
tests/test_loggers.py ......                                             [ 96%]
tests/test_plugin.py ..                                                  [100%]

=================================== FAILURES ===================================
________________ test_dont_register_every_identifier_as_anchor _________________

plugin = <mkdocstrings.plugin.MkdocstringsPlugin object at 0x7f8fb18efed0>
ext_markdown = <markdown.core.Markdown object at 0x7f8fb1378050>

    def test_dont_register_every_identifier_as_anchor(plugin: 
MkdocstringsPlugin, ext_markdown: Markdown) -> None:
        """Assert that we don't preemptively register all identifiers of a 
rendered object."""
        handler = plugin._handlers.get_handler("python")  # type: 
ignore[union-attr]
        ids = ("id1", "id2", "id3")
        handler.get_anchors = lambda _: ids  # type: ignore[method-assign]
        ext_markdown.convert("::: tests.fixtures.headings")
        autorefs = 
ext_markdown.parser.blockprocessors["mkdocstrings"]._autorefs  # type: 
ignore[attr-defined]
        for identifier in ids:
>           assert identifier not in autorefs._url_map
E           AttributeError: 'AutorefsPlugin' object has no attribute '_url_map'

tests/test_extension.py:166: AttributeError
=============================== warnings summary ===============================
tests/test_extension.py: 15 warnings
  
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_mkdocstrings/build/mkdocstrings/plugin.py:190:
 DeprecationWarning: Setting a fallback anchor function is deprecated and will 
be removed in a future release.
    autorefs.get_fallback_anchor = self.handlers.get_anchors

-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
=========================== short test summary info ============================
FAILED tests/test_extension.py::test_dont_register_every_identifier_as_anchor
= 1 failed, 56 passed, 1 skipped, 2 deselected, 3 xpassed, 15 warnings in 0.93s 
=
E: pybuild pybuild:389: test: plugin pyproject failed with: exit code=1: cd 
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_mkdocstrings/build; python3.13 -m 
pytest -k ' not test_sphinx_load_mkdocstrings_inventory_file and not 
test_extended_templates and not test_disabling_plugin and not 
test_load_inventory '
dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p "3.12 
3.13" returned exit code 13
make: *** [debian/rules:21: binary] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2
--------------------------------------------------------------------------------

The above is just how the build ends and not necessarily the most relevant part.
If required, the full build log is available here:

https://people.debian.org/~sanvila/build-logs/202501/

About the archive rebuild: The build was made on virtual machines from AWS,
using sbuild and a reduced chroot with only build-essential packages.

If you could not reproduce the bug please contact me privately, as I
am willing to provide ssh access to a virtual machine where the bug is
fully reproducible.

If this is really a bug in one of the build-depends, please use
reassign and add an affects on src:mkdocstrings, so that this is still
visible in the BTS web page for this package.

Thanks.

Reply via email to