Bug 2357906 (rust-uguid) - Review Request: rust-uguid - GUID (Globally Unique Identifier) no_std library
Summary: Review Request: rust-uguid - GUID (Globally Unique Identifier) no_std library
Keywords:
Status: CLOSED ERRATA
Alias: rust-uguid
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Fabio Valentini
QA Contact: Fedora Extras Quality Assurance
URL: https://crates.io/crates/uguid
Whiteboard:
Depends On:
Blocks: rust-uefi-raw rust-uefi rust-virtfw-libefi
TreeView+ depends on / blocked
 
Reported: 2025-04-07 14:05 UTC by Gerd Hoffmann
Modified: 2025-04-25 01:48 UTC (History)
2 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2025-04-21 01:51:31 UTC
Type: ---
Embargoed:
decathorpe: fedora-review+


Attachments (Terms of Use)
The .spec file difference from Copr build 8867903 to 8874604 (1.08 KB, patch)
2025-04-08 16:21 UTC, Fedora Review Service
no flags Details | Diff

Description Gerd Hoffmann 2025-04-07 14:05:01 UTC
Spec URL: https://download.copr.fedorainfracloud.org/results/kraxel/rust.misc/fedora-rawhide-x86_64/08818333-rust-uguid/rust-uguid.spec
SRPM URL: https://download.copr.fedorainfracloud.org/results/kraxel/rust.misc/fedora-rawhide-x86_64/08818333-rust-uguid/rust-uguid-2.2.0-1.fc43.src.rpm
Description: GUID (Globally Unique Identifier) no_std library
Fedora Account System Username: kraxel

This is a dependency of the uefi crate.

Comment 1 Fedora Review Service 2025-04-07 14:05:34 UTC
Cannot find any valid SRPM URL for this ticket. Common causes are:

- You didn't specify `SRPM URL: ...` in the ticket description
  or any of your comments
- The URL schema isn't HTTP or HTTPS
- The SRPM package linked in your URL doesn't match the package name specified
  in the ticket summary


---
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.

Comment 2 Gerd Hoffmann 2025-04-07 14:06:35 UTC
fedora-review-service-build

Comment 3 Gerd Hoffmann 2025-04-07 14:56:38 UTC
[fedora-review-service-build]

Comment 4 Fedora Review Service 2025-04-07 15:03:53 UTC
Copr build:
https://copr.fedorainfracloud.org/coprs/build/8867903
(succeeded)

Review template:
https://download.copr.fedorainfracloud.org/results/@fedora-review/fedora-review-2357906-rust-uguid/fedora-rawhide-x86_64/08867903-rust-uguid/fedora-review/review.txt

Please take a look if any issues were found.


---
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.

Comment 5 Fabio Valentini 2025-04-08 13:01:49 UTC
There's a version 2.2.1 out now, please update.

> BuildRequires:  crate(bytemuck/default)
> BuildRequires:  crate(bytemuck/derive)

These should be necessary, even even then, it would be wrong to depend on crates without specifying which *version* you need. Which is why listing BuildRequires for Rust crates manually like this is a MUST NOT. :)

https://docs.fedoraproject.org/en-US/packaging-guidelines/Rust/#_dynamically_generated_buildrequires_for_crate_dependencies

Did you add this to be able to compile / run all tests without errors?

