Warning: Permanently added '100.55.47.100' (ED25519) to the list of known hosts. You can reproduce this build on your computer by running: sudo dnf install copr-rpmbuild /usr/bin/copr-rpmbuild --verbose --drop-resultdir --task-url https://copr.fedorainfracloud.org/backend/get-build-task/10888126-fedora-44-x86_64 --chroot fedora-44-x86_64 Version: 1.9 PID: 10463 Logging PID: 10465 Task: {'allow_user_ssh': False, 'appstream': False, 'background': False, 'build_id': 10888126, 'buildroot_pkgs': [], 'chroot': 'fedora-44-x86_64', 'enable_net': True, 'fedora_review': False, 'git_hash': 'edc3eab550702b34f0152ed3196ee489ae5c36b6', 'git_repo': 'https://copr-dist-git.fedorainfracloud.org/git/renich/lavinmq/lavinmq', 'isolation': 'default', 'memory_reqs': 2048, 'package_name': 'lavinmq', 'package_version': '2.9.2-1', 'project_dirname': 'lavinmq', 'project_name': 'lavinmq', 'project_owner': 'renich', 'repo_priority': None, 'repos': [{'baseurl': 'https://download.copr.fedorainfracloud.org/results/renich/lavinmq/fedora-44-x86_64/', 'id': 'copr_base', 'name': 'Copr repository', 'priority': None, 'repo_gpgcheck': False}, {'baseurl': 'https://download.copr.fedorainfracloud.org/results/zawertun/crystal/fedora-44-x86_64/', 'id': 'https_download_copr_fedorainfracloud_org_results_zawertun_crystal_fedora_44_x86_64', 'name': 'Additional repo ' 'https_download_copr_fedorainfracloud_org_results_zawertun_crystal_fedora_44_x86_64'}], 'sandbox': 'renich/lavinmq--renich', 'source_json': {}, 'source_type': None, 'ssh_public_keys': None, 'storage': 0, 'submitter': 'renich', 'tags': [], 'task_id': '10888126-fedora-44-x86_64', 'timeout': 18000, 'uses_devel_repo': False, 'with_opts': [], 'without_opts': []} Running: git clone https://copr-dist-git.fedorainfracloud.org/git/renich/lavinmq/lavinmq /var/lib/copr-rpmbuild/workspace/workdir-nwipy3i2/lavinmq --depth 500 --no-single-branch --recursive cmd: ['git', 'clone', 'https://copr-dist-git.fedorainfracloud.org/git/renich/lavinmq/lavinmq', '/var/lib/copr-rpmbuild/workspace/workdir-nwipy3i2/lavinmq', '--depth', '500', '--no-single-branch', '--recursive'] cwd: . rc: 0 stdout: stderr: Cloning into '/var/lib/copr-rpmbuild/workspace/workdir-nwipy3i2/lavinmq'... Running: git checkout edc3eab550702b34f0152ed3196ee489ae5c36b6 -- cmd: ['git', 'checkout', 'edc3eab550702b34f0152ed3196ee489ae5c36b6', '--'] cwd: /var/lib/copr-rpmbuild/workspace/workdir-nwipy3i2/lavinmq rc: 0 stdout: stderr: Note: switching to 'edc3eab550702b34f0152ed3196ee489ae5c36b6'. You are in 'detached HEAD' state. You can look around, make experimental changes and commit them, and you can discard any commits you make in this state without impacting any branches by switching back to a branch. If you want to create a new branch to retain commits you create, you may do so (now or later) by using -c with the switch command. Example: git switch -c Or undo this operation with: git switch - Turn off this advice by setting config variable advice.detachedHead to false HEAD is now at edc3eab automatic import of lavinmq Running: dist-git-client sources cmd: ['dist-git-client', 'sources'] cwd: /var/lib/copr-rpmbuild/workspace/workdir-nwipy3i2/lavinmq rc: 0 stdout: stderr: INFO: Reading stdout from command: git rev-parse --abbrev-ref HEAD INFO: Reading stdout from command: git rev-parse HEAD INFO: Reading sources specification file: sources INFO: Downloading chart.js-4.0.1.tgz INFO: Reading stdout from command: curl --help all INFO: Calling: curl -H Pragma: -H 'Accept-Encoding: identity' -o chart.js-4.0.1.tgz --location --connect-timeout 60 --retry 3 --retry-delay 10 --remote-time --show-error --fail --retry-all-errors https://copr-dist-git.fedorainfracloud.org/repo/pkgs/renich/lavinmq/lavinmq/chart.js-4.0.1.tgz/md5/c697e04e35b6ca245ca0c11a7e1dec55/chart.js-4.0.1.tgz % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 774.6k 100 774.6k 0 0 33.55M 0 0 INFO: Reading stdout from command: md5sum chart.js-4.0.1.tgz INFO: Downloading lavinmq-2.9.2.tar.gz INFO: Calling: curl -H Pragma: -H 'Accept-Encoding: identity' -o lavinmq-2.9.2.tar.gz --location --connect-timeout 60 --retry 3 --retry-delay 10 --remote-time --show-error --fail --retry-all-errors https://copr-dist-git.fedorainfracloud.org/repo/pkgs/renich/lavinmq/lavinmq/lavinmq-2.9.2.tar.gz/md5/bc5b52fa5a65f59958c538bf44b3f8f4/lavinmq-2.9.2.tar.gz % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 1.36M 100 1.36M 0 0 81.17M 0 0 INFO: Reading stdout from command: md5sum lavinmq-2.9.2.tar.gz tail: /var/lib/copr-rpmbuild/main.log: file truncated Running (timeout=18000): unbuffer mock --spec /var/lib/copr-rpmbuild/workspace/workdir-nwipy3i2/lavinmq/lavinmq.spec --sources /var/lib/copr-rpmbuild/workspace/workdir-nwipy3i2/lavinmq --resultdir /var/lib/copr-rpmbuild/results --uniqueext 1787310998.564044 -r /var/lib/copr-rpmbuild/results/configs/child.cfg INFO: mock.py version 6.8 starting (python version = 3.14.5, NVR = mock-6.8-1.fc44), args: /usr/libexec/mock/mock --spec /var/lib/copr-rpmbuild/workspace/workdir-nwipy3i2/lavinmq/lavinmq.spec --sources /var/lib/copr-rpmbuild/workspace/workdir-nwipy3i2/lavinmq --resultdir /var/lib/copr-rpmbuild/results --uniqueext 1787310998.564044 -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-nwipy3i2/lavinmq/lavinmq.spec) Config(fedora-44-x86_64) Start: clean chroot Finish: clean chroot Mock Version: 6.8 INFO: Mock Version: 6.8 Start(bootstrap): chroot init INFO: mounting tmpfs at /var/lib/mock/fedora-44-x86_64-bootstrap-1787310998.564044/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:44 INFO: Pulling image: registry.fedoraproject.org/fedora:44 INFO: Tagging container image as mock-bootstrap-922f53dd-861e-410c-87aa-c355f5e3c867 INFO: Checking that 864821b3ec0c2f961f263f0e1d15976f3eaf8fa74b099dc229c7780dc58efda3 image matches host's architecture INFO: Copy content of container 864821b3ec0c2f961f263f0e1d15976f3eaf8fa74b099dc229c7780dc58efda3 to /var/lib/mock/fedora-44-x86_64-bootstrap-1787310998.564044/root INFO: mounting 864821b3ec0c2f961f263f0e1d15976f3eaf8fa74b099dc229c7780dc58efda3 with podman image mount INFO: image 864821b3ec0c2f961f263f0e1d15976f3eaf8fa74b099dc229c7780dc58efda3 as /var/lib/containers/storage/overlay/3cc4c76d26de9d34d525e8a46e47d64b328a71bc6d8e0fb50014e8e26a2a8707/merged INFO: umounting image 864821b3ec0c2f961f263f0e1d15976f3eaf8fa74b099dc229c7780dc58efda3 (/var/lib/containers/storage/overlay/3cc4c76d26de9d34d525e8a46e47d64b328a71bc6d8e0fb50014e8e26a2a8707/merged) with podman image umount INFO: Removing image mock-bootstrap-922f53dd-861e-410c-87aa-c355f5e3c867 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-44-x86_64-1787310998.564044/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.2-1.fc44.x86_64 rpm-sequoia-1.10.2-4.fc44.x86_64 dnf5-5.4.2.1-1.fc44.x86_64 dnf5-plugins-5.4.2.1-1.fc44.x86_64 Start: installing minimal buildroot with dnf5 Updating and loading repositories: Additional repo https_download_copr_fe 100% | 4.6 KiB/s | 4.8 KiB | 00m01s fedora 100% | 33.7 MiB/s | 71.3 MiB | 00m02s Copr repository 100% | 882.0 B/s | 1.6 KiB | 00m02s updates 100% | 1.3 MiB/s | 11.7 MiB | 00m09s 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.10-5.fc44 updates 5.7 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:44-18 updates 20.6 KiB findutils x86_64 1:4.10.0-7.fc44 fedora 1.9 MiB gawk x86_64 0:5.3.2-3.fc44 fedora 1.8 MiB glibc-minimal-langpack x86_64 0:2.43-8.fc44 updates 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.2-9.fc44 fedora 365.6 KiB patch x86_64 0:2.8-4.fc44 fedora 226.6 KiB redhat-rpm-config noarch 0:344-2.fc44 updates 183.7 KiB rpm-build x86_64 0:6.0.2-1.fc44 updates 294.6 KiB sed x86_64 0:4.9-7.fc44 fedora 857.2 KiB shadow-utils x86_64 2:4.19.0-7.fc44 updates 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.41.5-1.fc44 updates 3.5 MiB which x86_64 0:2.25-1.fc44 updates 83.6 KiB xz x86_64 1:5.8.2-2.fc44 fedora 1.3 MiB Installing dependencies: R-srpm-macros noarch 0:1.3.7-2.fc44 updates 3.5 KiB add-determinism x86_64 0:0.7.3-2.fc44 updates 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.2.1-1.fc44 updates 390.5 KiB binutils x86_64 0:2.46.1-1.fc44 updates 28.2 MiB build-reproducibility-srpm-macros noarch 0:0.7.3-2.fc44 updates 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.fc44 updates 2.7 MiB cmake-srpm-macros noarch 0:4.3.0-1.fc44 fedora 524.0 B coreutils-common x86_64 0:9.10-5.fc44 updates 10.7 MiB crypto-policies noarch 0:20251128-3.git19878fe.fc44 fedora 132.6 KiB curl x86_64 0:8.18.0-8.fc44 updates 480.0 KiB cyrus-sasl-lib x86_64 0:2.1.28-35.fc44 fedora 2.3 MiB debugedit x86_64 0:5.3-2.fc44 updates 220.8 KiB dwz x86_64 0:0.16-3.fc44 fedora 290.9 KiB ed x86_64 0:1.22.5-2.fc44 fedora 149.7 KiB efi-srpm-macros noarch 0:6-6.fc44 fedora 40.2 KiB elfutils x86_64 0:0.195-1.fc44 updates 3.0 MiB elfutils-debuginfod-client x86_64 0:0.195-1.fc44 updates 83.8 KiB elfutils-default-yama-scope noarch 0:0.195-1.fc44 updates 1.8 KiB elfutils-libelf x86_64 0:0.195-1.fc44 updates 1.2 MiB elfutils-libs x86_64 0:0.195-1.fc44 updates 715.3 KiB erlang-srpm-macros noarch 0:0.3.11-1.fc44 fedora 1.9 KiB fedora-gpg-keys noarch 0:44-1 fedora 133.4 KiB fedora-release noarch 0:44-18 updates 0.0 B fedora-release-identity-basic noarch 0:44-18 updates 629.0 B fedora-repos noarch 0:44-1 fedora 4.9 KiB file x86_64 0:5.46-10.fc44 updates 100.1 KiB file-libs x86_64 0:5.46-10.fc44 updates 11.9 MiB filesystem x86_64 0:3.18-52.fc44 fedora 112.0 B filesystem-srpm-macros noarch 0:3.18-52.fc44 fedora 38.2 KiB fonts-srpm-macros noarch 1:5.0.0-2.fc44 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.2-2.fc44 updates 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-8.fc44 updates 6.9 MiB glibc-common x86_64 0:2.43-8.fc44 updates 1.0 MiB glibc-gconv-extra x86_64 0:2.43-8.fc44 updates 7.4 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 gnome-srpm-macros noarch 0:1.0-1.fc44 updates 3.5 KiB gnulib-l10n noarch 0:20241231-2.fc44 fedora 655.0 KiB gnupg2 x86_64 0:2.4.9-16.fc44 updates 6.5 MiB gnupg2-dirmngr x86_64 0:2.4.9-16.fc44 updates 634.0 KiB gnupg2-gpg-agent x86_64 0:2.4.9-16.fc44 updates 686.6 KiB gnupg2-gpgconf x86_64 0:2.4.9-16.fc44 updates 249.7 KiB gnupg2-keyboxd x86_64 0:2.4.9-16.fc44 updates 201.2 KiB gnupg2-verify x86_64 0:2.4.9-16.fc44 updates 360.3 KiB gnutls x86_64 0:3.8.13-1.fc44 updates 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-8.fc44 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-28.fc44 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-4.fc44 updates 2.4 MiB libacl x86_64 0:2.4.0-1.fc44 updates 39.9 KiB libarchive x86_64 0:3.8.7-1.fc44 updates 1.0 MiB libassuan x86_64 0:2.5.7-5.fc44 fedora 163.8 KiB libattr x86_64 0:2.6.0-1.fc44 updates 24.3 KiB libblkid x86_64 0:2.41.5-1.fc44 updates 274.3 KiB libbrotli x86_64 0:1.2.0-3.fc44 fedora 865.0 KiB libcap x86_64 0:2.78-1.fc44 updates 212.1 KiB libcap-ng x86_64 0:0.9.3-1.fc44 updates 68.8 KiB libcbor x86_64 0:0.13.0-2.fc44 fedora 79.5 KiB libcom_err x86_64 0:1.47.3-4.fc44 fedora 63.0 KiB libcurl x86_64 0:8.18.0-8.fc44 updates 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.41.5-1.fc44 updates 388.3 KiB libffi x86_64 0:3.5.2-2.fc44 fedora 87.7 KiB libfido2 x86_64 0:1.16.0-5.fc44 fedora 246.4 KiB libfsverity x86_64 0:1.6-4.fc44 fedora 28.4 KiB libgcc x86_64 0:16.1.1-2.fc44 updates 270.7 KiB libgcrypt x86_64 0:1.12.2-1.fc44 updates 1.7 MiB libgomp x86_64 0:16.1.1-2.fc44 updates 577.4 KiB libgpg-error x86_64 0:1.58-2.fc44 fedora 941.6 KiB libidn2 x86_64 0:2.3.8-3.fc44 fedora 556.4 KiB libksba x86_64 0:1.6.7-5.fc44 fedora 414.4 KiB liblastlog2 x86_64 0:2.41.5-1.fc44 updates 41.6 KiB libmount x86_64 0:2.41.5-1.fc44 updates 392.6 KiB libnghttp2 x86_64 0:1.68.0-5.fc44 updates 166.1 KiB libnghttp3 x86_64 0:1.18.0-1.fc44 updates 163.4 KiB libpkgconf x86_64 0:2.5.1-1.fc44 fedora 90.1 KiB libpsl x86_64 0:0.21.5-7.fc44 fedora 76.3 KiB libselinux x86_64 0:3.11-1.fc44 updates 205.2 KiB libselinux-utils x86_64 0:3.11-1.fc44 updates 305.8 KiB libsemanage x86_64 0:3.11-1.fc44 updates 316.4 KiB libsepol x86_64 0:3.11-1.fc44 updates 862.1 KiB libsmartcols x86_64 0:2.41.5-1.fc44 updates 188.3 KiB libssh x86_64 0:0.12.2-1.fc44 updates 725.5 KiB libssh-config noarch 0:0.12.2-1.fc44 updates 277.0 B libstdc++ x86_64 0:16.1.1-2.fc44 updates 3.1 MiB libtasn1 x86_64 0:4.21.0-1.fc44 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.30-1.fc44 updates 176.0 KiB libuuid x86_64 0:2.41.5-1.fc44 updates 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.fc44 updates 780.9 KiB lua-libs x86_64 0:5.4.8-5.fc44 fedora 281.7 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-1.fc44 fedora 329.7 KiB ncurses-libs x86_64 0:6.6-1.fc44 fedora 968.9 KiB nettle x86_64 0:3.10.1-3.fc44 fedora 794.3 KiB ngtcp2 x86_64 0:1.22.1-1.fc44 updates 338.2 KiB ngtcp2-crypto-ossl x86_64 0:1.22.1-1.fc44 updates 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.fc44 fedora 669.9 KiB openssl-libs x86_64 1:3.5.7-2.fc44 updates 9.2 MiB p11-kit x86_64 0:0.26.5-1.fc44 updates 2.6 MiB p11-kit-trust x86_64 0:0.26.5-1.fc44 updates 478.3 KiB package-notes-srpm-macros noarch 0:0.20-1.fc44 updates 1.6 KiB pam-libs x86_64 0:1.7.2-2.fc44 updates 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.fc44 fedora 92.7 KiB pkgconf-m4 noarch 0:2.5.1-1.fc44 fedora 14.3 KiB pkgconf-pkg-config x86_64 0:2.5.1-1.fc44 fedora 989.0 B policycoreutils x86_64 0:3.11-2.fc44 updates 884.8 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.23.2-1.fc44 updates 3.4 KiB python-srpm-macros noarch 0:3.14-12.fc44 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.1-1.fc44 updates 472.0 B readline x86_64 0:8.3-4.fc44 fedora 519.5 KiB rpm x86_64 0:6.0.2-1.fc44 updates 3.1 MiB rpm-build-libs x86_64 0:6.0.2-1.fc44 updates 276.3 KiB rpm-libs x86_64 0:6.0.2-1.fc44 updates 961.2 KiB rpm-plugin-selinux x86_64 0:6.0.2-1.fc44 updates 11.9 KiB rpm-sequoia x86_64 0:1.10.2-4.fc44 updates 2.4 MiB rpm-sign-libs x86_64 0:6.0.2-1.fc44 updates 39.6 KiB rust-srpm-macros noarch 0:28.5-1.fc44 updates 5.5 KiB selinux-policy noarch 0:44.6-1.fc44 updates 32.1 KiB selinux-policy-targeted noarch 0:44.6-1.fc44 updates 18.6 MiB setup noarch 0:2.15.0-28.fc44 fedora 724.9 KiB sqlite-libs x86_64 0:3.51.2-2.fc44 updates 1.6 MiB systemd-libs x86_64 0:259.8-1.fc44 updates 2.4 MiB systemd-standalone-sysusers x86_64 0:259.8-1.fc44 updates 305.7 KiB tpm2-tss x86_64 0:4.1.3-9.fc44 fedora 1.6 MiB tree-sitter-srpm-macros noarch 0:0.4.2-2.fc44 fedora 8.3 KiB util-linux-core x86_64 0:2.41.5-1.fc44 updates 1.5 MiB xxhash-libs x86_64 0:0.8.3-4.fc44 fedora 94.0 KiB xz-libs x86_64 1:5.8.2-2.fc44 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-3.fc44 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: 185 packages Total size of inbound packages is 69 MiB. Need to download 69 MiB. After this operation, 224 MiB extra will be used (install 224 MiB, remove 0 B). [ 1/185] bzip2-0:1.0.8-23.fc44.x86_64 100% | 496.3 KiB/s | 52.1 KiB | 00m00s [ 2/185] cpio-0:2.15-9.fc44.x86_64 100% | 1.6 MiB/s | 293.3 KiB | 00m00s [ 3/185] diffutils-0:3.12-5.fc44.x86_6 100% | 4.3 MiB/s | 395.3 KiB | 00m00s [ 4/185] grep-0:3.12-3.fc44.x86_64 100% | 6.8 MiB/s | 301.6 KiB | 00m00s [ 5/185] bash-0:5.3.9-3.fc44.x86_64 100% | 7.8 MiB/s | 1.9 MiB | 00m00s [ 6/185] findutils-1:4.10.0-7.fc44.x86 100% | 8.4 MiB/s | 552.5 KiB | 00m00s [ 7/185] gzip-0:1.14-2.fc44.x86_64 100% | 7.0 MiB/s | 179.1 KiB | 00m00s [ 8/185] info-0:7.2-9.fc44.x86_64 100% | 7.9 MiB/s | 186.7 KiB | 00m00s [ 9/185] patch-0:2.8-4.fc44.x86_64 100% | 4.3 MiB/s | 115.2 KiB | 00m00s [ 10/185] sed-0:4.9-7.fc44.x86_64 100% | 10.7 MiB/s | 319.2 KiB | 00m00s [ 11/185] tar-2:1.35-8.fc44.x86_64 100% | 29.2 MiB/s | 868.2 KiB | 00m00s [ 12/185] unzip-0:6.0-69.fc44.x86_64 100% | 7.0 MiB/s | 199.6 KiB | 00m00s [ 13/185] xz-1:5.8.2-2.fc44.x86_64 100% | 16.0 MiB/s | 607.2 KiB | 00m00s [ 14/185] gawk-0:5.3.2-3.fc44.x86_64 100% | 35.5 MiB/s | 1.1 MiB | 00m00s [ 15/185] fedora-release-common-0:44-18 100% | 61.8 KiB/s | 23.6 KiB | 00m00s [ 16/185] glibc-minimal-langpack-0:2.43 100% | 198.4 KiB/s | 83.3 KiB | 00m00s [ 17/185] redhat-rpm-config-0:344-2.fc4 100% | 557.6 KiB/s | 78.1 KiB | 00m00s [ 18/185] rpm-build-0:6.0.2-1.fc44.x86_ 100% | 657.7 KiB/s | 136.8 KiB | 00m00s [ 19/185] shadow-utils-2:4.19.0-7.fc44. 100% | 1.7 MiB/s | 1.3 MiB | 00m01s [ 20/185] which-0:2.25-1.fc44.x86_64 100% | 576.2 KiB/s | 42.1 KiB | 00m00s [ 21/185] filesystem-0:3.18-52.fc44.x86 100% | 39.2 MiB/s | 1.3 MiB | 00m00s [ 22/185] ncurses-libs-0:6.6-1.fc44.x86 100% | 14.0 MiB/s | 344.1 KiB | 00m00s [ 23/185] bzip2-libs-0:1.0.8-23.fc44.x8 100% | 2.0 MiB/s | 43.8 KiB | 00m00s [ 24/185] pcre2-0:10.47-1.fc44.1.x86_64 100% | 11.3 MiB/s | 277.7 KiB | 00m00s [ 25/185] ed-0:1.22.5-2.fc44.x86_64 100% | 4.0 MiB/s | 85.4 KiB | 00m00s [ 26/185] xz-libs-1:5.8.2-2.fc44.x86_64 100% | 5.2 MiB/s | 116.8 KiB | 00m00s [ 27/185] gmp-1:6.3.0-5.fc44.x86_64 100% | 13.1 MiB/s | 322.5 KiB | 00m00s [ 28/185] coreutils-0:9.10-5.fc44.x86_6 100% | 795.9 KiB/s | 1.2 MiB | 00m02s [ 29/185] fedora-repos-0:44-1.noarch 100% | 440.2 KiB/s | 9.2 KiB | 00m00s [ 30/185] mpfr-0:4.2.2-3.fc44.x86_64 100% | 14.6 MiB/s | 357.8 KiB | 00m00s [ 31/185] readline-0:8.3-4.fc44.x86_64 100% | 9.8 MiB/s | 229.8 KiB | 00m00s [ 32/185] glibc-common-0:2.43-8.fc44.x8 100% | 4.9 MiB/s | 373.3 KiB | 00m00s [ 33/185] ansible-srpm-macros-0:1-20.1. 100% | 957.3 KiB/s | 20.1 KiB | 00m00s [ 34/185] cmake-srpm-macros-0:4.3.0-1.f 100% | 496.9 KiB/s | 10.4 KiB | 00m00s [ 35/185] dwz-0:0.16-3.fc44.x86_64 100% | 6.2 MiB/s | 138.9 KiB | 00m00s [ 36/185] efi-srpm-macros-0:6-6.fc44.no 100% | 1.0 MiB/s | 22.6 KiB | 00m00s [ 37/185] erlang-srpm-macros-0:0.3.11-1 100% | 474.1 KiB/s | 10.0 KiB | 00m00s [ 38/185] filesystem-srpm-macros-0:3.18 100% | 1.2 MiB/s | 26.6 KiB | 00m00s [ 39/185] fonts-srpm-macros-1:5.0.0-2.f 100% | 1.3 MiB/s | 27.4 KiB | 00m00s [ 40/185] forge-srpm-macros-0:0.4.0-4.f 100% | 951.7 KiB/s | 20.0 KiB | 00m00s [ 41/185] fpc-srpm-macros-0:1.3-16.fc44 100% | 378.0 KiB/s | 7.9 KiB | 00m00s [ 42/185] gap-srpm-macros-0:2-2.fc44.no 100% | 435.3 KiB/s | 9.1 KiB | 00m00s [ 43/185] ghc-srpm-macros-0:1.10-1.fc44 100% | 418.6 KiB/s | 8.8 KiB | 00m00s [ 44/185] util-linux-0:2.41.5-1.fc44.x8 100% | 1.0 MiB/s | 1.2 MiB | 00m01s [ 45/185] gnat-srpm-macros-0:7-2.fc44.n 100% | 416.3 KiB/s | 8.7 KiB | 00m00s [ 46/185] go-srpm-macros-0:3.8.0-2.fc44 100% | 1.3 MiB/s | 28.2 KiB | 00m00s [ 47/185] java-srpm-macros-0:1-8.fc44.n 100% | 386.4 KiB/s | 8.1 KiB | 00m00s [ 48/185] kernel-srpm-macros-0:1.0-28.f 100% | 430.8 KiB/s | 9.0 KiB | 00m00s [ 49/185] lua-srpm-macros-0:1-17.fc44.n 100% | 422.8 KiB/s | 8.9 KiB | 00m00s [ 50/185] ocaml-srpm-macros-0:11-3.fc44 100% | 441.7 KiB/s | 9.3 KiB | 00m00s [ 51/185] openblas-srpm-macros-0:2-21.f 100% | 371.7 KiB/s | 7.8 KiB | 00m00s [ 52/185] perl-srpm-macros-0:1-61.fc44. 100% | 401.2 KiB/s | 8.4 KiB | 00m00s [ 53/185] python-srpm-macros-0:3.14-12. 100% | 1.1 MiB/s | 24.0 KiB | 00m00s [ 54/185] qt5-srpm-macros-0:5.15.18-2.f 100% | 413.7 KiB/s | 8.7 KiB | 00m00s [ 55/185] tree-sitter-srpm-macros-0:0.4 100% | 641.5 KiB/s | 13.5 KiB | 00m00s [ 56/185] zig-srpm-macros-0:1-8.fc44.no 100% | 419.5 KiB/s | 8.8 KiB | 00m00s [ 57/185] zip-0:3.0-45.fc44.x86_64 100% | 11.2 MiB/s | 264.4 KiB | 00m00s [ 58/185] popt-0:1.19-10.fc44.x86_64 100% | 3.1 MiB/s | 66.9 KiB | 00m00s [ 59/185] zstd-0:1.5.7-5.fc44.x86_64 100% | 8.5 MiB/s | 192.5 KiB | 00m00s [ 60/185] gnome-srpm-macros-0:1.0-1.fc4 100% | 117.0 KiB/s | 8.7 KiB | 00m00s [ 61/185] libeconf-0:0.7.9-3.fc44.x86_6 100% | 1.7 MiB/s | 36.2 KiB | 00m00s [ 62/185] libxcrypt-0:4.5.2-3.fc44.x86_ 100% | 5.8 MiB/s | 131.2 KiB | 00m00s [ 63/185] setup-0:2.15.0-28.fc44.noarch 100% | 7.0 MiB/s | 157.2 KiB | 00m00s [ 64/185] zlib-ng-compat-0:2.3.3-3.fc44 100% | 4.0 MiB/s | 91.1 KiB | 00m00s [ 65/185] util-linux-core-0:2.41.5-1.fc 100% | 3.9 MiB/s | 558.1 KiB | 00m00s [ 66/185] ncurses-base-0:6.6-1.fc44.noa 100% | 4.1 MiB/s | 88.0 KiB | 00m00s [ 67/185] pcre2-syntax-0:10.47-1.fc44.1 100% | 7.3 MiB/s | 164.7 KiB | 00m00s [ 68/185] gnulib-l10n-0:20241231-2.fc44 100% | 6.7 MiB/s | 150.3 KiB | 00m00s [ 69/185] fedora-gpg-keys-0:44-1.noarch 100% | 6.3 MiB/s | 141.4 KiB | 00m00s [ 70/185] libzstd-0:1.5.7-5.fc44.x86_64 100% | 14.8 MiB/s | 364.2 KiB | 00m00s [ 71/185] glibc-0:2.43-8.fc44.x86_64 100% | 11.2 MiB/s | 2.4 MiB | 00m00s [ 72/185] rpm-0:6.0.2-1.fc44.x86_64 100% | 942.9 KiB/s | 576.1 KiB | 00m01s [ 73/185] rpm-libs-0:6.0.2-1.fc44.x86_6 100% | 5.4 MiB/s | 413.1 KiB | 00m00s [ 74/185] lua-libs-0:5.4.8-5.fc44.x86_6 100% | 6.1 MiB/s | 136.6 KiB | 00m00s [ 75/185] rpm-build-libs-0:6.0.2-1.fc44 100% | 1.7 MiB/s | 129.7 KiB | 00m00s [ 76/185] rpm-sign-libs-0:6.0.2-1.fc44. 100% | 349.1 KiB/s | 25.8 KiB | 00m00s [ 77/185] ima-evm-utils-libs-0:1.6.2-8. 100% | 1.4 MiB/s | 30.0 KiB | 00m00s [ 78/185] libfsverity-0:1.6-4.fc44.x86_ 100% | 916.3 KiB/s | 19.2 KiB | 00m00s [ 79/185] tpm2-tss-0:4.1.3-9.fc44.x86_6 100% | 17.2 MiB/s | 440.9 KiB | 00m00s [ 80/185] json-c-0:0.18-8.fc44.x86_64 100% | 2.2 MiB/s | 46.3 KiB | 00m00s [ 81/185] libblkid-0:2.41.5-1.fc44.x86_ 100% | 1.7 MiB/s | 129.8 KiB | 00m00s [ 82/185] libuuid-0:2.41.5-1.fc44.x86_6 100% | 365.7 KiB/s | 27.1 KiB | 00m00s [ 83/185] libmount-0:2.41.5-1.fc44.x86_ 100% | 2.3 MiB/s | 172.4 KiB | 00m00s [ 84/185] libgcc-0:16.1.1-2.fc44.x86_64 100% | 1.7 MiB/s | 131.0 KiB | 00m00s [ 85/185] libselinux-0:3.11-1.fc44.x86_ 100% | 1.4 MiB/s | 104.2 KiB | 00m00s [ 86/185] libsepol-0:3.11-1.fc44.x86_64 100% | 4.7 MiB/s | 365.3 KiB | 00m00s [ 87/185] libsmartcols-0:2.41.5-1.fc44. 100% | 1.2 MiB/s | 87.4 KiB | 00m00s [ 88/185] systemd-libs-0:259.8-1.fc44.x 100% | 11.0 MiB/s | 867.5 KiB | 00m00s [ 89/185] coreutils-common-0:9.10-5.fc4 100% | 1.0 MiB/s | 2.1 MiB | 00m02s [ 90/185] audit-libs-0:4.2.1-1.fc44.x86 100% | 1.9 MiB/s | 143.6 KiB | 00m00s [ 91/185] libcap-ng-0:0.9.3-1.fc44.x86_ 100% | 468.8 KiB/s | 34.2 KiB | 00m00s [ 92/185] libfdisk-0:2.41.5-1.fc44.x86_ 100% | 2.2 MiB/s | 168.6 KiB | 00m00s [ 93/185] liblastlog2-0:2.41.5-1.fc44.x 100% | 331.1 KiB/s | 24.2 KiB | 00m00s [ 94/185] pam-libs-0:1.7.2-2.fc44.x86_6 100% | 792.2 KiB/s | 58.6 KiB | 00m00s [ 95/185] libacl-0:2.4.0-1.fc44.x86_64 100% | 373.5 KiB/s | 27.3 KiB | 00m00s [ 96/185] libsemanage-0:3.11-1.fc44.x86 100% | 1.7 MiB/s | 127.3 KiB | 00m00s [ 97/185] gpgverify-0:2.2-4.fc44.noarch 100% | 534.7 KiB/s | 11.2 KiB | 00m00s [ 98/185] libassuan-0:2.5.7-5.fc44.x86_ 100% | 3.1 MiB/s | 68.9 KiB | 00m00s [ 99/185] libgpg-error-0:1.58-2.fc44.x8 100% | 10.8 MiB/s | 254.1 KiB | 00m00s [100/185] npth-0:1.8-4.fc44.x86_64 100% | 1.2 MiB/s | 25.8 KiB | 00m00s [101/185] gnupg2-dirmngr-0:2.4.9-16.fc4 100% | 3.7 MiB/s | 281.4 KiB | 00m00s [102/185] gnupg2-gpg-agent-0:2.4.9-16.f 100% | 3.7 MiB/s | 281.2 KiB | 00m00s [103/185] gnupg2-gpgconf-0:2.4.9-16.fc4 100% | 1.5 MiB/s | 116.6 KiB | 00m00s [104/185] gnupg2-keyboxd-0:2.4.9-16.fc4 100% | 1.3 MiB/s | 96.8 KiB | 00m00s [105/185] glibc-gconv-extra-0:2.43-8.fc 100% | 1.0 MiB/s | 1.6 MiB | 00m02s [106/185] libksba-0:1.6.7-5.fc44.x86_64 100% | 7.4 MiB/s | 167.4 KiB | 00m00s [107/185] gnupg2-verify-0:2.4.9-16.fc44 100% | 2.3 MiB/s | 176.3 KiB | 00m00s [108/185] openldap-0:2.6.13-1.fc44.x86_ 100% | 11.5 MiB/s | 271.6 KiB | 00m00s [109/185] libevent-0:2.1.12-17.fc44.x86 100% | 12.2 MiB/s | 287.4 KiB | 00m00s [110/185] libtool-ltdl-0:2.5.4-10.fc44. 100% | 1.7 MiB/s | 37.0 KiB | 00m00s [111/185] gdbm-libs-1:1.23-11.fc44.x86_ 100% | 2.7 MiB/s | 58.8 KiB | 00m00s [112/185] libstdc++-0:16.1.1-2.fc44.x86 100% | 13.0 MiB/s | 1.0 MiB | 00m00s [113/185] cyrus-sasl-lib-0:2.1.28-35.fc 100% | 4.1 MiB/s | 800.7 KiB | 00m00s [114/185] libcap-0:2.78-1.fc44.x86_64 100% | 1.2 MiB/s | 88.1 KiB | 00m00s [115/185] sqlite-libs-0:3.51.2-2.fc44.x 100% | 10.1 MiB/s | 796.6 KiB | 00m00s [116/185] elfutils-libelf-0:0.195-1.fc4 100% | 2.8 MiB/s | 210.0 KiB | 00m00s [117/185] elfutils-libs-0:0.195-1.fc44. 100% | 3.7 MiB/s | 283.0 KiB | 00m00s [118/185] elfutils-0:0.195-1.fc44.x86_6 100% | 7.6 MiB/s | 588.4 KiB | 00m00s [119/185] elfutils-debuginfod-client-0: 100% | 633.5 KiB/s | 46.2 KiB | 00m00s [120/185] file-libs-0:5.46-10.fc44.x86_ 100% | 10.8 MiB/s | 853.6 KiB | 00m00s [121/185] file-0:5.46-10.fc44.x86_64 100% | 658.5 KiB/s | 48.7 KiB | 00m00s [122/185] libgomp-0:16.1.1-2.fc44.x86_6 100% | 5.1 MiB/s | 392.4 KiB | 00m00s [123/185] rpm-sequoia-0:1.10.2-4.fc44.x 100% | 1.0 MiB/s | 936.7 KiB | 00m01s [124/185] alternatives-0:1.33-5.fc44.x8 100% | 1.9 MiB/s | 40.8 KiB | 00m00s [125/185] jansson-0:2.14-4.fc44.x86_64 100% | 2.2 MiB/s | 47.1 KiB | 00m00s [126/185] gnupg2-0:2.4.9-16.fc44.x86_64 100% | 1.0 MiB/s | 1.7 MiB | 00m02s [127/185] binutils-0:2.46.1-1.fc44.x86_ 100% | 14.7 MiB/s | 6.2 MiB | 00m00s [128/185] debugedit-0:5.3-2.fc44.x86_64 100% | 622.4 KiB/s | 87.8 KiB | 00m00s [129/185] libxml2-0:2.12.10-6.fc44.x86_ 100% | 26.2 MiB/s | 724.6 KiB | 00m00s [130/185] lz4-libs-0:1.10.0-4.fc44.x86_ 100% | 3.6 MiB/s | 77.7 KiB | 00m00s [131/185] pkgconf-0:2.5.1-1.fc44.x86_64 100% | 2.5 MiB/s | 48.7 KiB | 00m00s [132/185] pkgconf-pkg-config-0:2.5.1-1. 100% | 450.8 KiB/s | 9.5 KiB | 00m00s [133/185] pkgconf-m4-0:2.5.1-1.fc44.noa 100% | 723.8 KiB/s | 13.8 KiB | 00m00s [134/185] libpkgconf-0:2.5.1-1.fc44.x86 100% | 2.0 MiB/s | 42.7 KiB | 00m00s [135/185] curl-0:8.18.0-8.fc44.x86_64 100% | 3.1 MiB/s | 239.6 KiB | 00m00s [136/185] R-srpm-macros-0:1.3.7-2.fc44. 100% | 127.5 KiB/s | 11.0 KiB | 00m00s [137/185] build-reproducibility-srpm-ma 100% | 180.4 KiB/s | 13.3 KiB | 00m00s [138/185] linkdupes-0:0.7.3-2.fc44.x86_ 100% | 4.5 MiB/s | 344.8 KiB | 00m00s [139/185] package-notes-srpm-macros-0:0 100% | 142.0 KiB/s | 10.4 KiB | 00m00s [140/185] libarchive-0:3.8.7-1.fc44.x86 100% | 931.3 KiB/s | 442.4 KiB | 00m00s [141/185] pyproject-srpm-macros-0:1.23. 100% | 209.8 KiB/s | 15.5 KiB | 00m00s [142/185] qt6-srpm-macros-0:6.11.1-1.fc 100% | 126.2 KiB/s | 9.2 KiB | 00m00s [143/185] rust-srpm-macros-0:28.5-1.fc4 100% | 151.3 KiB/s | 11.2 KiB | 00m00s [144/185] crypto-policies-0:20251128-3. 100% | 4.4 MiB/s | 98.3 KiB | 00m00s [145/185] libgcrypt-0:1.12.2-1.fc44.x86 100% | 8.1 MiB/s | 629.8 KiB | 00m00s [146/185] gnutls-0:3.8.13-1.fc44.x86_64 100% | 9.9 MiB/s | 1.4 MiB | 00m00s [147/185] libidn2-0:2.3.8-3.fc44.x86_64 100% | 7.8 MiB/s | 175.6 KiB | 00m00s [148/185] libtasn1-0:4.21.0-1.fc44.x86_ 100% | 3.5 MiB/s | 76.0 KiB | 00m00s [149/185] libunistring-0:1.1-11.fc44.x8 100% | 20.6 MiB/s | 547.8 KiB | 00m00s [150/185] nettle-0:3.10.1-3.fc44.x86_64 100% | 16.7 MiB/s | 428.0 KiB | 00m00s [151/185] add-determinism-0:0.7.3-2.fc4 100% | 1.1 MiB/s | 854.6 KiB | 00m01s [152/185] elfutils-default-yama-scope-0 100% | 153.8 KiB/s | 11.2 KiB | 00m00s [153/185] libattr-0:2.6.0-1.fc44.x86_64 100% | 243.7 KiB/s | 17.8 KiB | 00m00s [154/185] libusb1-0:1.0.30-1.fc44.x86_6 100% | 1.1 MiB/s | 83.4 KiB | 00m00s [155/185] p11-kit-0:0.26.5-1.fc44.x86_6 100% | 7.3 MiB/s | 560.6 KiB | 00m00s [156/185] libffi-0:3.5.2-2.fc44.x86_64 100% | 2.0 MiB/s | 42.4 KiB | 00m00s [157/185] p11-kit-trust-0:0.26.5-1.fc44 100% | 1.9 MiB/s | 146.5 KiB | 00m00s [158/185] systemd-standalone-sysusers-0 100% | 2.0 MiB/s | 151.6 KiB | 00m00s [159/185] gdb-minimal-0:17.2-2.fc44.x86 100% | 13.6 MiB/s | 4.7 MiB | 00m00s [160/185] xxhash-libs-0:0.8.3-4.fc44.x8 100% | 1.9 MiB/s | 41.2 KiB | 00m00s [161/185] fedora-release-0:44-18.noarch 100% | 168.4 KiB/s | 12.5 KiB | 00m00s [162/185] fedora-release-identity-basic 100% | 178.7 KiB/s | 13.2 KiB | 00m00s [163/185] libcurl-0:8.18.0-8.fc44.x86_6 100% | 5.9 MiB/s | 454.7 KiB | 00m00s [164/185] ca-certificates-0:2025.2.80_v 100% | 1.1 MiB/s | 974.8 KiB | 00m01s [165/185] libbrotli-0:1.2.0-3.fc44.x86_ 100% | 14.2 MiB/s | 347.8 KiB | 00m00s [166/185] libpsl-0:0.21.5-7.fc44.x86_64 100% | 3.0 MiB/s | 65.3 KiB | 00m00s [167/185] libnghttp3-0:1.18.0-1.fc44.x8 100% | 1.0 MiB/s | 75.3 KiB | 00m00s [168/185] ngtcp2-0:1.22.1-1.fc44.x86_64 100% | 2.1 MiB/s | 157.4 KiB | 00m00s [169/185] publicsuffix-list-dafsa-0:202 100% | 2.8 MiB/s | 60.3 KiB | 00m00s [170/185] libfido2-0:1.16.0-5.fc44.x86_ 100% | 4.9 MiB/s | 104.5 KiB | 00m00s [171/185] libssh-config-0:0.12.2-1.fc44 100% | 122.5 KiB/s | 8.9 KiB | 00m00s [172/185] libssh-0:0.12.2-1.fc44.x86_64 100% | 1.1 MiB/s | 295.9 KiB | 00m00s [173/185] libcbor-0:0.13.0-2.fc44.x86_6 100% | 1.7 MiB/s | 36.0 KiB | 00m00s [174/185] ngtcp2-crypto-ossl-0:1.22.1-1 100% | 375.0 KiB/s | 27.8 KiB | 00m00s [175/185] selinux-policy-0:44.6-1.fc44. 100% | 338.8 KiB/s | 24.7 KiB | 00m00s [176/185] rpm-plugin-selinux-0:6.0.2-1. 100% | 232.2 KiB/s | 17.0 KiB | 00m00s [177/185] policycoreutils-0:3.11-2.fc44 100% | 3.4 MiB/s | 259.0 KiB | 00m00s [178/185] libselinux-utils-0:3.11-1.fc4 100% | 1.6 MiB/s | 119.7 KiB | 00m00s [179/185] krb5-libs-0:1.22.2-4.fc44.x86 100% | 10.3 MiB/s | 802.6 KiB | 00m00s [180/185] keyutils-libs-0:1.6.3-7.fc44. 100% | 1.5 MiB/s | 31.5 KiB | 00m00s [181/185] libcom_err-0:1.47.3-4.fc44.x8 100% | 1.3 MiB/s | 27.1 KiB | 00m00s [182/185] libverto-0:0.3.2-12.fc44.x86_ 100% | 1.0 MiB/s | 21.1 KiB | 00m00s [183/185] libnghttp2-0:1.68.0-5.fc44.x8 100% | 1.0 MiB/s | 76.6 KiB | 00m00s [184/185] openssl-libs-1:3.5.7-2.fc44.x 100% | 1.0 MiB/s | 2.7 MiB | 00m03s [185/185] selinux-policy-targeted-0:44. 100% | 1.1 MiB/s | 6.8 MiB | 00m06s -------------------------------------------------------------------------------- [185/185] Total 100% | 4.9 MiB/s | 69.0 MiB | 00m14s Running transaction 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. [ 1/187] Verify package files 100% | 764.0 B/s | 185.0 B | 00m00s [ 2/187] Prepare transaction 100% | 4.0 KiB/s | 185.0 B | 00m00s [ 3/187] Installing libgcc-0:16.1.1-2. 100% | 266.0 MiB/s | 272.4 KiB | 00m00s [ 4/187] Installing libssh-config-0:0. 100% | 0.0 B/s | 816.0 B | 00m00s [ 5/187] Installing publicsuffix-list- 100% | 0.0 B/s | 71.1 KiB | 00m00s [ 6/187] Installing fedora-release-ide 100% | 0.0 B/s | 888.0 B | 00m00s [ 7/187] Installing fedora-gpg-keys-0: 100% | 59.3 MiB/s | 182.1 KiB | 00m00s [ 8/187] Installing fedora-repos-0:44- 100% | 0.0 B/s | 5.7 KiB | 00m00s [ 9/187] Installing fedora-release-com 100% | 24.3 MiB/s | 24.9 KiB | 00m00s [ 10/187] Installing fedora-release-0:4 100% | 15.1 KiB/s | 124.0 B | 00m00s >>> Running sysusers scriptlet: setup-0:2.15.0-28.fc44.noarch >>> Finished sysusers scriptlet: setup-0:2.15.0-28.fc44.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. >>> [ 11/187] Installing setup-0:2.15.0-28. 100% | 54.9 MiB/s | 730.6 KiB | 00m00s [ 12/187] Installing filesystem-0:3.18- 100% | 3.4 MiB/s | 212.8 KiB | 00m00s [ 13/187] Installing rust-srpm-macros-0 100% | 0.0 B/s | 6.4 KiB | 00m00s [ 14/187] Installing qt6-srpm-macros-0: 100% | 0.0 B/s | 748.0 B | 00m00s [ 15/187] Installing package-notes-srpm 100% | 0.0 B/s | 2.1 KiB | 00m00s [ 16/187] Installing pkgconf-m4-0:2.5.1 100% | 0.0 B/s | 14.7 KiB | 00m00s [ 17/187] Installing gnulib-l10n-0:2024 100% | 215.5 MiB/s | 661.9 KiB | 00m00s [ 18/187] Installing coreutils-common-0 100% | 427.5 MiB/s | 10.7 MiB | 00m00s [ 19/187] Installing pcre2-syntax-0:10. 100% | 277.7 MiB/s | 284.3 KiB | 00m00s [ 20/187] Installing ncurses-base-0:6.6 100% | 115.7 MiB/s | 355.3 KiB | 00m00s [ 21/187] Installing bash-0:5.3.9-3.fc4 100% | 314.1 MiB/s | 8.5 MiB | 00m00s [ 22/187] Installing glibc-common-0:2.4 100% | 68.3 MiB/s | 1.0 MiB | 00m00s [ 23/187] Installing glibc-gconv-extra- 100% | 340.9 MiB/s | 7.5 MiB | 00m00s [ 24/187] Installing glibc-0:2.43-8.fc4 100% | 210.3 MiB/s | 6.9 MiB | 00m00s [ 25/187] Installing ncurses-libs-0:6.6 100% | 317.5 MiB/s | 975.4 KiB | 00m00s [ 26/187] Installing glibc-minimal-lang 100% | 0.0 B/s | 124.0 B | 00m00s [ 27/187] Installing zlib-ng-compat-0:2 100% | 162.6 MiB/s | 166.5 KiB | 00m00s [ 28/187] Installing bzip2-libs-0:1.0.8 100% | 0.0 B/s | 81.6 KiB | 00m00s [ 29/187] Installing libgpg-error-0:1.5 100% | 71.2 MiB/s | 947.5 KiB | 00m00s [ 30/187] Installing libstdc++-0:16.1.1 100% | 441.8 MiB/s | 3.1 MiB | 00m00s [ 31/187] Installing libassuan-0:2.5.7- 100% | 161.8 MiB/s | 165.7 KiB | 00m00s [ 32/187] Installing libgcrypt-0:1.12.2 100% | 414.7 MiB/s | 1.7 MiB | 00m00s [ 33/187] Installing readline-0:8.3-4.f 100% | 509.4 MiB/s | 521.6 KiB | 00m00s [ 34/187] Installing xz-libs-1:5.8.2-2. 100% | 213.7 MiB/s | 218.8 KiB | 00m00s [ 35/187] Installing gmp-1:6.3.0-5.fc44 100% | 399.2 MiB/s | 817.5 KiB | 00m00s [ 36/187] Installing libzstd-0:1.5.7-5. 100% | 467.5 MiB/s | 957.4 KiB | 00m00s [ 37/187] Installing elfutils-libelf-0: 100% | 387.3 MiB/s | 1.2 MiB | 00m00s [ 38/187] Installing libuuid-0:2.41.5-1 100% | 0.0 B/s | 38.3 KiB | 00m00s [ 39/187] Installing libacl-0:2.4.0-1.f 100% | 0.0 B/s | 40.7 KiB | 00m00s [ 40/187] Installing popt-0:1.19-10.fc4 100% | 68.0 MiB/s | 139.3 KiB | 00m00s [ 41/187] Installing systemd-libs-0:259 100% | 407.1 MiB/s | 2.4 MiB | 00m00s [ 42/187] Installing npth-0:1.8-4.fc44. 100% | 0.0 B/s | 50.6 KiB | 00m00s [ 43/187] Installing libblkid-0:2.41.5- 100% | 268.8 MiB/s | 275.3 KiB | 00m00s [ 44/187] Installing libxcrypt-0:4.5.2- 100% | 289.0 MiB/s | 295.9 KiB | 00m00s [ 45/187] Installing libsepol-0:3.11-1. 100% | 421.4 MiB/s | 863.0 KiB | 00m00s [ 46/187] Installing sqlite-libs-0:3.51 100% | 397.6 MiB/s | 1.6 MiB | 00m00s [ 47/187] Installing gnupg2-gpgconf-0:2 100% | 22.4 MiB/s | 251.8 KiB | 00m00s [ 48/187] Installing pcre2-0:10.47-1.fc 100% | 351.6 MiB/s | 720.0 KiB | 00m00s [ 49/187] Installing libselinux-0:3.11- 100% | 201.6 MiB/s | 206.4 KiB | 00m00s [ 50/187] Installing grep-0:3.12-3.fc44 100% | 71.6 MiB/s | 1.0 MiB | 00m00s [ 51/187] Installing sed-0:4.9-7.fc44.x 100% | 65.0 MiB/s | 865.4 KiB | 00m00s [ 52/187] Installing findutils-1:4.10.0 100% | 124.6 MiB/s | 1.9 MiB | 00m00s [ 53/187] Installing libtasn1-0:4.21.0- 100% | 178.2 MiB/s | 182.4 KiB | 00m00s [ 54/187] Installing libunistring-0:1.1 100% | 433.6 MiB/s | 1.7 MiB | 00m00s [ 55/187] Installing libidn2-0:2.3.8-3. 100% | 54.9 MiB/s | 562.6 KiB | 00m00s [ 56/187] Installing crypto-policies-0: 100% | 38.5 MiB/s | 157.7 KiB | 00m00s [ 57/187] Installing xz-1:5.8.2-2.fc44. 100% | 85.6 MiB/s | 1.4 MiB | 00m00s [ 58/187] Installing libmount-0:2.41.5- 100% | 384.5 MiB/s | 393.7 KiB | 00m00s [ 59/187] Installing gnupg2-verify-0:2. 100% | 32.1 MiB/s | 361.7 KiB | 00m00s [ 60/187] Installing dwz-0:0.16-3.fc44. 100% | 25.9 MiB/s | 292.3 KiB | 00m00s [ 61/187] Installing mpfr-0:4.2.2-3.fc4 100% | 415.4 MiB/s | 850.8 KiB | 00m00s [ 62/187] Installing gawk-0:5.3.2-3.fc4 100% | 114.6 MiB/s | 1.8 MiB | 00m00s [ 63/187] Installing libksba-0:1.6.7-5. 100% | 407.1 MiB/s | 416.9 KiB | 00m00s [ 64/187] Installing unzip-0:6.0-69.fc4 100% | 36.6 MiB/s | 449.3 KiB | 00m00s [ 65/187] Installing file-libs-0:5.46-1 100% | 741.6 MiB/s | 11.9 MiB | 00m00s [ 66/187] Installing file-0:5.46-10.fc4 100% | 9.0 MiB/s | 101.6 KiB | 00m00s [ 67/187] Installing diffutils-0:3.12-5 100% | 112.3 MiB/s | 1.6 MiB | 00m00s [ 68/187] Installing libeconf-0:0.7.9-3 100% | 64.9 MiB/s | 66.4 KiB | 00m00s [ 69/187] Installing lua-libs-0:5.4.8-5 100% | 276.6 MiB/s | 283.2 KiB | 00m00s [ 70/187] Installing json-c-0:0.18-8.fc 100% | 0.0 B/s | 83.9 KiB | 00m00s [ 71/187] Installing libsmartcols-0:2.4 100% | 185.0 MiB/s | 189.5 KiB | 00m00s [ 72/187] Installing libcap-ng-0:0.9.3- 100% | 0.0 B/s | 70.6 KiB | 00m00s [ 73/187] Installing audit-libs-0:4.2.1 100% | 383.9 MiB/s | 393.1 KiB | 00m00s [ 74/187] Installing pam-libs-0:1.7.2-2 100% | 129.6 MiB/s | 132.7 KiB | 00m00s [ 75/187] Installing libcap-0:2.78-1.fc 100% | 19.3 MiB/s | 217.2 KiB | 00m00s [ 76/187] Installing libsemanage-0:3.11 100% | 310.7 MiB/s | 318.2 KiB | 00m00s [ 77/187] Installing alternatives-0:1.3 100% | 5.6 MiB/s | 63.6 KiB | 00m00s [ 78/187] Installing libattr-0:2.6.0-1. 100% | 0.0 B/s | 25.2 KiB | 00m00s [ 79/187] Installing libffi-0:3.5.2-2.f 100% | 87.0 MiB/s | 89.1 KiB | 00m00s [ 80/187] Installing p11-kit-0:0.26.5-1 100% | 146.2 MiB/s | 2.6 MiB | 00m00s [ 81/187] Installing p11-kit-trust-0:0. 100% | 24.7 MiB/s | 480.1 KiB | 00m00s [ 82/187] Installing ngtcp2-0:1.22.1-1. 100% | 331.8 MiB/s | 339.8 KiB | 00m00s [ 83/187] Installing openssl-libs-1:3.5 100% | 437.7 MiB/s | 9.2 MiB | 00m00s [ 84/187] Installing coreutils-0:9.10-5 100% | 189.9 MiB/s | 5.7 MiB | 00m00s [ 85/187] Installing ca-certificates-0: 100% | 2.3 MiB/s | 2.5 MiB | 00m01s [ 86/187] Installing gzip-0:1.14-2.fc44 100% | 30.6 MiB/s | 407.1 KiB | 00m00s [ 87/187] Installing libfsverity-0:1.6- 100% | 0.0 B/s | 29.4 KiB | 00m00s [ 88/187] Installing libevent-0:2.1.12- 100% | 319.8 MiB/s | 982.4 KiB | 00m00s [ 89/187] Installing rpm-sequoia-0:1.10 100% | 405.2 MiB/s | 2.4 MiB | 00m00s [ 90/187] Installing ngtcp2-crypto-ossl 100% | 0.0 B/s | 52.5 KiB | 00m00s [ 91/187] Installing liblastlog2-0:2.41 100% | 7.1 MiB/s | 43.7 KiB | 00m00s [ 92/187] Installing util-linux-core-0: 100% | 87.0 MiB/s | 1.5 MiB | 00m00s [ 93/187] Installing zip-0:3.0-45.fc44. 100% | 57.1 MiB/s | 701.9 KiB | 00m00s [ 94/187] Installing gnupg2-keyboxd-0:2 100% | 28.2 MiB/s | 202.4 KiB | 00m00s [ 95/187] Installing libpsl-0:0.21.5-7. 100% | 75.6 MiB/s | 77.4 KiB | 00m00s [ 96/187] Installing tar-2:1.35-8.fc44. 100% | 156.7 MiB/s | 3.0 MiB | 00m00s [ 97/187] Installing linkdupes-0:0.7.3- 100% | 63.7 MiB/s | 782.3 KiB | 00m00s [ 98/187] Installing libselinux-utils-0 100% | 24.0 MiB/s | 320.1 KiB | 00m00s [ 99/187] Installing systemd-standalone 100% | 27.2 MiB/s | 306.3 KiB | 00m00s [100/187] Installing rpm-libs-0:6.0.2-1 100% | 313.4 MiB/s | 962.8 KiB | 00m00s [101/187] Installing libfdisk-0:2.41.5- 100% | 190.1 MiB/s | 389.4 KiB | 00m00s [102/187] Installing util-linux-0:2.41. 100% | 112.0 MiB/s | 3.6 MiB | 00m00s [103/187] Installing policycoreutils-0: 100% | 38.8 MiB/s | 913.0 KiB | 00m00s [104/187] Installing selinux-policy-0:4 100% | 1.7 MiB/s | 34.5 KiB | 00m00s [105/187] Installing selinux-policy-tar 100% | 225.8 MiB/s | 14.9 MiB | 00m00s [106/187] Installing libusb1-0:1.0.30-1 100% | 21.7 MiB/s | 177.7 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. >>> [107/187] Installing tpm2-tss-0:4.1.3-9 100% | 326.6 MiB/s | 1.6 MiB | 00m00s [108/187] Installing ima-evm-utils-libs 100% | 60.4 MiB/s | 61.9 KiB | 00m00s [109/187] Installing gnupg2-gpg-agent-0 100% | 35.5 MiB/s | 690.5 KiB | 00m00s [110/187] Installing zstd-0:1.5.7-5.fc4 100% | 38.0 MiB/s | 506.0 KiB | 00m00s [111/187] Installing nettle-0:3.10.1-3. 100% | 389.4 MiB/s | 797.4 KiB | 00m00s [112/187] Installing gnutls-0:3.8.13-1. 100% | 427.7 MiB/s | 3.8 MiB | 00m00s [113/187] Installing libxml2-0:2.12.10- 100% | 118.0 MiB/s | 1.8 MiB | 00m00s [114/187] Installing bzip2-0:1.0.8-23.f 100% | 8.8 MiB/s | 99.5 KiB | 00m00s [115/187] Installing add-determinism-0: 100% | 145.5 MiB/s | 2.2 MiB | 00m00s [116/187] Installing build-reproducibil 100% | 0.0 B/s | 1.5 KiB | 00m00s [117/187] Installing cpio-0:2.15-9.fc44 100% | 78.8 MiB/s | 1.1 MiB | 00m00s [118/187] Installing ed-0:1.22.5-2.fc44 100% | 13.5 MiB/s | 152.0 KiB | 00m00s [119/187] Installing patch-0:2.8-4.fc44 100% | 20.2 MiB/s | 228.1 KiB | 00m00s [120/187] Installing libtool-ltdl-0:2.5 100% | 0.0 B/s | 71.1 KiB | 00m00s [121/187] Installing gdbm-libs-1:1.23-1 100% | 128.3 MiB/s | 131.3 KiB | 00m00s [122/187] Installing cyrus-sasl-lib-0:2 100% | 135.9 MiB/s | 2.3 MiB | 00m00s [123/187] Installing openldap-0:2.6.13- 100% | 328.9 MiB/s | 673.7 KiB | 00m00s [124/187] Installing gnupg2-dirmngr-0:2 100% | 32.7 MiB/s | 636.7 KiB | 00m00s [125/187] Installing gnupg2-0:2.4.9-16. 100% | 250.2 MiB/s | 6.5 MiB | 00m00s [126/187] Installing rpm-sign-libs-0:6. 100% | 0.0 B/s | 40.5 KiB | 00m00s [127/187] Installing gpgverify-0:2.2-4. 100% | 0.0 B/s | 9.4 KiB | 00m00s [128/187] Installing libgomp-0:16.1.1-2 100% | 282.6 MiB/s | 578.8 KiB | 00m00s [129/187] Installing jansson-0:2.14-4.f 100% | 88.2 MiB/s | 90.3 KiB | 00m00s [130/187] Installing lz4-libs-0:1.10.0- 100% | 154.6 MiB/s | 158.4 KiB | 00m00s [131/187] Installing libarchive-0:3.8.7 100% | 326.0 MiB/s | 1.0 MiB | 00m00s [132/187] Installing libpkgconf-0:2.5.1 100% | 0.0 B/s | 91.3 KiB | 00m00s [133/187] Installing pkgconf-0:2.5.1-1. 100% | 7.7 MiB/s | 95.2 KiB | 00m00s [134/187] Installing pkgconf-pkg-config 100% | 161.2 KiB/s | 1.8 KiB | 00m00s [135/187] Installing xxhash-libs-0:0.8. 100% | 93.2 MiB/s | 95.4 KiB | 00m00s [136/187] Installing libbrotli-0:1.2.0- 100% | 282.3 MiB/s | 867.3 KiB | 00m00s [137/187] Installing libnghttp3-0:1.18. 100% | 161.0 MiB/s | 164.8 KiB | 00m00s [138/187] Installing libcbor-0:0.13.0-2 100% | 79.0 MiB/s | 80.9 KiB | 00m00s [139/187] Installing libfido2-0:1.16.0- 100% | 242.1 MiB/s | 247.9 KiB | 00m00s [140/187] Installing keyutils-libs-0:1. 100% | 0.0 B/s | 55.6 KiB | 00m00s [141/187] Installing libcom_err-0:1.47. 100% | 0.0 B/s | 64.1 KiB | 00m00s [142/187] Installing libverto-0:0.3.2-1 100% | 26.4 MiB/s | 27.1 KiB | 00m00s [143/187] Installing krb5-libs-0:1.22.2 100% | 342.1 MiB/s | 2.4 MiB | 00m00s [144/187] Installing libssh-0:0.12.2-1. 100% | 355.3 MiB/s | 727.6 KiB | 00m00s [145/187] Installing libnghttp2-0:1.68. 100% | 163.3 MiB/s | 167.3 KiB | 00m00s [146/187] Installing libcurl-0:8.18.0-8 100% | 332.7 MiB/s | 1.0 MiB | 00m00s [147/187] Installing curl-0:8.18.0-8.fc 100% | 22.4 MiB/s | 482.6 KiB | 00m00s [148/187] Installing rpm-0:6.0.2-1.fc44 100% | 88.0 MiB/s | 2.6 MiB | 00m00s [149/187] Installing cmake-srpm-macros- 100% | 0.0 B/s | 804.0 B | 00m00s [150/187] Installing efi-srpm-macros-0: 100% | 0.0 B/s | 41.2 KiB | 00m00s [151/187] Installing java-srpm-macros-0 100% | 0.0 B/s | 1.1 KiB | 00m00s [152/187] Installing lua-srpm-macros-0: 100% | 0.0 B/s | 1.9 KiB | 00m00s [153/187] Installing tree-sitter-srpm-m 100% | 0.0 B/s | 9.3 KiB | 00m00s [154/187] Installing zig-srpm-macros-0: 100% | 0.0 B/s | 1.9 KiB | 00m00s [155/187] Installing filesystem-srpm-ma 100% | 0.0 B/s | 38.9 KiB | 00m00s [156/187] Installing elfutils-default-y 100% | 408.6 KiB/s | 2.0 KiB | 00m00s [157/187] Installing elfutils-libs-0:0. 100% | 233.4 MiB/s | 717.1 KiB | 00m00s [158/187] Installing elfutils-debuginfo 100% | 7.0 MiB/s | 86.1 KiB | 00m00s [159/187] Installing elfutils-0:0.195-1 100% | 165.3 MiB/s | 3.0 MiB | 00m00s [160/187] Installing binutils-0:2.46.1- 100% | 367.0 MiB/s | 28.3 MiB | 00m00s [161/187] Installing gdb-minimal-0:17.2 100% | 329.4 MiB/s | 14.2 MiB | 00m00s [162/187] Installing debugedit-0:5.3-2. 100% | 19.9 MiB/s | 224.0 KiB | 00m00s [163/187] Installing rpm-build-libs-0:6 100% | 270.7 MiB/s | 277.2 KiB | 00m00s [164/187] Installing gnome-srpm-macros- 100% | 0.0 B/s | 4.1 KiB | 00m00s [165/187] Installing qt5-srpm-macros-0: 100% | 0.0 B/s | 776.0 B | 00m00s [166/187] Installing perl-srpm-macros-0 100% | 0.0 B/s | 1.1 KiB | 00m00s [167/187] Installing openblas-srpm-macr 100% | 0.0 B/s | 392.0 B | 00m00s [168/187] Installing ocaml-srpm-macros- 100% | 0.0 B/s | 2.1 KiB | 00m00s [169/187] Installing kernel-srpm-macros 100% | 0.0 B/s | 2.3 KiB | 00m00s [170/187] Installing gnat-srpm-macros-0 100% | 0.0 B/s | 1.3 KiB | 00m00s [171/187] Installing ghc-srpm-macros-0: 100% | 0.0 B/s | 1.0 KiB | 00m00s [172/187] Installing gap-srpm-macros-0: 100% | 0.0 B/s | 2.7 KiB | 00m00s [173/187] Installing fpc-srpm-macros-0: 100% | 0.0 B/s | 420.0 B | 00m00s [174/187] Installing ansible-srpm-macro 100% | 0.0 B/s | 36.2 KiB | 00m00s [175/187] Installing redhat-rpm-config- 100% | 37.1 MiB/s | 189.9 KiB | 00m00s [176/187] Installing forge-srpm-macros- 100% | 0.0 B/s | 40.3 KiB | 00m00s [177/187] Installing rpm-build-0:6.0.2- 100% | 22.8 MiB/s | 303.5 KiB | 00m00s [178/187] Installing erlang-srpm-macros 100% | 0.0 B/s | 2.5 KiB | 00m00s [179/187] Installing pyproject-srpm-mac 100% | 0.0 B/s | 4.0 KiB | 00m00s [180/187] Installing fonts-srpm-macros- 100% | 0.0 B/s | 57.0 KiB | 00m00s [181/187] Installing go-srpm-macros-0:3 100% | 0.0 B/s | 63.0 KiB | 00m00s [182/187] Installing python-srpm-macros 100% | 0.0 B/s | 52.9 KiB | 00m00s [183/187] Installing R-srpm-macros-0:1. 100% | 0.0 B/s | 4.4 KiB | 00m00s [184/187] Installing rpm-plugin-selinux 100% | 0.0 B/s | 12.9 KiB | 00m00s [185/187] Installing which-0:2.25-1.fc4 100% | 7.0 MiB/s | 85.8 KiB | 00m00s [186/187] Installing shadow-utils-2:4.1 100% | 161.1 MiB/s | 4.0 MiB | 00m00s [187/187] Installing info-0:7.2-9.fc44. 100% | 57.7 KiB/s | 366.0 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.fc44.noarch add-determinism-0.7.3-2.fc44.x86_64 alternatives-1.33-5.fc44.x86_64 ansible-srpm-macros-1-20.1.fc44.noarch audit-libs-4.2.1-1.fc44.x86_64 bash-5.3.9-3.fc44.x86_64 binutils-2.46.1-1.fc44.x86_64 build-reproducibility-srpm-macros-0.7.3-2.fc44.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.fc44.noarch cmake-srpm-macros-4.3.0-1.fc44.noarch coreutils-9.10-5.fc44.x86_64 coreutils-common-9.10-5.fc44.x86_64 cpio-2.15-9.fc44.x86_64 crypto-policies-20251128-3.git19878fe.fc44.noarch curl-8.18.0-8.fc44.x86_64 cyrus-sasl-lib-2.1.28-35.fc44.x86_64 debugedit-5.3-2.fc44.x86_64 diffutils-3.12-5.fc44.x86_64 dwz-0.16-3.fc44.x86_64 ed-1.22.5-2.fc44.x86_64 efi-srpm-macros-6-6.fc44.noarch elfutils-0.195-1.fc44.x86_64 elfutils-debuginfod-client-0.195-1.fc44.x86_64 elfutils-default-yama-scope-0.195-1.fc44.noarch elfutils-libelf-0.195-1.fc44.x86_64 elfutils-libs-0.195-1.fc44.x86_64 erlang-srpm-macros-0.3.11-1.fc44.noarch fedora-gpg-keys-44-1.noarch fedora-release-44-18.noarch fedora-release-common-44-18.noarch fedora-release-identity-basic-44-18.noarch fedora-repos-44-1.noarch file-5.46-10.fc44.x86_64 file-libs-5.46-10.fc44.x86_64 filesystem-3.18-52.fc44.x86_64 filesystem-srpm-macros-3.18-52.fc44.noarch findutils-4.10.0-7.fc44.x86_64 fonts-srpm-macros-5.0.0-2.fc44.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.3.2-3.fc44.x86_64 gdb-minimal-17.2-2.fc44.x86_64 gdbm-libs-1.23-11.fc44.x86_64 ghc-srpm-macros-1.10-1.fc44.noarch glibc-2.43-8.fc44.x86_64 glibc-common-2.43-8.fc44.x86_64 glibc-gconv-extra-2.43-8.fc44.x86_64 glibc-minimal-langpack-2.43-8.fc44.x86_64 gmp-6.3.0-5.fc44.x86_64 gnat-srpm-macros-7-2.fc44.noarch gnome-srpm-macros-1.0-1.fc44.noarch gnulib-l10n-20241231-2.fc44.noarch gnupg2-2.4.9-16.fc44.x86_64 gnupg2-dirmngr-2.4.9-16.fc44.x86_64 gnupg2-gpg-agent-2.4.9-16.fc44.x86_64 gnupg2-gpgconf-2.4.9-16.fc44.x86_64 gnupg2-keyboxd-2.4.9-16.fc44.x86_64 gnupg2-verify-2.4.9-16.fc44.x86_64 gnutls-3.8.13-1.fc44.x86_64 go-srpm-macros-3.8.0-2.fc44.noarch gpg-pubkey-36f612dcf27f7d1a48a835e4dbfcf71c6d9f90a6-6786af3b 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-8.fc44.x86_64 info-7.2-9.fc44.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-28.fc44.noarch keyutils-libs-1.6.3-7.fc44.x86_64 krb5-libs-1.22.2-4.fc44.x86_64 libacl-2.4.0-1.fc44.x86_64 libarchive-3.8.7-1.fc44.x86_64 libassuan-2.5.7-5.fc44.x86_64 libattr-2.6.0-1.fc44.x86_64 libblkid-2.41.5-1.fc44.x86_64 libbrotli-1.2.0-3.fc44.x86_64 libcap-2.78-1.fc44.x86_64 libcap-ng-0.9.3-1.fc44.x86_64 libcbor-0.13.0-2.fc44.x86_64 libcom_err-1.47.3-4.fc44.x86_64 libcurl-8.18.0-8.fc44.x86_64 libeconf-0.7.9-3.fc44.x86_64 libevent-2.1.12-17.fc44.x86_64 libfdisk-2.41.5-1.fc44.x86_64 libffi-3.5.2-2.fc44.x86_64 libfido2-1.16.0-5.fc44.x86_64 libfsverity-1.6-4.fc44.x86_64 libgcc-16.1.1-2.fc44.x86_64 libgcrypt-1.12.2-1.fc44.x86_64 libgomp-16.1.1-2.fc44.x86_64 libgpg-error-1.58-2.fc44.x86_64 libidn2-2.3.8-3.fc44.x86_64 libksba-1.6.7-5.fc44.x86_64 liblastlog2-2.41.5-1.fc44.x86_64 libmount-2.41.5-1.fc44.x86_64 libnghttp2-1.68.0-5.fc44.x86_64 libnghttp3-1.18.0-1.fc44.x86_64 libpkgconf-2.5.1-1.fc44.x86_64 libpsl-0.21.5-7.fc44.x86_64 libselinux-3.11-1.fc44.x86_64 libselinux-utils-3.11-1.fc44.x86_64 libsemanage-3.11-1.fc44.x86_64 libsepol-3.11-1.fc44.x86_64 libsmartcols-2.41.5-1.fc44.x86_64 libssh-0.12.2-1.fc44.x86_64 libssh-config-0.12.2-1.fc44.noarch libstdc++-16.1.1-2.fc44.x86_64 libtasn1-4.21.0-1.fc44.x86_64 libtool-ltdl-2.5.4-10.fc44.x86_64 libunistring-1.1-11.fc44.x86_64 libusb1-1.0.30-1.fc44.x86_64 libuuid-2.41.5-1.fc44.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.fc44.x86_64 lua-libs-5.4.8-5.fc44.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-1.fc44.noarch ncurses-libs-6.6-1.fc44.x86_64 nettle-3.10.1-3.fc44.x86_64 ngtcp2-1.22.1-1.fc44.x86_64 ngtcp2-crypto-ossl-1.22.1-1.fc44.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.fc44.x86_64 openssl-libs-3.5.7-2.fc44.x86_64 p11-kit-0.26.5-1.fc44.x86_64 p11-kit-trust-0.26.5-1.fc44.x86_64 package-notes-srpm-macros-0.20-1.fc44.noarch pam-libs-1.7.2-2.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.fc44.x86_64 pkgconf-m4-2.5.1-1.fc44.noarch pkgconf-pkg-config-2.5.1-1.fc44.x86_64 policycoreutils-3.11-2.fc44.x86_64 popt-1.19-10.fc44.x86_64 publicsuffix-list-dafsa-20260116-1.fc44.noarch pyproject-srpm-macros-1.23.2-1.fc44.noarch python-srpm-macros-3.14-12.fc44.noarch qt5-srpm-macros-5.15.18-2.fc44.noarch qt6-srpm-macros-6.11.1-1.fc44.noarch readline-8.3-4.fc44.x86_64 redhat-rpm-config-344-2.fc44.noarch rpm-6.0.2-1.fc44.x86_64 rpm-build-6.0.2-1.fc44.x86_64 rpm-build-libs-6.0.2-1.fc44.x86_64 rpm-libs-6.0.2-1.fc44.x86_64 rpm-plugin-selinux-6.0.2-1.fc44.x86_64 rpm-sequoia-1.10.2-4.fc44.x86_64 rpm-sign-libs-6.0.2-1.fc44.x86_64 rust-srpm-macros-28.5-1.fc44.noarch sed-4.9-7.fc44.x86_64 selinux-policy-44.6-1.fc44.noarch selinux-policy-targeted-44.6-1.fc44.noarch setup-2.15.0-28.fc44.noarch shadow-utils-4.19.0-7.fc44.x86_64 sqlite-libs-3.51.2-2.fc44.x86_64 systemd-libs-259.8-1.fc44.x86_64 systemd-standalone-sysusers-259.8-1.fc44.x86_64 tar-1.35-8.fc44.x86_64 tpm2-tss-4.1.3-9.fc44.x86_64 tree-sitter-srpm-macros-0.4.2-2.fc44.noarch unzip-6.0-69.fc44.x86_64 util-linux-2.41.5-1.fc44.x86_64 util-linux-core-2.41.5-1.fc44.x86_64 which-2.25-1.fc44.x86_64 xxhash-libs-0.8.3-4.fc44.x86_64 xz-5.8.2-2.fc44.x86_64 xz-libs-5.8.2-2.fc44.x86_64 zig-srpm-macros-1-8.fc44.noarch zip-3.0-45.fc44.x86_64 zlib-ng-compat-2.3.3-3.fc44.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=1787270400 Wrote: /builddir/build/SRPMS/lavinmq-2.9.2-1.fc44.src.rpm Finish: rpmbuild -bs INFO: chroot_scan: 1 files copied to /var/lib/copr-rpmbuild/results/chroot_scan INFO: /var/lib/mock/fedora-44-x86_64-1787310998.564044/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-nwipy3i2/lavinmq/lavinmq.spec) Config(child) 0 minutes 46 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/lavinmq-2.9.2-1.fc44.src.rpm) Config(fedora-44-x86_64) Start(bootstrap): chroot init INFO: mounting tmpfs at /var/lib/mock/fedora-44-x86_64-bootstrap-1787310998.564044/root. INFO: reusing tmpfs at /var/lib/mock/fedora-44-x86_64-bootstrap-1787310998.564044/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-44-x86_64-1787310998.564044/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.2-1.fc44.x86_64 rpm-sequoia-1.10.2-4.fc44.x86_64 dnf5-5.4.2.1-1.fc44.x86_64 dnf5-plugins-5.4.2.1-1.fc44.x86_64 Finish: chroot init Start: build phase for lavinmq-2.9.2-1.fc44.src.rpm Start: build setup for lavinmq-2.9.2-1.fc44.src.rpm Building target platforms: x86_64 Building for target x86_64 setting SOURCE_DATE_EPOCH=1787270400 Wrote: /builddir/build/SRPMS/lavinmq-2.9.2-1.fc44.src.rpm Updating and loading repositories: updates 100% | 141.6 KiB/s | 22.9 KiB | 00m00s Additional repo https_download_copr_fe 100% | 69.0 KiB/s | 1.5 KiB | 00m00s fedora 100% | 261.2 KiB/s | 24.0 KiB | 00m00s Copr repository 100% | 68.6 KiB/s | 1.5 KiB | 00m00s Repositories loaded. Package "forge-srpm-macros-0.4.0-4.fc44.noarch" is already installed. Package Arch Version Repository Size Installing: crystal x86_64 0:1.21.0-1.fc44 https_download_copr_fedorainfracloud_org_results_zawertun_crystal_fedora_44_x86_64 24.6 MiB etcd x86_64 0:3.5.13-1.fc41 fedora 55.6 MiB gcc x86_64 0:16.1.1-2.fc44 updates 120.8 MiB help2man noarch 0:1.49.3-9.fc44 fedora 415.6 KiB lz4-devel x86_64 0:1.10.0-4.fc44 fedora 102.2 KiB make x86_64 1:4.4.1-12.fc44 fedora 1.8 MiB openssl-devel x86_64 1:3.5.7-2.fc44 updates 4.5 MiB shards x86_64 0:0.20.0-4.fc44 https_download_copr_fedorainfracloud_org_results_zawertun_crystal_fedora_44_x86_64 1.3 MiB systemd-rpm-macros noarch 0:259.8-1.fc44 updates 8.5 KiB zlib-ng-compat-devel x86_64 0:2.3.3-3.fc44 fedora 107.0 KiB Installing dependencies: annobin-docs noarch 0:13.14-1.fc44 updates 99.3 KiB annobin-plugin-gcc x86_64 0:13.14-1.fc44 updates 699.3 KiB cmake-filesystem x86_64 0:4.3.0-1.fc44 fedora 0.0 B cpp x86_64 0:16.1.1-2.fc44 updates 42.1 MiB expat x86_64 0:2.8.1-1.fc44 updates 327.4 KiB gc x86_64 0:8.2.6-6.fc44 fedora 249.8 KiB gc-devel x86_64 0:8.2.6-6.fc44 fedora 395.7 KiB gcc-plugin-annobin x86_64 0:16.1.1-2.fc44 updates 57.2 KiB git x86_64 0:2.55.0-1.fc44 updates 57.7 KiB git-core x86_64 0:2.55.0-1.fc44 updates 25.6 MiB git-core-doc noarch 0:2.55.0-1.fc44 updates 18.9 MiB glibc-devel x86_64 0:2.43-8.fc44 updates 2.3 MiB groff-base x86_64 0:1.23.0-12.fc44 fedora 3.9 MiB kernel-headers x86_64 0:7.1.3-200.fc44 updates 6.9 MiB less x86_64 0:704-4.fc44 updates 479.5 KiB libatomic x86_64 0:16.1.1-2.fc44 updates 45.6 KiB libedit x86_64 0:3.1-59.20260512cvs.fc44 updates 248.3 KiB libevent-devel x86_64 0:2.1.12-17.fc44 fedora 426.0 KiB libmpc x86_64 0:1.4.1-1.fc44 updates 168.7 KiB libxcrypt-devel x86_64 0:4.5.2-3.fc44 fedora 31.0 KiB libyaml x86_64 0:0.2.5-18.fc44 fedora 138.5 KiB lld x86_64 0:22.1.8-4.fc44 updates 42.4 KiB lld-libs x86_64 0:22.1.8-4.fc44 updates 6.1 MiB llvm-filesystem x86_64 0:22.1.8-4.fc44 updates 0.0 B llvm-libs x86_64 0:22.1.8-4.fc44 updates 140.5 MiB mpdecimal x86_64 0:4.0.1-3.fc44 fedora 217.1 KiB ncurses x86_64 0:6.6-1.fc44 fedora 611.4 KiB openssh x86_64 0:10.2p1-14.fc44 updates 1.4 MiB openssh-clients x86_64 0:10.2p1-14.fc44 updates 2.7 MiB pcre2-devel x86_64 0:10.47-1.fc44.1 fedora 2.1 MiB pcre2-utf16 x86_64 0:10.47-1.fc44.1 fedora 655.2 KiB pcre2-utf32 x86_64 0:10.47-1.fc44.1 fedora 623.1 KiB perl-AutoLoader noarch 0:5.74-525.fc44 updates 20.6 KiB perl-B x86_64 0:1.89-525.fc44 updates 501.2 KiB perl-Carp noarch 0:1.54-521.fc44 fedora 46.6 KiB perl-Class-Struct noarch 0:0.68-525.fc44 updates 25.4 KiB perl-Data-Dumper x86_64 0:2.192-523.fc44 updates 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-525.fc44 updates 32.1 KiB perl-Encode x86_64 4:3.21-521.fc44 fedora 4.7 MiB perl-Errno x86_64 0:1.38-525.fc44 updates 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-525.fc44 updates 48.7 KiB perl-File-Basename noarch 0:2.86-525.fc44 updates 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-525.fc44 updates 12.5 KiB perl-FileHandle noarch 0:2.05-525.fc44 updates 9.4 KiB perl-Getopt-Long noarch 1:2.58-521.fc44 fedora 144.5 KiB perl-Getopt-Std noarch 0:1.14-525.fc44 updates 11.2 KiB perl-Git noarch 0:2.55.0-1.fc44 updates 64.4 KiB perl-HTTP-Tiny noarch 0:0.096-1.fc44 updates 162.4 KiB perl-IO x86_64 0:1.55-525.fc44 updates 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-525.fc44 updates 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.94-12.fc44 fedora 1.3 MiB perl-POSIX x86_64 0:2.23-525.fc44 updates 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.47-4.fc44 fedora 565.3 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-525.fc44 updates 2.2 KiB perl-Socket x86_64 4:2.041-1.fc44 updates 120.7 KiB perl-Storable x86_64 1:3.37-522.fc44 fedora 235.1 KiB perl-Symbol noarch 0:1.09-525.fc44 updates 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.35-1.fc44 updates 268.2 KiB perl-base noarch 0:2.27-525.fc44 updates 12.6 KiB perl-constant noarch 0:1.33-522.fc44 fedora 26.2 KiB perl-if noarch 0:0.61.000-525.fc44 updates 5.8 KiB perl-interpreter x86_64 4:5.42.3-525.fc44 updates 118.8 KiB perl-lib x86_64 0:0.65-525.fc44 updates 8.5 KiB perl-libnet noarch 0:3.15-522.fc44 fedora 289.4 KiB perl-libs x86_64 4:5.42.3-525.fc44 updates 11.6 MiB perl-locale noarch 0:1.13-525.fc44 updates 6.1 KiB perl-mro x86_64 0:1.29-525.fc44 updates 41.4 KiB perl-overload noarch 0:1.40-525.fc44 updates 71.6 KiB perl-overloading noarch 0:0.02-525.fc44 updates 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-525.fc44 updates 3.9 KiB python-pip-wheel noarch 0:26.0.1-2.fc44 fedora 1.2 MiB python3 x86_64 0:3.14.7-1.fc44 updates 28.7 KiB python3-libs x86_64 0:3.14.7-1.fc44 updates 44.0 MiB tzdata noarch 0:2026c-1.fc44 updates 1.2 MiB Transaction Summary: Installing: 108 packages Total size of inbound packages is 155 MiB. Need to download 155 MiB. After this operation, 537 MiB extra will be used (install 537 MiB, remove 0 B). [ 1/108] help2man-0:1.49.3-9.fc44.noar 100% | 1.0 MiB/s | 227.0 KiB | 00m00s [ 2/108] shards-0:0.20.0-4.fc44.x86_64 100% | 43.7 MiB/s | 447.7 KiB | 00m00s [ 3/108] crystal-0:1.21.0-1.fc44.x86_6 100% | 275.1 MiB/s | 5.2 MiB | 00m00s [ 4/108] make-1:4.4.1-12.fc44.x86_64 100% | 2.1 MiB/s | 588.7 KiB | 00m00s [ 5/108] lz4-devel-0:1.10.0-4.fc44.x86 100% | 947.5 KiB/s | 32.2 KiB | 00m00s [ 6/108] openssl-devel-1:3.5.7-2.fc44. 100% | 34.8 MiB/s | 3.0 MiB | 00m00s [ 7/108] systemd-rpm-macros-0:259.8-1. 100% | 1.0 MiB/s | 15.8 KiB | 00m00s [ 8/108] etcd-0:3.5.13-1.fc41.x86_64 100% | 37.8 MiB/s | 16.7 MiB | 00m00s [ 9/108] zlib-ng-compat-devel-0:2.3.3- 100% | 1.1 MiB/s | 38.1 KiB | 00m00s [ 10/108] perl-Getopt-Long-1:2.58-521.f 100% | 2.1 MiB/s | 63.6 KiB | 00m00s [ 11/108] perl-Text-ParseWords-0:3.31-5 100% | 531.4 KiB/s | 16.5 KiB | 00m00s [ 12/108] perl-Text-Tabs+Wrap-0:2024.00 100% | 725.0 KiB/s | 21.8 KiB | 00m00s [ 13/108] gc-0:8.2.6-6.fc44.x86_64 100% | 2.6 MiB/s | 114.3 KiB | 00m00s [ 14/108] libyaml-0:0.2.5-18.fc44.x86_6 100% | 2.0 MiB/s | 63.0 KiB | 00m00s [ 15/108] gcc-0:16.1.1-2.fc44.x86_64 100% | 126.6 MiB/s | 43.1 MiB | 00m00s [ 16/108] cmake-filesystem-0:4.3.0-1.fc 100% | 299.8 KiB/s | 15.0 KiB | 00m00s [ 17/108] perl-Exporter-0:5.79-521.fc44 100% | 1.0 MiB/s | 30.8 KiB | 00m00s [ 18/108] perl-Pod-Usage-4:2.05-521.fc4 100% | 1.2 MiB/s | 40.7 KiB | 00m00s [ 19/108] perl-constant-0:1.33-522.fc44 100% | 763.3 KiB/s | 22.9 KiB | 00m00s [ 20/108] cpp-0:16.1.1-2.fc44.x86_64 100% | 101.9 MiB/s | 14.5 MiB | 00m00s [ 21/108] perl-Carp-0:1.54-521.fc44.noa 100% | 685.3 KiB/s | 28.8 KiB | 00m00s [ 22/108] perl-PathTools-0:3.94-521.fc4 100% | 2.8 MiB/s | 87.3 KiB | 00m00s [ 23/108] perl-podlators-1:6.0.2-521.fc 100% | 3.4 MiB/s | 128.5 KiB | 00m00s [ 24/108] perl-Pod-Perldoc-0:3.28.01-52 100% | 2.1 MiB/s | 86.1 KiB | 00m00s [ 25/108] perl-Scalar-List-Utils-5:1.70 100% | 2.5 MiB/s | 75.4 KiB | 00m00s [ 26/108] perl-Pod-Simple-1:3.47-4.fc44 100% | 6.9 MiB/s | 220.0 KiB | 00m00s [ 27/108] perl-File-Temp-1:0.231.200-2. 100% | 1.6 MiB/s | 59.6 KiB | 00m00s [ 28/108] perl-parent-1:0.244-521.fc44. 100% | 496.0 KiB/s | 14.9 KiB | 00m00s [ 29/108] perl-Term-ANSIColor-0:5.01-52 100% | 1.3 MiB/s | 47.7 KiB | 00m00s [ 30/108] groff-base-0:1.23.0-12.fc44.x 100% | 13.5 MiB/s | 1.1 MiB | 00m00s [ 31/108] perl-Term-Cap-0:1.18-521.fc44 100% | 709.6 KiB/s | 22.0 KiB | 00m00s [ 32/108] perl-File-Path-0:2.18-522.fc4 100% | 1.0 MiB/s | 35.3 KiB | 00m00s [ 33/108] perl-Pod-Escapes-1:1.07-521.f 100% | 599.7 KiB/s | 19.8 KiB | 00m00s [ 34/108] perl-File-Basename-0:2.86-525 100% | 1.1 MiB/s | 16.5 KiB | 00m00s [ 35/108] ncurses-0:6.6-1.fc44.x86_64 100% | 13.1 MiB/s | 429.8 KiB | 00m00s [ 36/108] perl-POSIX-0:2.23-525.fc44.x8 100% | 4.3 MiB/s | 96.3 KiB | 00m00s [ 37/108] perl-interpreter-4:5.42.3-525 100% | 4.7 MiB/s | 71.7 KiB | 00m00s [ 38/108] perl-Errno-0:1.38-525.fc44.x8 100% | 838.3 KiB/s | 14.3 KiB | 00m00s [ 39/108] perl-libs-4:5.42.3-525.fc44.x 100% | 71.5 MiB/s | 2.6 MiB | 00m00s [ 40/108] perl-Encode-4:3.21-521.fc44.x 100% | 31.9 MiB/s | 1.1 MiB | 00m00s [ 41/108] perl-vars-0:1.05-525.fc44.noa 100% | 877.9 KiB/s | 12.3 KiB | 00m00s [ 42/108] perl-MIME-Base64-0:3.16-521.f 100% | 875.6 KiB/s | 29.8 KiB | 00m00s [ 43/108] perl-Fcntl-0:1.20-525.fc44.x8 100% | 2.0 MiB/s | 29.1 KiB | 00m00s [ 44/108] perl-Storable-1:3.37-522.fc44 100% | 3.0 MiB/s | 100.9 KiB | 00m00s [ 45/108] perl-IO-0:1.55-525.fc44.x86_6 100% | 5.3 MiB/s | 81.5 KiB | 00m00s [ 46/108] perl-Symbol-0:1.09-525.fc44.n 100% | 965.2 KiB/s | 13.5 KiB | 00m00s [ 47/108] perl-if-0:0.61.000-525.fc44.n 100% | 950.3 KiB/s | 13.3 KiB | 00m00s [ 48/108] perl-overload-0:1.40-525.fc44 100% | 2.0 MiB/s | 44.9 KiB | 00m00s [ 49/108] perl-HTTP-Tiny-0:0.096-1.fc44 100% | 4.0 MiB/s | 57.8 KiB | 00m00s [ 50/108] perl-IO-Socket-SSL-0:2.098-2. 100% | 7.4 MiB/s | 234.7 KiB | 00m00s [ 51/108] perl-Time-HiRes-4:1.9778-521. 100% | 1.7 MiB/s | 57.2 KiB | 00m00s [ 52/108] perl-Time-Local-2:1.350-521.f 100% | 1.1 MiB/s | 34.5 KiB | 00m00s [ 53/108] perl-IPC-Open3-0:1.24-525.fc4 100% | 1.4 MiB/s | 23.2 KiB | 00m00s [ 54/108] perl-IO-Socket-IP-0:0.43-522. 100% | 1.3 MiB/s | 42.2 KiB | 00m00s [ 55/108] perl-Net-SSLeay-0:1.94-12.fc4 100% | 4.9 MiB/s | 373.4 KiB | 00m00s [ 56/108] perl-AutoLoader-0:5.74-525.fc 100% | 1.4 MiB/s | 20.5 KiB | 00m00s [ 57/108] perl-Socket-4:2.041-1.fc44.x8 100% | 3.6 MiB/s | 55.0 KiB | 00m00s [ 58/108] perl-URI-0:5.35-1.fc44.noarch 100% | 9.7 MiB/s | 148.9 KiB | 00m00s [ 59/108] perl-MIME-Base32-0:1.303-25.f 100% | 661.9 KiB/s | 20.5 KiB | 00m00s [ 60/108] perl-libnet-0:3.15-522.fc44.n 100% | 3.6 MiB/s | 128.4 KiB | 00m00s [ 61/108] perl-Digest-MD5-0:2.59-521.fc 100% | 1.1 MiB/s | 36.0 KiB | 00m00s [ 62/108] perl-base-0:2.27-525.fc44.noa 100% | 1.1 MiB/s | 15.5 KiB | 00m00s [ 63/108] perl-Getopt-Std-0:1.14-525.fc 100% | 1.0 MiB/s | 15.0 KiB | 00m00s [ 64/108] perl-Digest-0:1.20-521.fc44.n 100% | 801.9 KiB/s | 24.9 KiB | 00m00s [ 65/108] git-0:2.55.0-1.fc44.x86_64 100% | 2.7 MiB/s | 41.1 KiB | 00m00s [ 66/108] git-core-doc-0:2.55.0-1.fc44. 100% | 98.8 MiB/s | 3.2 MiB | 00m00s [ 67/108] perl-Git-0:2.55.0-1.fc44.noar 100% | 992.1 KiB/s | 37.7 KiB | 00m00s [ 68/108] git-core-0:2.55.0-1.fc44.x86_ 100% | 80.1 MiB/s | 5.4 MiB | 00m00s [ 69/108] expat-0:2.8.1-1.fc44.x86_64 100% | 7.0 MiB/s | 129.7 KiB | 00m00s [ 70/108] perl-TermReadKey-0:2.38-27.fc 100% | 1.1 MiB/s | 35.5 KiB | 00m00s [ 71/108] lld-0:22.1.8-4.fc44.x86_64 100% | 2.3 MiB/s | 35.0 KiB | 00m00s [ 72/108] llvm-filesystem-0:22.1.8-4.fc 100% | 715.3 KiB/s | 10.0 KiB | 00m00s [ 73/108] perl-Error-1:0.17030-3.fc44.n 100% | 1.3 MiB/s | 40.3 KiB | 00m00s [ 74/108] lld-libs-0:22.1.8-4.fc44.x86_ 100% | 70.7 MiB/s | 1.7 MiB | 00m00s [ 75/108] gc-devel-0:8.2.6-6.fc44.x86_6 100% | 3.5 MiB/s | 116.1 KiB | 00m00s [ 76/108] libevent-devel-0:2.1.12-17.fc 100% | 2.9 MiB/s | 100.0 KiB | 00m00s [ 77/108] pcre2-devel-0:10.47-1.fc44.1. 100% | 15.8 MiB/s | 550.9 KiB | 00m00s [ 78/108] pcre2-utf32-0:10.47-1.fc44.1. 100% | 7.6 MiB/s | 242.2 KiB | 00m00s [ 79/108] pcre2-utf16-0:10.47-1.fc44.1. 100% | 6.3 MiB/s | 256.3 KiB | 00m00s [ 80/108] perl-mro-0:1.29-525.fc44.x86_ 100% | 1.6 MiB/s | 29.1 KiB | 00m00s [ 81/108] perl-overloading-0:0.02-525.f 100% | 718.2 KiB/s | 12.2 KiB | 00m00s [ 82/108] perl-DynaLoader-0:1.57-525.fc 100% | 1.6 MiB/s | 25.3 KiB | 00m00s [ 83/108] perl-Data-Dumper-0:2.192-523. 100% | 2.5 MiB/s | 56.3 KiB | 00m00s [ 84/108] perl-locale-0:1.13-525.fc44.n 100% | 853.8 KiB/s | 12.8 KiB | 00m00s [ 85/108] perl-File-stat-0:1.14-525.fc4 100% | 1.1 MiB/s | 16.4 KiB | 00m00s [ 86/108] perl-SelectSaver-0:1.02-525.f 100% | 788.1 KiB/s | 11.0 KiB | 00m00s [ 87/108] perl-Class-Struct-0:0.68-525. 100% | 1.5 MiB/s | 21.4 KiB | 00m00s [ 88/108] libedit-0:3.1-59.20260512cvs. 100% | 7.2 MiB/s | 110.4 KiB | 00m00s [ 89/108] perl-B-0:1.89-525.fc44.x86_64 100% | 6.7 MiB/s | 177.1 KiB | 00m00s [ 90/108] less-0:704-4.fc44.x86_64 100% | 14.8 MiB/s | 227.8 KiB | 00m00s [ 91/108] openssh-0:10.2p1-14.fc44.x86_ 100% | 21.7 MiB/s | 356.3 KiB | 00m00s [ 92/108] openssh-clients-0:10.2p1-14.f 100% | 23.1 MiB/s | 779.1 KiB | 00m00s [ 93/108] perl-lib-0:0.65-525.fc44.x86_ 100% | 1.0 MiB/s | 14.2 KiB | 00m00s [ 94/108] glibc-devel-0:2.43-8.fc44.x86 100% | 33.5 MiB/s | 617.4 KiB | 00m00s [ 95/108] libatomic-0:16.1.1-2.fc44.x86 100% | 3.5 MiB/s | 50.2 KiB | 00m00s [ 96/108] libxcrypt-devel-0:4.5.2-3.fc4 100% | 1.0 MiB/s | 30.0 KiB | 00m00s [ 97/108] libmpc-0:1.4.1-1.fc44.x86_64 100% | 5.3 MiB/s | 75.5 KiB | 00m00s [ 98/108] perl-FileHandle-0:2.05-525.fc 100% | 1.0 MiB/s | 14.8 KiB | 00m00s [ 99/108] python3-0:3.14.7-1.fc44.x86_6 100% | 1.5 MiB/s | 29.0 KiB | 00m00s [100/108] llvm-libs-0:22.1.8-4.fc44.x86 100% | 97.9 MiB/s | 34.1 MiB | 00m00s [101/108] mpdecimal-0:4.0.1-3.fc44.x86_ 100% | 3.2 MiB/s | 99.1 KiB | 00m00s [102/108] tzdata-0:2026c-1.fc44.noarch 100% | 36.6 MiB/s | 711.7 KiB | 00m00s [103/108] kernel-headers-0:7.1.3-200.fc 100% | 58.1 MiB/s | 1.7 MiB | 00m00s [104/108] python3-libs-0:3.14.7-1.fc44. 100% | 101.4 MiB/s | 10.1 MiB | 00m00s [105/108] gcc-plugin-annobin-0:16.1.1-2 100% | 3.3 MiB/s | 53.6 KiB | 00m00s [106/108] annobin-plugin-gcc-0:13.14-1. 100% | 37.1 MiB/s | 684.4 KiB | 00m00s [107/108] python-pip-wheel-0:26.0.1-2.f 100% | 14.4 MiB/s | 1.1 MiB | 00m00s [108/108] annobin-docs-0:13.14-1.fc44.n 100% | 5.3 MiB/s | 86.7 KiB | 00m00s -------------------------------------------------------------------------------- [108/108] Total 100% | 98.4 MiB/s | 155.1 MiB | 00m02s Running transaction [ 1/110] Verify package files 100% | 208.0 B/s | 108.0 B | 00m01s >>> Running %pretrans scriptlet: crystal-0:1.21.0-1.fc44.x86_64 >>> Finished %pretrans scriptlet: crystal-0:1.21.0-1.fc44.x86_64 >>> [RPM] /var/lib/mock/fedora-44-x86_64-1787310998.564044/root/var/cache/dnf/https_download_copr_fedorainfracloud_org_results_zawertun_crystal_fedora_44_x86_64-5afd5b697877c6d5/packages/shards-0.20.0-4.fc44.x86_64.rpm: Header OpenPGP V4 RSA/SHA256 signature, key ID 152bcd1bc9b2f1e3: NOKEY [ 2/110] Prepare transaction 100% | 1.3 KiB/s | 108.0 B | 00m00s [ 3/110] Installing libmpc-0:1.4.1-1.f 100% | 166.4 MiB/s | 170.4 KiB | 00m00s [ 4/110] Installing libedit-0:3.1-59.2 100% | 244.1 MiB/s | 250.0 KiB | 00m00s [ 5/110] Installing expat-0:2.8.1-1.fc 100% | 24.8 MiB/s | 329.5 KiB | 00m00s [ 6/110] Installing gc-0:8.2.6-6.fc44. 100% | 246.4 MiB/s | 252.3 KiB | 00m00s [ 7/110] Installing gc-devel-0:8.2.6-6 100% | 196.0 MiB/s | 401.4 KiB | 00m00s [ 8/110] Installing cpp-0:16.1.1-2.fc4 100% | 375.7 MiB/s | 42.1 MiB | 00m00s [ 9/110] Installing annobin-docs-0:13. 100% | 49.1 MiB/s | 100.5 KiB | 00m00s [ 10/110] Installing kernel-headers-0:7 100% | 244.8 MiB/s | 7.1 MiB | 00m00s [ 11/110] Installing glibc-devel-0:2.43 100% | 216.7 MiB/s | 2.4 MiB | 00m00s [ 12/110] Installing libxcrypt-devel-0: 100% | 8.1 MiB/s | 33.3 KiB | 00m00s [ 13/110] Installing tzdata-0:2026c-1.f 100% | 60.2 MiB/s | 1.5 MiB | 00m00s [ 14/110] Installing python-pip-wheel-0 100% | 611.4 MiB/s | 1.2 MiB | 00m00s [ 15/110] Installing mpdecimal-0:4.0.1- 100% | 42.7 MiB/s | 218.6 KiB | 00m00s [ 16/110] Installing python3-libs-0:3.1 100% | 375.9 MiB/s | 44.4 MiB | 00m00s [ 17/110] Installing python3-0:3.14.7-1 100% | 2.5 MiB/s | 30.5 KiB | 00m00s [ 18/110] Installing libevent-devel-0:2 100% | 35.2 MiB/s | 432.3 KiB | 00m00s [ 19/110] Installing libatomic-0:16.1.1 100% | 0.0 B/s | 46.7 KiB | 00m00s [ 20/110] Installing openssh-0:10.2p1-1 100% | 102.4 MiB/s | 1.4 MiB | 00m00s [ 21/110] Installing openssh-clients-0: 100% | 128.1 MiB/s | 2.7 MiB | 00m00s [ 22/110] Installing less-0:704-4.fc44. 100% | 36.3 MiB/s | 483.2 KiB | 00m00s [ 23/110] Installing git-core-0:2.55.0- 100% | 400.1 MiB/s | 25.6 MiB | 00m00s [ 24/110] Installing git-core-doc-0:2.5 100% | 433.8 MiB/s | 19.1 MiB | 00m00s [ 25/110] Installing pcre2-utf32-0:10.4 100% | 304.7 MiB/s | 623.9 KiB | 00m00s [ 26/110] Installing pcre2-utf16-0:10.4 100% | 320.3 MiB/s | 656.1 KiB | 00m00s [ 27/110] Installing pcre2-devel-0:10.4 100% | 124.7 MiB/s | 2.1 MiB | 00m00s [ 28/110] Installing llvm-filesystem-0: 100% | 0.0 B/s | 1.1 KiB | 00m00s [ 29/110] Installing llvm-libs-0:22.1.8 100% | 492.8 MiB/s | 140.5 MiB | 00m00s [ 30/110] Installing lld-libs-0:22.1.8- 100% | 469.1 MiB/s | 6.1 MiB | 00m00s [ 31/110] Installing lld-0:22.1.8-4.fc4 100% | 2.5 MiB/s | 45.4 KiB | 00m00s [ 32/110] Installing ncurses-0:6.6-1.fc 100% | 31.8 MiB/s | 618.0 KiB | 00m00s [ 33/110] Installing groff-base-0:1.23. 100% | 134.3 MiB/s | 3.9 MiB | 00m00s [ 34/110] Installing perl-Digest-0:1.20 100% | 36.2 MiB/s | 37.1 KiB | 00m00s [ 35/110] Installing perl-FileHandle-0: 100% | 0.0 B/s | 9.8 KiB | 00m00s [ 36/110] Installing perl-B-0:1.89-525. 100% | 246.3 MiB/s | 504.4 KiB | 00m00s [ 37/110] Installing perl-Digest-MD5-0: 100% | 60.0 MiB/s | 61.5 KiB | 00m00s [ 38/110] Installing perl-libnet-0:3.15 100% | 287.8 MiB/s | 294.7 KiB | 00m00s [ 39/110] Installing perl-Data-Dumper-0 100% | 114.7 MiB/s | 117.4 KiB | 00m00s [ 40/110] Installing perl-MIME-Base32-0 100% | 31.4 MiB/s | 32.2 KiB | 00m00s [ 41/110] Installing perl-URI-0:5.35-1. 100% | 137.7 MiB/s | 282.0 KiB | 00m00s [ 42/110] Installing perl-IO-Socket-IP- 100% | 0.0 B/s | 102.2 KiB | 00m00s [ 43/110] Installing perl-AutoLoader-0: 100% | 0.0 B/s | 21.0 KiB | 00m00s [ 44/110] Installing perl-IO-Socket-SSL 100% | 355.3 MiB/s | 727.6 KiB | 00m00s [ 45/110] Installing perl-locale-0:1.13 100% | 0.0 B/s | 6.5 KiB | 00m00s [ 46/110] Installing perl-Net-SSLeay-0: 100% | 269.4 MiB/s | 1.3 MiB | 00m00s [ 47/110] Installing perl-Time-Local-2: 100% | 0.0 B/s | 70.6 KiB | 00m00s [ 48/110] Installing perl-Time-HiRes-4: 100% | 114.9 MiB/s | 117.7 KiB | 00m00s [ 49/110] Installing perl-if-0:0.61.000 100% | 0.0 B/s | 6.2 KiB | 00m00s [ 50/110] Installing perl-Pod-Escapes-1 100% | 0.0 B/s | 25.9 KiB | 00m00s [ 51/110] Installing perl-File-Path-0:2 100% | 0.0 B/s | 64.5 KiB | 00m00s [ 52/110] Installing perl-Text-Tabs+Wra 100% | 0.0 B/s | 23.9 KiB | 00m00s [ 53/110] Installing perl-HTTP-Tiny-0:0 100% | 160.6 MiB/s | 164.5 KiB | 00m00s [ 54/110] Installing perl-Class-Struct- 100% | 0.0 B/s | 25.9 KiB | 00m00s [ 55/110] Installing perl-IPC-Open3-0:1 100% | 0.0 B/s | 28.5 KiB | 00m00s [ 56/110] Installing perl-File-Temp-1:0 100% | 161.6 MiB/s | 165.5 KiB | 00m00s [ 57/110] Installing perl-POSIX-0:2.23- 100% | 225.2 MiB/s | 230.6 KiB | 00m00s [ 58/110] Installing perl-Pod-Simple-1: 100% | 280.7 MiB/s | 574.9 KiB | 00m00s [ 59/110] Installing perl-Term-Cap-0:1. 100% | 0.0 B/s | 30.6 KiB | 00m00s [ 60/110] Installing perl-Term-ANSIColo 100% | 96.9 MiB/s | 99.2 KiB | 00m00s [ 61/110] Installing perl-Pod-Perldoc-0 100% | 13.8 MiB/s | 169.2 KiB | 00m00s [ 62/110] Installing perl-podlators-1:6 100% | 26.2 MiB/s | 321.4 KiB | 00m00s [ 63/110] Installing perl-File-stat-0:1 100% | 0.0 B/s | 13.1 KiB | 00m00s [ 64/110] Installing perl-SelectSaver-0 100% | 0.0 B/s | 2.6 KiB | 00m00s [ 65/110] Installing perl-Socket-4:2.04 100% | 119.8 MiB/s | 122.7 KiB | 00m00s [ 66/110] Installing perl-Symbol-0:1.09 100% | 0.0 B/s | 7.3 KiB | 00m00s [ 67/110] Installing perl-Pod-Usage-4:2 100% | 7.8 MiB/s | 87.9 KiB | 00m00s [ 68/110] Installing perl-IO-0:1.55-525 100% | 148.0 MiB/s | 151.5 KiB | 00m00s [ 69/110] Installing perl-overloading-0 100% | 0.0 B/s | 5.6 KiB | 00m00s [ 70/110] Installing perl-mro-0:1.29-52 100% | 0.0 B/s | 42.5 KiB | 00m00s [ 71/110] Installing perl-base-0:2.27-5 100% | 0.0 B/s | 13.0 KiB | 00m00s [ 72/110] Installing perl-Fcntl-0:1.20- 100% | 0.0 B/s | 49.8 KiB | 00m00s [ 73/110] Installing perl-Text-ParseWor 100% | 0.0 B/s | 14.6 KiB | 00m00s [ 74/110] Installing perl-Getopt-Long-1 100% | 143.8 MiB/s | 147.2 KiB | 00m00s [ 75/110] Installing perl-Storable-1:3. 100% | 231.2 MiB/s | 236.7 KiB | 00m00s [ 76/110] Installing perl-overload-0:1. 100% | 0.0 B/s | 72.0 KiB | 00m00s [ 77/110] Installing perl-Getopt-Std-0: 100% | 0.0 B/s | 11.8 KiB | 00m00s [ 78/110] Installing perl-vars-0:1.05-5 100% | 0.0 B/s | 4.3 KiB | 00m00s [ 79/110] Installing perl-MIME-Base64-0 100% | 0.0 B/s | 44.2 KiB | 00m00s [ 80/110] Installing perl-Errno-0:1.38- 100% | 0.0 B/s | 8.8 KiB | 00m00s [ 81/110] Installing perl-File-Basename 100% | 0.0 B/s | 14.6 KiB | 00m00s [ 82/110] Installing perl-parent-1:0.24 100% | 0.0 B/s | 11.0 KiB | 00m00s [ 83/110] Installing perl-Scalar-List-U 100% | 145.0 MiB/s | 148.5 KiB | 00m00s [ 84/110] Installing perl-constant-0:1. 100% | 0.0 B/s | 27.4 KiB | 00m00s [ 85/110] Installing perl-Encode-4:3.21 100% | 223.5 MiB/s | 4.7 MiB | 00m00s [ 86/110] Installing perl-DynaLoader-0: 100% | 0.0 B/s | 32.5 KiB | 00m00s [ 87/110] Installing perl-PathTools-0:3 100% | 180.1 MiB/s | 184.4 KiB | 00m00s [ 88/110] Installing perl-Carp-0:1.54-5 100% | 0.0 B/s | 47.7 KiB | 00m00s [ 89/110] Installing perl-Exporter-0:5. 100% | 27.1 MiB/s | 55.6 KiB | 00m00s [ 90/110] Installing perl-libs-4:5.42.3 100% | 333.6 MiB/s | 11.7 MiB | 00m00s [ 91/110] Installing perl-interpreter-4 100% | 10.7 MiB/s | 120.5 KiB | 00m00s [ 92/110] Installing perl-TermReadKey-0 100% | 64.5 MiB/s | 66.1 KiB | 00m00s [ 93/110] Installing perl-Error-1:0.170 100% | 78.1 MiB/s | 80.0 KiB | 00m00s [ 94/110] Installing perl-lib-0:0.65-52 100% | 0.0 B/s | 8.9 KiB | 00m00s [ 95/110] Installing git-0:2.55.0-1.fc4 100% | 0.0 B/s | 59.0 KiB | 00m00s [ 96/110] Installing perl-Git-0:2.55.0- 100% | 0.0 B/s | 65.4 KiB | 00m00s [ 97/110] Installing cmake-filesystem-0 100% | 9.1 MiB/s | 9.4 KiB | 00m00s [ 98/110] Installing libyaml-0:0.2.5-18 100% | 136.6 MiB/s | 139.9 KiB | 00m00s [ 99/110] Installing make-1:4.4.1-12.fc 100% | 112.5 MiB/s | 1.8 MiB | 00m00s [100/110] Installing gcc-0:16.1.1-2.fc4 100% | 436.4 MiB/s | 120.9 MiB | 00m00s [101/110] Installing crystal-0:1.21.0-1 100% | 276.5 MiB/s | 24.9 MiB | 00m00s [102/110] Installing shards-0:0.20.0-4. 100% | 94.6 MiB/s | 1.3 MiB | 00m00s [103/110] Installing gcc-plugin-annobin 100% | 5.2 MiB/s | 58.6 KiB | 00m00s [104/110] Installing annobin-plugin-gcc 100% | 57.0 MiB/s | 701.0 KiB | 00m00s [105/110] Installing zlib-ng-compat-dev 100% | 106.0 MiB/s | 108.6 KiB | 00m00s [106/110] Installing help2man-0:1.49.3- 100% | 29.7 MiB/s | 425.4 KiB | 00m00s [107/110] Installing systemd-rpm-macros 100% | 1.2 MiB/s | 8.9 KiB | 00m00s [108/110] Installing openssl-devel-1:3. 100% | 76.8 MiB/s | 5.5 MiB | 00m00s [109/110] Installing lz4-devel-0:1.10.0 100% | 11.2 MiB/s | 103.2 KiB | 00m00s [110/110] Installing etcd-0:3.5.13-1.fc 100% | 207.5 MiB/s | 55.6 MiB | 00m00s Warning: skipped OpenPGP checks for 2 packages from repository: https_download_copr_fedorainfracloud_org_results_zawertun_crystal_fedora_44_x86_64 Complete! Building target platforms: x86_64 Building for target x86_64 setting SOURCE_DATE_EPOCH=1787270400 Wrote: /builddir/build/SRPMS/lavinmq-2.9.2-1.fc44.src.rpm Updating and loading repositories: updates 100% | 81.3 KiB/s | 22.9 KiB | 00m00s Additional repo https_download_copr_fe 100% | 36.2 KiB/s | 1.5 KiB | 00m00s fedora 100% | 138.9 KiB/s | 24.0 KiB | 00m00s Copr repository 100% | 35.9 KiB/s | 1.5 KiB | 00m00s Repositories loaded. Nothing to do. Package "crystal-1.21.0-1.fc44.x86_64" is already installed. Package "etcd-3.5.13-1.fc41.x86_64" is already installed. Package "forge-srpm-macros-0.4.0-4.fc44.noarch" is already installed. Package "gcc-16.1.1-2.fc44.x86_64" is already installed. Package "help2man-1.49.3-9.fc44.noarch" is already installed. Package "lz4-devel-1.10.0-4.fc44.x86_64" is already installed. Package "make-1:4.4.1-12.fc44.x86_64" is already installed. Package "openssl-devel-1:3.5.7-2.fc44.x86_64" is already installed. Package "shards-0.20.0-4.fc44.x86_64" is already installed. Package "systemd-rpm-macros-259.8-1.fc44.noarch" is already installed. Package "zlib-ng-compat-devel-2.3.3-3.fc44.x86_64" is already installed. Finish: build setup for lavinmq-2.9.2-1.fc44.src.rpm Start: rpmbuild lavinmq-2.9.2-1.fc44.src.rpm Building target platforms: x86_64 Building for target x86_64 setting SOURCE_DATE_EPOCH=1787270400 Executing(%mkbuilddir): /bin/sh -e /var/tmp/rpm-tmp.3xUdtU Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.gXOZdF + umask 022 + cd /builddir/build/BUILD/lavinmq-2.9.2-build + cd /builddir/build/BUILD/lavinmq-2.9.2-build + rm -rf lavinmq-2.9.2 + /usr/lib/rpm/rpmuncompress -x /builddir/build/SOURCES/lavinmq-2.9.2.tar.gz + STATUS=0 + '[' 0 -ne 0 ']' + cd lavinmq-2.9.2 + /usr/bin/chmod -Rf a+rX,u+w,g-w,o-w . Patch #0 (0001-lavinmq-makefile_fixes.patch): + echo 'Patch #0 (0001-lavinmq-makefile_fixes.patch):' + /usr/bin/patch --no-backup-if-mismatch -f -p1 --fuzz=0 patching file Makefile + mkdir -p static/js/lib/chunks + tar -zxOf /builddir/build/SOURCES/chart.js-4.0.1.tgz package/dist/chart.js + tar -zxOf /builddir/build/SOURCES/chart.js-4.0.1.tgz package/dist/chunks/helpers.segment.js + cp /builddir/build/SOURCES/chartjs-adapter-luxon.esm.js static/js/lib/chartjs-adapter-luxon.esm.js + patch -p0 static/js/lib/chartjs-adapter-luxon.esm.js patching file static/js/lib/chartjs-adapter-luxon.esm.js + cp /builddir/build/SOURCES/luxon.mjs static/js/lib/luxon.js + cp /builddir/build/SOURCES/styles.min.css static/js/lib/elements-8.2.0.css + cp /builddir/build/SOURCES/web-components.min.js static/js/lib/elements-8.2.0.js + RPM_EC=0 ++ jobs -p + exit 0 Executing(%build): /bin/sh -e /var/tmp/rpm-tmp.mCX36W + umask 022 + cd /builddir/build/BUILD/lavinmq-2.9.2-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 lavinmq-2.9.2 + /usr/bin/make -O -j4 V=1 VERBOSE=1 views/render.sh views/404.shtml "2.9.2" > static/404.html views/render.sh views/401.shtml "2.9.2" > static/401.html views/render.sh views/channels.shtml "2.9.2" > static/channels.html views/render.sh views/channel.shtml "2.9.2" > static/channel.html views/render.sh views/connection.shtml "2.9.2" > static/connection.html views/render.sh views/consumers.shtml "2.9.2" > static/consumers.html views/render.sh views/connections.shtml "2.9.2" > static/connections.html views/render.sh views/exchange.shtml "2.9.2" > static/exchange.html views/render.sh views/exchanges.shtml "2.9.2" > static/exchanges.html views/render.sh views/login.shtml "2.9.2" > static/login.html views/render.sh views/federation.shtml "2.9.2" > static/federation.html views/render.sh views/logs.shtml "2.9.2" > static/logs.html views/render.sh views/nodes.shtml "2.9.2" > static/nodes.html views/render.sh views/operator-policies.shtml "2.9.2" > static/operator-policies.html views/render.sh views/overview.shtml "2.9.2" > static/overview.html views/render.sh views/policies.shtml "2.9.2" > static/policies.html views/render.sh views/shovels.shtml "2.9.2" > static/shovels.html views/render.sh views/queue.shtml "2.9.2" > static/queue.html views/render.sh views/queues.shtml "2.9.2" > static/queues.html views/render.sh views/unacked.shtml "2.9.2" > static/unacked.html views/render.sh views/stream.shtml "2.9.2" > static/stream.html views/render.sh views/users.shtml "2.9.2" > static/users.html views/render.sh views/user.shtml "2.9.2" > static/user.html mkdir -p bin views/render.sh views/vhost.shtml "2.9.2" > static/vhost.html views/render.sh views/vhosts.shtml "2.9.2" > static/vhosts.html shards install --production I: Resolving dependencies I: Fetching https://github.com/cloudamqp/amqp-client.cr.git I: Fetching https://github.com/cloudamqp/amq-protocol.cr.git I: Fetching https://github.com/84codes/systemd.cr.git I: Fetching https://github.com/84codes/lz4.cr.git I: Fetching https://github.com/84codes/mqtt-protocol.cr.git W: Shard "mqtt-protocol" version (0.2.0) doesn't match tag version (0.3.0) I: Installing amq-protocol (1.3.1) I: Installing amqp-client (1.3.3) I: Installing systemd (3.0.1) I: Installing lz4 (1.0.0 at 0015e74) I: Installing mqtt-protocol (0.3.0) crystal build src/lavinmqctl.cr -o bin/lavinmqctl -Dgc_none --release --stats --link-flags="-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 " Parse: 00:00:00.000034157 ( 1.16MB) Semantic (top level): 00:00:00.544588158 ( 146.32MB) Semantic (new): 00:00:00.002136253 ( 146.32MB) Semantic (type declarations): 00:00:00.053719120 ( 146.32MB) Semantic (abstract def check): 00:00:00.015530077 ( 146.32MB) Semantic (restrictions augmenter): 00:00:00.013540880 ( 146.32MB) Semantic (ivars initializers): 00:00:00.020973876 ( 162.32MB) Semantic (cvars initializers): 00:00:00.292811916 ( 194.38MB) Semantic (main): 00:00:00.845210200 ( 290.50MB) Semantic (cleanup): 00:00:00.001130260 ( 290.50MB) Semantic (recursive struct check): 00:00:00.001520611 ( 290.50MB) Codegen (crystal): 00:00:00.635390797 ( 322.50MB) Codegen (bc+obj): 00:00:25.224905301 ( 322.50MB) Codegen (linking): 00:00:00.255483135 ( 322.50MB) Codegen (bc+obj): - no previous .o files were reused crystal build src/lavinmqperf.cr -o bin/lavinmqperf --release --stats --link-flags="-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 " Parse: 00:00:00.000164733 ( 1.16MB) Semantic (top level): 00:00:00.639711060 ( 145.68MB) Semantic (new): 00:00:00.003476245 ( 145.68MB) Semantic (type declarations): 00:00:00.052866208 ( 145.68MB) Semantic (abstract def check): 00:00:00.017276955 ( 161.68MB) Semantic (restrictions augmenter): 00:00:00.016493466 ( 161.68MB) Semantic (ivars initializers): 00:00:00.319603975 ( 193.74MB) Semantic (cvars initializers): 00:00:00.012119520 ( 193.74MB) Semantic (main): 00:00:01.016138445 ( 337.87MB) Semantic (cleanup): 00:00:00.000860923 ( 337.87MB) Semantic (recursive struct check): 00:00:00.001857336 ( 337.87MB) Codegen (crystal): 00:00:01.290557953 ( 386.12MB) Codegen (bc+obj): 00:00:33.222605721 ( 386.12MB) Codegen (linking): 00:00:00.283219165 ( 386.12MB) Codegen (bc+obj): - no previous .o files were reused crystal build src/lavinmq.cr -o bin/lavinmq --release --stats --link-flags="-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 " Parse: 00:00:00.000089530 ( 1.16MB) Semantic (top level): 00:00:06.868939413 ( 418.29MB) Semantic (new): 00:00:00.005407374 ( 418.29MB) Semantic (type declarations): 00:00:00.057606455 ( 418.29MB) Semantic (abstract def check): 00:00:00.020785529 ( 418.29MB) Semantic (restrictions augmenter): 00:00:00.015946571 ( 418.29MB) Semantic (ivars initializers): 00:00:00.120860141 ( 450.29MB) Semantic (cvars initializers): 00:00:00.044555396 ( 482.29MB) Semantic (main): 00:00:08.767094382 ( 963.16MB) Semantic (cleanup): 00:00:00.002236568 ( 963.16MB) Semantic (recursive struct check): 00:00:00.002542159 ( 963.16MB) Codegen (crystal): 00:00:03.030715065 (1124.16MB) Codegen (bc+obj): 00:01:26.997248777 (1124.16MB) Codegen (linking): 00:00:00.546537117 (1124.16MB) Macro runs: - /builddir/build/BUILD/lavinmq-2.9.2-build/lavinmq-2.9.2/src/lavinmq/http/controller/static/bake.cr: 00:00:05.615004856 - /usr/share/crystal/src/ecr/process.cr: 00:00:05.058680939 Codegen (bc+obj): - no previous .o files were reused + RPM_EC=0 ++ jobs -p + exit 0 Executing(%install): /bin/sh -e /var/tmp/rpm-tmp.vtt4zs + umask 022 + cd /builddir/build/BUILD/lavinmq-2.9.2-build + '[' /builddir/build/BUILD/lavinmq-2.9.2-build/BUILDROOT '!=' / ']' + rm -rf /builddir/build/BUILD/lavinmq-2.9.2-build/BUILDROOT ++ dirname /builddir/build/BUILD/lavinmq-2.9.2-build/BUILDROOT + mkdir -p /builddir/build/BUILD/lavinmq-2.9.2-build + mkdir /builddir/build/BUILD/lavinmq-2.9.2-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 lavinmq-2.9.2 + /usr/bin/make install DESTDIR=/builddir/build/BUILD/lavinmq-2.9.2-build/BUILDROOT 'INSTALL=/usr/bin/install -p' UNITDIR=/usr/lib/systemd/system SYSUSERSDIR=/usr/lib/sysusers.d mkdir -p man1 help2man -Nn "fast and advanced message queue server" bin/lavinmq -o man1/lavinmq.1 help2man -Nn "control utility for lavinmq server" bin/lavinmqctl -o man1/lavinmqctl.1 help2man -Nn "performance testing tool for amqp servers" bin/lavinmqperf -o man1/lavinmqperf.1 install -D -m 0755 -t /builddir/build/BUILD/lavinmq-2.9.2-build/BUILDROOT/usr/bin bin/lavinmq bin/lavinmqctl bin/lavinmqperf install -D -m 0644 -t /builddir/build/BUILD/lavinmq-2.9.2-build/BUILDROOT/usr/share/man/man1 man1/lavinmq.1 man1/lavinmqctl.1 man1/lavinmqperf.1 install -D -m 0644 extras/lavinmq.ini /builddir/build/BUILD/lavinmq-2.9.2-build/BUILDROOT/etc/lavinmq/lavinmq.ini install -D -m 0644 extras/lavinmq.service /builddir/build/BUILD/lavinmq-2.9.2-build/BUILDROOT/usr/lib/systemd/system/lavinmq.service install -D -m 0644 extras/lavinmq.sysusers /builddir/build/BUILD/lavinmq-2.9.2-build/BUILDROOT/usr/lib/sysusers.d/lavinmq.conf install -d -m 0750 /builddir/build/BUILD/lavinmq-2.9.2-build/BUILDROOT/var/lib/lavinmq + install -Dpm 0644 /builddir/build/SOURCES/lavinmq-user.service /builddir/build/BUILD/lavinmq-2.9.2-build/BUILDROOT/usr/lib/systemd/user/lavinmq.service + install -d -m 0750 /builddir/build/BUILD/lavinmq-2.9.2-build/BUILDROOT/var/lib/lavinmq + /usr/bin/find-debuginfo -j4 --strict-build-id -m -i --build-id-seed 2.9.2-1.fc44 --unique-debug-suffix -2.9.2-1.fc44.x86_64 --unique-debug-src-base lavinmq-2.9.2-1.fc44.x86_64 --run-dwz --dwz-low-mem-die-limit 10000000 --dwz-max-die-limit 110000000 --remove-section .gnu.build.attributes -S debugsourcefiles.list /builddir/build/BUILD/lavinmq-2.9.2-build/lavinmq-2.9.2 find-debuginfo: starting Extracting debug info from 3 files DWARF-compressing 3 files sepdebugcrcfix: Updated 3 CRC32s, 0 CRC32s did match. Creating .debug symlinks for symlinks to ELF files Copying sources found by 'debugedit -l' to /usr/src/debug/lavinmq-2.9.2-1.fc44.x86_64 find-debuginfo: done + /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/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 + /usr/lib/rpm/redhat/brp-python-hardlink + /usr/bin/add-det --brp -j4 /builddir/build/BUILD/lavinmq-2.9.2-build/BUILDROOT Scanned 70 directories and 247 files, processed 3 inodes, 0 modified (0 replaced + 0 rewritten), 0 unsupported format, 0 errors + /usr/bin/linkdupes --brp /builddir/build/BUILD/lavinmq-2.9.2-build/BUILDROOT/usr Scanned 64 directories and 246 files, considered 246 files, read 8 files, linked 0 files, 0 errors sum of sizes of linked files: 0 bytes Reading /builddir/build/BUILD/lavinmq-2.9.2-build/SPECPARTS/rpm-debuginfo.specpart Executing(%check): /bin/sh -e /var/tmp/rpm-tmp.yBpVA2 + umask 022 + cd /builddir/build/BUILD/lavinmq-2.9.2-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 lavinmq-2.9.2 + unset NOTIFY_SOCKET + rm -f spec/clustering_spec.cr spec/launcher_bind_spec.cr + make test crystal spec --order random --verbose Randomized with seed: 62911 LavinMQ::AMQP::Stream GIS filtering should reject messages without geo coordinates should raise error for invalid GIS filter parameters should combine GIS and standard filters with ALL logic should filter messages by radius should handle multiple GIS filters with ALL logic should filter messages by polygon should filter messages by bounding box should combine GIS and standard filters with ANY logic LavinMQ::HTTP::UsersController GET /api/users/name should return user PUT /api/users/name should handle unexpected input should return 400 when password_hash is a non-string type should return 400 for an empty hashing_algorithm should return 400 for an unsupported hashing_algorithm should return 400 when password_hash is null should create user with uniq tags should handle request with empty body should handle invalid JSON should update user with uniq tags should create user with empty password_hash should expose null hashing_algorithm for passwordless user should update user should not create user if disk is full should create user with password should create user with password_hash POST /api/users/bulk-delete should delete users in bulk should handle invalid JSON should handle unexpected input should handle request with empty body PUT /api/auth/hash_password should return hashed password GET /api/users should return all users should refuse non administrators GET /api/users/without-permissions should return users without access to any vhost GET /api/users/user/permissions should return permissions for user LavinMQ::HTTP::PermissionsController DELETE /api/permissions/vhost/user should delete permission for a user and vhost GET /api/permissions should refuse non administrators should return all permissions PUT /api/permissions/vhost/user should handle request with empty body should update permission for a user and vhost should handle invalid JSON should create permission for a user and vhost should handle unexpected input GET /api/permissions/vhost/user should return all permissions for a user and vhost LavinMQ::AMQP::DirectExchange doesn't grow bindings storage when routing unbound routing keys returns false when unbinding a never-bound routing key matches exact rk LavinMQ::Server UNIX Sockets can accept UNIX socket connections LavinMQ::AMQP::HeadersExchange should handle multiple bindings match empty should match if both args and headers are empty unbind shouldn't care about argument order shouldn't care about argument order with many bindings should handle unbind x-match default uses x-match from exchange arguments as default defaults to all when binding has no x-match binding x-match overrides exchange argument default match all should not match if not all args are the same should match if same args should not match if args are missing matches any non-empty headers but not empty headers when args only have x- keys match any should match if any args are the same should not match if no args are the same should match nestled amq-protocol tables should handle all Field types returns false when unbinding never-bound arguments bind shouldn't care about argument order with many bindings shouldn't care about argument order LavinMQ::Config #oauth_mgmt_ui_enabled? returns true for http://[::1]:15672 returns true for http://localhost:15672 returns true for https://mq.example.com returns false for http://127.0.0.1.evil.com/ returns false when oauth_issuer_url is missing returns false for http://localhostfoo returns false when oauth_client_id is missing returns false for http://example.com returns true for http://127.0.0.1:15672 returns false for http://localhost.evil.com/ OAuth configuration parsing parses preferred_username_claims as comma-separated list parses verify_aud as boolean parses additional_scopes_keys parses multiple comma-separated additional_scopes_keys parses scope_prefix parses resource_server_id parses mgmt_scopes parses audience parses oauth section from config with issuer_url parses jwks_cache_ttl as seconds OAuth configuration validation sets default oauth_resource_server_id to nil sets default oauth_scope_prefix to nil sets default oauth_additional_scopes_keys to empty array sets default oauth_audience to nil sets default oauth_mgmt_scopes to "openid profile" sets default oauth_verify_aud to true sets default oauth_preferred_username_claims to sub and client_id sets default oauth_jwks_cache_ttl to 1 hour LavinMQ::HTTP::ExchangesController GET /api/exchanges/vhost/name with x-hash-on argument should include x-hash-on in effective_arguments for consistent hash exchange should not include x-hash-on in effective_arguments when not set GET /api/exchanges/vhost should return all exchanges for a vhost GET /api/exchanges/vhost/name/bindings/destination should list bindings DELETE /api/exchanges/vhost/name should delete exchange should delete internal exchange should not delete exchange if in use as source when query param if-unused is set should not delete exchange if in use as destination when query param if-unused is set should not delete a default exchange (amq.#) GET /api/exchanges/vhost/name should return 404 if exchange does not exist should return exchange PUT /api/exchanges/vhost/name should require type should require durable to be the same when overwriting should require a known type should require arguments if the type demands it should not be possible to declare amq. prefixed exchanges should require config access to declare should handle unexpected input should redeclare identical delayed_message_exchange should create exchange should handle invalid JSON GET /api/exchanges/vhost/name/bindings/source should list bindings POST /api/exchanges/vhost/name/publish should publish should handle base64 encoding should require all args should require expiration to be a non-negative number should return routed:false instead of 500 when queue rejects on overflow delivers to non-overflowing queues even when one bound queue rejects should require expiration to be a number should handle string encoding GET /api/exchanges should return all exchanges connect [MQTT-3.1.4-1] receives connack with expected flags set session present when reconnecting a non-clean session [MQTT-3.1.2-4] no session present when reconnecting a clean session with a non-clean session [MQTT-3.1.2-6] no session present when reconnecting a clean session [MQTT-3.1.2-6] no session present when reconnecting a non-clean session with a clean session [MQTT-3.1.2-6] with expected return code accepts zero byte client_id but is assigned a unique client_id [MQTT-3.1.3-6] accepts zero-byte ClientId with CleanSession set to 1 [MQTT-3.1.3-7] for valid credentials [MQTT-3.1.4-4] client_id must be the first field of the connect packet [MQTT-3.1.3-3] for invalid protocol version [MQTT-3.1.2-2] for password flag set without username flag set [MQTT-3.1.2-22] for empty client id with non-clean session [MQTT-3.1.3-8] tcp socket is closed [MQTT-3.1.4-1] should not publish after disconnect for a second CONNECT packet [MQTT-3.1.0-2] for invalid protocol name [MQTT-3.1.2-1] for invalid client id [MQTT-3.1.3-4]. for reserved bit set [MQTT-3.1.2-3] if first packet is not a CONNECT [MQTT-3.1.0-1] when client already connected should replace the already connected client [MQTT-3.1.4-2] #full_sync should send file list relaxes the write timeout during full_sync and restores it for ack_loop LavinMQ::MessageStore::PublishOrderedRequeuedStore #size should decrease after shift should be 0 after clear should return the number of items in the store should return 0 when empty #insert should maintain sorted order by segment position should handle multiple segments #shift? should return nil when empty should return and remove first element #clear should empty the store #first? should return first element without removing should return nil when empty retain_store retain adds to index and writes msg file empty body deletes subscribing to topic with retained message does not crash each can be called multiple times calls block with correct arguments handles multiple subscriptions survives a restart restore_index restores the index from a file ProxyProtocol v2 can write header for TCPv4 addresses can handle invalid data can parse valid data trusted sources raises when every entry is invalid instead of collapsing to trust-all parses IPv4 CIDR notation handles whitespace correctly parses IPv6 CIDR notation returns empty array for empty config parses mixed IPs and CIDR notation raises on an invalid entry mixed with valid ones fails loudly on an invalid entry (does not collapse to trust-all) matches an IPv4 trusted source for an IPv4-mapped IPv6 peer (dual-stack) parses individual IPv4 addresses auto-detection auto-detects V2 protocol detects a V1 header split across TCP segments times out on the initial peek when the peer sends nothing returns nil for HTTP request auto-detects V1 protocol returns nil for MQTT protocol header detects a V2 header split across TCP segments returns nil for AMQP protocol header v1 can parse valid data can write a header for TCP4 addresses can handle invalid data can write a header for TCPv6 addresses LavinMQ::AMQP::ArgumentValidator::DeadLetteringValidator #validate! accepts empty string routing key when dlx is set accepts routing key when dlx is empty string rejects routing key when dlx is not set rejects boolean routing key accepts valid string routing key when dlx is set rejects integer routing key when dlx is not set rejects non-string routing key allows nil values when dlx is set handles non-string dlx value gracefully MQTT OAuth token expiration disconnects client when token expires does not disconnect client when token is still valid LavinMQ::VHost should remove policy from resource when deleted should be able to list policies should remove effect of deleted policy should apply classic_queues policy only to non-stream queues should overwrite policy with same name should apply quorum_queues policy to non-stream queues should remove head if queue to large should apply policy should update queue expiration should apply max-length-bytes on existing queue should not enqueue messages that make the queue to large should drop messages if above delivery-limit with max-length-bytes policy applied should replace with max-length should be able to add policy operator policies merges with normal polices effective_policy_definition should not include unsupported policies should apply queue TTL policy on existing queue should respect priority should apply streams policy only to stream queues should apply message TTL policy on existing queue together with arguments should use the lowest value should use the lowest value for delivery-limit arguments should have priority for non numeric arguments handling invalid policy values should ignore invalid type for delivery-limit should ignore invalid type for expires should ignore invalid type for max-length-bytes should ignore invalid type for overflow should ignore invalid type for max-length and apply valid values should ignore invalid type for message-ttl should ignore invalid type for dead-letter-exchange should apply all valid values when mixed with invalid types should ignore invalid type for dead-letter-routing-key RingConsistentHasher(T) Hasher should be consistent after delete should be consistent (test 2) should return first value is ring size is 1 should return nil if empty should be consistent (test 1) LavinMQCtl with http server should set vhost limits should hash password should list connections should list vhosts in JSON format should fail when creating user with missing password should set permissions should pause and resume queue should list connections in JSON format should list vhosts should fail when setting policy with invalid JSON should purge queue should create exchange with durable flag should list users should set user tags should list exchanges should show status in JSON format should list exchanges in JSON format should trigger garbage collection and print stats should fail when deleting non-existent queue should list queues should show status should add and delete vhost should create and delete exchange should fail when setting vhost limits with invalid JSON should create durable queue should create and delete queue should list policies for vhost should list queues in JSON format should fail when deleting non-existent user should add and delete user should fail when creating exchange without type should change user password should set and clear policy should show cluster status should list users in JSON format should export definitions should handle connection errors gracefully should fail when purging non-existent queue LavinMQ::QueueFactory without x-queue-type should create a durable queue should create a non_durable queue with x-queue-type=stream should reject invalid x-max-age should create a stream queue should reject if auto-delete should reject if exclusive should reject x-max-priority argument amqp argument x-max-length is rejected when '-10' is accepted when '0' is rejected when '-1' is rejected when 'str' is rejected when 'true' is accepted when '10' x-deduplication-header is accepted when 'str' is rejected when 'true' is rejected when '-10' is accepted when '' is rejected when '1' x-dead-letter-routing-key is rejected when 'true' is rejected when '1' is rejected when '-10' x-dead-letter-routing-key is rejected if x-dead-letter-exchange is missing x-expires is rejected when '0' is rejected when '-1' is rejected when 'true' is rejected when 'str' is accepted when '1' is accepted when '10' x-dead-letter-exchange is rejected when '-10' is accepted when 'str' is rejected when 'true' is rejected when '1' is accepted when '' x-cache-size is accepted when '0' is rejected when 'str' is accepted when '10' is rejected when 'true' is rejected when '-10' is rejected when '-1' x-overflow is rejected when 'true' is accepted when '' is accepted when 'str' is rejected when '1' is rejected when '-10' x-cache-ttl is accepted when '0' is rejected when 'true' is rejected when '-1' is accepted when '10' is rejected when 'str' is rejected when '-10' x-consumer-timeout is rejected when 'true' is rejected when '-1' is accepted when '0' is accepted when '10' is rejected when 'str' is rejected when '-10' x-delivery-limit is rejected when '-10' is accepted when '0' is rejected when 'str' is accepted when '10' is rejected when 'true' is rejected when '-1' x-message-ttl is rejected when 'str' is rejected when '-10' is rejected when '-1' is accepted when '0' is rejected when 'true' is accepted when '10' x-max-length-bytes is accepted when '0' is accepted when '10' is rejected when 'str' is rejected when 'true' is rejected when '-1' is rejected when '-10' with x-max-priority should create a durable queue should create a non_durable priority queue should reject x-max-priority < 0 should reject x-max-priority > 255 LavinMQ::Auth::UserStore #delete should invalidate existing permission caches on delete should clear permissions cache when deleting a user should not clear cache when deleting non-existent user LavinMQ::SNIHost creates TLS contexts with default settings creates separate TLS contexts with protocol-specific overrides creates TLS contexts with mTLS settings LavinMQ::BindingKey #hash returns same value for same arguments with different orders #properties_key returns '~' if no routing key but arguments returns '' if no arguments are provided returns same hash for same arguments with different orders returns ~ for empty routing key and no arguments returns '~' for routing key and arguments LavinMQ::AMQP::PriorityQueue should only accept int32 as priority after restart can restore the priority queue should prioritize messages should set redelivered to true for a requeued message should only accept priority >= 0 should only accept priority <= 255 PriorityMessageStore migration should migrate old store should use sub stores #shift? returns nil if store is empty returns the first message with the highest priority clustering is replicated correctly can replicate migration #bytesize is increased on push is decreased on shift? #first? returns nil if store is empty #first? returns the first message with the highest priority #size is increased on push is decreased on shift? #push should publish to the right sub store should treat to high priority as max_priority empty? should be true for a fresh store should be false after push should be true after all messages has been shifted #requeue reqeueus to the right sub store #empty should be false after requeue should be true after purge_all should be true for a new store should be false after push to an empty store should be true after all messages has been shifted should be true after last message has been purged should be false on after a push to a new store should not set redelivered to true for a non-requeued message should prioritize messages as 0 if no prio is set stream queue policy/publish concurrency applies a stream policy concurrently with publishing without corrupting the store LavinMQ::HTTP::ConnectionsController GET /api/vhosts/vhost/connections should return 403 if vhosts does not exist should return network connections for vhost GET /api/connections should show all connections for monitoring should return network connections should only show own connections for policymaker GET /api/connections/name should return connection should return 403 if user doesn't have access should return 404 if connection does not exist DELETE /api/connections/username/:username deletes connections for a specific user GET /api/connections/name/channels should return channels for a connection GET /api/connections/username/:username returns connections for a specific user LavinMQ::AMQP::Queue Should expire message after consuming non-expiring message Restarting queues should expire queue after restarting a queue should restart a closed queue should restart after corrupt data closes the queue should expire msgs after restarting a queue should clear exclusive consumer flag after restart should reapply policies after restart should not restart if queue is still running unacked_bytesize should count bytes for all unacked messages Should expire short-TTL message after consuming long-TTL message Flow should stop queues from being declared when disk is full Should not dead letter messages to itself due to queue length should delete left over transient queue data on Server start Should dead letter messages to itself only if rejected should delete transient queues on Server stop should expire itself after last consumer disconnects Exclusive queue cleanup drops the queue from Client#exclusive_queues when expired via x-expires drops the queue from Client#exclusive_queues when auto-deleted server-side still cleans up exclusive queues on connection close when many are open should not expire message before server is fully started deduplication should not accept message if it's a duplicate Idle fiber management should start fiber when TTL message published and expire it should not start message_expire_loop for empty queue should start fiber when a partial purge exposes a TTL message behind a no-TTL head should not start message_expire_loop for queue with no TTL messages should not start expire fiber while consumers are active should start fiber when message with per-message TTL is published PolicyTarget #apply_policy should replace policy should apply policy #clear_policy should clear policy MessageStore should not raise NotFoundError if segment is gone when deleting should not ack 'empty' msg if mfile.size is too big reports no message instead of erroring when its queue is deleted during a get should not create ack files when cleaning up segments reports a publish as Ok when the store is closed after the message is stored should remove unused segments after being consumed drops a publish when the store is closed concurrently should yield fiber while purging Purge should purge only X messages from queue should purge the queue should keep track of unacked basic_get messages should keep track of unacked delivered messages should delete queue with auto_delete when the last consumer disconnects effective arguments should contain x-single-active-consumer when args is {"x-single-active-consumer": true} should contain x-message-deduplication, x-cache-ttl when args is {"x-message-deduplication": true, "x-cache-ttl": 800} should be x-max-length with args {"x-message-ttl": 100, "x-max-length": 10} and policy {"message-ttl": 50, "x-max-length": 100} should contain x-max-length when args is {"x-max-length": 200} should contain x-expires when args is {"x-expires": 100} should not contain x-overflow when args is {"x-overflow": "reject-ack"} should contain x-message-deduplication, x-cache-size when args is {"x-message-deduplication": true, "x-cache-size": 700} should contain x-message-ttl when args is {"x-message-ttl": 400} should contain x-dead-letter-exchange, x-dead-letter-routing-key when args is {"x-dead-letter-exchange": "dlx", "x-dead-letter-routing-key": "dlrk"} should contain x-max-length-bytes when args is {"x-max-length-bytes": 300} should contain x-overflow when args is {"x-overflow": "reject-publish"} should contain x-consumer-timeout when args is {"x-consumer-timeout": 600} should contain x-message-deduplication, x-deduplication-header when args is {"x-message-deduplication": true, "x-deduplication-header": "foo"} should be with args {"x-message-ttl": 100} and policy {"message-ttl": 50} should be x-message-ttl with args {"x-message-ttl": 10} and policy {"message-ttl": 50} should contain x-delivery-limit when args is {"x-delivery-limit": 500} should contain x-overflow when args is {"x-overflow": "drop-head"} should not contain x-overflow when args is {"x-overflow": "drop-arm"} Paused should pause the queue by setting it in flow (get) should be able to get messages from paused queue with force flag should pause the queue by setting it in flow (consume) should handle '.paused' files and rename to 'paused' should be able to declare queue as paused Close should cancel consumer should delete transient queues segments on creation Should dead letter expired messages LavinMQ::Launcher config reload serves the configured SNI certificate, and a rotated one after reload warns that enabling TLS requires a restart warns that disabling TLS requires a restart serves a per-host certificate for an SNI host added on reload #request_flush pushes buffered bytes to the follower without waiting for the ack-loop fallback flush LavinMQ::Auth::OAuthAuthenticator #authenticate returns nil for non-JWT password returns nil for JWT with exp as zero returns nil for expired JWT token returns nil for JWT with exp as string returns nil for malformed JWT token returns nil for JWT with invalid structure returns nil for JWT with negative exp returns nil for JWT with empty header part returns nil for JWT with whitespace returns nil for JWT with non-RS256 algorithm returns nil for JWT with 4 parts returns nil for empty password returns nil for JWT token without exp claim returns nil for JWT with invalid JSON in header session handling messages are delivered to client that connects to a existing session LavinMQ::HTTP::StatsHelpers should add equal size arrays should add empty b should add b shorter than a should add b shorter than a should add empty a LavinMQ::AMQP::ArgumentValidator::IntValidator #validate! allows nil values rejects value below min when both min and max set accepts value within min and max range accepts value equal to minimum rejects boolean values accepts value below maximum rejects value below minimum accepts value above minimum rejects value above max when both min and max set accepts value equal to maximum rejects value above maximum accepts valid integer rejects non-integer values extract_conn_info during full_sync with syncing_followers should reject PROXY protocol when no followers are syncing or synced should handle PROXY protocol from syncing followers during full_sync should handle PROXY protocol after follower has fully synced LavinMQ::HTTP::AuthHandler a request already authenticated by a previous handler authenticates as the user named by valid explicit credentials is rejected when explicit credentials are invalid stays authenticated when no credentials are sent stays authenticated when the OAuth identity cookie username contains a colon stays authenticated when only the passwordless OAuth identity cookie is sent authenticates via the Authorization header when the passwordless OAuth identity cookie accompanies it CC and BCC CC header should be preserved BCC header should be removed on delivery LavinMQ::Auth::Chain OauthUser token_lifetime returns negative duration for expired token on_expiration does not call block before expiration calls the block when token expires token_lifetime returns positive duration for non-expired token successfully authenticates and returns a local user does not authenticate when given invalid credentials requires loopback if Config.#default_user_only_loopback? is true auth chaining fallback behavior tries local first, then oauth when both configured returns nil when all backends in chain fail creates a default authentication chain if not configured permissions_details returns correct permission details for local user returns correct permission details for OAuth user auth backend configuration creates only oauth authenticator when backends is ['oauth'] raises error when invalid backend is mixed with valid ones creates only local authenticator when backends is ['local'] raises error for unsupported backend creates both authenticators when backends is ['local', 'oauth'] creates authenticators in specified order ['oauth', 'local'] LavinMQ::Pidfile #acquire fails when pidfile is locked by another process removes pidfile on graceful shutdown fails when pidfile contains running process replaces stale pidfile creates pidfile with current PID fails when pidfile contains invalid data returns false for empty path LavinMQ::SchemaVersion Schema version Deletes empty file when it is second file Should verify schema version Deletes empty file and creates a new when it is the first file Empty file should raise IO::EOFError LavinMQ::HTTP::Server GET /api/overview should refuse access if no basic auth header should return the number of message gets should refuse access if password does not match should return the number of published messages should return the number of rejected and redelivered messages GC Warning: Finalization cycle involving (???) should refuse access if user does not exist should filter stats if x-vhost header is set should return the number of acked and delivered messages should return sum of all published messages should allow access if user is correct should return the number of bindings in object_totals GET /api/aliveness-test/vhost should run aliveness-test DELETE /api/vhost-limits/vhost/type clears the limit should return the number of message deliver_gets Pagination should page results Sorting should sort results by nested keys should sort results should sort by column with nil values GC Warning: Finalization cycle involving (???) should sort by column when all values are nil should sort reverse results LavinMQ::Auth::JWT::PublicKeys #clear removes stored keys #get? returns keys when not expired returns nil when keys are expired returns nil when no keys are set #update edge cases handles multiple rapid updates handles empty keys hash handles zero TTL as expired OpenSSL::SSL::Socket kTLS status engages kTLS on sockets when ENABLE_KTLS option is set reports no kTLS when ENABLE_KTLS option is not set LavinMQ::Observable(EventT) with one observable #unregister_observer unregisters observers notify observers #register_observer registers observers with two observable notify right observers LavinMQ::Federation::Upstream Queue federation should resume federation after downstream reconnects should use federated queue's name if @queue is empty should federate queue with ack mode no-ack should reconnect queue link after upstream disconnect should stop transfering messages if downstream consumer disconnects GC Warning: Finalization cycle involving (???) should only transfer messages when downstream has consumer should not federate queue if no downstream consumer should federate queue with ack mode on-publish should keep message properties when @queue is nil #link(Queue) should create link that consumes upstream queue with same name as downstream queue should federate queue Exchange federation should delete internal exchange and queue after deleting a federation link GC Warning: Finalization cycle involving (???) should federate exchange even with no downstream consumer when @exchange is nil should use downstream exchange name as upstream exchange should keep internal exchange and queue after broker shutdown should continue after upstream restart when @exchange is empty should use downstream exchange name as upstream exchange should federate exchange shutdown closes federation links without logging unexpected-close errors LavinMQ::Federation::UpstreamStore removes a deleted upstream from sets even when a non-matching entry comes first dups the upstream and applies per-entry overrides without sharing state QueueLink GC Warning: Finalization cycle involving (???) set x-received-from append to x-received-from ExchangeLink set x-bound-from exchange federation chain message forwarding respects max-hops GC Warning: Finalization cycle involving (???) binding forwarding respects lower maxhops on exchange GC Warning: Finalization cycle involving (???) binding forwarding respects lower maxhops in binding argument GC Warning: Finalization cycle involving (???) append to x-bound-from should reflect all bindings to upstream exchange does not leave a dead observer when deleted during link startup append to x-received-from should reflect bindings made while link is starting set x-received-from LavinMQ::Auth::OAuthAuthenticator #authenticate with invalid tokens rejects tokens with more than 3 parts rejects tokens that don't start with 'ey' rejects token with None algorithm (security check) rejects tokens with invalid JWT format (wrong number of parts) rejects tokens with missing algorithm in header rejects expired tokens in prevalidation rejects tokens with missing exp claim rejects tokens with non-RS256 algorithm configuration requirements accepts valid configuration works with optional audience verification disabled works with multiple preferred username claims works with resource server ID works with custom scope prefix on-demand JWKS fetch fetches keys on first authentication when the refresh loop hasn't populated them rate-limits fetch attempts when the provider is unreachable LavinMQ::AMQP::DelayedExchangeQueue::DelayedMessageStore::DelayedRequeuedStore #size should decrease after shift should return 0 when empty should return the number of items in the store should be 0 after clear #time_to_next_expiration? should return nil when empty should return time span to next expiration #shift? should return and remove first element should return nil when empty #first? should return nil when empty should return first element without removing #clear should empty the store #insert should maintain sorted order by expiration time should raise error for basic insert should order by segment position when expiration times are equal LavinMQ::ConnectionInfo::IPAddress #address preserves native IPv6 addresses unmaps IPv4-mapped IPv6 addresses preserves plain IPv4 addresses #loopback? recognizes IPv4-mapped IPv6 loopback as loopback LavinMQ::SegmentPosition should find x-delay and x-dead-letter-exchange among other headers should flag SP with x-dead-letter-exchange header should treat negative x-delay as no delay with expiration should create a SP with x-delay should create a SP without TTL or priority should treat non-integer x-delay as no delay should create a SP with priority JumpConsistentHasher(T) Hasher should return first value if only one target should be consistent for same key should get the same messages after adding a target and then remove it should distribute keys across targets should return nil if empty should minimize remapping when target is added should respect weight for distribution should handle target removal LavinMQ::StandaloneRunner stops when stop is called yields to block immediately LavinMQ::Auth::JWT::TokenParser #parse_roles additional_scopes_keys parsing extracts scopes from hash claim without resource_server_id extracts scopes from additional_scopes_keys string claim extracts scopes from additional_scopes_keys hash claim with resource_server_id extracts scopes from multiple additional_scopes_keys extracts scopes from additional_scopes_keys array claim ignores non-matching resource_server_id in hash claim resource_access parsing extracts roles from resource_access when resource_server_id is set ignores resource_access for other servers ignores resource_access when resource_server_id is not set scope claim parsing parses scopes from space-separated scope claim returns empty permissions when scope is empty combined tags and permissions parses both tags and permissions from same scope #extract_username falls back to 'client_id' when 'sub' is missing and no claims configured falls back to sub when other claims are missing extracts username from sub claim extracts username from custom claim in unmapped fields raises when no username claim is found extracts username from preferred_username claim extracts username from first matching claim in the list ignores non-string values in unmapped fields defaults to 'sub' claim when preferred_username_claims is not configured extracts username from iss claim falls back to subsequent claims if first is missing #parse raises when exp claim is missing sets expires_at from exp claim tag parsing parses policymaker tag parses multiple tags ignores invalid tag names parses monitoring tag parses management tag parses impersonator tag parses administrator tag permission parsing parses permissions with dot separator ignores scopes with wrong format skips scopes with invalid regex patterns parses permissions with slash separator converts wildcard * to .* pattern initializes missing permission types to empty pattern ignores unknown permission types parses configure permission with different separators parses read permission with colon separator parses multiple permissions for same vhost parses permissions for multiple vhosts parses configure permission parses write permission scope prefix filtering does not filter when no prefix is configured uses resource_server_id as default prefix filters scopes by explicit prefix duplicate permission scope combining does not affect different permission types on the same vhost does not combine scopes across different vhosts combines duplicate write scopes for the same vhost combines duplicate read scopes for the same vhost combines duplicate configure scopes for the same vhost LavinMQ::Clustering::Server thread safety GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) concurrent with_file and mutations don't crash GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) concurrent files_with_hash and mutations don't crash #append raises ArgumentError when no MFile is registered for the path join baseline (full_sync cut) streams only the unsynced tail of a record that straddles the cut #files_with_hash for File should open and read file calculating hash with caps recomputes when the cap does not match the cached hash's size heals restored sizeless entries in the uncapped pass reuses the cached hash when it covers exactly the cap for MFile should hash only the real (data) size, not the sparse capacity #each_follower broken-follower cleanup removes a synced follower whose dispatch raises a socket error #followers returns only synced followers #wait_for_confirm blocks until the follower has acked the bytes sent so far never writes the socket from the calling fiber, so an isolated execution context can wait safely returns when the follower disconnects before acking does not disconnect a follower that was idle longer than the ack deadline disconnects a connected follower that stops acking, unblocking the waiter unblocks all concurrent waiters when the follower acks Transactions publishes GC Warning: Finalization cycle involving (???) can be commited to multiple queues can be commited can be rollbacked acks can be commited can be rollbacked LavinMQ::Clustering::Client can restart metrics_server after being a follower LavinMQ::RateLimiter does not yield again within the interval yields on first call yields again after the interval has passed LavinMQ::HTTP::OAuthController oauth_token cookie authentication ignores the cookie on non-API paths verifies and expires an invalid cookie on management API paths is registered when a bare OAuth authenticator is used is not registered when no OAuth authenticator is configured Delayed Message Exchange GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) Unhandled exception in spawn(name: Queue#message_expire_loop //amq.delayed-delayed-topic): path=/tmp/lavinmq-20260821-2058-1q1lby4spec/42099b4af021e53fd8fd4e056c2568d7c2e3ffa8/5693968b572d8e70010a09739e32af003ee41e88/msgs.0000000001 pos=4 size=68 (LavinMQ::MessageStore::Error) from src/lavinmq/amqp/queue/delayed_exchange_queue/delayed_message_store.cr:78:11 in 'first_delayed?' from src/lavinmq/amqp/queue/delayed_exchange_queue.cr:106:17 in 'expire_messages' from src/lavinmq/amqp/queue/delayed_exchange_queue.cr:70:13 in 'message_expire_loop' from src/lavinmq/amqp/queue/queue.cr:259:7 in '->' from /usr/share/crystal/src/fiber.cr:168:11 in 'run' from /usr/share/crystal/src/fiber.cr:103:3 in '->' from ??? Caused by: Index out of bounds (IndexError) from /usr/share/crystal/src/slice.cr:1251:7 in 'check_size' from /usr/share/crystal/src/slice.cr:169:5 in '+' from src/lavinmq/amqp/queue/delayed_exchange_queue/delayed_message_store.cr:75:41 in 'first_delayed?' from src/lavinmq/amqp/queue/delayed_exchange_queue.cr:106:17 in 'expire_messages' from src/lavinmq/amqp/queue/delayed_exchange_queue.cr:70:13 in 'message_expire_loop' from src/lavinmq/amqp/queue/queue.cr:259:7 in '->' from /usr/share/crystal/src/fiber.cr:168:11 in 'run' from /usr/share/crystal/src/fiber.cr:103:3 in '->' from ??? closes cleanly without hanging the publisher when the expire loop hits a store error should always use x-dead-letter-exchange when expiring the message should deliver based on when message is to expire should deliver in correct order should not route messages to its own internal queue even if bound should delay 1 message internal queue should be created with x-dead-letter-exchange should rebuild index on restart should rebuild index on restart with truncated segment and acked messages should rebuild index on restart preserving valid messages despite trailing corrupt data should use old name if dir exists should deny publish via amqp (default exchange) should not set dead letter headers should delay 2 messages should support x-delayed-message as exchange type should prevent binding delayed exchange to its own internal queue LavinMQ::Etcd signals expired channel with the underlying error can elect leader rejects ISR updates from a stale election holder can watch can put and get will not lose leadership when only one etcd node is lost signals expired channel when all lease is revoked learns new cluster endpoints #put_or_get should set and return value if key is non-existent should get existing value if key exists basic auth and TLS support supports HTTPS endpoints with auth supports mixed HTTP/HTTPS endpoints uses default port for HTTPS URLs uses default port when not specified handles traditional host:port format maintains backwards compatibility with endpoints getter will lose lease when loosing quorum raises LeaseNotFound when using an invalid lease LavinMQ::AMQP::ArgumentValidator::MaxAgeValidator #validate! rejects invalid unit accepts large numbers rejects negative numbers rejects decimal numbers rejects empty string rejects multiple units rejects missing number accepts valid second format accepts valid day format rejects missing unit accepts valid year format rejects space before unit rejects non-string values accepts valid month format accepts valid hour format accepts valid minute format LavinMQ::VHost Byte rate stats all protocols should aggregate byte counts to vhost level should track recv bytes at vhost level from MQTT publish should track send bytes at vhost level from MQTT deliver should track recv bytes at vhost level from AMQP publish should track send bytes at vhost level from AMQP consume OpenSSL::SSL::Context::Server supports SNI callback client will qos must not be 3 [MQTT-3.1.2-14] is not delivered on graceful disconnect [MQTT-3.14.4-3] is delivered on ungraceful disconnect when server closes connection because protocol error when client unexpected closes tcp connection retain can't be set of will flag is unset [MQTT-3.1.2-15] qos can't be set of will flag is unset [MQTT-3.1.2-13] can be retained [MQTT-3.1.2-17] won't be published if missing permission LavinMQ::Config logs warning for deprecated CLI options logs warning for deprecated INI options forwards all deprecated INI options to their replacements has entries in DEPRECATED_FORWARDS for all deprecated options forwards all deprecated CLI options to their replacements LavinMQ::AMQP::GISFilter RadiusFilter#match? matches point within radius returns false for headers missing geo coordinates rejects point outside radius matches point on radius boundary BoundingBoxFilter#match? matches point inside bounding box returns false for headers missing geo coordinates rejects point outside bounding box parse_bbox_filter raises for invalid numeric values parses valid bounding box raises for invalid bounds raises for missing fields Polygon handles polygon with vertical edges without division by zero handles complex polygon (Manhattan) excludes point outside triangle requires at least 3 points contains point inside triangle parse_polygon_filter parses valid polygon raises for invalid point format raises for fewer than 3 points raises for invalid numeric values parse_radius_filter raises for negative radius raises for invalid numeric values raises for missing fields parses valid radius filter raises for zero radius PolygonFilter#match? returns false for headers missing geo coordinates rejects point outside polygon matches point inside polygon Point#distance_to calculates distance between NYC and LA (approx 3935 km) returns zero for same point calculates distance between London and Paris (approx 344 km) BoundingBox validates coordinate bounds includes point on boundary validates min/max relationships contains point inside bounds excludes point outside bounds Point accepts valid coordinates validates longitude bounds validates latitude bounds Point.from_headers extracts point from headers with Float64 values returns nil for nil headers returns nil for missing headers extracts point from headers with Int values returns nil for out-of-bounds coordinates returns nil for invalid lat/lon values MQTT OAuth allows connection with wildcard vhost permissions allows connection with exact vhost permissions cleans up OAuthUser on disconnect subscribe pub/sub bits 3,2,1,0 must be set to 0,0,1,0 [MQTT-3.8.1-1] must contain at least one topic filter [MQTT-3.8.3-3] should not allow any payload reserved bits to be set [MQTT-3-8.3-4] should replace old subscription with new [MQTT-3.8.4-3] LavinMQ::MQTT::SubscriptionTree(T) matches topic levels with multibyte UTF-8 characters #empty? doesn't keep entries for unsubscribed non-wildcard filters keeps the entry when other subscribers remain on the filter returns true after unsubscribing only existing +-wildcard subscription returns true after unsubscribing only existing #+-wildcard subscription returns false after a non-wildcard subscribe returns false after a +-wildcard subscribe returns false after a #-wildcard subscribe returns true after unsubscribing many different subscriptions returns true before any subscribe returns true after unsubscribing only existing non-wildcard subscription subscriptions is found changes qos level unsubscribe unsubscribes #any? returns false for empty tree with subs returns true for matching non-wildcard subs returns false for no matching subscriptions returns true for matching '+'-wildcard subs returns true for matching '#'-wildcard subs can iterate all entries message qos cannot ack a message twice acks must not be ordered both qos bits can't be set [MQTT-3.3.1-4] qos1 messages are stored for offline sessions [MQTT-3.1.2-5] acked qos1 message won't be sent again cannot ack invalid packet id should not enqueue messages with QoS 0 if no client is connected to the session qos is set according to subscription qos [LavinMQ non-normative] GC Warning: Finalization cycle involving (???) qos1 unacked messages re-sent in the initial order [MQTT-4.6.0-1] max inflight messages delivery halts at the inflight limit delivery resumes after acking LavinMQ::MQTT::Exchange should only allow Session to bind LavinMQ::Server Consumer with prefetch should receive prefetch number of messages should receive more after acks should be applied separately to each new consumer on the channel when global is false should be shared across all consumers on the channel when global is true LavinMQ::Auth::JWT::PublicKeys #decode raises DecodeError for malformed token raises VerificationError when the token has no kid header raises DecodeError when PEM key is empty string raises VerificationError when no keys are provided raises VerificationError when token has empty signature raises VerificationError with invalid PEM key raises VerificationError when no key matches the token's kid Flow should support server flow sh: line 1: ps: command not found should stop flow when disk is almost full sh: line 1: ps: command not found sh: line 1: ps: command not found should resume flow when disk is no longer full should support consumer flow LavinMQ::GlobalDefinitions .import_from_file skips permissions for unknown users without crashing skips default vhost and user when load_definitions is configured does not overwrite existing permissions raises on invalid JSON raises if definitions file not found imports definitions from a JSON file does not overwrite existing users preserves admin permissions from definitions file on fresh boot raises on invalid regex in permissions LavinMQ::Shovel AMQP should move messages between queues with long names will wait to ack all msgs before deleting itself should shovel and stop when queue length is met authentication error should be stopped should pause and resume shovel on long queue should shovel past prefetch should count messages shoveled should pause and resume shovel should reconnect and continue Source will ack after timeout will stop and raise on unexpected disconnect won't start ack timeout loop when not needed will start ack timeout loop if needed should shovel over amqps should shovel once qs are declared should keep paused even on broker restarts should shovel with ack mode no-ack should shovel forever does not let a paused run terminate a resumed shovel should ack all messages that has been moved should shovel with ack mode on-publish should shovel stream queues should shovel large messages Store.validate_config! raises when user lacks permission on the named vhost looks up vhost permissions by bare name (strips leading slash from URI path) HTTP should set path for URI from headers should shovel LavinMQ::AMQP::ConsistentHashExchange exchange => exchange bindings should route all messages to exchange if only one exchange exchange => queue bindings should fallback to default if invalid x-algorithm was supplied should fallback to default if no x-algorithm was supplied should route all messages to queue if only one queue should route on header key should route on to same queue even after delete should allow setting hashing algorithm using x-algorithm argument should route on empty string is header isn't set should fail if header value isn't a string should route on routing key should allow setting hashing algorithm using x-algorithm argument should still route after unbinding duplicate binding with different arguments #bind raises on invalid weight (routing key) #unbind raises on invalid weight (routing key) LavinMQ::MQTT::Brokers tolerates a Closed event for a vhost it never registered retained messages retain flag is 0 if there is an established subscription [MQTT-3.3.1-9] GC Warning: Finalization cycle involving (???) retained messages are redelivered for subscriptions with qos1 retained messages are received on subscribe LavinMQ::AMQP::ArgumentValidator::StringValidator #validate! rejects integer values accepts empty string rejects array values rejects boolean values accepts valid string allows nil values OpenSSL::SSL::Context::Server #keylog_file= logs TLS keys during handshake logs TLS keys for multiple SNI hosts to same file without interleaving message routing should route a/b/c to a/b/# should not route a/b/c to c/+/# should route a/b/c to a/+/c should route a/b/c to a/+/+ should route a/b/c to +/b/c should route a/b/c to +/# should route a/b/c to a/+/# should route a/b/c to +/+/c should not route a/b/c to c/a/b should route a/b/c to # should route a/b/c to +/+/# should route a/b/c to +/+/+ should not route a/b/c to +/a/+ should not route a/b/c to c/# should route a/b/c to a/# should route a/b/c to a/b/+ should route a/b/c to a/b/c should not route a/b/c to +/+/d LavinMQ::HTTP::Router #find_route registers route and finds it does not find unregistered route #get registers route is a HTTP::Handler #call supports rest param supports single param should uri decode params should route on method and path supports multiple params Channel(T) can send non blocking to buffered channel can send non blocking SNI end-to-end rejects connection without client cert when mTLS is enabled via SNI accepts connection with valid client cert when mTLS is enabled via SNI serves correct certificate based on SNI hostname LavinMQ::HTTP::NodesController GET /api/nodes/gc_stats returns GC profiling stats POST /api/nodes/:name/gc_collect returns 404 for an unknown node GC Warning: Finalization cycle involving (???) triggers garbage collection for the current node GET /api/nodes should return nodes data should not include GC stats POST /api/nodes/gc_collect GC Warning: Finalization cycle involving (???) triggers garbage collection LavinMQ::HTTP::StaticController GET /img/favicon.png GET /robots.txt LavinMQ::SNIManager manages SNI hosts get_exact_host does not resolve wildcards starts empty supports wildcard hostnames Message segment metadata files Segment deletion with metadata cleanup only completed segments have meta files deletes meta file when purging queue deletes meta file when segment is deleted Count file functionality uses metadata for faster message store initialization stores message count in metadata files Metadata file creation creates meta file when segment becomes full writes correct metadata for stream queues Metadata file reading on startup produces metadata files when missing on load falls back to message scanning when meta file missing MFile tracks mmap count can be read can be double closed LavinMQ::Clustering::Client checksum persistence during sync persists compare-loop hashes incrementally, before close persists hashes of received files, before close keeps checksums.sha1 across repeated sync passes #close waits for the ack loop's pending syncs before closing the data dir fd stream_changes acks a large action incrementally instead of only when it completes does not ack a delete that could not be applied does not send a replace's final ack if the rename could not be applied stops the streamed bytes logging fiber when the stream ends acks the end of a replace only after the file is renamed into place skips local sync before acking streamed bytes when sync is disabled acks a delete only after the file has been deleted sync_files directory cleanup deletes only directories absent from leader keeps directories containing files present on the leader deletes directory not on leader deletes nested directory tree absent from leader checksums persisted on close persists the checksum of a file it created by appending persists no checksum for a file appended to after sync GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) persists the checksum of a replaced file keeps the old checksum when a replace never completes drops the checksum of a file the sync deleted state carried across a re-sync appends to the file the re-sync installed, not the replaced inode hash_local_files skips files already in the checksum cache leaves no hashing to do while the leader is connected hashes every local file, including files the leader doesn't have keeps hashing after a file it can't read drops checksums of files deleted because the leader lacks them skips local-only files the leader never sends #append writes UInt32 value little-endian with a -4 size header writes Int32 value little-endian with a -4 size header writes filename and Bytes payload with a negative size header clustering join-during-publish race GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) follower joining during active publishing has the same message count as the leader CONTROL: follower synced before publishing matches the leader exactly publish shouldn't return anything for QoS=0 should return PubAck for QoS=1 #delete writes filename and a zero size marker Queue Dead Lettering Header Validation shoud add x-death for message maxlen should increase x-death count for same queue and reason should set first death and preserve it should add x-death for reject should add x-death for message expiration should only be dead lettered to dead-letter-routing-key with preserved CC dead_letter_headers_BCC should add x-death for ttl should append x-death for each event dead_letter_headers_first_death_route (REQUIRES x-match = all-with-x) dead_letter_headers_should_not_be_appended_for_republish should route to and keep CC header if no dead lettering routing key is set Complex Rejection Scenarios should dead letter on single nack should only dead letter on nack multiple with requeue=false when basic get should only dead letter on nack multiple with requeue=false when basic consume dead_letter_max_length_reject_publish_dlx Routed Callback is called once when dead lettering to multiple queues ack/delete_message no-ops after close races a dead-letter drain is called once when all dead letter destinations are cycles Basic Dead-Lettering Mechanisms should dead letter on nack with requeue=false should dead letter when ttl expires while unacked and reject(requeue=true) should dead letter many rejects should dead letter many when nack with requeue=false and multiple=true should not dead letter on nack with requeue=true should not dead letter on nack with requeue=true and multiple=true should dead letter on reject with requeue=false should not dead letter on reject with requeue=true should dead letter when delivery-limit exceeded on reject(requeue=true) should dead letter on max-length with drop-head should dead letter on ttl should dead letter in chain Cycle Detection GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) should not stack overflow with two mutually dead-lettering queues dead_letter_routing_key_cycle_ttl dead_letter_routing_key_cycle_with_reject should detect cycle with two queues in chain dead_letter_routing_key_cycle_max_length should not stack overflow with a long chain should detect cycle with three queues in chain Routing and Exchange Behavior should dead letter to message's routing key when x-dead-letter-routing-key is missing should dead letter to BCC if dead-letter-routing-key is missing should delete message if dead lettering exchange is missing should dead letter to CC if dead-letter-routing-key is missing LavinMQ::AMQP::Stream consume from timestamp offset across segment boundary can start consume from last segment even if queue is empty doesn't support basic_get Restarting stream loads when trailing segment has only the 4-byte schema header should restart a closed stream should resume consuming from the correct position after a restart Expiration segments should be removed if max-age set segments should be removed if max-length set removes segments when max-length-bytes policy is applied ignores delivery-limit policy on streams removes segments on publish if max-age policy is set removes segments when max-age policy is applied should not lose messages on restart when max-age is set does not start the expire fiber when the last consumer leaves meta files should be removed when segment is removed segments should be removed if max-length-bytes set removes segments when max-length policy is applied Automatic consumer offset tracking acking after the queue is deleted does not tear down the connection expands consumer offset file when needed should not use saved offset if x-stream-automatic-offset-tracking is false cleanup_consumer_offsets does not overflow with many consumer offsets store_consumer_offset raises ClosedError after the store is closed compacts consumer tag file when full appends consumer tag file ConsumerOffsets.trim_to_size drops the oldest offsets when over the cap should use saved offset if x-stream-offset & x-stream-automatic-offset-tracking is set cleanup_consumer_offsets removes outdated offset runs cleanup when removing segment drop_overflow does not raise after the store has been deleted does not track offset if x-stream-offset is set compacts consumer tag file on restart does not track offset if c-tag is auto-generated reads offsets from file on init resumes from last offset on reconnect should not use saved offset if x-stream-offset is set drops a publish when the store is closed concurrently can requeue msgs per consumer can be purged Consume should be able to consume multiple times should get message with offset 2 multiple consumers get new messages immediately as they arrive reproduces bug: second consumer doesn't get immediate delivery consumer gets new messages as they arrive should get same nr of messages as published LavinMQ::Clustering::Follower #negotiate! should raise AuthenticationError and send 1 on wrong password should send 0 on succesful negotiation should raise InvalidStartHeaderError on invalid start header Alternate Exchange only routes to alternate-exchange when no queues are bound LavinMQ::HTTP::QueuesController PUT /api/queues/vhost/name/pause should pause the queue DELETE /api/queues/vhost/name should delete queue should not delete queue if it has messasge when query param if-unused is set PUT /api/queues/vhost/name should require config access to declare should require durable to be the same when overwriting should not require any body (1) should respond with 400 for PreconditionFailed errors should not be possible to declare amq. prefixed queues GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) should create queue should not require any body (2) POST /api/queues/vhost/name/get should handle base64 encoding should not double-decrement unacked_count when an ack fails mid-batch should not allow get and requeue should reject on error while getting messages should get plain text messages should handle count > message_count should get encoded messages should handle empty q GET /api/queues/vhost/name should return queue GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) should return no persistent message count should return 404 if queue does not exist should return message stats should return persistent message count writes message_stats only once GET /api/queues/vhost/name/unacked subscribe should return unacked messages should not return if rejected should not return if acked basic get should not return if acked should not return if rejected should return unacked messages GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) should be removed from unacked when channel closes GET /api/queues/vhost should return all queues for a vhost PUT /api/queues/vhost/name/restart should not restart if queue is still running should restart a queue GET /api/queues/vhost/name/bindings should return queue bindings PUT /api/queues/vhost/name/resume should resume the queue GET /api/queues should return all queues GET /api/queues/vhost/name effective_arguments should include x-max-age in effective_arguments for streams FilesystemInfo matches df for the current filesystem scales block counts by f_frsize, not f_bsize falls back to f_bsize when f_frsize is zero duplicate messages dup must not be set if qos is 0 [MQTT-3.3.1-2] dup on incoming messages is not propagated to other clients [MQTT-3.3.1-3] dup is set when a message is being redelivered [MQTT-3.3.1.-1] LavinMQ::AMQP::StreamReader should include x-stream-offset header should handle offset (where to start the reader) should read over multiple segments LavinMQ::MQTT multi-vhost should create mqtt exchange when vhost is created authentication should allow mqtt access to default vhost for user with vhost permissions should deny mqtt access to non-default vhost for user lacking vhost permissions should deny mqtt access to default vhost for user lacking vhost permissions should allow mqtt access to non-default vhost for user with vhost permissions LavinMQ::VHost can limit connections should be able to persist vhosts can limit queues GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) should not write unbind frame to definition file for non-existing binding should compact definitions during runtime should be able to persist durable exchanges auto add permissions should auto add permission to the default user should add permission to the user creating the vhost should be able to persist bindings should be able to delete vhosts serializes concurrent saves so they don't race on the tmp file should not write bind frame to definition file for existing binding should be able to persist durable queues should be able to create vhosts should be able to persist durable delayed exchanges when type = x-delayed-message OAuth2 OAuthController /oauth/callback integration redirects to login when token exchange returns non-2xx redirects to login with error when token validation fails PKCE generates a correct challenge (SHA256 of verifier, base64url-encoded) generates a verifier of at least 43 characters produces different verifiers on each call OAuthController when management UI SSO is not configured GET /oauth/authorize returns 503 GET /oauth/callback redirects to login OAuthController /oauth/logout clears the oauth cookies and redirects to login OAuth sessions using the management API can create a vhost OAuthController /oauth/authorize cookie flags requests the default "openid profile" scope when oauth_mgmt_scopes is not configured omits Secure when the management UI is served over http://localhost fetches OIDC discovery on demand when the background refresh has not populated it yet requests the configured scope when oauth_mgmt_scopes is set omits the audience parameter when oauth_audience is not configured includes the audience parameter when oauth_audience is configured sets oauth_state with Secure, HttpOnly, SameSite=Lax OAuthController /oauth/callback success cookies GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) sets oauth_token (HttpOnly, SameSite=Lax) and m identity cookie with Secure succeeds when the IdP returns expires_in as a JSON string scopes cookies to the path of oauth_mgmt_base_url TokenResponse expires_in parsing still parses fields following an unexpected expires_in type returns nil when expires_in is null returns nil when expires_in is absent parses expires_in as a JSON string (Azure/Entra) returns nil for an unparseable expires_in string parses expires_in as a JSON number OAuthController /oauth/callback error handling redirects to login when code query parameter is missing redirects to login on state mismatch redirects to login when oauth_state cookie is missing OAuthController JWT cookie GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) rejects an invalid JWT in the oauth_token cookie with 401 still allows basic auth when OAuth is wired clears a stale oauth_token cookie on rejection keeps session cookies when JWKS keys could not be fetched OAuthController /oauth/enabled returns enabled=false when OAuth is not configured returns enabled=true when OAuth is configured LavinMQ::Clustering::Server join failures Unhandled exception in spawn(name: Clustering follower): coordinator unavailable (spec) (SpyCoordinator::Error) from spec/clustering/isr_spec.cr:16:7 in 'update_isr' from src/lavinmq/clustering/server.cr:418:9 in 'update_isr' from src/lavinmq/clustering/server.cr:372:13 in 'sync_and_serve' from src/lavinmq/clustering/server.cr:339:9 in 'handle_socket' from src/lavinmq/clustering/server.cr:319:48 in '->' from /usr/share/crystal/src/fiber.cr:168:11 in 'run' from /usr/share/crystal/src/fiber.cr:103:3 in '->' from ??? drops a follower whose join failed at the ISR commit, instead of leaving a zombie publish confirms against the ISR stalls publish confirms until a dead follower's ISR removal is committed flushes a dirty ISR before delivering a publish confirm when sync is disabled waits for in-sync follower acks before confirming when sync is disabled GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) flushes a dirty ISR before delivering a publish confirm definition changes against follower acks completes a declare by evicting a follower that never acks, after committing its ISR removal holds a durable queue declare until in-sync followers ack it durable operations against the ISR commits a dirty ISR before a replicated durable operation returns ISR maintenance on follower disconnect removes a follower that was behind from the ISR immediately, before the next write keeps a caught-up follower in the ISR after it disconnects (valid failover candidate) LavinMQ random disconnects LavinMQ::Server passwordless user should treat null password_hash with non-null algorithm in users.json as passwordless should load MD5 user with null hashing_algorithm should treat null password_hash in users.json as passwordless should treat empty password_hash with non-null algorithm as passwordless should reload successfully after a passwordless user was created via the HTTP API LavinMQ::Config will not parse cli sections that do not exist will not parse ini sections that do not exist LAVINMQ_DATADIR takes precedence over STATE_DIRECTORY stats_interval accepts sub-second values rejects non-positive values tcp_proxy_protocol sets tcp_proxy_protocol to true when value is 1 sets tcp_proxy_protocol to false when value is false sets tcp_proxy_protocol to true when value is yes sets tcp_proxy_protocol to false when value is no sets tcp_proxy_protocol to true when value is 2 sets tcp_proxy_protocol to false when value is 0 sets tcp_proxy_protocol to false when value is -1 should prioritize CLI arguments over other arguments defaults the control socket path to /tmp/lavinmqctl.sock should remember the config file path uses systemd CONFIGURATION_DIRECTORY for config file lookup parses pidfile from config should prioritize ENV arguments over INI arguments does not parse config before printing version information2.9.2 does not parse config before printing version information reload applies SNI changes on a successful reload does not half-apply a config when a later value is invalid keeps the running config when the new config has an unknown section keeps serving traffic after a failed reload keeps the running config when the new config has an invalid value keeps the running config when the new config has an unwritable log_file accepts deprecated [http] section as alias for [mgmt] LAVINMQ_CONFIGURATION_DIRECTORY takes precedence over CONFIGURATION_DIRECTORY WARNING: clustering_max_unsynced_actions is deprecated and has no effect Can parse all INI arguments should reload config with new log level can parse -d/--debug flag for verbose logging STATE_DIRECTORY takes precedence over INI data_dir WARNING: clustering_max_unsynced_actions is deprecated and has no effect can parse all CLI argumetns uses systemd STATE_DIRECTORY as default for data_dir will not raise error when parseing ini option that does not exist in section can parse all ENV arguments should set amqp, http and mqtt bind with -b flag mTLS (Mutual TLS) AMQP with mTLS rejects AMQP connection without client certificate can publish and consume messages over mTLS connection allows AMQP connection with valid client certificate SNIHost mTLS configuration creates TLS context without mTLS when disabled creates TLS context with mTLS enabled allows per-protocol mTLS configuration client certificate authentication accepts connection with valid client certificate rejects connection without client certificate accepts connection with any CA-signed client certificate LavinMQPerf Perf base class should have MQTT banner should have AMQP banner should capture output with IO parameter MQTT::Throughput should fail with invalid argument should accept IO parameter AMQP::Throughput GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) should verify summary averages are correct should accept IO parameter should fail with invalid argument Ticker paces evenly across the configured rate window keeps pacing when ticked through another method LavinMQ::Auth::OAuthUser #find_permission with wildcards matches prefix wildcard pattern matches exact vhost name matches middle wildcard pattern matches single * wildcard (any vhost) matches suffix wildcard pattern handles overlapping parts correctly matches pattern with wildcards at both ends handles consecutive wildcards handles pattern without wildcards as exact match matches multiple wildcards prefers exact match over wildcard #refresh rejects token with mismatched username #on_expiration stops fiber when user is closed closes the token-update channel when the watcher exits so a late refresh can't block (#2075) calls callback immediately when token is already expired #close closes the socket even when the send buffer is full marks a follower whose ack_loop never ran as dead and unblocks waiters with keepalive client is disconnected after 1.5 * [keep alive] seconds LavinMQ::AMQP::Channel should respect consumer_max_per_channel config consumer_max_per_channel = 0 allows unlimited consumers LavinMQ::HTTP::ShovelsController PUT api/shovels/:vhost/:name/resume should return 422 if shovel is already running should return 404 for non-existing shovel should resume a paused shovel and return 204 access control should refuse management users from resuming a shovel should refuse management users from getting a shovel should refuse management users from listing all shovels should refuse management and monitoring users from listing shovels should allow policymaker to list shovels in a vhost GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) should refuse management users from pausing a shovel PUT api/shovels/:vhost/:name/pause should pause shovel and return 204 should return 422 if shovel is already paused should return 404 for non-existing shovel control socket authenticates connections over the configured control socket as the direct user clustering follower control socket recognizes loopback leader hosts as local does not bind before the leader host is known uses the socket bound at startup even after the config is reloaded follower_internal_socket_http_server skips binding instead of raising when the socket can not be prepared binds when alone on the machine skips binding when another node serves the control socket prepare_control_socket raises if the socket is in use does nothing if the path does not exist raises if the path exists but is not a socket deletes a stale socket no one is listening on LavinMQ::Deduplication::Deduper duplicate? should fallback to default ttl should allow checking any header for dedups should only insert into cache if header has a value should check cache if entry exists should only insert into cache if header has a value should not reset x-cache-ttl on expire when using delayed exchange should respect x-cache-ttl on message should prio message ttl over default ttl should return false if "x-deduplication-header" is missing (no identifier, always unique) LavinMQ::DefinitionsStore has definition frames on disk before they are dispatched to followers LavinMQ::IPMatcher .parse and #matches? IPv6 CIDR matching doesn't match IP outside /64 range matches IP in /32 range matches IP in /128 range (single host) matches IP in /0 range (all IPs) handles link-local /10 range doesn't match IP outside /32 range matches IP in /64 range error handling raises on CIDR with invalid IP raises on IPv6 prefix > 128 raises on invalid IPv6 address raises on invalid CIDR prefix raises on IPv4 prefix > 32 raises on invalid IPv4 address raises on invalid CIDR notation negative matches IPv6 /127 boundary IPv4 CIDR matches IPv4-mapped IPv6 (dual-stack listener) IPv6 off-by-one in last group IPv6 matcher rejects raw IPv4 IPv4 matcher matches IPv4-mapped IPv6 (dual-stack listener) IPv6 /64 doesn't bleed into adjacent /64 IPv4 matcher doesn't match a real (non-mapped) IPv6 address IPv6 /126 boundary IPv4 off-by-one at /24 boundary IPv6 lookalike with different magnitude doesn't match IPv4 off-by-one in last octet edge cases handles whitespace in CIDR handles whitespace in IP doesn't match IPv6 address against IPv4 CIDR doesn't match IPv4 address against IPv6 CIDR CIDR notation can match different IPv6 representations IPv6 exact IP matching handles IPv6 loopback doesn't match different IPv6 address matches expanded form against zero-compressed form matches equivalent IPv6 representations of loopback matches mixed-case hex digits matches zero-compressed form against expanded form matches exact IPv6 address IPv4 CIDR matching matches IP in /24 range doesn't match IP outside /8 range matches IP in /0 range (all IPs) matches IP in /8 range matches IP in /16 range matches IP in /32 range (single host) doesn't match IP outside /24 range handles /25 CIDR handles /12 CIDR (AWS VPC default) doesn't match IP outside /16 range normalizes network address IPv4 exact IP matching doesn't match different IPv4 address handles loopback address matches exact IPv4 address Websocket support should connect over websocket can publish large messages when request 'Sec-WebSocket-Protocol' is set to 'invalid' should accept amqp client GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) should not set response 'Sec-WebSocket-Protocol' should not accept mqtt client is set to 'mqttish' should set response 'Sec-WebSocket-Protocol' to 'mqttish' should not accept amqp client should accept mqtt client is set to 'amqpish' should not accept mqtt client should accept amqp client should set response 'Sec-WebSocket-Protocol' to 'amqpish' is set to 'stomp,amqp,mqtt' should set response 'Sec-WebSocket-Protocol' to 'amqp' (first match) is set to 'mqtt' should set response 'Sec-WebSocket-Protocol' to 'mqtt' should accept mqtt client GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) should not accept amqp client is set to 'amqp' should accept amqp client should not accept mqtt client should set response 'Sec-WebSocket-Protocol' to 'amqp' LavinMQ::Deduplication LavinMQ::Deduplication::MemoryCache(T) should store item without ttl should have max size as optional setting should default cache size should respect ttl LavinMQ::Server allows declaring queues passivly even without config perms prohibits getting from queue if user doesn't have access disallow users who dont have vhost access unbinding queue required write perm on queue allows changing default user prohibits consuming if user doesn't have access prohibits declaring exchanges if don't have access prohibits declaring queues if don't have access unbinding queue required read perm on exchange binding queue required read perm on exchange binding queue required write perm on queue disallows 'guest' if default user is changed allows users with access to vhost rejects invalid password allows declaring exchanges passivly even without config perms GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) prohibits publish if user doesn't have access prohibits purging queue if user doesn't have write access disallows deleting exchanges without config perms disallows deleting queues without config perms rejects invalid user LavinMQ::Tag parse comma separated list LavinMQ::Client::Channel::Consumer with x-priority should accept any integer as x-priority should respect priority should round-robin to high priority consumers should send to prioritized consumer if ready should not accept any thing but integers as x-priority without x-priority should round-robin on-demand deliver_loop delivers messages published after consumer connects to empty queue delivers requeued messages to consumers on empty queue delivers messages already in queue when consumer connects respawns idle consumer's deliver loop when channel close requeues a message shuts down deliver_loop after idle timeout and respawns on next message LavinMQ::Server accepts connections can reject message should still drop_overflow even with slow consumers supports publisher confirms can reject and requeue message sets correct message timestamp can auto delete exchange binding to empty queue name binds last queue validates header exchange x-match it does remeber acked msgs between restarts supports delivery-limit supports x-max-length drop-head supports mandatory publish flag supports header exchange all can bind exchanges to exchanges supports recover redeliver supports x-max-length reject-publish acking an invalid delivery tag should close the channel supports single active consumer disallows creating new exchanges named amq.* allows any Int64 message timestamp supports expires only allow one consumer when exclusive consumers flag is set can cancel consumers supports recover for basic get supports max-length will limit message size it does persists transient msgs between restarts dead-letter preserves headers supports sends nack if all queues reject will requeue messages that can't be delivered expires multiple messages supports header exchange any does not expire queue when consumer are still there disallows deleting exchanges named amq.* supports consumer timeouts can reject while consuming can publish and consume messages larger than 128kb refuses unbinding from amq.default can receive and deliver multiple large messages rejects all unacked msgs when disconnecting handle immediate flag logs kTLS=off for TLS connections without kernel offload should persist exchange-exchange binding recover(requeue=false) for basic get actually requeues will close channel on double ack with multiple supports x-alternate-exchange msgs publish to queue w/o consumers with max-length 0 will be dropped basic_recover requeues messages for cancelled consumers can publish large messages to multiple queues drop overflow when max-length is applied requeues unacked msg from basic_ack on disconnect supports auto ack consumers supports recover requeue validates header exchange binding with x-match can handle messages going to no queue does not requeue messages on consumer close can delete internal exchange can publish small messages to multiple queues expires messages with message TTL on queue declaration disallows creating queues starting with amq. can delete queue should requeue messages correctly on channel close can purge a queue should measure time it takes to collect metrics in stats_loop dead-letter expired messages acking tag 0 with multiple=true should not close the channel dead-letter expired messages to non existing exchange GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) restarts fast even with large messages expires messages splits frames into max frame sizes refuses binding to amq.default can publish to queues with max-length 0 if there's consumers will close channel on double ack should deliver to all matching queues can delete exchange only allow one connection access an exlusive queues supports alternate-exchange will close channel on unknown delivery tag expires messages with TTL on requeue can handle non valid protocol starts LavinMQ::Server #update_system_metrics sh: line 1: ps: command not found sh: line 1: ps: command not found yields finite rates with sub-second stats_interval LavinMQ::Stats #update_rates yields finite rates with stats_interval=999ms yields finite rates with stats_interval=1ms reports events-per-second independent of the sampling interval yields finite rates with stats_interval=30000ms yields finite rates with stats_interval=500ms yields finite rates with stats_interval=250ms yields finite rates with stats_interval=1000ms yields finite rates with stats_interval=50ms yields finite rates with stats_interval=5000ms LavinMQ::AMQP::TopicExchange matches exact rk # should consider what's comes after should not get index out of bound when matching routing keys matches star-wildcards but not too much should not match single star on multiple segments can handle multiple # matches prefixed star-wildcard should match double star-wildcards # should consider what's comes after # should consider what's comes after can differentiate a.b.c from a.b should not match with too many star-wildcards should match star-wildcards in the middle returns false when unbinding a never-bound routing key # should match zero segments # can be followed by * should match catch-all matches star-wildcards should match multiple bindings should match triple star-wildcards LavinMQ::VHost Stats should count deliver and deliver_no_ack should not delete stats when connection is closed should update queue data should count get_no_ack should count connections open / closed once #replace captures the file size at call time so later appends do not bleed into the stream writes filename, file size, and file contents to the LZ4 stream LavinMQ::Auth::User Permission cache should clear cache when revision changes should have initial revision of 0 should handle multiple cache clears should handle vhost with no permissions should handle multiple vhosts in the same cache should actually use cached results (returns stale data until revision changes) #update_password should update password hash when given other password than current should not update password hash when given same password as current LavinMQ::HTTP::Server POST /api/definitions imports global parameters imports permissions returns 400 when importing a user with non-string password_hash imports passwordless user (password_hash empty string) imports policies should handle unexpected input imports bindings applies no policies when one entry is malformed (issue #2073) imports user with valid MD5 hash and null hashing_algorithm should handle invalid JSON should handle request with empty body GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) should refuse non-administrator users applies no parameters when one entry is malformed (issue #2073) imports exchanges should return sensible error for invalid password hash imports passwordless user (password_hash null) imports parameters GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) returns 400 when importing a user with non-string hashing_algorithm imports vhosts round-trips passwordless user through export and import imports users returns 400 when importing a user with missing password_hash GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) imports queues returns 400 when importing a user with an unsupported hashing_algorithm if default user has been replaced imports with new default user should be able to import delayed exchanges created in LavinMQ (issue #743) should update existing user on import shouldn't ruin internal state of delayed exchange (issue #698) GET /api/definitions/vhost GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) exports bindings does not export exclusive queues exports policies user tags and vhost access should refuse management user even with vhost permissions should refuse vhost access GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) exports exchanges exports queues POST /api/definitions/upload imports definitions from uploaded file (no Referer) imports definitions from uploaded file imports definitions from json body should refuse non-administrator users GET /api/definitions exports policies exports users should refuse non-administrator users exports permissions exports queues exports vhost parameters exports bindings exports exchanges exports vhosts exports global parameters POST /api/definitions/vhost imports queues should handle invalid JSON user tags and vhost access should refuse vhost access should refuse user tag access should refuse policymaker user even with vhost permissions imports exchanges should handle request with empty body should handle unexpected input imports bindings imports policies ping responds to ping [MQTT-3.12.4-1] LavinMQ::Clustering::Client handles a path reused after a resync deleted it applies streamed appends to the file re-fetched during resync, not the stale handle LavinMQ::Server amq.direct.reply-to should require consumer to be in no-ack mode should set reply-to should allow amq.rabbitmq.reply-to to be declared should allow amq.direct.reply-to to be declared should reject publish if no amq.direct.reply-to consumer should be able to consume amq.direct.reply-to should be ok to declare reply-to queue to check if consumer is connected should return on mandatory publish to a reply routing key should be able to consume amq.rabbitmq.reply-to LavinMQ::HTTP::FollowerPrometheusController returns gc metrics on /metrics returns 200 on /metrics/detailed with only scrape telemetry LavinMQ::HTTP::ChannelsController GET /api/channels/:channel should return get_no_ack count 1 should return message_stats GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) should return channel GET /api/vhosts/vhost/channels should return empty array if no connections should return all channels for a vhost with multiple connections should return all channels for a vhost PUT /api/channels/:channel should allow to update the prefetch GET /api/channels should return all channels LavinMQ::AMQP::Stream Filters should get messages without filter when x-stream-match-unfiltered set should still respect offset values while filtering Handle x-filter-match-type ANY ALL should ignore messages with non-matching filters should only get message matching filter Filter on any header x-stream-filter can be a AMQ::Protocol::Table with hashes x-stream-filter can be an array with string and hashes should support filtering on any header should support multiple filters LavinMQ::HTTP::MainController GET / includes footer partial redirects unauthenticated .html requests to login GET / includes header partial GET /login CSP header allows every inline script in the response body GET / CSP header allows every inline script in the response body sets security headers on .html pages requested directly GET / includes head partial GET / serves login.html without requiring authentication LavinMQ::VHost should handle definitions files from v2.4.3 with frame size errors LavinMQ::Exchange Exchange => Exchange binding should allow multiple e2e bindings message deduplication should handle message deduplication #apply_policy without federation-upstream stop existing link should handle message deduplication, on custom header with federation-upstream when exchange is internal won't start link will start link metrics should count unroutable metrics should count unroutable metrics auto delete exchange should delete the exchange when the last binding is removed binding arguments exchange direct are saved arguments must match when unbinding exchange topic are saved arguments must match when unbinding exchange x-consistent-hash are saved arguments must match when unbinding exchange headers arguments must match when unbinding are saved exchange fanout are saved arguments must match when unbinding delayed message exchange declaration should raise exception when redeclaring exchange with mismatched arguments should raise and not declare delayed message exchange if missing x-delayed-type argument should redeclare same delayed message exchange should declare delayed message exchange in_use? should be in use when it has bindings should not be in use when just created should be in use when other exchange has binding to it should be in use when it has bindings LavinMQ::MQTT permissions should allow operations when user has full permissions should block subscribe when user has no read permissions should block will messages when user lacks write permissions should block publish when user has no write permissions should block subscribe when user has write-only permissions should block subscribe when user has read-only permissions LavinMQ::HTTP::ParametersController PUT /api/global-parameters/name should create global parameter should update global parameter should handle invalid JSON should handle request with empty body should refuse management users from creating a global parameter should handle unexpected input DELETE /api/policies/vhost/name should delete policy GET /api/parameters/component/vhost/name should return parameter GET /api/parameters should refuse monitoring and management should return all vhost scoped parameters for policymaker PUT /api/policies/vhost/name should handle invalid definition types should handle request with empty body should handle invalid JSON should update policy GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) should handle unexpected input should create policy GET /api/parameters/component/vhost should return all parameters for a component on vhost PUT /api/operator-policies/vhost/name should handle invalid definition types PUT /api/operator-policies/vhost/name should handle invalid definition types GET /api/policies/vhost should return policies for vhost PUT /api/parameters/component/vhost/name should handle request with empty body should handle unexpected input should update parameters for a component on vhost should handle invalid JSON should create parameters for a component on vhost GET /api/parameters/component should return all parameters for a component GET /api/policies/vhost/name should return policy PUT /api/parameters/shovel/vhost/name should skip validation for external URIs should reject shovel when user lacks read permission on source queue should reject shovel when user lacks write permission on destination exchange should reject shovel when user lacks config permission on source exchange should reject shovel when user lacks config permission on destination exchange should reject shovel when user lacks read permission on source exchange should reject shovel when user lacks config permission on source queue should reject shovel when user lacks config permission on destination queue should validate shovel config with valid config should allow shovel with source exchange and routing key without source queue should reject shovel without source queue or exchange GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) should allow shovel with user having sufficient permissions should skip validation for URIs with explicit user should reject shovel without destination DELETE /api/parameters/component/vhost/name should delete parameter for a component on vhost GET /api/policies should return all policies GET /api/global-parameters should return all global parameters should refuse management users from listing global parameters should allow policymaker to list global parameters DELETE /api/global-parameters/name should refuse management users from deleting a global parameter should delete parameter GET /api/global-parameters/name should return parameter should allow policymaker to get a global parameter should refuse management users from getting a global parameter LavinMQ::AMQP::DurableQueue must find messages written after a uncompacted hole after migration between index version 2 to 3 should successfully convert queue index first? handles files with few extra bytes shift? handles files with few extra bytes with corrupt segments when consumed should be closed should ignore corrupt endings should handle routing key length = 255 LavinMQ::Config parses SNI sections from config file exact-match section after wildcard does not corrupt wildcard host LavinMQ::HTTP::PrometheusController authentication should allow unauthenticated access to metrics on metrics port should require authenticated access to metrics on mgmt port vhost access control should only return metrics for vhosts the user has access to GET /metrics should report uptime anchored to PROCESS_START, surviving Server re-creation should count all delivered messages (both get and deliver) should expose the number of bindings should include mfile count metric should support specifying prefix should return metrics in prometheus style should perform sanity check on sampled metrics should not support a prefix longer than 20 GET /metrics/detailed should perform sanity check on sampled metrics should support specifying families should group TYPE and HELP by metric name should label channel metrics with vhost and connection should expose per-vhost message stats LavinMQ::MQTT::StringTokenIterator is iterated correctly is iterated correctly is iterated correctly is iterated correctly is iterated correctly is iterated correctly is iterated correctly is iterated correctly LavinMQ::MQTT::BytesTokenIterator splits "long name here/and another long here" correctly splits "a" correctly splits "/" correctly splits "a//b/c/aa" correctly splits "/a" correctly splits "a/b/c" correctly splits "a//c" correctly yields views into the backing buffer, never copies splits "a/" correctly LavinMQ::AMQP::FanoutExchange matches any rk LavinMQ::HTTP::BindingsController GET /api/bindings/vhost/e/source/e/destination should return bindings GET /api/bindings/vhost/e/exchange/q/queue/props should return binding GET /api/bindings should return all bindings DELETE /api/bindings/vhost/e/source/e/destination/props GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) should delete binding GET /api/bindings/vhost/e/exchange/q/queue should return 404 if exchange does not exist should return bindings POST /api/bindings/vhost/e/source/e/destination should create binding should return forbidden for the default exchange POST /api/bindings/vhost/e/exchange/q/queue should create binding should return 404 if exchange does not exist should inform about required fields should return bad request for invalid routing key on consistent hash exchange should return forbidden for the default exchange GET /api/bindings/vhost should return all bindings for a vhost GET /api/bindings/vhost/e/source/e/destination/props should return binding DELETE /api/bindings/vhost/e/exchange/q/queue/props should delete binding #stream changes delivers and acks outstanding data, then shuts down cleanly Publish Confirm Persistence confirms are still received by the client confirms a single publish quickly (no batching delay) nacks rejected publishes and acks the accepted ones correctly acknowledges multiple messages with one ack frame runtime sync-mode flip (regression for #2078) keeps confirming when sync is enabled mid-stream keeps confirming when sync is disabled mid-stream batches concurrent in-flight publishes into multi-acks confirms immediately when sync is disabled LavinMQ::HTTP::VHostsController GET /api/vhosts/:vhost should return vhost should return 403 if vhost does not exist PUT /api/vhosts/vhost should only allow administrators to create vhost should update vhost should create a vhost with full permissions to user should create vhost GET /api/vhosts should list vhosts for monitoring users only return vhosts user has access to if mangement tag should return all vhosts DELETE /api/vhosts/:vhost should return 204 when deleting vhost should return 403 when trying to delete non existing vhost should only allow administrators to delete vhost GET /api/vhosts/vhost/permissions should return permissions for vhosts LavinMQ::HTTP::ConsumersController GET /api/consumers should return all consumers should return empty array if no consumers GET /api/consumers/vhost should return all consumers for a vhost GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) GC Warning: Finalization cycle involving (???) should return empty array if no consumers DELETE /api/consumers/vhost/connection/channel/consumer should return 204 when successful should return 404 if consumer does not exist should return 404 if connection does not exist should return 404 if channel does not exist LavinMQ::Server unexpected frames closes the connection with unexpected frame for heartbeat on non-zero channel frame_max should not allow client to send a frame larger than the negotiated frame_max should allow client to set frame_max to zero (unlimited) if the server has no limit should not allow client to set frame_max to zero (unlimited) if the server has a limit should not accept a frame_max from the client lower than the server config channel_max should allow client to create 'unlimited' channels if the server has no limit should not allow client to set channel_max to zero (unlimited) if the server has a limit should not accept a channel_max from the client lower than the server config should not allow client to create more channels than the negotiated max should allow client to set channel_max to zero (unlimited) if the server has no limit channel close does not close the connection for a settlement frame on an already-closed channel does not close the connection for a settlement frame on a never-opened channel does not close the connection for frames on a channel waiting for close-ok invalid frame end should respond with frame error when routing key exceeds 255 bytes LavinMQ::Auth::JWT::TokenVerifier #validate_audience rejects mismatched audience rejects tokens without audience claim accepts matching audience in array uses resource_server_id as audience when oauth_audience is nil accepts matching string audience rejects audience when no expected audience is configured #validate_issuer rejects missing issuer accepts matching issuer with trailing slash difference rejects mismatched issuer #prevalidate_token (via verify_token) nbf claim validation (RFC 7519 Section 4.1.5) rejects tokens with nbf in the future token format validation rejects tokens that don't start with 'ey' rejects tokens with less than 3 parts rejects tokens with invalid base64url encoding rejects tokens with more than 3 parts exp claim validation rejects expired tokens rejects tokens expiring exactly now rejects tokens without exp claim iat claim validation rejects tokens with iat in the future algorithm validation rejects tokens with HS256 algorithm rejects tokens with 'none' algorithm (algorithm confusion attack) rejects tokens with RS384 algorithm LavinMQ::Auth::JWT::JWKSFetcher #fetch_jwks alg filtering excludes RSA signing keys with a non-RS256 alg includes RSA signing keys with alg RS256 includes RSA signing keys with no alg param LavinMQ::MessageStore deletes unused segments on startup when multiple 'empty' segments exist after crash with fully acked segment handles orphaned ack positions without crashing when opened as non-durable logs when pruning orphaned ack positions deletes leftover tmp.acks.* files in the data dir does not raise EOF when ack file has orphaned positions past data does not raise EOF when rfile.pos is at end when open_new_segment fires prunes orphaned acks across multiple segments when all positions are orphaned #purge_all leaves @size == 0 when deleted segments contain partial acks does not raise when an older segment has in-flight messages shift? from @requeued keeps @size consistent when the segment is gone does not raise when @requeued sp points to a missing segment does not raise when @requeued points to a segment that gets deleted deletes orphaned ack files when non-durable #push should not raise when rolling over on new wfile can ack messages after restart #empty? should be false after push should be true after all messages has been shifted should be true for a fresh store #empty should be true after all messages has been shifted should be false after requeue should be true after purge_all should be true after last message has been purged should be false on after a push to a new store should be false after push to an empty store should be true for a new store #shift? should return nil from empty segment #first? should return nil from empty segment closes gracefully when segment has corrupt schema version with replicator closes gracefully when a middle segment is corrupt with replicator replication registers all files when the middle segment is corrupt deletes fully-acked segments from the replicator on startup registers existing segment files on startup registers the initial segment file registers ack files from all segments on normal startup deletes orphaned ack file and registers valid ack files when a segment is corrupt deletes orphaned ack files from the replicator on startup registers all files when the last segment is corrupt replicates the rewritten ack file after pruning orphans re-registers files without an MFile reference when closed does not register orphaned ack files registers all files when the first segment is corrupt registers ack files on startup advances @rfile when delete_unused_segments removes the rfile's segment when durable #empty? should be false after push should be true after all messages has been shifted should be true for a fresh store #shift? should return nil from empty segment #push should not raise when rolling over on new wfile #first? should return nil from empty segment can ack messages after restart #empty should be true after purge_all should be false after requeue should be true for a new store should be false on after a push to a new store should be true after last message has been purged should be true after all messages has been shifted should be false after push to an empty store LavinMQ::AMQP::Exchange should handle CC in header should raise if BCC header isn't array should read both CC and BCC should raise if CC header isn't array should handle BCC in header LavinMQ::AMQP::ArgumentValidator::BoolValidator #validate! rejects integer values rejects string values accepts false accepts true rejects integer zero allows nil values LavinMQ::VHost GC segments AMQ::Protocol::Table can be encoded and decoded AMQ::Protocol::Properties can be encoded and decoded LavinMQ::Auth::Context basic initialization defaults to non-loopback stores username, password, and loopback flag initialization with Socket::Address detects non-loopback for nil address detects loopback for Socket::UNIXAddress detects loopback for Socket::IPAddress with 127.0.0.1 detects non-loopback for Socket::IPAddress with non-loopback address detects loopback for Socket::IPAddress with ::1 unsubscribe must contain at least one topic filter [MQTT-3.10.3-2] bits 3,2,1,0 must be set to 0,0,1,0 [MQTT-3.10.1-1] must stop adding any new messages for delivery to the Client, but completes delivery of previous messages [MQTT-3.10.4-2] and [MQTT-3.10.4-3] #already_synced resets to a fresh empty hash once the last file catches up drops a file's entry once an append reaches its baseline counts appends below the captured baseline as fully synced returns the synced head size for an append straddling the baseline rate-history log visibility GET /api/channels/:name includes the rate log (detail page renders the chart) GET /api/connections/:name includes the rate log GET /api/connections omits the rate log, keeps the current rate GET /api/channels omits the rate log, keeps the current rate LavinMQ::Clustering::Checksums keeps persisting via append after a store rewrite persists and restores the covered size persists an appended hash immediately, before any store/close restores appended hashes once, then discards them (one-shot) keeps covered sizes across a store rewrite drops old-format entries without a covered size on restore rewrites a clean snapshot on store Pending: LavinMQ::Server UNIX Sockets can accept UNIX socket connections LavinMQ::AMQP::Queue MessageStore should not ack 'empty' msg if mfile.size is too big OpenSSL::SSL::Socket kTLS status engages kTLS on sockets when ENABLE_KTLS option is set LavinMQ::Etcd learns new cluster endpoints Queue Dead Lettering Header Validation dead_letter_headers_BCC Queue Dead Lettering Header Validation dead_letter_headers_first_death_route (REQUIRES x-match = all-with-x) Queue Dead Lettering Header Validation dead_letter_headers_should_not_be_appended_for_republish Queue Dead Lettering Complex Rejection Scenarios dead_letter_max_length_reject_publish_dlx LavinMQ random disconnects LavinMQ::VHost GC segments Finished in 3:22 minutes 2031 examples, 0 failures, 0 errors, 10 pending Randomized with seed: 62911 + RPM_EC=0 ++ jobs -p + exit 0 Processing files: lavinmq-2.9.2-1.fc44.x86_64 Executing(%doc): /bin/sh -e /var/tmp/rpm-tmp.PeBXkD + umask 022 + cd /builddir/build/BUILD/lavinmq-2.9.2-build + cd lavinmq-2.9.2 + DOCDIR=/builddir/build/BUILD/lavinmq-2.9.2-build/BUILDROOT/usr/share/doc/lavinmq + export LC_ALL=C.UTF-8 + LC_ALL=C.UTF-8 + export DOCDIR + /usr/bin/mkdir -p /builddir/build/BUILD/lavinmq-2.9.2-build/BUILDROOT/usr/share/doc/lavinmq + cp -pr /builddir/build/BUILD/lavinmq-2.9.2-build/lavinmq-2.9.2/README.md /builddir/build/BUILD/lavinmq-2.9.2-build/BUILDROOT/usr/share/doc/lavinmq + cp -pr /builddir/build/BUILD/lavinmq-2.9.2-build/lavinmq-2.9.2/NOTICE /builddir/build/BUILD/lavinmq-2.9.2-build/BUILDROOT/usr/share/doc/lavinmq + cp -pr /builddir/build/BUILD/lavinmq-2.9.2-build/lavinmq-2.9.2/CHANGELOG.md /builddir/build/BUILD/lavinmq-2.9.2-build/BUILDROOT/usr/share/doc/lavinmq + RPM_EC=0 ++ jobs -p + exit 0 Executing(%license): /bin/sh -e /var/tmp/rpm-tmp.YKfkiA + umask 022 + cd /builddir/build/BUILD/lavinmq-2.9.2-build + cd lavinmq-2.9.2 + LICENSEDIR=/builddir/build/BUILD/lavinmq-2.9.2-build/BUILDROOT/usr/share/licenses/lavinmq + export LC_ALL=C.UTF-8 + LC_ALL=C.UTF-8 + export LICENSEDIR + /usr/bin/mkdir -p /builddir/build/BUILD/lavinmq-2.9.2-build/BUILDROOT/usr/share/licenses/lavinmq + cp -pr /builddir/build/BUILD/lavinmq-2.9.2-build/lavinmq-2.9.2/LICENSE /builddir/build/BUILD/lavinmq-2.9.2-build/BUILDROOT/usr/share/licenses/lavinmq + RPM_EC=0 ++ jobs -p + exit 0 Provides: config(lavinmq) = 2.9.2-1.fc44 group(lavinmq) lavinmq = 2.9.2-1.fc44 lavinmq(x86-64) = 2.9.2-1.fc44 user(lavinmq) = dSBsYXZpbm1xIC0gIkxhdmluTVEgbWVzc2FnZSBicm9rZXIiIC92YXIvbGliL2xhdmlubXEA Requires(interp): /bin/sh /bin/sh /bin/sh Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 Requires(pre): group(lavinmq) user(lavinmq) Requires(post): /bin/sh Requires(preun): /bin/sh Requires(postun): /bin/sh group(lavinmq) user(lavinmq) Requires: ld-linux-x86-64.so.2()(64bit) ld-linux-x86-64.so.2(GLIBC_2.3)(64bit) libc.so.6()(64bit) libc.so.6(GLIBC_2.10)(64bit) libc.so.6(GLIBC_2.11)(64bit) libc.so.6(GLIBC_2.14)(64bit) libc.so.6(GLIBC_2.17)(64bit) libc.so.6(GLIBC_2.2.5)(64bit) libc.so.6(GLIBC_2.25)(64bit) libc.so.6(GLIBC_2.3)(64bit) libc.so.6(GLIBC_2.3.2)(64bit) libc.so.6(GLIBC_2.3.4)(64bit) libc.so.6(GLIBC_2.32)(64bit) libc.so.6(GLIBC_2.33)(64bit) libc.so.6(GLIBC_2.34)(64bit) libc.so.6(GLIBC_2.6)(64bit) libc.so.6(GLIBC_2.7)(64bit) libc.so.6(GLIBC_2.8)(64bit) libc.so.6(GLIBC_2.9)(64bit) libc.so.6(GLIBC_ABI_DT_RELR)(64bit) libcrypto.so.3()(64bit) libcrypto.so.3(OPENSSL_3.0.0)(64bit) libgc.so.1()(64bit) libgcc_s.so.1()(64bit) libgcc_s.so.1(GCC_3.0)(64bit) libgcc_s.so.1(GCC_3.3)(64bit) liblz4.so.1()(64bit) libm.so.6()(64bit) libm.so.6(GLIBC_2.2.5)(64bit) libm.so.6(GLIBC_2.29)(64bit) libpcre2-8.so.0()(64bit) libpcre2-8.so.0(PCRE2_10.47)(64bit) libssl.so.3()(64bit) libssl.so.3(OPENSSL_3.0.0)(64bit) libz.so.1()(64bit) rtld(GNU_HASH) Processing files: lavinmq-debugsource-2.9.2-1.fc44.x86_64 Provides: lavinmq-debugsource = 2.9.2-1.fc44 lavinmq-debugsource(x86-64) = 2.9.2-1.fc44 Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 Processing files: lavinmq-debuginfo-2.9.2-1.fc44.x86_64 Provides: debuginfo(build-id) = 32b6685741ba19935a0b70ce2ff49e319cc1eb07 debuginfo(build-id) = e334a80c9778238fbc3b0817a27a8416622fa1a8 debuginfo(build-id) = ee22c0696061c810d833d01c284a670630116447 lavinmq-debuginfo = 2.9.2-1.fc44 lavinmq-debuginfo(x86-64) = 2.9.2-1.fc44 Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 Recommends: lavinmq-debugsource(x86-64) = 2.9.2-1.fc44 Checking for unpackaged file(s): /usr/lib/rpm/check-files /builddir/build/BUILD/lavinmq-2.9.2-build/BUILDROOT Wrote: /builddir/build/RPMS/lavinmq-debugsource-2.9.2-1.fc44.x86_64.rpm Wrote: /builddir/build/RPMS/lavinmq-2.9.2-1.fc44.x86_64.rpm Wrote: /builddir/build/RPMS/lavinmq-debuginfo-2.9.2-1.fc44.x86_64.rpm Executing(rmbuild): /bin/sh -e /var/tmp/rpm-tmp.QoNS3A + umask 022 + cd /builddir/build/BUILD/lavinmq-2.9.2-build + test -d /builddir/build/BUILD/lavinmq-2.9.2-build + /usr/bin/chmod -Rf a+rX,u+w,g-w,o-w /builddir/build/BUILD/lavinmq-2.9.2-build + rm -rf /builddir/build/BUILD/lavinmq-2.9.2-build + RPM_EC=0 ++ jobs -p + exit 0 Finish: rpmbuild lavinmq-2.9.2-1.fc44.src.rpm Finish: build phase for lavinmq-2.9.2-1.fc44.src.rpm INFO: chroot_scan: 1 files copied to /var/lib/copr-rpmbuild/results/chroot_scan INFO: /var/lib/mock/fedora-44-x86_64-1787310998.564044/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/lavinmq-2.9.2-1.fc44.src.rpm) Config(child) 6 minutes 1 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": "lavinmq", "epoch": null, "version": "2.9.2", "release": "1.fc44", "arch": "x86_64" }, { "name": "lavinmq-debugsource", "epoch": null, "version": "2.9.2", "release": "1.fc44", "arch": "x86_64" }, { "name": "lavinmq-debuginfo", "epoch": null, "version": "2.9.2", "release": "1.fc44", "arch": "x86_64" }, { "name": "lavinmq", "epoch": null, "version": "2.9.2", "release": "1.fc44", "arch": "src" } ] } RPMResults finished