Bug 2257184

Summary: Review Request: rust-exacl - Manipulate file system access control lists
Product: [Fedora] Fedora Reporter: Michel Lind <michel>
Component: Package ReviewAssignee: Fabio Valentini <decathorpe>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: rawhideCC: decathorpe, package-review
Target Milestone: ---Flags: decathorpe: fedora-review+
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
URL: https://crates.io/crates/exacl
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2024-01-26 04:09:38 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:    
Bug Blocks: 2257192    

Description Michel Lind 2024-01-07 20:59:55 UTC
Spec URL: https://salimma.fedorapeople.org/rust-exacl.spec
SRPM URL: https://salimma.fedorapeople.org/rust-exacl-0.11.0-1.fc38.src.rpm

Description:
Manipulate file system access control lists (ACL) on macOS, Linux, and
FreeBSD.

Fedora Account System Username: salimma

Comment 1 Fabio Valentini 2024-01-07 21:56:05 UTC
Can you patch Cargo.toml and build.rs so that the code path for the "buildtime_bindgen" feature is taken unconditionally? Otherwise the crate will use pre-generated bindings by default.

I.e. in Cargo.toml, the "bindgen" build-dependency should be non-optional, and in build.rs, the "not(buildtime_bindgen)" code path can be removed, and the "buildtime_bindgen" code path can be unconditional.

Additionally, the crate includes a bunch of shell scripts and files that are only useful for upstream. These should be excluded from getting installed into the -devel package.

Comment 2 Michel Lind 2024-01-08 16:37:51 UTC
(In reply to Fabio Valentini from comment #1)
> Can you patch Cargo.toml and build.rs so that the code path for the
> "buildtime_bindgen" feature is taken unconditionally? Otherwise the crate
> will use pre-generated bindings by default.
> 
> I.e. in Cargo.toml, the "bindgen" build-dependency should be non-optional,
> and in build.rs, the "not(buildtime_bindgen)" code path can be removed, and
> the "buildtime_bindgen" code path can be unconditional.
> 
> Additionally, the crate includes a bunch of shell scripts and files that are
> only useful for upstream. These should be excluded from getting installed
> into the -devel package.

Will do, thanks

Comment 4 Fedora Review Service 2024-01-24 20:08:07 UTC
Copr build:
https://copr.fedorainfracloud.org/coprs/build/6947605
(succeeded)

Review template:
https://download.copr.fedorainfracloud.org/results/@fedora-review/fedora-review-2257184-rust-exacl/fedora-rawhide-x86_64/06947605-rust-exacl/fedora-review/review.txt

Found issues:

- No gcc, gcc-c++ or clang found in BuildRequires
  Read more: https://docs.fedoraproject.org/en-US/packaging-guidelines/C_and_C++/

Please know that there can be false-positives.

---
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 5 Fabio Valentini 2024-01-25 23:16:41 UTC
> Additionally, the crate includes a bunch of shell scripts and files that are only useful for upstream. These should be excluded from getting installed into the -devel package.

Looks like you missed this?

Please exclude at least the "ci" directory from the installed files, and possibly also "tests/*.sh", "tests/valgrind.supp", "tests/*.h", and also the "bindgen" directory, since it will end up unused unconditionally.

So something like this would be great:

```toml
[package]
# ...
exclude = [
    "/bindgen/",
    "/ci/",
    "/tests/*.sh",
    "/tests/*.h",
    "/tests/valgrind.supp",
]
# ...
```

Otherwise, package looks good to me.

===

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 (one test disabled with explanation)
- 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:

- 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

- add @rust-sig with "commit" access as package co-maintainer
  (should happen automatically)

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

- track package in koschei for all built branches
  (should happen automatically once rust-sig is co-maintainer)

===

Please note the comment above.

Comment 6 Fedora Admin user for bugzilla script actions 2024-01-26 03:45:59 UTC
The Pagure repository was created at https://src.fedoraproject.org/rpms/rust-exacl

Comment 7 Michel Lind 2024-01-26 03:52:44 UTC
(In reply to Fabio Valentini from comment #5)
> > Additionally, the crate includes a bunch of shell scripts and files that are only useful for upstream. These should be excluded from getting installed into the -devel package.
> 
> Looks like you missed this?
> 
> Please exclude at least the "ci" directory from the installed files, and
> possibly also "tests/*.sh", "tests/valgrind.supp", "tests/*.h", and also the
> "bindgen" directory, since it will end up unused unconditionally.
> 
> So something like this would be great:
> 
> ```toml
> [package]
> # ...
> exclude = [
>     "/bindgen/",
>     "/ci/",
>     "/tests/*.sh",
>     "/tests/*.h",
>     "/tests/valgrind.supp",
> ]
> # ...
> ```
> 
> Otherwise, package looks good to me.
> 
Ah yes, thanks!

Also regenerated the spec to include the bindgen feature subpackage (which does nothing)

Comment 8 Fedora Update System 2024-01-26 04:05:01 UTC
FEDORA-2024-fcce63cc1c has been submitted as an update to Fedora 40. https://bodhi.fedoraproject.org/updates/FEDORA-2024-fcce63cc1c

Comment 9 Fedora Update System 2024-01-26 04:09:38 UTC
FEDORA-2024-fcce63cc1c has been pushed to the Fedora 40 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 10 Fedora Update System 2024-01-26 20:13:24 UTC
FEDORA-2024-efb93bdca6 has been submitted as an update to Fedora 38. https://bodhi.fedoraproject.org/updates/FEDORA-2024-efb93bdca6

Comment 11 Fedora Update System 2024-01-26 20:13:24 UTC
FEDORA-2024-6e96541115 has been submitted as an update to Fedora 39. https://bodhi.fedoraproject.org/updates/FEDORA-2024-6e96541115

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

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

Comment 13 Fedora Update System 2024-01-27 03:05:45 UTC
FEDORA-2024-efb93bdca6 has been pushed to the Fedora 38 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf install --enablerepo=updates-testing --refresh --advisory=FEDORA-2024-efb93bdca6 \*`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2024-efb93bdca6

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

Comment 14 Fedora Update System 2024-01-31 01:42:17 UTC
FEDORA-2024-efb93bdca6 has been pushed to the Fedora 38 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 15 Fedora Update System 2024-01-31 02:04:23 UTC
FEDORA-2024-6e96541115 has been pushed to the Fedora 39 stable repository.
If problem still persists, please make note of it in this bug report.