[Python-modules-team] Bug#975776: billiard: FTBFS: dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p "3.8 3.9" returned exit code 13

Lucas Nussbaum lucas at debian.org
Wed Nov 25 20:05:56 GMT 2020


Source: billiard
Version: 3.6.3.0-1
Severity: serious
Justification: FTBFS on amd64
Tags: bullseye sid ftbfs
Usertags: ftbfs-20201125 ftbfs-bullseye

Hi,

During a rebuild of all packages in sid, your package failed to build
on amd64.

Relevant part (hopefully):
> make[1]: Entering directory '/<<PKGBUILDDIR>>'
> PYBUILD_SYSTEM=custom PYBUILD_TEST_ARGS="py.test-3" \
> dh_auto_test
> I: pybuild base:232: py.test-3
> ============================= test session starts ==============================
> platform linux -- Python 3.9.0+, pytest-4.6.11, py-1.9.0, pluggy-0.13.0
> rootdir: /<<PKGBUILDDIR>>, inifile: setup.cfg, testpaths: t/unit/
> plugins: case-1.5.3
> collected 70 items
> 
> t/unit/test_common.py ........                                           [ 11%]
> t/unit/test_dummy.py .                                                   [ 12%]
> t/unit/test_package.py .                                                 [ 14%]
> t/unit/test_pool.py ..                                                   [ 17%]
> t/unit/test_spawn.py F..                                                 [ 21%]
> t/unit/test_values.py ....                                               [ 27%]
> t/unit/test_win32.py sssssssssssssssssssssssssssssssssssssssssssssssssss [100%]
> 
> =================================== FAILURES ===================================
> ____________________________ test_spawn.test_start _____________________________
> 
> self = <t.unit.test_spawn.test_spawn object at 0x7f22d627dbe0>
> 
>     def test_start(self):
>         ctx = get_context('spawn')
>     
>         p = ctx.Process(target=task_from_process, args=('opa',))
> >       p.start()
> 
> t/unit/test_spawn.py:17: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> billiard/process.py:124: in start
>     self._popen = self._Popen(self)
> billiard/context.py:341: in _Popen
>     return Popen(process_obj)
> billiard/popen_spawn_posix.py:39: in __init__
>     super(Popen, self).__init__(process_obj)
> billiard/popen_fork.py:24: in __init__
>     self._launch(process_obj)
> billiard/popen_spawn_posix.py:49: in _launch
>     tracker_fd = semaphore_tracker.getfd()
> billiard/semaphore_tracker.py:38: in getfd
>     self.ensure_running()
> billiard/semaphore_tracker.py:62: in ensure_running
>     spawnv_passfds(exe, args, fds_to_pass)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> path = '/usr/bin/python3'
> args = ['/usr/bin/python3', '-c', 'from billiard.semaphore_tracker import main;main(21)']
> passfds = [9, 21]
> 
>     def spawnv_passfds(path, args, passfds):
>         passfds = sorted(passfds)
>         errpipe_read, errpipe_write = os.pipe()
>         try:
> >           return _posixsubprocess.fork_exec(
>                 args, [fsencode(path)], True, tuple(passfds), None, None,
>                 -1, -1, -1, -1, -1, -1, errpipe_read, errpipe_write,
>                 False, False, None)
> E               TypeError: fork_exec() takes exactly 21 arguments (17 given)
> 
> billiard/compat.py:223: TypeError
> =============== 1 failed, 18 passed, 51 skipped in 2.16 seconds ================
> E: pybuild pybuild:353: test: plugin custom failed with: exit code=1: py.test-3
> I: pybuild base:232: py.test-3
> ============================= test session starts ==============================
> platform linux -- Python 3.9.0+, pytest-4.6.11, py-1.9.0, pluggy-0.13.0
> rootdir: /<<PKGBUILDDIR>>, inifile: setup.cfg, testpaths: t/unit/
> plugins: case-1.5.3
> collected 70 items
> 
> t/unit/test_common.py ........                                           [ 11%]
> t/unit/test_dummy.py .                                                   [ 12%]
> t/unit/test_package.py .                                                 [ 14%]
> t/unit/test_pool.py ..                                                   [ 17%]
> t/unit/test_spawn.py F..                                                 [ 21%]
> t/unit/test_values.py ....                                               [ 27%]
> t/unit/test_win32.py sssssssssssssssssssssssssssssssssssssssssssssssssss [100%]
> 
> =================================== FAILURES ===================================
> ____________________________ test_spawn.test_start _____________________________
> 
> self = <t.unit.test_spawn.test_spawn object at 0x7fa39e0751c0>
> 
>     def test_start(self):
>         ctx = get_context('spawn')
>     
>         p = ctx.Process(target=task_from_process, args=('opa',))
> >       p.start()
> 
> t/unit/test_spawn.py:17: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> billiard/process.py:124: in start
>     self._popen = self._Popen(self)
> billiard/context.py:341: in _Popen
>     return Popen(process_obj)
> billiard/popen_spawn_posix.py:39: in __init__
>     super(Popen, self).__init__(process_obj)
> billiard/popen_fork.py:24: in __init__
>     self._launch(process_obj)
> billiard/popen_spawn_posix.py:49: in _launch
>     tracker_fd = semaphore_tracker.getfd()
> billiard/semaphore_tracker.py:38: in getfd
>     self.ensure_running()
> billiard/semaphore_tracker.py:62: in ensure_running
>     spawnv_passfds(exe, args, fds_to_pass)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> path = '/usr/bin/python3'
> args = ['/usr/bin/python3', '-c', 'from billiard.semaphore_tracker import main;main(21)']
> passfds = [9, 21]
> 
>     def spawnv_passfds(path, args, passfds):
>         passfds = sorted(passfds)
>         errpipe_read, errpipe_write = os.pipe()
>         try:
> >           return _posixsubprocess.fork_exec(
>                 args, [fsencode(path)], True, tuple(passfds), None, None,
>                 -1, -1, -1, -1, -1, -1, errpipe_read, errpipe_write,
>                 False, False, None)
> E               TypeError: fork_exec() takes exactly 21 arguments (17 given)
> 
> billiard/compat.py:223: TypeError
> =============== 1 failed, 18 passed, 51 skipped in 1.01 seconds ================
> E: pybuild pybuild:353: test: plugin custom failed with: exit code=1: py.test-3
> dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p "3.8 3.9" returned exit code 13

The full build log is available from:
   http://qa-logs.debian.net/2020/11/25/billiard_3.6.3.0-1_unstable.log

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.



More information about the Python-modules-team mailing list