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'
- 3.9.0+ds2-3 (sid)
