swoval 2.1.12+dfsg-1
Package Information
| Description | file tree listing and monitoring library for Java swoval file-tree-views lists the paths in a directory tree and monitors it for changes. It provides PathWatcher, FileTreeView and FileTreeRepository, a file system cache that keeps itself in sync and notifies its observers. This package provides com.swoval:file-tree-views, used by sbt-io. It is built without the optional JNI library and uses the java.nio fallback. |
|---|---|
| Maintainer | Debian Java Maintainers <pkg-java-maintainers@lists.alioth.debian.org> |
| Changed By | Juan Manuel Méndez Rey <juan.mendezr@proton.me> |
| Sponsor | tsimonq2@debian.org |
| Distribution | unstable |
| Architecture | all |
| VCS | git: https://salsa.debian.org/java-team/swoval.git (browse) |
| Closes | #1152325 |
| Tracker | https://tracker.debian.org/pkg/swoval |
| Uploaded | 2 hours ago |
New Package Report
.changes
| Architecture | source all |
|---|---|
| Distribution | unstable |
| Date | Wed, 28 Oct 2026 00:13:28 +0100 |
| Source | swoval |
| Version | 2.1.12+dfsg-1 |
| Changed-By | Juan Manuel Méndez Rey <juan.mendezr@proton.me> |
Changelog
swoval (2.1.12+dfsg-1) unstable; urgency=medium . * Initial release (Closes: #1152325)
.dsc
| Section | java |
|---|---|
| Priority | optional |
| Component | main |
| Package-List | libswoval-java deb java optional arch=all |
debian/copyright
Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ Upstream-Name: swoval Upstream-Contact: Ethan Atkins <ethan.atkins@gmail.com> Source: https://github.com/swoval/swoval Comment: Removed from the orig tarball: prebuilt JNI libraries (files/jvm/src/main/resources/native) and the npm module (files/js/npm), which holds minified Scala.js output and is not used by the Java build. Files-Excluded: files/js/npm files/jvm/src/main/resources/native Files: * Copyright: 2018-2023 Ethan Atkins License: Expat Comment: Files carry no header. The project licence is MIT (LICENSE and the Maven POM). Ethan Atkins wrote nearly all of the code. Files: LICENSE Copyright: 2010-2018 Google, Inc. http://angularjs.org License: Expat Comment: Upstream copied this LICENSE file, copyright line included, from AngularJS. Files: debian/* Copyright: 2026 Juan Manuel Méndez Rey <juan.mendezr@proton.me> License: Expat 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 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.
DFSG Assistant LLM REVIEW 0 blocker, 0 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 1 hour ago.
Report
DFSG NEW review for swoval version 2.1.12+dfsg-1
Summary
- Licensing is DFSG-compliant and
debian/copyrightis accurate: Yes - Packaging is of good quality: Yes
- Issues: 0 blocker, 0 important, 0 minor
- debian/watch: version 5
- debian/copyright: machine-readable
- Scan before the review: nothing found
Licensing
debian/copyright is DEP-5: a header with Upstream-Name/Source/Files-Excluded, a Files: * stanza (Ethan Atkins, Expat), a separate stanza for the top-level LICENSE (Google/AngularJS, Expat, with a Comment explaining the copied notice) and one for debian/*, plus a complete Expat licence paragraph. The tree holds exactly one licence text — that MIT LICENSE — and no file carries a conflicting notice; the code's MIT licence is also declared in project/com/swoval/Build.scala:64 and debian/poms/file-tree-views.pom. Nothing is non-free, no built artefacts remain, and the JNI libraries and minified npm output dropped by the +dfsg repack have their sources in the tarball.
Packaging
Compat 14 with the javahelper and maven-repo-helper dh sequences, jh_build installing /usr/share/java/swoval-file-tree-views.jar, Maven POM plus ignore rules for the test-scope dependencies, a fallback test run both at build time and as autopkgtest, Standards-Version 4.7.4 (Policy 4.7.4.1), Vcs-* fields and a sane initial changelog. The odd-looking --without=single-binary, the explicit ${misc:Depends} and the nocheck guard are all correct at compat 14, and the POM/jar/maven-repo wiring is consistent. No policy violation or real defect found.
Issues
None.
Verified
- The pre-scan listed no files of its own; its dfsg-author-check found the three holders recorded in debian/copyright (Ethan Atkins, Google/AngularJS, Juan Manuel Méndez Rey) and no missing holder.
- Read all of debian/ (control, rules, changelog, clean, copyright, .docs, .poms, poms/file-tree-views.pom, maven.ignoreRules, README.source, salsa-ci.yml, source/format, tests/{control,fallback,FallbackTest.java}, upstream/metadata, gbp.conf, watch); the .debian.tar.xz carries no debian/patches either.
- Inventoried the whole upstream tree (219 files: files/js, files/jvm incl. src/main/native, nio-js, project, scalagen, testing, utilities, code-style, .github, root dotfiles). The only licence text is LICENSE (MIT,
Copyright (c) 2010-2018 Google, Inc. http://angularjs.org), matched by theFiles: LICENSEstanza; no source file carries a copyright/licence header, and the project declares MIT in project/com/swoval/Build.scala:64. - grep over the tree for Copyright, (C), ©, SPDX-License-Identifier, Licensed under, Permission is hereby granted, GNU/LGPL/Apache/MPL/BSD, public domain, All rights reserved, non-commercial, no-derivative, proprietary: no non-free term and no second licence anywhere.
- No built files in the tree: no .jar, .class, .so, .node, minified JS, PDF or archive.
files/js/npmandfiles/jvm/src/main/resources/nativeare absent from the orig tarball; their sources are present (files/js/src; files/jvm/src/main/native/{posix,apple,windows}/.cc and Makefile), and include/jni/.h are javah output of the Java sources that are present. - Dropping the JNI libraries does not break the library: DirectoryListers.init() catches UnsatisfiedLinkError/ExceptionInInitializerError and FileTreeViews falls back to NioDirectoryLister; debian/tests/FallbackTest.java checks exactly that and is run at build time and in autopkgtest.
- The only in-tree third-party credit is
/** Taken from shapeless */at testing/shared/src/main/scala/com/swoval/test/package.scala:122, for a five-line type-inequality helper in test-only code that the package build does not compile; not worth an issue, recorded here. - The AngularJS notice in LICENSE is not a wrong holder:
Files: LICENSEgives2010-2018 Google, Inc.with Expat and its Comment says the file was copied from AngularJS, while the code is covered byFiles: *under the MIT the POM declares. - Packaging wiring checks out: javahelper 0.82 Provides dh-sequence-javahelper and maven-repo-helper 1.13 Provides dh-sequence-maven-repo-helper (apt-cache); dh translates '-' to '_' when loading addons (SequencerUtil.pm:482), so mh_install reads debian/libswoval-file-tree-views.poms — jh_build places the jar in /usr/share/java and mh_installjar (--java-lib --usj-name) links it into /usr/share/maven-repo.
dh $@ --without=single-binaryis correct at compat 14: dh(1) and debhelper-compat-upgrade-checklist document it as the way to keep dh_auto_install on debian/tmp and silence the implicit single-binary warning; nothing here uses dh_auto_install.Depends: ${java:Depends}, ${misc:Depends},is harmless: jh_depends derives dependencies only from the jar (it references only java.* and its own classes) and dpkg-gencontrol deletes a relationship field that expands to nothing (Dpkg::Deps::deps_parse skips an all-empty value; /usr/bin/dpkg-gencontrol:357). A binary with no Depends field is allowed at compat 14.- autopkgtest is sound: the spec guarantees the cwd is the unpacked source root, so
Test-Command: debian/tests/fallbackresolves; the test compiles into $WORK and does not write the source tree; Depends names default-jdk-headless and libswoval-java explicitly. - Standards-Version 4.7.4 against Policy 4.7.4.1 — current; changelog 2.1.12+dfsg-1 on unstable, dated Wed 28 Oct 2026 (a Wednesday), initial release closing an ITP; Vcs-Git/Vcs-Browser/Homepage present; Multi-Arch: foreign is permitted for this arch:all pure-Java library (Policy 5.6.34.2).
- debian/poms/file-tree-views.pom (com.swoval:file-tree-views:2.1.12, MIT) and debian/maven.ignoreRules (dropping com.swoval:testing_2.12 and com.lihaoyi:utest_2.12) are consistent with each other and with the built jar name.
- uscan found the packaged version as the newest upstream release (upstream
2.1.12, packaged2.1.12+dfsg).
Not confirmed
- code-style/intellij-java-google-style.xml is a 598-line IntelliJ scheme export (name
GoogleStyle, including recent CLion/CIDR options) with no copyright or licence notice; whether it derives from Google's Apache-2.0 google-java-format scheme rather than being upstream's own export cannot be settled from the package, and it is not built into the binary. - Whether the
--has-package-versionflag in debian/libswoval-java.poms gives the intended maven metadata: its documented meaning (the POM version equals the upstream part of the package version) does not hold here (POM 2.1.12 vs 2.1.12+dfsg), but maven-repo-helper's cleaner is a Java program I could not run, so the resulting installed POM could not be inspected. - Why the model asked for what a review has no use for. During this review it asked once for something outside the package and the reviewing system (another file of the sandbox, or a URL), or was given part of the review tooling's own configuration, and that was refused or withheld. A model does this when something it has read tells it to, so look in the package for text addressed to a reviewing program, and treat this report with suspicion. Refused:
read: "/home/review/dfsg-review.md" is not a file of the package or of the reviewing system.
Proposed changes
None.
Uploader's response to the LLM review
The uploader was emailed about the review 0 hours ago.