Bug 2141068 - Review Request: rust-test-generator - Rust Test generator: enumerating entries according to file-system pattern and generating a test function for each entry
Summary: Review Request: rust-test-generator - Rust Test generator: enumerating entrie...
Keywords:
Status: CLOSED RAWHIDE
Alias: None
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:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2022-11-08 16:47 UTC by Kalev Lember
Modified: 2022-11-21 12:49 UTC (History)
2 users (show)

Fixed In Version: rust-test-generator-0.3.0-4.fc37 rust-test-generator-0.3.0-4.fc38
Clone Of:
Environment:
Last Closed: 2022-11-21 12:49:30 UTC
Type: ---
Embargoed:
decathorpe: fedora-review+


Attachments (Terms of Use)

Description Kalev Lember 2022-11-08 16:47:00 UTC
Spec URL: https://kalev.fedorapeople.org/rust-test-generator.spec
SRPM URL: https://kalev.fedorapeople.org/rust-test-generator-0.3.0-1.fc38.src.rpm
Description:
Rust Test generator: enumerating entries according to file-system pattern and
generating a test function for each entry.

Fedora Account System Username: kalev

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

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

Initial comments:

- Please don't ignore big FIXMEs in specs generated by rust2rpm.

In this case, Apache-2.0 license file is missing. Please report this upstream.

- The summary is way too long, please trim it to something sensible like

"Generate test functions for all files matching a pattern" or something like that (or you can come up with something better - the current description is kind of confusing and I don't really understand what it's trying to say).

Comment 2 Kalev Lember 2022-11-15 15:18:30 UTC
(In reply to Fabio Valentini from comment #1)
> Taking this review.
> 
> Initial comments:
> 
> - Please don't ignore big FIXMEs in specs generated by rust2rpm.
> 
> In this case, Apache-2.0 license file is missing. Please report this
> upstream.

Done: https://github.com/frehberg/test-generator/issues/15

> - The summary is way too long, please trim it to something sensible like
> 
> "Generate test functions for all files matching a pattern" or something like
> that (or you can come up with something better - the current description is
> kind of confusing and I don't really understand what it's trying to say).

Thanks, I've updated the spec file to use your suggestion. I don't think it really matters much as the Fedora packaging is just for use in koji and I imagine everybody else is just getting the crates from crates.io directly.

I wonder if maybe we should update rust2rpm to generate a shorter summary and leave the upstream text for description? Like,

Summary: rust "%{crate}" crate
%global _description %{expand:
Rust Test generator: enumerating entries according to file-system pattern and
generating a test function for each entry.}

%description %{_description}


Something like this would allow for a bit more automation :)

Comment 3 Kalev Lember 2022-11-15 15:22:12 UTC
* Tue Nov 15 2022 Kalev Lember <klember> 0.3.0-3
- Shorten the summary (#2141068)

* Tue Nov 15 2022 Kalev Lember <klember> 0.3.0-2
- Re-generate the spec file with rust2rpm 23

Spec URL: https://kalev.fedorapeople.org/rust-test-generator.spec
SRPM URL: https://kalev.fedorapeople.org/rust-test-generator-0.3.0-3.fc38.src.rpm

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

Comment 4 Fabio Valentini 2022-11-18 15:59:05 UTC
> Something like this would allow for a bit more automation :)

Trimming the Summary automatically already happens. The Cargo.toml package.description contents are trimmed to the first line, or the first "." character, if I remember correctly. But that heuristic obviously doesn't work if the upstream description starts with a sentence that spans a few pages ...

It looks like upstream project *does* have license files in its git repo. Please include these files manually for now. Both Apache-2.0 and MIT require redistributed sources to contain a copy of the license text.

Also note that this project seems to be rather ... cruft-y (or just very old and not updated).
Its dependencies are all ancient crate versions, and compiling the code prints lots of deprecation warnings ...

Comment 5 Kalev Lember 2022-11-18 18:11:06 UTC
(In reply to Fabio Valentini from comment #4)
> It looks like upstream project *does* have license files in its git repo.
> Please include these files manually for now. Both Apache-2.0 and MIT require
> redistributed sources to contain a copy of the license text.

Thanks, fixed. I only added LICENSE-APACHE though because the MIT license that's in the root of the upstream repo appears to be for another crate that happens to be in the same git repo, in another subdir, and not applicable to this one.

> Also note that this project seems to be rather ... cruft-y (or just very old
> and not updated).
> Its dependencies are all ancient crate versions, and compiling the code
> prints lots of deprecation warnings ...

Yes :( Looks like upstream stopped maintaining it a few years ago.


* Fri Nov 18 2022 Kalev Lember <klember> 0.3.0-4
- Add missing LICENSE-APACHE file from upstream (#2141068)

Spec URL: https://kalev.fedorapeople.org/rust-test-generator.spec
SRPM URL: https://kalev.fedorapeople.org/rust-test-generator-0.3.0-4.fc38.src.rpm

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

Comment 6 Fabio Valentini 2022-11-18 22:53:56 UTC
Oh, right, this crate is Apache-2.0 ONLY, while other crates in the same repo are MIT/Apache-2.0, resulting in license files for both being present - which confused me. Package Looks good to me now.

===

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
- license file is included with %license in %files (manually included from upstream repo)
- 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 7 Tomas Hrcka 2022-11-21 10:46:28 UTC
(fedscm-admin):  The Pagure repository was created at https://src.fedoraproject.org/rpms/rust-test-generator

Comment 8 Kalev Lember 2022-11-21 12:49:30 UTC
Thanks, Fabio! Package imported and built.


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