Skip to content

Releases: scala/scala3

3.1.3-RC5

08 Jun 10:39
Compare
Choose a tag to compare
3.1.3-RC5 Pre-release
Pre-release

Notable changes

  • Avoid NPE in simplify #15310
  • Eta expand export forwarders that have context function types #15217
  • Fix #15220: Windows scripts do not delegate to MainGenericRunner #15325
  • Re-establish missing symbol from previous phase (in one specific case) #15295
  • Partially revert #14026 - Fixes 4 regressions #15343

Contributors

Thank you to all the contributors who made this release possible πŸŽ‰

According to git shortlog -sn --no-merges 3.1.3-RC4..3.1.3-RC5 these are:

  7  odersky
  2  PaweΕ‚ Marks
  1  StΓ©phane Micheloud
  1  Tom Grigg

3.1.3-RC4

25 May 08:00
Compare
Choose a tag to compare
3.1.3-RC4 Pre-release
Pre-release

Notable changes

  • Fix lack of type avoidance in argument lifting #15229
  • Avoid overeager completion of Java annotations in classfile parser #15185
  • Implement scalac script in Scala #15212

Contributors

Thank you to all the contributors who made this release possible πŸŽ‰

According to git shortlog -sn --no-merges 3.1.3-RC3..3.1.3-RC4 these are:

2  PaweΕ‚ Marks
1  Guillaume Martres
1  Jamie Thompson
1  Tom Grigg

3.1.3-RC3

12 May 12:40
Compare
Choose a tag to compare
3.1.3-RC3 Pre-release
Pre-release

Notable changes

  • More aggressive reduction of type selection (fixes parboiled2) #14987
  • Relax avoidance checks more for match type reduction #15036

Contributors

Thank you to all the contributors who made this release possible πŸŽ‰

According to git shortlog -sn --no-merges 3.1.3-RC2..3.1.3-RC3 these are:

 2  Guillaume Martres
 2  PaweΕ‚ Marks

3.1.3-RC2

13 Apr 10:39
Compare
Choose a tag to compare
3.1.3-RC2 Pre-release
Pre-release

This release is in all practical sense identical to the first release candidate. We decided to re-release because there were some problems with artifact propagation to the maven due to sonatype incident. This changelog is copied for the RC1.

Highlights of the release

  • f-interpolator: Scala 2 parity and bugfixes #13367
  • Show inlined positions with source code on errors #14002
  • Add reflect ClassDef.apply and Symbol.newClass #14124
  • Add experimental TupledFunction #14414

Other changes and fixes

Backend

  • Filter out static forwarders for Java package private methods #14662
  • Emit all classes as public to avoid object deserialization issues #14686
  • Upgrade to ASM 9.2 #14711

Desugaring

  • Adapt function arguments to n-ary prototype #14651

Erasure

  • Don't optimize explicitly written isInstanceOf tests away. #14715

Exports

  • Fix use of exported prefix #14461
  • Export constructor proxies for parameterized classes #14681

GADT

  • Fix #14726: call exclusiveLower before addLess during unification #14727
  • Avoid unsound GADT constraints derived from subtyping relations between singletons and refined types #14728
  • Keep correct kind when preparing constraint in stripParams #14761

Initialization

  • Add special case to init checker to always allow certain methods #14352

Implicits

  • Avoid unnecessary under-constrained implicit searches #14353
  • Prevent implicit conversion chaining #14750
  • Fix hasKnownMembers #14762

Match types

  • Fix #13855: Chaining Match Types fails at value level #14354
  • Constrain pattern types when typing a match type case #14563
  • Fix bounds of match type cases #14645

Metaprogramming

  • Allow nested Quotes with a different owners #13652
  • Add typed versions of Mirror.ProductOf#fromProduct #14114
  • Fix #14393: foldOver in default TreeAccumulator can't process Typed nodes #14396
  • Fix invariant quote type holes #14425
  • Make singleton operations covariant #14452
  • Find inline calls inserted in synthetic members #14480
  • Don't generate Mirror.Sum for simple enum cases #14525
  • Collect all local class definitions #14528
  • Only make the staged parts of a quote inlineable #14604
  • Tolerate some faults when copying trees in InlineTreeMap #14674
  • Handle this prefix in objects (in quote patterns) #14732
  • Detect when position is not in known source #14801
  • Handle SummonFrom in reflect TreeAccumulator #14809
    -Handle situation where an inline info cannot be computed #14827

