dotty v3.0.0-M2 Release Notes

Release Date: 2020-11-24 // about 1 year 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 an infix modifier, the @mixin annotation was replaced by transparent (#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 renamed Quotes (#10432)
    • Instead of importing qctx.tasty._, import quotes.reflect._ (#10442)
    • rootPosition is now Position.ofMacroExpansion (#10467)
    • Owners are now explicit in the reflection API (#10406)
    • compiletime.code has been replaced with compiletime.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


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 #10093

    Scala.js

    Scala.js: Implement non-native JS classes. #9774
    Scala.js: Implement the PrepJSInterop phase, minus exports handling. #9725

    Optimization

    ๐Ÿ“œ Port classfile parsing improvements #10037
    Semanticdb usability enhancements #9768
    โšก๏ธ Optimize core and frontend #9867

    Contributors

    ๐Ÿš€ 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! ๐Ÿ™