sbt-compiler-interface 2.0.5+ds-1
Package Information
| Description | sbt/zinc compiler interface (xsbti.compile) The compiler-interface is the stable, pure-Java boundary (package xsbti.compile) between the zinc incremental compiler and any Scala compiler. It defines the CompilerInterface, the analysis callback, virtual files and the incremental-compilation options. This package provides org.scala-sbt:compiler-interface. It is a pure-Java building block of the sbt toolchain, built from the committed (hand-written and Contraband-generated) Java sources of zinc, and depends only on org.scala-sbt:util-interface. |
|---|---|
| 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/sbt-compiler-interface.git (browse) |
| Closes | #1139639 |
| Tracker | https://tracker.debian.org/pkg/sbt-compiler-interface |
| Uploaded | 2 hours ago |
New Package Report
.changes
| Source | sbt-compiler-interface |
|---|---|
| Version | 2.0.5+ds-1 |
| Changed-By | Juan Manuel Méndez Rey <juan.mendezr@proton.me> |
| Architecture | source all |
| Distribution | unstable |
| Date | Wed, 28 Oct 2026 16:57:29 +0100 |
Changelog
sbt-compiler-interface (2.0.5+ds-1) unstable; urgency=medium
.
* Initial release. Pure-Java org.scala-sbt:compiler-interface, the
next sbt bootstrap brick (depends only on sbt-util-interface).
(Closes: #1139639)
* zinc 2.0.5, the version sbt 2.0.12 uses. The orig is the zinc tag
repacked by uscan to this module (+ds)..dsc
| Component | main |
|---|---|
| Package-List | libsbt-compiler-interface-java deb java optional arch=all |
| Section | java |
| Priority | optional |
debian/copyright
Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Upstream-Name: zinc (compiler-interface module)
Upstream-Contact: https://github.com/sbt/zinc/issues
Source: https://github.com/sbt/zinc
Comment:
This source package contains only the internal/compiler-interface module of
zinc, published to Maven Central as org.scala-sbt:compiler-interface: pure
Java, hand-written sources plus the Contraband-generated sources upstream
commits (src/main/contraband-java, generated from src/main/contraband).
The +ds repack removes the rest of the zinc tree, which this package does
not build (Files-Excluded). The third-party components listed in NOTICE
belong to those other zinc modules; none of them is in this package.
Files-Excluded:
.git-blame-ignore-revs
.github
.gitignore
.java-version
.jvmopts
.scala-steward.conf
.scalafmt.conf
CONTRIBUTING.md
MIGRATION.md
README.md
bin
build.sbt
project
sbt-allsources.sh
test-data
zinc
internal/compiler-bridge
internal/compiler-bridge-test
internal/zinc-*
Files: *
Copyright: 2023 Scala Center
2011-2022 Lightbend, Inc.
2008-2010 Mark Harrah
License: Apache-2.0
Comment:
The source headers say "Copyright Scala Center, Lightbend, and Mark
Harrah"; the years are the ones in NOTICE. The Contraband-generated files
carry no header of their own and are covered by the same licence.
Files: debian/*
Copyright: 2026 Juan Manuel Méndez Rey <juan.mendezr@proton.me>
License: Apache-2.0
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
.
http://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.
.
On Debian systems, the complete text of the Apache License Version 2.0
can be found in "/usr/share/common-licenses/Apache-2.0".
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 sbt-compiler-interface version 2.0.5+ds-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
The whole shipped tree is Apache-2.0. The 71 hand-written Java files carry identical Copyright Scala Center, Lightbend, and Mark Harrah / Licensed under Apache License 2.0 / SPDX-License-Identifier: Apache-2.0 headers; the 68 Contraband-generated files have only the generator banner but their inputs are shipped under src/main/contraband/, and LICENSE/NOTICE hold the full Apache-2.0 text and the project notice. debian/copyright is DEP-5 with the right holders and years, covers debian/* separately, and its claim that the NOTICE third-party components belong only to the removed zinc modules is true: none of those names, and no other holder or licence wording, occurs anywhere in the shipped sources. No non-free terms and no unlicensed file found.
Packaging
A single Architecture: all Java library at debhelper compat 14: javac --release 8 builds the jar into target/, and maven-repo-helper's mh_install installs it through debian/libsbt-compiler-interface-java.poms with --java-lib --usj-name=sbt-compiler-interface, giving /usr/share/java/sbt-compiler-interface.jar plus the Maven repository entry. Every Build-Depends exists in the archive (libsbt-util-interface-java 2.0.12-1 satisfies >= 2.0, javahelper 0.82, maven-repo-helper 1.13, default-jdk-headless); Standards-Version 4.7.4 is current against Policy 4.7.4.1; source format 3.0 (quilt) with no patches; target/ is in debian/clean, NOTICE is shipped as a doc, the changelog is a sane initial upload closing the ITP, and Vcs-*, upstream metadata and README.source are present.
Issues
None.
Verified ◂
- Tree inventory:
LICENSE,NOTICE, four Contraband inputs ininternal/compiler-interface/src/main/contraband/(definition.json,type.json,other.json,incremental.contra), 71 hand-written sources underinternal/compiler-interface/src/main/java/xsbti/**(22 inxsbti/, 4 inapi/, 39 incompile/, 6 incompile/analysis/) and 68 generated ones underinternal/compiler-interface/src/main/contraband-java/xsbti/(53 inapi/, 15 incompile/). No binaries, images, PDFs, archives or build output (target/absent). - All 71 hand-written
.javafiles (a full-tree grep, 71 files matched, so every one of them) carry the same headerCopyright Scala Center, Lightbend, and Mark Harrah/Licensed under Apache License 2.0/SPDX-License-Identifier: Apache-2.0, matchingFiles: *indebian/copyright; a grep ofinternal/forCopyright,(C),©,SPDX,BSD,MIT,LGPL,GPL,MPL,public domain,All rights reservedandPermission is herebyfinds nothing else, sodebian/copyrightmisses no holder and no second licence. - The 68
contraband-javafiles carry onlyThis code is generated using [[https://www.scala-sbt.org/contraband]]/DO NOT EDIT MANUALLYand no copyright line; their generator inputs are shipped undersrc/main/contraband/, which is the preferred form for modification, and the generated code is a derivative of those Apache-2.0 inputs, so theCommentindebian/copyrightdescribing them is accurate. debian/copyrightis DEP-5: exactFormat: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/, a header stanza withUpstream-Name,Upstream-Contact,Source,CommentandFiles-Excluded(all of which are header fields under copyright-format 5.1),Files: *for the upstream sources and a laterFiles: debian/*for the packaging, and one stand-aloneLicense: Apache-2.0paragraph pointing to/usr/share/common-licenses/Apache-2.0, which exists on this system.- Every path listed in
Files-Excluded(.git-blame-ignore-revs,.github,.gitignore,.java-version,.jvmopts,.scala-steward.conf,.scalafmt.conf,CONTRIBUTING.md,MIGRATION.md,README.md,bin,build.sbt,project,sbt-allsources.sh,test-data,zinc,internal/compiler-bridge,internal/compiler-bridge-test,internal/zinc-*) is absent from the unpacked tree. - The third-party components named in
NOTICE(ZipFileSystem, ScalaJSON, sjson-new, Protocol Buffers, FastParse, SourceCode, LMAX Disruptor, the file tree views, ScalaPB, JLine, JNA under LGPL-2.1+/Apache-2.0, Apache Log4j 2, the Scala compiler, Jawn; also searched for Google, Oracle, EPFL, LMAX and Typesafe) do not appear anywhere ininternal/, so no LGPL/BSD/MIT code is combined with the Apache-2.0 code and thedebian/copyrightCommentthat they belong to the removed zinc modules is correct. - The pre-scan's author check reported only
every holder found is named in debian/copyright(4 declared holders, 144 files scanned) and listed no files, and it raised no non-free wording or built-file hits; there was therefore no scan finding left to account for. - Build and install:
debian/rulescompiles the two source roots withjavac -cp /usr/share/java/sbt-util-interface.jar --release 8and jarstarget/classes;debian/libsbt-compiler-interface-java.pomslistsdebian/poms/compiler-interface.pom --java-lib --usj-name=sbt-compiler-interface --artifact=target/sbt-compiler-interface.jar, and maven-repo-helper's ownreference.html(lines 238-239, 389-399) says--java-libinstalls the jar into/usr/share/javaand--usj-namesets its name there, whilemh_install(1)installs the POM and artifact into/usr/share/maven-repo; themaven_repo_helperdh sequence insertsmh_installafterdh_install. The.pomsfilename matches the binary package name. - Build-Depends are all satisfiable from the archive:
libsbt-util-interface-javais in unstable at 2.0.12-1 (satisfies>= 2.0, and its description says it is the dependency of this compiler-interface),javahelper0.82 (Provides: dh-sequence-javahelper),maven-repo-helper1.13,debhelper-compat (= 14),default-jdk-headless. - Debhelper compat 14: no
${shlibs:Depends}/${misc:Depends}-style omission is possible, and${java:Depends}named after a relationship field is filled in bydh_gencontrolitself at this level. Standards-Version: 4.7.4is current: Policy on this system is 4.7.4.1, whose first two components are the same 4.7.debian/changelog:sbt-compiler-interface (2.0.5+ds-1) unstable; urgency=medium, "Initial release", closes the ITP#1139639;+dsis the right version scheme for the uscan repack described indebian/README.source, and the date (Wed, 28 Oct 2026) is a Wednesday.debian/source/formatis3.0 (quilt); there is nodebian/patchesdirectory and no patch is applied, so no DEP-3 headers are owed.debian/cleanremovestarget/, so the build directory does not leak into the source diff.NOTICEis installed as documentation throughdebian/libsbt-compiler-interface-java.docs(Apache-2.0 section 4(d)); a copy ofLICENSEin the binary is not required because Apache-2.0 is in/usr/share/common-licensesanddebian/copyrightsays so.debian/controlalso carriesVcs-Git/Vcs-Browser, aHomepage, aSection: java, a team Maintainer plus an Uploader, anddebian/upstream/metadatahasBug-Database,Bug-Submit,RepositoryandRepository-Browse.- The repacked tarball contains no test sources and
override_dh_auto_test:is empty, so no upstream test is being skipped; there is nodebian/tests/autopkgtest either.maintainer scriptsand*.maintscriptfiles do not exist, and none are needed for a jar-only package. - Read in full: every file of
debian/(16 entries),LICENSE,NOTICE, all four Contraband inputs and a sample of Java file bodies; the remaining Java bodies were covered by the whole-tree licence and holder greps, not read line by line. The.pc/directory anddebian/cargo-checksum.jsonwere left aside as instructed. - uscan found the packaged version as the newest upstream release (upstream
2.0.5, packaged2.0.5+ds). - Every pointer of
debian/copyrightto /usr/share/common-licenses names a file that is there (Apache-2.0).
Not confirmed ◂
- The jar name
/usr/share/java/sbt-util-interface.jarhardcoded indebian/rulescould not be checked against the contents oflibsbt-util-interface-java2.0.12-1 (only its control fields are available here); the build was assumed to succeed, so nothing is reported from it.
Proposed changes ◂
None.
Uploader's response to the LLM review
The uploader was emailed about the review 1 hour ago.