Opaque Types

  • Disallow overriding opaque type aliases #14665
  • Disallow private opaque type aliases #14666
  • Generate opaque proxies also for base classes #14668

Parser

  • Accept supplementary Unicode characters #13136
  • Don't compute indents when in a string #14441
  • Parse empty arguments in (invalid) Apply more often #14463
  • Expand span errorTermTree to include skipped span. #14492
  • Fix lookahead logic in Scanner #14562
  • Add private inteface methods parsing in JavaParser #14643
  • Reject postfix ops already in Parser #14677
  • Syntax error recovery #14695

Pattern matching

  • For generic tuples, call Tuples.apply instead of _1/_2/.. #14296
  • Preserve the intersection of disjoint numbers in match analysis #14550
  • Fix casting of generic tuple selection #14590
  • Ignore private/sealed abstract class/traits #14599
  • Drop special treatment for Scala-2 code in unapply #14766

Pickling

  • Disable type simplify in unpickler #14506
  • Check if package names will be encoded in desugar #14597
  • Fix picking default syntax for comments #14725

Refchecks

  • Don't skip override tests when overridden is AbsOverride #14527
  • Extend "cannot override mutable variable" restriction to deferred var… #14724

Repl

  • Avoid stale import context during REPL parsing #14493
  • Fix #11202: Incorrect highlight for type constructor #14518
  • Make empty catch an incomplete. #14519
  • Add in feedback when resetting REPL state #14521
  • Fix #14535: End marker now has the same color as its definition in repl #14555
  • Add backticks when needed in completions #14594
  • Autocomplete repl commands #14627
  • Harden REPL in presence of values that fail to initialize #14702

Reporting

  • Change error message text from "fully-initialized" to "fully initialized" #14400
  • Improve -explain rendering #14357
  • Propagate unreported features when flushing a reporter #14503
  • Avoid using Β· character #14453
  • Fix explain rendering with Windows EOL #14456
  • Fix #14576: Ensure unreported warning summaries are also emitted via sbt-bridge #14602
  • Add context to safe-init warnings for inlined methods #14646
  • Show unique ids of pattern bound symbols #14716
  • Don't replace typevars by their f-bounds in error messages #14723
  • Error message improvement for illegal access extension methods #14730
  • Warn on misleading indentation in single-case catch #14738
  • Use correct ErrorMessageID for EmptyCatchOrFinallyBlock #14786
  • Correct highlight interpolation in explain message #14802
    Don't issue implicit errors if parameter has default value #14849

Typer

  • Fix approximating RefinedTypes (n>1) #14361
  • Allow override protected[C] in companion #14105
  • Hide apply generated for rotected case class constructor #14266
  • Infer parameters of eta applications with vararg parameters #14397
  • Keep softness when widening unions #14399
  • Fix #11008: Support generic tuples as a valid unapply result #14434
  • Fix TreeTypeMap to correctly substitute type parameters #14537
  • ...
Read more

3.1.3-RC1

13 Apr 10:38
Compare
Choose a tag to compare
3.1.3-RC1 Pre-release
Pre-release

Highlights of the release

  • f-interpolator: Scala 2 parity and bugfixes #13367
  • Show inlined positions with source code on errors #14002
  • Add reflect ClassDef.apply and Symbol.newClass #14124
  • Add experimental TupledFunction #14414

Other changes and fixes

Backend

  • Filter out static forwarders for Java package private methods #14662
  • Emit all classes as public to avoid object deserialization issues #14686
  • Upgrade to ASM 9.2 #14711

Desugaring

  • Adapt function arguments to n-ary prototype #14651

Erasure

  • Don't optimize explicitly written isInstanceOf tests away. #14715

Exports

  • Fix use of exported prefix #14461
  • Export constructor proxies for parameterized classes #14681

GADT

  • Fix #14726: call exclusiveLower before addLess during unification #14727
  • Avoid unsound GADT constraints derived from subtyping relations between singletons and refined types #14728
  • Keep correct kind when preparing constraint in stripParams #14761

Initialization

  • Add special case to init checker to always allow certain methods #14352

