github scala/scala3 3.5.2

20 hours ago

Highlights of the release

  • Add the -Wall option that enables all warnings (Plan B) #20577
  • Add origin filter to WConf, DeprecationWarning #21404

Other changes and fixes

Implicits

  • Streamline tryNormalize with underlyingMatchType #20268

Inference

  • Fix #20521: Optimise caching for computing atoms and widened in OrTypes #21223

JVM Backend

  • Update asm to patched 9.7 #20144

Overloading

  • Report only non-overridden unimplemented members #21337

Parser

  • SimplePattern errors should now be recovered as wildcard instead of unimplemented expr #21438

Positions

  • Fix trailing comma Ident's span #20445

Presentation Compiler

  • Implement completions for named tuple fields #21202
  • Don't add suffix if brackets already present #21259
  • Change mock symbol search #21296
  • Fix: completions when parenthesis already provided #21299
  • Weekly metals backport #21343
  • Backport from metals #21196
  • Help implement Metals' infer expected type feature #21390

Reporting

  • Fix: don't use color codes for pattern match code action #21120

Runner

  • Wrap the arguments passed to the scalac task between " #21322

SemanticDB

  • Fix: semanticdb symbol creation when targetName set #20950

TASTy format

  • Add child to parent in completion context #21214

Transform

  • Fix #20856: Serialize Waiting and Evaluating as if null. #21243

Typeclass Derivation

  • Revert "Compensate loss of transitivity" #21356

Typer

  • Avoid forcing ctors & parents which caused cycles #17086
  • Fix isomorphism tests of AndOrTypes under non-empty BinderPairs #21017
  • Fail when a poly function value has a different number of type params than the expected poly function #21248
  • Fail early & more clearly on shaded-broken classfiles #21262
  • A tweak to type improvement #21312
  • Fix #20897: Make Nothing ⋔ Nothing, as per spec. #21241

Experimental Changes

Modularity

  • Fix: Only implement a deferred given in a class if its parent won't implement it #21206

Named Tuples

  • Re-use isConcrete checking in match types for NamedTuple.From #20947
  • Fix: Dealias NamedTuple's name types when resolving NamedTuple's element types #21331

Safe Global Initialization

  • Fix exception on sequence matching with drop #21281
  • Fix uninitializing fields when evaluating a cached constructor call in global initialization checker #21403

Contributors

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

According to git shortlog -sn --no-merges 3.5.1..3.5.2 these are:

    22  Dale Wijnand
    12  Eugene Flesselle
    11  Katarzyna Marek
    11  Wojciech Mazur
     6  dependabot[bot]
     4  Hamza REMMAL
     4  Kacper Korban
     4  Martin Odersky
     4  Som Snytt
     4  Yichen Xu
     4  kasiaMarek
     3  Jamie Thompson
     2  EnzeXing
     2  Hamza Remmal
     2  Sébastien Doeraene
     1  Jan Chyb
     1  Jędrzej Rochala
     1  Kavin Satheeskumar
     1  Martin Duhem
     1  Matt Bovel
     1  Raphael Jolly
     1  noti0na1
     1  philippus

Don't miss a new scala3 release

NewReleases is sending notifications on new releases.