Releases: scala/scala3
0.10.0
0.10.0-RC1
Blog post with more details on the release: http://dotty.epfl.ch/blog/2018/10/10/10th-dotty-milestone-release.html
Notable Changes
Breaking changes
- We now require sbt 1.2.3 and sbt-dotty 0.2.4, see https://github.com/lampepfl/dotty-example-project
Platforms
- Java 9+ is now supported #5175, #5166, #3138
- Our Windows support has been improved #5130, #5171, #5179, #5170, #5156, #5125, #5085
- Compiling using the 2.13 standard library is almost here #4807
- Using mill instead of sbt is now possible, though still considered experimental: https://github.com/lampepfl/dotty-example-project/tree/mill
Tooling
- The REPL now has a
:doc
command to show documentation #4669 - The REPL has a new and more reliable syntax highlighter #5137
- The REPL now supports initial and cleanup commands #4933
- The IDE experience has been improved in various ways: #5133, #5128, #5123, #4304, #5057
- The VSCode plugin now uses the official scala-lang syntax highlighting plugin #5105
Language
- Match Types are the latest attempt at solving type-level programming, their semantic is still in flux #4964
- Tail-recursive methods can now be polymorphic #5112
- Name-based
unapplySeq
is now supported #5078 - Several improvement and addition to Macros and the Tasty reflect API #5189, #4991, #4976, #4904, #4895, #4887, #4896, #4894, #4856, #4874, #4823, #4859, #4822, #4780
- Proof of concept: Macro based string interpolator #5096
- Documentation can now be generated from TASTY files, this means we can generate documentation without retypechecking the entire project. It is the first step toward making documentation generation incremental #4789
- Experimental support for generic Tuples has been implemented #4938
- Label defs have been replaced by labelled blocks #5056, #4982, #5113
- This fixes some long-standing issues with pattern matching, including stack overflows in the compiler with big pattern matches
- It also makes it much easier for the (in progress) Scala.JS backend to output Javascript, since Javascript does not have
goto
but does havebreak
.
- The experimental local optimizations phases have been removed #4799
As well as many bug fixes and other improvements!
Contributors
Thank you to all the contributors who made this release possible π
According to git shortlog -sn --no-merges 0.9.0..0.10.0-RC1
these are:
219 Martin Odersky
142 Nicolas Stucki
67 Paolo G. Giarrusso
52 Allan Renucci
48 Guillaume Martres
39 Martin Duhem
23 Liu Fengyun
15 Olivier Blanvillain
10 Dmytro Melnychenko
10 Abel Nieto
10 SΓ©bastien Doeraene
7 Jaemin Hong
7 Eugene Melekhov
5 Saloni Vithalani
3 Daniel Li
3 Dale Wijnand
3 Jasper Moeys
2 lloydmeta
2 Aggelos Biboudis
2 Greg Pevnev
1 Adriaan Moors
1 Lukas Rytz
1 Kazuhiro Sera
1 Justin du Coeur, AKA Mark Waks
1 Jan Rock
1 Fengyun Liu
1 Szymon Pajzert
1 Chris Birchall
1 benkobalog
1 Martijn Hoekstra
Reporting Bugs
If you encounter a bug, please open an issue! π
0.9.0
0.9.0-RC1
Notable Changes
- Support for implicit conversions on singleton types #4738
- The REPL now uses JLine3 under the hood which means support for Windows, better completions and multi-line editing #4680
- Documentation support in the IDE #4461, #4648
- Drop requirement that implicit functions must be non-empty #4549
- Improved auto-completion in the REPL #4398
- An experimental stream library built using quotes and splices #4317
- A step toward tree inspection in macros #4279
- Optimise
applyOrElse
for partial function literals #4245 - Emit feature warnings for implicit conversions #4229
- Optimise
s
andraw
interpolators #3961 - Support for compiler plugins #3438
As well as many bug fixes and stability work
Contributors
Thank you to all the contributors who made this release possible π
According to git shortlog -sn --no-merges 0.8.0..0.9.0-RC1
these are:
200 Nicolas Stucki
155 Martin Odersky
71 Allan Renucci
42 Paolo G. Giarrusso
27 Aggelos Biboudis
25 Guillaume Martres
22 Martin Duhem
10 Sebastian Nadorp
10 Wojtek Swiderski
6 Olivier Blanvillain
5 benkobalog
4 Ingar Abrahamsen
3 Ankit Soni
2 Liu Fengyun
2 Olivier ROLAND
2 Fabian Page
1 Roberto Bonvallet
1 Fengyun Liu
1 ZoltΓ‘n Elek
1 benkbalog
1 Glavo
1 dieutth
1 fschueler
1 mentegy
Reporting Bugs
If you encounter a bug, please open an issue! π
0.8.0
0.8.0-RC1
Notable Changes
- sbt 1 support #3872
- Unchecked warnings #4045
- Kind Polymorphism #4108
- Improved support for SAM type #4152
Contributors
Thank you to all the contributors who made this release possible π
According to git shortlog -sn --no-merges 0.7.0..0.8.0-RC1
these are:
95 Martin Odersky
91 liu fengyun
91 Nicolas Stucki
84 Allan Renucci
73 Guillaume Martres
67 Martin Duhem
18 Jendrik Wenke
16 Paolo G. Giarrusso
8 Robert Stoll
6 Thierry Treyer
4 Aggelos Biboudis
1 tokkiyaa
1 Rajesh Veeranki
1 Maxime Kjaer
1 Saurabh Rawat
1 Joan
1 Jorge Vicente Cantero
1 Jasper Moeys
1 Piotr Gabara
Reporting Bugs
If you encounter a bug, please open an issue! π
0.7.0
0.7.0-RC1
Notable Changes
- Enum Simplification #4003
- Erased terms #3342
- Improved IDE support #3960
- Improved GADT support #3918, #3990, #4034
Contributors
Thank you to all the contributors who made this release possible π
According to git shortlog -sn --no-merges 0.6.0..0.7.0-RC1
these are:
182 Martin Odersky
94 Nicolas Stucki
48 Olivier Blanvillain
38 liu fengyun
16 Allan Renucci
15 Guillaume Martres
11 Aggelos Biboudis
5 Abel Nieto
5 Paolo G. Giarrusso
4 Fengyun Liu
2 Georg Schmid
1 Jonathan Skowera
1 Fedor Shiriaev
1 Alexander Slesarenko
1 benkobalog
1 Jimin Hsieh
Reporting Bugs
If you encounter a bug, please open an issue! π
0.6.0
0.6.0-RC1
Notable Changes
The main portion of this release is constituted of bug fixes and stability work. We closed more than 200 issues since our last release!
This release also includes a prototype implementation of the new Principled Meta Programming framework.
Contributors
Thank you to all the contributors who made this release possible π
According to git shortlog -sn --no-merges 0.5.0-RC1..0.6.0-RC1
these are:
210 Martin Odersky
101 Nicolas Stucki
42 Guillaume Martres
30 Allan Renucci
9 liu fengyun
7 Olivier Blanvillain
3 k0ala
2 Oron Port
2 Fengyun Liu
2 Vitor Vieira
2 Wojtek Swiderski
1 odersky
1 Simon Popugaev
1 Yevgen Nerush
Reporting Bugs
If you encounter a bug, please open an issue! π