Bug 2463266 - Review Request: gobject-linter - A tree-sitter-based linter for GObject/C applications
Summary: Review Request: gobject-linter - A tree-sitter-based linter for GObject/C app...
Keywords:
Status: ASSIGNED
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Fabio Valentini
QA Contact: Fedora Extras Quality Assurance
URL: https://github.com/bilelmoussaoui/gob...
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2026-04-27 18:39 UTC by W. Michael Petullo
Modified: 2026-05-05 17:59 UTC (History)
2 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed:
Type: ---
Embargoed:
decathorpe: fedora-review?


Attachments (Terms of Use)

Description W. Michael Petullo 2026-04-27 18:39:54 UTC
Spec URL: https://www.flyn.org/SRPMS/rust-goblint.spec
SRPM URL: https://www.flyn.org/SRPMS/rust-goblint-0-1.20260427git4bde7b0.fc44.src.rpm
Description: A tree-sitter-based linter for GObject/C applications
Fedora Account System Username: mikep

Comment 1 Fabio Valentini 2026-04-28 11:30:51 UTC
Taking this review.

Initial comments:

1. This isn't following the Naming guidelines for Rust packages.

It's not a Rust crate packaged from crates.io, so it MUST NOT use the "rust-" name prefix.
In general, I would recommend that you just follow the template documented here:
https://docs.fedoraproject.org/en-US/packaging-guidelines/Rust/#_non_crate_rust_project

It should also make some other things easier (i.e. no defining "cargo_install_lib 0" necessary).

2. The package isn't following the guidelines for snapshot based versions.

The snapshot information should now be in Version, not in Release.
Use something like "Version: 0~%{commitdate}.git%{shortcommit}" instead.

3. The package uses %autochangelog but not %autorelease.

This is often broken. Either use both or neither, and you SHOULD use both.

4. The "License" tag is incomplete.

Even without having built the package, I am 100% certain that the output of "%cargo_license_summary" during the build will not just be one line containing "MIT". The License tag needs to reflect *all* dependencies that get statically linked into the final executable.

You also generate the LICENSE.dependencies file, but then don't use it. It needs to be listed as "%license LICENSE.dependencies" in the %files list.

5. The fact that the project currently builds successfully seems to be a lucky accident.

The project contains a sub-crate at "gobject-ast" that is referenced as a path-based dependency, but it's not set up as a "workspace" member. This only works by accident right now, and is probably not intentional in the upstream project. It might be good to fix this.

Comment 2 W. Michael Petullo 2026-05-04 14:23:47 UTC
Spec URL: https://www.flyn.org/SRPMS/goblint.spec
SRPM URL: https://www.flyn.org/SRPMS/goblint-0~20260427.git4bde7b0-1.fc44.src.rpm
Description: A tree-sitter-based linter for GObject/C applications
Fedora Account System Username: mikep

(1) Drop "rust-" prefix from package name.

(2) Move snapshot information to version rather than release.

(3) Use %autorelease.

(4) Update License tag. I am not sure how to normalize the license terms, so this might require more work.

(5) Please see https://github.com/bilelmoussaoui/goblint/issues/77.

Comment 3 W. Michael Petullo 2026-05-04 18:49:02 UTC
Spec URL: https://www.flyn.org/SRPMS/goblint.spec
SRPM URL: https://www.flyn.org/SRPMS/goblint-0~20260504.gitf58e4d8-1.fc44.src.rpm
Description: A tree-sitter-based linter for GObject/C applications
Fedora Account System Username: mikep

(5) I notified upstream about the sub-crate issue (https://github.com/bilelmoussaoui/goblint/issues/77), and Bilal Elmoussaoui closed the issue as fixed after making a change today. I updated the package to use this most recent commit.

Comment 4 W. Michael Petullo 2026-05-05 17:55:38 UTC
Spec URL: https://www.flyn.org/SRPMS/gobject-linter.spec
SRPM URL: https://www.flyn.org/SRPMS/gobject-linter-0~20260505.git0a8b69c-1.fc44.src.rpm
Description: A tree-sitter-based linter for GObject/C applications
Fedora Account System Username: mikep

- Changed name of package to reflect upstream rename that happened today (https://github.com/bilelmoussaoui/gobject-linter/issues/74).

Unfortunately, this new version requires crate(unidiff/default) >= 0.4.0 and < 0.5.0~, which does not yet appear in Fedora Rawhide.

Comment 5 Fedora Review Service 2026-05-05 17:59:23 UTC
Copr build:
https://copr.fedorainfracloud.org/coprs/build/10427244
(failed)

Build log:
https://download.copr.fedorainfracloud.org/results/@fedora-review/fedora-review-2463266-gobject-linter/fedora-rawhide-x86_64/10427244-gobject-linter/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.


Note You need to log in before you can comment on or make changes to this bug.