Bug 2338639

Summary: Review Request: rust-imago - Virtual machine disk image access library
Product: [Fedora] Fedora Reporter: Hanna Czenczek <hreitz>
Component: Package ReviewAssignee: Cole Robinson <crobinso>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: crobinso, package-review
Target Milestone: ---Keywords: AutomationTriaged
Target Release: ---Flags: crobinso: fedora-review+
Hardware: All   
OS: Linux   
URL: https://crates.io/crates/imago
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2025-01-30 17:34:51 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Hanna Czenczek 2025-01-17 17:56:51 UTC
Spec URL: https://copr-dist-git.fedorainfracloud.org/cgit/hczenczek/rust-imago/rust-imago.git/plain/rust-imago.spec
SRPM URL: https://download.copr.fedorainfracloud.org/results/hczenczek/rust-imago/srpm-builds/08512753/rust-imago-0.1.3-1.fc42.src.rpm
Description: This package contains library source for building other packages which use the "imago" crate (specifically libkrun)
Fedora Account System Username: hczenczek

Alternative spec URL (copr-dist-git is down right now): https://czenczek.de/rust-imago.spec

Comment 1 Hanna Czenczek 2025-01-17 18:02:33 UTC
Note a potential ix86 issue: The vm-memory feature package (rust-imago+vm-memory-devel) depends on rust-vm-memory-devel, which is not available for ix86. As far as I understand, I don’t need to explicitly exclude ix86 in this package, though, right?

(FWIW, this package can be built successfully for i386: https://copr.fedorainfracloud.org/coprs/hczenczek/rust-imago/build/8512815/)

Comment 2 Fedora Review Service 2025-01-17 18:15:38 UTC
Copr build:
https://copr.fedorainfracloud.org/coprs/build/8528110
(succeeded)

Review template:
https://download.copr.fedorainfracloud.org/results/@fedora-review/fedora-review-2338639-rust-imago/fedora-rawhide-x86_64/08528110-rust-imago/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 3 Cole Robinson 2025-01-29 15:24:57 UTC
I'll take this, and I can sponsor you too.

src.rpm link is broken too but I found spec and src.rpm here: https://download.copr.fedorainfracloud.org/results/hczenczek/rust-imago/fedora-rawhide-x86_64/08512753-rust-imago/

nothing here looks surprising but I didn't do a deep dive yet. couple bits up front:

can you convert this package to use rust2rpm.toml, and post the contents of that file? this rust crates easier to review: I can manually regenerate the package to make sure nothing weird is going on. makes it easier to maintain in dist-git too.

the manual dep tweaks should be described in a comment. rust2rpm.toml has support for this, see cargo-toml-patch-comments example here: https://bugzilla.redhat.com/show_bug.cgi?id=2326979#c14

(In reply to Hanna Czenczek from comment #1)
> Note a potential ix86 issue: The vm-memory feature package
> (rust-imago+vm-memory-devel) depends on rust-vm-memory-devel, which is not
> available for ix86. As far as I understand, I don’t need to explicitly
> exclude ix86 in this package, though, right?
> 
> (FWIW, this package can be built successfully for i386:
> https://copr.fedorainfracloud.org/coprs/hczenczek/rust-imago/build/8512815/)

AFAIK if it builds, it's fine :)

Comment 4 Hanna Czenczek 2025-01-29 17:24:14 UTC
> I'll take this, and I can sponsor you too.

Thanks a lot!

> can you convert this package to use rust2rpm.toml, and post the contents of that file?

I’m not sure I follow.  I did use rust2rpm, but actually without any config file (just `rust2rpm -t fedora -o spec imago`).  That is to say, the rust2rpm.toml would currently be empty.

> the manual dep tweaks should be described in a comment.

It’s not a manual tweak, it’s been auto-generated by rust2rpm.  Adding such a `package.cargo-toml-patch-comments` section to rust2rpm.toml makes it complain that “Cargo.toml was not patched” (the Cargo.toml it wants me to modify already has the Windows section removed as per that auto-generated patch).

Comment 5 Cole Robinson 2025-01-29 17:56:35 UTC
(In reply to Hanna Czenczek from comment #4)
> 
> I’m not sure I follow.  I did use rust2rpm, but actually without any config
> file (just `rust2rpm -t fedora -o spec imago`).  That is to say, the
> rust2rpm.toml would currently be empty.
> 
> > the manual dep tweaks should be described in a comment.
> 
> It’s not a manual tweak, it’s been auto-generated by rust2rpm.  Adding such
> a `package.cargo-toml-patch-comments` section to rust2rpm.toml makes it
> complain that “Cargo.toml was not patched” (the Cargo.toml it wants me to
> modify already has the Windows section removed as per that auto-generated
> patch).

Ah, I did not realize rust2rpm autogenerated a patch sometimes!
I should have looked closer at the spec comment.
I thought that patch came from `rust2rpm --patch`.
So I've learned something new :)

Indeed I see `rust2rpm -t fedora -o spec imago` generates spec
identical to yours. So I'll do full review now.

Comment 6 Cole Robinson 2025-01-29 18:28:10 UTC
Everything looks good to me. Template courtesy of decathorpe:

✅ 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 file is included with %license in %files
✅ package complies with Rust Packaging Guidelines

I've sponsored you into the packager group now as well

Comment 7 Hanna Czenczek 2025-01-30 14:35:02 UTC
Thanks a lot!

Comment 8 Fedora Admin user for bugzilla script actions 2025-01-30 17:04:22 UTC
The Pagure repository was created at https://src.fedoraproject.org/rpms/rust-imago

Comment 9 Fedora Update System 2025-01-30 17:31:50 UTC
FEDORA-2025-a61fc2ecbe (rust-imago-0.1.3-1.fc42) has been submitted as an update to Fedora 42.
https://bodhi.fedoraproject.org/updates/FEDORA-2025-a61fc2ecbe

Comment 10 Fedora Update System 2025-01-30 17:34:51 UTC
FEDORA-2025-a61fc2ecbe (rust-imago-0.1.3-1.fc42) has been pushed to the Fedora 42 stable repository.
If problem still persists, please make note of it in this bug report.