>>> py3-click: Building main/py3-click 8.4.0-r0 (using abuild 3.17.0_rc2-r0) started Sun, 17 May 2026 12:51:09 +0000 >>> py3-click: Validating /home/buildozer/aports/main/py3-click/APKBUILD... >>> py3-click: Analyzing dependencies... >>> py3-click: Installing for build: build-base py3-flit-core py3-gpep517 py3-pytest ( 1/33) Installing libbz2 (1.0.8-r6) ( 2/33) Installing libffi (3.5.2-r1) ( 3/33) Installing gdbm (1.26-r0) ( 4/33) Installing xz-libs (5.8.3-r0) ( 5/33) Installing mpdecimal (4.0.1-r0) ( 6/33) Installing libpanelw (6.6_p20260502-r0) ( 7/33) Installing readline (8.3.3-r1) ( 8/33) Installing sqlite-libs (3.53.1-r0) ( 9/33) Installing python3 (3.14.3-r0) (10/33) Installing python3-pycache-pyc0 (3.14.3-r0) (11/33) Installing pyc (3.14.3-r0) (12/33) Installing py3-flit-core-pyc (3.12.0-r1) (13/33) Installing python3-pyc (3.14.3-r0) (14/33) Installing py3-flit-core (3.12.0-r1) (15/33) Installing py3-installer (1.0.0-r0) (16/33) Installing py3-installer-pyc (1.0.0-r0) (17/33) Installing py3-gpep517 (19-r2) (18/33) Installing py3-gpep517-pyc (19-r2) (19/33) Installing py3-iniconfig (2.3.0-r1) (20/33) Installing py3-iniconfig-pyc (2.3.0-r1) (21/33) Installing py3-parsing (3.3.2-r1) (22/33) Installing py3-parsing-pyc (3.3.2-r1) (23/33) Installing py3-packaging (26.2-r0) (24/33) Installing py3-packaging-pyc (26.2-r0) (25/33) Installing py3-pluggy (1.6.0-r1) (26/33) Installing py3-pluggy-pyc (1.6.0-r1) (27/33) Installing py3-py (1.11.0-r5) (28/33) Installing py3-py-pyc (1.11.0-r5) (29/33) Installing py3-pygments (2.20.0-r0) (30/33) Installing py3-pygments-pyc (2.20.0-r0) (31/33) Installing py3-pytest (9.0.3-r0) (32/33) Installing py3-pytest-pyc (9.0.3-r0) (33/33) Installing .makedepends-py3-click (20260517.125110) Executing busybox-1.37.0-r31.trigger OK: 323.8 MiB in 134 packages >>> py3-click: Cleaning up srcdir >>> py3-click: Cleaning up pkgdir >>> py3-click: Cleaning up tmpdir >>> py3-click: Fetching https://distfiles.alpinelinux.org/distfiles/edge/click-8.4.0.tar.gz /var/cache/distfiles/click-8.4.0.tar.gz: OK >>> py3-click: Fetching https://distfiles.alpinelinux.org/distfiles/edge/click-8.4.0.tar.gz /var/cache/distfiles/click-8.4.0.tar.gz: OK >>> py3-click: Unpacking /var/cache/distfiles/click-8.4.0.tar.gz... 2026-05-17 12:51:11,356 gpep517 INFO Building wheel via backend flit_core.buildapi 2026-05-17 12:51:11,362 flit_core.wheel INFO Zip timestamps will be from SOURCE_DATE_EPOCH: 2026-05-17 12:45:40+00:00 2026-05-17 12:51:11,362 flit_core.wheel INFO Copying package file(s) from src/click 2026-05-17 12:51:11,370 flit_core.wheel INFO Writing metadata files 2026-05-17 12:51:11,371 flit_core.wheel INFO Writing the record of files 2026-05-17 12:51:11,372 flit_core.wheel INFO Built wheel: .dist/click-8.4.0-py3-none-any.whl 2026-05-17 12:51:11,372 gpep517 INFO The backend produced .dist/click-8.4.0-py3-none-any.whl click-8.4.0-py3-none-any.whl ============================= test session starts ============================== platform linux -- Python 3.14.3, pytest-9.0.3, pluggy-1.6.0 rootdir: /home/buildozer/aports/main/py3-click/src/click-8.4.0 configfile: pyproject.toml testpaths: tests collected 31648 items / 30000 deselected / 1648 selected tests/test_arguments.py ................................................ [ 2%] ........................................... [ 5%] tests/test_basic.py .................................................... [ 8%] .................................... [ 10%] tests/test_chain.py ...............x [ 11%] tests/test_command_decorators.py ......... [ 12%] tests/test_commands.py ................................................. [ 15%] ................................. [ 17%] tests/test_compat.py ..................................... [ 19%] tests/test_context.py .............................. [ 21%] tests/test_custom_classes.py ...... [ 21%] tests/test_defaults.py ....................................... [ 24%] tests/test_formatting.py ................................... [ 26%] tests/test_imports.py . [ 26%] tests/test_info_dict.py ...................... [ 27%] tests/test_normalization.py ... [ 27%] tests/test_options.py .................................................. [ 30%] ........................................................................ [ 35%] ........................................................................ [ 39%] ........................................................................ [ 43%] ........................................................................ [ 48%] ........................................................................ [ 52%] ........................................................................ [ 57%] ........................................................................ [ 61%] ........................................................................ [ 65%] ........... [ 66%] tests/test_parser.py ....... [ 66%] tests/test_shell_completion.py ......................................... [ 69%] ............ [ 70%] tests/test_stream_lifecycle.py ........................ [ 71%] tests/test_termui.py ............................................sssssss [ 74%] ssssssssssssss................ss........................................ [ 79%] ........................................................................ [ 83%] .......................................... [ 85%] tests/test_testing.py ..............................s........... [ 88%] tests/test_types.py .......................................... [ 91%] tests/test_utils.py .................................................... [ 94%] ...........................FFF...F...................................... [ 98%] ....................... [100%] =================================== FAILURES =================================== ________________________ test_echo_via_pager[test5-cat] ________________________ monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x7fffea28a970> capfd = <_pytest.capture.CaptureFixture object at 0x7fffef530150> pager_cmd = 'cat' test = EchoViaPagerTest(description='Exception in generator function argument', test_input= at 0x7fffef36bed0>, expected_pager='', expected_stdout='', expected_stderr='', expected_error=) tmp_path = PosixPath('/tmp/pytest-of-buildozer/pytest-1140/test_echo_via_pager_test5_cat_0') @pytest.mark.skipif(WIN, reason="Different behavior on windows.") @pytest.mark.parametrize( "pager_cmd", ["cat", "cat ", " cat ", "less", " less", " less "] ) @pytest.mark.parametrize( "test", [ # We need to pass a parameter function instead of a plain param # as pytest.mark.parametrize will reuse the parameters causing the # generators to be used up so they will not yield anymore EchoViaPagerTest( description="Plain string argument", test_input=lambda: "just text", expected_pager="just text\n", expected_stdout="", expected_stderr="", expected_error=None, ), EchoViaPagerTest( description="Iterable argument", test_input=lambda: ["itera", "ble"], expected_pager="iterable\n", expected_stdout="", expected_stderr="", expected_error=None, ), EchoViaPagerTest( description="Generator function argument", test_input=lambda: _test_gen_func, expected_pager="abcabc\n", expected_stdout="", expected_stderr="", expected_error=None, ), EchoViaPagerTest( description="String generator argument", test_input=lambda: _test_gen_func(), expected_pager="abcabc\n", expected_stdout="", expected_stderr="", expected_error=None, ), EchoViaPagerTest( description="Number generator expression argument", test_input=lambda: (c for c in range(6)), expected_pager="012345\n", expected_stdout="", expected_stderr="", expected_error=None, ), EchoViaPagerTest( description="Exception in generator function argument", test_input=lambda: _test_gen_func_fails, # Because generator throws early on, the pager did not have # a chance yet to write the file. expected_pager="", expected_stdout="", expected_stderr="", expected_error=RuntimeError, ), EchoViaPagerTest( description="Exception in generator argument", test_input=lambda: _test_gen_func_fails, # Because generator throws early on, the pager did not have a # chance yet to write the file. expected_pager="", expected_stdout="", expected_stderr="", expected_error=RuntimeError, ), EchoViaPagerTest( description="Keyboard interrupt should not terminate the pager", test_input=lambda: _test_simulate_keyboard_interrupt(), # Due to the keyboard interrupt during pager execution, click program # should abort, but the pager should stay open. # This allows users to cancel the program and search in the pager # output, before they decide to terminate the pager. expected_pager="output_before_keyboard_interrupt", expected_stdout="", expected_stderr="", expected_error=KeyboardInterrupt, ), EchoViaPagerTest( description="Writing to stdout during generator execution", test_input=lambda: _test_gen_func_echo(), expected_pager="testtest\n", expected_stdout="hello\n", expected_stderr="", expected_error=None, ), EchoViaPagerTest( description="Writing to stderr during generator execution", test_input=lambda: _test_gen_func_echo(file=sys.stderr), expected_pager="testtest\n", expected_stdout="", expected_stderr="hello\n", expected_error=None, ), ], ) def test_echo_via_pager(monkeypatch, capfd, pager_cmd, test, tmp_path): monkeypatch.setitem(os.environ, "PAGER", pager_cmd) monkeypatch.setattr(click._termui_impl, "isatty", lambda x: True) test_input = test.test_input() expected_pager = test.expected_pager expected_stdout = test.expected_stdout expected_stderr = test.expected_stderr expected_error = test.expected_error check_raise = pytest.raises(expected_error) if expected_error else nullcontext() pager_out_tmp = tmp_path / "pager_out.txt" with pager_out_tmp.open("w") as f: force_subprocess_stdout = patch.object( subprocess, "Popen", partial(subprocess.Popen, stdout=f), ) with force_subprocess_stdout: with check_raise: click.echo_via_pager(test_input) out, err = capfd.readouterr() pager = pager_out_tmp.read_text() > assert pager == expected_pager, ( f"Unexpected pager output in test case '{test.description}'" ) E AssertionError: Unexpected pager output in test case 'Exception in generator function argument' E assert 'test' == '' E E + test tests/test_utils.py:438: AssertionError _______________________ test_echo_via_pager[test5-cat ] ________________________ monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x7fffe9a44e50> capfd = <_pytest.capture.CaptureFixture object at 0x7fffe95b3dd0> pager_cmd = 'cat ' test = EchoViaPagerTest(description='Exception in generator function argument', test_input= at 0x7fffef36bed0>, expected_pager='', expected_stdout='', expected_stderr='', expected_error=) tmp_path = PosixPath('/tmp/pytest-of-buildozer/pytest-1140/test_echo_via_pager_test5_cat_1') @pytest.mark.skipif(WIN, reason="Different behavior on windows.") @pytest.mark.parametrize( "pager_cmd", ["cat", "cat ", " cat ", "less", " less", " less "] ) @pytest.mark.parametrize( "test", [ # We need to pass a parameter function instead of a plain param # as pytest.mark.parametrize will reuse the parameters causing the # generators to be used up so they will not yield anymore EchoViaPagerTest( description="Plain string argument", test_input=lambda: "just text", expected_pager="just text\n", expected_stdout="", expected_stderr="", expected_error=None, ), EchoViaPagerTest( description="Iterable argument", test_input=lambda: ["itera", "ble"], expected_pager="iterable\n", expected_stdout="", expected_stderr="", expected_error=None, ), EchoViaPagerTest( description="Generator function argument", test_input=lambda: _test_gen_func, expected_pager="abcabc\n", expected_stdout="", expected_stderr="", expected_error=None, ), EchoViaPagerTest( description="String generator argument", test_input=lambda: _test_gen_func(), expected_pager="abcabc\n", expected_stdout="", expected_stderr="", expected_error=None, ), EchoViaPagerTest( description="Number generator expression argument", test_input=lambda: (c for c in range(6)), expected_pager="012345\n", expected_stdout="", expected_stderr="", expected_error=None, ), EchoViaPagerTest( description="Exception in generator function argument", test_input=lambda: _test_gen_func_fails, # Because generator throws early on, the pager did not have # a chance yet to write the file. expected_pager="", expected_stdout="", expected_stderr="", expected_error=RuntimeError, ), EchoViaPagerTest( description="Exception in generator argument", test_input=lambda: _test_gen_func_fails, # Because generator throws early on, the pager did not have a # chance yet to write the file. expected_pager="", expected_stdout="", expected_stderr="", expected_error=RuntimeError, ), EchoViaPagerTest( description="Keyboard interrupt should not terminate the pager", test_input=lambda: _test_simulate_keyboard_interrupt(), # Due to the keyboard interrupt during pager execution, click program # should abort, but the pager should stay open. # This allows users to cancel the program and search in the pager # output, before they decide to terminate the pager. expected_pager="output_before_keyboard_interrupt", expected_stdout="", expected_stderr="", expected_error=KeyboardInterrupt, ), EchoViaPagerTest( description="Writing to stdout during generator execution", test_input=lambda: _test_gen_func_echo(), expected_pager="testtest\n", expected_stdout="hello\n", expected_stderr="", expected_error=None, ), EchoViaPagerTest( description="Writing to stderr during generator execution", test_input=lambda: _test_gen_func_echo(file=sys.stderr), expected_pager="testtest\n", expected_stdout="", expected_stderr="hello\n", expected_error=None, ), ], ) def test_echo_via_pager(monkeypatch, capfd, pager_cmd, test, tmp_path): monkeypatch.setitem(os.environ, "PAGER", pager_cmd) monkeypatch.setattr(click._termui_impl, "isatty", lambda x: True) test_input = test.test_input() expected_pager = test.expected_pager expected_stdout = test.expected_stdout expected_stderr = test.expected_stderr expected_error = test.expected_error check_raise = pytest.raises(expected_error) if expected_error else nullcontext() pager_out_tmp = tmp_path / "pager_out.txt" with pager_out_tmp.open("w") as f: force_subprocess_stdout = patch.object( subprocess, "Popen", partial(subprocess.Popen, stdout=f), ) with force_subprocess_stdout: with check_raise: click.echo_via_pager(test_input) out, err = capfd.readouterr() pager = pager_out_tmp.read_text() > assert pager == expected_pager, ( f"Unexpected pager output in test case '{test.description}'" ) E AssertionError: Unexpected pager output in test case 'Exception in generator function argument' E assert 'test' == '' E E + test tests/test_utils.py:438: AssertionError _______________________ test_echo_via_pager[test5- cat ] _______________________ monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x7fffe9a441a0> capfd = <_pytest.capture.CaptureFixture object at 0x7fffef3e3250> pager_cmd = ' cat ' test = EchoViaPagerTest(description='Exception in generator function argument', test_input= at 0x7fffef36bed0>, expected_pager='', expected_stdout='', expected_stderr='', expected_error=) tmp_path = PosixPath('/tmp/pytest-of-buildozer/pytest-1140/test_echo_via_pager_test5__cat0') @pytest.mark.skipif(WIN, reason="Different behavior on windows.") @pytest.mark.parametrize( "pager_cmd", ["cat", "cat ", " cat ", "less", " less", " less "] ) @pytest.mark.parametrize( "test", [ # We need to pass a parameter function instead of a plain param # as pytest.mark.parametrize will reuse the parameters causing the # generators to be used up so they will not yield anymore EchoViaPagerTest( description="Plain string argument", test_input=lambda: "just text", expected_pager="just text\n", expected_stdout="", expected_stderr="", expected_error=None, ), EchoViaPagerTest( description="Iterable argument", test_input=lambda: ["itera", "ble"], expected_pager="iterable\n", expected_stdout="", expected_stderr="", expected_error=None, ), EchoViaPagerTest( description="Generator function argument", test_input=lambda: _test_gen_func, expected_pager="abcabc\n", expected_stdout="", expected_stderr="", expected_error=None, ), EchoViaPagerTest( description="String generator argument", test_input=lambda: _test_gen_func(), expected_pager="abcabc\n", expected_stdout="", expected_stderr="", expected_error=None, ), EchoViaPagerTest( description="Number generator expression argument", test_input=lambda: (c for c in range(6)), expected_pager="012345\n", expected_stdout="", expected_stderr="", expected_error=None, ), EchoViaPagerTest( description="Exception in generator function argument", test_input=lambda: _test_gen_func_fails, # Because generator throws early on, the pager did not have # a chance yet to write the file. expected_pager="", expected_stdout="", expected_stderr="", expected_error=RuntimeError, ), EchoViaPagerTest( description="Exception in generator argument", test_input=lambda: _test_gen_func_fails, # Because generator throws early on, the pager did not have a # chance yet to write the file. expected_pager="", expected_stdout="", expected_stderr="", expected_error=RuntimeError, ), EchoViaPagerTest( description="Keyboard interrupt should not terminate the pager", test_input=lambda: _test_simulate_keyboard_interrupt(), # Due to the keyboard interrupt during pager execution, click program # should abort, but the pager should stay open. # This allows users to cancel the program and search in the pager # output, before they decide to terminate the pager. expected_pager="output_before_keyboard_interrupt", expected_stdout="", expected_stderr="", expected_error=KeyboardInterrupt, ), EchoViaPagerTest( description="Writing to stdout during generator execution", test_input=lambda: _test_gen_func_echo(), expected_pager="testtest\n", expected_stdout="hello\n", expected_stderr="", expected_error=None, ), EchoViaPagerTest( description="Writing to stderr during generator execution", test_input=lambda: _test_gen_func_echo(file=sys.stderr), expected_pager="testtest\n", expected_stdout="", expected_stderr="hello\n", expected_error=None, ), ], ) def test_echo_via_pager(monkeypatch, capfd, pager_cmd, test, tmp_path): monkeypatch.setitem(os.environ, "PAGER", pager_cmd) monkeypatch.setattr(click._termui_impl, "isatty", lambda x: True) test_input = test.test_input() expected_pager = test.expected_pager expected_stdout = test.expected_stdout expected_stderr = test.expected_stderr expected_error = test.expected_error check_raise = pytest.raises(expected_error) if expected_error else nullcontext() pager_out_tmp = tmp_path / "pager_out.txt" with pager_out_tmp.open("w") as f: force_subprocess_stdout = patch.object( subprocess, "Popen", partial(subprocess.Popen, stdout=f), ) with force_subprocess_stdout: with check_raise: click.echo_via_pager(test_input) out, err = capfd.readouterr() pager = pager_out_tmp.read_text() > assert pager == expected_pager, ( f"Unexpected pager output in test case '{test.description}'" ) E AssertionError: Unexpected pager output in test case 'Exception in generator function argument' E assert 'test' == '' E E + test tests/test_utils.py:438: AssertionError ________________________ test_echo_via_pager[test6-cat] ________________________ monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x7fffe9a46890> capfd = <_pytest.capture.CaptureFixture object at 0x7fffe964c650> pager_cmd = 'cat' test = EchoViaPagerTest(description='Exception in generator argument', test_input= at 0x7fffef508040>, expected_pager='', expected_stdout='', expected_stderr='', expected_error=) tmp_path = PosixPath('/tmp/pytest-of-buildozer/pytest-1140/test_echo_via_pager_test6_cat_0') @pytest.mark.skipif(WIN, reason="Different behavior on windows.") @pytest.mark.parametrize( "pager_cmd", ["cat", "cat ", " cat ", "less", " less", " less "] ) @pytest.mark.parametrize( "test", [ # We need to pass a parameter function instead of a plain param # as pytest.mark.parametrize will reuse the parameters causing the # generators to be used up so they will not yield anymore EchoViaPagerTest( description="Plain string argument", test_input=lambda: "just text", expected_pager="just text\n", expected_stdout="", expected_stderr="", expected_error=None, ), EchoViaPagerTest( description="Iterable argument", test_input=lambda: ["itera", "ble"], expected_pager="iterable\n", expected_stdout="", expected_stderr="", expected_error=None, ), EchoViaPagerTest( description="Generator function argument", test_input=lambda: _test_gen_func, expected_pager="abcabc\n", expected_stdout="", expected_stderr="", expected_error=None, ), EchoViaPagerTest( description="String generator argument", test_input=lambda: _test_gen_func(), expected_pager="abcabc\n", expected_stdout="", expected_stderr="", expected_error=None, ), EchoViaPagerTest( description="Number generator expression argument", test_input=lambda: (c for c in range(6)), expected_pager="012345\n", expected_stdout="", expected_stderr="", expected_error=None, ), EchoViaPagerTest( description="Exception in generator function argument", test_input=lambda: _test_gen_func_fails, # Because generator throws early on, the pager did not have # a chance yet to write the file. expected_pager="", expected_stdout="", expected_stderr="", expected_error=RuntimeError, ), EchoViaPagerTest( description="Exception in generator argument", test_input=lambda: _test_gen_func_fails, # Because generator throws early on, the pager did not have a # chance yet to write the file. expected_pager="", expected_stdout="", expected_stderr="", expected_error=RuntimeError, ), EchoViaPagerTest( description="Keyboard interrupt should not terminate the pager", test_input=lambda: _test_simulate_keyboard_interrupt(), # Due to the keyboard interrupt during pager execution, click program # should abort, but the pager should stay open. # This allows users to cancel the program and search in the pager # output, before they decide to terminate the pager. expected_pager="output_before_keyboard_interrupt", expected_stdout="", expected_stderr="", expected_error=KeyboardInterrupt, ), EchoViaPagerTest( description="Writing to stdout during generator execution", test_input=lambda: _test_gen_func_echo(), expected_pager="testtest\n", expected_stdout="hello\n", expected_stderr="", expected_error=None, ), EchoViaPagerTest( description="Writing to stderr during generator execution", test_input=lambda: _test_gen_func_echo(file=sys.stderr), expected_pager="testtest\n", expected_stdout="", expected_stderr="hello\n", expected_error=None, ), ], ) def test_echo_via_pager(monkeypatch, capfd, pager_cmd, test, tmp_path): monkeypatch.setitem(os.environ, "PAGER", pager_cmd) monkeypatch.setattr(click._termui_impl, "isatty", lambda x: True) test_input = test.test_input() expected_pager = test.expected_pager expected_stdout = test.expected_stdout expected_stderr = test.expected_stderr expected_error = test.expected_error check_raise = pytest.raises(expected_error) if expected_error else nullcontext() pager_out_tmp = tmp_path / "pager_out.txt" with pager_out_tmp.open("w") as f: force_subprocess_stdout = patch.object( subprocess, "Popen", partial(subprocess.Popen, stdout=f), ) with force_subprocess_stdout: with check_raise: click.echo_via_pager(test_input) out, err = capfd.readouterr() pager = pager_out_tmp.read_text() > assert pager == expected_pager, ( f"Unexpected pager output in test case '{test.description}'" ) E AssertionError: Unexpected pager output in test case 'Exception in generator argument' E assert 'test' == '' E E + test tests/test_utils.py:438: AssertionError =========================== short test summary info ============================ FAILED tests/test_utils.py::test_echo_via_pager[test5-cat] - AssertionError: ... FAILED tests/test_utils.py::test_echo_via_pager[test5-cat ] - AssertionError:... FAILED tests/test_utils.py::test_echo_via_pager[test5- cat ] - AssertionError... FAILED tests/test_utils.py::test_echo_via_pager[test6-cat] - AssertionError: ... === 4 failed, 1619 passed, 24 skipped, 30000 deselected, 1 xfailed in 9.78s ==== /usr/lib/python3.14/site-packages/_pytest/pathlib.py:96: PytestWarning: (rm_rf) error removing /tmp/pytest-of-buildozer/garbage-da91a4c0-033a-4bfb-a835-f6f2dc78c394/test_discovery_via_path_in_non0 : [Errno 39] Directory not empty: '/tmp/pytest-of-buildozer/garbage-da91a4c0-033a-4bfb-a835-f6f2dc78c394/test_discovery_via_path_in_non0' warnings.warn( /usr/lib/python3.14/site-packages/_pytest/pathlib.py:96: PytestWarning: (rm_rf) error removing /tmp/pytest-of-buildozer/garbage-da91a4c0-033a-4bfb-a835-f6f2dc78c394 : [Errno 39] Directory not empty: '/tmp/pytest-of-buildozer/garbage-da91a4c0-033a-4bfb-a835-f6f2dc78c394' warnings.warn( /usr/lib/python3.14/site-packages/_pytest/pathlib.py:96: PytestWarning: (rm_rf) error removing /tmp/pytest-of-buildozer/garbage-72fe53e2-8029-4c74-992f-34dd6ea578ee/popen-gw9/test_discovery_via_path_in_non0 : [Errno 39] Directory not empty: '/tmp/pytest-of-buildozer/garbage-72fe53e2-8029-4c74-992f-34dd6ea578ee/popen-gw9/test_discovery_via_path_in_non0' warnings.warn( /usr/lib/python3.14/site-packages/_pytest/pathlib.py:96: PytestWarning: (rm_rf) error removing /tmp/pytest-of-buildozer/garbage-72fe53e2-8029-4c74-992f-34dd6ea578ee/popen-gw9 : [Errno 39] Directory not empty: '/tmp/pytest-of-buildozer/garbage-72fe53e2-8029-4c74-992f-34dd6ea578ee/popen-gw9' warnings.warn( /usr/lib/python3.14/site-packages/_pytest/pathlib.py:96: PytestWarning: (rm_rf) error removing /tmp/pytest-of-buildozer/garbage-72fe53e2-8029-4c74-992f-34dd6ea578ee : [Errno 39] Directory not empty: '/tmp/pytest-of-buildozer/garbage-72fe53e2-8029-4c74-992f-34dd6ea578ee' warnings.warn( >>> ERROR: py3-click: check failed >>> py3-click: Uninstalling dependencies... ( 1/33) Purging .makedepends-py3-click (20260517.125110) ( 2/33) Purging py3-flit-core-pyc (3.12.0-r1) ( 3/33) Purging py3-flit-core (3.12.0-r1) ( 4/33) Purging py3-gpep517-pyc (19-r2) ( 5/33) Purging py3-gpep517 (19-r2) ( 6/33) Purging py3-installer-pyc (1.0.0-r0) ( 7/33) Purging py3-installer (1.0.0-r0) ( 8/33) Purging py3-pytest-pyc (9.0.3-r0) ( 9/33) Purging py3-pytest (9.0.3-r0) (10/33) Purging py3-iniconfig-pyc (2.3.0-r1) (11/33) Purging py3-iniconfig (2.3.0-r1) (12/33) Purging py3-packaging-pyc (26.2-r0) (13/33) Purging py3-packaging (26.2-r0) (14/33) Purging py3-parsing-pyc (3.3.2-r1) (15/33) Purging py3-parsing (3.3.2-r1) (16/33) Purging py3-pluggy-pyc (1.6.0-r1) (17/33) Purging py3-pluggy (1.6.0-r1) (18/33) Purging py3-py-pyc (1.11.0-r5) (19/33) Purging py3-py (1.11.0-r5) (20/33) Purging py3-pygments-pyc (2.20.0-r0) (21/33) Purging py3-pygments (2.20.0-r0) (22/33) Purging python3-pyc (3.14.3-r0) (23/33) Purging python3-pycache-pyc0 (3.14.3-r0) (24/33) Purging pyc (3.14.3-r0) (25/33) Purging python3 (3.14.3-r0) (26/33) Purging gdbm (1.26-r0) (27/33) Purging libbz2 (1.0.8-r6) (28/33) Purging libffi (3.5.2-r1) (29/33) Purging libpanelw (6.6_p20260502-r0) (30/33) Purging mpdecimal (4.0.1-r0) (31/33) Purging readline (8.3.3-r1) (32/33) Purging sqlite-libs (3.53.1-r0) (33/33) Purging xz-libs (5.8.3-r0) Executing busybox-1.37.0-r31.trigger OK: 269.1 MiB in 101 packages