Bug 2141067

Summary: Review Request: rust-lopdf - Rust library for PDF document manipulation
Product: [Fedora] Fedora Reporter: Kalev Lember <klember>
Component: Package ReviewAssignee: Fabio Valentini <decathorpe>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: decathorpe, package-review
Target Milestone: ---Flags: decathorpe: fedora-review+
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: rust-lopdf-0.27.0-3.fc37 rust-lopdf-0.27.0-3.fc38 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2022-11-18 19:02:47 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 Kalev Lember 2022-11-08 16:44:23 UTC
Spec URL: https://kalev.fedorapeople.org/rust-lopdf.spec
SRPM URL: https://kalev.fedorapeople.org/rust-lopdf-0.27.0-1.fc38.src.rpm
Description:
Rust library for PDF document manipulation.

Fedora Account System Username: kalev

Koji scratch build: https://koji.fedoraproject.org/koji/taskinfo?taskID=93950868

Comment 1 Fabio Valentini 2022-11-13 18:17:32 UTC
Taking this review.

Initial comments:

- Please regenerate the spec file with rust2rpm v23.
- The built packages are not installable, due to the outdated optional dependency on nom v6.

The compat package for nom v6 was retired over half a year ago. Projects should be using nom v7 at this point.

Assuming librsvg2 doesn't depend on the non-default "nom" parser feature, please drop the optional dependency on "nom" and the "nom_parser" feature (i.e. remove both when calling "rust2rpm -sp").

Comment 2 Fabio Valentini 2022-11-13 18:18:03 UTC
I also assume you have packaged v0.27 on purpose? The latest version is v0.29.0.

Comment 3 Kalev Lember 2022-11-14 11:49:37 UTC
Ah, good catch about the nom feature. Let me fix that. I didn't notice that the subpackage is uninstallable because librsvg doesn't need it.

I packaged 0.27 because it was the latest when I looked into it :) I think it's easiest for me to continue with 0.27 at this point because I already have everything lined up to work with this version. I'll get it updated after I get an initial librsvg build done in koji.

Comment 4 Kalev Lember 2022-11-14 18:35:41 UTC
OK, here's the updated spec file.

* Mon Nov 14 2022 Kalev Lember <klember> 0.27.0-3
- Add a downstream patch to drop nom and nom_parser features (#2141067)

* Mon Nov 14 2022 Kalev Lember <klember> 0.27.0-2
- Re-generate packaging with rust2rpm 23

Spec URL: https://kalev.fedorapeople.org/rust-lopdf.spec
SRPM URL: https://kalev.fedorapeople.org/rust-lopdf-0.27.0-3.fc38.src.rpm

Koji scratch build: https://koji.fedoraproject.org/koji/taskinfo?taskID=94177017

Comment 5 Fabio Valentini 2022-11-18 16:17:41 UTC
> I'll get it updated after I get an initial librsvg build done in koji.

Take care - update from v0.27 to 0.29 is considered "breaking" by Cargo-SemVer, and librsvg2 might specifically depend on 0.27.x.

But the package looks good to me now, thanks.

===

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 (possible) 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

Package APPROVED.

===

Recommended post-import rust-sig tasks:

- add @rust-sig with "commit" access as package co-maintainer

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

- 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

- track package in koschei for all built branches

Comment 6 Gwyn Ciesla 2022-11-18 17:01:42 UTC
(fedscm-admin):  The Pagure repository was created at https://src.fedoraproject.org/rpms/rust-lopdf

Comment 7 Kalev Lember 2022-11-18 19:02:47 UTC
Thanks! Package imported and built.