Debian Patches

Status for scala3/3.9.0+ds2-3

Patch Description Author Forwarded Bugs Origin Last update
0003-scaladoc-no-inkuire.patch scaladoc: no Inkuire inkuire.js is a prebuilt Scala.js application that upstream downloads at
build time; Debian does not build it, so scaladoc no longer copies it, or
the Inkuire worker, which only loads inkuire.js, into the generated
documentation. Searching by signature ("=>" queries) is therefore not
available; the search box, the code snippet tools, the versions dropdown
and the contributors list are (their Scala.js front end is built from
source with Debian's Scala.js linker, see debian/build-driver.sh).
Juan Manuel Méndez Rey <juan.mendezr@proton.me> not-needed 2026-10-03
0001-inlineinfo-complete-member-list.patch build the InlineInfo of a class from its complete member list The Scala3InlineInfo attribute of a class being compiled lists its methods.
It is computed when the ClassBType of the class is first created, and that
can happen from getGenericSignatureHelper, which works at phase
flattenPhase.next. There, before RestoreScopes, the class scope lacks the
methods LambdaLift moved into it (e.g. withFilter$$anonfun$1), so the
attribute misses them; when the ClassBType is first created by the code
generation of the class itself, it has them. Which comes first varied from
run to run, so building the standard library with -opt gave different
bytes for a few classes (SortedMapOps, SortedMapOps$WithFilter,
AnyAccumulator$, LongMap, AnyRefMap) in two runs of the same compiler.
.
Read the members no earlier than after RestoreScopes. In the code
generation path nothing changes. With this patch three builds of the
standard library in a row were byte-identical, and the attributes of
those classes equal the ones in upstream's published scala-library-3.9.0.jar.
.
Upstream closed the LTS pull request: 3.9 LTS only takes fixes ported
from main, in order. On main the bug is fixed by
https://github.com/scala/scala3/pull/27031 (nominated for backport) and
covered by the regression test of https://github.com/scala/scala3/pull/27224.
Drop this patch once a 3.9.x release ships that backport.
Juan Manuel Méndez Rey <juan.mendezr@proton.me> yes upstream 2026-10-07
0002-repl-no-coursier.patch REPL: no dependency download with Coursier The REPL's ":dep" command downloads libraries from Maven Central with the
Coursier interface library, which is not packaged in Debian, and Debian
software does not fetch code from the network behind the user's back.
Remove the Coursier dependency; ":dep" now reports that dependency
download is not available and that the jars can be added to the class
path instead. Everything else in the REPL is unchanged.
Juan Manuel Méndez Rey <juan.mendezr@proton.me> not-needed 2026-10-02
0004-scaladoc-no-remote-resources.patch scaladoc: generated pages load nothing from other sites Every page scaladoc generates links d3, graphlib-dot and dagre-d3 from
CDNs (for the type hierarchy graph) and Scastie's embedded.js (for running
code snippets), and Markdown emoji become images on a GitHub server.
Debian documentation must not make the reader's browser contact other
sites. Load the three graph scripts from the generated site instead
(debian/build-driver.sh copies them into scaladoc's resources from
node-d3, node-graphlib-dot and node-dagre-d3-renderer), drop Scastie's
script and the "run" button of code snippets that needs it, and render
emoji as Unicode characters (flexmark's UNICODE_ONLY).
Juan Manuel Méndez Rey <juan.mendezr@proton.me> not-needed 2026-10-03
0005-scaladoc-no-icon-font.patch scaladoc: no dotty-icons font dotty-icons.woff and dotty-icons.ttf are a generated icon font whose
sources are not in the scala3 tree, so they are excluded from the Debian
source. Its glyph classes (icon-*) are used by no page scaladoc
generates; drop the @font-face rule and the two font files from the
resources scaladoc copies.
Juan Manuel Méndez Rey <juan.mendezr@proton.me> not-needed 2026-10-03
0006-scaladoc-graph-d3-5.patch scaladoc: type hierarchy graph with d3 5 Upstream loads d3 6 from a CDN; Debian's node-d3 is 5.16. The graph code
only needs one change for it: d3 5 calls a zoom listener with the datum,
not with the event, and keeps the event in d3.event. Read the transform
from whichever of the two is there, so the code works with both.
Juan Manuel Méndez Rey <juan.mendezr@proton.me> not-needed 2026-10-03
0007-sbt-bridge-compiler-interface-2.patch sbt bridge: build against compiler-interface 2.x In compiler-interface 2.x, xsbti.VirtualFile extends HashedVirtualFileRef,
which adds contentHashStr() and sizeBytes(). Implement them in the
fallback virtual file; with 1.x they are plain methods.
Upstream's sizeBytes() uses SourceFile.textContent(), not in 3.9.0.
Juan Manuel Méndez Rey <juan.mendezr@proton.me> yes 2026-10-29

All known versions for source package 'scala3'

Links