#1141028 virt-manager: FTBFS: Argument(s) {'path'} are declared in the hookimpl but can not be found in the hookspec

#1141028#5
Date:
2026-06-28 20:53:08 UTC
From:
To:
Dear maintainer:

During a rebuild of all packages in unstable, this package failed to build.

Below you will find the last part of the build log (probably the most
relevant part, but not necessarily). If required, the full build log
is available here:

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

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 cannot 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:virt-manager, so that this is still
visible in the BTS web page for this package.

Thanks.
--------------------------------------------------------------------------------
[...]
 debian/rules clean
dh clean --buildsystem=meson
   dh_auto_clean -O--buildsystem=meson
   dh_autoreconf_clean -O--buildsystem=meson
   dh_clean -O--buildsystem=meson
 debian/rules binary
dh binary --buildsystem=meson
   dh_update_autotools_config -O--buildsystem=meson
   dh_autoreconf -O--buildsystem=meson
   debian/rules override_dh_auto_configure
make[1]: Entering directory '/<<PKGBUILDDIR>>'
dh_auto_configure -- \
  -Dcompile-schemas=false \
  -Dupdate-icon-cache=false \
  -Dtests=disabled
	cd obj-x86_64-linux-gnu && DEB_PYTHON_INSTALL_LAYOUT=deb LC_ALL=C.UTF-8 meson setup .. --wrap-mode=nodownload --buildtype=plain --prefix=/usr --sysconfdir=/etc --localstatedir=/var --libdir=lib/x86_64-linux-gnu -Dpython.bytecompile=-1 -Dcompile-schemas=false -Dupdate-icon-cache=false -Dtests=disabled
The Meson build system
Version: 1.11.1
Source dir: /<<PKGBUILDDIR>>
Build dir: /<<PKGBUILDDIR>>/obj-x86_64-linux-gnu
Build type: native build
Project name: virt-manager
Project version: 5.1.0
Host machine cpu family: x86_64
Host machine cpu: x86_64
Program python3 found: YES (/usr/bin/python3)
Program make_bin_wrapper.py found: YES (/usr/bin/python3 /<<PKGBUILDDIR>>/scripts/make_bin_wrapper.py)
Program meson_dist.py found: YES (/usr/bin/python3 /<<PKGBUILDDIR>>/scripts/meson_dist.py)
Program rst2man found: YES (/usr/bin/rst2man)
Configuring virt-install using configuration
Configuring virt-clone using configuration
Configuring virt-xml using configuration
Configuring build.cfg using configuration
Program msgfmt found: YES (/usr/bin/msgfmt)
Program msginit found: YES (/usr/bin/msginit)
Program msgmerge found: YES (/usr/bin/msgmerge)
Program xgettext found: YES (/usr/bin/xgettext)
Build targets in project: 66

virt-manager 5.1.0

  User defined options
    buildtype         : plain
    compile-schemas   : false
    libdir            : lib/x86_64-linux-gnu
    localstatedir     : /var
    prefix            : /usr
    python.bytecompile: -1
    sysconfdir        : /etc
    tests             : disabled
    update-icon-cache : false
    wrap_mode         : nodownload

Found ninja-1.13.2 at /usr/bin/ninja
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
   dh_auto_build -O--buildsystem=meson
	cd obj-x86_64-linux-gnu && LC_ALL=C.UTF-8 ninja -j2 -v
