>>> py3-billiard: Building community/py3-billiard 4.2.1-r0 (using abuild 3.15.0-r0) started Sun, 12 Oct 2025 15:32:12 +0000 >>> py3-billiard: Validating /home/udu/aports/community/py3-billiard/APKBUILD... >>> py3-billiard: Analyzing dependencies... >>> py3-billiard: Installing for build: build-base py3-setuptools py3-wheel py3-gpep517 py3-psutil py3-pytest py3-nose py3-case WARNING: opening /home/udu/packages//community: No such file or directory WARNING: opening /home/udu/packages//main: No such file or directory fetch http://dl-cdn.alpinelinux.org/alpine/v3.22/main/x86_64/APKINDEX.tar.gz fetch http://dl-cdn.alpinelinux.org/alpine/v3.22/community/x86_64/APKINDEX.tar.gz (1/29) Installing py3-setuptools-pyc (80.9.0-r0) (2/29) Installing py3-parsing (3.2.3-r0) (3/29) Installing py3-parsing-pyc (3.2.3-r0) (4/29) Installing py3-packaging-pyc (25.0-r0) (5/29) Installing py3-packaging (25.0-r0) (6/29) Installing py3-setuptools (80.9.0-r0) (7/29) Installing py3-wheel (0.46.1-r0) (8/29) Installing py3-wheel-pyc (0.46.1-r0) (9/29) Installing py3-installer (0.7.0-r2) (10/29) Installing py3-installer-pyc (0.7.0-r2) (11/29) Installing py3-gpep517 (19-r0) (12/29) Installing py3-gpep517-pyc (19-r0) (13/29) Installing py3-psutil (7.0.0-r0) (14/29) Installing py3-psutil-pyc (7.0.0-r0) (15/29) Installing py3-iniconfig (2.1.0-r0) (16/29) Installing py3-iniconfig-pyc (2.1.0-r0) (17/29) Installing py3-pluggy (1.5.0-r0) (18/29) Installing py3-pluggy-pyc (1.5.0-r0) (19/29) Installing py3-py (1.11.0-r4) (20/29) Installing py3-py-pyc (1.11.0-r4) (21/29) Installing py3-pytest (8.3.5-r0) (22/29) Installing py3-pytest-pyc (8.3.5-r0) (23/29) Installing py3-nose (1.3.7-r15) (24/29) Installing py3-nose-pyc (1.3.7-r15) (25/29) Installing py3-six (1.17.0-r0) (26/29) Installing py3-six-pyc (1.17.0-r0) (27/29) Installing py3-case (1.5.3-r7) (28/29) Installing py3-case-pyc (1.5.3-r7) (29/29) Installing .makedepends-py3-billiard (20251012.153213) Executing busybox-1.37.0-r19.trigger OK: 312 MiB in 118 packages >>> py3-billiard: Cleaning up srcdir >>> py3-billiard: Cleaning up pkgdir >>> py3-billiard: Cleaning up tmpdir >>> py3-billiard: Fetching https://files.pythonhosted.org/packages/source/b/billiard/billiard-4.2.1.tar.gz >>> py3-billiard: Fetching https://files.pythonhosted.org/packages/source/b/billiard/billiard-4.2.1.tar.gz >>> py3-billiard: Checking sha512sums... billiard-4.2.1.tar.gz: OK >>> py3-billiard: Unpacking /var/cache/distfiles/billiard-4.2.1.tar.gz... 2025-10-12 15:32:13,799 gpep517 INFO Building wheel via backend setuptools.build_meta:__legacy__ /usr/lib/python3.12/site-packages/setuptools/dist.py:759: SetuptoolsDeprecationWarning: License classifiers are deprecated. !! ******************************************************************************** Please consider removing the following classifiers in favor of a SPDX license expression: License :: OSI Approved :: BSD License See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details. ******************************************************************************** !! self._finalize_license_expression() 2025-10-12 15:32:13,811 root INFO running bdist_wheel 2025-10-12 15:32:13,820 root INFO running build 2025-10-12 15:32:13,820 root INFO running build_py 2025-10-12 15:32:13,822 root INFO creating build/lib/billiard 2025-10-12 15:32:13,822 root INFO copying billiard/spawn.py -> build/lib/billiard 2025-10-12 15:32:13,822 root INFO copying billiard/process.py -> build/lib/billiard 2025-10-12 15:32:13,822 root INFO copying billiard/queues.py -> build/lib/billiard 2025-10-12 15:32:13,822 root INFO copying billiard/resource_sharer.py -> build/lib/billiard 2025-10-12 15:32:13,823 root INFO copying billiard/context.py -> build/lib/billiard 2025-10-12 15:32:13,823 root INFO copying billiard/semaphore_tracker.py -> build/lib/billiard 2025-10-12 15:32:13,823 root INFO copying billiard/synchronize.py -> build/lib/billiard 2025-10-12 15:32:13,823 root INFO copying billiard/popen_forkserver.py -> build/lib/billiard 2025-10-12 15:32:13,823 root INFO copying billiard/pool.py -> build/lib/billiard 2025-10-12 15:32:13,823 root INFO copying billiard/heap.py -> build/lib/billiard 2025-10-12 15:32:13,823 root INFO copying billiard/forkserver.py -> build/lib/billiard 2025-10-12 15:32:13,823 root INFO copying billiard/util.py -> build/lib/billiard 2025-10-12 15:32:13,823 root INFO copying billiard/sharedctypes.py -> build/lib/billiard 2025-10-12 15:32:13,823 root INFO copying billiard/popen_fork.py -> build/lib/billiard 2025-10-12 15:32:13,824 root INFO copying billiard/exceptions.py -> build/lib/billiard 2025-10-12 15:32:13,824 root INFO copying billiard/managers.py -> build/lib/billiard 2025-10-12 15:32:13,824 root INFO copying billiard/compat.py -> build/lib/billiard 2025-10-12 15:32:13,824 root INFO copying billiard/popen_spawn_posix.py -> build/lib/billiard 2025-10-12 15:32:13,824 root INFO copying billiard/__init__.py -> build/lib/billiard 2025-10-12 15:32:13,824 root INFO copying billiard/_ext.py -> build/lib/billiard 2025-10-12 15:32:13,824 root INFO copying billiard/popen_spawn_win32.py -> build/lib/billiard 2025-10-12 15:32:13,824 root INFO copying billiard/connection.py -> build/lib/billiard 2025-10-12 15:32:13,824 root INFO copying billiard/einfo.py -> build/lib/billiard 2025-10-12 15:32:13,824 root INFO copying billiard/_win.py -> build/lib/billiard 2025-10-12 15:32:13,824 root INFO copying billiard/common.py -> build/lib/billiard 2025-10-12 15:32:13,824 root INFO copying billiard/reduction.py -> build/lib/billiard 2025-10-12 15:32:13,825 root INFO creating build/lib/billiard/dummy 2025-10-12 15:32:13,825 root INFO copying billiard/dummy/__init__.py -> build/lib/billiard/dummy 2025-10-12 15:32:13,825 root INFO copying billiard/dummy/connection.py -> build/lib/billiard/dummy 2025-10-12 15:32:13,828 root INFO installing to build/bdist.linux-x86_64/wheel 2025-10-12 15:32:13,828 root INFO running install 2025-10-12 15:32:13,833 root INFO running install_lib 2025-10-12 15:32:13,834 root INFO creating build/bdist.linux-x86_64/wheel 2025-10-12 15:32:13,835 root INFO creating build/bdist.linux-x86_64/wheel/billiard 2025-10-12 15:32:13,835 root INFO copying build/lib/billiard/spawn.py -> build/bdist.linux-x86_64/wheel/./billiard 2025-10-12 15:32:13,835 root INFO copying build/lib/billiard/process.py -> build/bdist.linux-x86_64/wheel/./billiard 2025-10-12 15:32:13,835 root INFO copying build/lib/billiard/queues.py -> build/bdist.linux-x86_64/wheel/./billiard 2025-10-12 15:32:13,835 root INFO copying build/lib/billiard/resource_sharer.py -> build/bdist.linux-x86_64/wheel/./billiard 2025-10-12 15:32:13,835 root INFO copying build/lib/billiard/context.py -> build/bdist.linux-x86_64/wheel/./billiard 2025-10-12 15:32:13,835 root INFO copying build/lib/billiard/semaphore_tracker.py -> build/bdist.linux-x86_64/wheel/./billiard 2025-10-12 15:32:13,835 root INFO copying build/lib/billiard/synchronize.py -> build/bdist.linux-x86_64/wheel/./billiard 2025-10-12 15:32:13,835 root INFO copying build/lib/billiard/popen_forkserver.py -> build/bdist.linux-x86_64/wheel/./billiard 2025-10-12 15:32:13,835 root INFO copying build/lib/billiard/pool.py -> build/bdist.linux-x86_64/wheel/./billiard 2025-10-12 15:32:13,835 root INFO creating build/bdist.linux-x86_64/wheel/billiard/dummy 2025-10-12 15:32:13,835 root INFO copying build/lib/billiard/dummy/__init__.py -> build/bdist.linux-x86_64/wheel/./billiard/dummy 2025-10-12 15:32:13,835 root INFO copying build/lib/billiard/dummy/connection.py -> build/bdist.linux-x86_64/wheel/./billiard/dummy 2025-10-12 15:32:13,835 root INFO copying build/lib/billiard/heap.py -> build/bdist.linux-x86_64/wheel/./billiard 2025-10-12 15:32:13,835 root INFO copying build/lib/billiard/forkserver.py -> build/bdist.linux-x86_64/wheel/./billiard 2025-10-12 15:32:13,836 root INFO copying build/lib/billiard/util.py -> build/bdist.linux-x86_64/wheel/./billiard 2025-10-12 15:32:13,836 root INFO copying build/lib/billiard/sharedctypes.py -> build/bdist.linux-x86_64/wheel/./billiard 2025-10-12 15:32:13,836 root INFO copying build/lib/billiard/popen_fork.py -> build/bdist.linux-x86_64/wheel/./billiard 2025-10-12 15:32:13,836 root INFO copying build/lib/billiard/exceptions.py -> build/bdist.linux-x86_64/wheel/./billiard 2025-10-12 15:32:13,836 root INFO copying build/lib/billiard/managers.py -> build/bdist.linux-x86_64/wheel/./billiard 2025-10-12 15:32:13,836 root INFO copying build/lib/billiard/compat.py -> build/bdist.linux-x86_64/wheel/./billiard 2025-10-12 15:32:13,836 root INFO copying build/lib/billiard/popen_spawn_posix.py -> build/bdist.linux-x86_64/wheel/./billiard 2025-10-12 15:32:13,836 root INFO copying build/lib/billiard/__init__.py -> build/bdist.linux-x86_64/wheel/./billiard 2025-10-12 15:32:13,836 root INFO copying build/lib/billiard/_ext.py -> build/bdist.linux-x86_64/wheel/./billiard 2025-10-12 15:32:13,836 root INFO copying build/lib/billiard/popen_spawn_win32.py -> build/bdist.linux-x86_64/wheel/./billiard 2025-10-12 15:32:13,836 root INFO copying build/lib/billiard/connection.py -> build/bdist.linux-x86_64/wheel/./billiard 2025-10-12 15:32:13,836 root INFO copying build/lib/billiard/einfo.py -> build/bdist.linux-x86_64/wheel/./billiard 2025-10-12 15:32:13,836 root INFO copying build/lib/billiard/_win.py -> build/bdist.linux-x86_64/wheel/./billiard 2025-10-12 15:32:13,836 root INFO copying build/lib/billiard/common.py -> build/bdist.linux-x86_64/wheel/./billiard 2025-10-12 15:32:13,836 root INFO copying build/lib/billiard/reduction.py -> build/bdist.linux-x86_64/wheel/./billiard 2025-10-12 15:32:13,836 root INFO running install_egg_info 2025-10-12 15:32:13,838 root INFO running egg_info 2025-10-12 15:32:13,839 root INFO writing billiard.egg-info/PKG-INFO 2025-10-12 15:32:13,840 root INFO writing dependency_links to billiard.egg-info/dependency_links.txt 2025-10-12 15:32:13,840 root INFO writing top-level names to billiard.egg-info/top_level.txt 2025-10-12 15:32:13,841 root INFO reading manifest file 'billiard.egg-info/SOURCES.txt' 2025-10-12 15:32:13,842 root INFO reading manifest template 'MANIFEST.in' 2025-10-12 15:32:13,842 root WARNING warning: no files found matching '*.py' under directory 'Lib' 2025-10-12 15:32:13,843 root WARNING warning: no files found matching '*.py' under directory 'funtests' 2025-10-12 15:32:13,844 root WARNING warning: no previously-included files matching '*' found under directory 'docs/_build' 2025-10-12 15:32:13,844 root WARNING warning: no previously-included files matching '__pycache__' found under directory '*' 2025-10-12 15:32:13,844 root WARNING warning: no previously-included files matching '*.py[co]' found under directory '*' 2025-10-12 15:32:13,844 root WARNING warning: no previously-included files matching '.*.sw*' found under directory '*' 2025-10-12 15:32:13,844 root INFO adding license file 'LICENSE.txt' 2025-10-12 15:32:13,845 root INFO writing manifest file 'billiard.egg-info/SOURCES.txt' 2025-10-12 15:32:13,845 root INFO Copying billiard.egg-info to build/bdist.linux-x86_64/wheel/./billiard-4.2.1-py3.12.egg-info 2025-10-12 15:32:13,845 root INFO running install_scripts 2025-10-12 15:32:13,846 root INFO creating build/bdist.linux-x86_64/wheel/billiard-4.2.1.dist-info/WHEEL 2025-10-12 15:32:13,846 wheel INFO creating '/home/udu/aports/community/py3-billiard/src/billiard-4.2.1/.dist/.tmp-3mfyw98h/billiard-4.2.1-py3-none-any.whl' and adding 'build/bdist.linux-x86_64/wheel' to it 2025-10-12 15:32:13,846 wheel INFO adding 'billiard/__init__.py' 2025-10-12 15:32:13,846 wheel INFO adding 'billiard/_ext.py' 2025-10-12 15:32:13,846 wheel INFO adding 'billiard/_win.py' 2025-10-12 15:32:13,846 wheel INFO adding 'billiard/common.py' 2025-10-12 15:32:13,846 wheel INFO adding 'billiard/compat.py' 2025-10-12 15:32:13,846 wheel INFO adding 'billiard/connection.py' 2025-10-12 15:32:13,847 wheel INFO adding 'billiard/context.py' 2025-10-12 15:32:13,847 wheel INFO adding 'billiard/einfo.py' 2025-10-12 15:32:13,847 wheel INFO adding 'billiard/exceptions.py' 2025-10-12 15:32:13,847 wheel INFO adding 'billiard/forkserver.py' 2025-10-12 15:32:13,847 wheel INFO adding 'billiard/heap.py' 2025-10-12 15:32:13,847 wheel INFO adding 'billiard/managers.py' 2025-10-12 15:32:13,847 wheel INFO adding 'billiard/pool.py' 2025-10-12 15:32:13,847 wheel INFO adding 'billiard/popen_fork.py' 2025-10-12 15:32:13,847 wheel INFO adding 'billiard/popen_forkserver.py' 2025-10-12 15:32:13,847 wheel INFO adding 'billiard/popen_spawn_posix.py' 2025-10-12 15:32:13,847 wheel INFO adding 'billiard/popen_spawn_win32.py' 2025-10-12 15:32:13,847 wheel INFO adding 'billiard/process.py' 2025-10-12 15:32:13,848 wheel INFO adding 'billiard/queues.py' 2025-10-12 15:32:13,848 wheel INFO adding 'billiard/reduction.py' 2025-10-12 15:32:13,848 wheel INFO adding 'billiard/resource_sharer.py' 2025-10-12 15:32:13,848 wheel INFO adding 'billiard/semaphore_tracker.py' 2025-10-12 15:32:13,848 wheel INFO adding 'billiard/sharedctypes.py' 2025-10-12 15:32:13,848 wheel INFO adding 'billiard/spawn.py' 2025-10-12 15:32:13,848 wheel INFO adding 'billiard/synchronize.py' 2025-10-12 15:32:13,848 wheel INFO adding 'billiard/util.py' 2025-10-12 15:32:13,848 wheel INFO adding 'billiard/dummy/__init__.py' 2025-10-12 15:32:13,848 wheel INFO adding 'billiard/dummy/connection.py' 2025-10-12 15:32:13,848 wheel INFO adding 'billiard-4.2.1.dist-info/licenses/LICENSE.txt' 2025-10-12 15:32:13,848 wheel INFO adding 'billiard-4.2.1.dist-info/METADATA' 2025-10-12 15:32:13,848 wheel INFO adding 'billiard-4.2.1.dist-info/WHEEL' 2025-10-12 15:32:13,848 wheel INFO adding 'billiard-4.2.1.dist-info/top_level.txt' 2025-10-12 15:32:13,849 wheel INFO adding 'billiard-4.2.1.dist-info/RECORD' 2025-10-12 15:32:13,849 root INFO removing build/bdist.linux-x86_64/wheel 2025-10-12 15:32:13,849 gpep517 INFO The backend produced .dist/billiard-4.2.1-py3-none-any.whl billiard-4.2.1-py3-none-any.whl /usr/lib/python3.12/site-packages/nose/plugins/manager.py:418: UserWarning: pkg_resources is deprecated as an API. See https://setuptools.pypa.io/en/latest/pkg_resources.html. The pkg_resources package is slated for removal as early as 2025-11-30. Refrain from using this package or pin to Setuptools<81. import pkg_resources ============================================================================================================================================ test session starts ============================================================================================================================================= platform linux -- Python 3.12.11, pytest-8.3.5, pluggy-1.5.0 rootdir: /home/udu/aports/community/py3-billiard/src/billiard-4.2.1 configfile: setup.cfg testpaths: t/unit/ plugins: case-1.5.3 collected 30 items t/unit/test_common.py ........ [ 26%] t/unit/test_dummy.py . [ 30%] t/unit/test_einfo.py ......... [ 60%] t/unit/test_package.py . [ 63%] t/unit/test_pool.py FFFF [ 76%] t/unit/test_spawn.py .F. [ 86%] t/unit/test_values.py FF.F [100%] ================================================================================================================================================== FAILURES ================================================================================================================================================== ___________________________________________________________________________________________________________________________________________ test_pool.test_raises ____________________________________________________________________________________________________________________________________________ self = def test_raises(self): > pool = billiard.pool.Pool() t/unit/test_pool.py:21: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ billiard/pool.py:995: in __init__ self._setup_queues() billiard/pool.py:1362: in _setup_queues self._inqueue = self._ctx.SimpleQueue() billiard/context.py:148: in SimpleQueue return SimpleQueue(ctx=self.get_context()) billiard/queues.py:390: in __init__ self._rlock = ctx.Lock() billiard/context.py:103: in Lock return Lock(ctx=self.get_context()) billiard/synchronize.py:181: in __init__ SemLock.__init__(self, SEMAPHORE, 1, 1, ctx=ctx) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = , kind = 1, value = 1, maxvalue = 1, ctx = def __init__(self, kind, value, maxvalue, ctx=None): if ctx is None: ctx = context._default_context.get_context() name = ctx.get_start_method() unlink_now = sys.platform == 'win32' or name == 'fork' if sem_unlink: for i in range(100): try: > sl = self._semlock = _billiard.SemLock( kind, value, maxvalue, self._make_name(), unlink_now, ) E PermissionError: [Errno 13] Permission denied billiard/synchronize.py:70: PermissionError _____________________________________________________________________________________________________________________________ test_pool.test_timeout_handler_iterates_with_cache _____________________________________________________________________________________________________________________________ self = def test_timeout_handler_iterates_with_cache(self): # Given a pool > pool = billiard.pool.Pool() t/unit/test_pool.py:28: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ billiard/pool.py:995: in __init__ self._setup_queues() billiard/pool.py:1362: in _setup_queues self._inqueue = self._ctx.SimpleQueue() billiard/context.py:148: in SimpleQueue return SimpleQueue(ctx=self.get_context()) billiard/queues.py:390: in __init__ self._rlock = ctx.Lock() billiard/context.py:103: in Lock return Lock(ctx=self.get_context()) billiard/synchronize.py:181: in __init__ SemLock.__init__(self, SEMAPHORE, 1, 1, ctx=ctx) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = , kind = 1, value = 1, maxvalue = 1, ctx = def __init__(self, kind, value, maxvalue, ctx=None): if ctx is None: ctx = context._default_context.get_context() name = ctx.get_start_method() unlink_now = sys.platform == 'win32' or name == 'fork' if sem_unlink: for i in range(100): try: > sl = self._semlock = _billiard.SemLock( kind, value, maxvalue, self._make_name(), unlink_now, ) E PermissionError: [Errno 13] Permission denied billiard/synchronize.py:70: PermissionError _________________________________________________________________________________________________________________________________ test_pool.test_exception_traceback_present _________________________________________________________________________________________________________________________________ self = def test_exception_traceback_present(self): > pool = billiard.pool.Pool(1) t/unit/test_pool.py:37: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ billiard/pool.py:995: in __init__ self._setup_queues() billiard/pool.py:1362: in _setup_queues self._inqueue = self._ctx.SimpleQueue() billiard/context.py:148: in SimpleQueue return SimpleQueue(ctx=self.get_context()) billiard/queues.py:390: in __init__ self._rlock = ctx.Lock() billiard/context.py:103: in Lock return Lock(ctx=self.get_context()) billiard/synchronize.py:181: in __init__ SemLock.__init__(self, SEMAPHORE, 1, 1, ctx=ctx) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = , kind = 1, value = 1, maxvalue = 1, ctx = def __init__(self, kind, value, maxvalue, ctx=None): if ctx is None: ctx = context._default_context.get_context() name = ctx.get_start_method() unlink_now = sys.platform == 'win32' or name == 'fork' if sem_unlink: for i in range(100): try: > sl = self._semlock = _billiard.SemLock( kind, value, maxvalue, self._make_name(), unlink_now, ) E PermissionError: [Errno 13] Permission denied billiard/synchronize.py:70: PermissionError ______________________________________________________________________________________________________________________________ test_pool.test_on_ready_counter_is_synchronized _______________________________________________________________________________________________________________________________ self = def test_on_ready_counter_is_synchronized(self): for ctx in ('spawn', 'fork', 'forkserver'): > pool = billiard.pool.Pool(processes=1, context=get_context(ctx)) t/unit/test_pool.py:52: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ billiard/pool.py:995: in __init__ self._setup_queues() billiard/pool.py:1362: in _setup_queues self._inqueue = self._ctx.SimpleQueue() billiard/context.py:148: in SimpleQueue return SimpleQueue(ctx=self.get_context()) billiard/queues.py:390: in __init__ self._rlock = ctx.Lock() billiard/context.py:103: in Lock return Lock(ctx=self.get_context()) billiard/synchronize.py:181: in __init__ SemLock.__init__(self, SEMAPHORE, 1, 1, ctx=ctx) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = , kind = 1, value = 1, maxvalue = 1, ctx = def __init__(self, kind, value, maxvalue, ctx=None): if ctx is None: ctx = context._default_context.get_context() name = ctx.get_start_method() unlink_now = sys.platform == 'win32' or name == 'fork' if sem_unlink: for i in range(100): try: > sl = self._semlock = _billiard.SemLock( kind, value, maxvalue, self._make_name(), unlink_now, ) E PermissionError: [Errno 13] Permission denied billiard/synchronize.py:70: PermissionError _______________________________________________________________________________________________________________________________________ test_spawn.test_set_pdeathsig ________________________________________________________________________________________________________________________________________ self = @pytest.mark.skipif(not sys.platform.startswith('linux'), reason='set_pdeathsig() is supported only in Linux') def test_set_pdeathsig(self): success = "done" > q = Queue() t/unit/test_spawn.py:23: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ billiard/context.py:138: in Queue return Queue(maxsize, ctx=self.get_context()) billiard/queues.py:45: in __init__ self._rlock = ctx.Lock() billiard/context.py:103: in Lock return Lock(ctx=self.get_context()) billiard/synchronize.py:181: in __init__ SemLock.__init__(self, SEMAPHORE, 1, 1, ctx=ctx) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = , kind = 1, value = 1, maxvalue = 1, ctx = def __init__(self, kind, value, maxvalue, ctx=None): if ctx is None: ctx = context._default_context.get_context() name = ctx.get_start_method() unlink_now = sys.platform == 'win32' or name == 'fork' if sem_unlink: for i in range(100): try: > sl = self._semlock = _billiard.SemLock( kind, value, maxvalue, self._make_name(), unlink_now, ) E PermissionError: [Errno 13] Permission denied billiard/synchronize.py:70: PermissionError _________________________________________________________________________________________________________________________________________ test_values.test_issue_229 _________________________________________________________________________________________________________________________________________ self = def test_issue_229(self): """Test fix for issue #229""" > a = Value('i', 0) t/unit/test_values.py:18: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ billiard/context.py:179: in Value return Value(typecode_or_type, *args, lock=lock, billiard/sharedctypes.py:81: in Value lock = ctx.RLock() billiard/context.py:108: in RLock return RLock(ctx=self.get_context()) billiard/synchronize.py:206: in __init__ SemLock.__init__(self, RECURSIVE_MUTEX, 1, 1, ctx=ctx) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = , kind = 0, value = 1, maxvalue = 1, ctx = def __init__(self, kind, value, maxvalue, ctx=None): if ctx is None: ctx = context._default_context.get_context() name = ctx.get_start_method() unlink_now = sys.platform == 'win32' or name == 'fork' if sem_unlink: for i in range(100): try: > sl = self._semlock = _billiard.SemLock( kind, value, maxvalue, self._make_name(), unlink_now, ) E PermissionError: [Errno 13] Permission denied billiard/synchronize.py:70: PermissionError ___________________________________________________________________________________________________________________________________________ test_values.test_value ___________________________________________________________________________________________________________________________________________ self = , raw = False def test_value(self, raw=False): if raw: values = [RawValue(code, value) for code, value, _ in self.codes_values] else: > values = [Value(code, value) for code, value, _ in self.codes_values] t/unit/test_values.py:35: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ billiard/context.py:179: in Value return Value(typecode_or_type, *args, lock=lock, billiard/sharedctypes.py:81: in Value lock = ctx.RLock() billiard/context.py:108: in RLock return RLock(ctx=self.get_context()) billiard/synchronize.py:206: in __init__ SemLock.__init__(self, RECURSIVE_MUTEX, 1, 1, ctx=ctx) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = , kind = 0, value = 1, maxvalue = 1, ctx = def __init__(self, kind, value, maxvalue, ctx=None): if ctx is None: ctx = context._default_context.get_context() name = ctx.get_start_method() unlink_now = sys.platform == 'win32' or name == 'fork' if sem_unlink: for i in range(100): try: > sl = self._semlock = _billiard.SemLock( kind, value, maxvalue, self._make_name(), unlink_now, ) E PermissionError: [Errno 13] Permission denied billiard/synchronize.py:70: PermissionError ______________________________________________________________________________________________________________________________________ test_values.test_getobj_getlock _______________________________________________________________________________________________________________________________________ self = def test_getobj_getlock(self): > val1 = Value('i', 5) t/unit/test_values.py:53: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ billiard/context.py:179: in Value return Value(typecode_or_type, *args, lock=lock, billiard/sharedctypes.py:81: in Value lock = ctx.RLock() billiard/context.py:108: in RLock return RLock(ctx=self.get_context()) billiard/synchronize.py:206: in __init__ SemLock.__init__(self, RECURSIVE_MUTEX, 1, 1, ctx=ctx) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = , kind = 0, value = 1, maxvalue = 1, ctx = def __init__(self, kind, value, maxvalue, ctx=None): if ctx is None: ctx = context._default_context.get_context() name = ctx.get_start_method() unlink_now = sys.platform == 'win32' or name == 'fork' if sem_unlink: for i in range(100): try: > sl = self._semlock = _billiard.SemLock( kind, value, maxvalue, self._make_name(), unlink_now, ) E PermissionError: [Errno 13] Permission denied billiard/synchronize.py:70: PermissionError ============================================================================================================================================== warnings summary ============================================================================================================================================== t/unit/test_spawn.py::test_spawn::test_start /usr/lib/python3.12/site-packages/_pytest/python.py:163: PytestReturnNotNoneWarning: Expected None, but t/unit/test_spawn.py::test_spawn::test_start returned 0, which will be an error in a future version of pytest. Did you mean to use `assert` instead of `return`? warnings.warn( -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html ========================================================================================================================================== short test summary info =========================================================================================================================================== FAILED t/unit/test_pool.py::test_pool::test_raises - PermissionError: [Errno 13] Permission denied FAILED t/unit/test_pool.py::test_pool::test_timeout_handler_iterates_with_cache - PermissionError: [Errno 13] Permission denied FAILED t/unit/test_pool.py::test_pool::test_exception_traceback_present - PermissionError: [Errno 13] Permission denied FAILED t/unit/test_pool.py::test_pool::test_on_ready_counter_is_synchronized - PermissionError: [Errno 13] Permission denied FAILED t/unit/test_spawn.py::test_spawn::test_set_pdeathsig - PermissionError: [Errno 13] Permission denied FAILED t/unit/test_values.py::test_values::test_issue_229 - PermissionError: [Errno 13] Permission denied FAILED t/unit/test_values.py::test_values::test_value - PermissionError: [Errno 13] Permission denied FAILED t/unit/test_values.py::test_values::test_getobj_getlock - PermissionError: [Errno 13] Permission denied ================================================================================================================================== 8 failed, 22 passed, 1 warning in 0.45s =================================================================================================================================== >>> ERROR: py3-billiard: check failed >>> py3-billiard: Uninstalling dependencies... (1/29) Purging .makedepends-py3-billiard (20251012.153213) (2/29) Purging py3-setuptools-pyc (80.9.0-r0) (3/29) Purging py3-setuptools (80.9.0-r0) (4/29) Purging py3-wheel-pyc (0.46.1-r0) (5/29) Purging py3-wheel (0.46.1-r0) (6/29) Purging py3-gpep517-pyc (19-r0) (7/29) Purging py3-gpep517 (19-r0) (8/29) Purging py3-installer-pyc (0.7.0-r2) (9/29) Purging py3-installer (0.7.0-r2) (10/29) Purging py3-psutil-pyc (7.0.0-r0) (11/29) Purging py3-psutil (7.0.0-r0) (12/29) Purging py3-pytest-pyc (8.3.5-r0) (13/29) Purging py3-pytest (8.3.5-r0) (14/29) Purging py3-iniconfig-pyc (2.1.0-r0) (15/29) Purging py3-iniconfig (2.1.0-r0) (16/29) Purging py3-packaging-pyc (25.0-r0) (17/29) Purging py3-packaging (25.0-r0) (18/29) Purging py3-parsing-pyc (3.2.3-r0) (19/29) Purging py3-parsing (3.2.3-r0) (20/29) Purging py3-pluggy-pyc (1.5.0-r0) (21/29) Purging py3-pluggy (1.5.0-r0) (22/29) Purging py3-py-pyc (1.11.0-r4) (23/29) Purging py3-py (1.11.0-r4) (24/29) Purging py3-nose-pyc (1.3.7-r15) (25/29) Purging py3-nose (1.3.7-r15) (26/29) Purging py3-case-pyc (1.5.3-r7) (27/29) Purging py3-case (1.5.3-r7) (28/29) Purging py3-six-pyc (1.17.0-r0) (29/29) Purging py3-six (1.17.0-r0) Executing busybox-1.37.0-r19.trigger OK: 296 MiB in 89 packages