It is required to build python-snappy Reproducible: Always
The good news is that I do plan to build python-cramjam in EPEL10 as soon as that is possible. The not-as-good news is that maturin is needed to build it (bug 2330253), and branching maturin is going to require python-setuptools-rust (bug 2316989). That is currently a buildroot-only package in CentOS and RHEL; the plan is to have it moved to the CRB repo rather than maintaining another potentially divergent copy in EPEL. This is a reasonable plan and reduces the burden on its maintainers, but it also takes longer than simply branching it into EPEL. Please follow bug 2316989 and https://issues.redhat.com/browse/RHEL-66224, and expect things to start moving more steadily once python-setuptools-rust is available.
With maturin being present in epel-testing, the build now goes a but further, we still miss some dependencies: Error: Problem 1: nothing provides requested (crate(libcramjam) >= 0.6.0 with crate(libcramjam) < 0.7.0~) Problem 2: nothing provides requested (crate(libcramjam/blosc2-static) >= 0.6.0 with crate(libcramjam/blosc2-static) < 0.7.0~) Problem 3: nothing provides requested (crate(libcramjam/brotli) >= 0.6.0 with crate(libcramjam/brotli) < 0.7.0~) Problem 4: nothing provides requested (crate(libcramjam/bzip2) >= 0.6.0 with crate(libcramjam/bzip2) < 0.7.0~) Problem 5: nothing provides requested (crate(libcramjam/deflate-static) >= 0.6.0 with crate(libcramjam/deflate-static) < 0.7.0~) Problem 6: nothing provides requested (crate(libcramjam/gzip-static) >= 0.6.0 with crate(libcramjam/gzip-static) < 0.7.0~) Problem 7: nothing provides requested (crate(libcramjam/ideflate-static) >= 0.6.0 with crate(libcramjam/ideflate-static) < 0.7.0~) Problem 8: nothing provides requested (crate(libcramjam/igzip-static) >= 0.6.0 with crate(libcramjam/igzip-static) < 0.7.0~) Problem 9: nothing provides requested (crate(libcramjam/izlib-static) >= 0.6.0 with crate(libcramjam/izlib-static) < 0.7.0~) Problem 10: nothing provides requested (crate(libcramjam/lz4) >= 0.6.0 with crate(libcramjam/lz4) < 0.7.0~) Problem 11: nothing provides requested (crate(libcramjam/snappy) >= 0.6.0 with crate(libcramjam/snappy) < 0.7.0~) Problem 12: nothing provides requested (crate(libcramjam/xz-static) >= 0.6.0 with crate(libcramjam/xz-static) < 0.7.0~) Problem 13: nothing provides requested (crate(libcramjam/zlib-static) >= 0.6.0 with crate(libcramjam/zlib-static) < 0.7.0~) Problem 14: nothing provides requested (crate(libcramjam/zstd) >= 0.6.0 with crate(libcramjam/zstd) < 0.7.0~) (try to add '--skip-broken' to skip uninstallable packages or '--nobest' to use not only best candidate packages)
rust-libcramjam is also maintained by you Ben, so I let you handle this ;)
Yes, this is one of my priorities for the next few weeks, along with preparatory work for Pydantic (like updating and patching dependencies to avoid branching compat packages). Quite a few things will need to be branched to support libcramjam, but I don’t anticipate any serious obstacles now that maturin is available.
Ok, so I’ve requested blosc2 in EPEL10. Support for blosc2 could potentially be disabled in rust-libcramjam, but it affects the experimental API in python-cramjam, and I’d much rather be consistent with Fedora. I’ve also patched rust-libcramjam to use the current rust-cbindgen 0.27 instead of the rust-cbindgen0.24 compat package. Once blosc2 is (hopefully) branched and built, I have the following missing dependency chains leading to rust-libcramjam: - rust-lz4-sys : rust-lz4 - rust-snap - blosc2 : rust-blosc2-sys : rust-blosc2-rs - rust-ctor : rust-blosc2-rs - rust-isal-sys : rust-isal-rs - rust-md5 : rust-isal-rs Except for blosc2, I can easily take care of all of these as a rust-sig member. I’m the primary maintainer for most of them. Here’s a COPR that demonstrates all of this working: https://copr.fedorainfracloud.org/coprs/music/cramjam-epel10/packages/
I’m planning to wait for the next upstream release of python-cramjam[1], which should use rust-libcramjam-0.7.0 and shouldn’t require the blosc2-rs/isal-rs bindings. At least the blosc2-rs bindings have soundness issues, and I’m working toward retiring them in Rawhide and avoiding branching them for EPEL10. I’m sorry if this delays the branching a bit, but I think it’s worth it to avoid branching and supporting crates with soundness issues (and therefore unpredictable stability issues). If this doesn’t seem to happen in a reasonable amount of time, please feel free to come back to this issue and ping me, and I can check on upstream or try to offer a PR to do some of the work needed for the next release. [1] https://github.com/cramjam/libcramjam/pull/22#issuecomment-2587684919
These will still be needed: - rust-lz4-sys : rust-lz4 - rust-snap These should *not* be needed: - blosc2 : rust-blosc2-sys : rust-blosc2-rs - rust-ctor : rust-blosc2-rs - rust-isal-sys : rust-isal-rs - rust-md5 : rust-isal-rs
I just branched and built rust-libcramjam-0.7.0 in EPEL10: https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2025-f4bc67bf27 Now I’m just waiting for a new upstream release of python-cramjam.
This bug appears to have been reported against 'rawhide' during the Fedora Linux 42 development cycle. Changing version to 42.
FEDORA-EPEL-2025-8bbdb59035 (python-cramjam-2.10.0~rc1-3.el10_1 and python-fastavro-1.10.0-2.el10_1) has been submitted as an update to Fedora EPEL 10.1. https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2025-8bbdb59035
FEDORA-EPEL-2025-8bbdb59035 has been pushed to the Fedora EPEL 10.1 testing repository. You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2025-8bbdb59035 See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.
FEDORA-EPEL-2025-a69625be11 has been pushed to the Fedora EPEL 10.0 testing repository. You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2025-a69625be11 See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.
FEDORA-EPEL-2025-8bbdb59035 (python-cramjam-2.10.0~rc1-3.el10_1 and python-fastavro-1.10.0-2.el10_1) has been pushed to the Fedora EPEL 10.1 stable repository. If problem still persists, please make note of it in this bug report.
FEDORA-EPEL-2025-a69625be11 (python-cramjam-2.10.0~rc1-3.el10_0 and python-fastavro-1.10.0-2.el10_0) has been pushed to the Fedora EPEL 10.0 stable repository. If problem still persists, please make note of it in this bug report.