Implicits

  • Avoid unnecessary under-constrained implicit searches #14353
  • Prevent implicit conversion chaining #14750
  • Fix hasKnownMembers #14762

Match types

  • Fix #13855: Chaining Match Types fails at value level #14354
  • Constrain pattern types when typing a match type case #14563
  • Fix bounds of match type cases #14645

Metaprogramming

  • Allow nested Quotes with a different owners #13652
  • Add typed versions of Mirror.ProductOf#fromProduct #14114
  • Fix #14393: foldOver in default TreeAccumulator can't process Typed nodes #14396
  • Fix invariant quote type holes #14425
  • Make singleton operations covariant #14452
  • Find inline calls inserted in synthetic members #14480
  • Don't generate Mirror.Sum for simple enum cases #14525
  • Collect all local class definitions #14528
  • Only make the staged parts of a quote inlineable #14604
  • Tolerate some faults when copying trees in InlineTreeMap #14674
  • Handle this prefix in objects (in quote patterns) #14732
  • Detect when position is not in known source #14801
  • Handle SummonFrom in reflect TreeAccumulator #14809
    -Handle situation where an inline info cannot be computed #14827

Opaque Types

  • Disallow overriding opaque type aliases #14665
  • Disallow private opaque type aliases #14666
  • Generate opaque proxies also for base classes #14668

Parser

  • Accept supplementary Unicode characters #13136
  • Don't compute indents when in a string #14441
  • Parse empty arguments in (invalid) Apply more often #14463
  • Expand span errorTermTree to include skipped span. #14492
  • Fix lookahead logic in Scanner #14562
  • Add private inteface methods parsing in JavaParser #14643
  • Reject postfix ops already in Parser #14677
  • Syntax error recovery #14695

Pattern matching

  • For generic tuples, call Tuples.apply instead of _1/_2/.. #14296
  • Preserve the intersection of disjoint numbers in match analysis #14550
  • Fix casting of generic tuple selection #14590
  • Ignore private/sealed abstract class/traits #14599
  • Drop special treatment for Scala-2 code in unapply #14766

Pickling

  • Disable type simplify in unpickler #14506
  • Check if package names will be encoded in desugar #14597
  • Fix picking default syntax for comments #14725

Refchecks

  • Don't skip override tests when overridden is AbsOverride #14527
  • Extend "cannot override mutable variable" restriction to deferred var… #14724

Repl

  • Avoid stale import context during REPL parsing #14493
  • Fix #11202: Incorrect highlight for type constructor #14518
  • Make empty catch an incomplete. #14519
  • Add in feedback when resetting REPL state #14521
  • Fix #14535: End marker now has the same color as its definition in repl #14555
  • Add backticks when needed in completions #14594
  • Autocomplete repl commands #14627
  • Harden REPL in presence of values that fail to initialize #14702

Reporting

  • Change error message text from "fully-initialized" to "fully initialized" #14400
  • Improve -explain rendering #14357
  • Propagate unreported features when flushing a reporter #14503
  • Avoid using Β· character #14453
  • Fix explain rendering with Windows EOL #14456
  • Fix #14576: Ensure unreported warning summaries are also emitted via sbt-bridge #14602
  • Add context to safe-init warnings for inlined methods #14646
  • Show unique ids of pattern bound symbols #14716
  • Don't replace typevars by their f-bounds in error messages #14723
  • Error message improvement for illegal access extension methods #14730
  • Warn on misleading indentation in single-case catch #14738
  • Use correct ErrorMessageID for EmptyCatchOrFinallyBlock #14786
  • Correct highlight interpolation in explain message #14802
    Don't issue implicit errors if parameter has default value #14849

Typer

  • Fix approximating RefinedTypes (n>1) #14361
  • Allow override protected[C] in companion #14105
  • Hide apply generated for rotected case class constructor #14266
  • Infer parameters of eta applications with vararg parameters #14397
  • Keep softness when widening unions #14399
  • Fix #11008: Support generic tuples as a valid unapply result #14434
  • Fix TreeTypeMap to correctly substitute type parameters #14537
  • Handle ownership changes in InlineTyper #14568
  • Handle more corner cases in etaReduce #14628
  • Remove false unchecked warnings on refined type...
Read more

3.1.2

12 Apr 14:18
Compare
Choose a tag to compare

Forward compatibility improvements

  • Enable generation of TASTy files readable for older compilers #14156

