Bug 2064142 - Review Request: rust-twox-hash - Rust implementation of the XXHash and XXH3 algorithms
Summary: Review Request: rust-twox-hash - Rust implementation of the XXHash and XXH3 a...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Mads Kiilerich
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: 2063941
TreeView+ depends on / blocked
 
Reported: 2022-03-15 07:14 UTC by Aleksei Bavshin
Modified: 2022-05-07 04:17 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2022-05-07 04:17:45 UTC
Type: ---
Embargoed:
mads: fedora-review+


Attachments (Terms of Use)

Description Aleksei Bavshin 2022-03-15 07:14:16 UTC
Spec URL: https://alebastr.fedorapeople.org/review/mercurial-rs/rust-twox-hash.spec
SRPM URL: https://alebastr.fedorapeople.org/review/mercurial-rs/rust-twox-hash-1.6.2-1.fc35.src.rpm
Copr: https://copr.fedorainfracloud.org/coprs/alebastr/rhg/monitor/
Description:
Rust implementation of the XXHash and XXH3 algorithms.
Fedora Account System Username: alebastr

Changes from generated spec:
 - dropped feature `digest` - requires `digest` 0.8 (retired in rawhide)
 - added patches from two pending PRs to fix build failures on non-x86

Comment 1 Mads Kiilerich 2022-03-15 14:24:23 UTC
I verified that the spec and source is exactly as generated with "rust2rpm -as twox-hash", except

@@ -12,6 +12,9 @@
 License:        MIT
 URL:            https://crates.io/crates/twox-hash
 Source:         %{crates_source}
+# Address test failures on non-x86 platforms
+Patch0:         https://github.com/shepmaster/twox-hash/pull/86.patch#/twox-hash-1.6.2-Support-big-endian-platforms.patch
+Patch1:         https://github.com/shepmaster/twox-hash/pull/87.patch#/twox-hash-1.6.2-Fix-XXH3-generic-fallback.patch
 
 ExclusiveArch:  %{rust_arches}
 
@@ -58,18 +61,6 @@
 %files       -n %{name}+default-devel
 %ghost %{crate_instdir}/Cargo.toml
 
-%package     -n %{name}+digest-devel
-Summary:        %{summary}
-BuildArch:      noarch
-
-%description -n %{name}+digest-devel %{_description}
-
-This package contains library source intended for building other packages which
-use the "digest" feature of the "%{crate}" crate.
-
-%files       -n %{name}+digest-devel
-%ghost %{crate_instdir}/Cargo.toml
-
 %package     -n %{name}+digest_0_10-devel
 Summary:        %{summary}
 BuildArch:      noarch

*Why are the main digest packages dropped? I think it deserves a comment in the spec why the digests are dropped.*

The MIT license is OK.

The package builds locally on f35, installs, and works for enabling experimental build of Mercurial with Rust extensions.

rpmlint is clean, except "W: no-documentation".

Comment 2 Aleksei Bavshin 2022-03-15 16:23:52 UTC
(In reply to Mads Kiilerich from comment #1)
> *Why are the main digest packages dropped? I think it deserves a comment in
> the spec why the digests are dropped.*

The comment is in .rust2rpm.conf which would be imported along with the spec:
```
[fedora]
# The compat package for `digest` = 0.8 is not available in Fedora
unwanted-features =
    digest
```

Btw, it's not the main digest package. There are 3 features which provide support for different versions of the `digest` crate:
`digest` - 0.8
`digest_0_9 - 0.9
`digest_0_10` - 0.10

Comment 3 Mads Kiilerich 2022-03-16 07:58:53 UTC
Ok - I didn't look closely and thought the explicit version was for the old compat packages.

(But FWIW, .rust2rpm.conf seems a bit secret. It is not in -h and there is no man page - only mentioned on https://pagure.io/fedora-rust/rust2rpm . And I find no such file in https://copr-dist-git.fedorainfracloud.org/cgit/alebastr/rhg/rust-twox-hash.git/tree/ or elsewhere. And when the crate name is provided as rust2rpm argument, it seems odd to have feature tweaks for that crate in a hidden configuration file in the local directory - that seems like a confusing feature.)

Comment 4 Gwyn Ciesla 2022-04-04 21:24:19 UTC
(fedscm-admin):  The Pagure repository was created at https://src.fedoraproject.org/rpms/rust-twox-hash

Comment 5 Fedora Update System 2022-04-05 17:28:08 UTC
FEDORA-2022-c7ededf903 has been submitted as an update to Fedora 36. https://bodhi.fedoraproject.org/updates/FEDORA-2022-c7ededf903

Comment 6 Fedora Update System 2022-04-06 17:55:02 UTC
FEDORA-2022-c7ededf903 has been pushed to the Fedora 36 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf install --enablerepo=updates-testing --advisory=FEDORA-2022-c7ededf903 \*`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2022-c7ededf903

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 7 Fedora Update System 2022-05-07 04:17:45 UTC
FEDORA-2022-c7ededf903 has been pushed to the Fedora 36 stable repository.
If problem still persists, please make note of it in this bug report.


Note You need to log in before you can comment on or make changes to this bug.