[1/63] /usr/bin/rst2man --strict ../man/virt-clone.rst man/virt-clone.1
[2/63] /usr/bin/rst2man --strict ../man/virt-install.rst man/virt-install.1
[3/63] /usr/bin/rst2man --strict ../man/virt-xml.rst man/virt-xml.1
[4/63] /usr/bin/rst2man --strict ../man/virt-manager.rst man/virt-manager.1
[5/63] /usr/bin/meson --internal msgfmthelper --msgfmt=/usr/bin/msgfmt ../data/virt-manager.desktop.in po/virt-manager.desktop desktop /<<PKGBUILDDIR>>/po
[6/63] /usr/bin/msgfmt -o po/ar/LC_MESSAGES/virt-manager.mo ../po/ar.po
[7/63] /usr/bin/msgfmt -o po/as/LC_MESSAGES/virt-manager.mo ../po/as.po
[8/63] /usr/bin/msgfmt -o po/bg/LC_MESSAGES/virt-manager.mo ../po/bg.po
[9/63] /usr/bin/meson --internal msgfmthelper --msgfmt=/usr/bin/msgfmt ../data/virt-manager.appdata.xml.in po/virt-manager.appdata.xml xml /<<PKGBUILDDIR>>/po
[10/63] /usr/bin/msgfmt -o po/bn_IN/LC_MESSAGES/virt-manager.mo ../po/bn_IN.po
[11/63] /usr/bin/msgfmt -o po/bs/LC_MESSAGES/virt-manager.mo ../po/bs.po
[12/63] /usr/bin/msgfmt -o po/ca/LC_MESSAGES/virt-manager.mo ../po/ca.po
[13/63] /usr/bin/msgfmt -o po/cs/LC_MESSAGES/virt-manager.mo ../po/cs.po
[14/63] /usr/bin/msgfmt -o po/da/LC_MESSAGES/virt-manager.mo ../po/da.po
[15/63] /usr/bin/msgfmt -o po/de/LC_MESSAGES/virt-manager.mo ../po/de.po
[16/63] /usr/bin/msgfmt -o po/en_GB/LC_MESSAGES/virt-manager.mo ../po/en_GB.po
[17/63] /usr/bin/msgfmt -o po/fa/LC_MESSAGES/virt-manager.mo ../po/fa.po
[18/63] /usr/bin/msgfmt -o po/es/LC_MESSAGES/virt-manager.mo ../po/es.po
[19/63] /usr/bin/msgfmt -o po/fi/LC_MESSAGES/virt-manager.mo ../po/fi.po
[20/63] /usr/bin/msgfmt -o po/fr/LC_MESSAGES/virt-manager.mo ../po/fr.po
[21/63] /usr/bin/msgfmt -o po/gl/LC_MESSAGES/virt-manager.mo ../po/gl.po
[22/63] /usr/bin/msgfmt -o po/fur/LC_MESSAGES/virt-manager.mo ../po/fur.po
[23/63] /usr/bin/msgfmt -o po/gu/LC_MESSAGES/virt-manager.mo ../po/gu.po
[24/63] /usr/bin/msgfmt -o po/hi/LC_MESSAGES/virt-manager.mo ../po/hi.po
[25/63] /usr/bin/msgfmt -o po/hr/LC_MESSAGES/virt-manager.mo ../po/hr.po
[26/63] /usr/bin/msgfmt -o po/hu/LC_MESSAGES/virt-manager.mo ../po/hu.po
[27/63] /usr/bin/msgfmt -o po/id/LC_MESSAGES/virt-manager.mo ../po/id.po
[28/63] /usr/bin/msgfmt -o po/ie/LC_MESSAGES/virt-manager.mo ../po/ie.po
[29/63] /usr/bin/msgfmt -o po/is/LC_MESSAGES/virt-manager.mo ../po/is.po
[30/63] /usr/bin/msgfmt -o po/it/LC_MESSAGES/virt-manager.mo ../po/it.po
[31/63] /usr/bin/msgfmt -o po/ja/LC_MESSAGES/virt-manager.mo ../po/ja.po
[32/63] /usr/bin/msgfmt -o po/kab/LC_MESSAGES/virt-manager.mo ../po/kab.po
[33/63] /usr/bin/msgfmt -o po/ka/LC_MESSAGES/virt-manager.mo ../po/ka.po
[34/63] /usr/bin/msgfmt -o po/ko/LC_MESSAGES/virt-manager.mo ../po/ko.po
[35/63] /usr/bin/msgfmt -o po/kn/LC_MESSAGES/virt-manager.mo ../po/kn.po
[36/63] /usr/bin/msgfmt -o po/mr/LC_MESSAGES/virt-manager.mo ../po/mr.po
[37/63] /usr/bin/msgfmt -o po/ml/LC_MESSAGES/virt-manager.mo ../po/ml.po
[38/63] /usr/bin/msgfmt -o po/ms/LC_MESSAGES/virt-manager.mo ../po/ms.po
[39/63] /usr/bin/msgfmt -o po/nb/LC_MESSAGES/virt-manager.mo ../po/nb.po
[40/63] /usr/bin/msgfmt -o po/nl/LC_MESSAGES/virt-manager.mo ../po/nl.po
[41/63] /usr/bin/msgfmt -o po/or/LC_MESSAGES/virt-manager.mo ../po/or.po
[42/63] /usr/bin/msgfmt -o po/pa/LC_MESSAGES/virt-manager.mo ../po/pa.po
[43/63] /usr/bin/msgfmt -o po/pl/LC_MESSAGES/virt-manager.mo ../po/pl.po
[44/63] /usr/bin/msgfmt -o po/pt/LC_MESSAGES/virt-manager.mo ../po/pt.po
[45/63] /usr/bin/msgfmt -o po/pt_BR/LC_MESSAGES/virt-manager.mo ../po/pt_BR.po
[46/63] /usr/bin/msgfmt -o po/ro/LC_MESSAGES/virt-manager.mo ../po/ro.po
[47/63] /usr/bin/msgfmt -o po/ru/LC_MESSAGES/virt-manager.mo ../po/ru.po
[48/63] /usr/bin/msgfmt -o po/si/LC_MESSAGES/virt-manager.mo ../po/si.po
[49/63] /usr/bin/msgfmt -o po/sk/LC_MESSAGES/virt-manager.mo ../po/sk.po
[50/63] /usr/bin/msgfmt -o po/sr/LC_MESSAGES/virt-manager.mo ../po/sr.po
[51/63] /usr/bin/msgfmt -o po/sr@latin/LC_MESSAGES/virt-manager.mo ../po/sr@latin.po
[52/63] /usr/bin/msgfmt -o po/sv/LC_MESSAGES/virt-manager.mo ../po/sv.po
[53/63] /usr/bin/msgfmt -o po/ta/LC_MESSAGES/virt-manager.mo ../po/ta.po
[54/63] /usr/bin/msgfmt -o po/te/LC_MESSAGES/virt-manager.mo ../po/te.po
[55/63] /usr/bin/msgfmt -o po/tr/LC_MESSAGES/virt-manager.mo ../po/tr.po
[56/63] /usr/bin/msgfmt -o po/uk/LC_MESSAGES/virt-manager.mo ../po/uk.po
[57/63] /usr/bin/msgfmt -o po/vi/LC_MESSAGES/virt-manager.mo ../po/vi.po
[58/63] /usr/bin/msgfmt -o po/zh_CN/LC_MESSAGES/virt-manager.mo ../po/zh_CN.po
[59/63] /usr/bin/msgfmt -o po/zh_TW/LC_MESSAGES/virt-manager.mo ../po/zh_TW.po
[60/63] /usr/bin/meson --internal exe --capture virt-clone -- /usr/bin/python3 /<<PKGBUILDDIR>>/scripts/make_bin_wrapper.py /usr/share/virt-manager virtinst virtclone
[61/63] /usr/bin/meson --internal exe --capture virt-install -- /usr/bin/python3 /<<PKGBUILDDIR>>/scripts/make_bin_wrapper.py /usr/share/virt-manager virtinst virtinstall
[62/63] /usr/bin/meson --internal exe --capture virt-xml -- /usr/bin/python3 /<<PKGBUILDDIR>>/scripts/make_bin_wrapper.py /usr/share/virt-manager virtinst virtxml
[63/63] /usr/bin/meson --internal exe --capture virt-manager -- /usr/bin/python3 /<<PKGBUILDDIR>>/scripts/make_bin_wrapper.py /usr/share/virt-manager virtManager virtmanager
   debian/rules override_dh_auto_test