General improvements

  • Add eval (-e) expression evaluation to command line #14263
  • Format compiler crash stack traces #14269
  • Improve typer traces #14270
  • Add -Xmacro-settings option and API #14234
  • Add reflect TypeRepr.substituteTypes #13166
  • Expand compiletime.ops #13400
  • Cache isSubspace for a 3000% speedup #13637
  • lint trivially self-recursive extension methods #13709
  • add printTypesAndErasure test main method to compare typer and erasure #13745
  • Warning for infinite recursive lazy vals #13749
  • Provide scala.home setting for scripts #13759
  • Improve message when -Xmax-inlines limit reached #13783
  • Add append operator to Tuple #13786
  • Allow passing any JMH option to scala3-bench #13787
  • Warn on lossy conversion of literals & constants #13792
  • Consider minTargetVersion as always supported #13811
  • Add -Xmacro-check for Block constructors #13824
  • Navigate the AST within AnnotatedType and ImportType #13834
  • Refine handling of CanThrow capabilities #13866
  • Indicate name of classfile where leaky mapping of existential type happens #13879
  • Refine treatment of TypeBounds in patterns #13881
  • Impose implicit search limit #13886
  • Better handling of multiple exceptions for saferExceptions #13914
  • Complete when importing same symbol multiple times #13972
  • Implement :settings in the REPL #13982
  • Fixes and improvements to trace logging #13984
  • Fail compilation of attempting a 0-arity product extraction #14029
  • Traverse the types to find experimental references #14047
  • Retain HasDefaultParams flag on export. #14051
  • Also consider private symbols in implicit scope of type #14054
  • Allow return in tailrec position #14067
  • Make outer references Java-synthetic #14084
  • Add Reflect TypeRepr.typeArgs #14088
  • Reject empty target names #14090
  • Use =>> instead of => for printing a LambdaTypeTree #14107
  • REPL: Add compiler options to :reset #14139
  • Add hint on -Xcheck-macro scope extrusion failure #14203
  • Support quoted PolyFunction #14222
  • Update wording of uninitialized value error to be grammatically correct #14292
  • Rename -Yscala-release, -release and -Xtarget settings to make them more consistent #14606

Scaladoc

  • Fix missing known subtypes #13794
  • Markdown preprocessor #13140
  • Add source position for errors from doc-root-content file #13908
  • Fix double implicit modifier #13909
  • Fix links to unexisting types sites #13917
  • Add support for tables in wiki syntax #13933
  • Improve features parity with old scaladoc/docs.scala-lang #13954
  • Add missing styles to snippets that are not Scala #13959
  • Fix filtering extensions. Better support for exports #14125

SemanticDB

Bug fixes

  • Fix #13855: Chaining Match Types fails at value level #14354
  • Fix #12260: Add underscore to match type syntax #12261
  • Fix #11861 - hash nested calls to inline definitions #12931
  • Avoid shadowing of name 'name' #13442
  • Fix #13633: Can't reduce match types inside a type alias #13635
  • Fix erased context function types #13736
  • Widen qualifier skolems #13748
  • Change order of proxy evaluation when inlining #13755
  • Fix init checker on secondary constructor parameter access #13776
  • Add missing @experimental in Tuples #13778
  • Fix improper usage of constrained breaking type inference #13779
  • Fix error message when deriving an obstract type #13812
  • Handles Nothing when synthesizing CanEqual #13828
  • Fix #13026: No longer print VBAR and padding in the middle of the message #13829
  • Solves dotc assertion error on (non-sensical?) parameter type. #13769 #13830
  • Fix missing code-completion on standalone annotations #13831
  • Fix comparing AnyVal | Null to Null and selecting in UnsafeNulls #13837
  • Fix error summary printed twice #13843
  • Detect opaque aliases in inline val types #13857
  • Fix @experimental @main methods #13858
  • Fix #13860: Ignore bridges when looking for a default getter's attached method. #13870
  • Add missing position when expanding error #13872
  • Try to instantiate type variables in tryInsertImplicitOnQualifier #13884
  • Fix crasher for missing integer argument on command line #13894
  • Fix messages leaking via suspended messages #13911
  • Don't lift try-catch statements that are already in local functions #13944
  • Initialize quote cache on tasty inspector run #13953
  • Tighten product match logic in irrefutable check #13962
  • Fix Mirror.Product for type lambdas #14003
  • Sound type avoidance (hopefully!) #14026
  • Fix REPL clashing with CWD artefacts #14021
  • Don't retypecheck erroneous arguments when fixing function #14043
  • Fix #13994: initialise inline ctx in lateEnter #14050
  • Inline inlined private methods before checking accessibility #14049
  • Handle hoisted super arguments correctly in elimByName #14057
  • Check variance of RHS of opaque type #14058
  • Don't insert INDENT/UNINDENT without anything in between #14066
  • Don't generate illegal types when clarifying implicit errors #14068
  • Allow import <ident> to show completions #14069
  • Bypass eligible caches for impl...
