Answering below

El jueves, 11 de junio de 2026 a las 14:53, Emmanuel Bourg <[email protected]> 
escribió:

> > There are also packages depending on Scala 2.11: plm, pilon, latexdraw, 
> > htsjdk, unicycler: they would need to be ported to 2.13 o r think about 
> > retiring them if we would remove 2.11.
> 
> I got a quick look:
> - PLM is still on Scala 2.11
> - Pilon moved to Scala 2.13 5 years ago
> - Latexdraw 4.0 dropped Scala
> - HTSJDK also dropped Scala
> (https://github.com/samtools/htsjdk/commit/9f0e80f5), but there are
> still 4 Scala tests, probably based on Scala 2.12
> - Unicycler depends on Scala indirectly through Pilon, but the
> dependency was removed 4 years ago

 PLM looks like the only last 2.11 contender.


 Ok, so we'd need:
> - scala (2.11): kept for PLM only. Once PLM is updated, the scala
> package becomes a meta package pointing to the latest version. We may
> also rename it scala-2.11 right now for clarity.


I like the idea. Seems like the correct way to do it and I will me amending the 
draft MRs shortly.

> - scala-2.12: required at least for sbt until version 2.0
> - scala-2.13: required for building and running Scala 3, Apache Spark
> - scala-3.8: last Scala version using the 2.13 libraries
> - scala-3.9: will no longer depend on Scala 2.13?


> I don't mind having multiple versions of Scala in Debian, that's still
> better than a 10 year old version and there is hope the ecosystem
> eventually converges toward a couple of versions (2.13 and 3.x). 

As an Scala developer myself, I only care about 2.12, 2.13 and 3. And I believe 
we should force ourselves to be in 2.13 and 3 only.

And with 2.13 the door is open for very cool packages of the scala ecosystem 
that are there.

> But does that mean we'll need as many variants of the libraries (such as
> scala-asm or scala-xml)?


Things varies here, depending on which kind of package, so the multiplier is 
not as big.


1. Internal compiler dependencies: scala-asm, jline (they are pure java). They 
are a fixed number.

- scala-asm 9 : it will work for scala 2.12, scala 2.13
- scala-asm 5 : it will work for scala 2.11
  (already done in the MR!3 "coexistence branch" against java-team/scala-asm)
  (MR !4 is the alternative in-place bump to 9.9.0-only, for the day we retire 
2.11.)


- jline 2: It works for 2.11/2.12
- jline 3: It works for 2.13



2. Scala Libraries:  scala-xml, scala-parser-combinators, 
scala-collection-compat . They need cross-compiling (2.13, 3) (2.11 already has 
his own ones, we dont need to touch it)

For some cases scala 3 will be able to use scala2.13 ones, AFAIK, we may find 
cases where not.


So, as a summary, and I believe that if a independent step could be taken 
before anything else, would be renaming scala to scala11, I prepared these two 
MRs:

https://salsa.debian.org/java-team/scala/-/merge_requests/1
https://salsa.debian.org/java-team/plm/-/merge_requests/3

Emmanuel, I don't want to give you any burden, and I am committed to complete 
the process, just I need a volunteer for sponsoring the uploads (my NM process 
is still ongoing) and after the discussion when the team agrees on the approach.

Leaving them here referenced in any case. 

Best,

Juan

 

Reply via email to