https://bugzilla.redhat.com/show_bug.cgi?id=2257076
Bug ID: 2257076 Summary: Review Request: rust-libcramjam - Compression library combining a plethora of algorithms Product: Fedora Version: rawhide Hardware: All OS: Linux Status: NEW Component: Package Review Severity: medium Assignee: nobody@fedoraproject.org Reporter: code@musicinmybrain.net QA Contact: extras-qa@fedoraproject.org CC: package-review@lists.fedoraproject.org Depends On: 1276941 (fedora-neuro,NeuroFedora), 2256960, 2256974, 2256975 Blocks: 2246802 Target Milestone: --- Classification: Fedora
Spec URL: https://music.fedorapeople.org/rust-libcramjam.spec SRPM URL: https://music.fedorapeople.org/rust-libcramjam-0.1.5-1.fc40.src.rpm
Description:
Compression library combining a plethora of algorithms in a similar as possible API.
Fedora Account System Username: music
This requires rust-lz4 (new package, bug 2256960), rust-libdeflate-sys (unretirement, bug 2256974), and rust-libdeflater (unretirement, bug 2256975). A COPR build is available at: https://copr.fedorainfracloud.org/coprs/music/python-cramjam/packages/
This is a dependency for python-cramjam, which is needed for current releases of python-fastavro. It will be a neuro-sig package (in addition to a rust-sig one).
Referenced Bugs:
https://bugzilla.redhat.com/show_bug.cgi?id=1276941 [Bug 1276941] Fedora NeuroImaging and NeuroScience tracking bug https://bugzilla.redhat.com/show_bug.cgi?id=2246802 [Bug 2246802] python-fastavro-1.9.2 is available https://bugzilla.redhat.com/show_bug.cgi?id=2256960 [Bug 2256960] Review Request: rust-lz4 - Rust LZ4 bindings library https://bugzilla.redhat.com/show_bug.cgi?id=2256974 [Bug 2256974] Review Request: rust-libdeflate-sys - Bindings to libdeflate for DEFLATE https://bugzilla.redhat.com/show_bug.cgi?id=2256975 [Bug 2256975] Review Request: rust-libdeflater - Bindings to libdeflate for DEFLATE
https://bugzilla.redhat.com/show_bug.cgi?id=2257076
Fedora Review Service fedora-review-bot@fedoraproject.org changed:
What |Removed |Added ---------------------------------------------------------------------------- URL| |https://crates.io/crates/li | |bcramjam
--- Comment #1 from Fedora Review Service fedora-review-bot@fedoraproject.org --- Copr build: https://copr.fedorainfracloud.org/coprs/build/6868476 (failed)
Build log: https://download.copr.fedorainfracloud.org/results/@fedora-review/fedora-rev...
Please make sure the package builds successfully at least for Fedora Rawhide.
- If the build failed for unrelated reasons (e.g. temporary network unavailability), please ignore it. - If the build failed because of missing BuildRequires, please make sure they are listed in the "Depends On" field
--- This comment was created by the fedora-review-service https://github.com/FrostyX/fedora-review-service
If you want to trigger a new Copr build, add a comment containing new Spec and SRPM URLs or [fedora-review-service-build] string.
https://bugzilla.redhat.com/show_bug.cgi?id=2257076 Bug 2257076 depends on bug 2256960, which changed state.
Bug 2256960 Summary: Review Request: rust-lz4 - Rust LZ4 bindings library https://bugzilla.redhat.com/show_bug.cgi?id=2256960
What |Removed |Added ---------------------------------------------------------------------------- Status|MODIFIED |CLOSED Resolution|--- |ERRATA
https://bugzilla.redhat.com/show_bug.cgi?id=2257076 Bug 2257076 depends on bug 2256974, which changed state.
Bug 2256974 Summary: Review Request: rust-libdeflate-sys - Bindings to libdeflate for DEFLATE https://bugzilla.redhat.com/show_bug.cgi?id=2256974
What |Removed |Added ---------------------------------------------------------------------------- Status|MODIFIED |CLOSED Resolution|--- |ERRATA
https://bugzilla.redhat.com/show_bug.cgi?id=2257076 Bug 2257076 depends on bug 2256975, which changed state.
Bug 2256975 Summary: Review Request: rust-libdeflater - Bindings to libdeflate for DEFLATE https://bugzilla.redhat.com/show_bug.cgi?id=2256975
What |Removed |Added ---------------------------------------------------------------------------- Status|MODIFIED |CLOSED Resolution|--- |ERRATA
https://bugzilla.redhat.com/show_bug.cgi?id=2257076
Ben Beasley code@musicinmybrain.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Doc Type|--- |If docs needed, set a value
--- Comment #2 from Ben Beasley code@musicinmybrain.net --- [fedora-review-service-build]
https://bugzilla.redhat.com/show_bug.cgi?id=2257076
--- Comment #3 from Fedora Review Service fedora-review-bot@fedoraproject.org --- Copr build: https://copr.fedorainfracloud.org/coprs/build/6888594 (failed)
Build log: https://download.copr.fedorainfracloud.org/results/@fedora-review/fedora-rev...
Please make sure the package builds successfully at least for Fedora Rawhide.
- If the build failed for unrelated reasons (e.g. temporary network unavailability), please ignore it. - If the build failed because of missing BuildRequires, please make sure they are listed in the "Depends On" field
--- This comment was created by the fedora-review-service https://github.com/FrostyX/fedora-review-service
If you want to trigger a new Copr build, add a comment containing new Spec and SRPM URLs or [fedora-review-service-build] string.
https://bugzilla.redhat.com/show_bug.cgi?id=2257076
--- Comment #4 from Ben Beasley code@musicinmybrain.net --- This needs --enablerepo=local until the freshly-unretired rust-libdeflater appears in a Rawhide compose.
https://bugzilla.redhat.com/show_bug.cgi?id=2257076
--- Comment #5 from Fabio Valentini decathorpe@gmail.com --- The neuro-fedora tracker was in the "Depends on" field instead of the "Blocks" field, so this ticket did not show up as "reviewable".
https://bugzilla.redhat.com/show_bug.cgi?id=2257076
Fabio Valentini decathorpe@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED Flags| |fedora-review? Assignee|nobody@fedoraproject.org |decathorpe@gmail.com
--- Comment #6 from Fabio Valentini decathorpe@gmail.com --- Ok, first look at the package:
1. The LICENSE file is some weird JSON blob for, and it also doesn't match what's downloaded from the URL:
Source checksums ---------------- https://github.com/milesgranger/cramjam/blob/8510678864af328a8b711f04ef2ddd8... : CHECKSUM(SHA256) this package : c382e6b2ecda2c387f070b758ebf97fd934310f1b3808e5aeb43c905779efdc4 CHECKSUM(SHA256) upstream package : a73b9239f0434299d723ac6454b3f66f9c4fb8c7889ee8309f98f7cd1131d4f4 https://crates.io/api/v1/crates/libcramjam/0.1.5/download#/libcramjam-0.1.5.... : CHECKSUM(SHA256) this package : e1e4c9711efb07b28423df4f7e87235f2e5b927f379e515062f7f1b37ef55b12 CHECKSUM(SHA256) upstream package : e1e4c9711efb07b28423df4f7e87235f2e5b927f379e515062f7f1b37ef55b12 diff -r also reports differences
Please fix - use the "raw" file link to get the actual file contents, not the "blob" link that gives you garbage:
instead of https://github.com/milesgranger/cramjam/blob/8510678/LICENSE use https://github.com/milesgranger/cramjam/raw/8510678/LICENSE
2. It looks like the dependencies on zstd / zstd-safe are actually mismatched in upstream. They should be zstd v0.13 to match with zstd-safe v7, *or* zstd v0.12 to match with zstd-safe v6 - but not a weird mix older / newer versions of these two crates.
3. If you build the C library, you will get better generated spec file from rust2rpm if the crate actually *defines* a cdylib target. Not sure why upstream doesn't do this.
Using "rust2rpm -p" to add this table to Cargo.toml should give you a better template to start from:
``` [lib] crate-type = ["lib", "cdylib"] ```
https://bugzilla.redhat.com/show_bug.cgi?id=2257076
--- Comment #7 from Ben Beasley code@musicinmybrain.net --- (In reply to Fabio Valentini from comment #6)
Ok, first look at the package:
- The LICENSE file is some weird JSON blob for, and it also doesn't match
what's downloaded from the URL:
Oops! Yes, that’s definitely a URL typo. I’ll correct it.
- It looks like the dependencies on zstd / zstd-safe are actually
mismatched in upstream. They should be zstd v0.13 to match with zstd-safe v7, *or* zstd v0.12 to match with zstd-safe v6 - but not a weird mix older / newer versions of these two crates.
Thanks. I suggested this upstream, https://github.com/milesgranger/cramjam/pull/128.
- If you build the C library, you will get better generated spec file from
rust2rpm if the crate actually *defines* a cdylib target. Not sure why upstream doesn't do this.
Using "rust2rpm -p" to add this table to Cargo.toml should give you a better template to start from:
[lib] crate-type = ["lib", "cdylib"]
I tried that, and the template was indeed a *little* better – there was a %{crate} package for the C library – but I still had to add the cargo-c invocation, the %{crate}-devel package, and most of the other boilerplate.
I could send a PR upstream, but I think I would need to be able to offer a better explanation of why they should care, i.e., how the change would do something useful in practice for them or their other users.
It also occurred to me that none of the dependencies contribute to the binary RPM %{crate}-devel – nothing is bundled in the header file, the unversioned .so symlink, or the .pc file – so I don’t need to include the dependency licenses in the License field for that subpackage, only for %{crate}. I’ll change that as well.
I’ll upload a new spec and SRPM after I double-check for major errors I might have made while changing things.
https://bugzilla.redhat.com/show_bug.cgi?id=2257076
--- Comment #8 from Ben Beasley code@musicinmybrain.net --- New Spec URL: https://music.fedorapeople.org/20240126/rust-libcramjam.spec New SRPM URL: https://music.fedorapeople.org/20240126/rust-libcramjam-0.1.5-1.fc40.src.rpm
https://bugzilla.redhat.com/show_bug.cgi?id=2257076
--- Comment #9 from Fedora Review Service fedora-review-bot@fedoraproject.org --- Copr build: https://copr.fedorainfracloud.org/coprs/build/6964560 (failed)
Build log: https://download.copr.fedorainfracloud.org/results/@fedora-review/fedora-rev...
Please make sure the package builds successfully at least for Fedora Rawhide.
- If the build failed for unrelated reasons (e.g. temporary network unavailability), please ignore it. - If the build failed because of missing BuildRequires, please make sure they are listed in the "Depends On" field
--- This comment was created by the fedora-review-service https://github.com/FrostyX/fedora-review-service
If you want to trigger a new Copr build, add a comment containing new Spec and SRPM URLs or [fedora-review-service-build] string.
https://bugzilla.redhat.com/show_bug.cgi?id=2257076
--- Comment #10 from Ben Beasley code@musicinmybrain.net --- New Spec URL: https://music.fedorapeople.org/20240126/rust-libcramjam.spec New SRPM URL: https://music.fedorapeople.org/20240126/rust-libcramjam-0.1.5-1.fc39.src.rpm
https://bugzilla.redhat.com/show_bug.cgi?id=2257076
Ben Beasley code@musicinmybrain.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Blocks| |2257285
Referenced Bugs:
https://bugzilla.redhat.com/show_bug.cgi?id=2257285 [Bug 2257285] Review Request: python-cramjam - Thin Python bindings to de/compression algorithms in Rust
https://bugzilla.redhat.com/show_bug.cgi?id=2257076
--- Comment #11 from Fedora Review Service fedora-review-bot@fedoraproject.org --- Copr build: https://copr.fedorainfracloud.org/coprs/build/6964563 (succeeded)
Review template: https://download.copr.fedorainfracloud.org/results/@fedora-review/fedora-rev...
Found issues:
- No gcc, gcc-c++ or clang found in BuildRequires Read more: https://docs.fedoraproject.org/en-US/packaging-guidelines/C_and_C++/
Please know that there can be false-positives.
--- This comment was created by the fedora-review-service https://github.com/FrostyX/fedora-review-service
If you want to trigger a new Copr build, add a comment containing new Spec and SRPM URLs or [fedora-review-service-build] string.
https://bugzilla.redhat.com/show_bug.cgi?id=2257076
Fabio Valentini decathorpe@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|ASSIGNED |POST Flags|fedora-review? |fedora-review+
--- Comment #12 from Fabio Valentini decathorpe@gmail.com --- Thank you for the update! Looks good to me now.
Having both "BuildRequires: cargo-c" and `echo 'cargo-c'` in %generate_buildrequires is redundant though. You can remove one of those :)
===
Package was generated with rust2rpm, simplifying the review.
- package builds and installs without errors on rawhide - test suite is run and all unit tests pass - latest version of the crate is packaged - license matches upstream specification and is acceptable for Fedora - licenses of statically linked dependencies are correctly taken into account - license file is included with %license in %files (included manually from upstream, PR submitted) - package complies with Rust Packaging Guidelines
Package APPROVED.
===
Recommended post-import rust-sig tasks:
- set up package on release-monitoring.org: project: $crate homepage: https://crates.io/crates/$crate backend: crates.io version scheme: semantic version filter: alpha;beta;rc;pre distro: Fedora Package: rust-$crate
- add @rust-sig with "commit" access as package co-maintainer (should happen automatically)
- set bugzilla assignee overrides to @rust-sig (optional)
- track package in koschei for all built branches (should happen automatically once rust-sig is co-maintainer)
https://bugzilla.redhat.com/show_bug.cgi?id=2257076
--- Comment #13 from Ben Beasley code@musicinmybrain.net --- Thank you for the review! I’ll follow the post-import tasks.
Normally I would favor a straightforward BuildRequires over an echo in %generate_buildrequires, but I would prefer for the cargo-c part to look like rust-rav1e, so I will drop "BuildRequires: cargo-c", and keep `echo 'cargo-c'` in %generate_buildrequires.
https://bugzilla.redhat.com/show_bug.cgi?id=2257076
--- Comment #14 from Ben Beasley code@musicinmybrain.net --- https://release-monitoring.org/project/371209/
https://bugzilla.redhat.com/show_bug.cgi?id=2257076
--- Comment #15 from Fedora Admin user for bugzilla script actions fedora-admin-xmlrpc@fedoraproject.org --- The Pagure repository was created at https://src.fedoraproject.org/rpms/rust-libcramjam
https://bugzilla.redhat.com/show_bug.cgi?id=2257076
Fedora Update System updates@fedoraproject.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|POST |MODIFIED
--- Comment #16 from Fedora Update System updates@fedoraproject.org --- FEDORA-2024-c842415fd0 has been submitted as an update to Fedora 40. https://bodhi.fedoraproject.org/updates/FEDORA-2024-c842415fd0
https://bugzilla.redhat.com/show_bug.cgi?id=2257076
Fedora Update System updates@fedoraproject.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Resolution|--- |ERRATA Status|MODIFIED |CLOSED Last Closed| |2024-01-31 23:37:26
--- Comment #17 from Fedora Update System updates@fedoraproject.org --- FEDORA-2024-c842415fd0 has been pushed to the Fedora 40 stable repository. If problem still persists, please make note of it in this bug report.
https://bugzilla.redhat.com/show_bug.cgi?id=2257076
--- Comment #18 from Fedora Update System updates@fedoraproject.org --- FEDORA-2024-e7e6faead6 has been submitted as an update to Fedora 39. https://bodhi.fedoraproject.org/updates/FEDORA-2024-e7e6faead6
https://bugzilla.redhat.com/show_bug.cgi?id=2257076
--- Comment #19 from Fedora Update System updates@fedoraproject.org --- FEDORA-2024-0dd07e330c has been submitted as an update to Fedora 38. https://bodhi.fedoraproject.org/updates/FEDORA-2024-0dd07e330c
https://bugzilla.redhat.com/show_bug.cgi?id=2257076
--- Comment #20 from Fedora Update System updates@fedoraproject.org --- FEDORA-2024-0dd07e330c has been pushed to the Fedora 38 testing repository. Soon you'll be able to install the update with the following command: `sudo dnf install --enablerepo=updates-testing --refresh --advisory=FEDORA-2024-0dd07e330c *` You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2024-0dd07e330c
See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.
https://bugzilla.redhat.com/show_bug.cgi?id=2257076
--- Comment #21 from Fedora Update System updates@fedoraproject.org --- FEDORA-2024-e7e6faead6 has been pushed to the Fedora 39 testing repository. Soon you'll be able to install the update with the following command: `sudo dnf install --enablerepo=updates-testing --refresh --advisory=FEDORA-2024-e7e6faead6 *` You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2024-e7e6faead6
See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.
https://bugzilla.redhat.com/show_bug.cgi?id=2257076
--- Comment #22 from Fedora Update System updates@fedoraproject.org --- FEDORA-2024-a427c216cf has been pushed to the Fedora 39 testing repository. Soon you'll be able to install the update with the following command: `sudo dnf install --enablerepo=updates-testing --refresh --advisory=FEDORA-2024-a427c216cf *` You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2024-a427c216cf
See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.
https://bugzilla.redhat.com/show_bug.cgi?id=2257076
--- Comment #23 from Fedora Update System updates@fedoraproject.org --- FEDORA-2024-99c1a94909 has been pushed to the Fedora 38 testing repository. Soon you'll be able to install the update with the following command: `sudo dnf install --enablerepo=updates-testing --refresh --advisory=FEDORA-2024-99c1a94909 *` You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2024-99c1a94909
See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.
https://bugzilla.redhat.com/show_bug.cgi?id=2257076
--- Comment #24 from Fedora Update System updates@fedoraproject.org --- FEDORA-2024-99c1a94909 (rust-libcramjam-0.2.0-1.fc38) has been pushed to the Fedora 38 stable repository. If problem still persists, please make note of it in this bug report.
https://bugzilla.redhat.com/show_bug.cgi?id=2257076
--- Comment #25 from Fedora Update System updates@fedoraproject.org --- FEDORA-2024-a427c216cf (rust-libcramjam-0.2.0-1.fc39) has been pushed to the Fedora 39 stable repository. If problem still persists, please make note of it in this bug report.
package-review@lists.fedoraproject.org