diff --git a/.gitignore b/.gitignore index 1429bce..a7a581a 100644 --- a/.gitignore +++ b/.gitignore @@ -9,3 +9,7 @@ /cramjam-61564e7761e38e5ec55e7939ccd6a276c2c55d11-filtered.tar.gz /cramjam-cdc7d307d0f592f89b3319a7037fd875a5371ef3-filtered.tar.gz /cramjam-2.10.0rc1.tar.gz +/cramjam-2.10.0.tar.gz +/cramjam-2.11.0rc2.tar.gz +/cramjam-2.11.0rc3.tar.gz +/cramjam-2.11.0.tar.gz diff --git a/python-cramjam.spec b/python-cramjam.spec index 4919113..cb1b1c2 100644 --- a/python-cramjam.spec +++ b/python-cramjam.spec @@ -4,7 +4,7 @@ #global snapdate YYYYMMDD Name: python-cramjam -Version: 2.10.0~rc1 +Version: 2.11.0 Release: %autorelease Summary: Thin Python bindings to de/compression algorithms in Rust @@ -33,8 +33,10 @@ Source1: get_source %endif -BuildRequires: python3-devel -BuildRequires: tomcli +BuildSystem: pyproject +BuildOption(install): -l cramjam + +BuildRequires: tomcli >= 0.8.0 BuildRequires: cargo-rpm-macros >= 24 %if %{with tests} @@ -42,7 +44,6 @@ BuildRequires: cargo-rpm-macros >= 24 # dev extra in pyproject.toml. BuildRequires: %{py3_dist numpy} BuildRequires: %{py3_dist pytest} -BuildRequires: %{py3_dist pytest-xdist} BuildRequires: %{py3_dist hypothesis} %endif @@ -56,7 +57,6 @@ BuildRequires: %{py3_dist hypothesis} Summary: %{summary} # 0BSD OR MIT OR Apache-2.0 # Apache-2.0 -# Apache-2.0 OR MIT # BSD-3-Clause # BSD-3-Clause AND MIT # MIT @@ -74,9 +74,7 @@ License: %{shrink: %description -n python3-cramjam %{common_description} -%prep -%autosetup -n cramjam-%{srcversion} - +%prep -a # Downstream-only: patch out the generate-import-lib feature, which is only # relevant on Windows, and which depends on the corresponding pyo3 feature – # which is not packaged for that reason. @@ -91,9 +89,7 @@ tomcli set Cargo.toml del 'features.wasm32-compat' # extension with the default features, and we only want maturin to check # dependencies for those features. blosc2_isal_features="$( - # Once EPEL10 has tomcli>=0.8.0, we can use (without sed): - # tomcli get Cargo.toml features -F newline-keys - tomcli get Cargo.toml features -F toml | sed -r 's/ = .*//' | + tomcli get Cargo.toml features -F newline-keys | grep -E 'blosc2|ideflate|igzip|isal|izlib' | tr '\n' ' ' )" @@ -105,9 +101,7 @@ done # Downstream-only: remove all the static-linking features, and make the # dynamic-linking ones default, as we do in rust-libcramjam. static_features="$( - # Once EPEL10 has tomcli>=0.8.0, we can use (without sed): - # tomcli get Cargo.toml features -F newline-keys - tomcli get Cargo.toml features -F toml | sed -r 's/ = .*//' | + tomcli get Cargo.toml features -F newline-keys | grep -E '.-static$' | tr '\n' ' ' )" @@ -125,27 +119,17 @@ done %cargo_prep -%generate_buildrequires -%pyproject_buildrequires +%generate_buildrequires -a %cargo_generate_buildrequires -%build -export RUSTFLAGS='%{build_rustflags}' +%build -p %cargo_license_summary %{cargo_license} > LICENSES.dependencies -%pyproject_wheel -%install -%pyproject_install -%pyproject_save_files cramjam - - -%check -%pyproject_check_import +%check -a %if %{with tests} -%if %{undefined el10} # Test failures in test_variants_decompress_into with recent hypothesis # versions: https://github.com/milesgranger/cramjam/issues/201 # @@ -155,14 +139,17 @@ export RUSTFLAGS='%{build_rustflags}' # not reason to believe that the package has *new* problems. It *might* have # newly *revealed* problems. This merits further investigation. k="${k-}${k+ and }not test_variants_decompress_into" -%endif -%pytest -k "${k-}" --ignore=benchmarks/test_bench.py -v -n auto +# Regression with miniz_oxide>0.8.5 +# https://github.com/milesgranger/cramjam/issues/211 +# Failed: DID NOT RAISE +k="${k-}${k+ and }not test_variants_raise_exception[deflate]" + +%pytest -k "${k-}" --ignore=benchmarks/test_bench.py -v %endif %files -n python3-cramjam -f %{pyproject_files} -%license LICENSE LICENSES.dependencies %doc README.md diff --git a/sources b/sources index c425e36..9b98da9 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (cramjam-2.10.0rc1.tar.gz) = b1aa5481d0c4d0c44389f20bc2933d8b6979636dfaf2aca1ef83abb462134f2ab421993a5730471b58b49e55614100bb8279916ed68f4a7477453b82407a7c0a +SHA512 (cramjam-2.11.0.tar.gz) = d92446c0c0ef885f3544783caa1f179fd50b6a6290ada011495b7385411527f75a2544c0c8cdc36910c83c879dbac7dd130f4fe8f3dc3b885a84a45286cb3695