dotty v3.0.0-M2 Release Notes
Release Date: 2020-11-24 // over 4 years ago-
Notable Changes
Platform
- โฌ๏ธ The standard library was upgraded to Scala 2.13.4, JDK 14 and 15 are now supported. (#10392)
Syntax
- The
@infix
annotation was replaced by aninfix
modifier, the@mixin
annotation was replaced bytransparent
(#10458) - The
@alpha
annotation was renamed to@targetName
and can now be used to define overloads that would normally result in a double definition error (#10149)
Reflection
๐ฅ Breaking changes
QuoteContext
has been renamedQuotes
(#10432)- Instead of importing
qctx.tasty._
, importquotes.reflect._
(#10442) rootPosition
is nowPosition.ofMacroExpansion
(#10467)- Owners are now explicit in the reflection API (#10406)
compiletime.code
has been replaced withcompiletime.codeOf
(#10313)- The syntax for type variables in quoted patterns has changed (#10125)
โ Additions
- ๐ new API:
TypeTest
for safe type tests at runtime (#7555)
Scala.js
- โฌ๏ธ Upgrade to Scala.js 1.3.1 (#10423)
- Implement the
-scalajs-mapSourceURI
option (#10439) - Implement JS exports (#10164)
- ๐ Scala.js is now 100% supported
Scala3doc
- ๐ Numerous improvements over many PRs, Scala3doc is still not the default documentation tool (this requires setting
useScala3doc := true
), but it is now used to generate the https://dotty.epfl.ch/ website. - ๐ For more information on Scala3doc see https://contributors.scala-lang.org/t/scala3doc-doctool-for-scala-3/4477
Previous changes from v3.0.0-M1
-
Notable Changes
Syntax
๐ Fix #9829: Allow
as
in place of@
for pattern bindings #9837
๐ Change wildcard given selectors #9949
Keep @Alpha optional #10093Scala.js
Scala.js: Implement non-native JS classes. #9774
Scala.js: Implement the PrepJSInterop phase, minus exports handling. #9725Optimization
๐ Port classfile parsing improvements #10037
Semanticdb usability enhancements #9768
โก๏ธ Optimize core and frontend #9867Contributors
๐ Thank you to all the contributors who made this release possible ๐
๐ According to
git shortlog -sn --no-merges 0.27.0-RC1..3.0.0-M1
these are:171 Martin Odersky 94 Nicolas Stucki 75 Liu Fengyun 62 Aleksander Boruch-Gruszecki 50 Filip Zybaลa 35 Krzysztof Romanowski 34 Anatolii Kmetiuk 32 Sรฉbastien Doeraene 31 Guillaume Martres 28 Jamie Thompson 20 bishabosha 19 Guillaume Raffin 16 Krzysztof Romanwoski 12 Ruslan Shevchenko 9 Tom Grigg 6 Som Snytt 5 odersky 5 Andrzej Ratajczak 4 Michaล Paลka 3 Adrien Piquerez 3 Tudor Voicu 3 noti0na1 2 Krzysztof Bochenek 2 Tudor 2 Raphael Jolly 2 Miles Sabin 1 Vasil Vasilev 1 ansvonwa 1 Greg Zoller 1 felher 1 gzoller 1 zgrybus 1 Fengyun Liu 1 Philippus Baalman 1 Krzysiek Bochenek 1 Tomasz Godzik 1 ysthakur
Reporting Bugs
๐ฑ If you encounter a bug, please open an issue! ๐