DFSG NEW Queue

DFSG, Licensing & New Packages Team

Review: golang-github-aquasecurity-trivy-java-db 0.0~git20240109.184bd74-1

Package Information

Descriptionparses all indexes from maven repository (library)

trivy-java-db parses all indexes from maven repository and stores ArtifactID, GroupID, Version and sha1 for jar files to SQlite DB.

The DB is used in Trivy to discover information about jars without GAV inside them.

MaintainerDebian Go Packaging Team <team+pkg-go@tracker.debian.org>
Changed ByJuan Manuel Méndez Rey <juan.mendezr@proton.me>
Sponsortsimonq2@debian.org
Distributionunstable
Architectureall
VCSgit: https://salsa.debian.org/go-team/packages/golang-github-aquasecurity-trivy-java-db.git (browse)
Closes#1152497
Trackerhttps://tracker.debian.org/pkg/golang-github-aquasecurity-trivy-java-db
Uploaded2 days ago

New Package Report

.changes◂
DateFri, 30 Oct 2026 05:13:03 +0100
Sourcegolang-github-aquasecurity-trivy-java-db
Version0.0~git20240109.184bd74-1
Changed-ByJuan Manuel Méndez Rey <juan.mendezr@proton.me>
Architecturesource all
Distributionunstable
Changelog◂
golang-github-aquasecurity-trivy-java-db (0.0~git20240109.184bd74-1) unstable; urgency=medium
 .
   * Initial release (Closes: #1152497)
.dsc◂
Sectiongolang
Priorityoptional
Componentmain
Package-Listgolang-github-aquasecurity-trivy-java-db-dev deb golang optional arch=all
debian/copyright◂
Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Source: https://github.com/aquasecurity/trivy-java-db
Upstream-Name: trivy-java-db
Upstream-Contact: https://github.com/aquasecurity/trivy-java-db/issues

Files: *
Copyright: 2023 Teppei Fukuda <knqyf263@gmail.com>
           2023-2024 DmitriyLewen <https://github.com/DmitriyLewen>
           2023 rdjones517 <rdjones517@gmail.com>
License: Apache-2.0
Comment: Upstream has no copyright notice (LICENSE carries the unfilled
 Apache-2.0 appendix and no file has a header). The holders are the authors
 of the commits in the upstream history. pkg/crawler/testdata/ holds saved
 Maven Central directory listings and .sha1 files.

Files: debian/*
Copyright: 2026 Juan Manuel Méndez Rey <juan.mendezr@proton.me>
License: Apache-2.0
Comment: Debian packaging is licensed under the same terms as upstream

License: Apache-2.0
 Licensed under the Apache License, Version 2.0 (the "License");
 you may not use this file except in compliance with the License.
 You may obtain a copy of the License at
 .
 https://www.apache.org/licenses/LICENSE-2.0
 .
 Unless required by applicable law or agreed to in writing, software
 distributed under the License is distributed on an "AS IS" BASIS,
 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 See the License for the specific language governing permissions and
 limitations under the License.
Comment:
 On Debian systems, the complete text of the Apache version 2.0 license
 can be found in "/usr/share/common-licenses/Apache-2.0".

DFSG Assistant LLM REVIEW 0 blocker, 0 important, 2 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 golang-github-aquasecurity-trivy-java-db version 0.0~git20240109.184bd74-1

Summary

  • Licensing is DFSG-compliant and debian/copyright is accurate: Yes
  • Packaging is of good quality: Yes
  • Issues: 0 blocker, 0 important, 2 minor
  • debian/watch: version 5
  • debian/copyright: machine-readable
  • Scan before the review: nothing found

Licensing

The whole upstream tree is Apache-2.0: LICENSE carries the complete Apache-2.0 text with the unfilled appendix, and no source file, README, Makefile, workflow or test fixture carries a separate notice, so nothing in the tree has terms differing from that licence. debian/copyright is DEP-5 and accurate: Files: * names the three authors and Apache-2.0, debian/* is covered separately, and the stand-alone licence paragraph reproduces the Apache boilerplate and points at /usr/share/common-licenses/Apache-2.0. There is no vendored third-party code, no non-free wording, and no built artifact or documentation without its source; the only data files are saved Maven Central directory listings and checksums in pkg/crawler/testdata/, which contain no copyrightable content.

Packaging

The packaging follows current Go-team practice: compat 14 with dh-go, dpkg-build-api (= 1), DEP-5 copyright, a single -dev package with complete runtime Depends, and cmd/ kept out of both build and install so the cobra-only program needs no build dependency. Two small defects remain: debian/rules uses a non-default build directory that makes the autopkgtest-pkg-go test fail instead of running the suite, and debian/gbp.conf sets dist to something that is not a Debian distribution.

Issues

minor packaging 1. autopkgtest will fail: dh_golang_autopkgtest fills _build while debian/rules builds in debian/_build ◂
  • Files: debian/rules:7, /usr/bin/dh_golang_autopkgtest
  • Basis: inferred from what was read, not seen directly
  • Evidence: debian/rules:7 dh $@ --builddirectory=debian/_build --buildsystem=golang --with=golang; the autopkgtest helper appended to debian/rules by /usr/bin/dh_golang_autopkgtest computes APT_BDIR := $(shell ... load_buildsystem("golang")->get_builddir()) (the buildsystem's default, _build at compat 14) and runs cp -a /usr/share/gocode/src "${APT_BDIR}" in override_dh_auto_configure.
  • Problem: Testsuite: autopkgtest-pkg-go makes autodep8 run /usr/bin/dh_golang_autopkgtest, which — once /usr/share/gocode/src/github.com/aquasecurity/trivy-java-db is installed by the -dev package — replaces dh_auto_configure with a copy of the installed source into the buildsystem's default build directory. The one-liner parses no debhelper options, so it always yields _build, whereas dh in this package uses debian/_build; the override therefore populates the wrong directory and the golang configure step, which is what normally fills $builddir/src/$DH_GOPKG, never runs. dh_auto_build then calls go install (and dh_auto_test go test) with GOPATH=$PWD/debian/_build in a directory that was never created, so the autopkgtest on ci.debian.net fails rather than testing the installed source.
  • Fix: Drop --builddirectory=debian/_build (at compat 14 the golang buildsystem already defaults to _build, which is what the helper expects), or pass --builddirectory=_build explicitly.
minor packaging 2. debian/gbp.conf sets dist = DEP14, which is not a Debian distribution ◂
  • Files: debian/gbp.conf:3
  • Basis: checked, in the package or with a reference tool
  • Evidence: gbp.conf:3 dist = DEP14 under [DEFAULT]; gbp-buildpackage(1): --git-dist=DIST Build for distribution DIST when using git-pbuilder (either via --git-pbuilder, --git-qemubuilder or the corresponding config file options), with the default being to take it from the changelog.
  • Problem: Per gbp.conf(5), keys in the configuration file are the command-line options with --git- stripped off, so dist in [DEFAULT] is gbp buildpackage --git-dist. DEP14 is the name of the branch-layout standard, not a suite, so a gbp buildpackage --git-pbuilder run made from this repository would be asked to build for a non-existent DEP14 distribution (no effect when pbuilder is not used, which is why it went unnoticed).
  • Fix: Remove the line, or set it to the suite actually built for (for example dist = unstable).
Verified ◂
  • All 29 upstream files inventoried directory by directory: .gitignore, LICENSE, Makefile, README.md, go.mod, go.sum, .github/workflows/{cron.yml,test.yaml}, cmd/trivy-java-db/main.go, pkg/{builder,crawler,db,dbtest,fileutil,types}/*.go, pkg/crawler/testdata/* and pkg/crawler/testdata/golden/abbot.json; debian/ read in full.
  • Grep of the whole tree (excluding .pc/ and debian/) for Copyright, (C), ©, SPDX-License-Identifier, Licensed under, Permission is hereby granted, All rights reserved, public domain, non-commercial, no modification finds only the Apache-2.0 body and its unfilled appendix in LICENSE, matching the Comment in debian/copyright; no file carries terms of its own, so no further Files: stanza is needed.
  • pkg/crawler/testdata/index.html, abbot*.html and maven-metadata.xml are saved repo.maven.apache.org directory-listing pages; *.jar.sha1 and golden/abbot.json are generated checksums/expected output. They are test fixtures with no copyrightable text and no built artifact, and debian/copyright names them in the Files: * comment.
  • debian/copyright is DEP-5 throughout (Format, Upstream-Name, Source, Upstream-Contact, Files: *, Files: debian/*, one stand-alone License: paragraph); its /usr/share/common-licenses/Apache-2.0 pointer resolves and the quoted text matches Apache-2.0. The pre-scan found no holder missing from the file and listed no files to account for.
  • No vendored third-party code: go.mod requires only modules Debian ships separately (goquery, pb/v3, go-retryablehttp, cobra, testify, x/sync, x/xerrors, k8s.io/utils, modernc.org/sqlite), and each library import appears in Depends.
  • Import graph checked: the packaged packages import cheggaaa/pb/v3, retryablehttp, goquery, golang.org/x/sync/semaphore, xerrors and k8s.io/utils/clock, all in Depends; testify is imported only by pkg/dbtest and the tests and is in Depends accordingly; modernc.org/sqlite appears only as a blank import in cmd/trivy-java-db/main.go (excluded from the build by DH_GOLANG_EXCLUDES) and in pkg/db/db_test.go, which is exactly what the <!nocheck> build dependency and the absence of a sqlite Depends reflect.
  • All dependency names exist in the archive (apt-cache): dh-go 1.69 (provides the golang sequence, buildsystem, dh_golang and dh_golang_autopkgtest), dpkg-build-api provided by dpkg-dev 1.23.11 (= 1), golang-any, golang-github-cheggaaa-pb.v3-dev, golang-github-hashicorp-go-retryablehttp-dev, golang-github-puerkitobio-goquery-dev, golang-github-stretchr-testify-dev, golang-golang-x-sync-dev, golang-golang-x-xerrors-dev, golang-k8s-utils-dev, golang-modernc-sqlite-dev.
  • Standards-Version 4.7.4 against Policy 4.7.4.1 from the policy tool — current, not an issue.
  • debian/changelog: single unstable entry, version 0.0~git20240109.184bd74-1, closes #1152497, date coherent with the version; Vcs-Git/Vcs-Browser/Homepage/XS-Go-Import-Path agree with the source name and module path.
  • At compat 14 DH_GOLANG_EXCLUDES := cmd applies to both build targets and install (DH_GOLANG_EXCLUDES_ALL default), so the -dev package ships only the library and cobra is legitimately not a build dependency; golang-modernc-sqlite-dev <!nocheck> is the right place for a test-only driver.
  • No patches (debian/patches absent, 3.0 (quilt)), no maintainer scripts, no .install/.links/.docs files needing review; debian/salsa-ci.yml is the standard include and debian/upstream/metadata is consistent with Homepage.
  • uscan found upstream releases with debian/watch; a newer upstream version is available (upstream 0.0~git20261009.537388b, packaged 0.0~git20240109.184bd74), which is not a fault of the package.
  • Every pointer of debian/copyright to /usr/share/common-licenses names a file that is there (Apache-2.0).
Not confirmed ◂
  • The three holders in Files: * are presented as the authors of the upstream commits; the tree itself contains no copyright notices, so the completeness of that list cannot be verified from the source alone.
  • The effect of dist = DEP14 in gbp.conf is taken from gbp.conf(5) and gbp-buildpackage(1); gbp was not run.
Proposed changes ◂

None.

Uploader's response to the LLM review

False positives, so no change.

  1. The autopkgtest passes as uploaded. With dh-go 1.69 the helper honours --builddirectory. The log shows mkdir -p "debian/_build", cp -a /usr/share/gocode/src "debian/_build", then cd debian/_build && go install and go test, and ends with "dh-golang-autopkgtest PASS".

  2. DEP14 is a special value of gbp's dist option. gbp-buildpackage(1) says: "The special value DEP-14 will set the distribution to build for from the branch name." dh-make-golang writes it by default.

— Juan Manuel Méndez Rey (mendezr), 1 day ago

Review Information

accepted — allocated to mechtilde 1 day ago, started 1 day ago, completed 1 day ago.

Final Comment

Back to Dashboard | View all reviews for this package