You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: _posts/2024-10-16-announcing-governance.md
+1-1
Original file line number
Diff line number
Diff line change
@@ -48,7 +48,7 @@ As before, Scala 2 has stable 2.13 and 2.12 distributions.
48
48
49
49
### Predictable and frequent releases
50
50
51
-
The new governance model and structure improved the coordination between different teams working on Scala development and releases. We have been testing the model since February 2024 and we are confident that technical decisions around Scala releases and distributions are now synchronised and running smoothly. As a result, Scala 3 users experience [predictable, well-managed releases](/development/#schedule-iterations-and-roadmap), typically at six to twelve week intervals.
51
+
The new governance model and structure improved the coordination between different teams working on Scala development and releases. We have been testing the model since February 2024 and we are confident that technical decisions around Scala releases and distributions are now synchronised and running smoothly. As a result, Scala 3 users experience [predictable, well-managed releases](/development/#scala-3-schedule-iterations-and-roadmap), typically at six to twelve week intervals.
52
52
53
53
### Standardised backlog management on the Scala repo
Copy file name to clipboardExpand all lines: development/index.md
+76-11
Original file line number
Diff line number
Diff line change
@@ -5,7 +5,7 @@ permalink: /development/
5
5
includeTOC: true
6
6
---
7
7
8
-
## The TL;DR
8
+
## Scala 3 TL;DR
9
9
10
10
1. There are 2 distribution lines of Scala 3: **Scala Next** and **Scala LTS**.
11
11
2. The **Scala Next** line is the **default** to be used by most users,
@@ -21,6 +21,26 @@ includeTOC: true
21
21
version, except for rare situations when a bugfix requires breaking source
22
22
compatibility.
23
23
24
+
## Scala 2 TL;DR
25
+
26
+
Maintenance of Scala 2.13 will continue indefinitely.
27
+
28
+
Minimal maintenance of Scala 2.12 will continue as long as
29
+
sbt 1 remains in wide use.
30
+
31
+
## The role of the Scala Center
32
+
33
+
The [Scala Center](https://scala.epfl.ch) is a not-for-profit foundation that stewards the Scala programming language. The Scala Center is funded mainly by corporate sponsorships and donations. It is vital for the future of Scala to ensure the continued existence and health of the Scala Center.
34
+
35
+
Companies interested in the continued maintenance of Scala 3 and Scala 2 should help to fund the Scala Center by joining the Center’s advisory board, or through direct donations.
36
+
37
+
When you support the Center, make sure to keep the Center appraised of what Scala versions are of concern to your company.
38
+
39
+
To learn more about supporting the Center, read this September 2023 blog post, [The Scala Center Fundraising Campaign](https://www.scala-lang.org/blog/2023/09/11/scala-center-fundraising.html).
40
+
41
+
If you’d like for your organization to work with us more closely, please contact
42
+
scala.center (at) epfl.ch to discuss possible collaboration.
43
+
24
44
## Contribute to Scala
25
45
26
46
Scala is and always has been an open source effort. It is a collaboration
@@ -31,11 +51,7 @@ If you are interested in contributing to Scala, be sure to start by visiting
31
51
[the GitHub repository of the compiler](https://github.com/scala/scala3) (or the
If you’d like for your organization to work with us more closely, please contact
35
-
scala.center (at) epfl.ch which will be able to arrange the possible
36
-
collaboration.
37
-
38
-
## Semantic versioning of the language
54
+
## Scala 3 semantic versioning
39
55
40
56
Scala 3 follows [Semantic Versioning](https://semver.org/). Each version number
41
57
has a well-defined meaning, following the `major.minor.patch` scheme, with each
@@ -152,7 +168,7 @@ by the Open Community Build to ascertain their impact on the ecosystem. If
152
168
necessary, we may prolong the RC period and delay a release to give ourselves
153
169
time to fix a particularly troublesome regression.
154
170
155
-
## Scala distributions
171
+
## Scala 3 distributions
156
172
157
173
Scala 3 is currently developed in 2 parallel **distributions** (or **lines**),
158
174
code-named **Scala LTS** (for **Long Term Support**) and **Scala Next**.
@@ -162,9 +178,9 @@ found in an
162
178
[earlier blogpost](/blog/2022/08/17/long-term-compatibility-plans.html), but the
163
179
relevant information can be found below.
164
180
165
-
### Scala LTS
181
+
### Scala 3 LTS
166
182
167
-
**Scala LTS** is a designated **minor** version that is the **preferred target
183
+
**Scala 3 LTS** is a designated **minor** version that is the **preferred target
168
184
version for libraries**. Currently, it is the Scala 3.3.x series.
169
185
170
186
It is possible to use a library if it was published with the same minor version
@@ -183,7 +199,7 @@ initial release.
183
199
184
200
### Scala Next
185
201
186
-
**Scala Next** is the default line that the compiler team actively develops. It
202
+
**Scala Next** is the default line that the Scala 3 compiler team actively develops. It
187
203
is the **preferred target version for all non-library projects**. If the API of
188
204
your project is not meant to be consumed by other Scala projects, we advise to
189
205
use Scala Next rather than LTS.
@@ -194,7 +210,7 @@ changes (after approval by the SIP Committee), larger new features and
194
210
occasional bugfixes that may affect source compatibility. All of our testing and
195
211
maintenance practices apply in the same way to Scala Next and LTS.
196
212
197
-
## Schedule, iterations and roadmap
213
+
## Scala 3 schedule, iterations and roadmap
198
214
199
215
Scala 3 is developed in iterations, according to a roadmap as designed by its
200
216
Product Manager and governed by the [Scala Core Team](/scala-core). Each
@@ -252,3 +268,52 @@ release Scala LTS 3.3.6-RC1 together with Scala Next 3.6.2, and then we should
252
268
have a stable Scala LTS 3.3.6 by the time Scala Next 3.7.0 is out.
253
269
254
270
As a result, we expect to release **a new Scala LTS patch every 3 to 6 months**.
271
+
272
+
## Scala 2 maintenance
273
+
274
+
This section answers the questions:
275
+
276
+
* What versions of Scala 2 are maintained?
277
+
* How long will maintenance last?
278
+
279
+
### Scala 2.13 maintenance
280
+
281
+
Scala 2.13 maintenance is expected to continue indefinitely.
282
+
283
+
"Indefinitely" means as long into the future as anyone can possibly anticipate, certainly for years to come. The Scala Center has no plan and no desire to retire the Scala 2.13 series.
284
+
285
+
This means that:
286
+
287
+
* Security vulnerabilities will be addressed.
288
+
* Compatibility with new JVM versions will be ensured.
289
+
* Interoperability with Scala 3 will continue and migration to Scala 3 will be supported.
290
+
* Pull requests will be reviewed and, when feasible, merged.
291
+
* Releases will continue indefinitely, typically every 3 to 6 months. (This cadence may slow down over time.)
292
+
293
+
Most Scala 2 maintenance is done by the Scala team at [Akka](https://akka.io) (the company formerly known as Lightbend), in coordination with the Scala Center and the Scala 3 team.
294
+
295
+
These remarks apply to Scala 2 itself, that is, the compiler and standard library. Making effective use of Scala 2 also depends on a healthy tooling and library ecosystem. Much of that ecosystem is outside of our direct control, but we help maintainers as much as we can.
296
+
297
+
### Scala 2.12 maintenance
298
+
299
+
Scala 2.12 will remain fundamental to the Scala ecosystem for as long as sbt 1.x (which requires 2.12) remains in wide use.
300
+
301
+
Therefore, there is no plan to end-of-life Scala 2.12 entirely. Maintenance will continue, so that:
302
+
303
+
* Security vulnerabilities will be addressed.
304
+
* Compatibility with new JVM versions will be ensured.
305
+
* Occasional releases will continue as-needed.
306
+
307
+
But compared to 2.13, maintenance of 2.12 is already minimal and will remain so.
308
+
309
+
### Scala 2.11 status
310
+
311
+
Scala 2.11 reached end-of-life in 2016.
312
+
313
+
It remains available and it is usable in some contexts, but it is no longer maintained.
314
+
315
+
## Commercial support for Scala
316
+
317
+
Akka offers [commercial support](https://akka.io) for Scala. The Scala team at Akka are the primary maintainers of Scala 2. They are very active in Scala 3 development as well. The Akka libraries are fully supported on both Scala 2 and Scala 3.
318
+
319
+
VirtusLab offers [commercial support](https://virtuslab.com/expertise/scala/) for Scala as well. Their team manages Scala 3 releases and development. VirtusLab provides services to modernise Scala projects, including Scala 3 migration.
0 commit comments