In that case, you can add `-f bytemuck` (or possibly even `-f bytemuck,serde` to the `%cargo_generate_buildrequires`, `%cargo_build`, `%cargo_install`, and `%cargo_test` macros, which should have the desired effect.

You can cause rust2rpm to do this for you permanently with this rust2rpm.toml config file:

```
[features]
enable = [
    "bytemuck",
    "serde",
]
```

Additionally, when updating the spec file for these changes, use rpmautospec. It should be the default for all new Fedora packages. Not using it for Rust packages causes a lot of manual work on crate updates (preserving %changelog entries after re-running rust2rpm, etc.).

Comment 6 Gerd Hoffmann 2025-04-08 15:50:54 UTC
(In reply to Fabio Valentini from comment #5)
> There's a version 2.2.1 out now, please update.

> > BuildRequires:  crate(bytemuck/default)
> > BuildRequires:  crate(bytemuck/derive)

> Did you add this to be able to compile / run all tests without errors?

Tests failed due to tests for unstable compiler features
being run and not working on the stable compiler.

That problem seems to be fixed in 2.2.1

Comment 8 Fedora Review Service 2025-04-08 16:21:53 UTC
Created attachment 2083896 [details]
The .spec file difference from Copr build 8867903 to 8874604

Comment 9 Fedora Review Service 2025-04-08 16:21:55 UTC
Copr build:
https://copr.fedorainfracloud.org/coprs/build/8874604
(succeeded)

Review template:
https://download.copr.fedorainfracloud.org/results/@fedora-review/fedora-review-2357906-rust-uguid/fedora-rawhide-x86_64/08874604-rust-uguid/fedora-review/review.txt

Please take a look if any issues were found.


---
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.

Comment 10 Fabio Valentini 2025-04-09 11:07:11 UTC
> Tests failed due to tests for unstable compiler features
> being run and not working on the stable compiler.

I'm sorry, I'm not sure I understand. The tests *were* enabled in the spec file I reviewed?

Comment 11 Gerd Hoffmann 2025-04-10 10:02:35 UTC
(In reply to Fabio Valentini from comment #10)
> > Tests failed due to tests for unstable compiler features
> > being run and not working on the stable compiler.
> 
> I'm sorry, I'm not sure I understand. The tests *were* enabled in the spec
> file I reviewed?

I had used this rust2rpm.toml ...

   [requires]
   build = ["crate(bytemuck/default)", "crate(bytemuck/derive)"]

... which resulted in those dependencies beind added but also
turned off the 'unstable_tests' feature as side effect.

Have switched to use a [features] section instead in latest builds.

Comment 12 Fabio Valentini 2025-04-10 14:17:44 UTC
> I had used this rust2rpm.toml ...
> ... which resulted in those dependencies beind added but also
> turned off the 'unstable_tests' feature as side effect.

No, something else must have been going on -
because cargo simply does not support "if this dependency is available then enable this feature" type of things.
Feature flags are purely declarative and cannot be affected by the build environment.

===

Anyway, the package now looks good to me.

Package was generated with rust2rpm, simplifying the review.

✅ package contains only permissible content
✅ 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
✅ license files are included with %license in %files
✅ 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 (*NOT* pre-release filter): alpha;beta;rc;pre
  distro: Fedora
  Package: rust-$crate

- set bugzilla assignee overrides to @rust-sig (optional)

Comment 13 Fedora Admin user for bugzilla script actions 2025-04-11 06:48:35 UTC
The Pagure repository was created at https://src.fedoraproject.org/rpms/rust-uguid

Comment 14 Fedora Update System 2025-04-11 07:51:31 UTC
FEDORA-2025-2024126625 (rust-uguid-2.2.1-3.fc42) has been submitted as an update to Fedora 42.
https://bodhi.fedoraproject.org/updates/FEDORA-2025-2024126625

Comment 15 Fedora Update System 2025-04-13 02:40:12 UTC
FEDORA-2025-2024126625 has been pushed to the Fedora 42 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf install --enablerepo=updates-testing --refresh --advisory=FEDORA-2025-2024126625 \*`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2025-2024126625

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

Comment 16 Fedora Update System 2025-04-16 10:31:40 UTC
FEDORA-2025-339c95a85e (rust-uguid-2.2.1-3.fc41) has been submitted as an update to Fedora 41.
https://bodhi.fedoraproject.org/updates/FEDORA-2025-339c95a85e

Comment 17 Fedora Update System 2025-04-17 21:48:01 UTC
FEDORA-2025-339c95a85e has been pushed to the Fedora 41 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf install --enablerepo=updates-testing --refresh --advisory=FEDORA-2025-339c95a85e \*`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2025-339c95a85e

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

Comment 18 Fedora Update System 2025-04-21 01:51:31 UTC
FEDORA-2025-2024126625 (rust-uguid-2.2.1-3.fc42) has been pushed to the Fedora 42 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 19 Fedora Update System 2025-04-25 01:48:42 UTC
FEDORA-2025-339c95a85e (rust-uguid-2.2.1-3.fc41) has been pushed to the Fedora 41 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.