Review: golang-sourcehut-rjarry-go-opt 2.2.1-1
Package Information
| Description | Parse command line arguments based on tag annotations on struct fields (library) This is a library to parse command line arguments based on tag annotations on struct fields. It came as a spin-off from aerc to deal with its internal commands. This project is a scaled down version of https://github.com/alexflint/go- arg with different usage patterns in mind: command parsing and argument completion for internal application commands. |
|---|---|
| Maintainer | Debian Go Packaging Team <team+pkg-go@tracker.debian.org> |
| Changed By | Nilesh Patra <nilesh@debian.org> |
| Sponsor | nilesh@debian.org |
| Distribution | unstable |
| Architecture | all |
| VCS | git: https://salsa.debian.org/go-team/packages/golang-sourcehut-rjarry-go-opt.git (browse) |
| Popcon Installs | 2 |
| Binary NEW | Yes (new binary packages of a source already in sid) |
| Tracker | https://tracker.debian.org/pkg/golang-sourcehut-rjarry-go-opt |
| Uploaded | 5 hours ago |
New Package Report
.changes
| Source | golang-sourcehut-rjarry-go-opt |
|---|---|
| Version | 2.2.1-1 |
| Changed-By | Nilesh Patra <nilesh@debian.org> |
| Architecture | source all |
| Distribution | unstable |
| Date | Sat, 17 Oct 2026 22:43:27 +0200 |
Changelog
golang-sourcehut-rjarry-go-opt (2.2.1-1) unstable; urgency=medium . * New upstream version 2.2.1 * Re-name binary package and to include version suffix
.dsc
| Section | golang |
|---|---|
| Priority | optional |
| Component | main |
| Package-List | golang-sourcehut-rjarry-go-opt-v2-dev deb golang optional arch=all |
debian/copyright
Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Source: https://git.sr.ht/~rjarry/go-opt
Upstream-Name: go-opt
Upstream-Contact: https://lists.sr.ht/~rjarry/aerc-devel
Files: *
Copyright: 2023 Robin Jarry
License: Expat
Files: shlex.go
Copyright: 2023 Robin Jarry
2012 Google Inc
License: Apache-2.0 and Expat
Comment: Only Internal variables, Recording of the original
argument start position in the string and Reformatting of
some code parts are under Expat.
Files: debian/*
Copyright: 2024 Nilesh Patra <nilesh@debian.org>
License: Expat
Comment: Debian packaging is licensed under the same terms as upstream
License: Expat
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
.
The above copyright notice and this permission notice (including the next
paragraph) shall be included in all copies or substantial portions of the
Software.
.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
License: Apache-2.0
On Debian systems the full text of the Apache-2.0 license can be found in
/usr/share/common-licenses/Apache-2.0.
DFSG Assistant LLM REVIEW 0 blocker, 1 important, 0 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 3 hours ago.
Report
DFSG NEW review for golang-sourcehut-rjarry-go-opt version 2.2.1-1
Summary
- Licensing is DFSG-compliant and
debian/copyrightis accurate: Yes - Packaging is of good quality: No
- Issues: 0 blocker, 1 important, 0 minor
- debian/watch: version 5
- debian/copyright: machine-readable
- Scan before the review: nothing found
Licensing
debian/copyright is in DEP-5 format and matches the tree. Every upstream file is MIT/Expat, copyright 2023 Robin Jarry, except shlex.go, which carries Apache-2.0 code from Google (2012) and Robin Jarry's MIT-licensed changes; the file has its own stanza naming both holders and combining Apache-2.0 and Expat. The full Expat text is included and Apache-2.0 is correctly delegated to /usr/share/common-licenses/Apache-2.0. All licences are free and compatible; there are no non-free terms, no generated binaries, and no vendored third-party code.
Packaging
The packaging is otherwise clean and modern: debhelper compat 14 with dh-sequence-golang, Standards-Version 4.7.4 (current Policy is 4.7.4.1), correct XS-Go-Import-Path for the /v2 module, a minimal and sufficient Build-Depends set, Testsuite: autopkgtest-pkg-go, no patches, no maintainer scripts, and a sane gbp.conf. The one problem is the binary package rename in 2.2.1: the new golang-sourcehut-rjarry-go-opt-v2-dev has no Provides and no transition, while packages in the archive still build-depend on the old name golang-sourcehut-rjarry-go-opt-dev.
Issues
1. [important] [packaging] Renamed -dev binary leaves reverse build-dependencies unsatisfiable (no Provides/transition)
- Files:
debian/control (Replaces and Conflicts fields); debian/changelog (2.2.1-1 entry) - Basis: inferred from what was read, not seen directly
- Evidence:
debian/controlhasReplaces: golang-sourcehut-rjarry-go-opt-devandConflicts: golang-sourcehut-rjarry-go-opt-devbut noProvides:. The archive's current binary isgolang-sourcehut-rjarry-go-opt-dev2.2.0-1, andaerc0.22.0-2 carriesBuilt-Using: ... golang-sourcehut-rjarry-go-opt (= 2.2.0-1), i.e. it was built against that -dev package. - Problem: From 2.2.1 this source builds only
golang-sourcehut-rjarry-go-opt-v2-dev. The old binary is no longer produced, so once the 2.2.0-1 binary leaves the archive every package whose Build-Depends namesgolang-sourcehut-rjarry-go-opt-dev—aercat least, per its Built-Using — becomes unbuildable, until its source is updated. The import path is unchanged (git.sr.ht/~rjarry/go-opt/v2), so a compatibility Provides costs nothing. - Fix: Add
Provides: golang-sourcehut-rjarry-go-opt-dev (= ${binary:Version})(or unversioned if all reverse build-deps are unversioned) to the binary package, or update all reverse build-dependencies in a coordinated transition. Also considerBreaksalongsideReplacesand a versionedReplaces: golang-sourcehut-rjarry-go-opt-dev (<< 2.2.1-1), as Policy 7.6.1 recommends for a replaced package.
Verified
- Prescan: it listed no files to examine; its author check found all copyright holders named in
debian/copyright. - Upstream tree is small: 8
.gofiles,README.md,go.mod,go.sum,LICENSE,.build.yml,.gitignore; no vendored code, binaries, archives, minified files or generated sources.go.sumholds only checksums of testify and its indirect test dependencies. args.goandargs_test.gocarrySPDX-License-Identifier: MITand Robin Jarry 2023;spec.go,complete.go,opt.goand the remaining tests have no header but are covered byFiles: *and the top-level MITLICENSE.shlex.goheader: Google's 2012 Apache-2.0 notice for the inspired code plusSPDX-License-Identifier: MITfor Robin Jarry's changes;debian/copyrightnames both holders and both licences for that file,README.mdsays the same.debian/copyrightis DEP-5 withFormat:,Upstream-Name,Source,Files: */shlex.go/debian/*stanzas in the correct override order, and stand-aloneLicense:paragraphs forExpatandApache-2.0.- All debian/ files read:
control,rules,changelog,copyright,gbp.conf,salsa-ci.yml,watch(not reviewed),source/format(3.0 quilt),upstream/metadata,upstream/signing-key.asc(ASCII-armoured PGP key). No patches, install files, maintainer scripts ordebian/tests/. - Build-Depends (
debhelper-compat (= 14),dh-sequence-golang,golang-any,golang-github-stretchr-testify-dev) all exist; the tests import only the standard library and testify, so the set is sufficient. tests/controlis unnecessary:autopkgtest-pkg-gois a test suite known to autopkgtest/lintian.- Standards-Version 4.7.4 is current (Policy 4.7.4.1; first two components match).
gbp.conf'sdist = DEP14is valid: gbp's buildpackage accepts bothDEP-14andDEP14as the special branch-derived distribution value.- Not verified: the package was not built and its tests were not run.
- uscan found the packaged version as the newest upstream release (upstream
2.2.1, packaged2.2.1). - Every pointer of
debian/copyrightto /usr/share/common-licenses names a file that is there (Apache-2.0).
Not confirmed
- That
aerc's Build-Depends names exactlygolang-sourcehut-rjarry-go-opt-devis inferred from itsBuilt-Usingfield; the binary package lists on the reviewing system cannot show source Build-Depends. If aerc's Build-Depends were already updated to the new name in the same batch, the rename would be safe.
Proposed changes
None.
Review Information
started — allocated to awm 0 hours ago, started 0 hours ago.