Bug 2103477

Summary: Review Request: rust-normpath - More reliable path manipulation
Product: [Fedora] Fedora Reporter: Zbigniew Jędrzejewski-Szmek <zbyszek>
Component: Package ReviewAssignee: Fabio Valentini <decathorpe>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: decathorpe, lbalhar, maxwell, package-review
Target Milestone: ---Flags: decathorpe: fedora-review+
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2023-01-22 01:41:55 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:
Bug Depends On: 2103480    
Bug Blocks: 2027038    

Description Zbigniew Jędrzejewski-Szmek 2022-07-03 17:19:08 UTC
Spec URL: https://in.waw.pl/~zbyszek/fedora/rust-normpath.spec
SRPM URL: https://in.waw.pl/~zbyszek/fedora/rust-normpath-0.3.2-1.fc37.src.rpm
Description: More reliable path manipulation.
Fedora Account System Username: zbyszek

Comment 1 Zbigniew Jędrzejewski-Szmek 2022-07-03 17:20:07 UTC
This needs print_bytes>=0.4, which we apparently don't have.

Comment 2 Maxwell G 2022-07-04 03:20:15 UTC
According to upstream's README:

### Third-party software

This crate includes copies and modifications of software developed by third
parties:

- [src/cmp.rs] and [tests/rust.rs] contain modifications of code from The Rust
  Programming Language, licensed under the MIT License or the Apache License,
  Version 2.0.

- [src/common/localize/macos/fruity.rs] contains modifications of code from
  crate [fruity], licensed under the MIT License or the Apache License,
  Version 2.0.

See those files for more details.

Copies of third-party licenses can be found in [LICENSE-THIRD-PARTY].

I suppose these should have virtual Provides for `bundled(crate(fruity))` and `bundled(rust)`. The file headers have what commit hashes they were originally taken from, so you could use those as the version. The Rust Packaging Guidelines explicitly allow[1] bundling in this case.

[1]: https://docs.fedoraproject.org/en-US/packaging-guidelines/Rust/#_bundled_dependencies

Comment 3 Zbigniew Jędrzejewski-Szmek 2022-07-04 08:00:25 UTC
(In reply to Maxwell G from comment #2)
> - [src/cmp.rs] and [tests/rust.rs] contain modifications of code from The
> Rust
>   Programming Language, licensed under the MIT License or the Apache License,
>   Version 2.0.

I added Provides:bundled(rust) for this. 
 
> - [src/common/localize/macos/fruity.rs] contains modifications of code from
>   crate [fruity], licensed under the MIT License or the Apache License,
>   Version 2.0.

This is only in git, the released version doesn't have it yet.

Thanks. Updated versions:
Spec URL: https://in.waw.pl/~zbyszek/fedora/rust-normpath.spec
SRPM URL: https://in.waw.pl/~zbyszek/fedora/rust-normpath-0.3.2-2.fc37.src.rpm

Comment 4 Fabio Valentini 2022-07-29 08:57:22 UTC
Hi Maxwell, do you want to proceed with the review, or should I take it over?

Comment 5 Maxwell G 2022-07-29 09:46:00 UTC
Feel free to just take it over. I deliberately didn't assign it to myself.

Comment 6 Fabio Valentini 2022-07-29 11:23:53 UTC
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
- 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

===

Two minor issues / warnings:

- If you're patching the print_bytes dependency, either bump it to plain "0.6" (which is what you have packaged),
  or, if you want to stay compatible with what upstream does, use ">=0.4,<0.7" instead.

  Using open-ended ">=0.4" is slightly dangerous, because it is compatible with *any* version higher than 0.4,
  which is probably not what you want (and which will also lead to very confusing error messages if the print_bytes crate ever changes its APIs).

- Make sure that you import the correct files into dist-git.
  The linked SRPM is already mangled by rpmautospec for some reason.

Comment 7 Fabio Valentini 2022-10-14 12:24:28 UTC
The repository for this package was created some time ago:
https://src.fedoraproject.org/rpms/rust-normpath

Looks like fedscm-admin just bugged out, didn't push an initial commit, and didn't comment here.
Please continue with importing the package.

Comment 8 Lumír Balhar 2022-12-06 12:40:38 UTC
*** Bug 2151234 has been marked as a duplicate of this bug. ***

Comment 9 Fabio Valentini 2022-12-06 15:19:00 UTC
https://pagure.io/fedora-infrastructure/issue/11035

Comment 10 Fedora Update System 2023-01-13 16:00:40 UTC
FEDORA-EPEL-2023-856ea9cc50 has been submitted as an update to Fedora EPEL 9. https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2023-856ea9cc50

Comment 11 Fedora Update System 2023-01-13 16:00:40 UTC
FEDORA-2023-e38d8e2bfe has been submitted as an update to Fedora 36. https://bodhi.fedoraproject.org/updates/FEDORA-2023-e38d8e2bfe

Comment 12 Fedora Update System 2023-01-14 01:42:06 UTC
FEDORA-EPEL-2023-856ea9cc50 has been pushed to the Fedora EPEL 9 testing repository.

You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2023-856ea9cc50

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

Comment 13 Fedora Update System 2023-01-14 02:08:11 UTC
FEDORA-2023-b8692f75ba has been pushed to the Fedora 37 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf install --enablerepo=updates-testing --refresh --advisory=FEDORA-2023-b8692f75ba \*`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2023-b8692f75ba

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

Comment 14 Fedora Update System 2023-01-14 02:24:10 UTC
FEDORA-2023-e38d8e2bfe has been pushed to the Fedora 36 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf install --enablerepo=updates-testing --refresh --advisory=FEDORA-2023-e38d8e2bfe \*`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2023-e38d8e2bfe

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

Comment 15 Fedora Update System 2023-01-22 01:41:55 UTC
FEDORA-2023-b8692f75ba has been pushed to the Fedora 37 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 16 Fedora Update System 2023-01-22 01:48:21 UTC
FEDORA-2023-e38d8e2bfe has been pushed to the Fedora 36 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 17 Fedora Update System 2023-01-22 02:25:29 UTC
FEDORA-EPEL-2023-856ea9cc50 has been pushed to the Fedora EPEL 9 stable repository.
If problem still persists, please make note of it in this bug report.