Source: python-watchgod Version: 0.8.2-2 Severity: minor Tags: trixie sid ftbfs User: [email protected] Usertags: ftbfs-binary-20230816 ftbfs-binary-after-build User: [email protected] Usertags: qa-doublebuild
Hi, This package fails to do build a binary-only build (not source) after a successful build (dpkg-buildpackage ; dpkg-buildpackage -b). This is probably a clear violation of Debian Policy section 4.9 (clean target), but this is filed as severity:minor for now, because a discussion on debian-devel showed that we might want to revisit the requirement of a working 'clean' target. More information about this class of issues, included common problems and solutions, is available at https://wiki.debian.org/qa.debian.org/FTBFS/DoubleBuild Relevant part of the build log: > cd /<<PKGBUILDDIR>> && runuser -u user42 -- dpkg-buildpackage --sanitize-env > -us -uc -rfakeroot -b > ------------------------------------------------------------------------------------------------------------------------------------- > > dpkg-buildpackage: info: source package python-watchgod > dpkg-buildpackage: info: source version 0.8.2-2 > dpkg-buildpackage: info: source distribution unstable > dpkg-buildpackage: info: source changed by Sandro Tosi <[email protected]> > 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:291: python3.11 setup.py clean > running clean > removing '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_watchgod/build' (and > everything under it) > 'build/bdist.linux-x86_64' does not exist -- can't clean it > 'build/scripts-3.11' does not exist -- can't clean it > dh_autoreconf_clean -O--buildsystem=pybuild > dh_clean -O--buildsystem=pybuild > 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 > running config > dh_auto_build -O--buildsystem=pybuild > I: pybuild base:291: /usr/bin/python3 setup.py build > running build > running build_py > creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_watchgod/build/watchgod > copying watchgod/watcher.py -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_watchgod/build/watchgod > copying watchgod/__main__.py -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_watchgod/build/watchgod > copying watchgod/version.py -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_watchgod/build/watchgod > copying watchgod/main.py -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_watchgod/build/watchgod > copying watchgod/__init__.py -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_watchgod/build/watchgod > copying watchgod/cli.py -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_watchgod/build/watchgod > copying watchgod/py.typed -> > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_watchgod/build/watchgod > dh_auto_test -O--buildsystem=pybuild > I: pybuild base:291: cd > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_watchgod/build; python3.11 -m pytest > -W ignore::trio.TrioDeprecationWarning > ============================= test session starts > ============================== > platform linux -- Python 3.11.4, pytest-7.4.0, pluggy-1.2.0 > rootdir: /<<PKGBUILDDIR>> > configfile: setup.cfg > plugins: mock-3.11.1, sugar-0.9.7, asyncio-0.20.3, anyio-3.7.0, toolbox-0.4 > asyncio: mode=Mode.STRICT > collected 162 items > > tests/test_cli.py ...................................................... [ > 33%] > ............... [ > 42%] > tests/test_run_process.py ............... [ > 51%] > tests/test_watch.py .................................................... [ > 83%] > .........................F > [100%] > > =================================== FAILURES > =================================== > ____________________________ test_awatch_log[trio] > _____________________________ > > mocker = <pytest_mock.plugin.MockerFixture object at 0x7fd9fb8df450> > caplog = <_pytest.logging.LogCaptureFixture object at 0x7fd9fb8df9d0> > > @skip_unless_linux > async def test_awatch_log(mocker, caplog): > mock_log_enabled = mocker.patch('watchgod.main.logger.isEnabledFor') > mock_log_enabled.return_value = True > > class FakeWatcher: > def __init__(self, path): > self.files = [1, 2, 3] > > def check(self): > return {'r1'} > > async for v in awatch('xxx', watcher_cls=FakeWatcher, debounce=5, > min_sleep=1): > assert v == {'r1'} > break > > print(caplog.text) > > assert caplog.text.count('DEBUG') > 3 > E AssertionError: assert 2 > 3 > E + where 2 = <built-in method count of str object at > 0x7fd9fb472ce0>('DEBUG') > E + where <built-in method count of str object at 0x7fd9fb472ce0> = > 'DEBUG watchgod.main:main.py:130 xxx time=20ms debounced=20ms files=3 > changes=1 (1)\nDEBUG watchgod.main:main.py:141 xxx changes released > debounced=20ms\n'.count > E + where 'DEBUG watchgod.main:main.py:130 xxx time=20ms > debounced=20ms files=3 changes=1 (1)\nDEBUG watchgod.main:main.py:141 xxx > changes released debounced=20ms\n' = <_pytest.logging.LogCaptureFixture > object at 0x7fd9fb8df9d0>.text > > tests/test_watch.py:451: AssertionError > ----------------------------- Captured stdout call > ----------------------------- > DEBUG watchgod.main:main.py:130 xxx time=20ms debounced=20ms files=3 > changes=1 (1) > DEBUG watchgod.main:main.py:141 xxx changes released debounced=20ms > > ------------------------------ Captured log call > ------------------------------- > DEBUG watchgod.main:main.py:130 xxx time=20ms debounced=20ms files=3 > changes=1 (1) > DEBUG watchgod.main:main.py:141 xxx changes released debounced=20ms > =========================== short test summary info > ============================ > FAILED tests/test_watch.py::test_awatch_log[trio] - AssertionError: assert 2 > > 3 > ======================== 1 failed, 161 passed in 2.04s > ========================= > E: pybuild pybuild:395: test: plugin distutils failed with: exit code=1: cd > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_watchgod/build; python3.11 -m pytest > -W ignore::trio.TrioDeprecationWarning > dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p 3.11 > returned exit code 13 > make: *** [debian/rules:10: binary] Error 25 > dpkg-buildpackage: error: debian/rules binary subprocess returned exit status > 2 > > E: Command 'cd /<<PKGBUILDDIR>> && runuser -u user42 -- dpkg-buildpackage > --sanitize-env -us -uc -rfakeroot -b' failed to run. The full build log is available from: http://qa-logs.debian.net/2023/08/16/python-watchgod_0.8.2-2_unstable.log 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.

