diff --git a/.gitignore b/.gitignore index bf58a18..491af0b 100644 --- a/.gitignore +++ b/.gitignore @@ -61,3 +61,5 @@ /stratisd-3.6.2.tar.gz /stratisd-3.6.2-vendor.tar.gz /stratisd-3.6.2.crate +/stratisd-3.6.7.tar.gz +/stratisd-3.6.7-vendor.tar.gz diff --git a/sources b/sources index 9b8f958..0aee0bf 100644 --- a/sources +++ b/sources @@ -1,3 +1,2 @@ -SHA512 (stratisd-3.6.2.tar.gz) = 1c79bf901e847e70bd107376ce7de251f60a677e18cd61122198e2e59244860f66c4186e1a3b50efd4f588b8a183cf9112ce5725b274e2b6a2bde6bcbf9f2aa0 -SHA512 (stratisd-3.6.2-vendor.tar.gz) = a444ba1010957fb0628fe563adc30e9d28ee8e97a93b8238550dcd6881153328919e61891319d91b97660a0446c406ce775008ccfc5f05f2e787be4498a29b5d -SHA512 (stratisd-3.6.2.crate) = cc7ca8d4370ab9678f7f6da3c03e1732cbabc1468452d6dd72e9d304baae2b0fbb5988d0bc1d97aa067a34787fcaeb1262827c413af1ddfc8893d8d677d5d46d +SHA512 (stratisd-3.6.7.tar.gz) = 613f5b191c9cec3a857e05d544600c974d024afc6274c7a4c0d8f24e52a7c4609becbdf4b991764318a773ac2dbe9ab55cc71aef8dc29171621449465311f74e +SHA512 (stratisd-3.6.7-vendor.tar.gz) = ab6fb63170722c10fdc1f289828cecca04900102fccffa006399ab417bf54af70e3007b743bc1fa0933b81d614c565935669444717375afe4b4bfb57cd222370 diff --git a/stratisd.spec b/stratisd.spec index 4ac0fe8..ef2e52d 100644 --- a/stratisd.spec +++ b/stratisd.spec @@ -4,7 +4,7 @@ %global dracutdir %(pkg-config --variable=dracutdir dracut) Name: stratisd -Version: 3.6.2 +Version: 3.6.7 Release: 1%{?dist} Summary: Daemon that manages block devices to create filesystems @@ -12,7 +12,6 @@ License: MPL-2.0 URL: https://github.com/stratis-storage/stratisd Source0: %{url}/archive/stratisd-v%{version}/%{name}-%{version}.tar.gz Source1: %{url}/releases/download/stratisd-v%{version}/%{name}-%{version}-vendor.tar.gz -Source2: %{crates_source} ExclusiveArch: %{rust_arches} @@ -53,15 +52,15 @@ Requires: libblkid Recommends: clevis-luks >= 18 Provides: bundled(crate(aho-corasick)) = 1.0.2 +Provides: bundled(crate(anstream)) = 0.6.13 Provides: bundled(crate(anstream)) = 0.3.2 -Provides: bundled(crate(anstyle)) = 1.0.1 +Provides: bundled(crate(anstyle)) = 1.0.6 Provides: bundled(crate(anstyle-parse)) = 0.2.1 Provides: bundled(crate(anstyle-query)) = 1.0.0 Provides: bundled(crate(assert_cmd)) = 2.0.11 Provides: bundled(crate(assert_matches)) = 1.5.0 Provides: bundled(crate(async-trait)) = 0.1.68 Provides: bundled(crate(autocfg)) = 1.1.0 -Provides: bundled(crate(bindgen)) = 0.59.2 Provides: bundled(crate(bit-set)) = 0.5.3 Provides: bundled(crate(bit-vec)) = 0.6.3 Provides: bundled(crate(bitflags)) = 2.4.0 @@ -73,6 +72,7 @@ Provides: bundled(crate(cc)) = 1.0.79 Provides: bundled(crate(cexpr)) = 0.6.0 Provides: bundled(crate(cfg-if)) = 1.0.0 Provides: bundled(crate(cfg-if)) = 0.1.10 +Provides: bundled(crate(cfg_aliases)) = 0.1.1 Provides: bundled(crate(chrono)) = 0.4.26 Provides: bundled(crate(clang-sys)) = 1.6.1 Provides: bundled(crate(clap)) = 4.3.5 @@ -86,15 +86,15 @@ Provides: bundled(crate(crypto-common)) = 0.1.6 Provides: bundled(crate(data-encoding)) = 2.4.0 Provides: bundled(crate(dbus)) = 0.9.7 Provides: bundled(crate(dbus-tree)) = 0.9.2 -Provides: bundled(crate(devicemapper)) = 0.34.0 -Provides: bundled(crate(devicemapper-sys)) = 0.2.0 +Provides: bundled(crate(devicemapper)) = 0.34.2 +Provides: bundled(crate(devicemapper-sys)) = 0.3.0 Provides: bundled(crate(difflib)) = 0.4.0 Provides: bundled(crate(digest)) = 0.10.7 Provides: bundled(crate(doc-comment)) = 0.3.3 Provides: bundled(crate(either)) = 1.8.1 -Provides: bundled(crate(env_logger)) = 0.10.0 +Provides: bundled(crate(env_filter)) = 0.1.0 +Provides: bundled(crate(env_logger)) = 0.11.2 Provides: bundled(crate(errno)) = 0.3.1 -Provides: bundled(crate(errno)) = 0.2.8 Provides: bundled(crate(fastrand)) = 1.9.0 Provides: bundled(crate(float-cmp)) = 0.9.0 Provides: bundled(crate(futures)) = 0.3.28 @@ -114,16 +114,16 @@ Provides: bundled(crate(iana-time-zone)) = 0.1.57 Provides: bundled(crate(io-lifetimes)) = 1.0.11 Provides: bundled(crate(iocuddle)) = 0.1.1 Provides: bundled(crate(is-terminal)) = 0.4.7 -Provides: bundled(crate(itertools)) = 0.11.0 +Provides: bundled(crate(itertools)) = 0.12.0 Provides: bundled(crate(itertools)) = 0.10.5 Provides: bundled(crate(itoa)) = 1.0.6 Provides: bundled(crate(lazy_static)) = 1.4.0 Provides: bundled(crate(lazycell)) = 1.3.0 -Provides: bundled(crate(libblkid-rs)) = 0.3.1 -Provides: bundled(crate(libblkid-rs-sys)) = 0.2.0 -Provides: bundled(crate(libc)) = 0.2.149 -Provides: bundled(crate(libcryptsetup-rs)) = 0.9.1 -Provides: bundled(crate(libcryptsetup-rs-sys)) = 0.3.0 +Provides: bundled(crate(libblkid-rs)) = 0.3.2 +Provides: bundled(crate(libblkid-rs-sys)) = 0.3.0 +Provides: bundled(crate(libc)) = 0.2.153 +Provides: bundled(crate(libcryptsetup-rs)) = 0.9.3 +Provides: bundled(crate(libcryptsetup-rs-sys)) = 0.4.0 Provides: bundled(crate(libdbus-sys)) = 0.2.5 Provides: bundled(crate(libloading)) = 0.7.4 Provides: bundled(crate(libm)) = 0.2.7 @@ -132,19 +132,18 @@ Provides: bundled(crate(libudev)) = 0.3.0 Provides: bundled(crate(libudev-sys)) = 0.1.4 Provides: bundled(crate(linux-raw-sys)) = 0.3.8 Provides: bundled(crate(log)) = 0.4.19 -Provides: bundled(crate(loopdev)) = 0.4.0 +Provides: bundled(crate(loopdev-3)) = 0.5.1 Provides: bundled(crate(memchr)) = 2.5.0 -Provides: bundled(crate(memoffset)) = 0.7.1 +Provides: bundled(crate(memoffset)) = 0.9.0 Provides: bundled(crate(minimal-lexical)) = 0.2.1 -Provides: bundled(crate(mio)) = 0.8.8 -Provides: bundled(crate(nix)) = 0.26.2 +Provides: bundled(crate(mio)) = 0.8.11 +Provides: bundled(crate(nix)) = 0.28.0 Provides: bundled(crate(nix)) = 0.14.1 Provides: bundled(crate(nom)) = 7.1.3 Provides: bundled(crate(normalize-line-endings)) = 0.3.0 Provides: bundled(crate(num-traits)) = 0.2.15 Provides: bundled(crate(num_cpus)) = 1.15.0 -Provides: bundled(crate(once_cell)) = 1.18.0 -Provides: bundled(crate(peeking_take_while)) = 0.1.2 +Provides: bundled(crate(once_cell)) = 1.19.0 Provides: bundled(crate(pin-project-lite)) = 0.2.9 Provides: bundled(crate(pin-utils)) = 0.1.0 Provides: bundled(crate(pkg-config)) = 0.3.27 @@ -152,7 +151,7 @@ Provides: bundled(crate(ppv-lite86)) = 0.2.17 Provides: bundled(crate(predicates)) = 3.0.3 Provides: bundled(crate(predicates-core)) = 1.0.6 Provides: bundled(crate(predicates-tree)) = 1.0.9 -Provides: bundled(crate(pretty-hex)) = 0.3.0 +Provides: bundled(crate(pretty-hex)) = 0.4.1 Provides: bundled(crate(proc-macro2)) = 1.0.66 Provides: bundled(crate(proptest)) = 1.2.0 Provides: bundled(crate(quick-error)) = 1.2.3 @@ -165,7 +164,7 @@ Provides: bundled(crate(regex)) = 1.8.4 Provides: bundled(crate(regex-automata)) = 0.1.10 Provides: bundled(crate(regex-syntax)) = 0.7.2 Provides: bundled(crate(regex-syntax)) = 0.6.29 -Provides: bundled(crate(retry)) = 1.3.1 +Provides: bundled(crate(retry)) = 2.0.0 Provides: bundled(crate(rustc-hash)) = 1.1.0 Provides: bundled(crate(rustix)) = 0.37.25 Provides: bundled(crate(rusty-fork)) = 0.3.0 @@ -175,17 +174,14 @@ Provides: bundled(crate(serde)) = 1.0.188 Provides: bundled(crate(serde_derive)) = 1.0.188 Provides: bundled(crate(serde_json)) = 1.0.97 Provides: bundled(crate(sha2)) = 0.10.7 -Provides: bundled(crate(shlex)) = 1.1.0 +Provides: bundled(crate(shlex)) = 1.3.0 Provides: bundled(crate(signal-hook-registry)) = 1.4.1 Provides: bundled(crate(slab)) = 0.4.8 Provides: bundled(crate(socket2)) = 0.4.9 -Provides: bundled(crate(static_assertions)) = 1.1.0 -Provides: bundled(crate(stratisd_proc_macros)) = 0.2.1 Provides: bundled(crate(strsim)) = 0.10.0 Provides: bundled(crate(syn)) = 2.0.29 Provides: bundled(crate(syn)) = 1.0.109 Provides: bundled(crate(tempfile)) = 3.6.0 -Provides: bundled(crate(termcolor)) = 1.2.0 Provides: bundled(crate(termios)) = 0.3.3 Provides: bundled(crate(termtree)) = 0.4.1 Provides: bundled(crate(tokio)) = 1.28.2 @@ -231,24 +227,11 @@ Requires: stratisd %{summary}. %prep -# Rename SOURCE0's top-level directory because it starts with -# stratisd-stratisd-v. GitHub calculates the directory name from the repo name -# + the tag. Extract the upstream crate on top of the extracted GitHub release, -# overwriting changed files. The primary purpose of this step is to ensure that -# the Cargo.toml that is used in building is the one that is generated by -# cargo-publish and cargo-package, not the file with path dependencies that -# GitHub packs up. Tar the overwritten files back up again into a tar file -# with the format and top-level directory that %setup expects cleaning up the -# previously extracted directory and its contents at the same time. Move the -# newly created tar file to the SOURCE0 location. -tar --transform="s/^stratisd\-stratisd-v/stratisd-/" --extract --file %{SOURCE0} -tar --directory=./stratisd-%{version} --strip-components=1 --extract --overwrite --file %{SOURCE2} -tar --create --gzip --file %{SOURCE0}.newfile ./stratisd-%{version} --remove-files -mv %{SOURCE0}.newfile %{SOURCE0} +%autosetup -n stratisd-stratisd-v%{version} %{?rhel:-a1} -%setup -q - -%if 0%{?rhel} +%if 0%{?rhel} >= 10 +%cargo_prep -v vendor +%elif 0%{?rhel} && 0%{?rhel} < 10 %cargo_prep -V 1 %else %cargo_prep @@ -257,34 +240,34 @@ mv %{SOURCE0}.newfile %{SOURCE0} %endif %build -%if 0%{?rhel} +%if 0%{?rhel} && 0%{?rhel} < 10 %{__cargo} build %{?_smp_mflags} --release --bin=stratisd %{__cargo} build %{?_smp_mflags} --release --bin=stratis-min --bin=stratisd-min --bin=stratis-utils --no-default-features --features engine,min,systemd_compat %{__cargo} rustc %{?_smp_mflags} --release --bin=stratis-str-cmp --no-default-features --features udev_scripts -- -Ctarget-feature=+crt-static %{__cargo} rustc %{?_smp_mflags} --release --bin=stratis-base32-decode --no-default-features --features udev_scripts -- -Ctarget-feature=+crt-static -%{__cargo} build %{?_smp_mflags} --release --bin=stratis-dumpmetadata --no-default-features --features engine,extras,min +%{__cargo} build %{?_smp_mflags} --release --bin=stratisd-tools --no-default-features --features engine,extras,min %else %{cargo_license -f engine,dbus_enabled,min,systemd_compat,extras,udev_scripts} > LICENSE.dependencies %{__cargo} build %{?__cargo_common_opts} --release --bin=stratisd %{__cargo} build %{?__cargo_common_opts} --release --bin=stratis-min --bin=stratisd-min --bin=stratis-utils --no-default-features --features engine,min,systemd_compat %{__cargo} rustc %{?__cargo_common_opts} --release --bin=stratis-str-cmp --no-default-features --features udev_scripts -- -Ctarget-feature=+crt-static %{__cargo} rustc %{?__cargo_common_opts} --release --bin=stratis-base32-decode --no-default-features --features udev_scripts -- -Ctarget-feature=+crt-static -%{__cargo} build %{?__cargo_common_opts} --release --bin=stratis-dumpmetadata --no-default-features --features engine,extras,min +%{__cargo} build %{?__cargo_common_opts} --release --bin=stratisd-tools --no-default-features --features engine,extras,min %endif a2x -f manpage docs/stratisd.txt a2x -f manpage docs/stratis-dumpmetadata.txt +%if 0%{?rhel} >= 10 +%{cargo_vendor_manifest} +%endif %install %make_install DRACUTDIR=%{dracutdir} PROFILEDIR=release %if %{with check} %check -# Compile stratisd tests only where package does not use vendoring. -# This is a temporary step, to address the problem of loopdev crate -# 0.4.0 failing to build properly in some situations due to a failure of -# bindgen 0.59.0. -# See https://github.com/stratis-storage/project/issues/607 -%if !0%{?rhel} +%if 0%{?rhel} && 0%{?rhel} < 10 +%cargo_test --no-run +%else %cargo_test -- --no-run %endif %endif @@ -300,10 +283,12 @@ a2x -f manpage docs/stratis-dumpmetadata.txt %files %license LICENSE -%if 0%{?rhel} -%else +%if !(0%{?rhel} && 0%{?rhel} < 10) %license LICENSE.dependencies %endif +%if 0%{?rhel} >= 10 +%license cargo-vendor.txt +%endif %doc README.md %{_libexecdir}/stratisd %dir %{_datadir}/dbus-1 @@ -335,10 +320,15 @@ a2x -f manpage docs/stratis-dumpmetadata.txt %files tools %license LICENSE +%{_bindir}/stratisd-tools %{_bindir}/stratis-dumpmetadata %{_mandir}/man8/stratis-dumpmetadata.8* %changelog +* Wed May 01 2024 Bryan Gurney - 3.6.7-1 +- Update to 3.6.7 +- Resolves: RHEL-34250 + * Mon Nov 20 2023 Bryan Gurney - 3.6.2-1 - Ensure proper alignment of flex devices - Resolves: RHEL-16736