Bug 2296542
| Summary: | Review Request: rust-tonic-types - Collection of useful protobuf types that can be used with tonic | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| Product: | [Fedora] Fedora | Reporter: | Cristian Le <fedora> | ||||||
| Component: | Package Review | Assignee: | Fabio Valentini <decathorpe> | ||||||
| Status: | CLOSED ERRATA | QA Contact: | Fedora Extras Quality Assurance <extras-qa> | ||||||
| Severity: | medium | Docs Contact: | |||||||
| Priority: | medium | ||||||||
| Version: | rawhide | CC: | decathorpe, package-review | ||||||
| Target Milestone: | --- | Keywords: | AutomationTriaged | ||||||
| Target Release: | --- | Flags: | decathorpe:
fedora-review+
|
||||||
| Hardware: | All | ||||||||
| OS: | Linux | ||||||||
| URL: | https://crates.io/crates/tonic-types | ||||||||
| Whiteboard: | |||||||||
| Fixed In Version: | rust-tonic-types-0.12.2-1.fc42 | Doc Type: | If docs needed, set a value | ||||||
| Doc Text: | Story Points: | --- | |||||||
| Clone Of: | Environment: | ||||||||
| Last Closed: | 2024-09-23 14:38:40 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: | 2296372, 2296375, 2296540 | ||||||||
| Bug Blocks: | 2297310 | ||||||||
| Attachments: |
|
||||||||
|
Description
Cristian Le
2024-07-09 11:14:10 UTC
Spec URL: https://lecris.fedorapeople.org/reviews/rust-tonic-types/rust-tonic-types.spec SRPM URL: https://lecris.fedorapeople.org/reviews/rust-tonic-types/rust-tonic-types-0.12.2-1.fc42.src.rpm Bumped to 0.12.2 and switched to permanent links Copr build: https://copr.fedorainfracloud.org/coprs/build/7947944 (failed) Build log: https://download.copr.fedorainfracloud.org/results/@fedora-review/fedora-review-2296542-rust-tonic-types/fedora-rawhide-x86_64/07947944-rust-tonic-types/builder-live.log.gz Please make sure the package builds successfully at least for Fedora Rawhide. - If the build failed for unrelated reasons (e.g. temporary network unavailability), please ignore it. - If the build failed because of missing BuildRequires, please make sure they are listed in the "Depends On" field --- 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. The license situation of this crate seems to be somewhat weird: - crate code is MIT - proto/*.proto files are Apache-2.0, but I can't see that they're actually referenced by the code? - src/generated/types.bin is a weird binary file (where is it from?) and it seems to have an embedded BSD-3-Clause license text 1. Please confirm my suspicions that the Apache-2.0 licensed .proto files are indeed unused. If that is indeed the case, investigate whether they can be dropped from the package and / or from the crate upstream. 2. Determine the origin of the types.bin file. How it's generated? Is that process reproducible? Could we rebuild it at build-time? And why does it embed a BSD-3-Clause license text? Spec URL: https://lecris.fedorapeople.org/reviews/rust-tonic-types/rust-tonic-types.spec SRPM URL: https://lecris.fedorapeople.org/reviews/rust-tonic-types/rust-tonic-types-0.12.2-1.fc42.src.rpm Copr is down, so I am uploading here before I forget. Preliminary update following https://github.com/hyperium/tonic/pull/1942 Copr build: https://copr.fedorainfracloud.org/coprs/build/8023493 (failed) Build log: https://download.copr.fedorainfracloud.org/results/@fedora-review/fedora-review-2296542-rust-tonic-types/fedora-rawhide-x86_64/08023493-rust-tonic-types/builder-live.log.gz Please make sure the package builds successfully at least for Fedora Rawhide. - If the build failed for unrelated reasons (e.g. temporary network unavailability), please ignore it. - If the build failed because of missing BuildRequires, please make sure they are listed in the "Depends On" field --- 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. Spec URL: https://lecris.fedorapeople.org/reviews/rust-tonic-types/rust-tonic-types.spec SRPM URL: https://lecris.fedorapeople.org/reviews/rust-tonic-types/rust-tonic-types-0.12.2-1.fc42.src.rpm Fixed build and packaging issue Created attachment 2047230 [details]
The .spec file difference from Copr build 8023493 to 8026925
Copr build: https://copr.fedorainfracloud.org/coprs/build/8026925 (succeeded) Review template: https://download.copr.fedorainfracloud.org/results/@fedora-review/fedora-review-2296542-rust-tonic-types/fedora-rawhide-x86_64/08026925-rust-tonic-types/fedora-review/review.txt Please take a look if any issues were found. --- 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. > Source2: https://github.com/LecrisUT/tonic/raw/packaging/fedora/LICENSE-APACHE This link is no longer valid. If you need to include an external Apache-2.0 license text, please use the official one, not a custom link: https://www.apache.org/licenses/LICENSE-2.0.txt > BuildRequires: protobuf-devel Is this really needed here? I thought prost should already pull in protobuf - or do you need protoc? That one is in "protobuf-compiler". If it is /usr/bin/protoc that you need, then I wonder why 1) it's not pulled in correctly by prost, and 2) you could just depend on "BR: /usr/bin/protoc" directly, without guessing the package name. The patch to add build.rs looks good to me, and the package in general looks fine, with these two exceptions. > > Source2: https://github.com/LecrisUT/tonic/raw/packaging/fedora/LICENSE-APACHE > > This link is no longer valid. If you need to include an external Apache-2.0 > license text, please use the official one, not a custom link: > > https://www.apache.org/licenses/LICENSE-2.0.txt The link should still be available, and I am mostly unsure if upstream would want to change the template copyright part or not. sqlx do that change. But yeah, I'll switch it to a static bundled file. > > BuildRequires: protobuf-devel > > Is this really needed here? I thought prost should already pull in protobuf > - or do you need protoc? That one is in "protobuf-compiler". > If it is /usr/bin/protoc that you need, then I wonder why 1) it's not pulled > in correctly by prost, and 2) you could just depend on "BR: /usr/bin/protoc" > directly, without guessing the package name. I need to parts from here the `protoc` and the std libraries themselves. I have previously tried to build `atuin` locally with `protobuf-compiler` and it failed because it couldn't find the appropriate libraries. I just double-checked for this package as well by changing it to `BR: /usr/bin/protoc` and I get: ``` Running `/builddir/build/BUILD/rust-tonic-types-0.12.2-build/tonic-types-0.12.2/target/rpm/build/tonic-types-b1705e977b60cfc9/build-script-build` error: failed to run custom build command for `tonic-types v0.12.2 (/builddir/build/BUILD/rust-tonic-types-0.12.2-build/tonic-types-0.12.2)` Caused by: process didn't exit successfully: `/builddir/build/BUILD/rust-tonic-types-0.12.2-build/tonic-types-0.12.2/target/rpm/build/tonic-types-b1705e977b60cfc9/build-script-build` (exit status: 101) --- stdout cargo::rerun-if-changed=/builddir/build/BUILD/rust-tonic-types-0.12.2-build/tonic-types-0.12.2/proto/status.proto cargo::rerun-if-changed=/builddir/build/BUILD/rust-tonic-types-0.12.2-build/tonic-types-0.12.2/proto/error_details.proto cargo::rerun-if-changed=/builddir/build/BUILD/rust-tonic-types-0.12.2-build/tonic-types-0.12.2/proto --- stderr thread 'main' panicked at build.rs:51:10: called `Result::unwrap()` on an `Err` value: Custom { kind: Other, error: "protoc failed: google/protobuf/any.proto: File not found.\nstatus.proto:19:1: Import \"google/protobuf/any.proto\" was not found or had errors.\nstatus.proto:46:12: \"google.protobuf.Any\" is not defined.\n" } note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace error: Bad exit status from /var/tmp/rpm-tmp.Gc0TDy (%build) Bad exit status from /var/tmp/rpm-tmp.Gc0TDy (%build) ``` ```console $ dnf repoquery --whatprovides */google/protobuf/any.proto erlang-gpb-0:4.21.1-2.fc41.noarch golang-github-gogo-protobuf-devel-0:1.3.2-16.fc41.noarch mingw32-protobuf-0:3.19.6-6.fc41.noarch mingw64-protobuf-0:3.19.6-6.fc41.noarch protobuf-devel-0:3.19.6-10.fc41.i686 protobuf-devel-0:3.19.6-10.fc41.x86_64 python3-grpcio-tools-0:1.48.4-41.fc41.x86_64 rust-protobuf-codegen-pure-devel-0:2.28.0-4.fc41.noarch ``` Spec URL: https://lecris.fedorapeople.org/reviews/rust-tonic-types/rust-tonic-types.spec SRPM URL: https://lecris.fedorapeople.org/reviews/rust-tonic-types/rust-tonic-types-0.12.2-1.fc42.src.rpm Made LICENSE-Apache a static file Created attachment 2047804 [details]
The .spec file difference from Copr build 8026925 to 8042165
Copr build: https://copr.fedorainfracloud.org/coprs/build/8042165 (succeeded) Review template: https://download.copr.fedorainfracloud.org/results/@fedora-review/fedora-review-2296542-rust-tonic-types/fedora-rawhide-x86_64/08042165-rust-tonic-types/fedora-review/review.txt Please take a look if any issues were found. --- 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. Thank you, looks good to me now! === Package was generated with rust2rpm, simplifying the review. ✅❌❓🫤 ✅ package contains only permissible content ✅ 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 clarification still pending upstream) ✅ license files are 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 (*NOT* pre-release) 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) Thank you for the review, Fabio The Pagure repository was created at https://src.fedoraproject.org/rpms/rust-tonic-types FEDORA-2024-89699cebcb (rust-tonic-types-0.12.2-1.fc42) has been submitted as an update to Fedora 42. https://bodhi.fedoraproject.org/updates/FEDORA-2024-89699cebcb FEDORA-2024-89699cebcb (rust-tonic-types-0.12.2-1.fc42) has been pushed to the Fedora 42 stable repository. If problem still persists, please make note of it in this bug report. FEDORA-2024-b32479db34 (rust-tonic-types-0.12.2-1.fc41) has been submitted as an update to Fedora 41. https://bodhi.fedoraproject.org/updates/FEDORA-2024-b32479db34 FEDORA-2024-4ea1514c36 has been pushed to the Fedora 39 testing repository. Soon you'll be able to install the update with the following command: `sudo dnf upgrade --enablerepo=updates-testing --refresh --advisory=FEDORA-2024-4ea1514c36` You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2024-4ea1514c36 See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates. FEDORA-2024-b32479db34 has been pushed to the Fedora 41 testing repository. Soon you'll be able to install the update with the following command: `sudo dnf upgrade --enablerepo=updates-testing --refresh --advisory=FEDORA-2024-b32479db34` You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2024-b32479db34 See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates. FEDORA-2024-f82c7b97a5 has been pushed to the Fedora 40 testing repository. Soon you'll be able to install the update with the following command: `sudo dnf upgrade --enablerepo=updates-testing --refresh --advisory=FEDORA-2024-f82c7b97a5` You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2024-f82c7b97a5 See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates. FEDORA-2024-4ea1514c36 (rust-tonic-types-0.12.2-1.fc39) has been pushed to the Fedora 39 stable repository. If problem still persists, please make note of it in this bug report. FEDORA-2024-b32479db34 (rust-tonic-types-0.12.2-1.fc41) has been pushed to the Fedora 41 stable repository. If problem still persists, please make note of it in this bug report. FEDORA-2024-f82c7b97a5 (rust-tonic-types-0.12.2-1.fc40) has been pushed to the Fedora 40 stable repository. If problem still persists, please make note of it in this bug report. |