scala-parser-combinators-2.12 1.0.7+ds-1
Package Information
| Description | parser combinator library for Scala 2.12 (scala-parser-combinators_2.12) scala-parser-combinators is the standard Scala library for writing parsers as a combinator DSL (scala.util.parsing.combinator.*), including packrat parsing and the input/position abstractions. This package provides org.scala-lang.modules:scala-parser-combinators_2.12 (version 1.0.7), cross-compiled for Scala 2.12. It is required to build scaladoc for the scala-2.12 compiler. Scala libraries are not binary-compatible across minor versions, so a per-series build (here _2.12) is needed. Built from source with no sbt, compiled directly with the Scala 2.12 compiler. |
|---|---|
| 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/scala-parser-combinators-2.12.git (browse) |
| Closes | #1139718 |
| Tracker | https://tracker.debian.org/pkg/scala-parser-combinators-2.12 |
| Uploaded | 3 hours ago |
New Package Report
.changes
| Date | Fri, 02 Oct 2026 03:19:55 +0200 |
|---|---|
| Source | scala-parser-combinators-2.12 |
| Version | 1.0.7+ds-1 |
| Changed-By | Juan Manuel Méndez Rey <juan.mendezr@proton.me> |
| Architecture | source all |
| Distribution | unstable |
Changelog
scala-parser-combinators-2.12 (1.0.7+ds-1) unstable; urgency=medium
.
* Initial release. org.scala-lang.modules:scala-parser-
combinators_2.12 (1.0.7), cross-compiled for Scala 2.12; needed for
scaladoc in scala and for latexdraw. Built from source with no sbt,
with the Scala 2.12 compiler from the scala package.
(Closes: #1139718).dsc
| Component | main |
|---|---|
| Package-List | scala-parser-combinators-2.12 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: scala-parser-combinators
Source: https://github.com/scala/scala-parser-combinators
Comment:
The orig tarball is repacked (+ds) to drop admin/secring.asc.enc, an
encrypted signing key for upstream's release CI: opaque data with no
source, not used by the build.
Files-Excluded:
admin/secring.asc.enc
Files: *
Copyright: 2002-2013 EPFL
2006-2013 LAMP/EPFL
2011-2013 Typesafe, Inc.
License: BSD-3-clause
Files: debian/*
Copyright: 2026 Juan Manuel Mendez Rey <juan.mendezr@proton.me>
License: BSD-3-clause
License: BSD-3-clause
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
.
* Redistributions of source code must retain the above copyright notice,
this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.
* Neither the name of the EPFL nor the names of its contributors may be
used to endorse or promote products derived from this software without
specific prior written permission.
.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
POSSIBILITY OF SUCH DAMAGE.
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 0 hours ago.
Report
DFSG NEW review for scala-parser-combinators-2.12 version 1.0.7+ds-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 tree is uniformly BSD-3-clause. The only copyright notices in it are LICENSE.md (EPFL 2002-2013, Typesafe 2011-2013) and the standard Scala per-file header (LAMP/EPFL 2006-2013), and all three holders are named in the Files: * stanza of the DEP-5 debian/copyright, whose licence text reproduces LICENSE.md clause for clause, including the 'Neither the name of the EPFL' endorsement clause. debian/* has its own stanza for the packager, and Files-Excluded names admin/secring.asc.enc, which is indeed absent from the repacked tree. Nothing in the source restricts use or modification, and no third-party code with a different licence is embedded.
Packaging
Competent packaging: compat 14 with debhelper 14.5, Standards-Version 4.7.4, Architecture: all, a hand-written build in debian/rules that avoids sbt, a DEP-3 patch that is minimal and explained, maven-repo-helper and javahelper wired correctly (.poms artifact name matches the jar rules produces, --java-lib puts it in /usr/share/java), a POM whose version agrees with the Debian version, and a changelog that closes the ITP. The only gap worth noting is that the upstream JUnit suite is never compiled or run and there is no autopkgtest.
Issues
1. [minor] [packaging] Upstream test suite is neither built nor run: empty override_dh_auto_test and no autopkgtest
- Files:
debian/rules,shared/src/test/scala/scala/util/parsing/combinator/,jvm/src/test/scala/scala/util/parsing/combinator/ - Basis: checked, in the package or with a reference tool
- Evidence: debian/rules:
override_dh_auto_test:with an empty body; the tree carriesJavaTokenParsersTest.scala,JsonTest.scala,PackratParsersTest.scala,RegexParsersTest.scala,t0700.scala,t4138.scala, ... (JUnit, perimport org.junit.Test) andjvm/src/test/.../t4929.scala,t9010.scala; there is no debian/tests/ directory. - Problem: The jar is shipped on the strength of
scalacsucceeding alone: nothing executes the library, and the Debian patch (0001-build-against-modern-scala-2.12.patch) changes how CharArrayReader and PagedSeqReader build their CharSequence wrapper, i.e. runtime behaviour that a single reader test would exercise. No policy section is broken, but a library package with zero verification is a real quality gap a sponsor would raise. - Fix: Either compile
shared/src/test/scala+jvm/src/test/scalain an override_dh_auto_test and run them with JUnit (addingjunit4to Build-Depends and<test>-only entries as needed), or, if the suite cannot be run here, add a debian/tests/control autopkgtest that loads the installed jar and runs at least a small parser (as the scala maintainers do for their jars) instead of leaving the override empty without explanation.
Verified
- Full upstream inventory: all 58 files outside debian/ and .pc/ were enumerated and read or grepped (gitignore false throughout); no file was left unexamined.
- Pre-scan holder 'LAMP/EPFL ** \ / // __ |/ /__/ __ |': this is the standard Scala ASCII-art header on 26 .scala files under shared/src/main/scala (
** / __/ __// _ | / / / _ | (c) 2006-2013, LAMP/EPFL). debian/copyright'sFiles: *names2006-2013 LAMP/EPFL, so the holder is present and the pre-scan item is not an issue. - Tree-wide grep for copyright, (c), ©, SPDX-License-Identifier, 'Licensed under', 'Permission is hereby granted', GNU/Apache/MPL names, 'public domain', 'All rights reserved' found only LICENSE.md and the Scala header — no second licence or holder exists anywhere in the tree.
- LICENSE.md:
Copyright (c) 2002-2013 EPFL/Copyright (c) 2011-2013 Typesafe, Inc., BSD-3-clause withNeither the name of the EPFL nor the names of its contributors; debian/copyright'sFiles: *lists all three holders and the stand-alone License paragraph matches this text clause for clause. - js/src/main/scala/.../PositionCache.scala and jvm/src/main/scala/.../PositionCache.scala carry no licence header (the jvm one only an
@author Tomáš Janoušektag); both fall underFiles: *, and only the jvm copy is compiled and shipped, so no separate stanza is required. - admin/pubring.asc is a binary OpenPGP public keyring consumed by admin/gpg.sbt/pubring settings; it is data, not a build product, and is covered by
Files: *. - admin/secring.asc.enc is absent from the tree, as the header Comment and
Files-Excluded: admin/secring.asc.encstate; the +ds repack is consistent, and admin/build.sh still referring to it is dead upstream release tooling that the build never runs. - .travis.yml carries upstream's encrypted Sonatype credentials and PGP passphrase from its retired Travis CI; they are ciphertext in source-only files and play no part in the Debian build.
- No built artefacts in the source: no .jar, .class, .pdf, minified or bundled code, no archives (orig tarball is 43 KB). The only objects the build creates are target/ and scala-parser-combinators_2.12-1.0.7.jar, both removed by override_dh_auto_clean.
- debian/copyright is DEP-5 with the exact Format URL, header fields Format/Upstream-Name/Source/Comment/Files-Excluded,
Files: *beforeFiles: debian/*(so debian/* wins for packaging files), and a stand-alone License paragraph; nothing in it is disallowed by copyright-format 1.0. - All of debian/ was read: control, rules, changelog, source/format, patches/series + the one patch, .poms, poms/*.pom.xml, README.source, upstream/metadata, lintian-overrides, copyright. No maintainer scripts, no *.maintscript, no debian/tests.
- compat: debhelper-compat (= 14) matches debhelper 14.5 on the reviewing system, where v14 is the recommended level; at compat 14 dh_gencontrol adds ${java:Depends}/${misc:Depends} itself, so their presence in Depends is fine either way.
- debian/rules:
include /usr/share/dpkg/pkg-info.mkplusVERSION = $(firstword $(subst +, ,$(DEB_VERSION_UPSTREAM)))yields 1.0.7 from 1.0.7+ds, which is exactly the jar name debian/scala-parser-combinators-2.12.poms asks for with--artifact=scala-parser-combinators_2.12-1.0.7.jar. - maven-repo-helper's
--java-lib/--usj-namesemantics confirmed in mh_installjar(1): the jar is installed as /usr/share/java/$name-$version.jar with a versionless link, so the versioned/underscored /usr/share/java name and the bad-jar-name override are deliberate and consistent with the maven artifactId. - The dh sequence addons
maven_repo_helperandjavahelperused bydh $@ --with ...exist on the reviewing system (/usr/share/perl5/Debian/Debhelper/Sequence/maven_repo_helper.pm). - debian/patches/0001 is DEP-3-headed (Description, Author, Forwarded: not-needed, Last-Update) and touches two lines only, making the now non-implicit scala.Predef.arrayToCharSequence / seqToCharSequence conversions explicit; the purpose is stated in the header and in debian/README.source.
- Standards-Version 4.7.4 is current against the reviewing system's 4.7.x Policy; Vcs-Git/Vcs-Browser/Homepage/upstream metadata are present and consistent.
- uscan found the packaged version as the newest upstream release (upstream
1.0.7, packaged1.0.7+ds).
Not confirmed
- Build-Depends
scala (>= 2.12~)and Dependsscala-library (>= 2.12~)cannot be satisfied from the archive as it stands: apt-cache shows only scala/scala-library 2.11.12-6 (scala-asm 9.9.0-scala-1-1 does satisfy>= 9.9.0), and nothing in NEW. debian/README.source states the package is paired with a scala 2.12 upload; if that upload is not arriving together with this one, the package neither builds nor installs. - Consequently the hard-coded classpaths in debian/rules — /usr/share/java/scala-compiler-2.12.jar, scala-library-2.12.jar, scala-reflect-2.12.jar and /usr/share/maven-repo/org/scala-lang/modules/scala-asm/debian/scala-asm-debian.jar — could not be checked against an installed scala/scala-asm; scala is not installed on the reviewing system. A build would show whether those series-versioned jar links exist.
- Whether
scalac -target:jvm-1.8and-bootclasspath <scala-library only>work against the default-jdk-headless that the archive would install, and whether the jarjar cfwrites is bit-reproducible (unsortedfindinput, file timestamps); a build would show it.
Proposed changes
None.
Uploader's response to the LLM review
The uploader was emailed about the review 0 hours ago.