Warning: Permanently added '3.89.199.215' (ED25519) to the list of known hosts. Running (timeout=172800): unbuffer mock --spec /var/lib/copr-rpmbuild/workspace/workdir-afnn1kpw/pyrtl/pyrtl.spec --sources /var/lib/copr-rpmbuild/workspace/workdir-afnn1kpw/pyrtl --resultdir /var/lib/copr-rpmbuild/results --uniqueext 1778568246.750797 -r /var/lib/copr-rpmbuild/results/configs/child.cfg INFO: mock.py version 6.7 starting (python version = 3.14.2, NVR = mock-6.7-1.fc43), args: /usr/libexec/mock/mock --spec /var/lib/copr-rpmbuild/workspace/workdir-afnn1kpw/pyrtl/pyrtl.spec --sources /var/lib/copr-rpmbuild/workspace/workdir-afnn1kpw/pyrtl --resultdir /var/lib/copr-rpmbuild/results --uniqueext 1778568246.750797 -r /var/lib/copr-rpmbuild/results/configs/child.cfg Start(bootstrap): init plugins INFO: tmpfs initialized INFO: selinux enabled INFO: chroot_scan: initialized INFO: compress_logs: initialized Finish(bootstrap): init plugins Start: init plugins INFO: tmpfs initialized INFO: selinux enabled INFO: chroot_scan: initialized INFO: compress_logs: initialized Finish: init plugins INFO: Signal handler active Start: run INFO: Start(/var/lib/copr-rpmbuild/workspace/workdir-afnn1kpw/pyrtl/pyrtl.spec) Config(fedora-rawhide-x86_64) Start: clean chroot Finish: clean chroot Mock Version: 6.7 INFO: Mock Version: 6.7 Start(bootstrap): chroot init INFO: mounting tmpfs at /var/lib/mock/fedora-rawhide-x86_64-bootstrap-1778568246.750797/root. INFO: calling preinit hooks INFO: enabled root cache INFO: enabled package manager cache Start(bootstrap): cleaning package manager metadata Finish(bootstrap): cleaning package manager metadata INFO: Guessed host environment type: unknown INFO: Using container image: registry.fedoraproject.org/fedora:rawhide INFO: Pulling image: registry.fedoraproject.org/fedora:rawhide INFO: Tagging container image as mock-bootstrap-6cc97dc6-4c53-4572-a85d-f433c13a40f0 INFO: Checking that e957ba46f6d7b54f5b34948ab8abe4a251df5b0bde8a0c02ce48b46bef8a49f4 image matches host's architecture INFO: Copy content of container e957ba46f6d7b54f5b34948ab8abe4a251df5b0bde8a0c02ce48b46bef8a49f4 to /var/lib/mock/fedora-rawhide-x86_64-bootstrap-1778568246.750797/root INFO: mounting e957ba46f6d7b54f5b34948ab8abe4a251df5b0bde8a0c02ce48b46bef8a49f4 with podman image mount INFO: image e957ba46f6d7b54f5b34948ab8abe4a251df5b0bde8a0c02ce48b46bef8a49f4 as /var/lib/containers/storage/overlay/28f64d6f96b567223b0fd9cb698d88fd549473cfacc43daf4a1f56da8adf9b69/merged INFO: umounting image e957ba46f6d7b54f5b34948ab8abe4a251df5b0bde8a0c02ce48b46bef8a49f4 (/var/lib/containers/storage/overlay/28f64d6f96b567223b0fd9cb698d88fd549473cfacc43daf4a1f56da8adf9b69/merged) with podman image umount INFO: Removing image mock-bootstrap-6cc97dc6-4c53-4572-a85d-f433c13a40f0 INFO: Package manager dnf5 detected and used (fallback) INFO: Not updating bootstrap chroot, bootstrap_image_ready=True Start(bootstrap): creating root cache Finish(bootstrap): creating root cache Finish(bootstrap): chroot init Start: chroot init INFO: mounting tmpfs at /var/lib/mock/fedora-rawhide-x86_64-1778568246.750797/root. INFO: calling preinit hooks INFO: enabled root cache INFO: enabled package manager cache Start: cleaning package manager metadata Finish: cleaning package manager metadata INFO: enabled HW Info plugin INFO: Package manager dnf5 detected and used (direct choice) INFO: Buildroot is handled by package management downloaded with a bootstrap image: rpm-6.0.1-5.fc45.x86_64 rpm-sequoia-1.10.2-1.fc45.x86_64 dnf5-5.4.2.0-1.fc45.x86_64 dnf5-plugins-5.4.2.0-1.fc45.x86_64 Start: installing minimal buildroot with dnf5 Updating and loading repositories: Copr repository 100% | 489.6 KiB/s | 135.6 KiB | 00m00s fedora 100% | 30.8 MiB/s | 21.7 MiB | 00m01s Repositories loaded. Package Arch Version Repository Size Installing group/module packages: bash x86_64 0:5.3.9-3.fc44 fedora 8.5 MiB bzip2 x86_64 0:1.0.8-23.fc44 fedora 95.0 KiB coreutils x86_64 0:9.11-1.fc45 fedora 6.3 MiB cpio x86_64 0:2.15-9.fc44 fedora 1.1 MiB diffutils x86_64 0:3.12-5.fc44 fedora 1.6 MiB fedora-release-common noarch 0:45-0.7 fedora 4.2 KiB findutils x86_64 1:4.10.0-7.fc44 fedora 1.9 MiB gawk x86_64 0:5.4.0-2.fc45 fedora 2.2 MiB glibc-minimal-langpack x86_64 0:2.43.9000-14.fc45 fedora 0.0 B grep x86_64 0:3.12-3.fc44 fedora 1.0 MiB gzip x86_64 0:1.14-2.fc44 fedora 401.6 KiB info x86_64 0:7.3-1.fc45 fedora 372.4 KiB patch x86_64 0:2.8-4.fc44 fedora 226.6 KiB redhat-rpm-config noarch 0:344-1.fc45 fedora 183.7 KiB rpm-build x86_64 0:6.0.1-5.fc45 fedora 294.6 KiB sed x86_64 0:4.10-1.fc45 fedora 939.4 KiB shadow-utils x86_64 2:4.19.3-2.fc45 fedora 4.0 MiB tar x86_64 2:1.35-8.fc44 fedora 3.0 MiB unzip x86_64 0:6.0-69.fc44 fedora 445.8 KiB util-linux x86_64 0:2.42-7.fc45 fedora 3.6 MiB which x86_64 0:2.23-4.fc44 fedora 83.4 KiB xz x86_64 1:5.8.3-1.fc45 fedora 1.4 MiB Installing dependencies: R-srpm-macros noarch 0:1.3.7-2.fc45 fedora 3.5 KiB add-determinism x86_64 0:0.7.3-2.fc45 fedora 2.2 MiB alternatives x86_64 0:1.33-5.fc44 fedora 62.1 KiB ansible-srpm-macros noarch 0:1-20.1.fc44 fedora 35.7 KiB audit-libs x86_64 0:4.1.4-1.fc45 fedora 390.5 KiB binutils x86_64 0:2.46.50-7.fc45 fedora 28.2 MiB build-reproducibility-srpm-macros noarch 0:0.7.3-2.fc45 fedora 1.2 KiB bzip2-libs x86_64 0:1.0.8-23.fc44 fedora 80.5 KiB ca-certificates noarch 0:2025.2.80_v9.0.304-7.fc45 fedora 2.7 MiB cmake-srpm-macros noarch 0:4.3.0-1.fc45 fedora 524.0 B coreutils-common x86_64 0:9.11-1.fc45 fedora 10.9 MiB crypto-policies noarch 0:20251128-3.git19878fe.fc44 fedora 132.6 KiB curl x86_64 0:8.20.0~rc3-1.fc45 fedora 482.9 KiB cyrus-sasl-lib x86_64 0:2.1.28-35.fc44 fedora 2.3 MiB debugedit x86_64 0:5.3-2.fc45 fedora 220.8 KiB dwz x86_64 0:0.16-3.fc44 fedora 290.9 KiB ed x86_64 0:1.22.5-2.fc45 fedora 149.7 KiB efi-srpm-macros noarch 0:6-6.fc44 fedora 40.2 KiB elfutils x86_64 0:0.195-1.fc45 fedora 3.0 MiB elfutils-debuginfod-client x86_64 0:0.195-1.fc45 fedora 83.8 KiB elfutils-libelf x86_64 0:0.195-1.fc45 fedora 1.2 MiB elfutils-libs x86_64 0:0.195-1.fc45 fedora 715.3 KiB erlang-srpm-macros noarch 0:0.3.11-1.fc45 fedora 1.9 KiB fedora-gpg-keys noarch 0:45-0.1 fedora 133.4 KiB fedora-release noarch 0:45-0.7 fedora 0.0 B fedora-release-identity-basic noarch 0:45-0.7 fedora 664.0 B fedora-repos noarch 0:45-0.1 fedora 4.9 KiB fedora-repos-rawhide noarch 0:45-0.1 fedora 2.2 KiB file x86_64 0:5.47-2.fc45 fedora 101.2 KiB file-libs x86_64 0:5.47-2.fc45 fedora 12.2 MiB filesystem x86_64 0:3.18-56.fc45 fedora 112.0 B filesystem-srpm-macros noarch 0:3.18-56.fc45 fedora 38.2 KiB fonts-srpm-macros noarch 1:5.0.0-3.fc45 fedora 55.8 KiB forge-srpm-macros noarch 0:0.4.0-4.fc44 fedora 38.9 KiB fpc-srpm-macros noarch 0:1.3-16.fc44 fedora 144.0 B gap-srpm-macros noarch 0:2-2.fc44 fedora 2.1 KiB gdb-minimal x86_64 0:17.1-5.fc45 fedora 14.2 MiB gdbm-libs x86_64 1:1.23-11.fc44 fedora 129.6 KiB ghc-srpm-macros noarch 0:1.10-1.fc44 fedora 792.0 B glibc x86_64 0:2.43.9000-14.fc45 fedora 7.0 MiB glibc-common x86_64 0:2.43.9000-14.fc45 fedora 1.0 MiB glibc-gconv-extra x86_64 0:2.43.9000-14.fc45 fedora 7.7 MiB gmp x86_64 1:6.3.0-5.fc44 fedora 815.2 KiB gnat-srpm-macros noarch 0:7-2.fc44 fedora 1.0 KiB gnulib-l10n noarch 0:20241231-2.fc44 fedora 655.0 KiB gnupg2 x86_64 0:2.4.9-7.fc45 fedora 6.5 MiB gnupg2-dirmngr x86_64 0:2.4.9-7.fc45 fedora 634.0 KiB gnupg2-gpg-agent x86_64 0:2.4.9-7.fc45 fedora 686.6 KiB gnupg2-gpgconf x86_64 0:2.4.9-7.fc45 fedora 249.7 KiB gnupg2-keyboxd x86_64 0:2.4.9-7.fc45 fedora 201.2 KiB gnupg2-verify x86_64 0:2.4.9-7.fc45 fedora 360.3 KiB gnutls x86_64 0:3.8.13-1.fc45 fedora 3.8 MiB go-srpm-macros noarch 0:3.8.0-2.fc44 fedora 61.9 KiB gpgverify noarch 0:2.2-4.fc44 fedora 8.7 KiB ima-evm-utils-libs x86_64 0:1.6.2-10.fc45 fedora 60.6 KiB jansson x86_64 0:2.14-4.fc44 fedora 88.9 KiB java-srpm-macros noarch 0:1-8.fc44 fedora 870.0 B json-c x86_64 0:0.18-8.fc44 fedora 82.6 KiB kernel-srpm-macros noarch 0:1.0-29.fc45 fedora 1.9 KiB keyutils-libs x86_64 0:1.6.3-7.fc44 fedora 54.2 KiB krb5-libs x86_64 0:1.22.2-7.fc45 fedora 2.4 MiB libacl x86_64 0:2.3.2-6.fc44 fedora 35.8 KiB libarchive x86_64 0:3.8.7-1.fc45 fedora 1.0 MiB libassuan x86_64 0:2.5.7-5.fc44 fedora 163.8 KiB libattr x86_64 0:2.5.2-8.fc44 fedora 24.3 KiB libblkid x86_64 0:2.42-7.fc45 fedora 282.2 KiB libbrotli x86_64 0:1.2.0-3.fc44 fedora 865.0 KiB libcap x86_64 0:2.78-1.fc45 fedora 212.1 KiB libcap-ng x86_64 0:0.9.3-1.fc45 fedora 68.8 KiB libcbor x86_64 0:0.14.0-2.fc45 fedora 83.5 KiB libcom_err x86_64 0:1.47.4-1.fc45 fedora 63.0 KiB libcurl x86_64 0:8.20.0~rc3-1.fc45 fedora 1.0 MiB libeconf x86_64 0:0.7.9-3.fc44 fedora 64.8 KiB libevent x86_64 0:2.1.12-17.fc44 fedora 978.7 KiB libfdisk x86_64 0:2.42-7.fc45 fedora 388.2 KiB libffi x86_64 0:3.5.2-2.fc44 fedora 87.7 KiB libfido2 x86_64 0:1.17.0-2.fc45 fedora 260.5 KiB libfsverity x86_64 0:1.7-1.fc45 fedora 28.4 KiB libgcc x86_64 0:16.1.1-1.fc45 fedora 270.6 KiB libgcrypt x86_64 0:1.12.2-1.fc45 fedora 1.7 MiB libgomp x86_64 0:16.1.1-1.fc45 fedora 581.4 KiB libgpg-error x86_64 0:1.61-1.fc45 fedora 949.8 KiB libidn2 x86_64 0:2.3.8-3.fc44 fedora 556.4 KiB libksba x86_64 0:1.7.0-1.fc45 fedora 425.7 KiB liblastlog2 x86_64 0:2.42-7.fc45 fedora 41.6 KiB libmount x86_64 0:2.42-7.fc45 fedora 400.8 KiB libnghttp2 x86_64 0:1.69.0-1.fc45 fedora 166.1 KiB libnghttp3 x86_64 0:1.15.0-1.fc44 fedora 159.2 KiB libpkgconf x86_64 0:2.5.1-1.fc45 fedora 90.1 KiB libpsl x86_64 0:0.21.5-7.fc44 fedora 76.3 KiB libselinux x86_64 0:3.10-1.fc44 fedora 201.0 KiB libselinux-utils x86_64 0:3.10-1.fc44 fedora 305.7 KiB libsemanage x86_64 0:3.10-1.fc44 fedora 312.3 KiB libsepol x86_64 0:3.10-1.fc44 fedora 870.0 KiB libsmartcols x86_64 0:2.42-7.fc45 fedora 192.4 KiB libssh x86_64 0:0.12.0-1.fc45 fedora 719.1 KiB libssh-config noarch 0:0.12.0-1.fc45 fedora 277.0 B libstdc++ x86_64 0:16.1.1-1.fc45 fedora 3.1 MiB libtasn1 x86_64 0:4.21.0-1.fc45 fedora 180.6 KiB libtool-ltdl x86_64 0:2.5.4-10.fc44 fedora 70.0 KiB libunistring x86_64 0:1.1-11.fc44 fedora 1.7 MiB libusb1 x86_64 0:1.0.29-5.fc44 fedora 175.2 KiB libuuid x86_64 0:2.42-7.fc45 fedora 37.2 KiB libverto x86_64 0:0.3.2-12.fc44 fedora 25.3 KiB libxcrypt x86_64 0:4.5.2-3.fc44 fedora 293.2 KiB libxml2 x86_64 0:2.12.10-6.fc44 fedora 1.8 MiB libzstd x86_64 0:1.5.7-5.fc44 fedora 956.1 KiB linkdupes x86_64 0:0.7.3-2.fc45 fedora 780.9 KiB lua-libs x86_64 0:5.5.0-1.fc45 fedora 297.9 KiB lua-srpm-macros noarch 0:1-17.fc44 fedora 1.3 KiB lz4-libs x86_64 0:1.10.0-4.fc44 fedora 157.3 KiB mpfr x86_64 0:4.2.2-3.fc44 fedora 849.1 KiB ncurses-base noarch 0:6.6-2.fc45 fedora 329.7 KiB ncurses-libs x86_64 0:6.6-2.fc45 fedora 968.8 KiB nettle x86_64 0:3.10.1-3.fc44 fedora 794.3 KiB ngtcp2 x86_64 0:1.22.1-1.fc45 fedora 338.2 KiB ngtcp2-crypto-ossl x86_64 0:1.22.1-1.fc45 fedora 51.6 KiB npth x86_64 0:1.8-4.fc44 fedora 49.5 KiB ocaml-srpm-macros noarch 0:11-3.fc44 fedora 1.9 KiB openblas-srpm-macros noarch 0:2-21.fc44 fedora 112.0 B openldap x86_64 0:2.6.13-1.fc45 fedora 669.9 KiB openssl-libs x86_64 1:3.5.6-1.fc45 fedora 9.2 MiB p11-kit x86_64 0:0.26.2-1.fc45 fedora 2.6 MiB p11-kit-trust x86_64 0:0.26.2-1.fc45 fedora 478.3 KiB package-notes-srpm-macros noarch 0:0.17-3.fc45 fedora 1.6 KiB pam-libs x86_64 0:1.7.2-1.fc44 fedora 130.5 KiB pcre2 x86_64 0:10.47-1.fc44.1 fedora 718.6 KiB pcre2-syntax noarch 0:10.47-1.fc44.1 fedora 281.9 KiB perl-srpm-macros noarch 0:1-61.fc44 fedora 861.0 B pkgconf x86_64 0:2.5.1-1.fc45 fedora 92.7 KiB pkgconf-m4 noarch 0:2.5.1-1.fc45 fedora 14.3 KiB pkgconf-pkg-config x86_64 0:2.5.1-1.fc45 fedora 989.0 B policycoreutils x86_64 0:3.10-3.fc45 fedora 884.5 KiB popt x86_64 0:1.19-10.fc44 fedora 132.6 KiB publicsuffix-list-dafsa noarch 0:20260116-1.fc44 fedora 70.4 KiB pyproject-srpm-macros noarch 0:1.22.1-1.fc45 fedora 3.2 KiB python-srpm-macros noarch 0:3.14-12.fc45 fedora 51.6 KiB qt5-srpm-macros noarch 0:5.15.18-2.fc44 fedora 500.0 B qt6-srpm-macros noarch 0:6.11.0-1.fc45 fedora 472.0 B readline x86_64 0:8.3-4.fc44 fedora 519.5 KiB redhat-systemd-presets noarch 0:102-1.fc45 fedora 1.0 KiB redhat-systemd-presets-common noarch 0:102-1.fc45 fedora 16.6 KiB rpm x86_64 0:6.0.1-5.fc45 fedora 3.1 MiB rpm-build-libs x86_64 0:6.0.1-5.fc45 fedora 276.3 KiB rpm-libs x86_64 0:6.0.1-5.fc45 fedora 961.2 KiB rpm-plugin-selinux x86_64 0:6.0.1-5.fc45 fedora 11.9 KiB rpm-sequoia x86_64 0:1.10.2-1.fc45 fedora 2.4 MiB rpm-sign-libs x86_64 0:6.0.1-5.fc45 fedora 39.6 KiB rust-srpm-macros noarch 0:28.4-3.fc44 fedora 5.5 KiB selinux-policy noarch 0:45.2-1.fc45 fedora 32.1 KiB selinux-policy-targeted noarch 0:45.2-1.fc45 fedora 18.6 MiB setup noarch 0:2.15.0-29.fc45 fedora 724.9 KiB sqlite-libs x86_64 0:3.53.1-1.fc45 fedora 1.6 MiB systemd-libs x86_64 0:260.1-2.fc45 fedora 2.5 MiB systemd-standalone-sysusers x86_64 0:260.1-2.fc45 fedora 841.2 KiB tpm2-tss x86_64 0:4.1.3-9.fc44 fedora 1.6 MiB tree-sitter-srpm-macros noarch 0:0.4.3-1.fc45 fedora 8.2 KiB util-linux-core x86_64 0:2.42-7.fc45 fedora 1.5 MiB xxhash-libs x86_64 0:0.8.3-4.fc44 fedora 94.0 KiB xz-libs x86_64 1:5.8.3-1.fc45 fedora 217.7 KiB zig-srpm-macros noarch 0:1-8.fc44 fedora 1.3 KiB zip x86_64 0:3.0-45.fc44 fedora 698.0 KiB zlib-ng-compat x86_64 0:2.3.3-5.fc45 fedora 165.6 KiB zstd x86_64 0:1.5.7-5.fc44 fedora 502.4 KiB Installing groups: Buildsystem building group Transaction Summary: Installing: 186 packages Total size of inbound packages is 70 MiB. Need to download 70 MiB. After this operation, 227 MiB extra will be used (install 227 MiB, remove 0 B). [ 1/186] bzip2-0:1.0.8-23.fc44.x86_64 100% | 12.7 MiB/s | 52.1 KiB | 00m00s [ 2/186] bash-0:5.3.9-3.fc44.x86_64 100% | 210.4 MiB/s | 1.9 MiB | 00m00s [ 3/186] cpio-0:2.15-9.fc44.x86_64 100% | 57.3 MiB/s | 293.4 KiB | 00m00s [ 4/186] diffutils-0:3.12-5.fc44.x86_6 100% | 193.0 MiB/s | 395.3 KiB | 00m00s [ 5/186] fedora-release-common-0:45-0. 100% | 9.1 MiB/s | 18.6 KiB | 00m00s [ 6/186] coreutils-0:9.11-1.fc45.x86_6 100% | 99.6 MiB/s | 1.3 MiB | 00m00s [ 7/186] findutils-1:4.10.0-7.fc44.x86 100% | 179.9 MiB/s | 552.5 KiB | 00m00s [ 8/186] glibc-minimal-langpack-0:2.43 100% | 31.8 MiB/s | 97.8 KiB | 00m00s [ 9/186] grep-0:3.12-3.fc44.x86_64 100% | 98.2 MiB/s | 301.6 KiB | 00m00s [ 10/186] gzip-0:1.14-2.fc44.x86_64 100% | 58.3 MiB/s | 179.1 KiB | 00m00s [ 11/186] info-0:7.3-1.fc45.x86_64 100% | 46.6 MiB/s | 190.8 KiB | 00m00s [ 12/186] patch-0:2.8-4.fc44.x86_64 100% | 37.5 MiB/s | 115.2 KiB | 00m00s [ 13/186] redhat-rpm-config-0:344-1.fc4 100% | 38.3 MiB/s | 78.4 KiB | 00m00s [ 14/186] rpm-build-0:6.0.1-5.fc45.x86_ 100% | 68.3 MiB/s | 139.9 KiB | 00m00s [ 15/186] sed-0:4.10-1.fc45.x86_64 100% | 175.4 MiB/s | 359.1 KiB | 00m00s [ 16/186] shadow-utils-2:4.19.3-2.fc45. 100% | 221.3 MiB/s | 1.3 MiB | 00m00s [ 17/186] tar-2:1.35-8.fc44.x86_64 100% | 141.3 MiB/s | 868.2 KiB | 00m00s [ 18/186] unzip-0:6.0-69.fc44.x86_64 100% | 39.0 MiB/s | 199.6 KiB | 00m00s [ 19/186] which-0:2.23-4.fc44.x86_64 100% | 20.6 MiB/s | 42.2 KiB | 00m00s [ 20/186] xz-1:5.8.3-1.fc45.x86_64 100% | 213.3 MiB/s | 655.2 KiB | 00m00s [ 21/186] gawk-0:5.4.0-2.fc45.x86_64 100% | 233.6 MiB/s | 1.2 MiB | 00m00s [ 22/186] util-linux-0:2.42-7.fc45.x86_ 100% | 158.5 MiB/s | 1.3 MiB | 00m00s [ 23/186] filesystem-0:3.18-56.fc45.x86 100% | 183.3 MiB/s | 1.8 MiB | 00m00s [ 24/186] glibc-0:2.43.9000-14.fc45.x86 100% | 200.1 MiB/s | 2.4 MiB | 00m00s [ 25/186] ncurses-libs-0:6.6-2.fc45.x86 100% | 33.5 MiB/s | 343.2 KiB | 00m00s [ 26/186] bzip2-libs-0:1.0.8-23.fc44.x8 100% | 8.6 MiB/s | 43.8 KiB | 00m00s [ 27/186] coreutils-common-0:9.11-1.fc4 100% | 361.2 MiB/s | 2.2 MiB | 00m00s [ 28/186] gmp-1:6.3.0-5.fc44.x86_64 100% | 52.5 MiB/s | 322.5 KiB | 00m00s [ 29/186] libacl-0:2.3.2-6.fc44.x86_64 100% | 4.0 MiB/s | 24.8 KiB | 00m00s [ 30/186] libattr-0:2.5.2-8.fc44.x86_64 100% | 17.5 MiB/s | 17.9 KiB | 00m00s [ 31/186] libcap-0:2.78-1.fc45.x86_64 100% | 43.7 MiB/s | 89.4 KiB | 00m00s [ 32/186] libselinux-0:3.10-1.fc44.x86_ 100% | 49.8 MiB/s | 102.0 KiB | 00m00s [ 33/186] openssl-libs-1:3.5.6-1.fc45.x 100% | 305.2 MiB/s | 2.7 MiB | 00m00s [ 34/186] fedora-repos-0:45-0.1.noarch 100% | 1.1 MiB/s | 9.2 KiB | 00m00s [ 35/186] systemd-libs-0:260.1-2.fc45.x 100% | 96.2 MiB/s | 886.2 KiB | 00m00s [ 36/186] redhat-systemd-presets-0:102- 100% | 4.1 MiB/s | 8.3 KiB | 00m00s [ 37/186] glibc-common-0:2.43.9000-14.f 100% | 190.0 MiB/s | 389.1 KiB | 00m00s [ 38/186] pcre2-0:10.47-1.fc44.1.x86_64 100% | 135.6 MiB/s | 277.7 KiB | 00m00s [ 39/186] ed-0:1.22.5-2.fc45.x86_64 100% | 41.7 MiB/s | 85.4 KiB | 00m00s [ 40/186] R-srpm-macros-0:1.3.7-2.fc45. 100% | 10.8 MiB/s | 11.0 KiB | 00m00s [ 41/186] ansible-srpm-macros-0:1-20.1. 100% | 19.6 MiB/s | 20.1 KiB | 00m00s [ 42/186] build-reproducibility-srpm-ma 100% | 13.0 MiB/s | 13.3 KiB | 00m00s [ 43/186] cmake-srpm-macros-0:4.3.0-1.f 100% | 10.2 MiB/s | 10.4 KiB | 00m00s [ 44/186] dwz-0:0.16-3.fc44.x86_64 100% | 135.6 MiB/s | 138.9 KiB | 00m00s [ 45/186] erlang-srpm-macros-0:0.3.11-1 100% | 9.7 MiB/s | 10.0 KiB | 00m00s [ 46/186] efi-srpm-macros-0:6-6.fc44.no 100% | 11.0 MiB/s | 22.6 KiB | 00m00s [ 47/186] file-0:5.47-2.fc45.x86_64 100% | 48.2 MiB/s | 49.4 KiB | 00m00s [ 48/186] filesystem-srpm-macros-0:3.18 100% | 26.2 MiB/s | 26.8 KiB | 00m00s [ 49/186] fonts-srpm-macros-1:5.0.0-3.f 100% | 26.6 MiB/s | 27.2 KiB | 00m00s [ 50/186] forge-srpm-macros-0:0.4.0-4.f 100% | 19.5 MiB/s | 20.0 KiB | 00m00s [ 51/186] fpc-srpm-macros-0:1.3-16.fc44 100% | 7.8 MiB/s | 7.9 KiB | 00m00s [ 52/186] gap-srpm-macros-0:2-2.fc44.no 100% | 8.9 MiB/s | 9.1 KiB | 00m00s [ 53/186] ghc-srpm-macros-0:1.10-1.fc44 100% | 8.6 MiB/s | 8.8 KiB | 00m00s [ 54/186] gnat-srpm-macros-0:7-2.fc44.n 100% | 8.5 MiB/s | 8.7 KiB | 00m00s [ 55/186] go-srpm-macros-0:3.8.0-2.fc44 100% | 27.6 MiB/s | 28.2 KiB | 00m00s [ 56/186] java-srpm-macros-0:1-8.fc44.n 100% | 7.9 MiB/s | 8.1 KiB | 00m00s [ 57/186] kernel-srpm-macros-0:1.0-29.f 100% | 4.0 MiB/s | 8.2 KiB | 00m00s [ 58/186] lua-srpm-macros-0:1-17.fc44.n 100% | 8.7 MiB/s | 8.9 KiB | 00m00s [ 59/186] ocaml-srpm-macros-0:11-3.fc44 100% | 4.5 MiB/s | 9.3 KiB | 00m00s [ 60/186] openblas-srpm-macros-0:2-21.f 100% | 7.6 MiB/s | 7.8 KiB | 00m00s [ 61/186] package-notes-srpm-macros-0:0 100% | 9.5 MiB/s | 9.7 KiB | 00m00s [ 62/186] perl-srpm-macros-0:1-61.fc44. 100% | 8.2 MiB/s | 8.4 KiB | 00m00s [ 63/186] pyproject-srpm-macros-0:1.22. 100% | 15.0 MiB/s | 15.3 KiB | 00m00s [ 64/186] python-srpm-macros-0:3.14-12. 100% | 23.6 MiB/s | 24.1 KiB | 00m00s [ 65/186] qt5-srpm-macros-0:5.15.18-2.f 100% | 8.5 MiB/s | 8.7 KiB | 00m00s [ 66/186] qt6-srpm-macros-0:6.11.0-1.fc 100% | 3.0 MiB/s | 9.2 KiB | 00m00s [ 67/186] rpm-0:6.0.1-5.fc45.x86_64 100% | 141.2 MiB/s | 578.3 KiB | 00m00s [ 68/186] rust-srpm-macros-0:28.4-3.fc4 100% | 2.7 MiB/s | 11.1 KiB | 00m00s [ 69/186] tree-sitter-srpm-macros-0:0.4 100% | 13.2 MiB/s | 13.6 KiB | 00m00s [ 70/186] zig-srpm-macros-0:1-8.fc44.no 100% | 8.6 MiB/s | 8.8 KiB | 00m00s [ 71/186] zip-0:3.0-45.fc44.x86_64 100% | 129.1 MiB/s | 264.4 KiB | 00m00s [ 72/186] debugedit-0:5.3-2.fc45.x86_64 100% | 43.2 MiB/s | 88.5 KiB | 00m00s [ 73/186] elfutils-0:0.195-1.fc45.x86_6 100% | 287.6 MiB/s | 588.9 KiB | 00m00s [ 74/186] elfutils-libelf-0:0.195-1.fc4 100% | 102.6 MiB/s | 210.2 KiB | 00m00s [ 75/186] libarchive-0:3.8.7-1.fc45.x86 100% | 144.2 MiB/s | 442.9 KiB | 00m00s [ 76/186] libgcc-0:16.1.1-1.fc45.x86_64 100% | 63.6 MiB/s | 130.2 KiB | 00m00s [ 77/186] libstdc++-0:16.1.1-1.fc45.x86 100% | 249.1 MiB/s | 1.0 MiB | 00m00s [ 78/186] popt-0:1.19-10.fc44.x86_64 100% | 16.3 MiB/s | 66.9 KiB | 00m00s [ 79/186] readline-0:8.3-4.fc44.x86_64 100% | 74.8 MiB/s | 229.8 KiB | 00m00s [ 80/186] rpm-build-libs-0:6.0.1-5.fc45 100% | 129.0 MiB/s | 132.1 KiB | 00m00s [ 81/186] rpm-libs-0:6.0.1-5.fc45.x86_6 100% | 202.9 MiB/s | 415.5 KiB | 00m00s [ 82/186] zstd-0:1.5.7-5.fc44.x86_64 100% | 94.0 MiB/s | 192.5 KiB | 00m00s [ 83/186] audit-libs-0:4.1.4-1.fc45.x86 100% | 69.2 MiB/s | 141.7 KiB | 00m00s [ 84/186] libeconf-0:0.7.9-3.fc44.x86_6 100% | 35.4 MiB/s | 36.2 KiB | 00m00s [ 85/186] libsemanage-0:3.10-1.fc44.x86 100% | 124.3 MiB/s | 127.3 KiB | 00m00s [ 86/186] libxcrypt-0:4.5.2-3.fc44.x86_ 100% | 128.1 MiB/s | 131.2 KiB | 00m00s [ 87/186] pam-libs-0:1.7.2-1.fc44.x86_6 100% | 57.7 MiB/s | 59.1 KiB | 00m00s [ 88/186] setup-0:2.15.0-29.fc45.noarch 100% | 76.8 MiB/s | 157.3 KiB | 00m00s [ 89/186] xz-libs-1:5.8.3-1.fc45.x86_64 100% | 56.8 MiB/s | 116.4 KiB | 00m00s [ 90/186] mpfr-0:4.2.2-3.fc44.x86_64 100% | 116.5 MiB/s | 357.8 KiB | 00m00s [ 91/186] libblkid-0:2.42-7.fc45.x86_64 100% | 43.3 MiB/s | 133.0 KiB | 00m00s [ 92/186] libcap-ng-0:0.9.3-1.fc45.x86_ 100% | 16.8 MiB/s | 34.3 KiB | 00m00s [ 93/186] libfdisk-0:2.42-7.fc45.x86_64 100% | 164.8 MiB/s | 168.7 KiB | 00m00s [ 94/186] liblastlog2-0:2.42-7.fc45.x86 100% | 23.2 MiB/s | 23.8 KiB | 00m00s [ 95/186] libmount-0:2.42-7.fc45.x86_64 100% | 171.5 MiB/s | 175.6 KiB | 00m00s [ 96/186] libsmartcols-0:2.42-7.fc45.x8 100% | 85.8 MiB/s | 87.8 KiB | 00m00s [ 97/186] libuuid-0:2.42-7.fc45.x86_64 100% | 26.1 MiB/s | 26.7 KiB | 00m00s [ 98/186] util-linux-core-0:2.42-7.fc45 100% | 283.6 MiB/s | 580.9 KiB | 00m00s [ 99/186] zlib-ng-compat-0:2.3.3-5.fc45 100% | 44.5 MiB/s | 91.2 KiB | 00m00s [100/186] glibc-gconv-extra-0:2.43.9000 100% | 238.9 MiB/s | 1.7 MiB | 00m00s [101/186] ncurses-base-0:6.6-2.fc45.noa 100% | 17.2 MiB/s | 88.1 KiB | 00m00s [102/186] gnulib-l10n-0:20241231-2.fc44 100% | 29.4 MiB/s | 150.3 KiB | 00m00s [103/186] libsepol-0:3.10-1.fc44.x86_64 100% | 179.5 MiB/s | 367.6 KiB | 00m00s [104/186] ca-certificates-0:2025.2.80_v 100% | 236.5 MiB/s | 968.8 KiB | 00m00s [105/186] crypto-policies-0:20251128-3. 100% | 24.0 MiB/s | 98.3 KiB | 00m00s [106/186] fedora-gpg-keys-0:45-0.1.noar 100% | 46.0 MiB/s | 141.3 KiB | 00m00s [107/186] fedora-repos-rawhide-0:45-0.1 100% | 8.6 MiB/s | 8.8 KiB | 00m00s [108/186] redhat-systemd-presets-common 100% | 12.6 MiB/s | 12.9 KiB | 00m00s [109/186] pcre2-syntax-0:10.47-1.fc44.1 100% | 80.4 MiB/s | 164.7 KiB | 00m00s [110/186] add-determinism-0:0.7.3-2.fc4 100% | 208.6 MiB/s | 854.6 KiB | 00m00s [111/186] linkdupes-0:0.7.3-2.fc45.x86_ 100% | 84.2 MiB/s | 344.7 KiB | 00m00s [112/186] file-libs-0:5.47-2.fc45.x86_6 100% | 170.3 MiB/s | 872.0 KiB | 00m00s [113/186] curl-0:8.20.0~rc3-1.fc45.x86_ 100% | 78.7 MiB/s | 241.8 KiB | 00m00s [114/186] elfutils-libs-0:0.195-1.fc45. 100% | 92.2 MiB/s | 283.2 KiB | 00m00s [115/186] elfutils-debuginfod-client-0: 100% | 45.4 MiB/s | 46.5 KiB | 00m00s [116/186] libzstd-0:1.5.7-5.fc44.x86_64 100% | 177.8 MiB/s | 364.2 KiB | 00m00s [117/186] libxml2-0:2.12.10-6.fc44.x86_ 100% | 235.9 MiB/s | 724.6 KiB | 00m00s [118/186] lz4-libs-0:1.10.0-4.fc44.x86_ 100% | 25.3 MiB/s | 77.7 KiB | 00m00s [119/186] libgomp-0:16.1.1-1.fc45.x86_6 100% | 127.6 MiB/s | 391.9 KiB | 00m00s [120/186] lua-libs-0:5.5.0-1.fc45.x86_6 100% | 140.3 MiB/s | 143.6 KiB | 00m00s [121/186] rpm-sign-libs-0:6.0.1-5.fc45. 100% | 27.3 MiB/s | 27.9 KiB | 00m00s [122/186] rpm-sequoia-0:1.10.2-1.fc45.x 100% | 296.7 MiB/s | 911.4 KiB | 00m00s [123/186] sqlite-libs-0:3.53.1-1.fc45.x 100% | 197.3 MiB/s | 808.2 KiB | 00m00s [124/186] json-c-0:0.18-8.fc44.x86_64 100% | 9.0 MiB/s | 46.3 KiB | 00m00s [125/186] gnupg2-0:2.4.9-7.fc45.x86_64 100% | 275.7 MiB/s | 1.7 MiB | 00m00s [126/186] ima-evm-utils-libs-0:1.6.2-10 100% | 5.9 MiB/s | 30.4 KiB | 00m00s [127/186] libfsverity-0:1.7-1.fc45.x86_ 100% | 4.6 MiB/s | 19.0 KiB | 00m00s [128/186] gpgverify-0:2.2-4.fc44.noarch 100% | 5.5 MiB/s | 11.2 KiB | 00m00s [129/186] gnupg2-dirmngr-0:2.4.9-7.fc45 100% | 91.8 MiB/s | 282.1 KiB | 00m00s [130/186] gnupg2-gpg-agent-0:2.4.9-7.fc 100% | 68.9 MiB/s | 282.1 KiB | 00m00s [131/186] gnupg2-gpgconf-0:2.4.9-7.fc45 100% | 57.3 MiB/s | 117.4 KiB | 00m00s [132/186] gnupg2-keyboxd-0:2.4.9-7.fc45 100% | 47.5 MiB/s | 97.3 KiB | 00m00s [133/186] gnupg2-verify-0:2.4.9-7.fc45. 100% | 172.8 MiB/s | 177.0 KiB | 00m00s [134/186] libassuan-0:2.5.7-5.fc44.x86_ 100% | 33.6 MiB/s | 68.9 KiB | 00m00s [135/186] libgcrypt-0:1.12.2-1.fc45.x86 100% | 153.7 MiB/s | 629.8 KiB | 00m00s [136/186] libgpg-error-0:1.61-1.fc45.x8 100% | 82.5 MiB/s | 253.4 KiB | 00m00s [137/186] npth-0:1.8-4.fc44.x86_64 100% | 8.4 MiB/s | 25.8 KiB | 00m00s [138/186] tpm2-tss-0:4.1.3-9.fc44.x86_6 100% | 215.3 MiB/s | 440.9 KiB | 00m00s [139/186] gnutls-0:3.8.13-1.fc45.x86_64 100% | 237.8 MiB/s | 1.4 MiB | 00m00s [140/186] libksba-0:1.7.0-1.fc45.x86_64 100% | 27.8 MiB/s | 170.8 KiB | 00m00s [141/186] openldap-0:2.6.13-1.fc45.x86_ 100% | 37.9 MiB/s | 272.0 KiB | 00m00s [142/186] libusb1-0:1.0.29-5.fc44.x86_6 100% | 26.9 MiB/s | 82.8 KiB | 00m00s [143/186] libidn2-0:2.3.8-3.fc44.x86_64 100% | 57.1 MiB/s | 175.5 KiB | 00m00s [144/186] libtasn1-0:4.21.0-1.fc45.x86_ 100% | 74.2 MiB/s | 76.0 KiB | 00m00s [145/186] libunistring-0:1.1-11.fc44.x8 100% | 267.5 MiB/s | 547.8 KiB | 00m00s [146/186] nettle-0:3.10.1-3.fc44.x86_64 100% | 139.3 MiB/s | 428.0 KiB | 00m00s [147/186] p11-kit-0:0.26.2-1.fc45.x86_6 100% | 135.7 MiB/s | 555.9 KiB | 00m00s [148/186] cyrus-sasl-lib-0:2.1.28-35.fc 100% | 130.3 MiB/s | 800.7 KiB | 00m00s [149/186] libevent-0:2.1.12-17.fc44.x86 100% | 56.1 MiB/s | 287.4 KiB | 00m00s [150/186] libtool-ltdl-0:2.5.4-10.fc44. 100% | 9.0 MiB/s | 37.0 KiB | 00m00s [151/186] libffi-0:3.5.2-2.fc44.x86_64 100% | 41.4 MiB/s | 42.4 KiB | 00m00s [152/186] gdbm-libs-1:1.23-11.fc44.x86_ 100% | 57.4 MiB/s | 58.8 KiB | 00m00s [153/186] alternatives-0:1.33-5.fc44.x8 100% | 4.4 MiB/s | 40.8 KiB | 00m00s [154/186] jansson-0:2.14-4.fc44.x86_64 100% | 4.2 MiB/s | 47.1 KiB | 00m00s [155/186] binutils-0:2.46.50-7.fc45.x86 100% | 309.0 MiB/s | 6.2 MiB | 00m00s [156/186] pkgconf-pkg-config-0:2.5.1-1. 100% | 946.8 KiB/s | 9.5 KiB | 00m00s [157/186] pkgconf-0:2.5.1-1.fc45.x86_64 100% | 5.3 MiB/s | 48.7 KiB | 00m00s [158/186] pkgconf-m4-0:2.5.1-1.fc45.noa 100% | 6.7 MiB/s | 13.8 KiB | 00m00s [159/186] libpkgconf-0:2.5.1-1.fc45.x86 100% | 20.8 MiB/s | 42.7 KiB | 00m00s [160/186] p11-kit-trust-0:0.26.2-1.fc45 100% | 47.6 MiB/s | 146.4 KiB | 00m00s [161/186] fedora-release-0:45-0.7.noarc 100% | 12.4 MiB/s | 12.7 KiB | 00m00s [162/186] systemd-standalone-sysusers-0 100% | 179.4 MiB/s | 367.4 KiB | 00m00s [163/186] xxhash-libs-0:0.8.3-4.fc44.x8 100% | 5.0 MiB/s | 41.2 KiB | 00m00s [164/186] gdb-minimal-0:17.1-5.fc45.x86 100% | 278.5 MiB/s | 4.7 MiB | 00m00s [165/186] fedora-release-identity-basic 100% | 895.0 KiB/s | 13.4 KiB | 00m00s [166/186] libcurl-0:8.20.0~rc3-1.fc45.x 100% | 50.7 MiB/s | 466.9 KiB | 00m00s [167/186] krb5-libs-0:1.22.2-7.fc45.x86 100% | 261.5 MiB/s | 803.3 KiB | 00m00s [168/186] libbrotli-0:1.2.0-3.fc44.x86_ 100% | 84.9 MiB/s | 347.8 KiB | 00m00s [169/186] libnghttp2-0:1.69.0-1.fc45.x8 100% | 18.8 MiB/s | 77.2 KiB | 00m00s [170/186] libnghttp3-0:1.15.0-1.fc44.x8 100% | 36.1 MiB/s | 73.9 KiB | 00m00s [171/186] libpsl-0:0.21.5-7.fc44.x86_64 100% | 31.9 MiB/s | 65.3 KiB | 00m00s [172/186] libssh-0:0.12.0-1.fc45.x86_64 100% | 143.4 MiB/s | 293.7 KiB | 00m00s [173/186] ngtcp2-0:1.22.1-1.fc45.x86_64 100% | 76.8 MiB/s | 157.4 KiB | 00m00s [174/186] ngtcp2-crypto-ossl-0:1.22.1-1 100% | 13.5 MiB/s | 27.7 KiB | 00m00s [175/186] keyutils-libs-0:1.6.3-7.fc44. 100% | 30.8 MiB/s | 31.5 KiB | 00m00s [176/186] libcom_err-0:1.47.4-1.fc45.x8 100% | 26.0 MiB/s | 26.6 KiB | 00m00s [177/186] libverto-0:0.3.2-12.fc44.x86_ 100% | 20.6 MiB/s | 21.1 KiB | 00m00s [178/186] publicsuffix-list-dafsa-0:202 100% | 58.9 MiB/s | 60.3 KiB | 00m00s [179/186] libfido2-0:1.17.0-2.fc45.x86_ 100% | 104.4 MiB/s | 106.9 KiB | 00m00s [180/186] libssh-config-0:0.12.0-1.fc45 100% | 4.6 MiB/s | 9.4 KiB | 00m00s [181/186] libcbor-0:0.14.0-2.fc45.x86_6 100% | 11.9 MiB/s | 36.6 KiB | 00m00s [182/186] policycoreutils-0:3.10-3.fc45 100% | 31.9 MiB/s | 261.7 KiB | 00m00s [183/186] selinux-policy-0:45.2-1.fc45. 100% | 7.2 MiB/s | 73.8 KiB | 00m00s [184/186] libselinux-utils-0:3.10-1.fc4 100% | 14.6 MiB/s | 119.6 KiB | 00m00s [185/186] selinux-policy-targeted-0:45. 100% | 272.9 MiB/s | 6.8 MiB | 00m00s [186/186] rpm-plugin-selinux-0:6.0.1-5. 100% | 1.6 MiB/s | 19.1 KiB | 00m00s -------------------------------------------------------------------------------- [186/186] Total 100% | 248.5 MiB/s | 70.3 MiB | 00m00s Running transaction Importing OpenPGP key 0xF577861E: UserID : "Fedora (45) " Fingerprint: 4F50A6114CD5C6976A7F1179655A4B02F577861E From : file:///usr/share/distribution-gpg-keys/fedora/RPM-GPG-KEY-fedora-45-primary The key was successfully imported. Importing OpenPGP key 0xF577861E: UserID : "Fedora (45) " Fingerprint: 4F50A6114CD5C6976A7F1179655A4B02F577861E From : file:///usr/share/distribution-gpg-keys/fedora/RPM-GPG-KEY-fedora-45-primary The key was successfully imported. Importing OpenPGP key 0x6D9F90A6: UserID : "Fedora (44) " Fingerprint: 36F612DCF27F7D1A48A835E4DBFCF71C6D9F90A6 From : file:///usr/share/distribution-gpg-keys/fedora/RPM-GPG-KEY-fedora-44-primary The key was successfully imported. Importing OpenPGP key 0x91211FCE: UserID : "Fedora (46) " Fingerprint: D924B10D3E810DABDD8B56B596E7E91491211FCE From : file:///usr/share/distribution-gpg-keys/fedora/RPM-GPG-KEY-fedora-46-primary The key was successfully imported. [ 1/188] Verify package files 100% | 678.0 B/s | 186.0 B | 00m00s [ 2/188] Prepare transaction 100% | 3.2 KiB/s | 186.0 B | 00m00s [ 3/188] Installing libgcc-0:16.1.1-1. 100% | 266.0 MiB/s | 272.3 KiB | 00m00s [ 4/188] Installing redhat-systemd-pre 100% | 0.0 B/s | 1.5 KiB | 00m00s [ 5/188] Installing redhat-systemd-pre 100% | 0.0 B/s | 17.8 KiB | 00m00s [ 6/188] Installing libssh-config-0:0. 100% | 0.0 B/s | 816.0 B | 00m00s [ 7/188] Installing publicsuffix-list- 100% | 0.0 B/s | 71.1 KiB | 00m00s [ 8/188] Installing fedora-release-ide 100% | 0.0 B/s | 920.0 B | 00m00s [ 9/188] Installing fedora-gpg-keys-0: 100% | 44.5 MiB/s | 182.1 KiB | 00m00s [ 10/188] Installing fedora-repos-rawhi 100% | 0.0 B/s | 2.4 KiB | 00m00s [ 11/188] Installing fedora-repos-0:45- 100% | 0.0 B/s | 5.7 KiB | 00m00s [ 12/188] Installing fedora-release-com 100% | 7.3 MiB/s | 7.4 KiB | 00m00s [ 13/188] Installing fedora-release-0:4 100% | 15.1 KiB/s | 124.0 B | 00m00s >>> Running sysusers scriptlet: setup-0:2.15.0-29.fc45.noarch >>> Finished sysusers scriptlet: setup-0:2.15.0-29.fc45.noarch >>> Scriptlet output: >>> Creating group 'adm' with GID 4. >>> Creating group 'audio' with GID 63. >>> Creating group 'cdrom' with GID 11. >>> Creating group 'clock' with GID 103. >>> Creating group 'dialout' with GID 18. >>> Creating group 'disk' with GID 6. >>> Creating group 'floppy' with GID 19. >>> Creating group 'ftp' with GID 50. >>> Creating group 'games' with GID 20. >>> Creating group 'input' with GID 104. >>> Creating group 'kmem' with GID 9. >>> Creating group 'kvm' with GID 36. >>> Creating group 'lock' with GID 54. >>> Creating group 'lp' with GID 7. >>> Creating group 'mail' with GID 12. >>> Creating group 'man' with GID 15. >>> Creating group 'mem' with GID 8. >>> Creating group 'nobody' with GID 65534. >>> Creating group 'render' with GID 105. >>> Creating group 'root' with GID 0. >>> Creating group 'sgx' with GID 106. >>> Creating group 'sys' with GID 3. >>> Creating group 'tape' with GID 33. >>> Creating group 'tty' with GID 5. >>> Creating group 'users' with GID 100. >>> Creating group 'utmp' with GID 22. >>> Creating group 'video' with GID 39. >>> Creating group 'wheel' with GID 10. >>> Creating user 'adm' (adm) with UID 3 and GID 4. >>> Creating group 'bin' with GID 1. >>> Creating user 'bin' (bin) with UID 1 and GID 1. >>> Creating group 'daemon' with GID 2. >>> Creating user 'daemon' (daemon) with UID 2 and GID 2. >>> Creating user 'ftp' (FTP User) with UID 14 and GID 50. >>> Creating user 'games' (games) with UID 12 and GID 100. >>> Creating user 'halt' (halt) with UID 7 and GID 0. >>> Creating user 'lp' (lp) with UID 4 and GID 7. >>> Creating user 'mail' (mail) with UID 8 and GID 12. >>> Creating user 'nobody' (Kernel Overflow User) with UID 65534 and GID 65534. >>> Creating user 'operator' (operator) with UID 11 and GID 0. >>> Creating user 'root' (Super User) with UID 0 and GID 0. >>> Creating user 'shutdown' (shutdown) with UID 6 and GID 0. >>> Creating user 'sync' (sync) with UID 5 and GID 0. >>> [ 14/188] Installing setup-0:2.15.0-29. 100% | 37.6 MiB/s | 730.6 KiB | 00m00s [ 15/188] Installing filesystem-0:3.18- 100% | 2.7 MiB/s | 289.4 KiB | 00m00s [ 16/188] Installing pkgconf-m4-0:2.5.1 100% | 0.0 B/s | 14.7 KiB | 00m00s [ 17/188] Installing pcre2-syntax-0:10. 100% | 277.7 MiB/s | 284.3 KiB | 00m00s [ 18/188] Installing gnulib-l10n-0:2024 100% | 215.5 MiB/s | 661.9 KiB | 00m00s [ 19/188] Installing coreutils-common-0 100% | 391.3 MiB/s | 11.0 MiB | 00m00s [ 20/188] Installing ncurses-base-0:6.6 100% | 86.7 MiB/s | 355.3 KiB | 00m00s [ 21/188] Installing bash-0:5.3.9-3.fc4 100% | 249.4 MiB/s | 8.5 MiB | 00m00s [ 22/188] Installing glibc-common-0:2.4 100% | 49.1 MiB/s | 1.0 MiB | 00m00s [ 23/188] Installing glibc-gconv-extra- 100% | 298.6 MiB/s | 7.8 MiB | 00m00s [ 24/188] Installing glibc-0:2.43.9000- 100% | 174.7 MiB/s | 7.0 MiB | 00m00s [ 25/188] Installing ncurses-libs-0:6.6 100% | 238.0 MiB/s | 974.7 KiB | 00m00s [ 26/188] Installing glibc-minimal-lang 100% | 0.0 B/s | 124.0 B | 00m00s [ 27/188] Installing zlib-ng-compat-0:2 100% | 162.5 MiB/s | 166.4 KiB | 00m00s [ 28/188] Installing bzip2-libs-0:1.0.8 100% | 79.7 MiB/s | 81.6 KiB | 00m00s [ 29/188] Installing libgpg-error-0:1.6 100% | 49.1 MiB/s | 955.7 KiB | 00m00s [ 30/188] Installing libstdc++-0:16.1.1 100% | 386.6 MiB/s | 3.1 MiB | 00m00s [ 31/188] Installing libassuan-0:2.5.7- 100% | 161.8 MiB/s | 165.7 KiB | 00m00s [ 32/188] Installing libgcrypt-0:1.12.2 100% | 414.7 MiB/s | 1.7 MiB | 00m00s [ 33/188] Installing readline-0:8.3-4.f 100% | 254.7 MiB/s | 521.6 KiB | 00m00s [ 34/188] Installing gmp-1:6.3.0-5.fc44 100% | 399.2 MiB/s | 817.5 KiB | 00m00s [ 35/188] Installing systemd-libs-0:260 100% | 363.9 MiB/s | 2.5 MiB | 00m00s [ 36/188] Installing xz-libs-1:5.8.3-1. 100% | 213.7 MiB/s | 218.8 KiB | 00m00s [ 37/188] Installing libuuid-0:2.42-7.f 100% | 0.0 B/s | 38.2 KiB | 00m00s [ 38/188] Installing libzstd-0:1.5.7-5. 100% | 311.6 MiB/s | 957.4 KiB | 00m00s [ 39/188] Installing elfutils-libelf-0: 100% | 387.3 MiB/s | 1.2 MiB | 00m00s [ 40/188] Installing popt-0:1.19-10.fc4 100% | 68.0 MiB/s | 139.3 KiB | 00m00s [ 41/188] Installing npth-0:1.8-4.fc44. 100% | 0.0 B/s | 50.6 KiB | 00m00s [ 42/188] Installing elfutils-libs-0:0. 100% | 350.2 MiB/s | 717.1 KiB | 00m00s [ 43/188] Installing libblkid-0:2.42-7. 100% | 276.6 MiB/s | 283.2 KiB | 00m00s [ 44/188] Installing libattr-0:2.5.2-8. 100% | 0.0 B/s | 25.2 KiB | 00m00s [ 45/188] Installing libacl-0:2.3.2-6.f 100% | 0.0 B/s | 36.6 KiB | 00m00s [ 46/188] Installing libsepol-0:3.10-1. 100% | 425.3 MiB/s | 871.0 KiB | 00m00s [ 47/188] Installing sqlite-libs-0:3.53 100% | 402.7 MiB/s | 1.6 MiB | 00m00s [ 48/188] Installing gnupg2-gpgconf-0:2 100% | 14.5 MiB/s | 251.8 KiB | 00m00s [ 49/188] Installing pcre2-0:10.47-1.fc 100% | 351.6 MiB/s | 720.0 KiB | 00m00s [ 50/188] Installing libselinux-0:3.10- 100% | 197.5 MiB/s | 202.3 KiB | 00m00s [ 51/188] Installing grep-0:3.12-3.fc44 100% | 50.1 MiB/s | 1.0 MiB | 00m00s [ 52/188] Installing sed-0:4.10-1.fc45. 100% | 48.7 MiB/s | 947.8 KiB | 00m00s [ 53/188] Installing findutils-1:4.10.0 100% | 89.0 MiB/s | 1.9 MiB | 00m00s [ 54/188] Installing libxcrypt-0:4.5.2- 100% | 289.0 MiB/s | 295.9 KiB | 00m00s [ 55/188] Installing libtasn1-0:4.21.0- 100% | 178.2 MiB/s | 182.4 KiB | 00m00s [ 56/188] Installing libunistring-0:1.1 100% | 346.9 MiB/s | 1.7 MiB | 00m00s [ 57/188] Installing libidn2-0:2.3.8-3. 100% | 61.0 MiB/s | 562.6 KiB | 00m00s [ 58/188] Installing crypto-policies-0: 100% | 30.8 MiB/s | 157.7 KiB | 00m00s [ 59/188] Installing xz-1:5.8.3-1.fc45. 100% | 61.1 MiB/s | 1.4 MiB | 00m00s [ 60/188] Installing libmount-0:2.42-7. 100% | 196.2 MiB/s | 401.9 KiB | 00m00s [ 61/188] Installing gnupg2-verify-0:2. 100% | 20.8 MiB/s | 361.7 KiB | 00m00s [ 62/188] Installing dwz-0:0.16-3.fc44. 100% | 16.8 MiB/s | 292.3 KiB | 00m00s [ 63/188] Installing mpfr-0:4.2.2-3.fc4 100% | 276.9 MiB/s | 850.8 KiB | 00m00s [ 64/188] Installing gawk-0:5.4.0-2.fc4 100% | 96.8 MiB/s | 2.2 MiB | 00m00s [ 65/188] Installing libksba-0:1.7.0-1. 100% | 209.1 MiB/s | 428.2 KiB | 00m00s [ 66/188] Installing unzip-0:6.0-69.fc4 100% | 25.8 MiB/s | 449.3 KiB | 00m00s [ 67/188] Installing file-libs-0:5.47-2 100% | 677.2 MiB/s | 12.2 MiB | 00m00s [ 68/188] Installing file-0:5.47-2.fc45 100% | 6.3 MiB/s | 102.6 KiB | 00m00s [ 69/188] Installing diffutils-0:3.12-5 100% | 74.9 MiB/s | 1.6 MiB | 00m00s [ 70/188] Installing libeconf-0:0.7.9-3 100% | 64.9 MiB/s | 66.4 KiB | 00m00s [ 71/188] Installing libcap-ng-0:0.9.3- 100% | 69.0 MiB/s | 70.6 KiB | 00m00s [ 72/188] Installing audit-libs-0:4.1.4 100% | 191.9 MiB/s | 393.0 KiB | 00m00s [ 73/188] Installing pam-libs-0:1.7.2-1 100% | 129.8 MiB/s | 132.9 KiB | 00m00s [ 74/188] Installing libcap-0:2.78-1.fc 100% | 12.5 MiB/s | 217.2 KiB | 00m00s [ 75/188] Installing libsemanage-0:3.10 100% | 306.7 MiB/s | 314.1 KiB | 00m00s [ 76/188] Installing libsmartcols-0:2.4 100% | 188.9 MiB/s | 193.4 KiB | 00m00s [ 77/188] Installing lua-libs-0:5.5.0-1 100% | 292.4 MiB/s | 299.4 KiB | 00m00s [ 78/188] Installing json-c-0:0.18-8.fc 100% | 81.9 MiB/s | 83.9 KiB | 00m00s [ 79/188] Installing libffi-0:3.5.2-2.f 100% | 87.0 MiB/s | 89.1 KiB | 00m00s [ 80/188] Installing p11-kit-0:0.26.2-1 100% | 108.1 MiB/s | 2.6 MiB | 00m00s [ 81/188] Installing alternatives-0:1.3 100% | 3.7 MiB/s | 63.6 KiB | 00m00s [ 82/188] Installing p11-kit-trust-0:0. 100% | 18.8 MiB/s | 480.0 KiB | 00m00s [ 83/188] Installing ngtcp2-0:1.22.1-1. 100% | 165.9 MiB/s | 339.7 KiB | 00m00s [ 84/188] Installing openssl-libs-1:3.5 100% | 382.9 MiB/s | 9.2 MiB | 00m00s [ 85/188] Installing coreutils-0:9.11-1 100% | 166.3 MiB/s | 6.3 MiB | 00m00s [ 86/188] Installing ca-certificates-0: 100% | 2.0 MiB/s | 2.5 MiB | 00m01s [ 87/188] Installing gzip-0:1.14-2.fc44 100% | 20.9 MiB/s | 407.1 KiB | 00m00s [ 88/188] Installing rpm-sequoia-0:1.10 100% | 393.9 MiB/s | 2.4 MiB | 00m00s [ 89/188] Installing libfsverity-0:1.7- 100% | 0.0 B/s | 29.4 KiB | 00m00s [ 90/188] Installing libevent-0:2.1.12- 100% | 319.8 MiB/s | 982.4 KiB | 00m00s [ 91/188] Installing systemd-standalone 100% | 45.7 MiB/s | 841.8 KiB | 00m00s [ 92/188] Installing rpm-libs-0:6.0.1-5 100% | 313.4 MiB/s | 962.8 KiB | 00m00s [ 93/188] Installing ngtcp2-crypto-ossl 100% | 51.3 MiB/s | 52.5 KiB | 00m00s [ 94/188] Installing util-linux-core-0: 100% | 69.5 MiB/s | 1.5 MiB | 00m00s [ 95/188] Installing liblastlog2-0:2.42 100% | 7.1 MiB/s | 43.6 KiB | 00m00s [ 96/188] Installing zip-0:3.0-45.fc44. 100% | 34.3 MiB/s | 701.9 KiB | 00m00s [ 97/188] Installing gnupg2-keyboxd-0:2 100% | 33.0 MiB/s | 202.5 KiB | 00m00s [ 98/188] Installing libpsl-0:0.21.5-7. 100% | 75.6 MiB/s | 77.4 KiB | 00m00s [ 99/188] Installing tar-2:1.35-8.fc44. 100% | 114.5 MiB/s | 3.0 MiB | 00m00s [100/188] Installing linkdupes-0:0.7.3- 100% | 42.4 MiB/s | 782.3 KiB | 00m00s [101/188] Installing libselinux-utils-0 100% | 17.4 MiB/s | 320.1 KiB | 00m00s [102/188] Installing libfdisk-0:2.42-7. 100% | 126.7 MiB/s | 389.3 KiB | 00m00s [103/188] Installing util-linux-0:2.42- 100% | 92.8 MiB/s | 3.7 MiB | 00m00s [104/188] Installing policycoreutils-0: 100% | 29.7 MiB/s | 912.9 KiB | 00m00s [105/188] Installing selinux-policy-0:4 100% | 1.7 MiB/s | 34.6 KiB | 00m00s [106/188] Installing selinux-policy-tar 100% | 201.3 MiB/s | 14.9 MiB | 00m00s [107/188] Installing zstd-0:1.5.7-5.fc4 100% | 26.0 MiB/s | 506.0 KiB | 00m00s [108/188] Installing libxml2-0:2.12.10- 100% | 84.3 MiB/s | 1.8 MiB | 00m00s [109/188] Installing libusb1-0:1.0.29-5 100% | 21.6 MiB/s | 176.9 KiB | 00m00s >>> Running sysusers scriptlet: tpm2-tss-0:4.1.3-9.fc44.x86_64 >>> Finished sysusers scriptlet: tpm2-tss-0:4.1.3-9.fc44.x86_64 >>> Scriptlet output: >>> Creating group 'tss' with GID 59. >>> Creating user 'tss' (Account used for TPM access) with UID 59 and GID 59. >>> [110/188] Installing tpm2-tss-0:4.1.3-9 100% | 272.2 MiB/s | 1.6 MiB | 00m00s [111/188] Installing ima-evm-utils-libs 100% | 60.5 MiB/s | 61.9 KiB | 00m00s [112/188] Installing gnupg2-gpg-agent-0 100% | 28.1 MiB/s | 690.6 KiB | 00m00s [113/188] Installing nettle-0:3.10.1-3. 100% | 259.6 MiB/s | 797.4 KiB | 00m00s [114/188] Installing gnutls-0:3.8.13-1. 100% | 384.9 MiB/s | 3.8 MiB | 00m00s [115/188] Installing bzip2-0:1.0.8-23.f 100% | 5.7 MiB/s | 99.5 KiB | 00m00s [116/188] Installing add-determinism-0: 100% | 103.9 MiB/s | 2.2 MiB | 00m00s [117/188] Installing build-reproducibil 100% | 0.0 B/s | 1.5 KiB | 00m00s [118/188] Installing cpio-0:2.15-9.fc44 100% | 58.1 MiB/s | 1.1 MiB | 00m00s [119/188] Installing ed-0:1.22.5-2.fc45 100% | 8.7 MiB/s | 152.0 KiB | 00m00s [120/188] Installing patch-0:2.8-4.fc44 100% | 13.1 MiB/s | 228.1 KiB | 00m00s [121/188] Installing lz4-libs-0:1.10.0- 100% | 154.6 MiB/s | 158.4 KiB | 00m00s [122/188] Installing libarchive-0:3.8.7 100% | 326.0 MiB/s | 1.0 MiB | 00m00s [123/188] Installing libgomp-0:16.1.1-1 100% | 284.6 MiB/s | 582.8 KiB | 00m00s [124/188] Installing libtool-ltdl-0:2.5 100% | 0.0 B/s | 71.1 KiB | 00m00s [125/188] Installing gdbm-libs-1:1.23-1 100% | 128.3 MiB/s | 131.3 KiB | 00m00s [126/188] Installing cyrus-sasl-lib-0:2 100% | 110.0 MiB/s | 2.3 MiB | 00m00s [127/188] Installing openldap-0:2.6.13- 100% | 219.3 MiB/s | 673.7 KiB | 00m00s [128/188] Installing gnupg2-dirmngr-0:2 100% | 24.9 MiB/s | 636.7 KiB | 00m00s [129/188] Installing gnupg2-0:2.4.9-7.f 100% | 197.1 MiB/s | 6.5 MiB | 00m00s [130/188] Installing rpm-sign-libs-0:6. 100% | 39.4 MiB/s | 40.3 KiB | 00m00s [131/188] Installing rpm-build-libs-0:6 100% | 270.7 MiB/s | 277.2 KiB | 00m00s [132/188] Installing gpgverify-0:2.2-4. 100% | 0.0 B/s | 9.4 KiB | 00m00s [133/188] Installing jansson-0:2.14-4.f 100% | 88.2 MiB/s | 90.3 KiB | 00m00s [134/188] Installing libpkgconf-0:2.5.1 100% | 89.1 MiB/s | 91.3 KiB | 00m00s [135/188] Installing pkgconf-0:2.5.1-1. 100% | 5.5 MiB/s | 95.2 KiB | 00m00s [136/188] Installing pkgconf-pkg-config 100% | 110.8 KiB/s | 1.8 KiB | 00m00s [137/188] Installing xxhash-libs-0:0.8. 100% | 93.2 MiB/s | 95.4 KiB | 00m00s [138/188] Installing libbrotli-0:1.2.0- 100% | 282.3 MiB/s | 867.3 KiB | 00m00s [139/188] Installing libnghttp2-0:1.69. 100% | 163.3 MiB/s | 167.3 KiB | 00m00s [140/188] Installing libnghttp3-0:1.15. 100% | 156.8 MiB/s | 160.6 KiB | 00m00s [141/188] Installing keyutils-libs-0:1. 100% | 54.3 MiB/s | 55.6 KiB | 00m00s [142/188] Installing libcom_err-0:1.47. 100% | 0.0 B/s | 64.0 KiB | 00m00s [143/188] Installing libverto-0:0.3.2-1 100% | 26.4 MiB/s | 27.1 KiB | 00m00s [144/188] Installing krb5-libs-0:1.22.2 100% | 342.1 MiB/s | 2.4 MiB | 00m00s [145/188] Installing libcbor-0:0.14.0-2 100% | 82.9 MiB/s | 84.9 KiB | 00m00s [146/188] Installing libfido2-0:1.17.0- 100% | 255.9 MiB/s | 262.0 KiB | 00m00s [147/188] Installing libssh-0:0.12.0-1. 100% | 234.8 MiB/s | 721.2 KiB | 00m00s [148/188] Installing libcurl-0:8.20.0~r 100% | 340.7 MiB/s | 1.0 MiB | 00m00s [149/188] Installing elfutils-debuginfo 100% | 4.9 MiB/s | 86.1 KiB | 00m00s [150/188] Installing elfutils-0:0.195-1 100% | 124.0 MiB/s | 3.0 MiB | 00m00s [151/188] Installing binutils-0:2.46.50 100% | 325.0 MiB/s | 28.3 MiB | 00m00s [152/188] Installing gdb-minimal-0:17.1 100% | 273.0 MiB/s | 14.2 MiB | 00m00s [153/188] Installing debugedit-0:5.3-2. 100% | 12.2 MiB/s | 224.1 KiB | 00m00s [154/188] Installing curl-0:8.20.0~rc3- 100% | 18.2 MiB/s | 485.6 KiB | 00m00s [155/188] Installing rpm-0:6.0.1-5.fc45 100% | 68.9 MiB/s | 2.6 MiB | 00m00s [156/188] Installing cmake-srpm-macros- 100% | 0.0 B/s | 804.0 B | 00m00s [157/188] Installing efi-srpm-macros-0: 100% | 0.0 B/s | 41.2 KiB | 00m00s [158/188] Installing java-srpm-macros-0 100% | 0.0 B/s | 1.1 KiB | 00m00s [159/188] Installing lua-srpm-macros-0: 100% | 0.0 B/s | 1.9 KiB | 00m00s [160/188] Installing tree-sitter-srpm-m 100% | 0.0 B/s | 9.3 KiB | 00m00s [161/188] Installing zig-srpm-macros-0: 100% | 0.0 B/s | 1.9 KiB | 00m00s [162/188] Installing filesystem-srpm-ma 100% | 7.6 MiB/s | 38.9 KiB | 00m00s [163/188] Installing rust-srpm-macros-0 100% | 0.0 B/s | 6.4 KiB | 00m00s [164/188] Installing qt6-srpm-macros-0: 100% | 0.0 B/s | 748.0 B | 00m00s [165/188] Installing qt5-srpm-macros-0: 100% | 0.0 B/s | 776.0 B | 00m00s [166/188] Installing perl-srpm-macros-0 100% | 0.0 B/s | 1.1 KiB | 00m00s [167/188] Installing package-notes-srpm 100% | 0.0 B/s | 2.1 KiB | 00m00s [168/188] Installing openblas-srpm-macr 100% | 0.0 B/s | 392.0 B | 00m00s [169/188] Installing ocaml-srpm-macros- 100% | 0.0 B/s | 2.1 KiB | 00m00s [170/188] Installing kernel-srpm-macros 100% | 0.0 B/s | 2.3 KiB | 00m00s [171/188] Installing gnat-srpm-macros-0 100% | 0.0 B/s | 1.3 KiB | 00m00s [172/188] Installing ghc-srpm-macros-0: 100% | 0.0 B/s | 1.0 KiB | 00m00s [173/188] Installing gap-srpm-macros-0: 100% | 0.0 B/s | 2.7 KiB | 00m00s [174/188] Installing fpc-srpm-macros-0: 100% | 0.0 B/s | 420.0 B | 00m00s [175/188] Installing ansible-srpm-macro 100% | 0.0 B/s | 36.2 KiB | 00m00s [176/188] Installing redhat-rpm-config- 100% | 92.7 MiB/s | 189.9 KiB | 00m00s [177/188] Installing forge-srpm-macros- 100% | 39.3 MiB/s | 40.3 KiB | 00m00s [178/188] Installing rpm-build-0:6.0.1- 100% | 15.6 MiB/s | 303.7 KiB | 00m00s [179/188] Installing erlang-srpm-macros 100% | 0.0 B/s | 2.5 KiB | 00m00s [180/188] Installing pyproject-srpm-mac 100% | 0.0 B/s | 3.8 KiB | 00m00s [181/188] Installing fonts-srpm-macros- 100% | 0.0 B/s | 57.0 KiB | 00m00s [182/188] Installing go-srpm-macros-0:3 100% | 0.0 B/s | 63.0 KiB | 00m00s [183/188] Installing R-srpm-macros-0:1. 100% | 0.0 B/s | 4.4 KiB | 00m00s [184/188] Installing python-srpm-macros 100% | 0.0 B/s | 52.9 KiB | 00m00s [185/188] Installing rpm-plugin-selinux 100% | 0.0 B/s | 12.9 KiB | 00m00s [186/188] Installing which-0:2.23-4.fc4 100% | 4.6 MiB/s | 85.6 KiB | 00m00s [187/188] Installing shadow-utils-2:4.1 100% | 122.1 MiB/s | 4.0 MiB | 00m00s [188/188] Installing info-0:7.3-1.fc45. 100% | 57.5 KiB/s | 372.8 KiB | 00m06s Complete! Finish: installing minimal buildroot with dnf5 Start: creating root cache Finish: creating root cache Finish: chroot init INFO: Installed packages: INFO: R-srpm-macros-1.3.7-2.fc45.noarch add-determinism-0.7.3-2.fc45.x86_64 alternatives-1.33-5.fc44.x86_64 ansible-srpm-macros-1-20.1.fc44.noarch audit-libs-4.1.4-1.fc45.x86_64 bash-5.3.9-3.fc44.x86_64 binutils-2.46.50-7.fc45.x86_64 build-reproducibility-srpm-macros-0.7.3-2.fc45.noarch bzip2-1.0.8-23.fc44.x86_64 bzip2-libs-1.0.8-23.fc44.x86_64 ca-certificates-2025.2.80_v9.0.304-7.fc45.noarch cmake-srpm-macros-4.3.0-1.fc45.noarch coreutils-9.11-1.fc45.x86_64 coreutils-common-9.11-1.fc45.x86_64 cpio-2.15-9.fc44.x86_64 crypto-policies-20251128-3.git19878fe.fc44.noarch curl-8.20.0~rc3-1.fc45.x86_64 cyrus-sasl-lib-2.1.28-35.fc44.x86_64 debugedit-5.3-2.fc45.x86_64 diffutils-3.12-5.fc44.x86_64 dwz-0.16-3.fc44.x86_64 ed-1.22.5-2.fc45.x86_64 efi-srpm-macros-6-6.fc44.noarch elfutils-0.195-1.fc45.x86_64 elfutils-debuginfod-client-0.195-1.fc45.x86_64 elfutils-libelf-0.195-1.fc45.x86_64 elfutils-libs-0.195-1.fc45.x86_64 erlang-srpm-macros-0.3.11-1.fc45.noarch fedora-gpg-keys-45-0.1.noarch fedora-release-45-0.7.noarch fedora-release-common-45-0.7.noarch fedora-release-identity-basic-45-0.7.noarch fedora-repos-45-0.1.noarch fedora-repos-rawhide-45-0.1.noarch file-5.47-2.fc45.x86_64 file-libs-5.47-2.fc45.x86_64 filesystem-3.18-56.fc45.x86_64 filesystem-srpm-macros-3.18-56.fc45.noarch findutils-4.10.0-7.fc44.x86_64 fonts-srpm-macros-5.0.0-3.fc45.noarch forge-srpm-macros-0.4.0-4.fc44.noarch fpc-srpm-macros-1.3-16.fc44.noarch gap-srpm-macros-2-2.fc44.noarch gawk-5.4.0-2.fc45.x86_64 gdb-minimal-17.1-5.fc45.x86_64 gdbm-libs-1.23-11.fc44.x86_64 ghc-srpm-macros-1.10-1.fc44.noarch glibc-2.43.9000-14.fc45.x86_64 glibc-common-2.43.9000-14.fc45.x86_64 glibc-gconv-extra-2.43.9000-14.fc45.x86_64 glibc-minimal-langpack-2.43.9000-14.fc45.x86_64 gmp-6.3.0-5.fc44.x86_64 gnat-srpm-macros-7-2.fc44.noarch gnulib-l10n-20241231-2.fc44.noarch gnupg2-2.4.9-7.fc45.x86_64 gnupg2-dirmngr-2.4.9-7.fc45.x86_64 gnupg2-gpg-agent-2.4.9-7.fc45.x86_64 gnupg2-gpgconf-2.4.9-7.fc45.x86_64 gnupg2-keyboxd-2.4.9-7.fc45.x86_64 gnupg2-verify-2.4.9-7.fc45.x86_64 gnutls-3.8.13-1.fc45.x86_64 go-srpm-macros-3.8.0-2.fc44.noarch gpg-pubkey-36f612dcf27f7d1a48a835e4dbfcf71c6d9f90a6-6786af3b gpg-pubkey-4f50a6114cd5c6976a7f1179655a4b02f577861e-6888bc98 gpg-pubkey-d924b10d3e810dabdd8b56b596e7e91491211fce-697c9899 gpgverify-2.2-4.fc44.noarch grep-3.12-3.fc44.x86_64 gzip-1.14-2.fc44.x86_64 ima-evm-utils-libs-1.6.2-10.fc45.x86_64 info-7.3-1.fc45.x86_64 jansson-2.14-4.fc44.x86_64 java-srpm-macros-1-8.fc44.noarch json-c-0.18-8.fc44.x86_64 kernel-srpm-macros-1.0-29.fc45.noarch keyutils-libs-1.6.3-7.fc44.x86_64 krb5-libs-1.22.2-7.fc45.x86_64 libacl-2.3.2-6.fc44.x86_64 libarchive-3.8.7-1.fc45.x86_64 libassuan-2.5.7-5.fc44.x86_64 libattr-2.5.2-8.fc44.x86_64 libblkid-2.42-7.fc45.x86_64 libbrotli-1.2.0-3.fc44.x86_64 libcap-2.78-1.fc45.x86_64 libcap-ng-0.9.3-1.fc45.x86_64 libcbor-0.14.0-2.fc45.x86_64 libcom_err-1.47.4-1.fc45.x86_64 libcurl-8.20.0~rc3-1.fc45.x86_64 libeconf-0.7.9-3.fc44.x86_64 libevent-2.1.12-17.fc44.x86_64 libfdisk-2.42-7.fc45.x86_64 libffi-3.5.2-2.fc44.x86_64 libfido2-1.17.0-2.fc45.x86_64 libfsverity-1.7-1.fc45.x86_64 libgcc-16.1.1-1.fc45.x86_64 libgcrypt-1.12.2-1.fc45.x86_64 libgomp-16.1.1-1.fc45.x86_64 libgpg-error-1.61-1.fc45.x86_64 libidn2-2.3.8-3.fc44.x86_64 libksba-1.7.0-1.fc45.x86_64 liblastlog2-2.42-7.fc45.x86_64 libmount-2.42-7.fc45.x86_64 libnghttp2-1.69.0-1.fc45.x86_64 libnghttp3-1.15.0-1.fc44.x86_64 libpkgconf-2.5.1-1.fc45.x86_64 libpsl-0.21.5-7.fc44.x86_64 libselinux-3.10-1.fc44.x86_64 libselinux-utils-3.10-1.fc44.x86_64 libsemanage-3.10-1.fc44.x86_64 libsepol-3.10-1.fc44.x86_64 libsmartcols-2.42-7.fc45.x86_64 libssh-0.12.0-1.fc45.x86_64 libssh-config-0.12.0-1.fc45.noarch libstdc++-16.1.1-1.fc45.x86_64 libtasn1-4.21.0-1.fc45.x86_64 libtool-ltdl-2.5.4-10.fc44.x86_64 libunistring-1.1-11.fc44.x86_64 libusb1-1.0.29-5.fc44.x86_64 libuuid-2.42-7.fc45.x86_64 libverto-0.3.2-12.fc44.x86_64 libxcrypt-4.5.2-3.fc44.x86_64 libxml2-2.12.10-6.fc44.x86_64 libzstd-1.5.7-5.fc44.x86_64 linkdupes-0.7.3-2.fc45.x86_64 lua-libs-5.5.0-1.fc45.x86_64 lua-srpm-macros-1-17.fc44.noarch lz4-libs-1.10.0-4.fc44.x86_64 mpfr-4.2.2-3.fc44.x86_64 ncurses-base-6.6-2.fc45.noarch ncurses-libs-6.6-2.fc45.x86_64 nettle-3.10.1-3.fc44.x86_64 ngtcp2-1.22.1-1.fc45.x86_64 ngtcp2-crypto-ossl-1.22.1-1.fc45.x86_64 npth-1.8-4.fc44.x86_64 ocaml-srpm-macros-11-3.fc44.noarch openblas-srpm-macros-2-21.fc44.noarch openldap-2.6.13-1.fc45.x86_64 openssl-libs-3.5.6-1.fc45.x86_64 p11-kit-0.26.2-1.fc45.x86_64 p11-kit-trust-0.26.2-1.fc45.x86_64 package-notes-srpm-macros-0.17-3.fc45.noarch pam-libs-1.7.2-1.fc44.x86_64 patch-2.8-4.fc44.x86_64 pcre2-10.47-1.fc44.1.x86_64 pcre2-syntax-10.47-1.fc44.1.noarch perl-srpm-macros-1-61.fc44.noarch pkgconf-2.5.1-1.fc45.x86_64 pkgconf-m4-2.5.1-1.fc45.noarch pkgconf-pkg-config-2.5.1-1.fc45.x86_64 policycoreutils-3.10-3.fc45.x86_64 popt-1.19-10.fc44.x86_64 publicsuffix-list-dafsa-20260116-1.fc44.noarch pyproject-srpm-macros-1.22.1-1.fc45.noarch python-srpm-macros-3.14-12.fc45.noarch qt5-srpm-macros-5.15.18-2.fc44.noarch qt6-srpm-macros-6.11.0-1.fc45.noarch readline-8.3-4.fc44.x86_64 redhat-rpm-config-344-1.fc45.noarch redhat-systemd-presets-102-1.fc45.noarch redhat-systemd-presets-common-102-1.fc45.noarch rpm-6.0.1-5.fc45.x86_64 rpm-build-6.0.1-5.fc45.x86_64 rpm-build-libs-6.0.1-5.fc45.x86_64 rpm-libs-6.0.1-5.fc45.x86_64 rpm-plugin-selinux-6.0.1-5.fc45.x86_64 rpm-sequoia-1.10.2-1.fc45.x86_64 rpm-sign-libs-6.0.1-5.fc45.x86_64 rust-srpm-macros-28.4-3.fc44.noarch sed-4.10-1.fc45.x86_64 selinux-policy-45.2-1.fc45.noarch selinux-policy-targeted-45.2-1.fc45.noarch setup-2.15.0-29.fc45.noarch shadow-utils-4.19.3-2.fc45.x86_64 sqlite-libs-3.53.1-1.fc45.x86_64 systemd-libs-260.1-2.fc45.x86_64 systemd-standalone-sysusers-260.1-2.fc45.x86_64 tar-1.35-8.fc44.x86_64 tpm2-tss-4.1.3-9.fc44.x86_64 tree-sitter-srpm-macros-0.4.3-1.fc45.noarch unzip-6.0-69.fc44.x86_64 util-linux-2.42-7.fc45.x86_64 util-linux-core-2.42-7.fc45.x86_64 which-2.23-4.fc44.x86_64 xxhash-libs-0.8.3-4.fc44.x86_64 xz-5.8.3-1.fc45.x86_64 xz-libs-5.8.3-1.fc45.x86_64 zig-srpm-macros-1-8.fc44.noarch zip-3.0-45.fc44.x86_64 zlib-ng-compat-2.3.3-5.fc45.x86_64 zstd-1.5.7-5.fc44.x86_64 Start: buildsrpm Start: rpmbuild -bs Building target platforms: x86_64 Building for target x86_64 setting SOURCE_DATE_EPOCH=1582243200 Wrote: /builddir/build/SRPMS/pyrtl-0.12-20260501.0.gita9688753.fc45.src.rpm Finish: rpmbuild -bs INFO: chroot_scan: 1 files copied to /var/lib/copr-rpmbuild/results/chroot_scan INFO: /var/lib/mock/fedora-rawhide-x86_64-1778568246.750797/root/var/log/dnf5.log INFO: chroot_scan: creating tarball /var/lib/copr-rpmbuild/results/chroot_scan.tar.gz /bin/tar: Removing leading `/' from member names Finish: buildsrpm INFO: Done(/var/lib/copr-rpmbuild/workspace/workdir-afnn1kpw/pyrtl/pyrtl.spec) Config(child) 0 minutes 21 seconds INFO: Results and/or logs in: /var/lib/copr-rpmbuild/results INFO: Cleaning up build root ('cleanup_on_success=True') Start: clean chroot INFO: unmounting tmpfs. Finish: clean chroot INFO: Start(/var/lib/copr-rpmbuild/results/pyrtl-0.12-20260501.0.gita9688753.fc45.src.rpm) Config(fedora-rawhide-x86_64) Start(bootstrap): chroot init INFO: mounting tmpfs at /var/lib/mock/fedora-rawhide-x86_64-bootstrap-1778568246.750797/root. INFO: reusing tmpfs at /var/lib/mock/fedora-rawhide-x86_64-bootstrap-1778568246.750797/root. INFO: calling preinit hooks INFO: enabled root cache INFO: enabled package manager cache Start(bootstrap): cleaning package manager metadata Finish(bootstrap): cleaning package manager metadata Finish(bootstrap): chroot init Start: chroot init INFO: mounting tmpfs at /var/lib/mock/fedora-rawhide-x86_64-1778568246.750797/root. INFO: calling preinit hooks INFO: enabled root cache Start: unpacking root cache Finish: unpacking root cache INFO: enabled package manager cache Start: cleaning package manager metadata Finish: cleaning package manager metadata INFO: enabled HW Info plugin INFO: Buildroot is handled by package management downloaded with a bootstrap image: rpm-6.0.1-5.fc45.x86_64 rpm-sequoia-1.10.2-1.fc45.x86_64 dnf5-5.4.2.0-1.fc45.x86_64 dnf5-plugins-5.4.2.0-1.fc45.x86_64 Finish: chroot init Start: build phase for pyrtl-0.12-20260501.0.gita9688753.fc45.src.rpm Start: build setup for pyrtl-0.12-20260501.0.gita9688753.fc45.src.rpm Building target platforms: x86_64 Building for target x86_64 setting SOURCE_DATE_EPOCH=1582243200 Wrote: /builddir/build/SRPMS/pyrtl-0.12-20260501.0.gita9688753.fc45.src.rpm Updating and loading repositories: fedora 100% | 198.4 KiB/s | 25.4 KiB | 00m00s Copr repository 100% | 39.0 KiB/s | 2.1 KiB | 00m00s Repositories loaded. Package Arch Version Repository Size Installing: git x86_64 0:2.54.0-1.fc45 fedora 57.7 KiB make x86_64 1:4.4.1-12.fc44 fedora 1.8 MiB pyproject-rpm-macros noarch 0:1.22.1-1.fc45 fedora 147.5 KiB python3 x86_64 0:3.14.5~rc1-1.fc45 fedora 28.7 KiB python3-hatch-vcs noarch 0:0.5.0-7.fc45 fedora 34.9 KiB python3-pip noarch 0:26.0.1-2.fc45 fedora 11.4 MiB python3-pyparsing noarch 0:3.1.2-15.fc44 fedora 1.0 MiB python3-pytest noarch 0:9.0.3-1.fc45 fedora 23.4 MiB python3-rpm-macros noarch 0:3.14-12.fc45 fedora 6.5 KiB python3-setuptools noarch 0:80.10.2-3.fc45 fedora 7.5 MiB python3-wheel noarch 1:0.47.0-1.fc45 fedora 262.5 KiB Installing dependencies: expat x86_64 0:2.7.5-1.fc45 fedora 322.9 KiB git-core x86_64 0:2.54.0-1.fc45 fedora 25.1 MiB git-core-doc noarch 0:2.54.0-1.fc45 fedora 18.7 MiB groff-base x86_64 0:1.24.0-1.fc45 fedora 4.2 MiB less x86_64 0:692-7.fc45 fedora 467.6 KiB libedit x86_64 0:3.1-58.20251016cvs.fc44 fedora 248.1 KiB mpdecimal x86_64 0:4.0.1-3.fc44 fedora 217.1 KiB ncurses x86_64 0:6.6-2.fc45 fedora 611.4 KiB openssh x86_64 0:10.3p1-2.fc45 fedora 1.5 MiB openssh-clients x86_64 0:10.3p1-2.fc45 fedora 2.0 MiB perl-AutoLoader noarch 0:5.74-524.fc45 fedora 20.6 KiB perl-B x86_64 0:1.89-524.fc45 fedora 501.2 KiB perl-Carp noarch 0:1.54-521.fc44 fedora 46.6 KiB perl-Class-Struct noarch 0:0.68-524.fc45 fedora 25.4 KiB perl-Data-Dumper x86_64 0:2.191-522.fc44 fedora 115.5 KiB perl-Digest noarch 0:1.20-521.fc44 fedora 35.3 KiB perl-Digest-MD5 x86_64 0:2.59-521.fc44 fedora 59.6 KiB perl-DynaLoader x86_64 0:1.57-524.fc45 fedora 32.1 KiB perl-Encode x86_64 4:3.24-524.fc45 fedora 4.7 MiB perl-Errno x86_64 0:1.38-524.fc45 fedora 8.4 KiB perl-Error noarch 1:0.17030-3.fc44 fedora 76.8 KiB perl-Exporter noarch 0:5.79-521.fc44 fedora 54.3 KiB perl-Fcntl x86_64 0:1.20-524.fc45 fedora 48.7 KiB perl-File-Basename noarch 0:2.86-524.fc45 fedora 14.0 KiB perl-File-Path noarch 0:2.18-522.fc44 fedora 63.5 KiB perl-File-Temp noarch 1:0.231.200-2.fc44 fedora 163.7 KiB perl-File-stat noarch 0:1.14-524.fc45 fedora 12.5 KiB perl-FileHandle noarch 0:2.05-524.fc45 fedora 9.4 KiB perl-Getopt-Long noarch 1:2.58-521.fc44 fedora 144.5 KiB perl-Getopt-Std noarch 0:1.14-524.fc45 fedora 11.2 KiB perl-Git noarch 0:2.54.0-1.fc45 fedora 64.4 KiB perl-HTTP-Tiny noarch 0:0.092-2.fc44 fedora 157.6 KiB perl-IO x86_64 0:1.55-524.fc45 fedora 147.3 KiB perl-IO-Socket-IP noarch 0:0.43-522.fc44 fedora 100.3 KiB perl-IO-Socket-SSL noarch 0:2.098-2.fc44 fedora 723.5 KiB perl-IPC-Open3 noarch 0:1.24-524.fc45 fedora 27.7 KiB perl-MIME-Base32 noarch 0:1.303-25.fc44 fedora 30.7 KiB perl-MIME-Base64 x86_64 0:3.16-521.fc44 fedora 41.9 KiB perl-Net-SSLeay x86_64 0:1.96-1.fc45 fedora 1.3 MiB perl-POSIX x86_64 0:2.23-524.fc45 fedora 229.4 KiB perl-PathTools x86_64 0:3.94-521.fc44 fedora 179.9 KiB perl-Pod-Escapes noarch 1:1.07-521.fc44 fedora 24.9 KiB perl-Pod-Perldoc noarch 0:3.28.01-522.fc44 fedora 163.7 KiB perl-Pod-Simple noarch 1:3.48-1.fc45 fedora 566.0 KiB perl-Pod-Usage noarch 4:2.05-521.fc44 fedora 86.3 KiB perl-Scalar-List-Utils x86_64 5:1.70-2.fc44 fedora 144.8 KiB perl-SelectSaver noarch 0:1.02-524.fc45 fedora 2.2 KiB perl-Socket x86_64 4:2.041-1.fc45 fedora 120.7 KiB perl-Storable x86_64 1:3.37-522.fc44 fedora 235.1 KiB perl-Symbol noarch 0:1.09-524.fc45 fedora 6.8 KiB perl-Term-ANSIColor noarch 0:5.01-522.fc44 fedora 97.5 KiB perl-Term-Cap noarch 0:1.18-521.fc44 fedora 29.3 KiB perl-TermReadKey x86_64 0:2.38-27.fc44 fedora 63.9 KiB perl-Text-ParseWords noarch 0:3.31-521.fc44 fedora 13.6 KiB perl-Text-Tabs+Wrap noarch 0:2024.001-521.fc44 fedora 22.6 KiB perl-Time-HiRes x86_64 4:1.9778-521.fc44 fedora 115.6 KiB perl-Time-Local noarch 2:1.350-521.fc44 fedora 69.0 KiB perl-URI noarch 0:5.34-3.fc44 fedora 268.0 KiB perl-base noarch 0:2.27-524.fc45 fedora 12.6 KiB perl-constant noarch 0:1.33-522.fc44 fedora 26.2 KiB perl-if noarch 0:0.61.000-524.fc45 fedora 5.8 KiB perl-interpreter x86_64 4:5.42.2-524.fc45 fedora 118.7 KiB perl-lib x86_64 0:0.65-524.fc45 fedora 8.5 KiB perl-libnet noarch 0:3.15-522.fc44 fedora 289.4 KiB perl-libs x86_64 4:5.42.2-524.fc45 fedora 11.6 MiB perl-locale noarch 0:1.13-524.fc45 fedora 6.1 KiB perl-mro x86_64 0:1.29-524.fc45 fedora 41.4 KiB perl-overload noarch 0:1.40-524.fc45 fedora 71.6 KiB perl-overloading noarch 0:0.02-524.fc45 fedora 4.9 KiB perl-parent noarch 1:0.244-521.fc44 fedora 10.3 KiB perl-podlators noarch 1:6.0.2-521.fc44 fedora 317.5 KiB perl-vars noarch 0:1.05-524.fc45 fedora 3.9 KiB python-pip-wheel noarch 0:26.0.1-2.fc45 fedora 1.2 MiB python-rpm-macros noarch 0:3.14-12.fc45 fedora 28.0 KiB python3-hatchling noarch 0:1.29.0-1.fc45 fedora 659.2 KiB python3-iniconfig noarch 0:2.3.0-2.fc44 fedora 49.8 KiB python3-libs x86_64 0:3.14.5~rc1-1.fc45 fedora 43.8 MiB python3-packaging noarch 0:26.2-1.fc45 fedora 1.0 MiB python3-pathspec noarch 0:1.1.1-1.fc45 fedora 416.4 KiB python3-pluggy noarch 0:1.6.0-5.fc44 fedora 211.5 KiB python3-pygments noarch 0:2.19.2-1.fc45 fedora 11.3 MiB python3-setuptools_scm noarch 0:10.0.5-1.fc45 fedora 114.0 KiB python3-trove-classifiers noarch 0:2026.4.28.13-1.fc45 fedora 112.2 KiB python3-vcs-versioning noarch 0:1.1.1-1.fc45 fedora 656.7 KiB tzdata noarch 0:2026a-1.fc45 fedora 1.2 MiB Transaction Summary: Installing: 96 packages Total size of inbound packages is 42 MiB. Need to download 42 MiB. After this operation, 183 MiB extra will be used (install 183 MiB, remove 0 B). [ 1/96] make-1:4.4.1-12.fc44.x86_64 100% | 95.8 MiB/s | 588.7 KiB | 00m00s [ 2/96] pyproject-rpm-macros-0:1.22.1-1 100% | 13.0 MiB/s | 53.1 KiB | 00m00s [ 3/96] git-0:2.54.0-1.fc45.x86_64 100% | 10.2 MiB/s | 41.6 KiB | 00m00s [ 4/96] python3-hatch-vcs-0:0.5.0-7.fc4 100% | 5.4 MiB/s | 27.8 KiB | 00m00s [ 5/96] python3-pyparsing-0:3.1.2-15.fc 100% | 21.5 MiB/s | 286.8 KiB | 00m00s [ 6/96] python3-pip-0:26.0.1-2.fc45.noa 100% | 133.2 MiB/s | 2.7 MiB | 00m00s [ 7/96] python3-rpm-macros-0:3.14-12.fc 100% | 1.7 MiB/s | 12.5 KiB | 00m00s [ 8/96] python3-setuptools-0:80.10.2-3. 100% | 219.2 MiB/s | 1.8 MiB | 00m00s [ 9/96] python3-pytest-0:9.0.3-1.fc45.n 100% | 92.6 MiB/s | 2.4 MiB | 00m00s [10/96] python3-wheel-1:0.47.0-1.fc45.n 100% | 9.1 MiB/s | 93.6 KiB | 00m00s [11/96] python3-0:3.14.5~rc1-1.fc45.x86 100% | 9.3 MiB/s | 28.7 KiB | 00m00s [12/96] perl-File-Basename-0:2.86-524.f 100% | 5.5 MiB/s | 17.0 KiB | 00m00s [13/96] perl-Getopt-Long-1:2.58-521.fc4 100% | 20.7 MiB/s | 63.6 KiB | 00m00s [14/96] git-core-doc-0:2.54.0-1.fc45.no 100% | 197.0 MiB/s | 3.2 MiB | 00m00s [15/96] perl-Git-0:2.54.0-1.fc45.noarch 100% | 4.1 MiB/s | 38.0 KiB | 00m00s [16/96] perl-IPC-Open3-0:1.24-524.fc45. 100% | 7.8 MiB/s | 24.0 KiB | 00m00s [17/96] perl-PathTools-0:3.94-521.fc44. 100% | 28.4 MiB/s | 87.3 KiB | 00m00s [18/96] perl-TermReadKey-0:2.38-27.fc44 100% | 11.5 MiB/s | 35.5 KiB | 00m00s [19/96] perl-interpreter-4:5.42.2-524.f 100% | 17.7 MiB/s | 72.4 KiB | 00m00s [20/96] perl-lib-0:0.65-524.fc45.x86_64 100% | 4.8 MiB/s | 14.8 KiB | 00m00s [21/96] python-rpm-macros-0:3.14-12.fc4 100% | 9.8 MiB/s | 20.0 KiB | 00m00s [22/96] python3-setuptools_scm-0:10.0.5 100% | 19.2 MiB/s | 58.9 KiB | 00m00s [23/96] python3-iniconfig-0:2.3.0-2.fc4 100% | 6.4 MiB/s | 26.3 KiB | 00m00s [24/96] python3-hatchling-0:1.29.0-1.fc 100% | 28.0 MiB/s | 229.2 KiB | 00m00s [25/96] python3-packaging-0:26.2-1.fc45 100% | 77.2 MiB/s | 237.0 KiB | 00m00s [26/96] python3-pluggy-0:1.6.0-5.fc44.n 100% | 20.1 MiB/s | 61.7 KiB | 00m00s [27/96] python3-pygments-0:2.19.2-1.fc4 100% | 191.0 MiB/s | 2.7 MiB | 00m00s [28/96] expat-0:2.7.5-1.fc45.x86_64 100% | 31.3 MiB/s | 128.1 KiB | 00m00s [29/96] less-0:692-7.fc45.x86_64 100% | 72.3 MiB/s | 222.1 KiB | 00m00s [30/96] openssh-clients-0:10.3p1-2.fc45 100% | 146.4 MiB/s | 749.6 KiB | 00m00s [31/96] python3-libs-0:3.14.5~rc1-1.fc4 100% | 266.2 MiB/s | 10.1 MiB | 00m00s [32/96] perl-Carp-0:1.54-521.fc44.noarc 100% | 2.8 MiB/s | 28.8 KiB | 00m00s [33/96] perl-Exporter-0:5.79-521.fc44.n 100% | 10.0 MiB/s | 30.8 KiB | 00m00s [34/96] perl-Pod-Usage-4:2.05-521.fc44. 100% | 13.2 MiB/s | 40.7 KiB | 00m00s [35/96] perl-base-0:2.27-524.fc45.noarc 100% | 7.9 MiB/s | 16.1 KiB | 00m00s [36/96] perl-Text-ParseWords-0:3.31-521 100% | 5.4 MiB/s | 16.5 KiB | 00m00s [37/96] perl-overload-0:1.40-524.fc45.n 100% | 22.2 MiB/s | 45.4 KiB | 00m00s [38/96] perl-constant-0:1.33-522.fc44.n 100% | 7.5 MiB/s | 22.9 KiB | 00m00s [39/96] perl-Error-1:0.17030-3.fc44.noa 100% | 13.1 MiB/s | 40.3 KiB | 00m00s [40/96] perl-Fcntl-0:1.20-524.fc45.x86_ 100% | 9.6 MiB/s | 29.6 KiB | 00m00s [41/96] perl-IO-0:1.55-524.fc45.x86_64 100% | 27.3 MiB/s | 83.9 KiB | 00m00s [42/96] perl-POSIX-0:2.23-524.fc45.x86_ 100% | 31.5 MiB/s | 96.9 KiB | 00m00s [43/96] perl-Symbol-0:1.09-524.fc45.noa 100% | 6.9 MiB/s | 14.1 KiB | 00m00s [44/96] perl-Errno-0:1.38-524.fc45.x86_ 100% | 7.2 MiB/s | 14.8 KiB | 00m00s [45/96] perl-Scalar-List-Utils-5:1.70-2 100% | 24.5 MiB/s | 75.4 KiB | 00m00s [46/96] perl-DynaLoader-0:1.57-524.fc45 100% | 8.4 MiB/s | 25.9 KiB | 00m00s [47/96] perl-libs-4:5.42.2-524.fc45.x86 100% | 198.5 MiB/s | 2.6 MiB | 00m00s [48/96] perl-vars-0:1.05-524.fc45.noarc 100% | 1.8 MiB/s | 12.9 KiB | 00m00s [49/96] python3-pathspec-0:1.1.1-1.fc45 100% | 27.2 MiB/s | 111.4 KiB | 00m00s [50/96] python3-trove-classifiers-0:202 100% | 4.7 MiB/s | 33.9 KiB | 00m00s [51/96] python3-vcs-versioning-0:1.1.1- 100% | 46.9 MiB/s | 192.3 KiB | 00m00s [52/96] mpdecimal-0:4.0.1-3.fc44.x86_64 100% | 48.4 MiB/s | 99.1 KiB | 00m00s [53/96] python-pip-wheel-0:26.0.1-2.fc4 100% | 191.6 MiB/s | 1.1 MiB | 00m00s [54/96] tzdata-0:2026a-1.fc45.noarch 100% | 116.1 MiB/s | 713.3 KiB | 00m00s [55/96] libedit-0:3.1-58.20251016cvs.fc 100% | 53.5 MiB/s | 109.7 KiB | 00m00s [56/96] openssh-0:10.3p1-2.fc45.x86_64 100% | 109.5 MiB/s | 336.3 KiB | 00m00s [57/96] perl-Pod-Perldoc-0:3.28.01-522. 100% | 42.0 MiB/s | 86.1 KiB | 00m00s [58/96] perl-podlators-1:6.0.2-521.fc44 100% | 41.8 MiB/s | 128.5 KiB | 00m00s [59/96] perl-mro-0:1.29-524.fc45.x86_64 100% | 9.7 MiB/s | 29.7 KiB | 00m00s [60/96] perl-overloading-0:0.02-524.fc4 100% | 4.2 MiB/s | 12.8 KiB | 00m00s [61/96] perl-File-stat-0:1.14-524.fc45. 100% | 5.5 MiB/s | 16.9 KiB | 00m00s [62/96] perl-SelectSaver-0:1.02-524.fc4 100% | 5.7 MiB/s | 11.6 KiB | 00m00s [63/96] perl-Socket-4:2.041-1.fc45.x86_ 100% | 26.9 MiB/s | 55.1 KiB | 00m00s [64/96] perl-locale-0:1.13-524.fc45.noa 100% | 6.5 MiB/s | 13.4 KiB | 00m00s [65/96] groff-base-0:1.24.0-1.fc45.x86_ 100% | 204.7 MiB/s | 1.2 MiB | 00m00s [66/96] perl-File-Temp-1:0.231.200-2.fc 100% | 14.5 MiB/s | 59.6 KiB | 00m00s [67/96] perl-HTTP-Tiny-0:0.092-2.fc44.n 100% | 27.9 MiB/s | 57.2 KiB | 00m00s [68/96] perl-Pod-Simple-1:3.48-1.fc45.n 100% | 109.5 MiB/s | 224.3 KiB | 00m00s [69/96] perl-parent-1:0.244-521.fc44.no 100% | 7.3 MiB/s | 14.9 KiB | 00m00s [70/96] perl-Term-ANSIColor-0:5.01-522. 100% | 23.3 MiB/s | 47.7 KiB | 00m00s [71/96] perl-Term-Cap-0:1.18-521.fc44.n 100% | 10.7 MiB/s | 22.0 KiB | 00m00s [72/96] perl-Class-Struct-0:0.68-524.fc 100% | 10.7 MiB/s | 22.0 KiB | 00m00s [73/96] perl-File-Path-0:2.18-522.fc44. 100% | 17.2 MiB/s | 35.3 KiB | 00m00s [74/96] perl-IO-Socket-SSL-0:2.098-2.fc 100% | 76.4 MiB/s | 234.7 KiB | 00m00s [75/96] perl-MIME-Base64-0:3.16-521.fc4 100% | 9.7 MiB/s | 29.8 KiB | 00m00s [76/96] perl-Net-SSLeay-0:1.96-1.fc45.x 100% | 92.1 MiB/s | 377.1 KiB | 00m00s [77/96] perl-Time-HiRes-4:1.9778-521.fc 100% | 14.0 MiB/s | 57.2 KiB | 00m00s [78/96] perl-Time-Local-2:1.350-521.fc4 100% | 11.2 MiB/s | 34.5 KiB | 00m00s [79/96] perl-Pod-Escapes-1:1.07-521.fc4 100% | 9.7 MiB/s | 19.8 KiB | 00m00s [80/96] perl-Text-Tabs+Wrap-0:2024.001- 100% | 10.6 MiB/s | 21.8 KiB | 00m00s [81/96] perl-if-0:0.61.000-524.fc45.noa 100% | 6.8 MiB/s | 13.9 KiB | 00m00s [82/96] perl-IO-Socket-IP-0:0.43-522.fc 100% | 20.6 MiB/s | 42.2 KiB | 00m00s [83/96] ncurses-0:6.6-2.fc45.x86_64 100% | 140.4 MiB/s | 431.4 KiB | 00m00s [84/96] perl-URI-0:5.34-3.fc44.noarch 100% | 48.6 MiB/s | 149.2 KiB | 00m00s [85/96] perl-AutoLoader-0:5.74-524.fc45 100% | 10.3 MiB/s | 21.1 KiB | 00m00s [86/96] perl-MIME-Base32-0:1.303-25.fc4 100% | 10.0 MiB/s | 20.5 KiB | 00m00s [87/96] perl-Data-Dumper-0:2.191-522.fc 100% | 27.6 MiB/s | 56.5 KiB | 00m00s [88/96] perl-libnet-0:3.15-522.fc44.noa 100% | 41.8 MiB/s | 128.4 KiB | 00m00s [89/96] perl-B-0:1.89-524.fc45.x86_64 100% | 58.3 MiB/s | 179.1 KiB | 00m00s [90/96] perl-Digest-MD5-0:2.59-521.fc44 100% | 17.6 MiB/s | 36.0 KiB | 00m00s [91/96] perl-FileHandle-0:2.05-524.fc45 100% | 7.5 MiB/s | 15.4 KiB | 00m00s [92/96] perl-Digest-0:1.20-521.fc44.noa 100% | 8.1 MiB/s | 24.9 KiB | 00m00s [93/96] perl-Encode-4:3.24-524.fc45.x86 100% | 150.7 MiB/s | 1.1 MiB | 00m00s [94/96] perl-Getopt-Std-0:1.14-524.fc45 100% | 3.8 MiB/s | 15.6 KiB | 00m00s [95/96] perl-Storable-1:3.37-522.fc44.x 100% | 32.8 MiB/s | 100.9 KiB | 00m00s [96/96] git-core-0:2.54.0-1.fc45.x86_64 100% | 26.2 MiB/s | 5.4 MiB | 00m00s -------------------------------------------------------------------------------- [96/96] Total 100% | 163.8 MiB/s | 42.3 MiB | 00m00s Running transaction [ 1/98] Verify package files 100% | 619.0 B/s | 96.0 B | 00m00s [ 2/98] Prepare transaction 100% | 1.4 KiB/s | 96.0 B | 00m00s [ 3/98] Installing expat-0:2.7.5-1.fc45 100% | 17.6 MiB/s | 325.0 KiB | 00m00s [ 4/98] Installing python-rpm-macros-0: 100% | 0.0 B/s | 28.9 KiB | 00m00s [ 5/98] Installing python3-rpm-macros-0 100% | 0.0 B/s | 6.8 KiB | 00m00s [ 6/98] Installing ncurses-0:6.6-2.fc45 100% | 23.2 MiB/s | 618.0 KiB | 00m00s [ 7/98] Installing groff-base-0:1.24.0- 100% | 105.7 MiB/s | 4.2 MiB | 00m00s [ 8/98] Installing perl-Digest-0:1.20-5 100% | 36.2 MiB/s | 37.1 KiB | 00m00s [ 9/98] Installing perl-Digest-MD5-0:2. 100% | 60.0 MiB/s | 61.5 KiB | 00m00s [10/98] Installing perl-FileHandle-0:2. 100% | 0.0 B/s | 9.8 KiB | 00m00s [11/98] Installing perl-B-0:1.89-524.fc 100% | 246.4 MiB/s | 504.5 KiB | 00m00s [12/98] Installing perl-libnet-0:3.15-5 100% | 143.9 MiB/s | 294.7 KiB | 00m00s [13/98] Installing perl-Data-Dumper-0:2 100% | 114.7 MiB/s | 117.4 KiB | 00m00s [14/98] Installing perl-MIME-Base32-0:1 100% | 31.4 MiB/s | 32.2 KiB | 00m00s [15/98] Installing perl-URI-0:5.34-3.fc 100% | 91.7 MiB/s | 281.8 KiB | 00m00s [16/98] Installing perl-AutoLoader-0:5. 100% | 0.0 B/s | 21.0 KiB | 00m00s [17/98] Installing perl-IO-Socket-IP-0: 100% | 99.8 MiB/s | 102.2 KiB | 00m00s [18/98] Installing perl-IO-Socket-SSL-0 100% | 236.9 MiB/s | 727.6 KiB | 00m00s [19/98] Installing perl-Net-SSLeay-0:1. 100% | 271.7 MiB/s | 1.4 MiB | 00m00s [20/98] Installing perl-if-0:0.61.000-5 100% | 0.0 B/s | 6.2 KiB | 00m00s [21/98] Installing perl-Text-Tabs+Wrap- 100% | 0.0 B/s | 23.9 KiB | 00m00s [22/98] Installing perl-Pod-Escapes-1:1 100% | 0.0 B/s | 25.9 KiB | 00m00s [23/98] Installing perl-Time-Local-2:1. 100% | 68.9 MiB/s | 70.6 KiB | 00m00s [24/98] Installing perl-Time-HiRes-4:1. 100% | 114.9 MiB/s | 117.7 KiB | 00m00s [25/98] Installing perl-File-Path-0:2.1 100% | 0.0 B/s | 64.5 KiB | 00m00s [26/98] Installing perl-locale-0:1.13-5 100% | 0.0 B/s | 6.5 KiB | 00m00s [27/98] Installing perl-HTTP-Tiny-0:0.0 100% | 155.9 MiB/s | 159.7 KiB | 00m00s [28/98] Installing perl-Pod-Simple-1:3. 100% | 281.0 MiB/s | 575.6 KiB | 00m00s [29/98] Installing perl-File-Temp-1:0.2 100% | 161.6 MiB/s | 165.5 KiB | 00m00s [30/98] Installing perl-Class-Struct-0: 100% | 0.0 B/s | 25.9 KiB | 00m00s [31/98] Installing perl-IPC-Open3-0:1.2 100% | 0.0 B/s | 28.5 KiB | 00m00s [32/98] Installing perl-Term-Cap-0:1.18 100% | 0.0 B/s | 30.6 KiB | 00m00s [33/98] Installing perl-Term-ANSIColor- 100% | 96.9 MiB/s | 99.2 KiB | 00m00s [34/98] Installing perl-POSIX-0:2.23-52 100% | 225.2 MiB/s | 230.6 KiB | 00m00s [35/98] Installing perl-Pod-Perldoc-0:3 100% | 9.2 MiB/s | 169.2 KiB | 00m00s [36/98] Installing perl-podlators-1:6.0 100% | 18.5 MiB/s | 321.4 KiB | 00m00s [37/98] Installing perl-File-stat-0:1.1 100% | 0.0 B/s | 13.1 KiB | 00m00s [38/98] Installing perl-Socket-4:2.041- 100% | 119.8 MiB/s | 122.7 KiB | 00m00s [39/98] Installing perl-SelectSaver-0:1 100% | 0.0 B/s | 2.6 KiB | 00m00s [40/98] Installing perl-Symbol-0:1.09-5 100% | 0.0 B/s | 7.3 KiB | 00m00s [41/98] Installing perl-Pod-Usage-4:2.0 100% | 5.0 MiB/s | 87.9 KiB | 00m00s [42/98] Installing perl-IO-0:1.55-524.f 100% | 148.0 MiB/s | 151.5 KiB | 00m00s [43/98] Installing perl-overloading-0:0 100% | 0.0 B/s | 5.6 KiB | 00m00s [44/98] Installing perl-mro-0:1.29-524. 100% | 41.6 MiB/s | 42.6 KiB | 00m00s [45/98] Installing perl-Fcntl-0:1.20-52 100% | 0.0 B/s | 49.8 KiB | 00m00s [46/98] Installing perl-base-0:2.27-524 100% | 0.0 B/s | 13.0 KiB | 00m00s [47/98] Installing perl-Text-ParseWords 100% | 0.0 B/s | 14.6 KiB | 00m00s [48/98] Installing perl-File-Basename-0 100% | 0.0 B/s | 14.6 KiB | 00m00s [49/98] Installing perl-Getopt-Long-1:2 100% | 143.8 MiB/s | 147.2 KiB | 00m00s [50/98] Installing perl-Storable-1:3.37 100% | 231.2 MiB/s | 236.7 KiB | 00m00s [51/98] Installing perl-Getopt-Std-0:1. 100% | 0.0 B/s | 11.8 KiB | 00m00s [52/98] Installing perl-MIME-Base64-0:3 100% | 43.1 MiB/s | 44.2 KiB | 00m00s [53/98] Installing perl-parent-1:0.244- 100% | 0.0 B/s | 11.0 KiB | 00m00s [54/98] Installing perl-overload-0:1.40 100% | 0.0 B/s | 72.0 KiB | 00m00s [55/98] Installing perl-vars-0:1.05-524 100% | 0.0 B/s | 4.3 KiB | 00m00s [56/98] Installing perl-Scalar-List-Uti 100% | 145.0 MiB/s | 148.5 KiB | 00m00s [57/98] Installing perl-Errno-0:1.38-52 100% | 0.0 B/s | 8.8 KiB | 00m00s [58/98] Installing perl-constant-0:1.33 100% | 26.7 MiB/s | 27.4 KiB | 00m00s [59/98] Installing perl-Encode-4:3.24-5 100% | 173.8 MiB/s | 4.7 MiB | 00m00s [60/98] Installing perl-DynaLoader-0:1. 100% | 0.0 B/s | 32.5 KiB | 00m00s [61/98] Installing perl-PathTools-0:3.9 100% | 180.1 MiB/s | 184.4 KiB | 00m00s [62/98] Installing perl-Exporter-0:5.79 100% | 0.0 B/s | 55.6 KiB | 00m00s [63/98] Installing perl-Carp-0:1.54-521 100% | 23.3 MiB/s | 47.7 KiB | 00m00s [64/98] Installing perl-libs-4:5.42.2-5 100% | 299.5 MiB/s | 11.7 MiB | 00m00s [65/98] Installing perl-interpreter-4:5 100% | 6.9 MiB/s | 120.4 KiB | 00m00s [66/98] Installing perl-TermReadKey-0:2 100% | 64.5 MiB/s | 66.1 KiB | 00m00s [67/98] Installing perl-lib-0:0.65-524. 100% | 0.0 B/s | 8.9 KiB | 00m00s [68/98] Installing perl-Error-1:0.17030 100% | 78.1 MiB/s | 80.0 KiB | 00m00s [69/98] Installing openssh-0:10.3p1-2.f 100% | 80.5 MiB/s | 1.5 MiB | 00m00s [70/98] Installing libedit-0:3.1-58.202 100% | 243.9 MiB/s | 249.8 KiB | 00m00s [71/98] Installing openssh-clients-0:10 100% | 66.5 MiB/s | 2.0 MiB | 00m00s [72/98] Installing tzdata-0:2026a-1.fc4 100% | 48.8 MiB/s | 1.5 MiB | 00m00s [73/98] Installing python-pip-wheel-0:2 100% | 611.4 MiB/s | 1.2 MiB | 00m00s [74/98] Installing mpdecimal-0:4.0.1-3. 100% | 35.6 MiB/s | 218.6 KiB | 00m00s [75/98] Installing python3-libs-0:3.14. 100% | 356.4 MiB/s | 44.2 MiB | 00m00s [76/98] Installing python3-0:3.14.5~rc1 100% | 1.8 MiB/s | 30.5 KiB | 00m00s [77/98] Installing python3-packaging-0: 100% | 248.6 MiB/s | 1.0 MiB | 00m00s [78/98] Installing python3-pluggy-0:1.6 100% | 106.4 MiB/s | 217.9 KiB | 00m00s [79/98] Installing python3-vcs-versioni 100% | 30.4 MiB/s | 684.7 KiB | 00m00s [80/98] Installing python3-setuptools-0 100% | 263.8 MiB/s | 7.7 MiB | 00m00s [81/98] Installing python3-setuptools_s 100% | 6.9 MiB/s | 127.7 KiB | 00m00s [82/98] Installing python3-iniconfig-0: 100% | 17.6 MiB/s | 54.1 KiB | 00m00s [83/98] Installing python3-pygments-0:2 100% | 217.4 MiB/s | 11.5 MiB | 00m00s [84/98] Installing python3-pathspec-0:1 100% | 142.8 MiB/s | 438.7 KiB | 00m00s [85/98] Installing python3-trove-classi 100% | 6.7 MiB/s | 116.0 KiB | 00m00s [86/98] Installing python3-hatchling-0: 100% | 30.1 MiB/s | 708.4 KiB | 00m00s [87/98] Installing less-0:692-7.fc45.x8 100% | 25.6 MiB/s | 471.3 KiB | 00m00s [88/98] Installing git-core-0:2.54.0-1. 100% | 354.4 MiB/s | 25.2 MiB | 00m00s [89/98] Installing git-core-doc-0:2.54. 100% | 393.7 MiB/s | 18.9 MiB | 00m00s [90/98] Installing git-0:2.54.0-1.fc45. 100% | 0.0 B/s | 59.0 KiB | 00m00s [91/98] Installing perl-Git-0:2.54.0-1. 100% | 63.8 MiB/s | 65.4 KiB | 00m00s [92/98] Installing python3-hatch-vcs-0: 100% | 13.3 MiB/s | 41.0 KiB | 00m00s [93/98] Installing python3-pytest-0:9.0 100% | 352.4 MiB/s | 23.6 MiB | 00m00s [94/98] Installing python3-wheel-1:0.47 100% | 12.7 MiB/s | 273.5 KiB | 00m00s [95/98] Installing python3-pip-0:26.0.1 100% | 175.0 MiB/s | 11.7 MiB | 00m00s [96/98] Installing python3-pyparsing-0: 100% | 343.1 MiB/s | 1.0 MiB | 00m00s [97/98] Installing pyproject-rpm-macros 100% | 146.2 MiB/s | 149.8 KiB | 00m00s [98/98] Installing make-1:4.4.1-12.fc44 100% | 23.4 MiB/s | 1.8 MiB | 00m00s Complete! Building target platforms: x86_64 Building for target x86_64 setting SOURCE_DATE_EPOCH=1582243200 Wrote: /builddir/build/SRPMS/pyrtl-0.12-20260501.0.gita9688753.fc45.src.rpm Updating and loading repositories: fedora 100% | 423.2 KiB/s | 25.4 KiB | 00m00s Copr repository 100% | 143.1 KiB/s | 2.1 KiB | 00m00s Repositories loaded. Nothing to do. Package "git-2.54.0-1.fc45.x86_64" is already installed. Package "make-1:4.4.1-12.fc44.x86_64" is already installed. Package "pyproject-rpm-macros-1.22.1-1.fc45.noarch" is already installed. Package "python3-3.14.5~rc1-1.fc45.x86_64" is already installed. Package "python3-hatch-vcs-0.5.0-7.fc45.noarch" is already installed. Package "python3-pip-26.0.1-2.fc45.noarch" is already installed. Package "python3-pyparsing-3.1.2-15.fc44.noarch" is already installed. Package "python3-pytest-9.0.3-1.fc45.noarch" is already installed. Package "python3-rpm-macros-3.14-12.fc45.noarch" is already installed. Package "python3-setuptools-80.10.2-3.fc45.noarch" is already installed. Package "python3-wheel-1:0.47.0-1.fc45.noarch" is already installed. Finish: build setup for pyrtl-0.12-20260501.0.gita9688753.fc45.src.rpm Start: rpmbuild pyrtl-0.12-20260501.0.gita9688753.fc45.src.rpm Building target platforms: x86_64 Building for target x86_64 setting SOURCE_DATE_EPOCH=1582243200 Executing(%mkbuilddir): /bin/sh -e /var/tmp/rpm-tmp.VCEyTB Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.yKsEjF + umask 022 + cd /builddir/build/BUILD/pyrtl-0.12-build + cd /builddir/build/BUILD/pyrtl-0.12-build + rm -rf pyrtl + /usr/bin/mkdir -p pyrtl + cd pyrtl + /usr/bin/chmod -Rf a+rX,u+w,g-w,o-w . + git clone --depth 1 -n -b development https://github.com/UCSBarchlab/PyRTL.git . Cloning into '.'... + git fetch --depth 1 origin a9688753a3bf4aaac91cf6a664988d90f3624305 From https://github.com/UCSBarchlab/PyRTL * branch a9688753a3bf4aaac91cf6a664988d90f3624305 -> FETCH_HEAD + git reset --hard a9688753a3bf4aaac91cf6a664988d90f3624305 HEAD is now at a968875 Revert `isinstance` changes from 3a1bbd2 because they weren't always working. + git log --format=fuller commit a9688753a3bf4aaac91cf6a664988d90f3624305 Author: Jeremy Lau <30300826+fdxmw@users.noreply.github.com> AuthorDate: Fri May 1 16:57:58 2026 -0700 Commit: Jeremy Lau <30300826+fdxmw@users.noreply.github.com> CommitDate: Fri May 1 17:08:49 2026 -0700 Revert `isinstance` changes from 3a1bbd2 because they weren't always working. 3a1bbd2 attempted to make `wire_struct` and `wire_matrix` pass `isinstance` checks without a call to `as_wires`. This did not work reliably because there is only one `wire_struct` or `wire_matrix` class created for each type, and that one class would get registered as subclasses for different WireVector types. So this example did not work: ``` const_byte = Byte(Byte=0xAB) input_byte = Byte(concatenated_type=pyrtl.Input) # With 3a1bbd2, this would return True, but it should return False. isinstance(const_byte, pyrtl.Input) ``` This commit reverts broken the subclass registration. The safest way to check the actual type of a `wire_struct` or `wire_matrix` is to call `as_wires` to unwrap the `WrappedWireVector`. Added documentation and tests. + RPM_EC=0 ++ jobs -p + exit 0 Executing(%generate_buildrequires): /bin/sh -e /var/tmp/rpm-tmp.llbN68 + umask 022 + cd /builddir/build/BUILD/pyrtl-0.12-build + cd pyrtl + RPM_EC=0 ++ jobs -p + exit 0 Wrote: /builddir/build/SRPMS/pyrtl-0.12-20260501.0.gita9688753.fc45.buildreqs.nosrc.rpm INFO: Going to install missing dynamic buildrequires Updating and loading repositories: fedora 100% | 152.1 KiB/s | 25.4 KiB | 00m00s Copr repository 100% | 153.3 KiB/s | 2.1 KiB | 00m00s Repositories loaded. Nothing to do. Package "git-2.54.0-1.fc45.x86_64" is already installed. Package "make-1:4.4.1-12.fc44.x86_64" is already installed. Package "pyproject-rpm-macros-1.22.1-1.fc45.noarch" is already installed. Package "python3-3.14.5~rc1-1.fc45.x86_64" is already installed. Package "python3-hatch-vcs-0.5.0-7.fc45.noarch" is already installed. Package "python3-pip-26.0.1-2.fc45.noarch" is already installed. Package "python3-pyparsing-3.1.2-15.fc44.noarch" is already installed. Package "python3-pytest-9.0.3-1.fc45.noarch" is already installed. Package "python3-rpm-macros-3.14-12.fc45.noarch" is already installed. Package "python3-setuptools-80.10.2-3.fc45.noarch" is already installed. Package "python3-wheel-1:0.47.0-1.fc45.noarch" is already installed. Building target platforms: x86_64 Building for target x86_64 setting SOURCE_DATE_EPOCH=1582243200 Executing(%generate_buildrequires): /bin/sh -e /var/tmp/rpm-tmp.yakYGE + umask 022 + cd /builddir/build/BUILD/pyrtl-0.12-build + cd pyrtl + RPM_EC=0 ++ jobs -p + exit 0 Executing(%build): /bin/sh -e /var/tmp/rpm-tmp.6ukRD6 + umask 022 + cd /builddir/build/BUILD/pyrtl-0.12-build + CFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + export CFLAGS + CXXFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + export CXXFLAGS + FFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + export FFLAGS + FCFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + export FCFLAGS + VALAFLAGS=-g + export VALAFLAGS + RUSTFLAGS='-Copt-level=3 -Cdebuginfo=2 -Ccodegen-units=1 -Cstrip=none -Cforce-frame-pointers=yes -Clink-arg=-specs=/usr/lib/rpm/redhat/redhat-package-notes --cap-lints=warn' + export RUSTFLAGS + LDFLAGS='-Wl,-z,relro -Wl,--as-needed -Wl,-z,pack-relative-relocs -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-hardened-ld-errors -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 -specs=/usr/lib/rpm/redhat/redhat-package-notes ' + export LDFLAGS + LT_SYS_LIBRARY_PATH=/usr/lib64: + export LT_SYS_LIBRARY_PATH + CC=gcc + export CC + CXX=g++ + export CXX + cd pyrtl + mkdir -p /builddir/build/BUILD/pyrtl-0.12-build/.pyproject-builddir + CFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + CXXFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + FFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + FCFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + VALAFLAGS=-g + RUSTFLAGS='-Copt-level=3 -Cdebuginfo=2 -Ccodegen-units=1 -Cstrip=none -Cforce-frame-pointers=yes -Clink-arg=-specs=/usr/lib/rpm/redhat/redhat-package-notes --cap-lints=warn' + LDFLAGS='-Wl,-z,relro -Wl,--as-needed -Wl,-z,pack-relative-relocs -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-hardened-ld-errors -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 -specs=/usr/lib/rpm/redhat/redhat-package-notes ' + LT_SYS_LIBRARY_PATH=/usr/lib64: + CC=gcc + CXX=g++ + TMPDIR=/builddir/build/BUILD/pyrtl-0.12-build/.pyproject-builddir + /usr/bin/python3 -Bs /usr/lib/rpm/redhat/pyproject_wheel.py /builddir/build/BUILD/pyrtl-0.12-build/pyproject-wheeldir Processing ./. Preparing metadata (pyproject.toml): started Running command Preparing metadata (pyproject.toml) /usr/lib/python3.14/site-packages/vcs_versioning/_backends/_git.py:377: UserWarning: "/builddir/build/BUILD/pyrtl-0.12-build/pyrtl" is shallow and may cause errors pre_parse(wd) Preparing metadata (pyproject.toml): finished with status 'done' Building wheels for collected packages: pyrtl Building wheel for pyrtl (pyproject.toml): started Running command Building wheel for pyrtl (pyproject.toml) Building wheel for pyrtl (pyproject.toml): finished with status 'done' Created wheel for pyrtl: filename=pyrtl-0.1.dev1+ga9688753a-py3-none-any.whl size=210223 sha256=308d40e26a945ddefa97655e6aedfee51b411bd9fc989f8bb106b0492baa50eb Stored in directory: /builddir/build/BUILD/pyrtl-0.12-build/.pyproject-builddir/pip-ephem-wheel-cache-4_jsi35r/wheels/dc/d0/a8/31cf61239c2ceafaa19783017cc6543c480a9b6d23002238d4 Successfully built pyrtl + RPM_EC=0 ++ jobs -p + exit 0 Executing(%install): /bin/sh -e /var/tmp/rpm-tmp.cRMqmy + umask 022 + cd /builddir/build/BUILD/pyrtl-0.12-build + '[' /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT '!=' / ']' + rm -rf /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT ++ dirname /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT + mkdir -p /builddir/build/BUILD/pyrtl-0.12-build + mkdir /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT + CFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + export CFLAGS + CXXFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + export CXXFLAGS + FFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + export FFLAGS + FCFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + export FCFLAGS + VALAFLAGS=-g + export VALAFLAGS + RUSTFLAGS='-Copt-level=3 -Cdebuginfo=2 -Ccodegen-units=1 -Cstrip=none -Cforce-frame-pointers=yes -Clink-arg=-specs=/usr/lib/rpm/redhat/redhat-package-notes --cap-lints=warn' + export RUSTFLAGS + LDFLAGS='-Wl,-z,relro -Wl,--as-needed -Wl,-z,pack-relative-relocs -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-hardened-ld-errors -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 -specs=/usr/lib/rpm/redhat/redhat-package-notes ' + export LDFLAGS + LT_SYS_LIBRARY_PATH=/usr/lib64: + export LT_SYS_LIBRARY_PATH + CC=gcc + export CC + CXX=g++ + export CXX + cd pyrtl ++ ls /builddir/build/BUILD/pyrtl-0.12-build/pyproject-wheeldir/pyrtl-0.1.dev1+ga9688753a-py3-none-any.whl ++ xargs basename --multiple ++ sed -E 's/([^-]+)-([^-]+)-.+\.whl/\1==\2/' + specifier=pyrtl==0.1.dev1+ga9688753a + '[' -z pyrtl==0.1.dev1+ga9688753a ']' + TMPDIR=/builddir/build/BUILD/pyrtl-0.12-build/.pyproject-builddir + /usr/bin/python3 -m pip install --root /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT --prefix /usr --no-deps --disable-pip-version-check --progress-bar off --verbose --ignore-installed --no-warn-script-location --no-index --no-cache-dir --find-links /builddir/build/BUILD/pyrtl-0.12-build/pyproject-wheeldir pyrtl==0.1.dev1+ga9688753a Using pip 26.0.1 from /usr/lib/python3.14/site-packages/pip (python 3.14) Looking in links: /builddir/build/BUILD/pyrtl-0.12-build/pyproject-wheeldir Processing /builddir/build/BUILD/pyrtl-0.12-build/pyproject-wheeldir/pyrtl-0.1.dev1+ga9688753a-py3-none-any.whl Installing collected packages: pyrtl Successfully installed pyrtl-0.1.dev1+ga9688753a + '[' -d /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT/usr/bin ']' + rm -f /builddir/build/BUILD/pyrtl-0.12-build/pyrtl-0.12-20260501.0.gita9688753.fc45.x86_64-pyproject-ghost-distinfo + site_dirs=() + '[' -d /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT/usr/lib/python3.14/site-packages ']' + site_dirs+=("/usr/lib/python3.14/site-packages") + '[' /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT/usr/lib64/python3.14/site-packages '!=' /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT/usr/lib/python3.14/site-packages ']' + '[' -d /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT/usr/lib64/python3.14/site-packages ']' + for site_dir in ${site_dirs[@]} + for distinfo in /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT$site_dir/*.dist-info + echo '%ghost %dir /usr/lib/python3.14/site-packages/pyrtl-0.1.dev1+ga9688753a.dist-info' + sed -i s/pip/rpm/ /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT/usr/lib/python3.14/site-packages/pyrtl-0.1.dev1+ga9688753a.dist-info/INSTALLER + PYTHONPATH=/usr/lib/rpm/redhat + /usr/bin/python3 -B /usr/lib/rpm/redhat/pyproject_preprocess_record.py --buildroot /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT --record /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT/usr/lib/python3.14/site-packages/pyrtl-0.1.dev1+ga9688753a.dist-info/RECORD --output /builddir/build/BUILD/pyrtl-0.12-build/pyrtl-0.12-20260501.0.gita9688753.fc45.x86_64-pyproject-record + rm -fv /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT/usr/lib/python3.14/site-packages/pyrtl-0.1.dev1+ga9688753a.dist-info/RECORD removed '/builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT/usr/lib/python3.14/site-packages/pyrtl-0.1.dev1+ga9688753a.dist-info/RECORD' + rm -fv /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT/usr/lib/python3.14/site-packages/pyrtl-0.1.dev1+ga9688753a.dist-info/REQUESTED removed '/builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT/usr/lib/python3.14/site-packages/pyrtl-0.1.dev1+ga9688753a.dist-info/REQUESTED' + '[' -f /builddir/build/BUILD/pyrtl-0.12-build/pyrtl-0.12-20260501.0.gita9688753.fc45.x86_64-pyproject-dep-overrides ']' ++ wc -l /builddir/build/BUILD/pyrtl-0.12-build/pyrtl-0.12-20260501.0.gita9688753.fc45.x86_64-pyproject-ghost-distinfo ++ cut -f1 '-d ' + lines=1 + '[' 1 -ne 1 ']' + rm -rf /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT//usr/lib/python3.14/site-packages/tests + /usr/lib/rpm/check-buildroot + /usr/lib/rpm/redhat/brp-ldconfig + COMPRESS='gzip -9 -n' + COMPRESS_EXT=.gz + /usr/lib/rpm/brp-compress + /usr/lib/rpm/brp-strip /usr/bin/strip + /usr/lib/rpm/brp-strip-comment-note /usr/bin/strip /usr/bin/objdump + /usr/lib/rpm/redhat/brp-strip-lto /usr/bin/strip + /usr/lib/rpm/check-rpaths + /usr/lib/rpm/redhat/brp-mangle-shebangs + /usr/lib/rpm/brp-remove-la-files + /usr/lib/rpm/redhat/brp-python-rpm-in-distinfo + env /usr/lib/rpm/redhat/brp-python-bytecompile '' 1 0 -j4 Bytecompiling .py files below /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT/usr/lib/python3.14 using python3.14 + /usr/lib/rpm/redhat/brp-python-hardlink + /usr/bin/add-det --brp -j4 /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT/usr/lib/python3.14/site-packages/pyrtl/__pycache__/transform.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT/usr/lib/python3.14/site-packages/pyrtl/__pycache__/visualization.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT/usr/lib/python3.14/site-packages/pyrtl/__pycache__/pyrtlexceptions.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT/usr/lib/python3.14/site-packages/pyrtl/__pycache__/passes.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT/usr/lib/python3.14/site-packages/pyrtl/__pycache__/wire.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT/usr/lib/python3.14/site-packages/pyrtl/__pycache__/memory.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT/usr/lib/python3.14/site-packages/pyrtl/__pycache__/simulation.cpython-314.pyc: replacing with normalized version /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT/usr/lib/python3.14/site-packages/pyrtl/__pycache__/gate_graph.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT/usr/lib/python3.14/site-packages/pyrtl/__pycache__/simulation.cpython-314.opt-1.pyc: replacing with normalized version /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT/usr/lib/python3.14/site-packages/pyrtl/__pycache__/conditional.cpython-314.opt-1.pyc: replacing with normalized version /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT/usr/lib/python3.14/site-packages/pyrtl/__pycache__/helperfuncs.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT/usr/lib/python3.14/site-packages/pyrtl/__pycache__/conditional.cpython-314.pyc: replacing with normalized version /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT/usr/lib/python3.14/site-packages/pyrtl/__pycache__/corecircuits.cpython-314.opt-1.pyc: replacing with normalized version /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT/usr/lib/python3.14/site-packages/pyrtl/__pycache__/corecircuits.cpython-314.pyc: replacing with normalized version /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT/usr/lib/python3.14/site-packages/pyrtl/__pycache__/compilesim.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT/usr/lib/python3.14/site-packages/pyrtl/__pycache__/importexport.cpython-314.opt-1.pyc: replacing with normalized version /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT/usr/lib/python3.14/site-packages/pyrtl/__pycache__/__init__.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT/usr/lib/python3.14/site-packages/pyrtl/rtllib/__pycache__/testingutils.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT/usr/lib/python3.14/site-packages/pyrtl/__pycache__/core.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT/usr/lib/python3.14/site-packages/pyrtl/rtllib/__pycache__/muxes.cpython-314.opt-1.pyc: replacing with normalized version /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT/usr/lib/python3.14/site-packages/pyrtl/__pycache__/analysis.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT/usr/lib/python3.14/site-packages/pyrtl/rtllib/__pycache__/multipliers.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT/usr/lib/python3.14/site-packages/pyrtl/rtllib/__pycache__/muxes.cpython-314.pyc: replacing with normalized version /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT/usr/lib/python3.14/site-packages/pyrtl/rtllib/__pycache__/prngs.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT/usr/lib/python3.14/site-packages/pyrtl/rtllib/__pycache__/barrel.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT/usr/lib/python3.14/site-packages/pyrtl/rtllib/__pycache__/libutils.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT/usr/lib/python3.14/site-packages/pyrtl/rtllib/__pycache__/adders.cpython-314.opt-1.pyc: replacing with normalized version /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT/usr/lib/python3.14/site-packages/pyrtl/__pycache__/importexport.cpython-314.pyc: replacing with normalized version /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT/usr/lib/python3.14/site-packages/pyrtl/rtllib/__pycache__/aes.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT/usr/lib/python3.14/site-packages/pyrtl/rtllib/__pycache__/__init__.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT/usr/lib/python3.14/site-packages/pyrtl/rtllib/pyrtlfloat/__pycache__/_types.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT/usr/lib/python3.14/site-packages/pyrtl/rtllib/__pycache__/adders.cpython-314.pyc: replacing with normalized version /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT/usr/lib/python3.14/site-packages/pyrtl/rtllib/pyrtlfloat/__pycache__/floatoperations.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT/usr/lib/python3.14/site-packages/pyrtl/rtllib/pyrtlfloat/__pycache__/_multiplication.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT/usr/lib/python3.14/site-packages/pyrtl/rtllib/pyrtlfloat/__pycache__/__init__.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT/usr/lib/python3.14/site-packages/pyrtl/rtllib/pyrtlfloat/__pycache__/_float_utils.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT/usr/lib/python3.14/site-packages/pyrtl/rtllib/__pycache__/matrix.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT/usr/lib/python3.14/site-packages/pyrtl/rtllib/pyrtlfloat/__pycache__/_add_sub.cpython-314.opt-1.pyc: rewriting with normalized contents Scanned 13 directories and 100 files, processed 38 inodes, 38 modified (12 replaced + 26 rewritten), 0 unsupported format, 0 errors + /usr/bin/linkdupes --brp /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT/usr Scanned 12 directories and 100 files, considered 100 files, read 0 files, linked 0 files, 0 errors sum of sizes of linked files: 0 bytes Executing(%check): /bin/sh -e /var/tmp/rpm-tmp.dDG5ji + umask 022 + cd /builddir/build/BUILD/pyrtl-0.12-build + CFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + export CFLAGS + CXXFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + export CXXFLAGS + FFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + export FFLAGS + FCFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + export FCFLAGS + VALAFLAGS=-g + export VALAFLAGS + RUSTFLAGS='-Copt-level=3 -Cdebuginfo=2 -Ccodegen-units=1 -Cstrip=none -Cforce-frame-pointers=yes -Clink-arg=-specs=/usr/lib/rpm/redhat/redhat-package-notes --cap-lints=warn' + export RUSTFLAGS + LDFLAGS='-Wl,-z,relro -Wl,--as-needed -Wl,-z,pack-relative-relocs -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-hardened-ld-errors -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 -specs=/usr/lib/rpm/redhat/redhat-package-notes ' + export LDFLAGS + LT_SYS_LIBRARY_PATH=/usr/lib64: + export LT_SYS_LIBRARY_PATH + CC=gcc + export CC + CXX=g++ + export CXX + cd pyrtl + export PYTHONPATH=/builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT/usr/lib/python3.14/site-packages + PYTHONPATH=/builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT/usr/lib/python3.14/site-packages + python3 -m pytest -vv tests ============================= test session starts ============================== platform linux -- Python 3.14.5rc1, pytest-9.0.3, pluggy-1.6.0 -- /usr/bin/python3 cachedir: .pytest_cache rootdir: /builddir/build/BUILD/pyrtl-0.12-build/pyrtl configfile: pyproject.toml collecting ... collected 1270 items / 1 skipped tests/rtllib/test_adders.py::TestDocTests::test_doctests PASSED [ 0%] tests/rtllib/test_adders.py::TestAdders::test_carry_save_1 PASSED [ 0%] tests/rtllib/test_adders.py::TestAdders::test_carrylookahead_1 PASSED [ 0%] tests/rtllib/test_adders.py::TestAdders::test_fast_group_adder_1 PASSED [ 0%] tests/rtllib/test_adders.py::TestAdders::test_kogge_stone_1 PASSED [ 0%] tests/rtllib/test_adders.py::TestAdders::test_ripple_1 PASSED [ 0%] tests/rtllib/test_aes.py::TestAESDecrypt::test_aes_full PASSED [ 0%] tests/rtllib/test_aes.py::TestAESDecrypt::test_aes_state_machine PASSED [ 0%] tests/rtllib/test_aes.py::TestAESDecrypt::test_inv_mix_columns PASSED [ 0%] tests/rtllib/test_aes.py::TestAESDecrypt::test_inv_shift_rows PASSED [ 0%] tests/rtllib/test_aes.py::TestAESDecrypt::test_inv_sub_bytes PASSED [ 0%] tests/rtllib/test_aes.py::TestAESEncrypt::test_aes_full PASSED [ 0%] tests/rtllib/test_aes.py::TestAESEncrypt::test_aes_state_machine PASSED [ 1%] tests/rtllib/test_aes.py::TestAESEncrypt::test_mix_columns PASSED [ 1%] tests/rtllib/test_aes.py::TestAESEncrypt::test_shift_rows PASSED [ 1%] tests/rtllib/test_aes.py::TestAESEncrypt::test_sub_bytes PASSED [ 1%] tests/rtllib/test_barrel.py::TestDocTests::test_doctests PASSED [ 1%] tests/rtllib/test_barrel.py::TestBarrel::test_shift_left PASSED [ 1%] tests/rtllib/test_barrel.py::TestBarrel::test_shift_right PASSED [ 1%] tests/rtllib/test_libutils.py::TestPartitionWire::test_failing_partition PASSED [ 1%] tests/rtllib/test_libutils.py::TestPartitionWire::test_partition_sim PASSED [ 1%] tests/rtllib/test_libutils.py::TestPartitionWire::test_successful_partition PASSED [ 1%] tests/rtllib/test_libutils.py::TestStringConversion::test_binary_conversion PASSED [ 1%] tests/rtllib/test_libutils.py::TestStringConversion::test_empty PASSED [ 1%] tests/rtllib/test_libutils.py::TestStringConversion::test_invalid_bin_str PASSED [ 1%] tests/rtllib/test_libutils.py::TestStringConversion::test_invalid_str PASSED [ 2%] tests/rtllib/test_libutils.py::TestStringConversion::test_multiline PASSED [ 2%] tests/rtllib/test_libutils.py::TestStringConversion::test_no_override PASSED [ 2%] tests/rtllib/test_libutils.py::TestStringConversion::test_simple_conversion PASSED [ 2%] tests/rtllib/test_libutils.py::TestTwosComp::test_inverse_functionality PASSED [ 2%] tests/rtllib/test_libutils.py::TestTwosComp::test_low_bw_error PASSED [ 2%] tests/rtllib/test_libutils.py::TestTwosComp::test_twos_comp_sim PASSED [ 2%] tests/rtllib/test_matrix.py::TestMatrixInit::test_init_basic PASSED [ 2%] tests/rtllib/test_matrix.py::TestMatrixInit::test_init_basic_wirevector PASSED [ 2%] tests/rtllib/test_matrix.py::TestMatrixInit::test_init_fail_bad_number_of_columns PASSED [ 2%] tests/rtllib/test_matrix.py::TestMatrixInit::test_init_fail_bad_number_of_rows PASSED [ 2%] tests/rtllib/test_matrix.py::TestMatrixInit::test_init_fail_int_instead_of_matrix PASSED [ 2%] tests/rtllib/test_matrix.py::TestMatrixInit::test_init_fail_negative_bits PASSED [ 2%] tests/rtllib/test_matrix.py::TestMatrixInit::test_init_fail_negative_column PASSED [ 3%] tests/rtllib/test_matrix.py::TestMatrixInit::test_init_fail_negative_row PASSED [ 3%] tests/rtllib/test_matrix.py::TestMatrixInit::test_init_fail_string_bit PASSED [ 3%] tests/rtllib/test_matrix.py::TestMatrixInit::test_init_fail_string_column PASSED [ 3%] tests/rtllib/test_matrix.py::TestMatrixInit::test_init_fail_string_row PASSED [ 3%] tests/rtllib/test_matrix.py::TestMatrixInit::test_init_fail_zero_bits PASSED [ 3%] tests/rtllib/test_matrix.py::TestMatrixInit::test_init_fail_zero_bits_wirevector PASSED [ 3%] tests/rtllib/test_matrix.py::TestMatrixInit::test_init_fail_zero_column PASSED [ 3%] tests/rtllib/test_matrix.py::TestMatrixInit::test_init_fail_zero_column_wirevector PASSED [ 3%] tests/rtllib/test_matrix.py::TestMatrixInit::test_init_fail_zero_row PASSED [ 3%] tests/rtllib/test_matrix.py::TestMatrixInit::test_init_fail_zero_row_wirevector PASSED [ 3%] tests/rtllib/test_matrix.py::TestMatrixInit::test_init_one_by_four PASSED [ 3%] tests/rtllib/test_matrix.py::TestMatrixInit::test_init_one_by_four_wirevector PASSED [ 4%] tests/rtllib/test_matrix.py::TestMatrixInit::test_init_random PASSED [ 4%] tests/rtllib/test_matrix.py::TestMatrixInit::test_init_random_wirevector PASSED [ 4%] tests/rtllib/test_matrix.py::TestMatrixInit::test_init_three_by_three PASSED [ 4%] tests/rtllib/test_matrix.py::TestMatrixInit::test_init_three_by_three_wirevector PASSED [ 4%] tests/rtllib/test_matrix.py::TestMatrixInit::test_init_wirevector_mismatch PASSED [ 4%] tests/rtllib/test_matrix.py::TestMatrixBits::test_bits_basic_change_bits PASSED [ 4%] tests/rtllib/test_matrix.py::TestMatrixBits::test_bits_basic_change_bits_trunicate PASSED [ 4%] tests/rtllib/test_matrix.py::TestMatrixBits::test_bits_fail_change_bits_negative PASSED [ 4%] tests/rtllib/test_matrix.py::TestMatrixBits::test_bits_fail_change_bits_string PASSED [ 4%] tests/rtllib/test_matrix.py::TestMatrixBits::test_bits_fail_change_bits_zero PASSED [ 4%] tests/rtllib/test_matrix.py::TestMatrixBits::test_bits_no_change PASSED [ 4%] tests/rtllib/test_matrix.py::TestMatrixGetItem::test_getitem_2_3_slice PASSED [ 4%] tests/rtllib/test_matrix.py::TestMatrixGetItem::test_getitem_2_by_2_slice PASSED [ 5%] tests/rtllib/test_matrix.py::TestMatrixGetItem::test_getitem_3_2_slice PASSED [ 5%] tests/rtllib/test_matrix.py::TestMatrixGetItem::test_getitem_3_by_3_slice PASSED [ 5%] tests/rtllib/test_matrix.py::TestMatrixGetItem::test_getitem_basic_case PASSED [ 5%] tests/rtllib/test_matrix.py::TestMatrixGetItem::test_getitem_fail_out_of_bounds_columns PASSED [ 5%] tests/rtllib/test_matrix.py::TestMatrixGetItem::test_getitem_fail_out_of_bounds_columns_negative PASSED [ 5%] tests/rtllib/test_matrix.py::TestMatrixGetItem::test_getitem_fail_out_of_bounds_columns_slice PASSED [ 5%] tests/rtllib/test_matrix.py::TestMatrixGetItem::test_getitem_fail_out_of_bounds_row_negative PASSED [ 5%] tests/rtllib/test_matrix.py::TestMatrixGetItem::test_getitem_fail_out_of_bounds_rows PASSED [ 5%] tests/rtllib/test_matrix.py::TestMatrixGetItem::test_getitem_fail_out_of_bounds_rows_negative PASSED [ 5%] tests/rtllib/test_matrix.py::TestMatrixGetItem::test_getitem_fail_out_of_bounds_rows_slice PASSED [ 5%] tests/rtllib/test_matrix.py::TestMatrixGetItem::test_getitem_fail_string_column_only PASSED [ 5%] tests/rtllib/test_matrix.py::TestMatrixGetItem::test_getitem_fail_string_columns PASSED [ 5%] tests/rtllib/test_matrix.py::TestMatrixGetItem::test_getitem_fail_string_rows PASSED [ 6%] tests/rtllib/test_matrix.py::TestMatrixGetItem::test_getitem_full PASSED [ 6%] tests/rtllib/test_matrix.py::TestMatrixGetItem::test_getitem_full_row PASSED [ 6%] tests/rtllib/test_matrix.py::TestMatrixGetItem::test_getitem_full_rows_with_slice_back PASSED [ 6%] tests/rtllib/test_matrix.py::TestMatrixGetItem::test_getitem_full_rows_with_slice_front PASSED [ 6%] tests/rtllib/test_matrix.py::TestMatrixGetItem::test_getitem_negative_in_tuple_returns_single PASSED [ 6%] tests/rtllib/test_matrix.py::TestMatrixGetItem::test_getitem_negative_in_tuple_with_slice_returns_column_1 PASSED [ 6%] tests/rtllib/test_matrix.py::TestMatrixGetItem::test_getitem_negative_in_tuple_with_slice_returns_column_2 PASSED [ 6%] tests/rtllib/test_matrix.py::TestMatrixGetItem::test_getitem_negative_in_tuple_with_slice_returns_column_3 PASSED [ 6%] tests/rtllib/test_matrix.py::TestMatrixGetItem::test_getitem_negative_in_tuple_with_slice_returns_row_1 PASSED [ 6%] tests/rtllib/test_matrix.py::TestMatrixGetItem::test_getitem_negative_in_tuple_with_slice_returns_row_2 PASSED [ 6%] tests/rtllib/test_matrix.py::TestMatrixGetItem::test_getitem_negative_in_tuple_with_slice_returns_row_3 PASSED [ 6%] tests/rtllib/test_matrix.py::TestMatrixGetItem::test_getitem_negative_returns_row_v1 PASSED [ 7%] tests/rtllib/test_matrix.py::TestMatrixGetItem::test_getitem_negative_returns_row_v2 PASSED [ 7%] tests/rtllib/test_matrix.py::TestMatrixGetItem::test_getitem_negative_returns_rows PASSED [ 7%] tests/rtllib/test_matrix.py::TestMatrixGetItem::test_getitem_negative_returns_single PASSED [ 7%] tests/rtllib/test_matrix.py::TestMatrixGetItem::test_getitem_with_slice_indices_raw PASSED [ 7%] tests/rtllib/test_matrix.py::TestMatrixGetItem::test_getitem_with_slice_indices_shorthand PASSED [ 7%] tests/rtllib/test_matrix.py::TestMatrixGetItem::test_getitem_with_tuple_indices PASSED [ 7%] tests/rtllib/test_matrix.py::TestMatrixSetItem::test_setitem_2_by_2 PASSED [ 7%] tests/rtllib/test_matrix.py::TestMatrixSetItem::test_setitem_2_by_3 PASSED [ 7%] tests/rtllib/test_matrix.py::TestMatrixSetItem::test_setitem_3_by_2 PASSED [ 7%] tests/rtllib/test_matrix.py::TestMatrixSetItem::test_setitem_3_by_3 PASSED [ 7%] tests/rtllib/test_matrix.py::TestMatrixSetItem::test_setitem_basic_case PASSED [ 7%] tests/rtllib/test_matrix.py::TestMatrixSetItem::test_setitem_fail_out_of_bounds_columns PASSED [ 7%] tests/rtllib/test_matrix.py::TestMatrixSetItem::test_setitem_fail_out_of_bounds_columns_negative PASSED [ 8%] tests/rtllib/test_matrix.py::TestMatrixSetItem::test_setitem_fail_out_of_bounds_columns_slice PASSED [ 8%] tests/rtllib/test_matrix.py::TestMatrixSetItem::test_setitem_fail_out_of_bounds_rows PASSED [ 8%] tests/rtllib/test_matrix.py::TestMatrixSetItem::test_setitem_fail_out_of_bounds_rows_negative PASSED [ 8%] tests/rtllib/test_matrix.py::TestMatrixSetItem::test_setitem_fail_out_of_bounds_rows_slice PASSED [ 8%] tests/rtllib/test_matrix.py::TestMatrixSetItem::test_setitem_fail_string_column PASSED [ 8%] tests/rtllib/test_matrix.py::TestMatrixSetItem::test_setitem_fail_string_row PASSED [ 8%] tests/rtllib/test_matrix.py::TestMatrixSetItem::test_setitem_fail_string_rows_only PASSED [ 8%] tests/rtllib/test_matrix.py::TestMatrixSetItem::test_setitem_fail_value_matrix_incorrect_columns PASSED [ 8%] tests/rtllib/test_matrix.py::TestMatrixSetItem::test_setitem_fail_value_matrix_incorrect_rows PASSED [ 8%] tests/rtllib/test_matrix.py::TestMatrixSetItem::test_setitem_fail_wire_for_matrix PASSED [ 8%] tests/rtllib/test_matrix.py::TestMatrixSetItem::test_setitem_full PASSED [ 8%] tests/rtllib/test_matrix.py::TestMatrixSetItem::test_setitem_full_row_item PASSED [ 8%] tests/rtllib/test_matrix.py::TestMatrixSetItem::test_setitem_full_rows_with_slice_back PASSED [ 9%] tests/rtllib/test_matrix.py::TestMatrixSetItem::test_setitem_full_rows_with_slice_front PASSED [ 9%] tests/rtllib/test_matrix.py::TestMatrixSetItem::test_setitem_negative PASSED [ 9%] tests/rtllib/test_matrix.py::TestMatrixSetItem::test_setitem_raw_int PASSED [ 9%] tests/rtllib/test_matrix.py::TestMatrixSetItem::test_setitem_row_with_negative_index_v1 PASSED [ 9%] tests/rtllib/test_matrix.py::TestMatrixSetItem::test_setitem_row_with_negative_index_v2 PASSED [ 9%] tests/rtllib/test_matrix.py::TestMatrixSetItem::test_setitem_rows_with_negative_index_slice PASSED [ 9%] tests/rtllib/test_matrix.py::TestMatrixSetItem::test_setitem_with_slice_indices_raw PASSED [ 9%] tests/rtllib/test_matrix.py::TestMatrixSetItem::test_setitem_with_slice_indices_shorthand PASSED [ 9%] tests/rtllib/test_matrix.py::TestMatrixSetItem::test_setitem_with_tuple_indices PASSED [ 9%] tests/rtllib/test_matrix.py::TestMatrixCopy::test_copy_basic PASSED [ 9%] tests/rtllib/test_matrix.py::TestMatrixCopy::test_copy_one_by_four PASSED [ 9%] tests/rtllib/test_matrix.py::TestMatrixCopy::test_copy_three_by_three PASSED [ 10%] tests/rtllib/test_matrix.py::TestMatrixTranspose::test_transpose_1_by_4 PASSED [ 10%] tests/rtllib/test_matrix.py::TestMatrixTranspose::test_transpose_3_by_3 PASSED [ 10%] tests/rtllib/test_matrix.py::TestMatrixTranspose::test_transpose_4_by_1 PASSED [ 10%] tests/rtllib/test_matrix.py::TestMatrixTranspose::test_transpose_basic PASSED [ 10%] tests/rtllib/test_matrix.py::TestMatrixReverse::test_reverse_1_by_4 PASSED [ 10%] tests/rtllib/test_matrix.py::TestMatrixReverse::test_reverse_3_by_3 PASSED [ 10%] tests/rtllib/test_matrix.py::TestMatrixReverse::test_reverse_4_by_1 PASSED [ 10%] tests/rtllib/test_matrix.py::TestMatrixReverse::test_reverse_basic PASSED [ 10%] tests/rtllib/test_matrix.py::TestMatrixAdd::test_add_2_by_3 PASSED [ 10%] tests/rtllib/test_matrix.py::TestMatrixAdd::test_add_3_by_2 PASSED [ 10%] tests/rtllib/test_matrix.py::TestMatrixAdd::test_add_3_by_3_different PASSED [ 10%] tests/rtllib/test_matrix.py::TestMatrixAdd::test_add_3_by_3_same PASSED [ 10%] tests/rtllib/test_matrix.py::TestMatrixAdd::test_add_basic_case PASSED [ 11%] tests/rtllib/test_matrix.py::TestMatrixAdd::test_add_fail_2_by_2_add_3_by_3 PASSED [ 11%] tests/rtllib/test_matrix.py::TestMatrixAdd::test_add_fail_3_by_3_add_2_by_3 PASSED [ 11%] tests/rtllib/test_matrix.py::TestMatrixAdd::test_add_fail_3_by_3_add_3_by_2 PASSED [ 11%] tests/rtllib/test_matrix.py::TestMatrixAdd::test_add_fail_add_one PASSED [ 11%] tests/rtllib/test_matrix.py::TestMatrixInplaceAdd::test_iadd_3_by_3_different PASSED [ 11%] tests/rtllib/test_matrix.py::TestMatrixInplaceAdd::test_iadd_3_by_3_same PASSED [ 11%] tests/rtllib/test_matrix.py::TestMatrixInplaceAdd::test_iadd_basic PASSED [ 11%] tests/rtllib/test_matrix.py::TestMatrixInplaceAdd::test_iadd_fail_3_by_3_add_2_by_3 PASSED [ 11%] tests/rtllib/test_matrix.py::TestMatrixInplaceAdd::test_iadd_fail_3_by_3_add_3_by_2 PASSED [ 11%] tests/rtllib/test_matrix.py::TestMatrixSub::test_sub_3_by_3_different PASSED [ 11%] tests/rtllib/test_matrix.py::TestMatrixSub::test_sub_3_by_3_same PASSED [ 11%] tests/rtllib/test_matrix.py::TestMatrixSub::test_sub_basic PASSED [ 11%] tests/rtllib/test_matrix.py::TestMatrixSub::test_sub_fail_3_by_3_sub_2_by_3 PASSED [ 12%] tests/rtllib/test_matrix.py::TestMatrixSub::test_sub_fail_3_by_3_sub_3_by_2 PASSED [ 12%] tests/rtllib/test_matrix.py::TestMatrixSub::test_sub_fail_int PASSED [ 12%] tests/rtllib/test_matrix.py::TestMatrixInplaceSub::test_isub_3_by_3_different_positive_result PASSED [ 12%] tests/rtllib/test_matrix.py::TestMatrixInplaceSub::test_isub_3_by_3_same PASSED [ 12%] tests/rtllib/test_matrix.py::TestMatrixInplaceSub::test_isub_basic PASSED [ 12%] tests/rtllib/test_matrix.py::TestMatrixInplaceSub::test_isub_fail_3_by_3_sub_2_by_3 PASSED [ 12%] tests/rtllib/test_matrix.py::TestMatrixInplaceSub::test_isub_fail_3_by_3_sub_3_by_2 PASSED [ 12%] tests/rtllib/test_matrix.py::TestMatrixMultiply::test_element_wise_multiply_2_by_3 PASSED [ 12%] tests/rtllib/test_matrix.py::TestMatrixMultiply::test_element_wise_multiply_3_by_2 PASSED [ 12%] tests/rtllib/test_matrix.py::TestMatrixMultiply::test_element_wise_multiply_3_by_3_different PASSED [ 12%] tests/rtllib/test_matrix.py::TestMatrixMultiply::test_element_wise_multiply_3_by_3_same PASSED [ 12%] tests/rtllib/test_matrix.py::TestMatrixMultiply::test_element_wise_multiply_basic PASSED [ 12%] tests/rtllib/test_matrix.py::TestMatrixMultiply::test_element_wise_multiply_fail_3_by_3_multiply_2_by_3 PASSED [ 13%] tests/rtllib/test_matrix.py::TestMatrixMultiply::test_element_wise_multiply_fail_3_by_3_multiply_3_by_2 PASSED [ 13%] tests/rtllib/test_matrix.py::TestMatrixMultiply::test_multiply_fail_int PASSED [ 13%] tests/rtllib/test_matrix.py::TestMatrixMultiply::test_multiply_scalar_1_by_4 PASSED [ 13%] tests/rtllib/test_matrix.py::TestMatrixMultiply::test_multiply_scalar_3_by_3 PASSED [ 13%] tests/rtllib/test_matrix.py::TestMatrixMultiply::test_multiply_scalar_4_by_1 PASSED [ 13%] tests/rtllib/test_matrix.py::TestMatrixMultiply::test_multiply_scalar_basic PASSED [ 13%] tests/rtllib/test_matrix.py::TestMatrixMultiply::test_multiply_scalar_basic_one PASSED [ 13%] tests/rtllib/test_matrix.py::TestMatrixMultiply::test_multiply_scalar_basic_zero PASSED [ 13%] tests/rtllib/test_matrix.py::TestMatrixInplaceMultiply::test_element_wise_imultiply_3_by_3_different PASSED [ 13%] tests/rtllib/test_matrix.py::TestMatrixInplaceMultiply::test_element_wise_imultiply_3_by_3_same PASSED [ 13%] tests/rtllib/test_matrix.py::TestMatrixInplaceMultiply::test_element_wise_imultiply_basic PASSED [ 13%] tests/rtllib/test_matrix.py::TestMatrixInplaceMultiply::test_element_wise_imultiply_fail_3_by_3_multiply_2_by_3 PASSED [ 14%] tests/rtllib/test_matrix.py::TestMatrixInplaceMultiply::test_element_wise_imultiply_fail_3_by_3_multiply_3_by_2 PASSED [ 14%] tests/rtllib/test_matrix.py::TestMatrixMatrixMultiply::test_mat_mul_1_by_2_multiply_2_by_1 PASSED [ 14%] tests/rtllib/test_matrix.py::TestMatrixMatrixMultiply::test_mat_mul_3_by_3_multiply_3_by_3_different PASSED [ 14%] tests/rtllib/test_matrix.py::TestMatrixMatrixMultiply::test_mat_mul_3_by_3_multiply_3_by_3_same PASSED [ 14%] tests/rtllib/test_matrix.py::TestMatrixMatrixMultiply::test_mat_mul_basic PASSED [ 14%] tests/rtllib/test_matrix.py::TestMatrixMatrixMultiply::test_mat_mul_fail_3_by_2_multiply_3_by_2 PASSED [ 14%] tests/rtllib/test_matrix.py::TestMatrixMatrixMultiply::test_mat_mul_fail_3_by_3_multiply_2_by_2 PASSED [ 14%] tests/rtllib/test_matrix.py::TestMatrixMatrixMultiply::test_mat_mul_fail_3_by_3_multiply_2_by_3 PASSED [ 14%] tests/rtllib/test_matrix.py::TestMatrixMatrixMultiply::test_mat_mul_fail_int PASSED [ 14%] tests/rtllib/test_matrix.py::TestMatrixInplaceMatrixMultiply::test_imat_mul_1_by_2_multiply_2_by_1 PASSED [ 14%] tests/rtllib/test_matrix.py::TestMatrixInplaceMatrixMultiply::test_imat_mul_3_by_3_multiply_3_by_3_different PASSED [ 14%] tests/rtllib/test_matrix.py::TestMatrixInplaceMatrixMultiply::test_imat_mul_3_by_3_multiply_3_by_3_same PASSED [ 14%] tests/rtllib/test_matrix.py::TestMatrixInplaceMatrixMultiply::test_imat_mul_basic PASSED [ 15%] tests/rtllib/test_matrix.py::TestMatrixInplaceMatrixMultiply::test_imat_mul_fail_3_by_3_multiply_2_by_3 PASSED [ 15%] tests/rtllib/test_matrix.py::TestMatrixInplaceMatrixMultiply::test_imat_mul_fail_3_by_3_multiply_3_by_2 PASSED [ 15%] tests/rtllib/test_matrix.py::TestMatrixMatrixPower::test_matrix_power_3_by_3_power_0 PASSED [ 15%] tests/rtllib/test_matrix.py::TestMatrixMatrixPower::test_matrix_power_3_by_3_power_1 PASSED [ 15%] tests/rtllib/test_matrix.py::TestMatrixMatrixPower::test_matrix_power_3_by_3_power_2 PASSED [ 15%] tests/rtllib/test_matrix.py::TestMatrixMatrixPower::test_matrix_power_fail_negative_power PASSED [ 15%] tests/rtllib/test_matrix.py::TestMatrixMatrixPower::test_matrix_power_fail_nonsquare PASSED [ 15%] tests/rtllib/test_matrix.py::TestMatrixMatrixPower::test_matrix_power_fail_string PASSED [ 15%] tests/rtllib/test_matrix.py::TestMatrixInplaceMatrixPower::test_imatrix_power_3_by_3_power_0 PASSED [ 15%] tests/rtllib/test_matrix.py::TestMatrixInplaceMatrixPower::test_imatrix_power_3_by_3_power_1 PASSED [ 15%] tests/rtllib/test_matrix.py::TestMatrixInplaceMatrixPower::test_imatrix_power_3_by_3_power_2 PASSED [ 15%] tests/rtllib/test_matrix.py::TestMultiply::test_multiply_fail_string PASSED [ 15%] tests/rtllib/test_matrix.py::TestMultiply::test_multiply_matrix PASSED [ 16%] tests/rtllib/test_matrix.py::TestMultiply::test_multiply_scalar PASSED [ 16%] tests/rtllib/test_matrix.py::TestReshape::test_reshape_bad_tuple_shape_1 PASSED [ 16%] tests/rtllib/test_matrix.py::TestReshape::test_reshape_bad_tuple_shape_2 PASSED [ 16%] tests/rtllib/test_matrix.py::TestReshape::test_reshape_bad_tuple_shape_3 PASSED [ 16%] tests/rtllib/test_matrix.py::TestReshape::test_reshape_bad_tuple_shape_4 PASSED [ 16%] tests/rtllib/test_matrix.py::TestReshape::test_reshape_bad_tuple_shape_5 PASSED [ 16%] tests/rtllib/test_matrix.py::TestReshape::test_reshape_bad_tuple_shape_count PASSED [ 16%] tests/rtllib/test_matrix.py::TestReshape::test_reshape_bad_tuple_shape_order PASSED [ 16%] tests/rtllib/test_matrix.py::TestReshape::test_reshape_negative_one_shape PASSED [ 16%] tests/rtllib/test_matrix.py::TestReshape::test_reshape_negative_one_shape_column_order PASSED [ 16%] tests/rtllib/test_matrix.py::TestReshape::test_reshape_nonsquare_incomplete_tuple_shape PASSED [ 16%] tests/rtllib/test_matrix.py::TestReshape::test_reshape_nonsquare_incomplete_tuple_shape_column_order PASSED [ 17%] tests/rtllib/test_matrix.py::TestReshape::test_reshape_nonsquare_incomplete_tuple_with_negative_one_shape PASSED [ 17%] tests/rtllib/test_matrix.py::TestReshape::test_reshape_nonsquare_incomplete_tuple_with_negative_one_shape_column_order PASSED [ 17%] tests/rtllib/test_matrix.py::TestReshape::test_reshape_nonsquare_int_shape PASSED [ 17%] tests/rtllib/test_matrix.py::TestReshape::test_reshape_nonsquare_int_shape_column_order PASSED [ 17%] tests/rtllib/test_matrix.py::TestReshape::test_reshape_nonsquare_negative_one_shape PASSED [ 17%] tests/rtllib/test_matrix.py::TestReshape::test_reshape_nonsquare_negative_one_shape_column_order PASSED [ 17%] tests/rtllib/test_matrix.py::TestReshape::test_reshape_nonsquare_tuple_shape_1 PASSED [ 17%] tests/rtllib/test_matrix.py::TestReshape::test_reshape_nonsquare_tuple_shape_2 PASSED [ 17%] tests/rtllib/test_matrix.py::TestReshape::test_reshape_nonsquare_tuple_shape_3 PASSED [ 17%] tests/rtllib/test_matrix.py::TestReshape::test_reshape_nonsquare_tuple_shape_4 PASSED [ 17%] tests/rtllib/test_matrix.py::TestReshape::test_reshape_nonsquare_tuple_shape_5 PASSED [ 17%] tests/rtllib/test_matrix.py::TestReshape::test_reshape_nonsquare_tuple_shape_column_order_1 PASSED [ 17%] tests/rtllib/test_matrix.py::TestReshape::test_reshape_nonsquare_tuple_shape_column_order_2 PASSED [ 18%] tests/rtllib/test_matrix.py::TestReshape::test_reshape_nonsquare_tuple_shape_column_order_3 PASSED [ 18%] tests/rtllib/test_matrix.py::TestReshape::test_reshape_nonsquare_tuple_shape_column_order_4 PASSED [ 18%] tests/rtllib/test_matrix.py::TestReshape::test_reshape_nonsquare_tuple_shape_column_order_5 PASSED [ 18%] tests/rtllib/test_matrix.py::TestReshape::test_reshape_nonsquare_tuple_with_negative_one_shape_1 PASSED [ 18%] tests/rtllib/test_matrix.py::TestReshape::test_reshape_nonsquare_tuple_with_negative_one_shape_1_column_order PASSED [ 18%] tests/rtllib/test_matrix.py::TestReshape::test_reshape_nonsquare_tuple_with_negative_one_shape_2 PASSED [ 18%] tests/rtllib/test_matrix.py::TestReshape::test_reshape_nonsquare_tuple_with_negative_one_shape_2_column_order PASSED [ 18%] tests/rtllib/test_matrix.py::TestReshape::test_reshape_normal_tuple_shape PASSED [ 18%] tests/rtllib/test_matrix.py::TestReshape::test_reshape_normal_tuple_shape_column_order PASSED [ 18%] tests/rtllib/test_matrix.py::TestReshape::test_reshape_single_int_shape PASSED [ 18%] tests/rtllib/test_matrix.py::TestReshape::test_reshape_single_int_shape_column_order PASSED [ 18%] tests/rtllib/test_matrix.py::TestReshape::test_reshape_tuple_with_negative_one_shape PASSED [ 18%] tests/rtllib/test_matrix.py::TestReshape::test_reshape_tuple_with_negative_one_shape_column_order PASSED [ 19%] tests/rtllib/test_matrix.py::TestReshape::test_reshape_varargs_shape PASSED [ 19%] tests/rtllib/test_matrix.py::TestReshape::test_reshape_varargs_shape_column_order PASSED [ 19%] tests/rtllib/test_matrix.py::TestFlatten::test_flatten_column_wise PASSED [ 19%] tests/rtllib/test_matrix.py::TestFlatten::test_flatten_column_wise_nonsquare_1 PASSED [ 19%] tests/rtllib/test_matrix.py::TestFlatten::test_flatten_column_wise_nonsquare_2 PASSED [ 19%] tests/rtllib/test_matrix.py::TestFlatten::test_flatten_column_wise_nonsquare_3 PASSED [ 19%] tests/rtllib/test_matrix.py::TestFlatten::test_flatten_invalid_order PASSED [ 19%] tests/rtllib/test_matrix.py::TestFlatten::test_flatten_row_wise PASSED [ 19%] tests/rtllib/test_matrix.py::TestFlatten::test_flatten_row_wise_nonsquare_1 PASSED [ 19%] tests/rtllib/test_matrix.py::TestFlatten::test_flatten_row_wise_nonsquare_2 PASSED [ 19%] tests/rtllib/test_matrix.py::TestFlatten::test_flatten_row_wise_nonsquare_3 PASSED [ 19%] tests/rtllib/test_matrix.py::TestPut::test_put_empty PASSED [ 20%] tests/rtllib/test_matrix.py::TestPut::test_put_indices_clip_1 PASSED [ 20%] tests/rtllib/test_matrix.py::TestPut::test_put_indices_clip_2 PASSED [ 20%] tests/rtllib/test_matrix.py::TestPut::test_put_indices_list_repeat_v_1 PASSED [ 20%] tests/rtllib/test_matrix.py::TestPut::test_put_indices_list_repeat_v_2 PASSED [ 20%] tests/rtllib/test_matrix.py::TestPut::test_put_indices_list_values_1 PASSED [ 20%] tests/rtllib/test_matrix.py::TestPut::test_put_indices_list_values_2 PASSED [ 20%] tests/rtllib/test_matrix.py::TestPut::test_put_indices_negative PASSED [ 20%] tests/rtllib/test_matrix.py::TestPut::test_put_indices_raise_1 PASSED [ 20%] tests/rtllib/test_matrix.py::TestPut::test_put_indices_raise_2 PASSED [ 20%] tests/rtllib/test_matrix.py::TestPut::test_put_indices_tuple_values PASSED [ 20%] tests/rtllib/test_matrix.py::TestPut::test_put_indices_wrap_1 PASSED [ 20%] tests/rtllib/test_matrix.py::TestPut::test_put_indices_wrap_2 PASSED [ 20%] tests/rtllib/test_matrix.py::TestPut::test_put_matrix PASSED [ 21%] tests/rtllib/test_matrix.py::TestPut::test_put_tuple_indices PASSED [ 21%] tests/rtllib/test_matrix.py::TestSum::test_sum_1_by_4 PASSED [ 21%] tests/rtllib/test_matrix.py::TestSum::test_sum_1_by_4_column PASSED [ 21%] tests/rtllib/test_matrix.py::TestSum::test_sum_1_by_4_row PASSED [ 21%] tests/rtllib/test_matrix.py::TestSum::test_sum_3_by_3 PASSED [ 21%] tests/rtllib/test_matrix.py::TestSum::test_sum_3_by_3_column PASSED [ 21%] tests/rtllib/test_matrix.py::TestSum::test_sum_3_by_3_row PASSED [ 21%] tests/rtllib/test_matrix.py::TestSum::test_sum_4_by_1 PASSED [ 21%] tests/rtllib/test_matrix.py::TestSum::test_sum_4_by_1_column PASSED [ 21%] tests/rtllib/test_matrix.py::TestSum::test_sum_4_by_1_row PASSED [ 21%] tests/rtllib/test_matrix.py::TestSum::test_sum_basic PASSED [ 21%] tests/rtllib/test_matrix.py::TestSum::test_sum_basic_column PASSED [ 21%] tests/rtllib/test_matrix.py::TestSum::test_sum_basic_row PASSED [ 22%] tests/rtllib/test_matrix.py::TestSum::test_sum_fail_axis_out_of_bounds PASSED [ 22%] tests/rtllib/test_matrix.py::TestSum::test_sum_fail_negative_axis PASSED [ 22%] tests/rtllib/test_matrix.py::TestSum::test_sum_fail_negative_bits PASSED [ 22%] tests/rtllib/test_matrix.py::TestSum::test_sum_fail_string PASSED [ 22%] tests/rtllib/test_matrix.py::TestSum::test_sum_fail_string_axis PASSED [ 22%] tests/rtllib/test_matrix.py::TestSum::test_sum_fail_string_bits PASSED [ 22%] tests/rtllib/test_matrix.py::TestSum::test_sum_fail_zero_bits PASSED [ 22%] tests/rtllib/test_matrix.py::TestSum::test_sum_wire PASSED [ 22%] tests/rtllib/test_matrix.py::TestMin::test_min_1_by_4 PASSED [ 22%] tests/rtllib/test_matrix.py::TestMin::test_min_1_by_4_column PASSED [ 22%] tests/rtllib/test_matrix.py::TestMin::test_min_1_by_4_row PASSED [ 22%] tests/rtllib/test_matrix.py::TestMin::test_min_3_by_3 PASSED [ 22%] tests/rtllib/test_matrix.py::TestMin::test_min_3_by_3_column PASSED [ 23%] tests/rtllib/test_matrix.py::TestMin::test_min_3_by_3_row PASSED [ 23%] tests/rtllib/test_matrix.py::TestMin::test_min_4_by_1 PASSED [ 23%] tests/rtllib/test_matrix.py::TestMin::test_min_4_by_1_column PASSED [ 23%] tests/rtllib/test_matrix.py::TestMin::test_min_4_by_1_row PASSED [ 23%] tests/rtllib/test_matrix.py::TestMin::test_min_basic PASSED [ 23%] tests/rtllib/test_matrix.py::TestMin::test_min_basic_column PASSED [ 23%] tests/rtllib/test_matrix.py::TestMin::test_min_basic_row PASSED [ 23%] tests/rtllib/test_matrix.py::TestMin::test_min_fail_axis_negative PASSED [ 23%] tests/rtllib/test_matrix.py::TestMin::test_min_fail_axis_out_of_bounds PASSED [ 23%] tests/rtllib/test_matrix.py::TestMin::test_min_fail_axis_string PASSED [ 23%] tests/rtllib/test_matrix.py::TestMin::test_min_fail_bits_negative PASSED [ 23%] tests/rtllib/test_matrix.py::TestMin::test_min_fail_bits_string PASSED [ 24%] tests/rtllib/test_matrix.py::TestMin::test_min_fail_bits_zero PASSED [ 24%] tests/rtllib/test_matrix.py::TestMin::test_min_fail_string PASSED [ 24%] tests/rtllib/test_matrix.py::TestMin::test_min_wire PASSED [ 24%] tests/rtllib/test_matrix.py::TestMax::test_max_1_by_4 PASSED [ 24%] tests/rtllib/test_matrix.py::TestMax::test_max_1_by_4_columns PASSED [ 24%] tests/rtllib/test_matrix.py::TestMax::test_max_1_by_4_rows PASSED [ 24%] tests/rtllib/test_matrix.py::TestMax::test_max_3_by_3 PASSED [ 24%] tests/rtllib/test_matrix.py::TestMax::test_max_3_by_3_columns PASSED [ 24%] tests/rtllib/test_matrix.py::TestMax::test_max_3_by_3_rows PASSED [ 24%] tests/rtllib/test_matrix.py::TestMax::test_max_4_by_1 PASSED [ 24%] tests/rtllib/test_matrix.py::TestMax::test_max_4_by_1_columns PASSED [ 24%] tests/rtllib/test_matrix.py::TestMax::test_max_4_by_1_rows PASSED [ 24%] tests/rtllib/test_matrix.py::TestMax::test_max_basic PASSED [ 25%] tests/rtllib/test_matrix.py::TestMax::test_max_basic_columns PASSED [ 25%] tests/rtllib/test_matrix.py::TestMax::test_max_basic_rows PASSED [ 25%] tests/rtllib/test_matrix.py::TestMax::test_max_fail_axis_negative PASSED [ 25%] tests/rtllib/test_matrix.py::TestMax::test_max_fail_axis_out_of_bounds PASSED [ 25%] tests/rtllib/test_matrix.py::TestMax::test_max_fail_axis_string PASSED [ 25%] tests/rtllib/test_matrix.py::TestMax::test_max_fail_bits_negative PASSED [ 25%] tests/rtllib/test_matrix.py::TestMax::test_max_fail_bits_string PASSED [ 25%] tests/rtllib/test_matrix.py::TestMax::test_max_fail_bits_zero PASSED [ 25%] tests/rtllib/test_matrix.py::TestMax::test_max_fail_string PASSED [ 25%] tests/rtllib/test_matrix.py::TestMax::test_max_wire PASSED [ 25%] tests/rtllib/test_matrix.py::TestArgMax::test_argument_max_1_by_4 PASSED [ 25%] tests/rtllib/test_matrix.py::TestArgMax::test_argument_max_1_by_4_columns PASSED [ 25%] tests/rtllib/test_matrix.py::TestArgMax::test_argument_max_1_by_4_rows PASSED [ 26%] tests/rtllib/test_matrix.py::TestArgMax::test_argument_max_3_by_3 PASSED [ 26%] tests/rtllib/test_matrix.py::TestArgMax::test_argument_max_3_by_3_columns PASSED [ 26%] tests/rtllib/test_matrix.py::TestArgMax::test_argument_max_3_by_3_rows PASSED [ 26%] tests/rtllib/test_matrix.py::TestArgMax::test_argument_max_4_by_1 PASSED [ 26%] tests/rtllib/test_matrix.py::TestArgMax::test_argument_max_4_by_1_columns PASSED [ 26%] tests/rtllib/test_matrix.py::TestArgMax::test_argument_max_4_by_1_rows PASSED [ 26%] tests/rtllib/test_matrix.py::TestArgMax::test_argument_max_axis_negative PASSED [ 26%] tests/rtllib/test_matrix.py::TestArgMax::test_argument_max_axis_out_of_bounds PASSED [ 26%] tests/rtllib/test_matrix.py::TestArgMax::test_argument_max_axis_string PASSED [ 26%] tests/rtllib/test_matrix.py::TestArgMax::test_argument_max_basic PASSED [ 26%] tests/rtllib/test_matrix.py::TestArgMax::test_argument_max_basic_columns PASSED [ 26%] tests/rtllib/test_matrix.py::TestArgMax::test_argument_max_basic_rows PASSED [ 27%] tests/rtllib/test_matrix.py::TestArgMax::test_argument_max_bits_negative PASSED [ 27%] tests/rtllib/test_matrix.py::TestArgMax::test_argument_max_bits_string PASSED [ 27%] tests/rtllib/test_matrix.py::TestArgMax::test_argument_max_bits_zero PASSED [ 27%] tests/rtllib/test_matrix.py::TestArgMax::test_argument_max_string PASSED [ 27%] tests/rtllib/test_matrix.py::TestArgMax::test_argument_max_wire PASSED [ 27%] tests/rtllib/test_matrix.py::TestDot::test_dot_1_by_2_multiply_1_by_2 PASSED [ 27%] tests/rtllib/test_matrix.py::TestDot::test_dot_1_by_2_multiply_2_by_1 PASSED [ 27%] tests/rtllib/test_matrix.py::TestDot::test_dot_2_by_1_multiply_1_by_2 PASSED [ 27%] tests/rtllib/test_matrix.py::TestDot::test_dot_2_by_1_multiply_2_by_1 PASSED [ 27%] tests/rtllib/test_matrix.py::TestDot::test_dot_3_by_3_multiply_3_by_3_different PASSED [ 27%] tests/rtllib/test_matrix.py::TestDot::test_dot_3_by_3_multiply_3_by_3_same PASSED [ 27%] tests/rtllib/test_matrix.py::TestDot::test_dot_basic PASSED [ 27%] tests/rtllib/test_matrix.py::TestDot::test_dot_both_wires PASSED [ 28%] tests/rtllib/test_matrix.py::TestDot::test_dot_fail_1_by_2_multiply_1_by_3 PASSED [ 28%] tests/rtllib/test_matrix.py::TestDot::test_dot_fail_3_by_3_multiply_2_by_2 PASSED [ 28%] tests/rtllib/test_matrix.py::TestDot::test_dot_fail_int_first PASSED [ 28%] tests/rtllib/test_matrix.py::TestDot::test_dot_fail_int_second PASSED [ 28%] tests/rtllib/test_matrix.py::TestDot::test_dot_first_wire PASSED [ 28%] tests/rtllib/test_matrix.py::TestDot::test_dot_second_wire PASSED [ 28%] tests/rtllib/test_matrix.py::TestHStack::test_concatenate PASSED [ 28%] tests/rtllib/test_matrix.py::TestHStack::test_hstack_empty_args_fails PASSED [ 28%] tests/rtllib/test_matrix.py::TestHStack::test_hstack_fail_on_inconsistent_rows PASSED [ 28%] tests/rtllib/test_matrix.py::TestHStack::test_hstack_on_non_matrices_fails PASSED [ 28%] tests/rtllib/test_matrix.py::TestHStack::test_hstack_one_row_vector PASSED [ 28%] tests/rtllib/test_matrix.py::TestHStack::test_hstack_several_matrices PASSED [ 28%] tests/rtllib/test_matrix.py::TestHStack::test_hstack_two_row_vectors PASSED [ 29%] tests/rtllib/test_matrix.py::TestVStack::test_concatenate PASSED [ 29%] tests/rtllib/test_matrix.py::TestVStack::test_vstack_empty_args_fails PASSED [ 29%] tests/rtllib/test_matrix.py::TestVStack::test_vstack_fail_on_inconsistent_cols PASSED [ 29%] tests/rtllib/test_matrix.py::TestVStack::test_vstack_on_non_matrices_fails PASSED [ 29%] tests/rtllib/test_matrix.py::TestVStack::test_vstack_one_column_vector PASSED [ 29%] tests/rtllib/test_matrix.py::TestVStack::test_vstack_several_matrix PASSED [ 29%] tests/rtllib/test_matrix.py::TestVStack::test_vstack_two_column_vectors PASSED [ 29%] tests/rtllib/test_matrix.py::TestHelpers::test_list_to_int PASSED [ 29%] tests/rtllib/test_matrix.py::TestHelpers::test_list_to_int_negative PASSED [ 29%] tests/rtllib/test_matrix.py::TestHelpers::test_list_to_int_negative_truncates PASSED [ 29%] tests/rtllib/test_matrix.py::TestHelpers::test_list_to_int_non_positive_n_bits PASSED [ 29%] tests/rtllib/test_matrix.py::TestHelpers::test_list_to_int_truncates PASSED [ 30%] tests/rtllib/test_multipliers.py::TestDocTests::test_doctests PASSED [ 30%] tests/rtllib/test_multipliers.py::TestSimpleMult::test_simple_mult_1 PASSED [ 30%] tests/rtllib/test_multipliers.py::TestSimpleMult::test_simple_mult_2 PASSED [ 30%] tests/rtllib/test_multipliers.py::TestSimpleMult::test_trivial_case PASSED [ 30%] tests/rtllib/test_multipliers.py::TestSimpleMult::test_trivial_case_2 PASSED [ 30%] tests/rtllib/test_multipliers.py::TestSimpleMult::test_trivial_case_3 PASSED [ 30%] tests/rtllib/test_multipliers.py::TestComplexMult::test_complex_mult_1 PASSED [ 30%] tests/rtllib/test_multipliers.py::TestComplexMult::test_complex_mult_2 PASSED [ 30%] tests/rtllib/test_multipliers.py::TestComplexMult::test_complex_mult_3 PASSED [ 30%] tests/rtllib/test_multipliers.py::TestComplexMult::test_complex_mult_4 PASSED [ 30%] tests/rtllib/test_multipliers.py::TestComplexMult::test_trivial_case PASSED [ 30%] tests/rtllib/test_multipliers.py::TestComplexMult::test_trivial_case_2 PASSED [ 30%] tests/rtllib/test_multipliers.py::TestComplexMult::test_trivial_case_3 PASSED [ 31%] tests/rtllib/test_multipliers.py::TestWallace::test_dada_tree PASSED [ 31%] tests/rtllib/test_multipliers.py::TestWallace::test_fma_1 PASSED [ 31%] tests/rtllib/test_multipliers.py::TestWallace::test_gen_fma_1 PASSED [ 31%] tests/rtllib/test_multipliers.py::TestWallace::test_trivial_case PASSED [ 31%] tests/rtllib/test_multipliers.py::TestWallace::test_trivial_case_2 PASSED [ 31%] tests/rtllib/test_multipliers.py::TestWallace::test_trivial_case_3 PASSED [ 31%] tests/rtllib/test_multipliers.py::TestWallace::test_wallace_tree_1 PASSED [ 31%] tests/rtllib/test_multipliers.py::TestWallace::test_wallace_tree_2 PASSED [ 31%] tests/rtllib/test_multipliers.py::TestSignedTreeMult::test_dada_tree PASSED [ 31%] tests/rtllib/test_multipliers.py::TestSignedTreeMult::test_small_bitwidth_error PASSED [ 31%] tests/rtllib/test_multipliers.py::TestSignedTreeMult::test_trivial_case PASSED [ 31%] tests/rtllib/test_multipliers.py::TestSignedTreeMult::test_trivial_case_2 PASSED [ 31%] tests/rtllib/test_multipliers.py::TestSignedTreeMult::test_trivial_case_3 PASSED [ 32%] tests/rtllib/test_multipliers.py::TestSignedTreeMult::test_wallace_tree_1 PASSED [ 32%] tests/rtllib/test_multipliers.py::TestSignedTreeMult::test_wallace_tree_2 PASSED [ 32%] tests/rtllib/test_muxes.py::TestDocTests::test_doctests PASSED [ 32%] tests/rtllib/test_muxes.py::TestPrioritizedMuxTrivial::test_different_sel_and_val_lengths PASSED [ 32%] tests/rtllib/test_muxes.py::TestPrioritizedMuxTrivial::test_empty PASSED [ 32%] tests/rtllib/test_muxes.py::TestPrioritizedMuxTrivial::test_invalid_select_width PASSED [ 32%] tests/rtllib/test_muxes.py::TestPrioritizedMuxTrivial::test_one_wire PASSED [ 32%] tests/rtllib/test_muxes.py::TestPrioritizedMuxSim::test_select_with_2_wires PASSED [ 32%] tests/rtllib/test_muxes.py::TestPrioritizedMuxSim::test_select_with_5_wires PASSED [ 32%] tests/rtllib/test_muxes.py::TestIsEquivalent::test_equivalent PASSED [ 32%] tests/rtllib/test_muxes.py::TestIsEquivalent::test_equivalent_const PASSED [ 32%] tests/rtllib/test_muxes.py::TestSmartMuxTrivial::test_dup_consts1 PASSED [ 32%] tests/rtllib/test_muxes.py::TestSmartMuxTrivial::test_dup_consts2 PASSED [ 33%] tests/rtllib/test_muxes.py::TestSmartMuxTrivial::test_dup_value PASSED [ 33%] tests/rtllib/test_muxes.py::TestSmartMuxTrivial::test_no_dup PASSED [ 33%] tests/rtllib/test_muxes.py::TestSmartMuxTrivial::test_no_dup_2 PASSED [ 33%] tests/rtllib/test_muxes.py::TestSmartMuxTrivial::test_one_value PASSED [ 33%] tests/rtllib/test_muxes.py::TestSmartMux::test_multiple_bitwidths PASSED [ 33%] tests/rtllib/test_muxes.py::TestSmartMux::test_two_big_close PASSED [ 33%] tests/rtllib/test_muxes.py::TestSmartMux::test_two_vals PASSED [ 33%] tests/rtllib/test_muxes.py::TestSmartMux::test_two_vals_big PASSED [ 33%] tests/rtllib/test_muxes.py::TestSmartMuxDefault::test_default PASSED [ 33%] tests/rtllib/test_muxes.py::TestMultiSelector::test_incorrect_number_of_wires PASSED [ 33%] tests/rtllib/test_muxes.py::TestMultiSelector::test_incorrect_number_of_wires_2 PASSED [ 33%] tests/rtllib/test_muxes.py::TestMultiSelector::test_value_already_set PASSED [ 34%] tests/rtllib/test_muxes.py::TestMultiSelectorSim::test_really_simple PASSED [ 34%] tests/rtllib/test_muxes.py::TestMultiSelectorSim::test_simple PASSED [ 34%] tests/rtllib/test_muxes.py::TestDemux::test_demux_2 PASSED [ 34%] tests/rtllib/test_muxes.py::TestDemux::test_large_demux PASSED [ 34%] tests/rtllib/test_muxes.py::TestDemux::test_simple_demux PASSED [ 34%] tests/rtllib/test_prngs.py::TestPrngs::test_csprng_trivium PASSED [ 34%] tests/rtllib/test_prngs.py::TestPrngs::test_prng_lfsr PASSED [ 34%] tests/rtllib/test_prngs.py::TestPrngs::test_prng_xoroshiro128 PASSED [ 34%] tests/rtllib/test_pyrtlfloat.py::TestAddition::test_add_denormalized_flushed_to_zero PASSED [ 34%] tests/rtllib/test_pyrtlfloat.py::TestAddition::test_add_half_plus_half PASSED [ 34%] tests/rtllib/test_pyrtlfloat.py::TestAddition::test_add_infinity_minus_infinity_is_nan PASSED [ 34%] tests/rtllib/test_pyrtlfloat.py::TestAddition::test_add_infinity_to_number PASSED [ 34%] tests/rtllib/test_pyrtlfloat.py::TestAddition::test_add_nan_propagates PASSED [ 35%] tests/rtllib/test_pyrtlfloat.py::TestAddition::test_add_negative_infinity_to_number PASSED [ 35%] tests/rtllib/test_pyrtlfloat.py::TestAddition::test_add_negative_zero_to_number PASSED [ 35%] tests/rtllib/test_pyrtlfloat.py::TestAddition::test_add_one_plus_half PASSED [ 35%] tests/rtllib/test_pyrtlfloat.py::TestAddition::test_add_one_plus_quarter PASSED [ 35%] tests/rtllib/test_pyrtlfloat.py::TestAddition::test_add_one_plus_two PASSED [ 35%] tests/rtllib/test_pyrtlfloat.py::TestAddition::test_add_opposite_signs_equal_magnitude PASSED [ 35%] tests/rtllib/test_pyrtlfloat.py::TestAddition::test_add_with_carry PASSED [ 35%] tests/rtllib/test_pyrtlfloat.py::TestAddition::test_add_zero_to_number PASSED [ 35%] tests/rtllib/test_pyrtlfloat.py::TestAddition::test_carry_g1_r0_s0_lsb0_tie_truncates PASSED [ 35%] tests/rtllib/test_pyrtlfloat.py::TestAddition::test_carry_g1_r0_s0_lsb1_tie_rounds_up PASSED [ 35%] tests/rtllib/test_pyrtlfloat.py::TestAddition::test_overflow_rne_produces_infinity PASSED [ 35%] tests/rtllib/test_pyrtlfloat.py::TestAddition::test_overflow_rtz_produces_largest_finite PASSED [ 35%] tests/rtllib/test_pyrtlfloat.py::TestAddition::test_rounding_g0_r1_s1_truncates PASSED [ 36%] tests/rtllib/test_pyrtlfloat.py::TestAddition::test_rounding_g1_r0_s0_lsb0_tie_truncates PASSED [ 36%] tests/rtllib/test_pyrtlfloat.py::TestAddition::test_rounding_g1_r0_s0_lsb1_tie_rounds_up PASSED [ 36%] tests/rtllib/test_pyrtlfloat.py::TestAddition::test_rounding_g1_r0_s1_rounds_up PASSED [ 36%] tests/rtllib/test_pyrtlfloat.py::TestAddition::test_rounding_g1_r1_s0_rounds_up PASSED [ 36%] tests/rtllib/test_pyrtlfloat.py::TestSubtraction::test_overflow_by_subtracting_negative PASSED [ 36%] tests/rtllib/test_pyrtlfloat.py::TestSubtraction::test_sub_denormalized_flushed_to_zero PASSED [ 36%] tests/rtllib/test_pyrtlfloat.py::TestSubtraction::test_sub_double_negative PASSED [ 36%] tests/rtllib/test_pyrtlfloat.py::TestSubtraction::test_sub_equal_numbers PASSED [ 36%] tests/rtllib/test_pyrtlfloat.py::TestSubtraction::test_sub_exact_no_rounding PASSED [ 36%] tests/rtllib/test_pyrtlfloat.py::TestSubtraction::test_sub_from_zero PASSED [ 36%] tests/rtllib/test_pyrtlfloat.py::TestSubtraction::test_sub_infinity_from_infinity_is_nan PASSED [ 36%] tests/rtllib/test_pyrtlfloat.py::TestSubtraction::test_sub_infinity_from_number PASSED [ 37%] tests/rtllib/test_pyrtlfloat.py::TestSubtraction::test_sub_nan_propagates PASSED [ 37%] tests/rtllib/test_pyrtlfloat.py::TestSubtraction::test_sub_neg_infinity_from_pos_infinity PASSED [ 37%] tests/rtllib/test_pyrtlfloat.py::TestSubtraction::test_sub_neg_zero_minus_neg_zero PASSED [ 37%] tests/rtllib/test_pyrtlfloat.py::TestSubtraction::test_sub_one_point_five_minus_half PASSED [ 37%] tests/rtllib/test_pyrtlfloat.py::TestSubtraction::test_sub_pos_zero_minus_pos_zero PASSED [ 37%] tests/rtllib/test_pyrtlfloat.py::TestSubtraction::test_sub_rne_rounds_up PASSED [ 37%] tests/rtllib/test_pyrtlfloat.py::TestSubtraction::test_sub_three_minus_one PASSED [ 37%] tests/rtllib/test_pyrtlfloat.py::TestSubtraction::test_sub_two_minus_half PASSED [ 37%] tests/rtllib/test_pyrtlfloat.py::TestSubtraction::test_sub_zero_from_number PASSED [ 37%] tests/rtllib/test_pyrtlfloat.py::TestMultiplication::test_mul_both_negative PASSED [ 37%] tests/rtllib/test_pyrtlfloat.py::TestMultiplication::test_mul_by_negative_zero PASSED [ 37%] tests/rtllib/test_pyrtlfloat.py::TestMultiplication::test_mul_by_zero PASSED [ 37%] tests/rtllib/test_pyrtlfloat.py::TestMultiplication::test_mul_denormalized_flushed_to_zero PASSED [ 38%] tests/rtllib/test_pyrtlfloat.py::TestMultiplication::test_mul_half_times_two PASSED [ 38%] tests/rtllib/test_pyrtlfloat.py::TestMultiplication::test_mul_infinity_by_infinity PASSED [ 38%] tests/rtllib/test_pyrtlfloat.py::TestMultiplication::test_mul_infinity_by_number PASSED [ 38%] tests/rtllib/test_pyrtlfloat.py::TestMultiplication::test_mul_infinity_by_zero_is_nan PASSED [ 38%] tests/rtllib/test_pyrtlfloat.py::TestMultiplication::test_mul_nan_propagates PASSED [ 38%] tests/rtllib/test_pyrtlfloat.py::TestMultiplication::test_mul_neg_infinity_by_number PASSED [ 38%] tests/rtllib/test_pyrtlfloat.py::TestMultiplication::test_mul_one_point_five_times_one_point_five PASSED [ 38%] tests/rtllib/test_pyrtlfloat.py::TestMultiplication::test_mul_one_point_five_times_two PASSED [ 38%] tests/rtllib/test_pyrtlfloat.py::TestMultiplication::test_mul_opposite_signs PASSED [ 38%] tests/rtllib/test_pyrtlfloat.py::TestMultiplication::test_mul_pos_infinity_by_neg_infinity PASSED [ 38%] tests/rtllib/test_pyrtlfloat.py::TestMultiplication::test_negative_overflow_rne_produces_neg_infinity PASSED [ 38%] tests/rtllib/test_pyrtlfloat.py::TestMultiplication::test_negative_overflow_rtz_produces_neg_largest_finite PASSED [ 38%] tests/rtllib/test_pyrtlfloat.py::TestMultiplication::test_overflow_rne_produces_infinity PASSED [ 39%] tests/rtllib/test_pyrtlfloat.py::TestMultiplication::test_overflow_rtz_produces_largest_finite PASSED [ 39%] tests/rtllib/test_pyrtlfloat.py::TestMultiplication::test_rounding_g0_s0_truncates PASSED [ 39%] tests/rtllib/test_pyrtlfloat.py::TestMultiplication::test_rounding_g0_s1_truncates PASSED [ 39%] tests/rtllib/test_pyrtlfloat.py::TestMultiplication::test_rounding_g1_l0_s0_tie_truncates PASSED [ 39%] tests/rtllib/test_pyrtlfloat.py::TestMultiplication::test_rounding_g1_l0_s1_rounds_up PASSED [ 39%] tests/rtllib/test_pyrtlfloat.py::TestMultiplication::test_rounding_g1_l1_s0_tie_rounds_up PASSED [ 39%] tests/test_analysis.py::TestAreaEstimate::test_area_est_unchanged PASSED [ 39%] tests/test_analysis.py::TestAreaEstimate::test_area_est_unchanged_with_rom PASSED [ 39%] tests/test_analysis.py::TestTimingEstimate::test_time_est_unchanged PASSED [ 39%] tests/test_analysis.py::TestPaths::test_all_paths PASSED [ 39%] tests/test_analysis.py::TestPaths::test_one_path_to_one_output PASSED [ 39%] tests/test_analysis.py::TestPaths::test_paths_empty_src_and_dst_equal_with_no_other_logic PASSED [ 40%] tests/test_analysis.py::TestPaths::test_paths_loop_and_input PASSED [ 40%] tests/test_analysis.py::TestPaths::test_paths_loop_get_arbitrary_inner_wires PASSED [ 40%] tests/test_analysis.py::TestPaths::test_paths_no_path_exists PASSED [ 40%] tests/test_analysis.py::TestPaths::test_paths_with_loop PASSED [ 40%] tests/test_analysis.py::TestPaths::test_paths_with_memory PASSED [ 40%] tests/test_analysis.py::TestPaths::test_pretty_print PASSED [ 40%] tests/test_analysis.py::TestPaths::test_subset_of_all_paths PASSED [ 40%] tests/test_analysis.py::TestPaths::test_two_paths_to_one_output PASSED [ 40%] tests/test_analysis.py::TestPaths::test_two_paths_to_two_outputs PASSED [ 40%] tests/test_analysis.py::TestDistance::test_several_distances PASSED [ 40%] tests/test_analysis.py::TestDistance::test_simple_distance PASSED [ 40%] tests/test_analysis.py::TestDistance::test_special_cost PASSED [ 40%] tests/test_analysis.py::TestFanout::test_fanout_simple PASSED [ 41%] tests/test_analysis.py::TestFanout::test_fanout_wire_repeated_as_arg PASSED [ 41%] tests/test_analysis.py::TestFanout::test_fanout_wire_repeated_in_concat PASSED [ 41%] tests/test_conditional.py::TestConditional::test_basic_default_condition PASSED [ 41%] tests/test_conditional.py::TestConditional::test_basic_false_condition PASSED [ 41%] tests/test_conditional.py::TestConditional::test_basic_nested_condition PASSED [ 41%] tests/test_conditional.py::TestConditional::test_basic_simple_condition_1 PASSED [ 41%] tests/test_conditional.py::TestConditional::test_basic_true_condition PASSED [ 41%] tests/test_conditional.py::TestConditional::test_basic_two_conditions PASSED [ 41%] tests/test_conditional.py::TestConditional::test_default_value_for_wires PASSED [ 41%] tests/test_conditional.py::TestConditional::test_error_on_conditional_assignment_not_under_conditional PASSED [ 41%] tests/test_conditional.py::TestConditional::test_error_on_non_boolean PASSED [ 41%] tests/test_conditional.py::TestConditional::test_error_on_non_boolean_with_register PASSED [ 41%] tests/test_conditional.py::TestConditional::test_error_on_unconditioned_update_in_under_conditional PASSED [ 42%] tests/test_conditional.py::TestConditional::test_nested_under_default_condition PASSED [ 42%] tests/test_conditional.py::TestConditional::test_short_true_condition PASSED [ 42%] tests/test_conditional.py::TestConditional::test_two_seperate_conditions PASSED [ 42%] tests/test_conditional.py::TestConditional::test_two_signals_under_default_condition PASSED [ 42%] tests/test_conditional.py::TestMemConditionalBlock::test_basic_true_condition_memread PASSED [ 42%] tests/test_conditional.py::TestMemConditionalBlock::test_basic_true_condition_memwrite PASSED [ 42%] tests/test_conditional.py::TestMemConditionalBlock::test_basic_true_condition_memwrite_2 PASSED [ 42%] tests/test_conditional.py::TestMemConditionalBlock::test_true_multi_condition_memread PASSED [ 42%] tests/test_conditional.py::TestWireConditionalBlock::test_basic_condition_wire PASSED [ 42%] tests/test_conditional.py::TestWireConditionalBlock::test_boolean_assignment_condition_wire PASSED [ 42%] tests/test_conditional.py::TestWireConditionalBlock::test_condition_error_when_assigned_wire_has_unspecified_bitwidth PASSED [ 42%] tests/test_conditional.py::TestWireConditionalBlock::test_condition_nice_error_message PASSED [ 42%] tests/test_conditional.py::TestWireConditionalBlock::test_condition_nice_error_message_nested PASSED [ 43%] tests/test_conditional.py::TestWireConditionalBlock::test_condition_nice_error_message_nested2 PASSED [ 43%] tests/test_conditional.py::TestWireConditionalBlock::test_condition_wire PASSED [ 43%] tests/test_conditional.py::TestWireConditionalBlock::test_error_condition_connect_const PASSED [ 43%] tests/test_conditional.py::TestWireConditionalBlock::test_error_condition_connect_input PASSED [ 43%] tests/test_conditional.py::TestWireConditionalBlock::test_nested_condition_wire PASSED [ 43%] tests/test_conditional.py::TestWireConditionalBlock::test_underspecified_condition_wire PASSED [ 43%] tests/test_conditional.py::TestNonExclusiveBlocks::test_basic_nested_non_exclusive_condition PASSED [ 43%] tests/test_conditional.py::TestNonExclusiveBlocks::test_one_deep_nested_non_exclusive_condition PASSED [ 43%] tests/test_conditional.py::TestNonExclusiveBlocks::test_other_overlaping_assignments_in_non_exclusive_assignments PASSED [ 43%] tests/test_conditional.py::TestNonExclusiveBlocks::test_overlaping_assignments_in_non_exclusive_assignments PASSED [ 43%] tests/test_conditional.py::TestSuperWireConditionalBlock::test_super_stress_test PASSED [ 43%] tests/test_core.py::TestDocTests::test_doctests PASSED [ 44%] tests/test_core.py::TestBlock::test_add_wire PASSED [ 44%] tests/test_core.py::TestBlock::test_add_wirevector_simple PASSED [ 44%] tests/test_core.py::TestBlock::test_bad_memblock_name_none PASSED [ 44%] tests/test_core.py::TestBlock::test_bad_memblock_name_strict PASSED [ 44%] tests/test_core.py::TestBlock::test_block_iterators PASSED [ 44%] tests/test_core.py::TestBlock::test_logicsubset_no_op PASSED [ 44%] tests/test_core.py::TestBlock::test_no_logic_net_comparisons PASSED [ 44%] tests/test_core.py::TestBlock::test_no_memblocks PASSED [ 44%] tests/test_core.py::TestBlock::test_same_memblock_referenced_across_multiple_operators PASSED [ 44%] tests/test_core.py::TestBlock::test_sanity_check PASSED [ 44%] tests/test_core.py::TestBlock::test_undriven_net PASSED [ 44%] tests/test_core.py::TestSanityCheckNet::test_net_dest_wrong_arity_or_type PASSED [ 44%] tests/test_core.py::TestSanityCheckNet::test_net_dest_wrong_bitwidth PASSED [ 45%] tests/test_core.py::TestSanityCheckNet::test_net_make_with_not_net PASSED [ 45%] tests/test_core.py::TestSanityCheckNet::test_net_no_tuples PASSED [ 45%] tests/test_core.py::TestSanityCheckNet::test_net_odd_wires PASSED [ 45%] tests/test_core.py::TestSanityCheckNet::test_net_wrong_bitwidth PASSED [ 45%] tests/test_core.py::TestSanityCheckNet::test_net_wrong_num_args PASSED [ 45%] tests/test_core.py::TestSanityCheckNet::test_net_wrong_num_op_params PASSED [ 45%] tests/test_core.py::TestSanityCheckNet::test_net_wrong_op_param_mem PASSED [ 45%] tests/test_core.py::TestSanityCheckNet::test_net_wrong_op_param_select PASSED [ 45%] tests/test_core.py::TestSanityCheckNet::test_net_wrong_types PASSED [ 45%] tests/test_core.py::TestSetWorkingBlock::test_invalid_set_wb PASSED [ 45%] tests/test_core.py::TestSetWorkingBlock::test_invalid_with_set_wb PASSED [ 45%] tests/test_core.py::TestSetWorkingBlock::test_normal PASSED [ 45%] tests/test_core.py::TestSetWorkingBlock::test_with_block PASSED [ 46%] tests/test_core.py::TestSetWorkingBlock::test_with_block_exception PASSED [ 46%] tests/test_core.py::TestSetWorkingBlock::test_with_block_nested PASSED [ 46%] tests/test_core.py::TestAsGraph::test_as_graph_2 PASSED [ 46%] tests/test_core.py::TestAsGraph::test_as_graph_duplicate_args PASSED [ 46%] tests/test_core.py::TestAsGraph::test_as_graph_memory PASSED [ 46%] tests/test_core.py::TestAsGraph::test_as_graph_trivial PASSED [ 46%] tests/test_core.py::TestSanityCheck::test_duplicate_names PASSED [ 46%] tests/test_core.py::TestSanityCheck::test_extra_wire_in_wirevector_by_name PASSED [ 46%] tests/test_core.py::TestSanityCheck::test_inconsistent_wirevector_by_name PASSED [ 46%] tests/test_core.py::TestSanityCheck::test_missing_bitwidth PASSED [ 46%] tests/test_core.py::TestSanityCheck::test_missing_wire_in_wirevector_by_name PASSED [ 46%] tests/test_core.py::TestSanityCheck::test_not_connected PASSED [ 47%] tests/test_core.py::TestSanityCheck::test_not_driven PASSED [ 47%] tests/test_core.py::TestSanityCheck::test_unknown_wires PASSED [ 47%] tests/test_core.py::TestLogicNets::test_comparison PASSED [ 47%] tests/test_core.py::TestLogicNets::test_equivelence_of_different_nets PASSED [ 47%] tests/test_core.py::TestLogicNets::test_equivelence_of_same_nets PASSED [ 47%] tests/test_core.py::TestLogicNets::test_memory_read_print PASSED [ 47%] tests/test_core.py::TestLogicNets::test_memory_write_print PASSED [ 47%] tests/test_core.py::TestLogicNets::test_net_with_wirevectors PASSED [ 47%] tests/test_core.py::TestLogicNets::test_self_equals PASSED [ 47%] tests/test_core.py::TestLogicNets::test_string_format PASSED [ 47%] tests/test_core.py::TestMemAsyncCheck::test_async_check_should_notpass_with_add PASSED [ 47%] tests/test_core.py::TestMemAsyncCheck::test_async_check_should_pass PASSED [ 47%] tests/test_core.py::TestMemAsyncCheck::test_async_check_should_pass_with_cat PASSED [ 48%] tests/test_core.py::TestMemAsyncCheck::test_async_check_should_pass_with_select PASSED [ 48%] tests/test_core.py::TestNetConnections::test_net_connections_normal PASSED [ 48%] tests/test_core.py::TestNetConnections::test_net_connections_should_be_empty_at_start PASSED [ 48%] tests/test_core.py::TestNetConnections::test_net_connections_with_memblock PASSED [ 48%] tests/test_core.py::TestNetConnections::test_wire_not_in_net_connections PASSED [ 48%] tests/test_core.py::TestNameSanitizer::test_name_collision PASSED [ 48%] tests/test_examples.py::test_all_examples[/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/renderer-demo.py] FAILED [ 48%] tests/test_examples.py::test_all_examples[/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/introduction-to-hardware.py] FAILED [ 48%] tests/test_examples.py::test_all_examples[/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/example8-verilog.py] FAILED [ 48%] tests/test_examples.py::test_all_examples[/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/example7-synth-timing.py] FAILED [ 48%] tests/test_examples.py::test_all_examples[/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/example6-memory.py] FAILED [ 48%] tests/test_examples.py::test_all_examples[/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/example5-introspection.py] FAILED [ 48%] tests/test_examples.py::test_all_examples[/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/example4-debuggingtools.py] FAILED [ 49%] tests/test_examples.py::test_all_examples[/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/example3-statemachine.py] FAILED [ 49%] tests/test_examples.py::test_all_examples[/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/example2-counter.py] FAILED [ 49%] tests/test_examples.py::test_all_examples[/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/example1.2-wire-struct.py] FAILED [ 49%] tests/test_examples.py::test_all_examples[/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/example1.1-signed-numbers.py] FAILED [ 49%] tests/test_examples.py::test_all_examples[/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/example1-combologic.py] FAILED [ 49%] tests/test_examples.py::test_all_examples[/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/example0-minimum-viable-hardware.py] FAILED [ 49%] tests/test_gate_graph.py::TestDocTests::test_doctests PASSED [ 49%] tests/test_gate_graph.py::TestGateGraph::test_gate_alias_errors PASSED [ 49%] tests/test_gate_graph.py::TestGateGraph::test_gate_attrs PASSED [ 49%] tests/test_gate_graph.py::TestGateGraph::test_gate_retrieval PASSED [ 49%] tests/test_gate_graph.py::TestGateGraph::test_gate_sets PASSED [ 49%] tests/test_gate_graph.py::TestGateGraph::test_get_gate PASSED [ 50%] tests/test_gate_graph.py::TestGateGraph::test_memblock PASSED [ 50%] tests/test_gate_graph.py::TestGateGraph::test_register_gate_backward PASSED [ 50%] tests/test_gate_graph.py::TestGateGraph::test_register_gate_forward PASSED [ 50%] tests/test_gate_graph.py::TestGateGraph::test_register_self_loop PASSED [ 50%] tests/test_gate_graph.py::TestGateGraph::test_select_gate PASSED [ 50%] tests/test_helperfuncs.py::TestDocTests::test_corecircuits_doctests PASSED [ 50%] tests/test_helperfuncs.py::TestDocTests::test_helperfuncs_doctests PASSED [ 50%] tests/test_helperfuncs.py::TestWireVectorList::test_input_list_type PASSED [ 50%] tests/test_helperfuncs.py::TestWireVectorList::test_output_list_type PASSED [ 50%] tests/test_helperfuncs.py::TestWireVectorList::test_register_list_type PASSED [ 50%] tests/test_helperfuncs.py::TestWireVectorList::test_wirevector_list_bitwidth PASSED [ 50%] tests/test_helperfuncs.py::TestWireVectorList::test_wirevector_list_per_wire_width PASSED [ 50%] tests/test_helperfuncs.py::TestWireVectorList::test_wirevector_list_raise_errors PASSED [ 51%] tests/test_helperfuncs.py::TestWireVectorList::test_wirevector_list_type PASSED [ 51%] tests/test_helperfuncs.py::TestNonCoreHelpers::test_infer_val_and_bitwidth PASSED [ 51%] tests/test_helperfuncs.py::TestNonCoreHelpers::test_log2 PASSED [ 51%] tests/test_helperfuncs.py::TestNonCoreHelpers::test_truncate_function PASSED [ 51%] tests/test_helperfuncs.py::TestNonCoreHelpers::test_val_to_signed_integer PASSED [ 51%] tests/test_helperfuncs.py::TestMatchBitpattern::test_match_bitwidth_does_simulation_correct PASSED [ 51%] tests/test_helperfuncs.py::TestMatchBitpattern::test_match_bitwidth_simulates_no_ones_in_pattern PASSED [ 51%] tests/test_helperfuncs.py::TestMatchBitpattern::test_match_bitwidth_simulates_no_zeroes_in_pattern PASSED [ 51%] tests/test_helperfuncs.py::TestMatchBitpattern::test_match_bitwidth_simulates_only_wildcards PASSED [ 51%] tests/test_helperfuncs.py::TestMatchBitpattern::test_match_bitwidth_with_all_fields PASSED [ 51%] tests/test_helperfuncs.py::TestMatchBitpattern::test_match_bitwidth_with_consecutive_fields PASSED [ 51%] tests/test_helperfuncs.py::TestMatchBitpattern::test_match_bitwidth_with_non_consecutive_field PASSED [ 51%] tests/test_helperfuncs.py::TestMatchBitpattern::test_match_bitwidth_with_pattern_matched_fields PASSED [ 52%] tests/test_helperfuncs.py::TestMatchBitpattern::test_match_bitwidth_with_pattern_matched_fields_by_name PASSED [ 52%] tests/test_helperfuncs.py::TestMatchBitpattern::test_match_bitwidth_with_pattern_matched_fields_with_bad_field_map PASSED [ 52%] tests/test_helperfuncs.py::TestMatchBitpattern::test_match_bitwidth_with_pattern_matched_fields_with_field_map PASSED [ 52%] tests/test_helperfuncs.py::TestMatchBitpattern::test_match_bitwidth_with_several_non_consecutive_fields PASSED [ 52%] tests/test_helperfuncs.py::TestMatchBitpattern::test_pattern_type_or_length_mismatch PASSED [ 52%] tests/test_helperfuncs.py::TestBitpatternToVal::test_error_bitpattern_field_not_provided PASSED [ 52%] tests/test_helperfuncs.py::TestBitpatternToVal::test_error_both_ordered_and_named_fields PASSED [ 52%] tests/test_helperfuncs.py::TestBitpatternToVal::test_error_empty_bitpattern PASSED [ 52%] tests/test_helperfuncs.py::TestBitpatternToVal::test_error_invalid_num_unique_patterns PASSED [ 52%] tests/test_helperfuncs.py::TestBitpatternToVal::test_error_unnamed_fields_in_bitpattern PASSED [ 52%] tests/test_helperfuncs.py::TestBitpatternToVal::test_error_value_doesnt_fit_in_field PASSED [ 52%] tests/test_helperfuncs.py::TestBitpatternToVal::test_fields_all_different PASSED [ 52%] tests/test_helperfuncs.py::TestBitpatternToVal::test_named_fields PASSED [ 53%] tests/test_helperfuncs.py::TestBitpatternToVal::test_named_fields_with_field_map PASSED [ 53%] tests/test_helperfuncs.py::TestBitpatternToVal::test_no_fields PASSED [ 53%] tests/test_helperfuncs.py::TestBitpatternToVal::test_ordered_fields PASSED [ 53%] tests/test_helperfuncs.py::TestChop::test_chop_does_simulation_correct PASSED [ 53%] tests/test_helperfuncs.py::TestChop::test_fields_mismatch PASSED [ 53%] tests/test_helperfuncs.py::TestChop::test_wrong_input_types_fail PASSED [ 53%] tests/test_helperfuncs.py::TestBitField_Update::test_bitfield PASSED [ 53%] tests/test_helperfuncs.py::TestBitField_Update::test_bitfield_all_but_lsb PASSED [ 53%] tests/test_helperfuncs.py::TestBitField_Update::test_bitfield_all_but_msb PASSED [ 53%] tests/test_helperfuncs.py::TestBitField_Update::test_bitfield_lsb PASSED [ 53%] tests/test_helperfuncs.py::TestBitField_Update::test_bitfield_msb PASSED [ 53%] tests/test_helperfuncs.py::TestBitField_Update::test_field_too_big PASSED [ 54%] tests/test_helperfuncs.py::TestBitField_Update::test_field_too_big_truncate PASSED [ 54%] tests/test_helperfuncs.py::TestBitField_Update::test_no_bits_to_update PASSED [ 54%] tests/test_helperfuncs.py::TestBitField_Update_Set::test_bitfield PASSED [ 54%] tests/test_helperfuncs.py::TestBitField_Update_Set::test_field_too_big PASSED [ 54%] tests/test_helperfuncs.py::TestBitField_Update_Set::test_field_too_big_truncate PASSED [ 54%] tests/test_helperfuncs.py::TestBitField_Update_Set::test_no_bits_to_update PASSED [ 54%] tests/test_helperfuncs.py::TestBitField_Update_Set::test_overlapping_ranges PASSED [ 54%] tests/test_helperfuncs.py::TestAnyAll::test_all_does_simulation_correct PASSED [ 54%] tests/test_helperfuncs.py::TestAnyAll::test_all_only_on_1_bit_vectors PASSED [ 54%] tests/test_helperfuncs.py::TestAnyAll::test_all_works_with_consts PASSED [ 54%] tests/test_helperfuncs.py::TestAnyAll::test_any_does_simulation_correct PASSED [ 54%] tests/test_helperfuncs.py::TestAnyAll::test_any_only_on_1_bit_vectors PASSED [ 54%] tests/test_helperfuncs.py::TestAnyAll::test_any_works_with_consts PASSED [ 55%] tests/test_helperfuncs.py::TestTreeReduce::test_empty PASSED [ 55%] tests/test_helperfuncs.py::TestTreeReduce::test_xor PASSED [ 55%] tests/test_helperfuncs.py::TestXorAllBits::test_list_of_long_wires PASSED [ 55%] tests/test_helperfuncs.py::TestXorAllBits::test_list_of_one_bit_wires PASSED [ 55%] tests/test_helperfuncs.py::TestXorAllBits::test_one_wirevector PASSED [ 55%] tests/test_helperfuncs.py::TestMux::test_mux_enough_inputs_with_default PASSED [ 55%] tests/test_helperfuncs.py::TestMux::test_mux_not_enough_inputs PASSED [ 55%] tests/test_helperfuncs.py::TestMux::test_mux_not_enough_inputs_but_default PASSED [ 55%] tests/test_helperfuncs.py::TestMux::test_mux_too_many_inputs PASSED [ 55%] tests/test_helperfuncs.py::TestMux::test_mux_too_many_inputs_with_default PASSED [ 55%] tests/test_helperfuncs.py::TestMuxSimulation::test_mux_with_default PASSED [ 55%] tests/test_helperfuncs.py::TestMuxSimulation::test_select PASSED [ 55%] tests/test_helperfuncs.py::TestMuxSimulation::test_select_no_pred PASSED [ 56%] tests/test_helperfuncs.py::TestMuxSimulation::test_simple_mux_1 PASSED [ 56%] tests/test_helperfuncs.py::TestMuxSimulation::test_simple_mux_2 PASSED [ 56%] tests/test_helperfuncs.py::TestRtlProbe::test_bad_probe_wire PASSED [ 56%] tests/test_helperfuncs.py::TestRtlProbe::test_probe_wire PASSED [ 56%] tests/test_helperfuncs.py::TestRtlProbe::test_simple_probe PASSED [ 56%] tests/test_helperfuncs.py::TestRtlProbe::test_simple_probe_debug PASSED [ 56%] tests/test_helperfuncs.py::TestShiftSimulation::test_sla PASSED [ 56%] tests/test_helperfuncs.py::TestShiftSimulation::test_sla_big PASSED [ 56%] tests/test_helperfuncs.py::TestShiftSimulation::test_sla_big_integer_shift_amount PASSED [ 56%] tests/test_helperfuncs.py::TestShiftSimulation::test_sla_integer_shift_amount PASSED [ 56%] tests/test_helperfuncs.py::TestShiftSimulation::test_sla_over PASSED [ 56%] tests/test_helperfuncs.py::TestShiftSimulation::test_sll PASSED [ 57%] tests/test_helperfuncs.py::TestShiftSimulation::test_sll_big PASSED [ 57%] tests/test_helperfuncs.py::TestShiftSimulation::test_sll_big_integer_shift_amount PASSED [ 57%] tests/test_helperfuncs.py::TestShiftSimulation::test_sll_integer_shift_amount PASSED [ 57%] tests/test_helperfuncs.py::TestShiftSimulation::test_sll_over PASSED [ 57%] tests/test_helperfuncs.py::TestShiftSimulation::test_sra PASSED [ 57%] tests/test_helperfuncs.py::TestShiftSimulation::test_sra_big PASSED [ 57%] tests/test_helperfuncs.py::TestShiftSimulation::test_sra_big_integer_shift_amount PASSED [ 57%] tests/test_helperfuncs.py::TestShiftSimulation::test_sra_integer_shift_amount PASSED [ 57%] tests/test_helperfuncs.py::TestShiftSimulation::test_sra_over PASSED [ 57%] tests/test_helperfuncs.py::TestShiftSimulation::test_srl PASSED [ 57%] tests/test_helperfuncs.py::TestShiftSimulation::test_srl_big PASSED [ 57%] tests/test_helperfuncs.py::TestShiftSimulation::test_srl_big_integer_shift_amount PASSED [ 57%] tests/test_helperfuncs.py::TestShiftSimulation::test_srl_integer_shift_amount PASSED [ 58%] tests/test_helperfuncs.py::TestShiftSimulation::test_srl_over PASSED [ 58%] tests/test_helperfuncs.py::TestBasicMult::test_mult_1 PASSED [ 58%] tests/test_helperfuncs.py::TestBasicMult::test_mult_1_1 PASSED [ 58%] tests/test_helperfuncs.py::TestBasicMult::test_mult_2 PASSED [ 58%] tests/test_helperfuncs.py::TestBasicMult::test_mult_3 PASSED [ 58%] tests/test_helperfuncs.py::TestRtlAssert::test_assert_fastsimulation PASSED [ 58%] tests/test_helperfuncs.py::TestRtlAssert::test_assert_simulation PASSED [ 58%] tests/test_helperfuncs.py::TestRtlAssert::test_bad_type PASSED [ 58%] tests/test_helperfuncs.py::TestRtlAssert::test_create_assert PASSED [ 58%] tests/test_helperfuncs.py::TestRtlAssert::test_duplicate_assert PASSED [ 58%] tests/test_helperfuncs.py::TestRtlAssert::test_invalid_exception_type PASSED [ 58%] tests/test_helperfuncs.py::TestRtlAssert::test_wire_from_another_block PASSED [ 58%] tests/test_helperfuncs.py::TestRtlAssert::test_wire_outside_block PASSED [ 59%] tests/test_helperfuncs.py::TestRtlAssert::test_wrong_len PASSED [ 59%] tests/test_helperfuncs.py::TestLoopDetection::test_edge_case_1 PASSED [ 59%] tests/test_helperfuncs.py::TestLoopDetection::test_loop_1 PASSED [ 59%] tests/test_helperfuncs.py::TestLoopDetection::test_loop_2 PASSED [ 59%] tests/test_helperfuncs.py::TestLoopDetection::test_no_loop_1 PASSED [ 59%] tests/test_helperfuncs.py::TestLoopDetection::test_no_loop_reg_1 PASSED [ 59%] tests/test_helperfuncs.py::TestLoopDetection::test_no_loop_special_ops PASSED [ 59%] tests/test_helperfuncs.py::TestWireStruct::test_anonymous_concatenate PASSED [ 59%] tests/test_helperfuncs.py::TestWireStruct::test_anonymous_pixel_concatenate PASSED [ 59%] tests/test_helperfuncs.py::TestWireStruct::test_anonymous_pixel_slice PASSED [ 59%] tests/test_helperfuncs.py::TestWireStruct::test_anonymous_slice PASSED [ 59%] tests/test_helperfuncs.py::TestWireStruct::test_concatenate PASSED [ 60%] tests/test_helperfuncs.py::TestWireStruct::test_delayed_concatenate PASSED [ 60%] tests/test_helperfuncs.py::TestWireStruct::test_delayed_conditional_concatenate PASSED [ 60%] tests/test_helperfuncs.py::TestWireStruct::test_delayed_conditional_slice PASSED [ 60%] tests/test_helperfuncs.py::TestWireStruct::test_delayed_slice PASSED [ 60%] tests/test_helperfuncs.py::TestWireStruct::test_exceptions PASSED [ 60%] tests/test_helperfuncs.py::TestWireStruct::test_input_concatenate PASSED [ 60%] tests/test_helperfuncs.py::TestWireStruct::test_input_slice PASSED [ 60%] tests/test_helperfuncs.py::TestWireStruct::test_output_concatenate PASSED [ 60%] tests/test_helperfuncs.py::TestWireStruct::test_output_slice PASSED [ 60%] tests/test_helperfuncs.py::TestWireStruct::test_pixel_concatenate PASSED [ 60%] tests/test_helperfuncs.py::TestWireStruct::test_pixel_slice PASSED [ 60%] tests/test_helperfuncs.py::TestWireStruct::test_register_slice PASSED [ 60%] tests/test_helperfuncs.py::TestWireStruct::test_slice PASSED [ 61%] tests/test_helperfuncs.py::TestWireStruct::test_underscore_value_slice PASSED [ 61%] tests/test_helperfuncs.py::TestWireMatrix::test_anonymous_wire_matrix_concatenate PASSED [ 61%] tests/test_helperfuncs.py::TestWireMatrix::test_anonymous_wire_matrix_slice PASSED [ 61%] tests/test_helperfuncs.py::TestWireMatrix::test_byte_matrix_const PASSED [ 61%] tests/test_helperfuncs.py::TestWireMatrix::test_byte_matrix_input_concatenate PASSED [ 61%] tests/test_helperfuncs.py::TestWireMatrix::test_byte_matrix_input_slice PASSED [ 61%] tests/test_helperfuncs.py::TestWireMatrix::test_delayed_concatenate PASSED [ 61%] tests/test_helperfuncs.py::TestWireMatrix::test_delayed_conditional_concatenate PASSED [ 61%] tests/test_helperfuncs.py::TestWireMatrix::test_delayed_conditional_slice PASSED [ 61%] tests/test_helperfuncs.py::TestWireMatrix::test_delayed_slice PASSED [ 61%] tests/test_helperfuncs.py::TestWireMatrix::test_wire_matrix_composition_cached_data PASSED [ 61%] tests/test_helperfuncs.py::TestWireMatrix::test_wire_matrix_composition_dword PASSED [ 61%] tests/test_helperfuncs.py::TestWireMatrix::test_wire_matrix_concatenate PASSED [ 62%] tests/test_helperfuncs.py::TestWireMatrix::test_wire_matrix_exceptions PASSED [ 62%] tests/test_helperfuncs.py::TestWireMatrix::test_wire_matrix_input PASSED [ 62%] tests/test_helperfuncs.py::TestWireMatrix::test_wire_matrix_register PASSED [ 62%] tests/test_helperfuncs.py::TestWireMatrix::test_wire_matrix_slice PASSED [ 62%] tests/test_helperfuncs.py::TestWireMatrix::test_wire_matrix_word_concatenate PASSED [ 62%] tests/test_helperfuncs.py::TestWireMatrix::test_wire_matrix_word_slice PASSED [ 62%] tests/test_helperfuncs.py::TestOneHotToBinary::test_multiple_ones PASSED [ 62%] tests/test_helperfuncs.py::TestOneHotToBinary::test_no_ones PASSED [ 62%] tests/test_helperfuncs.py::TestOneHotToBinary::test_simple_onehot PASSED [ 62%] tests/test_helperfuncs.py::TestBinaryToOneHot::test_simple_binary_to_one_hot PASSED [ 62%] tests/test_helperfuncs.py::TestBinaryToOneHot::test_with_max_bitwidth PASSED [ 62%] tests/test_importexport.py::TestInputFromBlif::test_blif_and_gate_correct PASSED [ 62%] tests/test_importexport.py::TestInputFromBlif::test_blif_error_bad_coverset PASSED [ 63%] tests/test_importexport.py::TestInputFromBlif::test_blif_error_zeroes_in_offset PASSED [ 63%] tests/test_importexport.py::TestInputFromBlif::test_blif_input_simulates_correctly_with_merged_outputs PASSED [ 63%] tests/test_importexport.py::TestInputFromBlif::test_blif_input_simulates_correctly_with_unmerged_outputs PASSED [ 63%] tests/test_importexport.py::TestInputFromBlif::test_blif_nand_gate_to_primitives_correct PASSED [ 63%] tests/test_importexport.py::TestInputFromBlif::test_blif_nor_gate_correct PASSED [ 63%] tests/test_importexport.py::TestInputFromBlif::test_blif_not_gate_correct PASSED [ 63%] tests/test_importexport.py::TestInputFromBlif::test_blif_or_gate_correct PASSED [ 63%] tests/test_importexport.py::TestInputFromBlif::test_blif_with_clock_passing PASSED [ 63%] tests/test_importexport.py::TestInputFromBlif::test_blif_with_multiple_modules_merged_io PASSED [ 63%] tests/test_importexport.py::TestInputFromBlif::test_blif_with_multiple_modules_unmerged_io PASSED [ 63%] tests/test_importexport.py::TestInputFromBlif::test_blif_with_output_as_arg PASSED [ 63%] tests/test_importexport.py::TestInputFromBlif::test_blif_xor_gate_correct PASSED [ 64%] tests/test_importexport.py::TestInputFromBlif::test_combo_blif_input_has_correct_io_interface PASSED [ 64%] tests/test_importexport.py::TestInputFromBlif::test_correct_interface_with_unmerged_io PASSED [ 64%] tests/test_importexport.py::TestInputFromBlif::test_sequential_blif_input_has_correct_io_interface PASSED [ 64%] tests/test_importexport.py::TestInputFromBlif::test_sequential_blif_input_has_correct_io_interface_counter PASSED [ 64%] tests/test_importexport.py::TestVerilogNames::test_verilog_check_valid_name_bad PASSED [ 64%] tests/test_importexport.py::TestVerilogNames::test_verilog_check_valid_name_good PASSED [ 64%] tests/test_importexport.py::TestVerilogOutput::test_bit_slice_inputs PASSED [ 64%] tests/test_importexport.py::TestVerilogOutput::test_custom_module_name PASSED [ 64%] tests/test_importexport.py::TestVerilogOutput::test_error_existing_reset_wire PASSED [ 64%] tests/test_importexport.py::TestVerilogOutput::test_error_invalid_add_reset PASSED [ 64%] tests/test_importexport.py::TestVerilogOutput::test_existing_reset_wire_without_add_reset PASSED [ 64%] tests/test_importexport.py::TestVerilogOutput::test_mems_with_no_writes PASSED [ 64%] tests/test_importexport.py::TestVerilogOutput::test_register_reset_value PASSED [ 65%] tests/test_importexport.py::TestVerilogOutput::test_romblock_does_not_throw_error PASSED [ 65%] tests/test_importexport.py::TestVerilogOutput::test_textual_consistency_large PASSED [ 65%] tests/test_importexport.py::TestVerilogOutput::test_textual_consistency_small PASSED [ 65%] tests/test_importexport.py::TestVerilogOutput::test_textual_consistency_with_async_reset PASSED [ 65%] tests/test_importexport.py::TestVerilogOutput::test_textual_consistency_with_no_reset PASSED [ 65%] tests/test_importexport.py::TestVerilogOutput::test_textual_consistency_with_sync_reset PASSED [ 65%] tests/test_importexport.py::TestVerilogInput::test_error_import_bad_file SKIPPED [ 65%] tests/test_importexport.py::TestVerilogInput::test_import_counter SKIPPED [ 65%] tests/test_importexport.py::TestVerilogInput::test_import_counter_with_reset SKIPPED [ 65%] tests/test_importexport.py::TestVerilogInput::test_import_multi_module_auto_select_top_module SKIPPED [ 65%] tests/test_importexport.py::TestVerilogInput::test_import_multi_module_specified_module SKIPPED [ 65%] tests/test_importexport.py::TestVerilogInput::test_import_small SKIPPED [ 65%] tests/test_importexport.py::TestOutputTestbench::test_custom_module_name_testbench PASSED [ 66%] tests/test_importexport.py::TestOutputTestbench::test_error_verilog_testbench_existing_reset_wire PASSED [ 66%] tests/test_importexport.py::TestOutputTestbench::test_error_verilog_testbench_invalid_add_reset PASSED [ 66%] tests/test_importexport.py::TestOutputTestbench::test_only_initialize_memblocks PASSED [ 66%] tests/test_importexport.py::TestOutputTestbench::test_verilog_testbench_consistency PASSED [ 66%] tests/test_importexport.py::TestOutputTestbench::test_verilog_testbench_does_not_throw_error PASSED [ 66%] tests/test_importexport.py::TestOutputTestbench::test_verilog_testbench_existing_reset_wire_without_add_reset PASSED [ 66%] tests/test_importexport.py::TestOutputTestbench::test_verilog_testbench_no_reset_consistency PASSED [ 66%] tests/test_importexport.py::TestOutputFirrtl::test_textual_consistency_concats PASSED [ 66%] tests/test_importexport.py::TestOutputFirrtl::test_textual_consistency_selects PASSED [ 66%] tests/test_importexport.py::TestInputISCASBench::test_bench_with_same_io_name PASSED [ 66%] tests/test_importexport.py::TestInputISCASBench::test_combinational_bench PASSED [ 66%] tests/test_importexport.py::TestInputISCASBench::test_sequential_bench PASSED [ 67%] tests/test_importexport.py::TestInputISCASBench::test_simulation_bench PASSED [ 67%] tests/test_memblock.py::TestDocTests::test_doctests PASSED [ 67%] tests/test_memblock.py::RTLMemBlockDesignBase::test_2read_1write PASSED [ 67%] tests/test_memblock.py::RTLMemBlockDesignBase::test_memblock_added_default_named PASSED [ 67%] tests/test_memblock.py::RTLMemBlockDesignBase::test_memblock_added_user_named PASSED [ 67%] tests/test_memblock.py::RTLMemBlockDesignBase::test_memblock_assign_with_extension PASSED [ 67%] tests/test_memblock.py::RTLMemBlockDesignBase::test_memblock_connection_with_ints PASSED [ 67%] tests/test_memblock.py::RTLMemBlockDesignBase::test_memblock_direct_assignment_error PASSED [ 67%] tests/test_memblock.py::RTLMemBlockDesignBase::test_memblock_simple PASSED [ 67%] tests/test_memblock.py::RTLMemBlockDesignBase::test_memblock_to_memblock_direct_operation PASSED [ 67%] tests/test_memblock.py::RTLMemBlockDesignBase::test_memblock_with_write_enable_with_equalsign PASSED [ 67%] tests/test_memblock.py::RTLMemBlockDesignBase::test_over_max_read_ports PASSED [ 67%] tests/test_memblock.py::RTLMemBlockDesignBase::test_over_max_write_ports PASSED [ 68%] tests/test_memblock.py::RTLMemBlockErrorTests::test_memblock_enable_signal_not_1_bit PASSED [ 68%] tests/test_memblock.py::RTLMemBlockErrorTests::test_memblock_write_data_larger_than_memory_bitwidth PASSED [ 68%] tests/test_memblock.py::RTLMemBlockErrorTests::test_memindex_bitwidth_greater_than_addrwidth PASSED [ 68%] tests/test_memblock.py::RTLMemBlockErrorTests::test_negative_addrwidth PASSED [ 68%] tests/test_memblock.py::RTLMemBlockErrorTests::test_negative_bitwidth PASSED [ 68%] tests/test_memblock.py::RTLMemBlockErrorTests::test_read_ports_exception PASSED [ 68%] tests/test_memblock.py::MemIndexedTests::test_memindexed_getitem PASSED [ 68%] tests/test_memblock.py::MemIndexedTests::test_memindexed_len PASSED [ 68%] tests/test_memblock.py::MemIndexedTests::test_memindexed_name PASSED [ 68%] tests/test_memblock.py::MemIndexedTests::test_memindexed_sign_extended PASSED [ 68%] tests/test_memblock.py::MemIndexedTests::test_memindexed_zero_extended PASSED [ 68%] tests/test_memblock.py::MemIndexedTests::test_read_memindexed_ilshift PASSED [ 68%] tests/test_memblock.py::MemIndexedTests::test_read_memindexed_ior PASSED [ 69%] tests/test_memblock.py::MemIndexedTests::test_write_memindexed_ilshift PASSED [ 69%] tests/test_memblock.py::MemIndexedTests::test_write_memindexed_ior PASSED [ 69%] tests/test_memblock.py::RTLRomBlockWiring::test_direct_assignment_error PASSED [ 69%] tests/test_memblock.py::RTLRomBlockWiring::test_int_index_error PASSED [ 69%] tests/test_memblock.py::RTLRomBlockWiring::test_other_non_wire_index_error PASSED [ 69%] tests/test_memblock.py::RTLRomBlockWiring::test_read PASSED [ 69%] tests/test_memblock.py::RTLRomBlockWiring::test_rom_to_rom_direct_operation PASSED [ 69%] tests/test_memblock.py::RTLRomBlockWiring::test_write PASSED [ 69%] tests/test_memblock.py::RTLRomGetReadData::test_build_new_roms PASSED [ 69%] tests/test_memblock.py::RTLRomGetReadData::test_invalid_address PASSED [ 69%] tests/test_memblock.py::RTLRomGetReadData::test_invalid_address_types PASSED [ 69%] tests/test_memblock.py::RTLRomGetReadData::test_invalid_value_function PASSED [ 70%] tests/test_memblock.py::RTLRomGetReadData::test_out_of_range PASSED [ 70%] tests/test_memblock.py::RTLRomGetReadData::test_over_max_read_ports PASSED [ 70%] tests/test_memblock.py::RTLRomGetReadData::test_valid_get_read PASSED [ 70%] tests/test_memblock.py::RTLRomGetReadData::test_value_out_of_range PASSED [ 70%] tests/test_memblock.py::TestSignedRomBlockData::test_negative_romdata PASSED [ 70%] tests/test_memblock.py::TestSignedRomBlockData::test_unsigned_romdata PASSED [ 70%] tests/test_passes.py::TestSynthesis::test_and_simulation PASSED [ 70%] tests/test_passes.py::TestSynthesis::test_const_nobitwidth_simulation PASSED [ 70%] tests/test_passes.py::TestSynthesis::test_minus_simulation PASSED [ 70%] tests/test_passes.py::TestSynthesis::test_minus_simulation2 PASSED [ 70%] tests/test_passes.py::TestSynthesis::test_mux_simulation PASSED [ 70%] tests/test_passes.py::TestSynthesis::test_not_simulation PASSED [ 70%] tests/test_passes.py::TestSynthesis::test_or_simulation PASSED [ 71%] tests/test_passes.py::TestSynthesis::test_plus_simulation PASSED [ 71%] tests/test_passes.py::TestSynthesis::test_synthesize_regs_mapped_correctly PASSED [ 71%] tests/test_passes.py::TestSynthesis::test_xor_simulation PASSED [ 71%] tests/test_passes.py::TestIOInterfaceSynthesis::test_synthesize_does_not_update_working_block PASSED [ 71%] tests/test_passes.py::TestIOInterfaceSynthesis::test_synthesize_merged_io_mapped_correctly PASSED [ 71%] tests/test_passes.py::TestIOInterfaceSynthesis::test_synthesize_merged_io_names_correct PASSED [ 71%] tests/test_passes.py::TestIOInterfaceSynthesis::test_synthesize_merged_io_simulates_correctly PASSED [ 71%] tests/test_passes.py::TestIOInterfaceSynthesis::test_synthesize_unmerged_io_mapped_correctly PASSED [ 71%] tests/test_passes.py::TestIOInterfaceSynthesis::test_synthesize_unmerged_io_names_correct PASSED [ 71%] tests/test_passes.py::TestIOInterfaceSynthesis::test_synthesize_unmerged_io_simulates_correctly PASSED [ 71%] tests/test_passes.py::TestMultiplierSynthesis::test_chained_mul PASSED [ 71%] tests/test_passes.py::TestMultiplierSynthesis::test_single_mul PASSED [ 71%] tests/test_passes.py::TestMultiplierSynthesis::test_singlebit_mul PASSED [ 72%] tests/test_passes.py::TestComparisonSynthesis::test_eq PASSED [ 72%] tests/test_passes.py::TestComparisonSynthesis::test_gt PASSED [ 72%] tests/test_passes.py::TestComparisonSynthesis::test_lt PASSED [ 72%] tests/test_passes.py::TestOptimization::test_dont_remove_double_inverts_another_user PASSED [ 72%] tests/test_passes.py::TestOptimization::test_multiple_double_invert_chains PASSED [ 72%] tests/test_passes.py::TestOptimization::test_remove_double_inverts_1_invert PASSED [ 72%] tests/test_passes.py::TestOptimization::test_remove_double_inverts_2_inverts PASSED [ 72%] tests/test_passes.py::TestOptimization::test_remove_double_inverts_3_inverts PASSED [ 72%] tests/test_passes.py::TestOptimization::test_remove_double_inverts_4_inverts PASSED [ 72%] tests/test_passes.py::TestOptimization::test_remove_double_inverts_5_inverts PASSED [ 72%] tests/test_passes.py::TestOptimization::test_remove_double_inverts_6_inverts PASSED [ 72%] tests/test_passes.py::TestOptimization::test_slice_net_removal_1 PASSED [ 72%] tests/test_passes.py::TestOptimization::test_slice_net_removal_2 PASSED [ 73%] tests/test_passes.py::TestOptimization::test_slice_net_removal_3 PASSED [ 73%] tests/test_passes.py::TestOptimization::test_slice_net_removal_4 PASSED [ 73%] tests/test_passes.py::TestOptimization::test_wire_net_removal_1 PASSED [ 73%] tests/test_passes.py::TestOptimization::test_wire_net_removal_2 PASSED [ 73%] tests/test_passes.py::TestConstFolding::test_adv_one_var_op_1 PASSED [ 73%] tests/test_passes.py::TestConstFolding::test_adv_one_var_op_2 PASSED [ 73%] tests/test_passes.py::TestConstFolding::test_basic_one_var_op_1 PASSED [ 73%] tests/test_passes.py::TestConstFolding::test_basic_two_var_op_1 PASSED [ 73%] tests/test_passes.py::TestConstFolding::test_basic_two_var_op_2 PASSED [ 73%] tests/test_passes.py::TestConstFolding::test_basic_two_var_op_3 PASSED [ 73%] tests/test_passes.py::TestConstFolding::test_two_var_op_correct_not_wire_replacement PASSED [ 73%] tests/test_passes.py::TestConstFolding::test_two_var_op_correct_wire_prop PASSED [ 74%] tests/test_passes.py::TestConstFolding::test_two_var_op_produce_not PASSED [ 74%] tests/test_passes.py::TestConstFolding::test_unsynthesized_inversion PASSED [ 74%] tests/test_passes.py::TestSubexpElimination::test_basic_1 PASSED [ 74%] tests/test_passes.py::TestSubexpElimination::test_concat PASSED [ 74%] tests/test_passes.py::TestSubexpElimination::test_const_different_bitwidth_1 PASSED [ 74%] tests/test_passes.py::TestSubexpElimination::test_const_values_1 PASSED [ 74%] tests/test_passes.py::TestSubexpElimination::test_const_values_2 PASSED [ 74%] tests/test_passes.py::TestSubexpElimination::test_different_arg_order PASSED [ 74%] tests/test_passes.py::TestSubexpElimination::test_multiple_elimination PASSED [ 74%] tests/test_passes.py::TestSubexpElimination::test_nested_elimination PASSED [ 74%] tests/test_passes.py::TestSubexpElimination::test_no_elimination_of_different_const_bitwidths PASSED [ 74%] tests/test_passes.py::TestSubexpElimination::test_order_dependent_ops PASSED [ 74%] tests/test_passes.py::TestSynthPasses::test_and_inverter_synth_adder PASSED [ 75%] tests/test_passes.py::TestSynthPasses::test_and_inverter_synth_and PASSED [ 75%] tests/test_passes.py::TestSynthPasses::test_and_inverter_synth_or PASSED [ 75%] tests/test_passes.py::TestSynthPasses::test_and_inverter_synth_xor PASSED [ 75%] tests/test_passes.py::TestSynthPasses::test_nand_synth_adder PASSED [ 75%] tests/test_passes.py::TestSynthPasses::test_nand_synth_and PASSED [ 75%] tests/test_passes.py::TestSynthPasses::test_nand_synth_or PASSED [ 75%] tests/test_passes.py::TestSynthPasses::test_nand_synth_xor PASSED [ 75%] tests/test_passes.py::TestSynthOptTiming::test_adder PASSED [ 75%] tests/test_passes.py::TestSynthOptTiming::test_all_mem_1 PASSED [ 75%] tests/test_passes.py::TestSynthOptTiming::test_combo_1 PASSED [ 75%] tests/test_passes.py::TestSynthOptTiming::test_const_folding_complex_1 PASSED [ 75%] tests/test_passes.py::TestSynthOptTiming::test_sanity_check PASSED [ 75%] tests/test_passes.py::TestSynthOptTiming::test_timing_basic_2 PASSED [ 76%] tests/test_passes.py::TestSynthOptTiming::test_timing_error PASSED [ 76%] tests/test_passes.py::TestSynthOptTiming::test_wirevector_1 PASSED [ 76%] tests/test_passes.py::TestConcatAndSelectSimplification::test_one_bit_selects PASSED [ 76%] tests/test_passes.py::TestConcatAndSelectSimplification::test_two_way_concat PASSED [ 76%] tests/test_passes.py::TestDirectlyConnectedOutputs::test_several_outputs PASSED [ 76%] tests/test_passes.py::TestDirectlyConnectedOutputs::test_several_outputs_simulates_correctly PASSED [ 76%] tests/test_passes.py::TestDirectlyConnectedOutputs::test_single_output PASSED [ 76%] tests/test_passes.py::TestDirectlyConnectedOutputs::test_single_output_simulates_correctly PASSED [ 76%] tests/test_passes.py::TestDirectlyConnectedOutputs::test_some_outputs_unaffected PASSED [ 76%] tests/test_passes.py::TestTwoWayFanout::test_two_way_fanout_large_design PASSED [ 76%] tests/test_passes.py::TestTwoWayFanout::test_two_way_fanout_medium_design PASSED [ 76%] tests/test_passes.py::TestTwoWayFanout::test_two_way_fanout_small_design PASSED [ 77%] tests/test_signed.py::TestComparisonBasicOperationsMSB1::test_basic_signed_gt PASSED [ 77%] tests/test_signed.py::TestComparisonBasicOperationsMSB1::test_basic_signed_gte PASSED [ 77%] tests/test_signed.py::TestComparisonBasicOperationsMSB1::test_basic_signed_lt PASSED [ 77%] tests/test_signed.py::TestComparisonBasicOperationsMSB1::test_basic_signed_lte PASSED [ 77%] tests/test_signed.py::TestComparisonBasicOperationsMSB1::test_basic_unsigned_gt PASSED [ 77%] tests/test_signed.py::TestComparisonBasicOperationsMSB1::test_basic_unsigned_gte PASSED [ 77%] tests/test_signed.py::TestComparisonBasicOperationsMSB1::test_basic_unsigned_lt PASSED [ 77%] tests/test_signed.py::TestComparisonBasicOperationsMSB1::test_basic_unsigned_lte PASSED [ 77%] tests/test_signed.py::TestComparisonBasicOperations_MSB0::test_basic_signed_gt PASSED [ 77%] tests/test_signed.py::TestComparisonBasicOperations_MSB0::test_basic_signed_gte PASSED [ 77%] tests/test_signed.py::TestComparisonBasicOperations_MSB0::test_basic_signed_lt PASSED [ 77%] tests/test_signed.py::TestComparisonBasicOperations_MSB0::test_basic_signed_lte PASSED [ 77%] tests/test_signed.py::TestComparisonBasicOperations_MSB0::test_basic_unsigned_gt PASSED [ 78%] tests/test_signed.py::TestComparisonBasicOperations_MSB0::test_basic_unsigned_gte PASSED [ 78%] tests/test_signed.py::TestComparisonBasicOperations_MSB0::test_basic_unsigned_lt PASSED [ 78%] tests/test_signed.py::TestComparisonBasicOperations_MSB0::test_basic_unsigned_lte PASSED [ 78%] tests/test_signed.py::TestSignedArithBasicOperations::test_basic_signed_add PASSED [ 78%] tests/test_signed.py::TestSignedArithBasicOperations::test_basic_signed_add_neg_integer PASSED [ 78%] tests/test_signed.py::TestSignedArithBasicOperations::test_basic_signed_add_signed_const PASSED [ 78%] tests/test_signed.py::TestSignedArithBasicOperations::test_basic_signed_mult PASSED [ 78%] tests/test_signed.py::TestSignedArithBasicOperations::test_basic_signed_mult_commutative PASSED [ 78%] tests/test_signed.py::TestSignedArithBasicOperations::test_basic_signed_mult_const_with_bitwidth PASSED [ 78%] tests/test_signed.py::TestSignedArithBasicOperations::test_basic_signed_mult_neg_integer PASSED [ 78%] tests/test_signed.py::TestSignedArithBasicOperations::test_basic_signed_mult_signed_const PASSED [ 78%] tests/test_signed.py::TestSignedArithmeticExhaustive::test_signed_add PASSED [ 78%] tests/test_signed.py::TestSignedArithmeticExhaustive::test_signed_mult PASSED [ 79%] tests/test_signed.py::TestSignedArithmeticExhaustive::test_signed_sub PASSED [ 79%] tests/test_simulation.py::TestDocTests::test_doctests PASSED [ 79%] tests/test_simulation.py::TestTraceWithBasicOpsSimulation::test_and_simulation PASSED [ 79%] tests/test_simulation.py::TestTraceWithBasicOpsSimulation::test_bitslice2_and_concat_simulation PASSED [ 79%] tests/test_simulation.py::TestTraceWithBasicOpsSimulation::test_bitslice_and_concat_simulation PASSED [ 79%] tests/test_simulation.py::TestTraceWithBasicOpsSimulation::test_const_associativity_int_simulation PASSED [ 79%] tests/test_simulation.py::TestTraceWithBasicOpsSimulation::test_const_associativity_string_simulation PASSED [ 79%] tests/test_simulation.py::TestTraceWithBasicOpsSimulation::test_const_nobitwidth_simulation PASSED [ 79%] tests/test_simulation.py::TestTraceWithBasicOpsSimulation::test_const_rawint_simulation PASSED [ 79%] tests/test_simulation.py::TestTraceWithBasicOpsSimulation::test_const_verilogbig_simulation PASSED [ 79%] tests/test_simulation.py::TestTraceWithBasicOpsSimulation::test_const_veriloghuge2_simulation PASSED [ 79%] tests/test_simulation.py::TestTraceWithBasicOpsSimulation::test_const_veriloghuge_simulation PASSED [ 80%] tests/test_simulation.py::TestTraceWithBasicOpsSimulation::test_const_verilogsmall_simulation PASSED [ 80%] tests/test_simulation.py::TestTraceWithBasicOpsSimulation::test_minus_sim_overflow PASSED [ 80%] tests/test_simulation.py::TestTraceWithBasicOpsSimulation::test_minus_simulation PASSED [ 80%] tests/test_simulation.py::TestTraceWithBasicOpsSimulation::test_multiply_simulation PASSED [ 80%] tests/test_simulation.py::TestTraceWithBasicOpsSimulation::test_nand_simulation PASSED [ 80%] tests/test_simulation.py::TestTraceWithBasicOpsSimulation::test_negative_input PASSED [ 80%] tests/test_simulation.py::TestTraceWithBasicOpsSimulation::test_not_simulation PASSED [ 80%] tests/test_simulation.py::TestTraceWithBasicOpsSimulation::test_or_simulation PASSED [ 80%] tests/test_simulation.py::TestTraceWithBasicOpsSimulation::test_plus_simulation PASSED [ 80%] tests/test_simulation.py::TestTraceWithBasicOpsSimulation::test_reg_to_reg_simulation PASSED [ 80%] tests/test_simulation.py::TestTraceWithBasicOpsSimulation::test_xor_simulation PASSED [ 80%] tests/test_simulation.py::TestTraceWithBasicOpsFastSimulation::test_and_simulation PASSED [ 80%] tests/test_simulation.py::TestTraceWithBasicOpsFastSimulation::test_bitslice2_and_concat_simulation PASSED [ 81%] tests/test_simulation.py::TestTraceWithBasicOpsFastSimulation::test_bitslice_and_concat_simulation PASSED [ 81%] tests/test_simulation.py::TestTraceWithBasicOpsFastSimulation::test_const_associativity_int_simulation PASSED [ 81%] tests/test_simulation.py::TestTraceWithBasicOpsFastSimulation::test_const_associativity_string_simulation PASSED [ 81%] tests/test_simulation.py::TestTraceWithBasicOpsFastSimulation::test_const_nobitwidth_simulation PASSED [ 81%] tests/test_simulation.py::TestTraceWithBasicOpsFastSimulation::test_const_rawint_simulation PASSED [ 81%] tests/test_simulation.py::TestTraceWithBasicOpsFastSimulation::test_const_verilogbig_simulation PASSED [ 81%] tests/test_simulation.py::TestTraceWithBasicOpsFastSimulation::test_const_veriloghuge2_simulation PASSED [ 81%] tests/test_simulation.py::TestTraceWithBasicOpsFastSimulation::test_const_veriloghuge_simulation PASSED [ 81%] tests/test_simulation.py::TestTraceWithBasicOpsFastSimulation::test_const_verilogsmall_simulation PASSED [ 81%] tests/test_simulation.py::TestTraceWithBasicOpsFastSimulation::test_minus_sim_overflow PASSED [ 81%] tests/test_simulation.py::TestTraceWithBasicOpsFastSimulation::test_minus_simulation PASSED [ 81%] tests/test_simulation.py::TestTraceWithBasicOpsFastSimulation::test_multiply_simulation PASSED [ 81%] tests/test_simulation.py::TestTraceWithBasicOpsFastSimulation::test_nand_simulation PASSED [ 82%] tests/test_simulation.py::TestTraceWithBasicOpsFastSimulation::test_negative_input PASSED [ 82%] tests/test_simulation.py::TestTraceWithBasicOpsFastSimulation::test_not_simulation PASSED [ 82%] tests/test_simulation.py::TestTraceWithBasicOpsFastSimulation::test_or_simulation PASSED [ 82%] tests/test_simulation.py::TestTraceWithBasicOpsFastSimulation::test_plus_simulation PASSED [ 82%] tests/test_simulation.py::TestTraceWithBasicOpsFastSimulation::test_reg_to_reg_simulation PASSED [ 82%] tests/test_simulation.py::TestTraceWithBasicOpsFastSimulation::test_xor_simulation PASSED [ 82%] tests/test_simulation.py::TestRenderTraceSimulation::test_bin_trace PASSED [ 82%] tests/test_simulation.py::TestRenderTraceSimulation::test_decimal_trace PASSED [ 82%] tests/test_simulation.py::TestRenderTraceSimulation::test_hex_trace PASSED [ 82%] tests/test_simulation.py::TestRenderTraceSimulation::test_oct_trace PASSED [ 82%] tests/test_simulation.py::TestRenderTraceFastSimulation::test_bin_trace PASSED [ 82%] tests/test_simulation.py::TestRenderTraceFastSimulation::test_decimal_trace PASSED [ 82%] tests/test_simulation.py::TestRenderTraceFastSimulation::test_hex_trace PASSED [ 83%] tests/test_simulation.py::TestRenderTraceFastSimulation::test_oct_trace PASSED [ 83%] tests/test_simulation.py::TestRenderLongTraceSimulation::test_long_decimal_trace PASSED [ 83%] tests/test_simulation.py::TestRenderLongTraceFastSimulation::test_long_decimal_trace PASSED [ 83%] tests/test_simulation.py::TestRenderTraceCustomSimulation::test_custom_repr_per_wire PASSED [ 83%] tests/test_simulation.py::TestRenderTraceCustomSimulation::test_enum_name PASSED [ 83%] tests/test_simulation.py::TestRenderTraceCustomSimulation::test_val_to_signed_integer PASSED [ 83%] tests/test_simulation.py::TestRenderTraceCustomFastSimulation::test_custom_repr_per_wire PASSED [ 83%] tests/test_simulation.py::TestRenderTraceCustomFastSimulation::test_enum_name PASSED [ 83%] tests/test_simulation.py::TestRenderTraceCustomFastSimulation::test_val_to_signed_integer PASSED [ 83%] tests/test_simulation.py::TestPrintTraceSimulation::test_print_trace_base16 PASSED [ 83%] tests/test_simulation.py::TestPrintTraceSimulation::test_print_trace_base2 PASSED [ 83%] tests/test_simulation.py::TestPrintTraceSimulation::test_print_trace_base8 PASSED [ 84%] tests/test_simulation.py::TestPrintTraceSimulation::test_print_trace_single_dig_notcompact PASSED [ 84%] tests/test_simulation.py::TestPrintTraceFastSimulation::test_print_trace_base16 PASSED [ 84%] tests/test_simulation.py::TestPrintTraceFastSimulation::test_print_trace_base2 PASSED [ 84%] tests/test_simulation.py::TestPrintTraceFastSimulation::test_print_trace_base8 PASSED [ 84%] tests/test_simulation.py::TestPrintTraceFastSimulation::test_print_trace_single_dig_notcompact PASSED [ 84%] tests/test_simulation.py::TestPrintPerfCountersSimulation::test_print_perf_counters PASSED [ 84%] tests/test_simulation.py::TestPrintPerfCountersFastSimulation::test_print_perf_counters PASSED [ 84%] tests/test_simulation.py::TestSimWithSpecialWiresSimulation::test_consts_from_int_enums PASSED [ 84%] tests/test_simulation.py::TestSimWithSpecialWiresSimulation::test_default_value_for_registers_without_reset_value PASSED [ 84%] tests/test_simulation.py::TestSimWithSpecialWiresSimulation::test_fastsim_wire_names PASSED [ 84%] tests/test_simulation.py::TestSimWithSpecialWiresSimulation::test_named_consts PASSED [ 84%] tests/test_simulation.py::TestSimWithSpecialWiresSimulation::test_reg_directly_before_reg PASSED [ 84%] tests/test_simulation.py::TestSimWithSpecialWiresSimulation::test_reset_value_in_reg PASSED [ 85%] tests/test_simulation.py::TestSimWithSpecialWiresSimulation::test_reset_value_overridden_in_simulation PASSED [ 85%] tests/test_simulation.py::TestSimWithSpecialWiresSimulation::test_weird_wire_names PASSED [ 85%] tests/test_simulation.py::TestSimWithSpecialWiresFastSimulation::test_consts_from_int_enums PASSED [ 85%] tests/test_simulation.py::TestSimWithSpecialWiresFastSimulation::test_default_value_for_registers_without_reset_value PASSED [ 85%] tests/test_simulation.py::TestSimWithSpecialWiresFastSimulation::test_fastsim_wire_names PASSED [ 85%] tests/test_simulation.py::TestSimWithSpecialWiresFastSimulation::test_named_consts PASSED [ 85%] tests/test_simulation.py::TestSimWithSpecialWiresFastSimulation::test_reg_directly_before_reg PASSED [ 85%] tests/test_simulation.py::TestSimWithSpecialWiresFastSimulation::test_reset_value_in_reg PASSED [ 85%] tests/test_simulation.py::TestSimWithSpecialWiresFastSimulation::test_reset_value_overridden_in_simulation PASSED [ 85%] tests/test_simulation.py::TestSimWithSpecialWiresFastSimulation::test_weird_wire_names PASSED [ 85%] tests/test_simulation.py::TestSimInputValidationSimulation::test_input_out_of_bitwidth PASSED [ 85%] tests/test_simulation.py::TestSimInputValidationSimulation::test_no_named_wires_erro PASSED [ 85%] tests/test_simulation.py::TestSimInputValidationFastSimulation::test_input_out_of_bitwidth PASSED [ 86%] tests/test_simulation.py::TestSimInputValidationFastSimulation::test_no_named_wires_erro PASSED [ 86%] tests/test_simulation.py::TestSimStepAccessInternalMemorySimulation::test_step_with_internal_memory PASSED [ 86%] tests/test_simulation.py::TestSimStepAccessInternalMemoryFastSimulation::test_step_with_internal_memory PASSED [ 86%] tests/test_simulation.py::TestSimStepMultipleSimulation::test_step_multiple_bad_nsteps1 PASSED [ 86%] tests/test_simulation.py::TestSimStepMultipleSimulation::test_step_multiple_bad_nsteps2 PASSED [ 86%] tests/test_simulation.py::TestSimStepMultipleSimulation::test_step_multiple_dont_care_expected PASSED [ 86%] tests/test_simulation.py::TestSimStepMultipleSimulation::test_step_multiple_many_errors_report_all PASSED [ 86%] tests/test_simulation.py::TestSimStepMultipleSimulation::test_step_multiple_many_errors_report_only_first PASSED [ 86%] tests/test_simulation.py::TestSimStepMultipleSimulation::test_step_multiple_no_errors PASSED [ 86%] tests/test_simulation.py::TestSimStepMultipleSimulation::test_step_multiple_no_errors_nsteps_specified PASSED [ 86%] tests/test_simulation.py::TestSimStepMultipleSimulation::test_step_multiple_no_expected_check PASSED [ 86%] tests/test_simulation.py::TestSimStepMultipleSimulation::test_step_multiple_no_inputs PASSED [ 87%] tests/test_simulation.py::TestSimStepMultipleSimulation::test_step_multiple_no_values_for_each_step_of_given_outputs PASSED [ 87%] tests/test_simulation.py::TestSimStepMultipleSimulation::test_step_multiple_no_values_for_each_step_of_input PASSED [ 87%] tests/test_simulation.py::TestSimStepMultipleSimulation::test_step_multiple_nsteps_gt_ninputs PASSED [ 87%] tests/test_simulation.py::TestSimStepMultipleSimulation::test_step_multiple_nsteps_no_inputs PASSED [ 87%] tests/test_simulation.py::TestSimStepMultipleFastSimulation::test_step_multiple_bad_nsteps1 PASSED [ 87%] tests/test_simulation.py::TestSimStepMultipleFastSimulation::test_step_multiple_bad_nsteps2 PASSED [ 87%] tests/test_simulation.py::TestSimStepMultipleFastSimulation::test_step_multiple_dont_care_expected PASSED [ 87%] tests/test_simulation.py::TestSimStepMultipleFastSimulation::test_step_multiple_many_errors_report_all PASSED [ 87%] tests/test_simulation.py::TestSimStepMultipleFastSimulation::test_step_multiple_many_errors_report_only_first PASSED [ 87%] tests/test_simulation.py::TestSimStepMultipleFastSimulation::test_step_multiple_no_errors PASSED [ 87%] tests/test_simulation.py::TestSimStepMultipleFastSimulation::test_step_multiple_no_errors_nsteps_specified PASSED [ 87%] tests/test_simulation.py::TestSimStepMultipleFastSimulation::test_step_multiple_no_expected_check PASSED [ 87%] tests/test_simulation.py::TestSimStepMultipleFastSimulation::test_step_multiple_no_inputs PASSED [ 88%] tests/test_simulation.py::TestSimStepMultipleFastSimulation::test_step_multiple_no_values_for_each_step_of_given_outputs PASSED [ 88%] tests/test_simulation.py::TestSimStepMultipleFastSimulation::test_step_multiple_no_values_for_each_step_of_input PASSED [ 88%] tests/test_simulation.py::TestSimStepMultipleFastSimulation::test_step_multiple_nsteps_gt_ninputs PASSED [ 88%] tests/test_simulation.py::TestSimStepMultipleFastSimulation::test_step_multiple_nsteps_no_inputs PASSED [ 88%] tests/test_simulation.py::TestTraceWithAdderSimulation::test_adder_simulation PASSED [ 88%] tests/test_simulation.py::TestTraceWithAdderFastSimulation::test_adder_simulation PASSED [ 88%] tests/test_simulation.py::TestSimulationVCDWithAdderSimulation::test_vcd_output PASSED [ 88%] tests/test_simulation.py::TestSimulationVCDWithAdderFastSimulation::test_vcd_output PASSED [ 88%] tests/test_simulation.py::TestSimTraceWithMuxSimulation::test_adder_simulation PASSED [ 88%] tests/test_simulation.py::TestSimTraceWithMuxFastSimulation::test_adder_simulation PASSED [ 88%] tests/test_simulation.py::TestMemBlockSimulation::test_mem_val_map PASSED [ 88%] tests/test_simulation.py::TestMemBlockSimulation::test_mem_val_map_defaults PASSED [ 88%] tests/test_simulation.py::TestMemBlockSimulation::test_simple2_memblock PASSED [ 89%] tests/test_simulation.py::TestMemBlockSimulation::test_simple_memblock PASSED [ 89%] tests/test_simulation.py::TestMemBlockSimulation::test_synth_simple_memblock PASSED [ 89%] tests/test_simulation.py::TestMemBlockFastSimulation::test_mem_val_map PASSED [ 89%] tests/test_simulation.py::TestMemBlockFastSimulation::test_mem_val_map_defaults PASSED [ 89%] tests/test_simulation.py::TestMemBlockFastSimulation::test_simple2_memblock PASSED [ 89%] tests/test_simulation.py::TestMemBlockFastSimulation::test_simple_memblock PASSED [ 89%] tests/test_simulation.py::TestMemBlockFastSimulation::test_synth_simple_memblock PASSED [ 89%] tests/test_simulation.py::TestMemBlockLargeSimulation::test_mem_blocks_very_large PASSED [ 89%] tests/test_simulation.py::TestMemBlockLargeFastSimulation::test_mem_blocks_very_large PASSED [ 89%] tests/test_simulation.py::TestRegisterDefaultsSimulation::test_default_value PASSED [ 89%] tests/test_simulation.py::TestRegisterDefaultsSimulation::test_map_and_default PASSED [ 89%] tests/test_simulation.py::TestRegisterDefaultsSimulation::test_partial_map PASSED [ 90%] tests/test_simulation.py::TestRegisterDefaultsSimulation::test_register_map PASSED [ 90%] tests/test_simulation.py::TestRegisterDefaultsFastSimulation::test_default_value PASSED [ 90%] tests/test_simulation.py::TestRegisterDefaultsFastSimulation::test_map_and_default PASSED [ 90%] tests/test_simulation.py::TestRegisterDefaultsFastSimulation::test_partial_map PASSED [ 90%] tests/test_simulation.py::TestRegisterDefaultsFastSimulation::test_register_map PASSED [ 90%] tests/test_simulation.py::TestRomBlockSimSimulation::test_function_RomBlock PASSED [ 90%] tests/test_simulation.py::TestRomBlockSimSimulation::test_function_RomBlock_with_optimization PASSED [ 90%] tests/test_simulation.py::TestRomBlockSimSimulation::test_rom_out_of_range_error PASSED [ 90%] tests/test_simulation.py::TestRomBlockSimSimulation::test_rom_val_map PASSED [ 90%] tests/test_simulation.py::TestRomBlockSimFastSimulation::test_function_RomBlock PASSED [ 90%] tests/test_simulation.py::TestRomBlockSimFastSimulation::test_function_RomBlock_with_optimization PASSED [ 90%] tests/test_simulation.py::TestRomBlockSimFastSimulation::test_rom_out_of_range_error PASSED [ 90%] tests/test_simulation.py::TestRomBlockSimFastSimulation::test_rom_val_map PASSED [ 91%] tests/test_simulation.py::TestMemBlockSimSimulation::test_negative_memory_value_map PASSED [ 91%] tests/test_simulation.py::TestMemBlockSimSimulation::test_simultaneous_read_write PASSED [ 91%] tests/test_simulation.py::TestMemBlockSimSimulation::test_unsigned_memory_value_map PASSED [ 91%] tests/test_simulation.py::TestMemBlockSimFastSimulation::test_negative_memory_value_map PASSED [ 91%] tests/test_simulation.py::TestMemBlockSimFastSimulation::test_simultaneous_read_write PASSED [ 91%] tests/test_simulation.py::TestMemBlockSimFastSimulation::test_unsigned_memory_value_map PASSED [ 91%] tests/test_simulation.py::TestInspectSimulation::test_inspect PASSED [ 91%] tests/test_simulation.py::TestInspectSimulation::test_inspect_mem PASSED [ 91%] tests/test_simulation.py::TestInspectSimulation::test_invalid_inspect PASSED [ 91%] tests/test_simulation.py::TestInspectFastSimulation::test_inspect PASSED [ 91%] tests/test_simulation.py::TestInspectFastSimulation::test_inspect_mem PASSED [ 91%] tests/test_simulation.py::TestInspectFastSimulation::test_invalid_inspect PASSED [ 91%] tests/test_simulation.py::TestTraceErrorSimulation::test_empty_trace PASSED [ 92%] tests/test_simulation.py::TestTraceErrorSimulation::test_invalid_base PASSED [ 92%] tests/test_simulation.py::TestTraceErrorFastSimulation::test_empty_trace PASSED [ 92%] tests/test_simulation.py::TestTraceErrorFastSimulation::test_invalid_base PASSED [ 92%] tests/test_simulation.py::TestNoTracerSimulation::test_no_tracer PASSED [ 92%] tests/test_simulation.py::TestNoTracerFastSimulation::test_no_tracer PASSED [ 92%] tests/test_transform.py::TestWireTransform::test_randomly_replace PASSED [ 92%] tests/test_transform.py::TestWireTransform::test_replace_input PASSED [ 92%] tests/test_transform.py::TestWireTransform::test_replace_output PASSED [ 92%] tests/test_transform.py::TestCopyBlock::test_blank PASSED [ 92%] tests/test_transform.py::TestCopyBlock::test_block PASSED [ 92%] tests/test_transform.py::TestCopyBlock::test_copy_mem PASSED [ 92%] tests/test_transform.py::TestFastWireReplace::test_replace_multiple_wires PASSED [ 92%] tests/test_transform.py::TestFastWireReplace::test_replace_multiple_wires_2 PASSED [ 93%] tests/test_transform.py::TestFastWireReplace::test_replace_only_dst_wire PASSED [ 93%] tests/test_transform.py::TestFastWireReplace::test_replace_only_src_wire PASSED [ 93%] tests/test_transform.py::TestFastWireReplace::test_wire_used_in_multiple_places PASSED [ 93%] tests/test_transform.py::TestCloning::test_clone_wire_different_name_different_block PASSED [ 93%] tests/test_transform.py::TestCloning::test_clone_wire_different_name_same_block PASSED [ 93%] tests/test_transform.py::TestCloning::test_clone_wire_no_name_same_block PASSED [ 93%] tests/test_transform.py::TestCloning::test_clone_wire_no_or_same_name_different_block PASSED [ 93%] tests/test_transform.py::TestCloning::test_clone_wire_same_name_same_block PASSED [ 93%] tests/test_transform.py::TestCloning::test_same_type PASSED [ 93%] tests/test_visualization.py::TestOutputGraphs::test_output_to_graphviz_correct_detailed_output PASSED [ 93%] tests/test_visualization.py::TestOutputGraphs::test_output_to_graphviz_correct_output_with_arg_ordering PASSED [ 93%] tests/test_visualization.py::TestOutputGraphs::test_output_to_graphviz_correct_output_without_arg_ordering PASSED [ 94%] tests/test_visualization.py::TestOutputGraphs::test_output_to_graphviz_does_not_throw_error PASSED [ 94%] tests/test_visualization.py::TestOutputGraphs::test_output_to_graphviz_with_custom_namer_does_not_throw_error PASSED [ 94%] tests/test_visualization.py::TestOutputGraphs::test_output_to_tgf_does_not_throw_error PASSED [ 94%] tests/test_visualization.py::TestNetGraph::test_as_graph PASSED [ 94%] tests/test_visualization.py::TestNetGraph::test_netgraph_same_wire_multiple_edges_to_same_net PASSED [ 94%] tests/test_visualization.py::TestNetGraph::test_netgraph_unused_wires PASSED [ 94%] tests/test_visualization.py::TestOutputIPynb::test_one_bit_adder_matches_expected PASSED [ 94%] tests/test_visualization.py::TestOutputIPynb::test_trace_to_html PASSED [ 94%] tests/test_visualization.py::TestOutputIPynb::test_trace_to_html_repr_func PASSED [ 94%] tests/test_visualization.py::TestOutputIPynb::test_trace_to_html_repr_per_name PASSED [ 94%] tests/test_visualization.py::TestOutputIPynb::test_trace_to_html_repr_per_name_enum_is_bool PASSED [ 94%] tests/test_wire.py::TestDocTests::test_doctests PASSED [ 94%] tests/test_wire.py::TestWireVector::test_assign_to_value PASSED [ 95%] tests/test_wire.py::TestWireVector::test_basic_assignment PASSED [ 95%] tests/test_wire.py::TestWireVector::test_rename PASSED [ 95%] tests/test_wire.py::TestWireVector::test_sign_extend PASSED [ 95%] tests/test_wire.py::TestWireVector::test_truncating PASSED [ 95%] tests/test_wire.py::TestWireVector::test_unset_bitwidth PASSED [ 95%] tests/test_wire.py::TestWireVector::test_wirevector_length PASSED [ 95%] tests/test_wire.py::TestWireVector::test_zero_extend PASSED [ 95%] tests/test_wire.py::TestWireVectorNames::test_invalid_name PASSED [ 95%] tests/test_wire.py::TestWireVectorNames::test_invalid_name_setter PASSED [ 95%] tests/test_wire.py::TestWireVectorNames::test_valid_name_setter PASSED [ 95%] tests/test_wire.py::TestWireVectorNames::test_valid_names PASSED [ 95%] tests/test_wire.py::TestWireVectorFail::test_bad_bitwidth PASSED [ 95%] tests/test_wire.py::TestWireVectorFail::test_no_immed_operators PASSED [ 96%] tests/test_wire.py::TestWireVectorFail::test_sign_and_zero_extend_only_increase_bitwidth PASSED [ 96%] tests/test_wire.py::TestWireVectorFail::test_truncate_only_reduces_bitwidth PASSED [ 96%] tests/test_wire.py::TestWireVectorFail::test_truncate_only_takes_integers PASSED [ 96%] tests/test_wire.py::TestWireVectorFail::test_undef_wirevector_length PASSED [ 96%] tests/test_wire.py::TestWireVectorSlicing::test_invalid_indicies PASSED [ 96%] tests/test_wire.py::TestWireVectorSlicing::test_invalid_slices PASSED [ 96%] tests/test_wire.py::TestWireVectorSlicing::test_valid_indicies PASSED [ 96%] tests/test_wire.py::TestWireVectorSlicing::test_valid_slices PASSED [ 96%] tests/test_wire.py::TestWireVectorSlicing::test_wire_wo_bitwidth_fails PASSED [ 96%] tests/test_wire.py::TestInput::test_no_connection_to_inputs PASSED [ 96%] tests/test_wire.py::TestRegister::test_connect_next PASSED [ 96%] tests/test_wire.py::TestRegister::test_connection_large PASSED [ 97%] tests/test_wire.py::TestRegister::test_connection_raw PASSED [ 97%] tests/test_wire.py::TestRegister::test_connection_small PASSED [ 97%] tests/test_wire.py::TestRegister::test_connection_unspec_width PASSED [ 97%] tests/test_wire.py::TestRegister::test_extending_negative_reset_value_as_string PASSED [ 97%] tests/test_wire.py::TestRegister::test_invalid_negative_reset_value_as_string PASSED [ 97%] tests/test_wire.py::TestRegister::test_invalid_reset_value_not_an_integer PASSED [ 97%] tests/test_wire.py::TestRegister::test_invalid_reset_value_too_large PASSED [ 97%] tests/test_wire.py::TestRegister::test_invalid_reset_value_too_large_as_string PASSED [ 97%] tests/test_wire.py::TestRegister::test_logic_operations PASSED [ 97%] tests/test_wire.py::TestRegister::test_negative_reset_value PASSED [ 97%] tests/test_wire.py::TestRegister::test_negative_reset_value_as_string PASSED [ 97%] tests/test_wire.py::TestRegister::test_next_logic_operations PASSED [ 97%] tests/test_wire.py::TestRegister::test_register_assignment PASSED [ 98%] tests/test_wire.py::TestRegister::test_register_assignment_not_next PASSED [ 98%] tests/test_wire.py::TestRegister::test_reset_value_as_string PASSED [ 98%] tests/test_wire.py::TestRegister::test_reset_value_is_correct PASSED [ 98%] tests/test_wire.py::TestRegister::test_reset_value_is_none PASSED [ 98%] tests/test_wire.py::TestConst::test_assignment PASSED [ 98%] tests/test_wire.py::TestConst::test_bad_neg_integers PASSED [ 98%] tests/test_wire.py::TestConst::test_bad_string PASSED [ 98%] tests/test_wire.py::TestConst::test_badbool PASSED [ 98%] tests/test_wire.py::TestConst::test_badtype PASSED [ 98%] tests/test_wire.py::TestConst::test_bool PASSED [ 98%] tests/test_wire.py::TestConst::test_integers PASSED [ 98%] tests/test_wire.py::TestConst::test_invalid_bitwidth PASSED [ 98%] tests/test_wire.py::TestConst::test_named PASSED [ 99%] tests/test_wire.py::TestConst::test_neg_integers PASSED [ 99%] tests/test_wire.py::TestConst::test_string PASSED [ 99%] tests/test_wire.py::TestConst::test_too_big PASSED [ 99%] tests/test_wire.py::TestOutput::test_assign_output PASSED [ 99%] tests/test_wire.py::TestOutput::test_log_op_output PASSED [ 99%] tests/test_wire.py::TestOutput::test_slice_output PASSED [ 99%] tests/test_wire.py::TestKeepingCallStack::test_get_call_stack PASSED [ 99%] tests/test_wire.py::TestKeepingCallStack::test_no_call_stack PASSED [ 99%] tests/test_wire.py::TestWrappedWireVector::test_attr PASSED [ 99%] tests/test_wire.py::TestWrappedWireVector::test_conditional_assignment PASSED [ 99%] tests/test_wire.py::TestWrappedWireVector::test_exceptions PASSED [ 99%] tests/test_wire.py::TestWrappedWireVector::test_ops PASSED [100%] =================================== FAILURES =================================== _ test_all_examples[/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/renderer-demo.py] _ file = '/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/renderer-demo.py' @pytest.mark.parametrize( "file", glob.iglob(os.path.dirname(__file__) + "/../examples/*.py") ) def test_all_examples(file): pyrtl.reset_working_block() try: > subprocess.check_output(["python", file]) tests/test_examples.py:23: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.14/subprocess.py:473: in check_output return run(*popenargs, stdout=PIPE, timeout=timeout, check=True, /usr/lib64/python3.14/subprocess.py:555: in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ /usr/lib64/python3.14/subprocess.py:1039: in __init__ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = args = ['python', '/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/renderer-demo.py'] executable = b'python', preexec_fn = None, close_fds = True, pass_fds = () cwd = None, env = None, startupinfo = None, creationflags = 0, shell = False p2cread = -1, p2cwrite = -1, c2pread = 13, c2pwrite = 14, errread = -1 errwrite = -1, restore_signals = True, gid = None, gids = None, uid = None umask = -1, start_new_session = False, process_group = -1 def _execute_child(self, args, executable, preexec_fn, close_fds, pass_fds, cwd, env, startupinfo, creationflags, shell, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite, restore_signals, gid, gids, uid, umask, start_new_session, process_group): """Execute program (POSIX version)""" if isinstance(args, (str, bytes)): args = [args] elif isinstance(args, os.PathLike): if shell: raise TypeError('path-like args is not allowed when ' 'shell is true') args = [args] else: args = list(args) if shell: # On Android the default shell is at '/system/bin/sh'. unix_shell = ('/system/bin/sh' if hasattr(sys, 'getandroidapilevel') else '/bin/sh') args = [unix_shell, "-c"] + args if executable: args[0] = executable if executable is None: executable = args[0] sys.audit("subprocess.Popen", executable, args, cwd, env) if (_USE_POSIX_SPAWN and os.path.dirname(executable) and preexec_fn is None and (not close_fds or _HAVE_POSIX_SPAWN_CLOSEFROM) and not pass_fds and cwd is None and (p2cread == -1 or p2cread > 2) and (c2pwrite == -1 or c2pwrite > 2) and (errwrite == -1 or errwrite > 2) and not start_new_session and process_group == -1 and gid is None and gids is None and uid is None and umask < 0): self._posix_spawn(args, executable, env, restore_signals, close_fds, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite) return orig_executable = executable # For transferring possible exec failure from child to parent. # Data format: "exception name:hex errno:description" # Pickle is not used; it is complex and involves memory allocation. errpipe_read, errpipe_write = os.pipe() # errpipe_write must not be in the standard io 0, 1, or 2 fd range. low_fds_to_close = [] while errpipe_write < 3: low_fds_to_close.append(errpipe_write) errpipe_write = os.dup(errpipe_write) for low_fd in low_fds_to_close: os.close(low_fd) try: try: # We must avoid complex work that could involve # malloc or free in the child process to avoid # potential deadlocks, thus we do all this here. # and pass it to fork_exec() if env is not None: env_list = [] for k, v in env.items(): k = os.fsencode(k) if b'=' in k: raise ValueError("illegal environment variable name") env_list.append(k + b'=' + os.fsencode(v)) else: env_list = None # Use execv instead of execve. executable = os.fsencode(executable) if os.path.dirname(executable): executable_list = (executable,) else: # This matches the behavior of os._execvpe(). executable_list = tuple( os.path.join(os.fsencode(dir), executable) for dir in os.get_exec_path(env)) fds_to_keep = set(pass_fds) fds_to_keep.add(errpipe_write) self.pid = _fork_exec( args, executable_list, close_fds, tuple(sorted(map(int, fds_to_keep))), cwd, env_list, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite, errpipe_read, errpipe_write, restore_signals, start_new_session, process_group, gid, gids, uid, umask, preexec_fn) self._child_created = True finally: # be sure the FD is closed no matter what os.close(errpipe_write) self._close_pipe_fds(p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite) # Wait for exec to fail or succeed; possibly raising an # exception (limited in size) errpipe_data = bytearray() while True: part = os.read(errpipe_read, 50000) errpipe_data += part if not part or len(errpipe_data) > 50000: break finally: # be sure the FD is closed no matter what os.close(errpipe_read) if errpipe_data: try: pid, sts = os.waitpid(self.pid, 0) if pid == self.pid: self._handle_exitstatus(sts) else: self.returncode = sys.maxsize except ChildProcessError: pass try: exception_name, hex_errno, err_msg = ( errpipe_data.split(b':', 2)) # The encoding here should match the encoding # written in by the subprocess implementations # like _posixsubprocess err_msg = err_msg.decode() except ValueError: exception_name = b'SubprocessError' hex_errno = b'0' err_msg = 'Bad exception data from child: {!r}'.format( bytes(errpipe_data)) child_exception_type = getattr( builtins, exception_name.decode('ascii'), SubprocessError) if issubclass(child_exception_type, OSError) and hex_errno: errno_num = int(hex_errno, 16) if err_msg == "noexec:chdir": err_msg = "" # The error must be from chdir(cwd). err_filename = cwd elif err_msg == "noexec": err_msg = "" err_filename = None else: err_filename = orig_executable if errno_num != 0: err_msg = os.strerror(errno_num) if err_filename is not None: > raise child_exception_type(errno_num, err_msg, err_filename) E FileNotFoundError: [Errno 2] No such file or directory: 'python' /usr/lib64/python3.14/subprocess.py:1990: FileNotFoundError _ test_all_examples[/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/introduction-to-hardware.py] _ file = '/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/introduction-to-hardware.py' @pytest.mark.parametrize( "file", glob.iglob(os.path.dirname(__file__) + "/../examples/*.py") ) def test_all_examples(file): pyrtl.reset_working_block() try: > subprocess.check_output(["python", file]) tests/test_examples.py:23: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.14/subprocess.py:473: in check_output return run(*popenargs, stdout=PIPE, timeout=timeout, check=True, /usr/lib64/python3.14/subprocess.py:555: in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ /usr/lib64/python3.14/subprocess.py:1039: in __init__ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = args = ['python', '/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/introduction-to-hardware.py'] executable = b'python', preexec_fn = None, close_fds = True, pass_fds = () cwd = None, env = None, startupinfo = None, creationflags = 0, shell = False p2cread = -1, p2cwrite = -1, c2pread = 13, c2pwrite = 14, errread = -1 errwrite = -1, restore_signals = True, gid = None, gids = None, uid = None umask = -1, start_new_session = False, process_group = -1 def _execute_child(self, args, executable, preexec_fn, close_fds, pass_fds, cwd, env, startupinfo, creationflags, shell, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite, restore_signals, gid, gids, uid, umask, start_new_session, process_group): """Execute program (POSIX version)""" if isinstance(args, (str, bytes)): args = [args] elif isinstance(args, os.PathLike): if shell: raise TypeError('path-like args is not allowed when ' 'shell is true') args = [args] else: args = list(args) if shell: # On Android the default shell is at '/system/bin/sh'. unix_shell = ('/system/bin/sh' if hasattr(sys, 'getandroidapilevel') else '/bin/sh') args = [unix_shell, "-c"] + args if executable: args[0] = executable if executable is None: executable = args[0] sys.audit("subprocess.Popen", executable, args, cwd, env) if (_USE_POSIX_SPAWN and os.path.dirname(executable) and preexec_fn is None and (not close_fds or _HAVE_POSIX_SPAWN_CLOSEFROM) and not pass_fds and cwd is None and (p2cread == -1 or p2cread > 2) and (c2pwrite == -1 or c2pwrite > 2) and (errwrite == -1 or errwrite > 2) and not start_new_session and process_group == -1 and gid is None and gids is None and uid is None and umask < 0): self._posix_spawn(args, executable, env, restore_signals, close_fds, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite) return orig_executable = executable # For transferring possible exec failure from child to parent. # Data format: "exception name:hex errno:description" # Pickle is not used; it is complex and involves memory allocation. errpipe_read, errpipe_write = os.pipe() # errpipe_write must not be in the standard io 0, 1, or 2 fd range. low_fds_to_close = [] while errpipe_write < 3: low_fds_to_close.append(errpipe_write) errpipe_write = os.dup(errpipe_write) for low_fd in low_fds_to_close: os.close(low_fd) try: try: # We must avoid complex work that could involve # malloc or free in the child process to avoid # potential deadlocks, thus we do all this here. # and pass it to fork_exec() if env is not None: env_list = [] for k, v in env.items(): k = os.fsencode(k) if b'=' in k: raise ValueError("illegal environment variable name") env_list.append(k + b'=' + os.fsencode(v)) else: env_list = None # Use execv instead of execve. executable = os.fsencode(executable) if os.path.dirname(executable): executable_list = (executable,) else: # This matches the behavior of os._execvpe(). executable_list = tuple( os.path.join(os.fsencode(dir), executable) for dir in os.get_exec_path(env)) fds_to_keep = set(pass_fds) fds_to_keep.add(errpipe_write) self.pid = _fork_exec( args, executable_list, close_fds, tuple(sorted(map(int, fds_to_keep))), cwd, env_list, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite, errpipe_read, errpipe_write, restore_signals, start_new_session, process_group, gid, gids, uid, umask, preexec_fn) self._child_created = True finally: # be sure the FD is closed no matter what os.close(errpipe_write) self._close_pipe_fds(p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite) # Wait for exec to fail or succeed; possibly raising an # exception (limited in size) errpipe_data = bytearray() while True: part = os.read(errpipe_read, 50000) errpipe_data += part if not part or len(errpipe_data) > 50000: break finally: # be sure the FD is closed no matter what os.close(errpipe_read) if errpipe_data: try: pid, sts = os.waitpid(self.pid, 0) if pid == self.pid: self._handle_exitstatus(sts) else: self.returncode = sys.maxsize except ChildProcessError: pass try: exception_name, hex_errno, err_msg = ( errpipe_data.split(b':', 2)) # The encoding here should match the encoding # written in by the subprocess implementations # like _posixsubprocess err_msg = err_msg.decode() except ValueError: exception_name = b'SubprocessError' hex_errno = b'0' err_msg = 'Bad exception data from child: {!r}'.format( bytes(errpipe_data)) child_exception_type = getattr( builtins, exception_name.decode('ascii'), SubprocessError) if issubclass(child_exception_type, OSError) and hex_errno: errno_num = int(hex_errno, 16) if err_msg == "noexec:chdir": err_msg = "" # The error must be from chdir(cwd). err_filename = cwd elif err_msg == "noexec": err_msg = "" err_filename = None else: err_filename = orig_executable if errno_num != 0: err_msg = os.strerror(errno_num) if err_filename is not None: > raise child_exception_type(errno_num, err_msg, err_filename) E FileNotFoundError: [Errno 2] No such file or directory: 'python' /usr/lib64/python3.14/subprocess.py:1990: FileNotFoundError _ test_all_examples[/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/example8-verilog.py] _ file = '/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/example8-verilog.py' @pytest.mark.parametrize( "file", glob.iglob(os.path.dirname(__file__) + "/../examples/*.py") ) def test_all_examples(file): pyrtl.reset_working_block() try: > subprocess.check_output(["python", file]) tests/test_examples.py:23: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.14/subprocess.py:473: in check_output return run(*popenargs, stdout=PIPE, timeout=timeout, check=True, /usr/lib64/python3.14/subprocess.py:555: in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ /usr/lib64/python3.14/subprocess.py:1039: in __init__ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = args = ['python', '/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/example8-verilog.py'] executable = b'python', preexec_fn = None, close_fds = True, pass_fds = () cwd = None, env = None, startupinfo = None, creationflags = 0, shell = False p2cread = -1, p2cwrite = -1, c2pread = 13, c2pwrite = 14, errread = -1 errwrite = -1, restore_signals = True, gid = None, gids = None, uid = None umask = -1, start_new_session = False, process_group = -1 def _execute_child(self, args, executable, preexec_fn, close_fds, pass_fds, cwd, env, startupinfo, creationflags, shell, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite, restore_signals, gid, gids, uid, umask, start_new_session, process_group): """Execute program (POSIX version)""" if isinstance(args, (str, bytes)): args = [args] elif isinstance(args, os.PathLike): if shell: raise TypeError('path-like args is not allowed when ' 'shell is true') args = [args] else: args = list(args) if shell: # On Android the default shell is at '/system/bin/sh'. unix_shell = ('/system/bin/sh' if hasattr(sys, 'getandroidapilevel') else '/bin/sh') args = [unix_shell, "-c"] + args if executable: args[0] = executable if executable is None: executable = args[0] sys.audit("subprocess.Popen", executable, args, cwd, env) if (_USE_POSIX_SPAWN and os.path.dirname(executable) and preexec_fn is None and (not close_fds or _HAVE_POSIX_SPAWN_CLOSEFROM) and not pass_fds and cwd is None and (p2cread == -1 or p2cread > 2) and (c2pwrite == -1 or c2pwrite > 2) and (errwrite == -1 or errwrite > 2) and not start_new_session and process_group == -1 and gid is None and gids is None and uid is None and umask < 0): self._posix_spawn(args, executable, env, restore_signals, close_fds, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite) return orig_executable = executable # For transferring possible exec failure from child to parent. # Data format: "exception name:hex errno:description" # Pickle is not used; it is complex and involves memory allocation. errpipe_read, errpipe_write = os.pipe() # errpipe_write must not be in the standard io 0, 1, or 2 fd range. low_fds_to_close = [] while errpipe_write < 3: low_fds_to_close.append(errpipe_write) errpipe_write = os.dup(errpipe_write) for low_fd in low_fds_to_close: os.close(low_fd) try: try: # We must avoid complex work that could involve # malloc or free in the child process to avoid # potential deadlocks, thus we do all this here. # and pass it to fork_exec() if env is not None: env_list = [] for k, v in env.items(): k = os.fsencode(k) if b'=' in k: raise ValueError("illegal environment variable name") env_list.append(k + b'=' + os.fsencode(v)) else: env_list = None # Use execv instead of execve. executable = os.fsencode(executable) if os.path.dirname(executable): executable_list = (executable,) else: # This matches the behavior of os._execvpe(). executable_list = tuple( os.path.join(os.fsencode(dir), executable) for dir in os.get_exec_path(env)) fds_to_keep = set(pass_fds) fds_to_keep.add(errpipe_write) self.pid = _fork_exec( args, executable_list, close_fds, tuple(sorted(map(int, fds_to_keep))), cwd, env_list, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite, errpipe_read, errpipe_write, restore_signals, start_new_session, process_group, gid, gids, uid, umask, preexec_fn) self._child_created = True finally: # be sure the FD is closed no matter what os.close(errpipe_write) self._close_pipe_fds(p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite) # Wait for exec to fail or succeed; possibly raising an # exception (limited in size) errpipe_data = bytearray() while True: part = os.read(errpipe_read, 50000) errpipe_data += part if not part or len(errpipe_data) > 50000: break finally: # be sure the FD is closed no matter what os.close(errpipe_read) if errpipe_data: try: pid, sts = os.waitpid(self.pid, 0) if pid == self.pid: self._handle_exitstatus(sts) else: self.returncode = sys.maxsize except ChildProcessError: pass try: exception_name, hex_errno, err_msg = ( errpipe_data.split(b':', 2)) # The encoding here should match the encoding # written in by the subprocess implementations # like _posixsubprocess err_msg = err_msg.decode() except ValueError: exception_name = b'SubprocessError' hex_errno = b'0' err_msg = 'Bad exception data from child: {!r}'.format( bytes(errpipe_data)) child_exception_type = getattr( builtins, exception_name.decode('ascii'), SubprocessError) if issubclass(child_exception_type, OSError) and hex_errno: errno_num = int(hex_errno, 16) if err_msg == "noexec:chdir": err_msg = "" # The error must be from chdir(cwd). err_filename = cwd elif err_msg == "noexec": err_msg = "" err_filename = None else: err_filename = orig_executable if errno_num != 0: err_msg = os.strerror(errno_num) if err_filename is not None: > raise child_exception_type(errno_num, err_msg, err_filename) E FileNotFoundError: [Errno 2] No such file or directory: 'python' /usr/lib64/python3.14/subprocess.py:1990: FileNotFoundError _ test_all_examples[/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/example7-synth-timing.py] _ file = '/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/example7-synth-timing.py' @pytest.mark.parametrize( "file", glob.iglob(os.path.dirname(__file__) + "/../examples/*.py") ) def test_all_examples(file): pyrtl.reset_working_block() try: > subprocess.check_output(["python", file]) tests/test_examples.py:23: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.14/subprocess.py:473: in check_output return run(*popenargs, stdout=PIPE, timeout=timeout, check=True, /usr/lib64/python3.14/subprocess.py:555: in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ /usr/lib64/python3.14/subprocess.py:1039: in __init__ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = args = ['python', '/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/example7-synth-timing.py'] executable = b'python', preexec_fn = None, close_fds = True, pass_fds = () cwd = None, env = None, startupinfo = None, creationflags = 0, shell = False p2cread = -1, p2cwrite = -1, c2pread = 13, c2pwrite = 14, errread = -1 errwrite = -1, restore_signals = True, gid = None, gids = None, uid = None umask = -1, start_new_session = False, process_group = -1 def _execute_child(self, args, executable, preexec_fn, close_fds, pass_fds, cwd, env, startupinfo, creationflags, shell, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite, restore_signals, gid, gids, uid, umask, start_new_session, process_group): """Execute program (POSIX version)""" if isinstance(args, (str, bytes)): args = [args] elif isinstance(args, os.PathLike): if shell: raise TypeError('path-like args is not allowed when ' 'shell is true') args = [args] else: args = list(args) if shell: # On Android the default shell is at '/system/bin/sh'. unix_shell = ('/system/bin/sh' if hasattr(sys, 'getandroidapilevel') else '/bin/sh') args = [unix_shell, "-c"] + args if executable: args[0] = executable if executable is None: executable = args[0] sys.audit("subprocess.Popen", executable, args, cwd, env) if (_USE_POSIX_SPAWN and os.path.dirname(executable) and preexec_fn is None and (not close_fds or _HAVE_POSIX_SPAWN_CLOSEFROM) and not pass_fds and cwd is None and (p2cread == -1 or p2cread > 2) and (c2pwrite == -1 or c2pwrite > 2) and (errwrite == -1 or errwrite > 2) and not start_new_session and process_group == -1 and gid is None and gids is None and uid is None and umask < 0): self._posix_spawn(args, executable, env, restore_signals, close_fds, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite) return orig_executable = executable # For transferring possible exec failure from child to parent. # Data format: "exception name:hex errno:description" # Pickle is not used; it is complex and involves memory allocation. errpipe_read, errpipe_write = os.pipe() # errpipe_write must not be in the standard io 0, 1, or 2 fd range. low_fds_to_close = [] while errpipe_write < 3: low_fds_to_close.append(errpipe_write) errpipe_write = os.dup(errpipe_write) for low_fd in low_fds_to_close: os.close(low_fd) try: try: # We must avoid complex work that could involve # malloc or free in the child process to avoid # potential deadlocks, thus we do all this here. # and pass it to fork_exec() if env is not None: env_list = [] for k, v in env.items(): k = os.fsencode(k) if b'=' in k: raise ValueError("illegal environment variable name") env_list.append(k + b'=' + os.fsencode(v)) else: env_list = None # Use execv instead of execve. executable = os.fsencode(executable) if os.path.dirname(executable): executable_list = (executable,) else: # This matches the behavior of os._execvpe(). executable_list = tuple( os.path.join(os.fsencode(dir), executable) for dir in os.get_exec_path(env)) fds_to_keep = set(pass_fds) fds_to_keep.add(errpipe_write) self.pid = _fork_exec( args, executable_list, close_fds, tuple(sorted(map(int, fds_to_keep))), cwd, env_list, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite, errpipe_read, errpipe_write, restore_signals, start_new_session, process_group, gid, gids, uid, umask, preexec_fn) self._child_created = True finally: # be sure the FD is closed no matter what os.close(errpipe_write) self._close_pipe_fds(p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite) # Wait for exec to fail or succeed; possibly raising an # exception (limited in size) errpipe_data = bytearray() while True: part = os.read(errpipe_read, 50000) errpipe_data += part if not part or len(errpipe_data) > 50000: break finally: # be sure the FD is closed no matter what os.close(errpipe_read) if errpipe_data: try: pid, sts = os.waitpid(self.pid, 0) if pid == self.pid: self._handle_exitstatus(sts) else: self.returncode = sys.maxsize except ChildProcessError: pass try: exception_name, hex_errno, err_msg = ( errpipe_data.split(b':', 2)) # The encoding here should match the encoding # written in by the subprocess implementations # like _posixsubprocess err_msg = err_msg.decode() except ValueError: exception_name = b'SubprocessError' hex_errno = b'0' err_msg = 'Bad exception data from child: {!r}'.format( bytes(errpipe_data)) child_exception_type = getattr( builtins, exception_name.decode('ascii'), SubprocessError) if issubclass(child_exception_type, OSError) and hex_errno: errno_num = int(hex_errno, 16) if err_msg == "noexec:chdir": err_msg = "" # The error must be from chdir(cwd). err_filename = cwd elif err_msg == "noexec": err_msg = "" err_filename = None else: err_filename = orig_executable if errno_num != 0: err_msg = os.strerror(errno_num) if err_filename is not None: > raise child_exception_type(errno_num, err_msg, err_filename) E FileNotFoundError: [Errno 2] No such file or directory: 'python' /usr/lib64/python3.14/subprocess.py:1990: FileNotFoundError _ test_all_examples[/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/example6-memory.py] _ file = '/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/example6-memory.py' @pytest.mark.parametrize( "file", glob.iglob(os.path.dirname(__file__) + "/../examples/*.py") ) def test_all_examples(file): pyrtl.reset_working_block() try: > subprocess.check_output(["python", file]) tests/test_examples.py:23: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.14/subprocess.py:473: in check_output return run(*popenargs, stdout=PIPE, timeout=timeout, check=True, /usr/lib64/python3.14/subprocess.py:555: in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ /usr/lib64/python3.14/subprocess.py:1039: in __init__ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = args = ['python', '/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/example6-memory.py'] executable = b'python', preexec_fn = None, close_fds = True, pass_fds = () cwd = None, env = None, startupinfo = None, creationflags = 0, shell = False p2cread = -1, p2cwrite = -1, c2pread = 13, c2pwrite = 14, errread = -1 errwrite = -1, restore_signals = True, gid = None, gids = None, uid = None umask = -1, start_new_session = False, process_group = -1 def _execute_child(self, args, executable, preexec_fn, close_fds, pass_fds, cwd, env, startupinfo, creationflags, shell, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite, restore_signals, gid, gids, uid, umask, start_new_session, process_group): """Execute program (POSIX version)""" if isinstance(args, (str, bytes)): args = [args] elif isinstance(args, os.PathLike): if shell: raise TypeError('path-like args is not allowed when ' 'shell is true') args = [args] else: args = list(args) if shell: # On Android the default shell is at '/system/bin/sh'. unix_shell = ('/system/bin/sh' if hasattr(sys, 'getandroidapilevel') else '/bin/sh') args = [unix_shell, "-c"] + args if executable: args[0] = executable if executable is None: executable = args[0] sys.audit("subprocess.Popen", executable, args, cwd, env) if (_USE_POSIX_SPAWN and os.path.dirname(executable) and preexec_fn is None and (not close_fds or _HAVE_POSIX_SPAWN_CLOSEFROM) and not pass_fds and cwd is None and (p2cread == -1 or p2cread > 2) and (c2pwrite == -1 or c2pwrite > 2) and (errwrite == -1 or errwrite > 2) and not start_new_session and process_group == -1 and gid is None and gids is None and uid is None and umask < 0): self._posix_spawn(args, executable, env, restore_signals, close_fds, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite) return orig_executable = executable # For transferring possible exec failure from child to parent. # Data format: "exception name:hex errno:description" # Pickle is not used; it is complex and involves memory allocation. errpipe_read, errpipe_write = os.pipe() # errpipe_write must not be in the standard io 0, 1, or 2 fd range. low_fds_to_close = [] while errpipe_write < 3: low_fds_to_close.append(errpipe_write) errpipe_write = os.dup(errpipe_write) for low_fd in low_fds_to_close: os.close(low_fd) try: try: # We must avoid complex work that could involve # malloc or free in the child process to avoid # potential deadlocks, thus we do all this here. # and pass it to fork_exec() if env is not None: env_list = [] for k, v in env.items(): k = os.fsencode(k) if b'=' in k: raise ValueError("illegal environment variable name") env_list.append(k + b'=' + os.fsencode(v)) else: env_list = None # Use execv instead of execve. executable = os.fsencode(executable) if os.path.dirname(executable): executable_list = (executable,) else: # This matches the behavior of os._execvpe(). executable_list = tuple( os.path.join(os.fsencode(dir), executable) for dir in os.get_exec_path(env)) fds_to_keep = set(pass_fds) fds_to_keep.add(errpipe_write) self.pid = _fork_exec( args, executable_list, close_fds, tuple(sorted(map(int, fds_to_keep))), cwd, env_list, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite, errpipe_read, errpipe_write, restore_signals, start_new_session, process_group, gid, gids, uid, umask, preexec_fn) self._child_created = True finally: # be sure the FD is closed no matter what os.close(errpipe_write) self._close_pipe_fds(p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite) # Wait for exec to fail or succeed; possibly raising an # exception (limited in size) errpipe_data = bytearray() while True: part = os.read(errpipe_read, 50000) errpipe_data += part if not part or len(errpipe_data) > 50000: break finally: # be sure the FD is closed no matter what os.close(errpipe_read) if errpipe_data: try: pid, sts = os.waitpid(self.pid, 0) if pid == self.pid: self._handle_exitstatus(sts) else: self.returncode = sys.maxsize except ChildProcessError: pass try: exception_name, hex_errno, err_msg = ( errpipe_data.split(b':', 2)) # The encoding here should match the encoding # written in by the subprocess implementations # like _posixsubprocess err_msg = err_msg.decode() except ValueError: exception_name = b'SubprocessError' hex_errno = b'0' err_msg = 'Bad exception data from child: {!r}'.format( bytes(errpipe_data)) child_exception_type = getattr( builtins, exception_name.decode('ascii'), SubprocessError) if issubclass(child_exception_type, OSError) and hex_errno: errno_num = int(hex_errno, 16) if err_msg == "noexec:chdir": err_msg = "" # The error must be from chdir(cwd). err_filename = cwd elif err_msg == "noexec": err_msg = "" err_filename = None else: err_filename = orig_executable if errno_num != 0: err_msg = os.strerror(errno_num) if err_filename is not None: > raise child_exception_type(errno_num, err_msg, err_filename) E FileNotFoundError: [Errno 2] No such file or directory: 'python' /usr/lib64/python3.14/subprocess.py:1990: FileNotFoundError _ test_all_examples[/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/example5-introspection.py] _ file = '/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/example5-introspection.py' @pytest.mark.parametrize( "file", glob.iglob(os.path.dirname(__file__) + "/../examples/*.py") ) def test_all_examples(file): pyrtl.reset_working_block() try: > subprocess.check_output(["python", file]) tests/test_examples.py:23: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.14/subprocess.py:473: in check_output return run(*popenargs, stdout=PIPE, timeout=timeout, check=True, /usr/lib64/python3.14/subprocess.py:555: in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ /usr/lib64/python3.14/subprocess.py:1039: in __init__ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = args = ['python', '/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/example5-introspection.py'] executable = b'python', preexec_fn = None, close_fds = True, pass_fds = () cwd = None, env = None, startupinfo = None, creationflags = 0, shell = False p2cread = -1, p2cwrite = -1, c2pread = 13, c2pwrite = 14, errread = -1 errwrite = -1, restore_signals = True, gid = None, gids = None, uid = None umask = -1, start_new_session = False, process_group = -1 def _execute_child(self, args, executable, preexec_fn, close_fds, pass_fds, cwd, env, startupinfo, creationflags, shell, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite, restore_signals, gid, gids, uid, umask, start_new_session, process_group): """Execute program (POSIX version)""" if isinstance(args, (str, bytes)): args = [args] elif isinstance(args, os.PathLike): if shell: raise TypeError('path-like args is not allowed when ' 'shell is true') args = [args] else: args = list(args) if shell: # On Android the default shell is at '/system/bin/sh'. unix_shell = ('/system/bin/sh' if hasattr(sys, 'getandroidapilevel') else '/bin/sh') args = [unix_shell, "-c"] + args if executable: args[0] = executable if executable is None: executable = args[0] sys.audit("subprocess.Popen", executable, args, cwd, env) if (_USE_POSIX_SPAWN and os.path.dirname(executable) and preexec_fn is None and (not close_fds or _HAVE_POSIX_SPAWN_CLOSEFROM) and not pass_fds and cwd is None and (p2cread == -1 or p2cread > 2) and (c2pwrite == -1 or c2pwrite > 2) and (errwrite == -1 or errwrite > 2) and not start_new_session and process_group == -1 and gid is None and gids is None and uid is None and umask < 0): self._posix_spawn(args, executable, env, restore_signals, close_fds, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite) return orig_executable = executable # For transferring possible exec failure from child to parent. # Data format: "exception name:hex errno:description" # Pickle is not used; it is complex and involves memory allocation. errpipe_read, errpipe_write = os.pipe() # errpipe_write must not be in the standard io 0, 1, or 2 fd range. low_fds_to_close = [] while errpipe_write < 3: low_fds_to_close.append(errpipe_write) errpipe_write = os.dup(errpipe_write) for low_fd in low_fds_to_close: os.close(low_fd) try: try: # We must avoid complex work that could involve # malloc or free in the child process to avoid # potential deadlocks, thus we do all this here. # and pass it to fork_exec() if env is not None: env_list = [] for k, v in env.items(): k = os.fsencode(k) if b'=' in k: raise ValueError("illegal environment variable name") env_list.append(k + b'=' + os.fsencode(v)) else: env_list = None # Use execv instead of execve. executable = os.fsencode(executable) if os.path.dirname(executable): executable_list = (executable,) else: # This matches the behavior of os._execvpe(). executable_list = tuple( os.path.join(os.fsencode(dir), executable) for dir in os.get_exec_path(env)) fds_to_keep = set(pass_fds) fds_to_keep.add(errpipe_write) self.pid = _fork_exec( args, executable_list, close_fds, tuple(sorted(map(int, fds_to_keep))), cwd, env_list, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite, errpipe_read, errpipe_write, restore_signals, start_new_session, process_group, gid, gids, uid, umask, preexec_fn) self._child_created = True finally: # be sure the FD is closed no matter what os.close(errpipe_write) self._close_pipe_fds(p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite) # Wait for exec to fail or succeed; possibly raising an # exception (limited in size) errpipe_data = bytearray() while True: part = os.read(errpipe_read, 50000) errpipe_data += part if not part or len(errpipe_data) > 50000: break finally: # be sure the FD is closed no matter what os.close(errpipe_read) if errpipe_data: try: pid, sts = os.waitpid(self.pid, 0) if pid == self.pid: self._handle_exitstatus(sts) else: self.returncode = sys.maxsize except ChildProcessError: pass try: exception_name, hex_errno, err_msg = ( errpipe_data.split(b':', 2)) # The encoding here should match the encoding # written in by the subprocess implementations # like _posixsubprocess err_msg = err_msg.decode() except ValueError: exception_name = b'SubprocessError' hex_errno = b'0' err_msg = 'Bad exception data from child: {!r}'.format( bytes(errpipe_data)) child_exception_type = getattr( builtins, exception_name.decode('ascii'), SubprocessError) if issubclass(child_exception_type, OSError) and hex_errno: errno_num = int(hex_errno, 16) if err_msg == "noexec:chdir": err_msg = "" # The error must be from chdir(cwd). err_filename = cwd elif err_msg == "noexec": err_msg = "" err_filename = None else: err_filename = orig_executable if errno_num != 0: err_msg = os.strerror(errno_num) if err_filename is not None: > raise child_exception_type(errno_num, err_msg, err_filename) E FileNotFoundError: [Errno 2] No such file or directory: 'python' /usr/lib64/python3.14/subprocess.py:1990: FileNotFoundError _ test_all_examples[/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/example4-debuggingtools.py] _ file = '/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/example4-debuggingtools.py' @pytest.mark.parametrize( "file", glob.iglob(os.path.dirname(__file__) + "/../examples/*.py") ) def test_all_examples(file): pyrtl.reset_working_block() try: > subprocess.check_output(["python", file]) tests/test_examples.py:23: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.14/subprocess.py:473: in check_output return run(*popenargs, stdout=PIPE, timeout=timeout, check=True, /usr/lib64/python3.14/subprocess.py:555: in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ /usr/lib64/python3.14/subprocess.py:1039: in __init__ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = args = ['python', '/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/example4-debuggingtools.py'] executable = b'python', preexec_fn = None, close_fds = True, pass_fds = () cwd = None, env = None, startupinfo = None, creationflags = 0, shell = False p2cread = -1, p2cwrite = -1, c2pread = 13, c2pwrite = 14, errread = -1 errwrite = -1, restore_signals = True, gid = None, gids = None, uid = None umask = -1, start_new_session = False, process_group = -1 def _execute_child(self, args, executable, preexec_fn, close_fds, pass_fds, cwd, env, startupinfo, creationflags, shell, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite, restore_signals, gid, gids, uid, umask, start_new_session, process_group): """Execute program (POSIX version)""" if isinstance(args, (str, bytes)): args = [args] elif isinstance(args, os.PathLike): if shell: raise TypeError('path-like args is not allowed when ' 'shell is true') args = [args] else: args = list(args) if shell: # On Android the default shell is at '/system/bin/sh'. unix_shell = ('/system/bin/sh' if hasattr(sys, 'getandroidapilevel') else '/bin/sh') args = [unix_shell, "-c"] + args if executable: args[0] = executable if executable is None: executable = args[0] sys.audit("subprocess.Popen", executable, args, cwd, env) if (_USE_POSIX_SPAWN and os.path.dirname(executable) and preexec_fn is None and (not close_fds or _HAVE_POSIX_SPAWN_CLOSEFROM) and not pass_fds and cwd is None and (p2cread == -1 or p2cread > 2) and (c2pwrite == -1 or c2pwrite > 2) and (errwrite == -1 or errwrite > 2) and not start_new_session and process_group == -1 and gid is None and gids is None and uid is None and umask < 0): self._posix_spawn(args, executable, env, restore_signals, close_fds, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite) return orig_executable = executable # For transferring possible exec failure from child to parent. # Data format: "exception name:hex errno:description" # Pickle is not used; it is complex and involves memory allocation. errpipe_read, errpipe_write = os.pipe() # errpipe_write must not be in the standard io 0, 1, or 2 fd range. low_fds_to_close = [] while errpipe_write < 3: low_fds_to_close.append(errpipe_write) errpipe_write = os.dup(errpipe_write) for low_fd in low_fds_to_close: os.close(low_fd) try: try: # We must avoid complex work that could involve # malloc or free in the child process to avoid # potential deadlocks, thus we do all this here. # and pass it to fork_exec() if env is not None: env_list = [] for k, v in env.items(): k = os.fsencode(k) if b'=' in k: raise ValueError("illegal environment variable name") env_list.append(k + b'=' + os.fsencode(v)) else: env_list = None # Use execv instead of execve. executable = os.fsencode(executable) if os.path.dirname(executable): executable_list = (executable,) else: # This matches the behavior of os._execvpe(). executable_list = tuple( os.path.join(os.fsencode(dir), executable) for dir in os.get_exec_path(env)) fds_to_keep = set(pass_fds) fds_to_keep.add(errpipe_write) self.pid = _fork_exec( args, executable_list, close_fds, tuple(sorted(map(int, fds_to_keep))), cwd, env_list, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite, errpipe_read, errpipe_write, restore_signals, start_new_session, process_group, gid, gids, uid, umask, preexec_fn) self._child_created = True finally: # be sure the FD is closed no matter what os.close(errpipe_write) self._close_pipe_fds(p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite) # Wait for exec to fail or succeed; possibly raising an # exception (limited in size) errpipe_data = bytearray() while True: part = os.read(errpipe_read, 50000) errpipe_data += part if not part or len(errpipe_data) > 50000: break finally: # be sure the FD is closed no matter what os.close(errpipe_read) if errpipe_data: try: pid, sts = os.waitpid(self.pid, 0) if pid == self.pid: self._handle_exitstatus(sts) else: self.returncode = sys.maxsize except ChildProcessError: pass try: exception_name, hex_errno, err_msg = ( errpipe_data.split(b':', 2)) # The encoding here should match the encoding # written in by the subprocess implementations # like _posixsubprocess err_msg = err_msg.decode() except ValueError: exception_name = b'SubprocessError' hex_errno = b'0' err_msg = 'Bad exception data from child: {!r}'.format( bytes(errpipe_data)) child_exception_type = getattr( builtins, exception_name.decode('ascii'), SubprocessError) if issubclass(child_exception_type, OSError) and hex_errno: errno_num = int(hex_errno, 16) if err_msg == "noexec:chdir": err_msg = "" # The error must be from chdir(cwd). err_filename = cwd elif err_msg == "noexec": err_msg = "" err_filename = None else: err_filename = orig_executable if errno_num != 0: err_msg = os.strerror(errno_num) if err_filename is not None: > raise child_exception_type(errno_num, err_msg, err_filename) E FileNotFoundError: [Errno 2] No such file or directory: 'python' /usr/lib64/python3.14/subprocess.py:1990: FileNotFoundError _ test_all_examples[/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/example3-statemachine.py] _ file = '/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/example3-statemachine.py' @pytest.mark.parametrize( "file", glob.iglob(os.path.dirname(__file__) + "/../examples/*.py") ) def test_all_examples(file): pyrtl.reset_working_block() try: > subprocess.check_output(["python", file]) tests/test_examples.py:23: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.14/subprocess.py:473: in check_output return run(*popenargs, stdout=PIPE, timeout=timeout, check=True, /usr/lib64/python3.14/subprocess.py:555: in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ /usr/lib64/python3.14/subprocess.py:1039: in __init__ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = args = ['python', '/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/example3-statemachine.py'] executable = b'python', preexec_fn = None, close_fds = True, pass_fds = () cwd = None, env = None, startupinfo = None, creationflags = 0, shell = False p2cread = -1, p2cwrite = -1, c2pread = 13, c2pwrite = 14, errread = -1 errwrite = -1, restore_signals = True, gid = None, gids = None, uid = None umask = -1, start_new_session = False, process_group = -1 def _execute_child(self, args, executable, preexec_fn, close_fds, pass_fds, cwd, env, startupinfo, creationflags, shell, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite, restore_signals, gid, gids, uid, umask, start_new_session, process_group): """Execute program (POSIX version)""" if isinstance(args, (str, bytes)): args = [args] elif isinstance(args, os.PathLike): if shell: raise TypeError('path-like args is not allowed when ' 'shell is true') args = [args] else: args = list(args) if shell: # On Android the default shell is at '/system/bin/sh'. unix_shell = ('/system/bin/sh' if hasattr(sys, 'getandroidapilevel') else '/bin/sh') args = [unix_shell, "-c"] + args if executable: args[0] = executable if executable is None: executable = args[0] sys.audit("subprocess.Popen", executable, args, cwd, env) if (_USE_POSIX_SPAWN and os.path.dirname(executable) and preexec_fn is None and (not close_fds or _HAVE_POSIX_SPAWN_CLOSEFROM) and not pass_fds and cwd is None and (p2cread == -1 or p2cread > 2) and (c2pwrite == -1 or c2pwrite > 2) and (errwrite == -1 or errwrite > 2) and not start_new_session and process_group == -1 and gid is None and gids is None and uid is None and umask < 0): self._posix_spawn(args, executable, env, restore_signals, close_fds, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite) return orig_executable = executable # For transferring possible exec failure from child to parent. # Data format: "exception name:hex errno:description" # Pickle is not used; it is complex and involves memory allocation. errpipe_read, errpipe_write = os.pipe() # errpipe_write must not be in the standard io 0, 1, or 2 fd range. low_fds_to_close = [] while errpipe_write < 3: low_fds_to_close.append(errpipe_write) errpipe_write = os.dup(errpipe_write) for low_fd in low_fds_to_close: os.close(low_fd) try: try: # We must avoid complex work that could involve # malloc or free in the child process to avoid # potential deadlocks, thus we do all this here. # and pass it to fork_exec() if env is not None: env_list = [] for k, v in env.items(): k = os.fsencode(k) if b'=' in k: raise ValueError("illegal environment variable name") env_list.append(k + b'=' + os.fsencode(v)) else: env_list = None # Use execv instead of execve. executable = os.fsencode(executable) if os.path.dirname(executable): executable_list = (executable,) else: # This matches the behavior of os._execvpe(). executable_list = tuple( os.path.join(os.fsencode(dir), executable) for dir in os.get_exec_path(env)) fds_to_keep = set(pass_fds) fds_to_keep.add(errpipe_write) self.pid = _fork_exec( args, executable_list, close_fds, tuple(sorted(map(int, fds_to_keep))), cwd, env_list, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite, errpipe_read, errpipe_write, restore_signals, start_new_session, process_group, gid, gids, uid, umask, preexec_fn) self._child_created = True finally: # be sure the FD is closed no matter what os.close(errpipe_write) self._close_pipe_fds(p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite) # Wait for exec to fail or succeed; possibly raising an # exception (limited in size) errpipe_data = bytearray() while True: part = os.read(errpipe_read, 50000) errpipe_data += part if not part or len(errpipe_data) > 50000: break finally: # be sure the FD is closed no matter what os.close(errpipe_read) if errpipe_data: try: pid, sts = os.waitpid(self.pid, 0) if pid == self.pid: self._handle_exitstatus(sts) else: self.returncode = sys.maxsize except ChildProcessError: pass try: exception_name, hex_errno, err_msg = ( errpipe_data.split(b':', 2)) # The encoding here should match the encoding # written in by the subprocess implementations # like _posixsubprocess err_msg = err_msg.decode() except ValueError: exception_name = b'SubprocessError' hex_errno = b'0' err_msg = 'Bad exception data from child: {!r}'.format( bytes(errpipe_data)) child_exception_type = getattr( builtins, exception_name.decode('ascii'), SubprocessError) if issubclass(child_exception_type, OSError) and hex_errno: errno_num = int(hex_errno, 16) if err_msg == "noexec:chdir": err_msg = "" # The error must be from chdir(cwd). err_filename = cwd elif err_msg == "noexec": err_msg = "" err_filename = None else: err_filename = orig_executable if errno_num != 0: err_msg = os.strerror(errno_num) if err_filename is not None: > raise child_exception_type(errno_num, err_msg, err_filename) E FileNotFoundError: [Errno 2] No such file or directory: 'python' /usr/lib64/python3.14/subprocess.py:1990: FileNotFoundError _ test_all_examples[/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/example2-counter.py] _ file = '/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/example2-counter.py' @pytest.mark.parametrize( "file", glob.iglob(os.path.dirname(__file__) + "/../examples/*.py") ) def test_all_examples(file): pyrtl.reset_working_block() try: > subprocess.check_output(["python", file]) tests/test_examples.py:23: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.14/subprocess.py:473: in check_output return run(*popenargs, stdout=PIPE, timeout=timeout, check=True, /usr/lib64/python3.14/subprocess.py:555: in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ /usr/lib64/python3.14/subprocess.py:1039: in __init__ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = args = ['python', '/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/example2-counter.py'] executable = b'python', preexec_fn = None, close_fds = True, pass_fds = () cwd = None, env = None, startupinfo = None, creationflags = 0, shell = False p2cread = -1, p2cwrite = -1, c2pread = 13, c2pwrite = 14, errread = -1 errwrite = -1, restore_signals = True, gid = None, gids = None, uid = None umask = -1, start_new_session = False, process_group = -1 def _execute_child(self, args, executable, preexec_fn, close_fds, pass_fds, cwd, env, startupinfo, creationflags, shell, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite, restore_signals, gid, gids, uid, umask, start_new_session, process_group): """Execute program (POSIX version)""" if isinstance(args, (str, bytes)): args = [args] elif isinstance(args, os.PathLike): if shell: raise TypeError('path-like args is not allowed when ' 'shell is true') args = [args] else: args = list(args) if shell: # On Android the default shell is at '/system/bin/sh'. unix_shell = ('/system/bin/sh' if hasattr(sys, 'getandroidapilevel') else '/bin/sh') args = [unix_shell, "-c"] + args if executable: args[0] = executable if executable is None: executable = args[0] sys.audit("subprocess.Popen", executable, args, cwd, env) if (_USE_POSIX_SPAWN and os.path.dirname(executable) and preexec_fn is None and (not close_fds or _HAVE_POSIX_SPAWN_CLOSEFROM) and not pass_fds and cwd is None and (p2cread == -1 or p2cread > 2) and (c2pwrite == -1 or c2pwrite > 2) and (errwrite == -1 or errwrite > 2) and not start_new_session and process_group == -1 and gid is None and gids is None and uid is None and umask < 0): self._posix_spawn(args, executable, env, restore_signals, close_fds, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite) return orig_executable = executable # For transferring possible exec failure from child to parent. # Data format: "exception name:hex errno:description" # Pickle is not used; it is complex and involves memory allocation. errpipe_read, errpipe_write = os.pipe() # errpipe_write must not be in the standard io 0, 1, or 2 fd range. low_fds_to_close = [] while errpipe_write < 3: low_fds_to_close.append(errpipe_write) errpipe_write = os.dup(errpipe_write) for low_fd in low_fds_to_close: os.close(low_fd) try: try: # We must avoid complex work that could involve # malloc or free in the child process to avoid # potential deadlocks, thus we do all this here. # and pass it to fork_exec() if env is not None: env_list = [] for k, v in env.items(): k = os.fsencode(k) if b'=' in k: raise ValueError("illegal environment variable name") env_list.append(k + b'=' + os.fsencode(v)) else: env_list = None # Use execv instead of execve. executable = os.fsencode(executable) if os.path.dirname(executable): executable_list = (executable,) else: # This matches the behavior of os._execvpe(). executable_list = tuple( os.path.join(os.fsencode(dir), executable) for dir in os.get_exec_path(env)) fds_to_keep = set(pass_fds) fds_to_keep.add(errpipe_write) self.pid = _fork_exec( args, executable_list, close_fds, tuple(sorted(map(int, fds_to_keep))), cwd, env_list, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite, errpipe_read, errpipe_write, restore_signals, start_new_session, process_group, gid, gids, uid, umask, preexec_fn) self._child_created = True finally: # be sure the FD is closed no matter what os.close(errpipe_write) self._close_pipe_fds(p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite) # Wait for exec to fail or succeed; possibly raising an # exception (limited in size) errpipe_data = bytearray() while True: part = os.read(errpipe_read, 50000) errpipe_data += part if not part or len(errpipe_data) > 50000: break finally: # be sure the FD is closed no matter what os.close(errpipe_read) if errpipe_data: try: pid, sts = os.waitpid(self.pid, 0) if pid == self.pid: self._handle_exitstatus(sts) else: self.returncode = sys.maxsize except ChildProcessError: pass try: exception_name, hex_errno, err_msg = ( errpipe_data.split(b':', 2)) # The encoding here should match the encoding # written in by the subprocess implementations # like _posixsubprocess err_msg = err_msg.decode() except ValueError: exception_name = b'SubprocessError' hex_errno = b'0' err_msg = 'Bad exception data from child: {!r}'.format( bytes(errpipe_data)) child_exception_type = getattr( builtins, exception_name.decode('ascii'), SubprocessError) if issubclass(child_exception_type, OSError) and hex_errno: errno_num = int(hex_errno, 16) if err_msg == "noexec:chdir": err_msg = "" # The error must be from chdir(cwd). err_filename = cwd elif err_msg == "noexec": err_msg = "" err_filename = None else: err_filename = orig_executable if errno_num != 0: err_msg = os.strerror(errno_num) if err_filename is not None: > raise child_exception_type(errno_num, err_msg, err_filename) E FileNotFoundError: [Errno 2] No such file or directory: 'python' /usr/lib64/python3.14/subprocess.py:1990: FileNotFoundError _ test_all_examples[/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/example1.2-wire-struct.py] _ file = '/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/example1.2-wire-struct.py' @pytest.mark.parametrize( "file", glob.iglob(os.path.dirname(__file__) + "/../examples/*.py") ) def test_all_examples(file): pyrtl.reset_working_block() try: > subprocess.check_output(["python", file]) tests/test_examples.py:23: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.14/subprocess.py:473: in check_output return run(*popenargs, stdout=PIPE, timeout=timeout, check=True, /usr/lib64/python3.14/subprocess.py:555: in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ /usr/lib64/python3.14/subprocess.py:1039: in __init__ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = args = ['python', '/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/example1.2-wire-struct.py'] executable = b'python', preexec_fn = None, close_fds = True, pass_fds = () cwd = None, env = None, startupinfo = None, creationflags = 0, shell = False p2cread = -1, p2cwrite = -1, c2pread = 13, c2pwrite = 14, errread = -1 errwrite = -1, restore_signals = True, gid = None, gids = None, uid = None umask = -1, start_new_session = False, process_group = -1 def _execute_child(self, args, executable, preexec_fn, close_fds, pass_fds, cwd, env, startupinfo, creationflags, shell, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite, restore_signals, gid, gids, uid, umask, start_new_session, process_group): """Execute program (POSIX version)""" if isinstance(args, (str, bytes)): args = [args] elif isinstance(args, os.PathLike): if shell: raise TypeError('path-like args is not allowed when ' 'shell is true') args = [args] else: args = list(args) if shell: # On Android the default shell is at '/system/bin/sh'. unix_shell = ('/system/bin/sh' if hasattr(sys, 'getandroidapilevel') else '/bin/sh') args = [unix_shell, "-c"] + args if executable: args[0] = executable if executable is None: executable = args[0] sys.audit("subprocess.Popen", executable, args, cwd, env) if (_USE_POSIX_SPAWN and os.path.dirname(executable) and preexec_fn is None and (not close_fds or _HAVE_POSIX_SPAWN_CLOSEFROM) and not pass_fds and cwd is None and (p2cread == -1 or p2cread > 2) and (c2pwrite == -1 or c2pwrite > 2) and (errwrite == -1 or errwrite > 2) and not start_new_session and process_group == -1 and gid is None and gids is None and uid is None and umask < 0): self._posix_spawn(args, executable, env, restore_signals, close_fds, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite) return orig_executable = executable # For transferring possible exec failure from child to parent. # Data format: "exception name:hex errno:description" # Pickle is not used; it is complex and involves memory allocation. errpipe_read, errpipe_write = os.pipe() # errpipe_write must not be in the standard io 0, 1, or 2 fd range. low_fds_to_close = [] while errpipe_write < 3: low_fds_to_close.append(errpipe_write) errpipe_write = os.dup(errpipe_write) for low_fd in low_fds_to_close: os.close(low_fd) try: try: # We must avoid complex work that could involve # malloc or free in the child process to avoid # potential deadlocks, thus we do all this here. # and pass it to fork_exec() if env is not None: env_list = [] for k, v in env.items(): k = os.fsencode(k) if b'=' in k: raise ValueError("illegal environment variable name") env_list.append(k + b'=' + os.fsencode(v)) else: env_list = None # Use execv instead of execve. executable = os.fsencode(executable) if os.path.dirname(executable): executable_list = (executable,) else: # This matches the behavior of os._execvpe(). executable_list = tuple( os.path.join(os.fsencode(dir), executable) for dir in os.get_exec_path(env)) fds_to_keep = set(pass_fds) fds_to_keep.add(errpipe_write) self.pid = _fork_exec( args, executable_list, close_fds, tuple(sorted(map(int, fds_to_keep))), cwd, env_list, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite, errpipe_read, errpipe_write, restore_signals, start_new_session, process_group, gid, gids, uid, umask, preexec_fn) self._child_created = True finally: # be sure the FD is closed no matter what os.close(errpipe_write) self._close_pipe_fds(p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite) # Wait for exec to fail or succeed; possibly raising an # exception (limited in size) errpipe_data = bytearray() while True: part = os.read(errpipe_read, 50000) errpipe_data += part if not part or len(errpipe_data) > 50000: break finally: # be sure the FD is closed no matter what os.close(errpipe_read) if errpipe_data: try: pid, sts = os.waitpid(self.pid, 0) if pid == self.pid: self._handle_exitstatus(sts) else: self.returncode = sys.maxsize except ChildProcessError: pass try: exception_name, hex_errno, err_msg = ( errpipe_data.split(b':', 2)) # The encoding here should match the encoding # written in by the subprocess implementations # like _posixsubprocess err_msg = err_msg.decode() except ValueError: exception_name = b'SubprocessError' hex_errno = b'0' err_msg = 'Bad exception data from child: {!r}'.format( bytes(errpipe_data)) child_exception_type = getattr( builtins, exception_name.decode('ascii'), SubprocessError) if issubclass(child_exception_type, OSError) and hex_errno: errno_num = int(hex_errno, 16) if err_msg == "noexec:chdir": err_msg = "" # The error must be from chdir(cwd). err_filename = cwd elif err_msg == "noexec": err_msg = "" err_filename = None else: err_filename = orig_executable if errno_num != 0: err_msg = os.strerror(errno_num) if err_filename is not None: > raise child_exception_type(errno_num, err_msg, err_filename) E FileNotFoundError: [Errno 2] No such file or directory: 'python' /usr/lib64/python3.14/subprocess.py:1990: FileNotFoundError _ test_all_examples[/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/example1.1-signed-numbers.py] _ file = '/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/example1.1-signed-numbers.py' @pytest.mark.parametrize( "file", glob.iglob(os.path.dirname(__file__) + "/../examples/*.py") ) def test_all_examples(file): pyrtl.reset_working_block() try: > subprocess.check_output(["python", file]) tests/test_examples.py:23: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.14/subprocess.py:473: in check_output return run(*popenargs, stdout=PIPE, timeout=timeout, check=True, /usr/lib64/python3.14/subprocess.py:555: in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ /usr/lib64/python3.14/subprocess.py:1039: in __init__ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = args = ['python', '/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/example1.1-signed-numbers.py'] executable = b'python', preexec_fn = None, close_fds = True, pass_fds = () cwd = None, env = None, startupinfo = None, creationflags = 0, shell = False p2cread = -1, p2cwrite = -1, c2pread = 13, c2pwrite = 14, errread = -1 errwrite = -1, restore_signals = True, gid = None, gids = None, uid = None umask = -1, start_new_session = False, process_group = -1 def _execute_child(self, args, executable, preexec_fn, close_fds, pass_fds, cwd, env, startupinfo, creationflags, shell, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite, restore_signals, gid, gids, uid, umask, start_new_session, process_group): """Execute program (POSIX version)""" if isinstance(args, (str, bytes)): args = [args] elif isinstance(args, os.PathLike): if shell: raise TypeError('path-like args is not allowed when ' 'shell is true') args = [args] else: args = list(args) if shell: # On Android the default shell is at '/system/bin/sh'. unix_shell = ('/system/bin/sh' if hasattr(sys, 'getandroidapilevel') else '/bin/sh') args = [unix_shell, "-c"] + args if executable: args[0] = executable if executable is None: executable = args[0] sys.audit("subprocess.Popen", executable, args, cwd, env) if (_USE_POSIX_SPAWN and os.path.dirname(executable) and preexec_fn is None and (not close_fds or _HAVE_POSIX_SPAWN_CLOSEFROM) and not pass_fds and cwd is None and (p2cread == -1 or p2cread > 2) and (c2pwrite == -1 or c2pwrite > 2) and (errwrite == -1 or errwrite > 2) and not start_new_session and process_group == -1 and gid is None and gids is None and uid is None and umask < 0): self._posix_spawn(args, executable, env, restore_signals, close_fds, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite) return orig_executable = executable # For transferring possible exec failure from child to parent. # Data format: "exception name:hex errno:description" # Pickle is not used; it is complex and involves memory allocation. errpipe_read, errpipe_write = os.pipe() # errpipe_write must not be in the standard io 0, 1, or 2 fd range. low_fds_to_close = [] while errpipe_write < 3: low_fds_to_close.append(errpipe_write) errpipe_write = os.dup(errpipe_write) for low_fd in low_fds_to_close: os.close(low_fd) try: try: # We must avoid complex work that could involve # malloc or free in the child process to avoid # potential deadlocks, thus we do all this here. # and pass it to fork_exec() if env is not None: env_list = [] for k, v in env.items(): k = os.fsencode(k) if b'=' in k: raise ValueError("illegal environment variable name") env_list.append(k + b'=' + os.fsencode(v)) else: env_list = None # Use execv instead of execve. executable = os.fsencode(executable) if os.path.dirname(executable): executable_list = (executable,) else: # This matches the behavior of os._execvpe(). executable_list = tuple( os.path.join(os.fsencode(dir), executable) for dir in os.get_exec_path(env)) fds_to_keep = set(pass_fds) fds_to_keep.add(errpipe_write) self.pid = _fork_exec( args, executable_list, close_fds, tuple(sorted(map(int, fds_to_keep))), cwd, env_list, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite, errpipe_read, errpipe_write, restore_signals, start_new_session, process_group, gid, gids, uid, umask, preexec_fn) self._child_created = True finally: # be sure the FD is closed no matter what os.close(errpipe_write) self._close_pipe_fds(p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite) # Wait for exec to fail or succeed; possibly raising an # exception (limited in size) errpipe_data = bytearray() while True: part = os.read(errpipe_read, 50000) errpipe_data += part if not part or len(errpipe_data) > 50000: break finally: # be sure the FD is closed no matter what os.close(errpipe_read) if errpipe_data: try: pid, sts = os.waitpid(self.pid, 0) if pid == self.pid: self._handle_exitstatus(sts) else: self.returncode = sys.maxsize except ChildProcessError: pass try: exception_name, hex_errno, err_msg = ( errpipe_data.split(b':', 2)) # The encoding here should match the encoding # written in by the subprocess implementations # like _posixsubprocess err_msg = err_msg.decode() except ValueError: exception_name = b'SubprocessError' hex_errno = b'0' err_msg = 'Bad exception data from child: {!r}'.format( bytes(errpipe_data)) child_exception_type = getattr( builtins, exception_name.decode('ascii'), SubprocessError) if issubclass(child_exception_type, OSError) and hex_errno: errno_num = int(hex_errno, 16) if err_msg == "noexec:chdir": err_msg = "" # The error must be from chdir(cwd). err_filename = cwd elif err_msg == "noexec": err_msg = "" err_filename = None else: err_filename = orig_executable if errno_num != 0: err_msg = os.strerror(errno_num) if err_filename is not None: > raise child_exception_type(errno_num, err_msg, err_filename) E FileNotFoundError: [Errno 2] No such file or directory: 'python' /usr/lib64/python3.14/subprocess.py:1990: FileNotFoundError _ test_all_examples[/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/example1-combologic.py] _ file = '/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/example1-combologic.py' @pytest.mark.parametrize( "file", glob.iglob(os.path.dirname(__file__) + "/../examples/*.py") ) def test_all_examples(file): pyrtl.reset_working_block() try: > subprocess.check_output(["python", file]) tests/test_examples.py:23: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.14/subprocess.py:473: in check_output return run(*popenargs, stdout=PIPE, timeout=timeout, check=True, /usr/lib64/python3.14/subprocess.py:555: in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ /usr/lib64/python3.14/subprocess.py:1039: in __init__ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = args = ['python', '/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/example1-combologic.py'] executable = b'python', preexec_fn = None, close_fds = True, pass_fds = () cwd = None, env = None, startupinfo = None, creationflags = 0, shell = False p2cread = -1, p2cwrite = -1, c2pread = 13, c2pwrite = 14, errread = -1 errwrite = -1, restore_signals = True, gid = None, gids = None, uid = None umask = -1, start_new_session = False, process_group = -1 def _execute_child(self, args, executable, preexec_fn, close_fds, pass_fds, cwd, env, startupinfo, creationflags, shell, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite, restore_signals, gid, gids, uid, umask, start_new_session, process_group): """Execute program (POSIX version)""" if isinstance(args, (str, bytes)): args = [args] elif isinstance(args, os.PathLike): if shell: raise TypeError('path-like args is not allowed when ' 'shell is true') args = [args] else: args = list(args) if shell: # On Android the default shell is at '/system/bin/sh'. unix_shell = ('/system/bin/sh' if hasattr(sys, 'getandroidapilevel') else '/bin/sh') args = [unix_shell, "-c"] + args if executable: args[0] = executable if executable is None: executable = args[0] sys.audit("subprocess.Popen", executable, args, cwd, env) if (_USE_POSIX_SPAWN and os.path.dirname(executable) and preexec_fn is None and (not close_fds or _HAVE_POSIX_SPAWN_CLOSEFROM) and not pass_fds and cwd is None and (p2cread == -1 or p2cread > 2) and (c2pwrite == -1 or c2pwrite > 2) and (errwrite == -1 or errwrite > 2) and not start_new_session and process_group == -1 and gid is None and gids is None and uid is None and umask < 0): self._posix_spawn(args, executable, env, restore_signals, close_fds, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite) return orig_executable = executable # For transferring possible exec failure from child to parent. # Data format: "exception name:hex errno:description" # Pickle is not used; it is complex and involves memory allocation. errpipe_read, errpipe_write = os.pipe() # errpipe_write must not be in the standard io 0, 1, or 2 fd range. low_fds_to_close = [] while errpipe_write < 3: low_fds_to_close.append(errpipe_write) errpipe_write = os.dup(errpipe_write) for low_fd in low_fds_to_close: os.close(low_fd) try: try: # We must avoid complex work that could involve # malloc or free in the child process to avoid # potential deadlocks, thus we do all this here. # and pass it to fork_exec() if env is not None: env_list = [] for k, v in env.items(): k = os.fsencode(k) if b'=' in k: raise ValueError("illegal environment variable name") env_list.append(k + b'=' + os.fsencode(v)) else: env_list = None # Use execv instead of execve. executable = os.fsencode(executable) if os.path.dirname(executable): executable_list = (executable,) else: # This matches the behavior of os._execvpe(). executable_list = tuple( os.path.join(os.fsencode(dir), executable) for dir in os.get_exec_path(env)) fds_to_keep = set(pass_fds) fds_to_keep.add(errpipe_write) self.pid = _fork_exec( args, executable_list, close_fds, tuple(sorted(map(int, fds_to_keep))), cwd, env_list, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite, errpipe_read, errpipe_write, restore_signals, start_new_session, process_group, gid, gids, uid, umask, preexec_fn) self._child_created = True finally: # be sure the FD is closed no matter what os.close(errpipe_write) self._close_pipe_fds(p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite) # Wait for exec to fail or succeed; possibly raising an # exception (limited in size) errpipe_data = bytearray() while True: part = os.read(errpipe_read, 50000) errpipe_data += part if not part or len(errpipe_data) > 50000: break finally: # be sure the FD is closed no matter what os.close(errpipe_read) if errpipe_data: try: pid, sts = os.waitpid(self.pid, 0) if pid == self.pid: self._handle_exitstatus(sts) else: self.returncode = sys.maxsize except ChildProcessError: pass try: exception_name, hex_errno, err_msg = ( errpipe_data.split(b':', 2)) # The encoding here should match the encoding # written in by the subprocess implementations # like _posixsubprocess err_msg = err_msg.decode() except ValueError: exception_name = b'SubprocessError' hex_errno = b'0' err_msg = 'Bad exception data from child: {!r}'.format( bytes(errpipe_data)) child_exception_type = getattr( builtins, exception_name.decode('ascii'), SubprocessError) if issubclass(child_exception_type, OSError) and hex_errno: errno_num = int(hex_errno, 16) if err_msg == "noexec:chdir": err_msg = "" # The error must be from chdir(cwd). err_filename = cwd elif err_msg == "noexec": err_msg = "" err_filename = None else: err_filename = orig_executable if errno_num != 0: err_msg = os.strerror(errno_num) if err_filename is not None: > raise child_exception_type(errno_num, err_msg, err_filename) E FileNotFoundError: [Errno 2] No such file or directory: 'python' /usr/lib64/python3.14/subprocess.py:1990: FileNotFoundError _ test_all_examples[/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/example0-minimum-viable-hardware.py] _ file = '/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/example0-minimum-viable-hardware.py' @pytest.mark.parametrize( "file", glob.iglob(os.path.dirname(__file__) + "/../examples/*.py") ) def test_all_examples(file): pyrtl.reset_working_block() try: > subprocess.check_output(["python", file]) tests/test_examples.py:23: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.14/subprocess.py:473: in check_output return run(*popenargs, stdout=PIPE, timeout=timeout, check=True, /usr/lib64/python3.14/subprocess.py:555: in run with Popen(*popenargs, **kwargs) as process: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ /usr/lib64/python3.14/subprocess.py:1039: in __init__ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = args = ['python', '/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/example0-minimum-viable-hardware.py'] executable = b'python', preexec_fn = None, close_fds = True, pass_fds = () cwd = None, env = None, startupinfo = None, creationflags = 0, shell = False p2cread = -1, p2cwrite = -1, c2pread = 13, c2pwrite = 14, errread = -1 errwrite = -1, restore_signals = True, gid = None, gids = None, uid = None umask = -1, start_new_session = False, process_group = -1 def _execute_child(self, args, executable, preexec_fn, close_fds, pass_fds, cwd, env, startupinfo, creationflags, shell, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite, restore_signals, gid, gids, uid, umask, start_new_session, process_group): """Execute program (POSIX version)""" if isinstance(args, (str, bytes)): args = [args] elif isinstance(args, os.PathLike): if shell: raise TypeError('path-like args is not allowed when ' 'shell is true') args = [args] else: args = list(args) if shell: # On Android the default shell is at '/system/bin/sh'. unix_shell = ('/system/bin/sh' if hasattr(sys, 'getandroidapilevel') else '/bin/sh') args = [unix_shell, "-c"] + args if executable: args[0] = executable if executable is None: executable = args[0] sys.audit("subprocess.Popen", executable, args, cwd, env) if (_USE_POSIX_SPAWN and os.path.dirname(executable) and preexec_fn is None and (not close_fds or _HAVE_POSIX_SPAWN_CLOSEFROM) and not pass_fds and cwd is None and (p2cread == -1 or p2cread > 2) and (c2pwrite == -1 or c2pwrite > 2) and (errwrite == -1 or errwrite > 2) and not start_new_session and process_group == -1 and gid is None and gids is None and uid is None and umask < 0): self._posix_spawn(args, executable, env, restore_signals, close_fds, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite) return orig_executable = executable # For transferring possible exec failure from child to parent. # Data format: "exception name:hex errno:description" # Pickle is not used; it is complex and involves memory allocation. errpipe_read, errpipe_write = os.pipe() # errpipe_write must not be in the standard io 0, 1, or 2 fd range. low_fds_to_close = [] while errpipe_write < 3: low_fds_to_close.append(errpipe_write) errpipe_write = os.dup(errpipe_write) for low_fd in low_fds_to_close: os.close(low_fd) try: try: # We must avoid complex work that could involve # malloc or free in the child process to avoid # potential deadlocks, thus we do all this here. # and pass it to fork_exec() if env is not None: env_list = [] for k, v in env.items(): k = os.fsencode(k) if b'=' in k: raise ValueError("illegal environment variable name") env_list.append(k + b'=' + os.fsencode(v)) else: env_list = None # Use execv instead of execve. executable = os.fsencode(executable) if os.path.dirname(executable): executable_list = (executable,) else: # This matches the behavior of os._execvpe(). executable_list = tuple( os.path.join(os.fsencode(dir), executable) for dir in os.get_exec_path(env)) fds_to_keep = set(pass_fds) fds_to_keep.add(errpipe_write) self.pid = _fork_exec( args, executable_list, close_fds, tuple(sorted(map(int, fds_to_keep))), cwd, env_list, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite, errpipe_read, errpipe_write, restore_signals, start_new_session, process_group, gid, gids, uid, umask, preexec_fn) self._child_created = True finally: # be sure the FD is closed no matter what os.close(errpipe_write) self._close_pipe_fds(p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite) # Wait for exec to fail or succeed; possibly raising an # exception (limited in size) errpipe_data = bytearray() while True: part = os.read(errpipe_read, 50000) errpipe_data += part if not part or len(errpipe_data) > 50000: break finally: # be sure the FD is closed no matter what os.close(errpipe_read) if errpipe_data: try: pid, sts = os.waitpid(self.pid, 0) if pid == self.pid: self._handle_exitstatus(sts) else: self.returncode = sys.maxsize except ChildProcessError: pass try: exception_name, hex_errno, err_msg = ( errpipe_data.split(b':', 2)) # The encoding here should match the encoding # written in by the subprocess implementations # like _posixsubprocess err_msg = err_msg.decode() except ValueError: exception_name = b'SubprocessError' hex_errno = b'0' err_msg = 'Bad exception data from child: {!r}'.format( bytes(errpipe_data)) child_exception_type = getattr( builtins, exception_name.decode('ascii'), SubprocessError) if issubclass(child_exception_type, OSError) and hex_errno: errno_num = int(hex_errno, 16) if err_msg == "noexec:chdir": err_msg = "" # The error must be from chdir(cwd). err_filename = cwd elif err_msg == "noexec": err_msg = "" err_filename = None else: err_filename = orig_executable if errno_num != 0: err_msg = os.strerror(errno_num) if err_filename is not None: > raise child_exception_type(errno_num, err_msg, err_filename) E FileNotFoundError: [Errno 2] No such file or directory: 'python' /usr/lib64/python3.14/subprocess.py:1990: FileNotFoundError =========================== short test summary info ============================ FAILED tests/test_examples.py::test_all_examples[/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/renderer-demo.py] - FileNotFoundError: [Errno 2] No such file or directory: 'python' FAILED tests/test_examples.py::test_all_examples[/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/introduction-to-hardware.py] - FileNotFoundError: [Errno 2] No such file or directory: 'python' FAILED tests/test_examples.py::test_all_examples[/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/example8-verilog.py] - FileNotFoundError: [Errno 2] No such file or directory: 'python' FAILED tests/test_examples.py::test_all_examples[/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/example7-synth-timing.py] - FileNotFoundError: [Errno 2] No such file or directory: 'python' FAILED tests/test_examples.py::test_all_examples[/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/example6-memory.py] - FileNotFoundError: [Errno 2] No such file or directory: 'python' FAILED tests/test_examples.py::test_all_examples[/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/example5-introspection.py] - FileNotFoundError: [Errno 2] No such file or directory: 'python' FAILED tests/test_examples.py::test_all_examples[/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/example4-debuggingtools.py] - FileNotFoundError: [Errno 2] No such file or directory: 'python' FAILED tests/test_examples.py::test_all_examples[/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/example3-statemachine.py] - FileNotFoundError: [Errno 2] No such file or directory: 'python' FAILED tests/test_examples.py::test_all_examples[/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/example2-counter.py] - FileNotFoundError: [Errno 2] No such file or directory: 'python' FAILED tests/test_examples.py::test_all_examples[/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/example1.2-wire-struct.py] - FileNotFoundError: [Errno 2] No such file or directory: 'python' FAILED tests/test_examples.py::test_all_examples[/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/example1.1-signed-numbers.py] - FileNotFoundError: [Errno 2] No such file or directory: 'python' FAILED tests/test_examples.py::test_all_examples[/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/example1-combologic.py] - FileNotFoundError: [Errno 2] No such file or directory: 'python' FAILED tests/test_examples.py::test_all_examples[/builddir/build/BUILD/pyrtl-0.12-build/pyrtl/tests/../examples/example0-minimum-viable-hardware.py] - FileNotFoundError: [Errno 2] No such file or directory: 'python' ================= 13 failed, 1251 passed, 7 skipped in 12.66s ================== + true + RPM_EC=0 ++ jobs -p + exit 0 Processing files: pyrtl-0.12-20260501.0.gita9688753.fc45.noarch Executing(%doc): /bin/sh -e /var/tmp/rpm-tmp.HrtbNN + umask 022 + cd /builddir/build/BUILD/pyrtl-0.12-build + cd pyrtl + DOCDIR=/builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT/usr/share/doc/pyrtl + export LC_ALL=C.UTF-8 + LC_ALL=C.UTF-8 + export DOCDIR + /usr/bin/mkdir -p /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT/usr/share/doc/pyrtl + cp -pr /builddir/build/BUILD/pyrtl-0.12-build/pyrtl/README.md /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT/usr/share/doc/pyrtl + RPM_EC=0 ++ jobs -p + exit 0 Executing(%license): /bin/sh -e /var/tmp/rpm-tmp.XgUCMa + umask 022 + cd /builddir/build/BUILD/pyrtl-0.12-build + cd pyrtl + LICENSEDIR=/builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT/usr/share/licenses/pyrtl + export LC_ALL=C.UTF-8 + LC_ALL=C.UTF-8 + export LICENSEDIR + /usr/bin/mkdir -p /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT/usr/share/licenses/pyrtl + cp -pr /builddir/build/BUILD/pyrtl-0.12-build/pyrtl/LICENSE.md /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT/usr/share/licenses/pyrtl + RPM_EC=0 ++ jobs -p + exit 0 Provides: pyrtl = 0.12-20260501.0.gita9688753.fc45 Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PartialHardlinkSets) <= 4.0.4-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 Checking for unpackaged file(s): /usr/lib/rpm/check-files /builddir/build/BUILD/pyrtl-0.12-build/BUILDROOT Wrote: /builddir/build/SRPMS/pyrtl-0.12-20260501.0.gita9688753.fc45.src.rpm Wrote: /builddir/build/RPMS/pyrtl-0.12-20260501.0.gita9688753.fc45.noarch.rpm Finish: rpmbuild pyrtl-0.12-20260501.0.gita9688753.fc45.src.rpm Finish: build phase for pyrtl-0.12-20260501.0.gita9688753.fc45.src.rpm INFO: chroot_scan: 1 files copied to /var/lib/copr-rpmbuild/results/chroot_scan INFO: /var/lib/mock/fedora-rawhide-x86_64-1778568246.750797/root/var/log/dnf5.log INFO: chroot_scan: creating tarball /var/lib/copr-rpmbuild/results/chroot_scan.tar.gz /bin/tar: Removing leading `/' from member names INFO: Done(/var/lib/copr-rpmbuild/results/pyrtl-0.12-20260501.0.gita9688753.fc45.src.rpm) Config(child) 0 minutes 30 seconds INFO: Results and/or logs in: /var/lib/copr-rpmbuild/results INFO: Cleaning up build root ('cleanup_on_success=True') Start: clean chroot INFO: unmounting tmpfs. Finish: clean chroot Finish: run Running RPMResults tool Package info: { "packages": [ { "name": "pyrtl", "epoch": null, "version": "0.12", "release": "20260501.0.gita9688753.fc45", "arch": "noarch" }, { "name": "pyrtl", "epoch": null, "version": "0.12", "release": "20260501.0.gita9688753.fc45", "arch": "src" } ] } RPMResults finished