make[1]: Entering directory '/<<PKGBUILDDIR>>'
pytest-3 -v -rs
Traceback (most recent call last):
  File "/usr/bin/pytest-3", line 8, in <module>
    sys.exit(_console_main())
             ~~~~~~~~~~~~~^^
  File "/usr/lib/python3/dist-packages/_pytest/config/__init__.py", line 253, in _console_main
    code = _main(prog=_get_prog_name(sys.argv))
  File "/usr/lib/python3/dist-packages/_pytest/config/__init__.py", line 223, in _main
    config = _prepareconfig(new_args, plugins, prog=prog)
  File "/usr/lib/python3/dist-packages/_pytest/config/__init__.py", line 410, in _prepareconfig
    config: Config = pluginmanager.hook.pytest_cmdline_parse(
                     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
        pluginmanager=pluginmanager, args=args
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
  File "/usr/lib/python3/dist-packages/pluggy/_hooks.py", line 512, in __call__
    return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult)
           ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/pluggy/_manager.py", line 120, in _hookexec
    return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
           ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/pluggy/_callers.py", line 167, in _multicall
    raise exception
  File "/usr/lib/python3/dist-packages/pluggy/_callers.py", line 139, in _multicall
    teardown.throw(exception)
    ~~~~~~~~~~~~~~^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/_pytest/helpconfig.py", line 124, in pytest_cmdline_parse
    config = yield
             ^^^^^
  File "/usr/lib/python3/dist-packages/pluggy/_callers.py", line 121, in _multicall
    res = hook_impl.function(*args)
  File "/usr/lib/python3/dist-packages/_pytest/config/__init__.py", line 1232, in pytest_cmdline_parse
    self.parse(args)
    ~~~~~~~~~~^^^^^^
  File "/usr/lib/python3/dist-packages/_pytest/config/__init__.py", line 1605, in parse
    self.hook.pytest_load_initial_conftests(
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
        early_config=self, args=args, parser=self._parser
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
  File "/usr/lib/python3/dist-packages/pluggy/_hooks.py", line 512, in __call__
    return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult)
           ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/pluggy/_manager.py", line 120, in _hookexec
    return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
           ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/pluggy/_callers.py", line 167, in _multicall
    raise exception
  File "/usr/lib/python3/dist-packages/pluggy/_callers.py", line 139, in _multicall
    teardown.throw(exception)
    ~~~~~~~~~~~~~~^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/_pytest/warnings.py", line 129, in pytest_load_initial_conftests
    return (yield)
            ^^^^^
  File "/usr/lib/python3/dist-packages/pluggy/_callers.py", line 139, in _multicall
    teardown.throw(exception)
    ~~~~~~~~~~~~~~^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/_pytest/capture.py", line 173, in pytest_load_initial_conftests
    yield
  File "/usr/lib/python3/dist-packages/pluggy/_callers.py", line 121, in _multicall
    res = hook_impl.function(*args)
  File "/usr/lib/python3/dist-packages/_pytest/config/__init__.py", line 1312, in pytest_load_initial_conftests
    self.pluginmanager._set_initial_conftests(
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
        args=args,
        ^^^^^^^^^^
    ...<8 lines>...
        ),
        ^^
    )
    ^
  File "/usr/lib/python3/dist-packages/_pytest/config/__init__.py", line 662, in _set_initial_conftests
    self._loadconftestmodules(
    ~~~~~~~~~~~~~~~~~~~~~~~~~^
        anchor,
        ^^^^^^^
    ...<2 lines>...
        consider_namespace_packages=consider_namespace_packages,
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
  File "/usr/lib/python3/dist-packages/_pytest/config/__init__.py", line 707, in _loadconftestmodules
    mod = self._importconftest(
        conftestpath,
    ...<2 lines>...
        consider_namespace_packages=consider_namespace_packages,
    )
  File "/usr/lib/python3/dist-packages/_pytest/config/__init__.py", line 783, in _importconftest
    self.consider_conftest(mod, registration_name=conftestpath_plugin_name)
    ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/_pytest/config/__init__.py", line 870, in consider_conftest
    self.register(conftestmodule, name=registration_name)
    ~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/_pytest/config/__init__.py", line 571, in register
    plugin_name = super().register(plugin, name)
  File "/usr/lib/python3/dist-packages/pluggy/_manager.py", line 168, in register
    self._verify_hook(hook, hookimpl)
    ~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/pluggy/_manager.py", line 343, in _verify_hook
    raise PluginValidationError(
    ...<5 lines>...
    )
pluggy._manager.PluginValidationError: Plugin '/<<PKGBUILDDIR>>/tests/conftest.py' for hook 'pytest_ignore_collect'
hookimpl definition: pytest_ignore_collect(path, config)
Argument(s) {'path'} are declared in the hookimpl but can not be found in the hookspec
make[1]: *** [debian/rules:17: override_dh_auto_test] Error 1
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
make: *** [debian/rules:4: binary] Error 2
dpkg-buildpackage: error: debian/rules binary subprocess failed with exit status 2
--------------------------------------------------------------------------------