Read more

3.1.2-RC3

23 Mar 18:51
Compare
Choose a tag to compare
3.1.2-RC3 Pre-release
Pre-release

Notable Changes

  • Revert #14067: "Allow return in tailrec position" - the change was breaking tasty compatibility.

Contributors

For the record, according to git shortlog -sn --no-merges 3.1.2-RC2..3.1.2-RC3, contributors list looks like this:

  2  PaweΕ‚ Marks

3.1.2-RC2

09 Mar 17:42
Compare
Choose a tag to compare
3.1.2-RC2 Pre-release
Pre-release

Notable Changes

  • Set context when reporting summonInline errors #14405
  • Fix #14541: Problem running @main methods with command line arguments #14543
  • Check defined in src for cache in companion #14557
  • Rename -Yscala-release, -release and -Xtarget settings to make them more consistent #14606

Contributors

Thank you to all the contributors who made this release possible πŸŽ‰

According to git shortlog -sn --no-merges 3.1.2-RC1..3.1.2-RC2 these are:

     1  Jamie Thompson
     1  MichaΕ‚ PaΕ‚ka
     1  Nicolas Stucki
     1  PaweΕ‚ Marks
     1  Som Snytt
     1  Andrzej Ressel

3.1.2-RC1

26 Jan 10:12
Compare
Choose a tag to compare
3.1.2-RC1 Pre-release
Pre-release

Forward compatibility improvements

  • Enable generation of TASTy files readable for older compilers #14156

General improvements

  • Add eval (-e) expression evaluation to command line #14263
  • Format compiler crash stack traces #14269
  • Improve typer traces #14270
  • Add -Xmacro-settings option and API #14234
  • Add reflect TypeRepr.substituteTypes #13166
  • Expand compiletime.ops #13400
  • Cache isSubspace for a 3000% speedup #13637
  • lint trivially self-recursive extension methods #13709
  • add printTypesAndErasure test main method to compare typer and erasure #13745
  • Warning for infinite recursive lazy vals #13749
  • Provide scala.home setting for scripts #13759
  • Improve message when -Xmax-inlines limit reached #13783
  • Add append operator to Tuple #13786
  • Allow passing any JMH option to scala3-bench #13787
  • Warn on lossy conversion of literals & constants #13792
  • Consider minTargetVersion as always supported #13811
  • Add -Xmacro-check for Block constructors #13824
  • Navigate the AST within AnnotatedType and ImportType #13834
  • Refine handling of CanThrow capabilities #13866
  • Indicate name of classfile where leaky mapping of existential type happens #13879
  • Refine treatment of TypeBounds in patterns #13881
  • Impose implicit search limit #13886
  • Better handling of multiple exceptions for saferExceptions #13914
  • Complete when importing same symbol multiple times #13972
  • Implement :settings in the REPL #13982
  • Fixes and improvements to trace logging #13984
  • Fail compilation of attempting a 0-arity product extraction #14029
  • Traverse the types to find experimental references #14047
  • Retain HasDefaultParams flag on export. #14051
  • Also consider private symbols in implicit scope of type #14054
  • Allow return in tailrec position #14067
  • Make outer references Java-synthetic #14084
  • Add Reflect TypeRepr.typeArgs #14088
  • Reject empty target names #14090
  • Use =>> instead of => for printing a LambdaTypeTree #14107
  • REPL: Add compiler options to :reset #14139
  • Add hint on -Xcheck-macro scope extrusion failure #14203
  • Support quoted PolyFunction #14222
  • Update wording of uninitialized value error to be grammatically correct #14292

