Bug 1978682 - Review Request : rust-json_value_merge - Give an interface to merge two json_serde::Value together.
Summary: Review Request : rust-json_value_merge - Give an interface to merge two json_...
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: Unspecified
OS: Unspecified
Target Milestone: ---
Assignee: Fabio Valentini
QA Contact: Fedora Extras Quality Assurance
Depends On:
TreeView+ depends on / blocked
Reported: 2021-07-02 13:31 UTC by Trystram
Modified: 2021-12-22 02:06 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Last Closed: 2021-12-22 02:06:14 UTC
Type: Bug
decathorpe: fedora-review+

Attachments (Terms of Use)

Description Trystram 2021-07-02 13:31:44 UTC
spec file : https://gitlab.com/jbtrystram/rust-json_merge_values/-/raw/main/rust-json_value_merge.spec
SRPM file : https://gitlab.com/jbtrystram/rust-json_merge_values/-/raw/main/rust-json_value_merge-0.1.2-1.fc34.src.rpm

Description: Small library that givea an interface to merge two json_serde::Value together.

Fedora Account System Username: jbtrystram
Koji build : https://koji.fedoraproject.org/koji/taskinfo?taskID=71191121

Comment 1 Fabio Valentini 2021-12-06 16:29:18 UTC
Taking this review.

Some minor issues:

1. It looks like there's two typos in the upstream Cargo.toml file, which prevent the LICENSE-* files from being included.
The files are named LICENSE-*, but Cargo.toml has "LICENCE-*" (which is the less-common (British English?) spelling variant).
Please alert upstream about this problem (or submit a PR to fix it in Cargo.toml), and link to the PR in your .spec file (preferably in a line above the "License" tag).

2. Until upstream releases a new version *with* those LICENSE files, please include them from the upstream GitHub sources.
Both MIT and Apache-2.0 licenses require redistributed sources to contain the license text.

You can add them as SOURCE1 and SOURCE2, and copy them to "." in %prep, like in these snippets (which also should make :

Source1: https://github.com/jmfiaschi/json_value_merge/raw/0.1.3/LICENSE-APACHE
Source2: https://github.com/jmfiaschi/json_value_merge/raw/0.1.3/LICENSE-MIT
%files devel
cp %{SOURCE1} .
cp %{SOURCE2} .

3. Removing the "criterion" dev-dependency with a "rust2rpm -p" patch is a good idea, since that dependency is never actually used but increases build time of the crate by a lot. However, removing the "[[bench]]" entry from Cargo.toml and the "bench/*.rs" files in %prep is not usually necessary, since those are not accessed during RPM builds at all (other than cargo checking that source files listed in "[[bench]]" are actually there, which they are).

4. Assuming drg still requires json_value_merge version 0.1.x, please update the package to version 0.1.3 for this review. Otherwise, the latest version would be 1.1.0, but if drg is not using that version yet, you can package the "old" 0.1.3 release for now.

Otherwise, the package looks fine, so I'll finish up the review once you've fixed these minor issues.

Comment 2 Trystram 2021-12-07 10:09:31 UTC
I submitted a fix upstream for the license files, it got merged and released fast :) 
So here is version 1.1.1 :

SRPM: https://gitlab.com/jbtrystram/rust-json_merge_values/-/raw/main/rust-json_value_merge-1.1.1-1.fc35.src.rpm
SPEC: https://gitlab.com/jbtrystram/rust-json_merge_values/-/raw/main/rust-json_value_merge.spec

Comment 3 Fabio Valentini 2021-12-10 10:48:33 UTC
Thanks for the update.

> # Upstream author shipped the performance benchmarks.
> rm -rf benches

I think you missed that, it's not necessary to removed those files, as mentioned in 3. in my previous comment.
It's just "one less thing you need to worry about manually tweaking" when updating the package.


Other than that:

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



Recommended post-import rust-sig tasks:

- add package to rust-sig with "commit" access

- 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

- track package in koschei for all built branches

Comment 4 Gwyn Ciesla 2021-12-10 16:46:13 UTC
(fedscm-admin):  The Pagure repository was created at https://src.fedoraproject.org/rpms/rust-json_value_merge

Comment 5 Fedora Update System 2021-12-13 13:19:00 UTC
FEDORA-2021-8af0018d7d has been submitted as an update to Fedora 35. https://bodhi.fedoraproject.org/updates/FEDORA-2021-8af0018d7d

Comment 6 Fedora Update System 2021-12-14 01:08:19 UTC
FEDORA-2021-8af0018d7d has been pushed to the Fedora 35 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf install --enablerepo=updates-testing --advisory=FEDORA-2021-8af0018d7d \*`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2021-8af0018d7d

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

Comment 7 Fedora Update System 2021-12-22 02:06:14 UTC
FEDORA-2021-8af0018d7d has been pushed to the Fedora 35 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.