Bug 2381771

Summary: Review Request: rust-tree-house-bindings - Homey Rust bindings for the tree-sitter C library
Product: [Fedora] Fedora Reporter: blinxen <h-k-81>
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   
Whiteboard:
Fixed In Version: Doc Type: ---
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2025-08-01 21:49:15 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: 2381795    

Description blinxen 2025-07-17 19:34:35 UTC
Spec URL: https://blinxen.fedorapeople.org/rust-tree-house-bindings/rust-tree-house-bindings.spec
SRPM URL: https://blinxen.fedorapeople.org/rust-tree-house-bindings/rust-tree-house-bindings-0.2.1-1.fc43.src.rpm

Description:
Homey Rust bindings for the tree-sitter C library.

Fedora Account System Username: blinxen

Comment 1 blinxen 2025-07-17 19:34:37 UTC
This package built on koji:  https://koji.fedoraproject.org/koji/taskinfo?taskID=134903826

Comment 2 Fabio Valentini 2025-07-25 19:59:27 UTC
Some things that aren't quite right yet:

1. You adapt the License tag in the spec file, but not in Cargo.toml. This will only have a local effect and not propagate to dependent packages that use the `%cargo_license*` macros. You need to patch Cargo.toml for it to have a global effect.

2. It looks like not all of icu is bundled (as you mentioned) - looking at the files that are included, they all seem to have a Unicode license header, and none with BSD-2/3-Clause or Public Domain dedications. Can you double-check whether you can drop those SPDX identifiers from the License tag? It would simplify things.

Comment 3 blinxen 2025-07-25 20:35:41 UTC
> 1. You adapt the License tag in the spec file, but not in Cargo.toml. This will only have a local effect and not propagate to dependent packages that use the `%cargo_license*` macros. You need to patch Cargo.toml for it to have a global effect.

I added a patch to update the license field in the "Cargo.toml" file.

> 2. It looks like not all of icu is bundled (as you mentioned) - looking at the files that are included, they all seem to have a Unicode license header, and none with BSD-2/3-Clause or Public Domain dedications. Can you double-check whether you can drop those SPDX identifiers from the License tag? It would simplify things.

You are right, I checked again and it seems tree-sitter is only using "Unicode-DFS-2016" licensed files from the ICU repository.

Links to the updated files:
Spec URL: https://blinxen.fedorapeople.org/rust-tree-house-bindings/rust-tree-house-bindings.spec
SRPM URL: https://blinxen.fedorapeople.org/rust-tree-house-bindings/rust-tree-house-bindings-0.2.1-1.fc43.src.rpm

Comment 4 Fabio Valentini 2025-07-31 16:44:39 UTC
Thanks, looks pretty good to me now. One last thing:

Please exclude the "vendor.sh" file from the package. It will be unused, and it causes a dependency on /usr/bin/bash to get generated.
(Preferably with a - potentially upstreamable - patch to Cargo.toml, or alternatively, with a non-upstreamable %exclude item in the %files list of the "devel" subpackage.)

Comment 5 blinxen 2025-07-31 18:56:55 UTC
I excluded the file using "%exclude" for now and will try to upstream it later.

Links to the updated files:
SRPM URL: https://blinxen.fedorapeople.org/rust-tree-house-bindings/rust-tree-house-bindings-0.2.1-1.fc43.src.rpm
Spec URL: https://blinxen.fedorapeople.org/rust-tree-house-bindings/rust-tree-house-bindings.spec

Comment 6 Fabio Valentini 2025-08-01 13:17:41 UTC
Thanks, looks good to me!

===

Package was generated with rust2rpm, simplifying the review.

✅ package contains only permissible content
✅ bundled content is correctly declared
✅ 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

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 (*NOT* pre-release filter): alpha;beta;rc;pre
  distro: Fedora
  Package: rust-$crate

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

Comment 7 Fedora Admin user for bugzilla script actions 2025-08-01 20:29:45 UTC
The Pagure repository was created at https://src.fedoraproject.org/rpms/rust-tree-house-bindings

Comment 8 Fedora Update System 2025-08-01 20:46:12 UTC
FEDORA-2025-e1919d75bc (rust-tree-house-bindings-0.2.1-1.fc43) has been submitted as an update to Fedora 43.
https://bodhi.fedoraproject.org/updates/FEDORA-2025-e1919d75bc

Comment 9 Fedora Update System 2025-08-01 21:49:15 UTC
FEDORA-2025-e1919d75bc (rust-tree-house-bindings-0.2.1-1.fc43) has been pushed to the Fedora 43 stable repository.
If problem still persists, please make note of it in this bug report.