%bcond check 1 Name: cargo-nextest Version: 0.9.138 Release: 1%{?dist} Summary: A next-generation test runner for Rust # Cumulative SPDX over cargo-nextest and every statically-linked crate. License: ((MIT OR Apache-2.0) AND Unicode-3.0) AND ((MIT OR Apache-2.0) AND Unicode-DFS-2016) AND (0BSD OR MIT OR Apache-2.0) AND Apache-2.0 AND (Apache-2.0 OR BSL-1.0 OR MIT) AND (Apache-2.0 OR ISC OR MIT) AND (Apache-2.0 OR MIT) AND (Apache-2.0 WITH LLVM-exception) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND (BSD-2-Clause OR Apache-2.0 OR MIT) AND BSD-3-Clause AND BSL-1.0 AND (CC0-1.0 OR MIT-0 OR Apache-2.0) AND ISC AND (ISC AND (Apache-2.0 OR ISC)) AND (ISC AND (Apache-2.0 OR ISC) AND Apache-2.0 AND MIT AND BSD-3-Clause AND (Apache-2.0 OR ISC OR MIT) AND (Apache-2.0 OR ISC OR MIT-0)) AND MIT AND (MIT AND Unicode-DFS-2016) AND (MIT OR Apache-2.0) AND (MIT OR Apache-2.0 OR LGPL-2.1-or-later) AND (MIT OR Apache-2.0 OR Zlib) AND (MIT OR Zlib OR Apache-2.0) AND MPL-2.0 AND (Unlicense OR MIT) AND WTFPL AND Zlib AND (Zlib OR Apache-2.0 OR MIT) URL: https://github.com/nextest-rs/nextest # The repo is "nextest"; releases are tagged cargo-nextest-, so the # archive's top dir is nextest-cargo-nextest- (see %%autosetup -n). Source0: %{url}/archive/refs/tags/%{name}-%{version}/%{name}-%{version}.tar.gz Source1: %{name}-%{version}-vendor.tar.xz # Hand-written: upstream ships no completions (cargo-nextest has no completion # generator). Source2: _%{name} ExclusiveArch: %{rust_arches} BuildRequires: cargo-rpm-macros >= 24 # Vendoring turns off %%cargo_generate_buildrequires. The workspace-hack crate # unifies rustls into the binary, pulling aws-lc-sys (cmake + a C compiler) and # zstd-sys (bundled C); gcc covers the final link too. BuildRequires: gcc BuildRequires: cmake %description A next-generation test runner for Rust. nextest runs each test in its own process, reports failures as it goes, and supports test partitioning, retries, and JUnit output. %prep %autosetup -n nextest-%{name}-%{version} -p1 tar -xJf %{SOURCE1} %cargo_prep -v vendor %build # Build only the cargo-nextest binary with the self-updater disabled: the # default build embeds an in-place updater unsuitable for a distro package. # Upstream's own note requires `-p cargo-nextest` so feature unification keeps # self-update off (see cargo-nextest's workspace Cargo.toml). %cargo_build -n -f default-no-update -- -p %{name} %{cargo_vendor_manifest} %install install -Dpm0755 target/rpm/%{name} %{buildroot}%{_bindir}/%{name} install -Dpm0644 %{SOURCE2} %{buildroot}%{zsh_completions_dir}/_%{name} %check %if %{with check} # The test suite is an integration harness that re-invokes cargo against fixture # workspaces and assumes a cargo dev layout, so smoke-test the installed binary. # cargo-nextest is a cargo subcommand: it expects `nextest` as its first arg. %{buildroot}%{_bindir}/%{name} nextest --version %endif %files %license LICENSE-APACHE %license LICENSE-MIT %license cargo-vendor.txt %doc README.md %{_bindir}/%{name} %{zsh_completions_dir}/_%{name} %changelog * Thu Jun 25 2026 Bahtiar `kalkin-` Gadimov - 0.9.138-1 - Initial package