==>(B Building on monferno(B ==>(B Checking for remote environment...(B ==>(B Syncing package to remote host...(B sending incremental file list ./ .SRCINFO 700 87% 0.00kB/s 0:00:00 802 100% 99.61kB/s 0:00:00 (xfr#1, to-chk=7/9) .nvchecker.toml 112 100% 109.38kB/s 0:00:00 112 100% 109.38kB/s 0:00:00 (xfr#2, to-chk=6/9) LICENSE 646 100% 630.86kB/s 0:00:00 646 100% 630.86kB/s 0:00:00 (xfr#3, to-chk=5/9) PKGBUILD 700 62% 683.59kB/s 0:00:00 1,126 100% 1.07MB/s 0:00:00 (xfr#4, to-chk=4/9) REUSE.toml 375 100% 366.21kB/s 0:00:00 375 100% 366.21kB/s 0:00:00 (xfr#5, to-chk=3/9) python-cmd2-4.3.0-1.log 707 100% 690.43kB/s 0:00:00 707 100% 690.43kB/s 0:00:00 (xfr#6, to-chk=2/9) LICENSES/ sent 829 bytes received 198 bytes 410.80 bytes/sec total size is 3,278 speedup is 3.19 ==>(B Running pkgctl build --arch riscv64 on remote host...(B ==> WARNING:(B invalid architecture: riscv64(B ==>(B Updating pacman database cache(B [?25l:: Synchronizing package databases... core downloading... extra downloading... multilib downloading... [?25h==>(B Building python-cmd2(B  ->(B repo: extra(B  ->(B arch: riscv64(B  ->(B worker: felix-2(B ==>(B Building python-cmd2 for [extra] (riscv64)(B ]3008;start=e700c82d8214400db3bcdc5319900dad;user=felix;hostname=monferno.felixc.at;machineid=d81047be213f47f4a04ac21a8f8e559b;bootid=e09be040f722427c8b59ed2fd3c4abfd;pid=323500;pidfdid=63231578;comm=sudo;targetuser=root;type=session\Note: in a future version of systemd-nspawn the default set of permitted socket address families will be restricted to AF_INET, AF_INET6 and AF_UNIX. Use --restrict-address-families= to configure the set of permitted socket address families, or set RestrictAddressFamilies= in a .nspawn file. ]3008;start=7d4200426a41432884cd5b4aefc953ee;user=root;hostname=monferno.felixc.at;machineid=d81047be213f47f4a04ac21a8f8e559b;bootid=e09be040f722427c8b59ed2fd3c4abfd;pid=323544;pidfdid=63273152;comm=systemd-nspawn;container=arch-nspawn-323544;type=container\]11;?\]2;🔵 Container arch-nspawn-323544 on monferno.felixc.at\[?25l:: Synchronizing package databases... core downloading... extra downloading... :: Starting full system upgrade... there is nothing to do [?25h[!p]104\[?7h]3008;end=7d4200426a41432884cd5b4aefc953ee\==>(B Building in chroot for [extra] (riscv64)...(B ==>(B Synchronizing chroot copy [/var/lib/archbuild/extra-riscv64/root] -> [felix-2]...(Bdone(B ]3008;start=74ecafcc2f514b78a972dc4294c76a3e;user=root;hostname=monferno.felixc.at;machineid=d81047be213f47f4a04ac21a8f8e559b;bootid=e09be040f722427c8b59ed2fd3c4abfd;pid=323809;pidfdid=63162699;comm=sudo;targetuser=felix;type=session\==>(B Making package: python-cmd2 4.3.0-1 (Tue Oct 13 18:49:37 2026)(B ==>(B Retrieving sources...(B  ->(B Updating cmd2 git repo...(B ==>(B Validating source files with sha512sums...(B cmd2 ... Passed ]3008;end=74ecafcc2f514b78a972dc4294c76a3e\Note: in a future version of systemd-nspawn the default set of permitted socket address families will be restricted to AF_INET, AF_INET6 and AF_UNIX. Use --restrict-address-families= to configure the set of permitted socket address families, or set RestrictAddressFamilies= in a .nspawn file. ]3008;start=f885070381cc4513a54a53828ac4e8a2;user=root;hostname=monferno.felixc.at;machineid=d81047be213f47f4a04ac21a8f8e559b;bootid=e09be040f722427c8b59ed2fd3c4abfd;pid=324739;pidfdid=63238990;comm=systemd-nspawn;container=makechrootpkg-python-cmd2.build.323521;type=container\]11;?\]2;🔵 Container makechrootpkg-python-cmd2.build.323521 on monferno.felixc.at\]3008;start=2d487192e3064f9993c796d3a2681279;user=root;hostname=makechrootpkg-python-cmd2.build.323521;machineid=890b8f41150d420f89723cd00a576889;bootid=104585968f3a4ce0bf81d5a2a91eefce;pid=34;pidfdid=63283356;comm=sudo;targetuser=builduser;type=session\==>(B Making package: python-cmd2 4.3.0-1 (Tue Oct 13 18:49:48 2026)(B ==>(B Checking runtime dependencies...(B ==>(B Installing missing dependencies...(B ]3008;start=48d36dcfea3f472f80fa70d48838e5dd;user=builduser;hostname=makechrootpkg-python-cmd2.build.323521;machineid=890b8f41150d420f89723cd00a576889;bootid=104585968f3a4ce0bf81d5a2a91eefce;pid=2017;pidfdid=63259849;comm=sudo;targetuser=root;type=session\[?25lresolving dependencies... looking for conflicting packages... Package (8) New Version Net Change extra/python-markdown-it-py 4.2.0-1 0.81 MiB extra/python-mdurl 0.1.2-9 0.06 MiB extra/python-pygments 2.21.0-1 15.59 MiB extra/python-wcwidth 0.9.2-1 7.30 MiB extra/python-prompt_toolkit 3.0.53-1 5.10 MiB extra/python-pyperclip 1.11.0-2 0.09 MiB extra/python-rich 15.0.0-1 4.49 MiB extra/python-rich-argparse 1.8.0-1 0.23 MiB Total Installed Size: 33.66 MiB :: Proceed with installation? [Y/n] checking keyring... checking package integrity... loading package files... checking for file conflicts... :: Processing package changes... installing python-wcwidth... installing python-prompt_toolkit... Optional dependencies for python-prompt_toolkit python-pygments: for color schemes and lexers [pending] installing python-pyperclip... Optional dependencies for python-pyperclip xclip: xclip backend xsel: xsel backend wl-clipboard: wl-clipboard backend plasma-workspace: klipper backend installing python-mdurl... installing python-markdown-it-py... Optional dependencies for python-markdown-it-py python-mdit_py_plugins: core plugins python-linkify-it-py: linkify extension installing python-pygments... installing python-rich... installing python-rich-argparse... :: Running post-transaction hooks... (1/1) Arming ConditionNeedsUpdate... [?25h]3008;end=48d36dcfea3f472f80fa70d48838e5dd\==>(B Checking buildtime dependencies...(B ==>(B Installing missing dependencies...(B ]3008;start=41c5c1702a1840478a48ce9920c20267;user=builduser;hostname=makechrootpkg-python-cmd2.build.323521;machineid=890b8f41150d420f89723cd00a576889;bootid=104585968f3a4ce0bf81d5a2a91eefce;pid=2186;pidfdid=63078171;comm=sudo;targetuser=root;type=session\[?25lresolving dependencies... looking for conflicting packages... warning: insufficient columns available for table display Packages (32) gpm-1.20.7.r38.ge82d1a6-7 jemalloc-1:5.4.0-1 perl-error-0.17030-3 perl-mailtools-2.22-3 perl-timedate-2.35-1 procps-ng-4.0.7-1 python-autocommand-2.2.2-9 python-iniconfig-2.3.0-1 python-jaraco.collections-5.1.0-3 python-jaraco.context-6.1.2-1 python-jaraco.functools-4.1.0-3 python-jaraco.text-4.0.0-4 python-more-itertools-11.1.0-1 python-packaging-26.3-1 python-platformdirs-4.13.0-1 python-pluggy-1.6.0-3.1 python-pyproject-hooks-1.3.3-1 python-setuptools-1:84.0.0-1 python-vcs-versioning-2.6.0-1 vim-9.2.1164-2 vim-runtime-9.2.1164-2 zlib-ng-2.3.3-1 ex-vi-compat-3-1 git-2.56.0-1 python-build-1.6.0-1 python-installer-1.0.1-1 python-pyte-0.8.2-5 python-pytest-1:9.1.1-1 python-pytest-mock-3.16.0-1 python-setuptools-scm-10.3.4-1 python-wheel-0.48.0-1 uv-0.13.0-1 Total Download Size: 0.06 MiB Total Installed Size: 138.76 MiB :: Proceed with installation? [Y/n] :: Retrieving packages... python-pyte-0.8.2-5-any downloading... checking keyring... checking package integrity... loading package files... checking for file conflicts... :: Processing package changes... installing perl-error... installing perl-timedate... installing perl-mailtools... installing zlib-ng... installing git... Optional dependencies for git git-zsh-completion: upstream zsh completion tk: gitk and git gui openssh: ssh transport and crypto man: show help with `git command --help` perl-libwww: git svn perl-term-readkey: git svn and interactive.singlekey setting perl-io-socket-ssl: git send-email TLS support perl-authen-sasl: git send-email TLS support perl-cgi: gitweb (web interface) support python: git svn & git p4 [installed] subversion: git svn org.freedesktop.secrets: keyring credential helper libsecret: libsecret credential helper [installed] less: the default pager for git installing python-packaging... installing python-more-itertools... installing python-jaraco.functools... installing python-jaraco.context... installing python-autocommand... installing python-jaraco.text... Optional dependencies for python-jaraco.text python-inflect: for show-newlines script installing python-jaraco.collections... installing python-platformdirs... installing python-wheel... Optional dependencies for python-wheel python-keyring: for wheel.signatures python-xdg: for wheel.signatures python-setuptools: for legacy bdist_wheel subcommand [pending] installing python-setuptools... installing python-vcs-versioning... Optional dependencies for python-vcs-versioning python-rich: formatting of log messages [installed] installing python-setuptools-scm... Optional dependencies for python-setuptools-scm python-rich: use rich as console log handler [installed] installing python-pyproject-hooks... installing python-build... Optional dependencies for python-build python-pip: to use as the Python package installer (default) python-uv: to use as the Python package installer python-virtualenv: to use virtualenv for build isolation installing python-installer... installing python-iniconfig... installing python-pluggy... installing python-pytest... installing python-pytest-mock... installing python-pyte... installing jemalloc... Optional dependencies for jemalloc perl: for jeprof [installed] installing uv... installing vim-runtime... Optional dependencies for vim-runtime sh: support for some tools and macros [installed] python: demoserver example tool [installed] gawk: mve tools support [installed] installing procps-ng... installing gpm... installing vim... Optional dependencies for vim python: Python language support [installed] ruby: Ruby language support lua: Lua language support perl: Perl language support [installed] tcl: Tcl language support installing ex-vi-compat... :: Running post-transaction hooks... (1/5) Creating system user accounts... Creating group 'git' with GID 968. Creating user 'git' (git daemon user) with UID 968 and GID 968. (2/5) Reloading system manager configuration... Skipped: Current root is not booted. (3/5) Arming ConditionNeedsUpdate... (4/5) Checking for old perl modules... (5/5) Updating the info directory file... [?25h]3008;end=41c5c1702a1840478a48ce9920c20267\==>(B Retrieving sources...(B ==> WARNING:(B Skipping all source file integrity checks.(B ==>(B Extracting sources...(B  ->(B Creating working copy of cmd2 git repo...(B Cloning into 'cmd2'... done. Switched to a new branch 'makepkg' ==>(B Starting build()...(B * Getting build dependencies for wheel... running egg_info creating cmd2.egg-info writing cmd2.egg-info/PKG-INFO writing dependency_links to cmd2.egg-info/dependency_links.txt writing requirements to cmd2.egg-info/requires.txt writing top-level names to cmd2.egg-info/top_level.txt writing manifest file 'cmd2.egg-info/SOURCES.txt' reading manifest template 'MANIFEST.in' no previously-included directories found matching 'build' warning: no previously-included files found matching '.github' warning: no previously-included files matching 'htmlcov/**' found anywhere in distribution warning: no previously-included files matching '.coverage*' found anywhere in distribution warning: no previously-included files matching '__pycache__/**' found anywhere in distribution warning: no previously-included files matching '.gitignore' found anywhere in distribution adding license file 'LICENSE' writing manifest file 'cmd2.egg-info/SOURCES.txt' * Building wheel... running bdist_wheel running build running build_py creating build/lib/cmd2 copying cmd2/decorators.py -> build/lib/cmd2 copying cmd2/string_utils.py -> build/lib/cmd2 copying cmd2/types.py -> build/lib/cmd2 copying cmd2/theme.py -> build/lib/cmd2 copying cmd2/history.py -> build/lib/cmd2 copying cmd2/argparse_utils.py -> build/lib/cmd2 copying cmd2/__init__.py -> build/lib/cmd2 copying cmd2/completion.py -> build/lib/cmd2 copying cmd2/utils.py -> build/lib/cmd2 copying cmd2/rich_utils.py -> build/lib/cmd2 copying cmd2/cmd2.py -> build/lib/cmd2 copying cmd2/plugin.py -> build/lib/cmd2 copying cmd2/py_bridge.py -> build/lib/cmd2 copying cmd2/clipboard.py -> build/lib/cmd2 copying cmd2/annotated.py -> build/lib/cmd2 copying cmd2/command_set.py -> build/lib/cmd2 copying cmd2/colors.py -> build/lib/cmd2 copying cmd2/argparse_completer.py -> build/lib/cmd2 copying cmd2/exceptions.py -> build/lib/cmd2 copying cmd2/pt_utils.py -> build/lib/cmd2 copying cmd2/parsing.py -> build/lib/cmd2 copying cmd2/constants.py -> build/lib/cmd2 copying cmd2/styles.py -> build/lib/cmd2 running egg_info writing cmd2.egg-info/PKG-INFO writing dependency_links to cmd2.egg-info/dependency_links.txt writing requirements to cmd2.egg-info/requires.txt writing top-level names to cmd2.egg-info/top_level.txt reading manifest template 'MANIFEST.in' no previously-included directories found matching 'build' warning: no previously-included files found matching '.github' warning: no previously-included files matching 'htmlcov/**' found anywhere in distribution warning: no previously-included files matching '.coverage*' found anywhere in distribution warning: no previously-included files matching '__pycache__/**' found anywhere in distribution warning: no previously-included files matching '.gitignore' found anywhere in distribution adding license file 'LICENSE' writing manifest file 'cmd2.egg-info/SOURCES.txt' copying cmd2/py.typed -> build/lib/cmd2 installing to build/bdist.linux-riscv64/wheel running install running install_lib creating build/bdist.linux-riscv64/wheel creating build/bdist.linux-riscv64/wheel/cmd2 copying build/lib/cmd2/decorators.py -> build/bdist.linux-riscv64/wheel/./cmd2 copying build/lib/cmd2/string_utils.py -> build/bdist.linux-riscv64/wheel/./cmd2 copying build/lib/cmd2/types.py -> build/bdist.linux-riscv64/wheel/./cmd2 copying build/lib/cmd2/py.typed -> build/bdist.linux-riscv64/wheel/./cmd2 copying build/lib/cmd2/theme.py -> build/bdist.linux-riscv64/wheel/./cmd2 copying build/lib/cmd2/history.py -> build/bdist.linux-riscv64/wheel/./cmd2 copying build/lib/cmd2/argparse_utils.py -> build/bdist.linux-riscv64/wheel/./cmd2 copying build/lib/cmd2/__init__.py -> build/bdist.linux-riscv64/wheel/./cmd2 copying build/lib/cmd2/completion.py -> build/bdist.linux-riscv64/wheel/./cmd2 copying build/lib/cmd2/utils.py -> build/bdist.linux-riscv64/wheel/./cmd2 copying build/lib/cmd2/rich_utils.py -> build/bdist.linux-riscv64/wheel/./cmd2 copying build/lib/cmd2/cmd2.py -> build/bdist.linux-riscv64/wheel/./cmd2 copying build/lib/cmd2/plugin.py -> build/bdist.linux-riscv64/wheel/./cmd2 copying build/lib/cmd2/py_bridge.py -> build/bdist.linux-riscv64/wheel/./cmd2 copying build/lib/cmd2/clipboard.py -> build/bdist.linux-riscv64/wheel/./cmd2 copying build/lib/cmd2/annotated.py -> build/bdist.linux-riscv64/wheel/./cmd2 copying build/lib/cmd2/command_set.py -> build/bdist.linux-riscv64/wheel/./cmd2 copying build/lib/cmd2/colors.py -> build/bdist.linux-riscv64/wheel/./cmd2 copying build/lib/cmd2/argparse_completer.py -> build/bdist.linux-riscv64/wheel/./cmd2 copying build/lib/cmd2/exceptions.py -> build/bdist.linux-riscv64/wheel/./cmd2 copying build/lib/cmd2/pt_utils.py -> build/bdist.linux-riscv64/wheel/./cmd2 copying build/lib/cmd2/parsing.py -> build/bdist.linux-riscv64/wheel/./cmd2 copying build/lib/cmd2/constants.py -> build/bdist.linux-riscv64/wheel/./cmd2 copying build/lib/cmd2/styles.py -> build/bdist.linux-riscv64/wheel/./cmd2 running install_egg_info Copying cmd2.egg-info to build/bdist.linux-riscv64/wheel/./cmd2-4.3.0-py3.14.egg-info running install_scripts creating build/bdist.linux-riscv64/wheel/cmd2-4.3.0.dist-info/WHEEL creating '/build/python-cmd2/src/cmd2/dist/.tmp-wla7630y/cmd2-4.3.0-py3-none-any.whl' and adding 'build/bdist.linux-riscv64/wheel' to it adding 'cmd2/__init__.py' adding 'cmd2/annotated.py' adding 'cmd2/argparse_completer.py' adding 'cmd2/argparse_utils.py' adding 'cmd2/clipboard.py' adding 'cmd2/cmd2.py' adding 'cmd2/colors.py' adding 'cmd2/command_set.py' adding 'cmd2/completion.py' adding 'cmd2/constants.py' adding 'cmd2/decorators.py' adding 'cmd2/exceptions.py' adding 'cmd2/history.py' adding 'cmd2/parsing.py' adding 'cmd2/plugin.py' adding 'cmd2/pt_utils.py' adding 'cmd2/py.typed' adding 'cmd2/py_bridge.py' adding 'cmd2/rich_utils.py' adding 'cmd2/string_utils.py' adding 'cmd2/styles.py' adding 'cmd2/theme.py' adding 'cmd2/types.py' adding 'cmd2/utils.py' adding 'cmd2-4.3.0.dist-info/licenses/LICENSE' adding 'cmd2-4.3.0.dist-info/METADATA' adding 'cmd2-4.3.0.dist-info/WHEEL' adding 'cmd2-4.3.0.dist-info/top_level.txt' adding 'cmd2-4.3.0.dist-info/RECORD' removing build/bdist.linux-riscv64/wheel Successfully built cmd2-4.3.0-py3-none-any.whl ==>(B Starting check()...(B ============================= test session starts ============================== platform linux -- Python 3.14.8, pytest-9.1.1, pluggy-1.6.0 rootdir: /build/python-cmd2/src/cmd2 configfile: pyproject.toml testpaths: tests plugins: mock-3.16.0, platformdirs-4.13.0 collected 2011 items tests/test_annotated.py ................................................ [ 2%] ........................................................................ [ 5%] ........................................................................ [ 9%] ........................................................................ [ 13%] ........................................................................ [ 16%] ........................................................................ [ 20%] ........................................................................ [ 23%] ........................................................................ [ 27%] ........................................................................ [ 31%] ................................................ [ 33%] tests/test_argparse.py ....................................... [ 35%] tests/test_argparse_completer.py ....................................... [ 37%] ........................................................................ [ 40%] ........................................................... [ 43%] tests/test_argparse_subcommands.py ...... [ 44%] tests/test_argparse_utils.py ......................................... [ 46%] tests/test_categories.py .... [ 46%] tests/test_cmd2.py .................................F................... [ 48%] ........................................................................ [ 52%] ........................................................................ [ 56%] ........................................................................ [ 59%] ........................................................................ [ 63%] .....ss......................... [ 64%] tests/test_commandset.py ............... [ 65%] tests/test_completion.py ............................................... [ 67%] ...................................................... [ 70%] tests/test_dynamic_complete_style.py .. [ 70%] tests/test_future_annotations.py . [ 70%] tests/test_history.py .................................................. [ 73%] [ 73%] tests/test_parsing.py .................................................. [ 75%] ........................................................................ [ 79%] ....................... [ 80%] tests/test_pipeline_job_control.py ............................... [ 82%] tests/test_plugin.py .................................................. [ 84%] tests/test_pt_utils.py ................................................. [ 86%] ..................... [ 88%] tests/test_py_completion.py ... [ 88%] tests/test_rich_utils.py ........................ [ 89%] tests/test_run_pyscript.py ..................... [ 90%] tests/test_string_utils.py .............................. [ 91%] tests/test_suite_environment.py ......... [ 92%] tests/test_theme.py .................. [ 93%] tests/test_utils.py .................................................... [ 95%] ........................................................................ [ 99%] ........... [ 99%] tests/test_utils_defining_class.py . [100%] =================================== FAILURES =================================== ______________ test_shell_permission_error_unrelated_to_pipeline _______________ base_app = tmp_path = PosixPath('/tmp/pytest-of-builduser/pytest-0/test_shell_permission_error_un0') monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x7fcabf4a3690> @pytest.mark.skipif(sys.platform == "win32", reason="POSIX shell executable") def test_shell_permission_error_unrelated_to_pipeline(base_app, tmp_path, monkeypatch) -> None: unusable_shell = tmp_path / "shell" unusable_shell.write_text("#!/bin/sh\n") unusable_shell.chmod(0o644) monkeypatch.setenv("SHELL", str(unusable_shell)) > with pytest.raises(PermissionError): ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ E Failed: DID NOT RAISE PermissionError tests/test_cmd2.py:529: Failed =========================== short test summary info ============================ FAILED tests/test_cmd2.py::test_shell_permission_error_unrelated_to_pipeline ============ 1 failed, 2008 passed, 2 skipped in 344.85s (0:05:44) ============= ==> ERROR:(B A failure occurred in check().(B  Aborting...(B ]3008;end=2d487192e3064f9993c796d3a2681279\[!p]104\[?7h]3008;end=f885070381cc4513a54a53828ac4e8a2\==> ERROR:(B Build failed, check /var/lib/archbuild/extra-riscv64/felix-2/build(B [?12l[?25h[?12l[?25h]3008;end=e700c82d8214400db3bcdc5319900dad\[?12l[?25hreceiving incremental file list python-cmd2-4.3.0-1-riscv64-build.log python-cmd2-4.3.0-1-riscv64-check.log sent 62 bytes received 2,343 bytes 1,603.33 bytes/sec total size is 11,492 speedup is 4.78