github scala/scala3 3.6.3-RC1

latest release: 3.3.5-RC1
pre-releaseone day ago

Highlights of the release

  • Scala 2 forwardport: -Yprofile-trace #19897

Other changes and fixes

Annotations

  • Fix Java parsing of annotations on qualified types #21867
  • Consider all arguments in Annotations.refersToParamOf #22001

Backend

  • Flag class file collision as error #19332

Compiler Phases

  • Fix #21939: Update names and descriptions for cc and setup phases #21942

Experimental: Explicit Nulls

  • Improve warning for wildcard matching only null under the explicit nulls flag (scala#21577) #21623
  • Fix warning message for matching on redundant nulls #21850

Experimental: Capture Checking

Experimentals

  • Replace symbol traversal with tree traversal when finding top level experimentals #21827

Extension Methods

  • Nowarn extension matching nonpublic member #21825

Implicits

  • Apply implicit conversion from derived Conversion instance defined as implicit rather than given #21785

Imports

  • Allow imports nested in packagings to shadow #21539

Inline

  • Avoid using the current denotation in NamedType.disambiguate #21414
  • Drop phase.isTyper use in isLegalPrefix/asf #21954
  • Fix for macro annotation that resolves macro-based implicit crashing the compiler #20353
  • Allow macro annotations to recover from suspension #21969

Linting

  • Disallow open modifier on objects #21922
  • Allow discarding "Discarded non-Unit" warnings with : Unit #21927

Opaque Types

  • Fix pkg obj prefix of opaque tp ext meth #21527

Parser

  • Fix: don't consider into as a soft-modifier #21924

Pattern Matching

  • Drop inaccessible subclasses from refineUsingParent #21799
  • (Re-)Drop inaccessible subclasses from refineUsingParent #21930
  • Fix use of class terms in match analysis #21848
  • Don't project nested wildcard patterns to nullable #21934
  • Fix provablyDisjoint handling enum constants with mixins #21876
  • Do not consider uninhabited constructors when performing exhaustive match checking #21750

Presentation Compiler

  • Update mtags to 1.4.1 and backport remaining changes #21859
  • Backport changes for the presentation compiler from Metals #21756

Pickling

  • Avoid orphan param from default arg #21824
  • Make sure definition tree has the defined symbol #21851

REPL

  • Allow top-level opaque type definitions in REPL #21753

Scaladoc

  • Fix scaladoc TastyInspector regressions #21716
  • Bring back the fix for scaladoc TastyInspector regressions #21929

Standard Library

  • Combine cases of Tuple.Zip disjoint from (h1 *: t1, h2 *: t2) #21287

Quotes

  • Fix #20471: owners of top-level symbols in cached quoted code being incorrect #21945

Reporting

  • Do not warn about expected missing positions in quotes.reflect.Symbol #21677
  • Add missing error messages to asserts in QuotesImpl #21852
  • Don't point to the compiler backlog when a compiler plugin phase crashes #21887
  • Better error message for polytypes wrapping capturing types #21843
  • Pretty-print lambdas #21846

Scala.js

  • Shade scalajs.ir under dotty.tools #21765

Scaladoc

  • Fix scaladoc graph highlight background color in dark mode #21814

SemanticDB

  • Extract semanticDB for lifted definitions #21856

Transform

  • Fix enclosingClass from returning refinement classes #21411
  • Attempt to beta reduce only if parameters and arguments have same shape #21970
  • Drop copied parent refinements before generating bytecode #21733

Tooling

  • Ensure to escape characters before constructing JSON profile trace #21872

Tuples

  • Fix tupleTypeFromSeq for XXL tuples #21782

Typer

  • Do not crash when typing a closure with unknown type, since it can occur for erroneous input #21178
  • Revert SAM condition to what it was before #21684
  • Fix ctx implicits under case unapplySeq #21748
  • Avoid erasure/preErasure issues around Any in transformIsInstanceOf #21647

Contributors

Thank you to all the contributors who made this release possible 🎉

According to git shortlog -sn --no-merges 3.6.2..3.6.3-RC1 these are:

  30 Dale Wijnand
  30 Kacper Korban
  27 Wojciech Mazur
  14 noti0na1
  10 Eugene Flesselle
  10 Hamza Remmal
  10 HarrisL2
    9 Martin Odersky
    8 Matt Bovel
    7 Jan Chyb
    6 Tomasz Godzik
    4 Jamie Thompson
    2 Friendseeker
    2 Pascal Weisenburger
    2 Seth Tisue
    2 Sébastien Doeraene
    1 Adrien Piquerez
    1 Alden Torres
    1 Alexander
    1 Fengyun Liu
    1 Georgi Krastev
    1 Jentsch
    1 Lunfu Zhong
    1 Michał Pałka
    1 Natsu Kagami
    1 dependabot[bot]
    1 friendseeker
    1 tgodzik

Don't miss a new scala3 release

NewReleases is sending notifications on new releases.