rust-debcargo-conf-linter 0.1.0-1
Package Information
| Description | linter for the debcargo-conf project in the debian rust team A linter for configuration files in debcargo-conf, that is used to package Rust crates for Debian. |
|---|---|
| Maintainer | Debian Rust Maintainers <pkg-rust-maintainers@alioth-lists.debian.net> |
| Changed By | Alexander Kjäll <alexander.kjall@gmail.com> |
| Distribution | unstable |
| Architecture | any |
| VCS | git: https://salsa.debian.org/rust-team/debcargo-conf.git [src/debcargo-conf-linter] (browse) |
| Tracker | https://tracker.debian.org/pkg/rust-debcargo-conf-linter |
| Uploaded | 1 day ago |
New Package Report
.changes
| Architecture | amd64 source |
|---|---|
| Distribution | unstable |
| Source | rust-debcargo-conf-linter |
| Version | 0.1.0-1 |
| Changed-By | Alexander Kjäll <alexander.kjall@gmail.com> |
Changelog
rust-debcargo-conf-linter (0.1.0-1) unstable; urgency=medium . * Package debcargo-conf-linter 0.1.0 from crates.io using debcargo 2.8.5+alpha.0
.dsc
| Component | main |
|---|---|
| Package-List | debcargo-conf-linter deb rust optional arch=any |
| Section | rust |
| Priority | optional |
debian/copyright
Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ Upstream-Name: debcargo-conf-linter Upstream-Contact: Alexander Kjäll Source: https://salsa.debian.org/capitol/debcargo-conf-linter Files: * Copyright: 2026 Alexander Kjäll License: GPL-3.0-only Files: debian/* Copyright: 2026 Debian Rust Maintainers <pkg-rust-maintainers@alioth-lists.debian.net> 2026 Alexander Kjäll <alexander.kjall@gmail.com> License: GPL-3.0-only License: GPL-3.0-only This package is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 3. . This package is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. . You should have received a copy of the GNU General Public License along with this package; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA . On Debian systems, the complete text of the GNU General Public License can be found in /usr/share/common-licenses/GPL-3.
DFSG Assistant LLM REVIEW 0 blocker, 0 important, 1 minor
This is an LLM based review using a Debian Inference based workflow. It was not written by a member of the DFSG team and has not been checked by one. It is not a decision on the package: it may be wrong, and it may have missed things.
Reviewed 1 day ago.
Report
DFSG NEW review for rust-debcargo-conf-linter version 0.1.0-1
Summary
- Licensing is DFSG-compliant and
debian/copyrightis accurate: Yes - Packaging is of good quality: Yes
- Issues: 0 blocker, 0 important, 1 minor
- debian/watch: version 5
- debian/copyright: machine-readable
- Scan before the review: nothing found
Licensing
The crate declares license = "GPL-3.0-only" in Cargo.toml/Cargo.toml.orig and repeats it in README.md (License section, Copyright (C) 2026 Alexander Kjäll) and in the verbatim GPL-3 text in LICENSE; debian/copyright is valid DEP-5 and matches that for every upstream file via Files: *, plus a debian/* stanza naming both the Debian Rust Maintainers and the upstream author. No non-free terms, no unlicensed file, no vendored third-party code and no generated/binary files. The three copyright holders the prescan flagged in src/rules/copyright_syntax.rs are string literals of a DEP-5 sample document used as unit-test input, not copyright claims, so they correctly have no stanza.
Packaging
Standard debcargo-generated packaging for a bin-only crate: buildsystem cargo at compat 13, complete and satisfiable Build-Depends-Arch (all nine librust-* names exist in the archive at the versions required), correct -dev feature packages for toml_edit's non-default parse/display features, no patches, source format 3.0 (quilt), Standards-Version 4.7.4 against Policy 4.7.4.1, Vcs-* and upstream/metadata present, and a hand-written 600-line man page installed through .manpages. The only nit is that nothing runs the crate's unit tests: dh-cargo's test step is cargo build, and there is no autopkgtest.
Issues
minor
packaging
1. No autopkgtest, and the crate's unit tests are never run (dh-cargo's test step is cargo build)
◂
- Files:
debian/rules:3,debian/ (no tests/ directory),src/rules/copyright_syntax.rs:225-345,Cargo.toml:60 - Basis: checked, in the package or with a reference tool
- Evidence: debian/rules is
%:\n\tdh $@ --buildsystem cargo;/usr/share/perl5/Debian/Debhelper/Buildsystem/cargo.pmsub testhasmy $cmd="build"; ... } elsif ($_[0] eq "test") { $cmd="test"; }, sodh_auto_testrunscargo build;ls debian/has notests/. - Problem: The
#[cfg(test)] mod testssuites in the nine files undersrc/rules/(over twenty cases, including the DEP-5 fixtures) are compiled into no binary and run nowhere: not during the build, and not by any autopkgtest, since none exists. A regression in a lint rule therefore reaches the archive unchecked, and thetempfiledev-dependency (Cargo.toml:60) is never used. - Fix: Add
debian/tests/controlwith an autopkgtest that exercises the installed CLI, e.g.Test-Command: debcargo-conf-linter --list-rulesplus a fixture debcargo-conf tree asserting the diagnostic and exit status 1; or, to run the unit tests, addlibrust-tempfile-3+default-dev <!nocheck>to Build-Depends-Arch andoverride_dh_auto_test:withdh_auto_test -- test(dh-cargo supports passingtesttocargo test).
Verified ◂
- Complete inventory of the 17 upstream files outside
debian/:.cargo_vcs_info.json,.gitignore,Cargo.lock,Cargo.toml,Cargo.toml.orig,LICENSE,README.md,src/{diagnostic,main,package,report}.rsand the nine files insrc/rules/; no vendor/, no third-party subdirectory, no LICENSE/COPYING/AUTHORS other than the top-levelLICENSE. src/rules/copyright_syntax.rs:236(Copyright: 2020 Jane Doe <jane@example.com>),:286(VALID.replace("Copyright: 2020 Jane", "Copyright 2020 Jane")) and:333(VALID.replace("Copyright: 2020 Jane Doe <jane@example.com>\n", "")) are the DEP-5 sample documentconst VALIDand the string replacements applied to it in#[cfg(test)] mod tests; the prescan's holdersJane Doe,Jane")andJane", "Copyrightare fragments of those test literals, not copyright notices, sodebian/copyrightis right not to carry the stanza the debcargo hint proposed.LICENSEis the verbatim 674-line GPL-3 text; it is matched byFiles: *as GPL-3.0-only and, as usual for a licence-text file whose FSF notice permits verbatim copying only, given no separate FSF stanza.- No per-file copyright or SPDX headers exist in
src/; the only copyright statements in upstream files are README.md:336 (Copyright (C) 2026 Alexander Kjäll) and the same holder in the licence header ofdebian/debcargo-conf-linter.1:3, both named indebian/copyright. debian/copyrightis DEP-5 with the correctFormat:URL,Files: *plus a laterdebian/*stanza, and a stand-alone GPL-3.0-only paragraph pointing at/usr/share/common-licenses/GPL-3; no licence text outside common-licenses is needed.- All nine Build-Depends-Arch crate names resolve in the archive (apt-cache): librust-annotate-snippets-0.12, librust-anstyle-1, librust-cfg-expr-0.20, librust-clap-4 (+default, +derive), librust-deb822-lossless-0.5, librust-debian-changelog-0.2, librust-debian-copyright-0.1, librust-toml-edit-0.25 (+parse, +display) are provided by current versions; dh-sequence-cargo is provided by dh-cargo 34.
- The missing
librust-tempfile-3-devin Build-Depends is not a build problem: dh-cargo's test step runscargo build, notcargo test(cargo.pmsub test), and the crate setsautotests = false; tempfile is a dev-dependency only. Cargo.tomlis cargo's regenerated manifest andCargo.toml.orig(its source) is shipped;Cargo.lockis removed by the cargo buildsystem at configure time.- No
debian/patchesand no applied quilt patches;debian/source/formatis3.0 (quilt). - Standards-Version 4.7.4 matches the reviewing system's Policy 4.7.4.1 (first two components equal), so not an issue.
- The CLI in
src/main.rs(--root/-r,--rule,--list-rules,--format full|compact,--color auto|always|never, positional crate names) matches the synopsis and options documented indebian/debcargo-conf-linter.1and README.md. debian/copyright.debcargo.hintstill carries debcargo'sFIXME (overlay)placeholders andUNKNOWN-LICENSEshort names, but it is debcargo's generated suggestion, is not installed and is notdebian/copyright, so it makes no licensing claim for the binary package.- uscan found the packaged version as the newest upstream release (upstream
0.1.0, packaged0.1.0). - Every pointer of
debian/copyrightto /usr/share/common-licenses names a file that is there (GPL-3).
Not confirmed ◂
- No network access, so the
Vcs-Git/Vcs-Browserlocation (rust-team/debcargo-conf, subdirectorysrc/debcargo-conf-linter) and the upstreamHomepagecould not be checked for reachability; the bracket syntax and layout are consistent with the Rust team's repositories.
Proposed changes ◂
None.
Uploader's response to the LLM review
The uploader was emailed about the review 1 day ago.