Scaladoc

  • Fix missing known subtypes #13794
  • Markdown preprocessor #13140
  • Add source position for errors from doc-root-content file #13908
  • Fix double implicit modifier #13909
  • Fix links to unexisting types sites #13917
  • Add support for tables in wiki syntax #13933
  • Improve features parity with old scaladoc/docs.scala-lang #13954
  • Add missing styles to snippets that are not Scala #13959
  • Fix filtering extensions. Better support for exports #14125

SemanticDB

Bug fixes

  • Fix #13855: Chaining Match Types fails at value level #14354
  • Fix #12260: Add underscore to match type syntax #12261
  • Fix #11861 - hash nested calls to inline definitions #12931
  • Avoid shadowing of name 'name' #13442
  • Fix #13633: Can't reduce match types inside a type alias #13635
  • Fix erased context function types #13736
  • Widen qualifier skolems #13748
  • Change order of proxy evaluation when inlining #13755
  • Fix init checker on secondary constructor parameter access #13776
  • Add missing @experimental in Tuples #13778
  • Fix improper usage of constrained breaking type inference #13779
  • Fix error message when deriving an obstract type #13812
  • Handles Nothing when synthesizing CanEqual #13828
  • Fix #13026: No longer print VBAR and padding in the middle of the message #13829
  • Solves dotc assertion error on (non-sensical?) parameter type. #13769 #13830
  • Fix missing code-completion on standalone annotations #13831
  • Fix comparing AnyVal | Null to Null and selecting in UnsafeNulls #13837
  • Fix error summary printed twice #13843
  • Detect opaque aliases in inline val types #13857
  • Fix @experimental @main methods #13858
  • Fix #13860: Ignore bridges when looking for a default getter's attached method. #13870
  • Add missing position when expanding error #13872
  • Try to instantiate type variables in tryInsertImplicitOnQualifier #13884
  • Fix crasher for missing integer argument on command line #13894
  • Fix messages leaking via suspended messages #13911
  • Don't lift try-catch statements that are already in local functions #13944
  • Initialize quote cache on tasty inspector run #13953
  • Tighten product match logic in irrefutable check #13962
  • Fix Mirror.Product for type lambdas #14003
  • Sound type avoidance (hopefully!) #14026
  • Fix REPL clashing with CWD artefacts #14021
  • Don't retypecheck erroneous arguments when fixing function #14043
  • Fix #13994: initialise inline ctx in lateEnter #14050
  • Inline inlined private methods before checking accessibility #14049
  • Handle hoisted super arguments correctly in elimByName #14057
  • Check variance of RHS of opaque type #14058
  • Don't insert INDENT/UNINDENT without anything in between #14066
  • Don't generate illegal types when clarifying implicit errors #14068
  • Allow import <ident> to show completions #14069
  • Bypass eligible caches for implicit search under GADT constraints #14072
  • Fix passing jvm options [#14073](https://github.com/lamp...
Read more

3.1.1

20 Jan 19:24
Compare
Choose a tag to compare

Improvements

  • Remove differences in diagnostic printing in the REPL #13266
  • Make trace typed, to avoid needless casting #13464
  • Change TastyFormat for REFINEDtype to conform to existing .tasty files #13507
  • Emit deferred reachability warnings & fix boxing/unboxing adapting #13485
  • Include scope completions for synthic select tree #13515
  • Setup snippet compiler for scala.quoted and fix snippets #13521
  • Scaladoc: UI/UX Changes #13566
  • Make members of the empty package invisible from inside other packages #13593
  • Prioritize ambiguous errors in extension method search #13588
  • Better nested lists rendering in scaladoc #13643
  • Clarify implicit scope of opaque type aliases #13666
  • Allow using clauses to introduce Scala-2 conversions #13662
  • Remove plugin related settings from common scala settings #13711
  • Remove RenameLifted phase #13717
  • Move part of settings to CommonScalaSettings #13712
  • Add init and last methods to NonEmptyTuple #13735
  • Allow dual Scala 2/3 macros in non-experimental scopes #13795
  • Refine check for caching companion in sum mirror #14035

Bug fixes

  • Do not bind inline parameters when lifting args #13429
  • Fix #13440: Avoid capturing var in message closure #13441
  • Scaladoc: Fix printing refined self-types in snippet-compiler #13436
  • Set correct source for generated TypeTrees #13465
  • Fix reachability of non-reducing match type children #13251
  • Use correct context when creating inline trace #13492
  • Fix #13497: Exception occurred while typechecking summon in nested flatMap #13499
  • Unwiden scrutinee types, fixing match analysis #13409
  • Don't count constructors in allMembers #13505
  • Fix crash on uninstantiated field access #13517
  • Fix #13320: add .type to modules in messages #13374
  • Fix #13518: Scala.js: fix primitive + string when the string is a TermRef. #13537
  • Fix running repl #13535
  • Fix specifity comparison for extensions in polymorphic givens #13509
  • Capture missing class when loading methods #13525
  • Fix snippets in scala.compiletime and fix snippet compiler reporting line numbers in specific cases #13528
  • Fix Java generic signatures for aliases #13574
  • Fix suggested stub implementation code #13529
  • Remove anomalies and gaps in handling annotations #13348
  • Do not remove accessors to early #13484
  • Fix #10349: Match type on Map crashes the compiler #13581
  • Fix wrong external mappings in Build.scala #13582
  • Add type modes to DottyTypeStealer #13576
  • Fix #12962: Fail verifyScalacArgs if dist/target/pack/bin/scalac not found #13029
  • Fix #13455: Also consider sealed classes closed sums #13483
  • Fix #13197: Deskolemize lifted named arguments #13590
  • Fix missing SymbolOccurrence for aliased symbol #13609
  • Fix #13487: Unification check in deriving is incorrect #13489
  • Fix #13552: Insert compiler libraries head of user-specified classpath #13562
  • repl: Handle user-defined res definitions #13600
  • Fix #13491: 3.0.2 typing incompatible with 3.0.1 #13585
  • Ignore StaleSymbol exceptions when testing whether dependencies should be ignored #13594
  • ExtractDependencies: more robust cycle check #13583
  • Check that right hand sides of implicit defs don't loop (directly) #13589
  • Fix #13495: Break completion cycles #13596
  • Fix #10886: Show full evaluation of match types in interactive #13597
  • Fix #13469: Type Function Alias behaves differently from the inlined version of the type alias #13598
  • Fix variable handling in super calls #13639
  • Avoid crash in parser when tree has no position #13640
  • Fix #12944: Match type failure to reduce with separate compilation #13636
  • Fix 13618: Undo windows wildcard classpath globbing #13619
  • Don't reduce inline matches, when a guard cannot be checked at compile time #13601
  • Eliminate newNakedSymbol methods #13641
  • Fix #13418: support AppliedType in outerTestNeeded #13420
  • Fix erasure of curried polymorphic function types #13664
  • Fix # 13670: Relax requirements for recognizing valid scala hashbang lines #13671
  • Make distinctRefs in ImportSuggestions use constant stackspace #13667
  • Remember compared polytypes #13663
  • Fix ordering propagation during parameter unification in constraint solver #13031
  • Don't lose paramSyms when unpickling from Scala 2 #13665
  • Skipping inlined tree reduction of type member selection #13578
  • Fix #12656 by setting the proper reporter for inlined methods #13543
  • Inliner: don't confuse method parameters and nested lambda parameters #13658
  • Strip Nulls from Java members when unsafeNulls is enabled #13337
  • Handle inline super prefix bindings #13649
  • Fix parents of tuple classes #13659
  • Fix broken lookups #13697
  • Fix overriding in explicit nulls #13647
  • Normalize prototype before decomposing as a function #13651
  • Do not perform completion on higher kinded trees #13700
  • Fix encoding of setters on anonymous classes with structural types #13707
  • Scaladoc: Fix bugs found while setting up cats #13705
  • Search for type tests when matching abstract applied type #13453
  • Avoid cycle with top-level export and trait #13719
  • Handle Java varargs T... where T is a class parameter #13718
  • Fix top level index #13710
  • Set the correct owner when quote making inlinable #13547
  • Fix error message when "import given" is missing #13731
  • Can mark var implementation as override #13744
  • under -source:future, don't warn on infix usage of Scala 2 defined methods with default arguments #13714
  • Add missing position to closure tree #13733
  • Collective extensions is sensitive to EOF #13432
  • Fix init soundness #13472
  • Fix F-Bounded types signatures [#13753](ht...
Read more