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
withunderlyingMatchType
#20268
Infer
Infrastructure
- Add the project's icon for Intellij #21188
- Add the link to scala's security policy #21220
- Add _spec to dependabot #21227
- Bump redcarpet from 3.5.1 to 3.6.0 in /docs/_spec #21231
- Bump webrick from 1.7.0 to 1.8.1 in /docs/_spec #21232
- Bump VirtusLab/scala-cli-setup from 1.4.0 to 1.4.1 #21233
- Bump VirtusLab/scala-cli-setup from 1.4.1 to 1.4.3 #21371
- Bump VirtusLab/scala-cli-setup from 1.4.3 to 1.5.0 #21441
- Update ScAS #21283
- Bump hamzaremmal/sdkman-release-action from 4cb6c8cf99cfdf0ed5de586d6b38500558737e65 to 1f2d4209b4f5a38721d4ae20014ea8e1689d869e #21440
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
Pattern matching
- Fix a bundle of patmat issues #21000
Positions
- Fix trailing comma Ident's span #20445
Presentation Compiler
- fix: don't use color codes for pattern match code action #21120
- fix: don't add suffix if brackets already present #21259
- Backport from metals #21196
- change mock symbol search #21296
- fix: completions when parenthesis already provided #21299
- Weekly metals backport #21343
- Help implement Metals' infer expected type feature #21390
- feat: Implement completions for named tuple fields #21202
Runner
- Wrap the arguments passed to the scalac task between " #21322
REPL
- Allow JLine to fall back to a dumb terminal #21330
Semantic DB
- fix: semanticdb symbol creation when
targetName
set #20950
Tasty Format
- add child to parent in completion context #21214
Transform
Typeclass Derivation
- Revert "Compensate loss of transitivity" #21356
Typer
- Avoid forcing ctors & parents which caused cycles #17086
- Fix isomorphism tests of
AndOrType
s under non-emptyBinderPairs
#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-RC1
these are:
21 Dale Wijnand
12 Eugene Flesselle
11 Katarzyna Marek
6 dependabot[bot]
5 Wojciech Mazur
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