|
| 1 | +# Highlights of the release |
| 2 | + |
| 3 | +- Add the -Wall option that enables all warnings (Plan B) [#20577](https://github.com/scala/scala3/pull/20577) |
| 4 | +- Add origin filter to WConf, DeprecationWarning [#21404](https://github.com/scala/scala3/pull/21404) |
| 5 | + |
| 6 | +# Other changes and fixes |
| 7 | + |
| 8 | +## Implicits |
| 9 | + |
| 10 | +- Streamline `tryNormalize` with `underlyingMatchType` [#20268](https://github.com/scala/scala3/pull/20268) |
| 11 | + |
| 12 | +## Inference |
| 13 | + |
| 14 | +- Fix #20521: Optimise caching for computing atoms and widened in OrTypes [#21223](https://github.com/scala/scala3/pull/21223) |
| 15 | + |
| 16 | +## JVM Backend |
| 17 | + |
| 18 | +- Update asm to patched 9.7 [#20144](https://github.com/scala/scala3/pull/20144) |
| 19 | + |
| 20 | +## Overloading |
| 21 | + |
| 22 | +- Report only non-overridden unimplemented members [#21337](https://github.com/scala/scala3/pull/21337) |
| 23 | + |
| 24 | +## Parser |
| 25 | + |
| 26 | +- SimplePattern errors should now be recovered as wildcard instead of unimplemented expr [#21438](https://github.com/scala/scala3/pull/21438) |
| 27 | + |
| 28 | +## Positions |
| 29 | + |
| 30 | +- Fix trailing comma Ident's span [#20445](https://github.com/scala/scala3/pull/20445) |
| 31 | + |
| 32 | +## Presentation Compiler |
| 33 | + |
| 34 | +- Implement completions for named tuple fields [#21202](https://github.com/scala/scala3/pull/21202) |
| 35 | +- Don't add suffix if brackets already present [#21259](https://github.com/scala/scala3/pull/21259) |
| 36 | +- Change mock symbol search [#21296](https://github.com/scala/scala3/pull/21296) |
| 37 | +- Fix: completions when parenthesis already provided [#21299](https://github.com/scala/scala3/pull/21299) |
| 38 | +- Weekly metals backport [#21343](https://github.com/scala/scala3/pull/21343) |
| 39 | +- Backport from metals [#21196](https://github.com/scala/scala3/pull/21196) |
| 40 | +- Help implement Metals' infer expected type feature [#21390](https://github.com/scala/scala3/pull/21390) |
| 41 | + |
| 42 | +## Reporting |
| 43 | + |
| 44 | +- Fix: don't use color codes for pattern match code action [#21120](https://github.com/scala/scala3/pull/21120) |
| 45 | + |
| 46 | +## Runner |
| 47 | + |
| 48 | +- Wrap the arguments passed to the scalac task between " [#21322](https://github.com/scala/scala3/pull/21322) |
| 49 | + |
| 50 | +## SemanticDB |
| 51 | + |
| 52 | +- Fix: semanticdb symbol creation when `targetName` set [#20950](https://github.com/scala/scala3/pull/20950) |
| 53 | + |
| 54 | +## TASTy format |
| 55 | + |
| 56 | +- Add child to parent in completion context [#21214](https://github.com/scala/scala3/pull/21214) |
| 57 | + |
| 58 | +## Transform |
| 59 | + |
| 60 | +- Fix #20856: Serialize `Waiting` and `Evaluating` as if `null`. [#21243](https://github.com/scala/scala3/pull/21243) |
| 61 | + |
| 62 | +## Typeclass Derivation |
| 63 | + |
| 64 | +- Revert "Compensate loss of transitivity" [#21356](https://github.com/scala/scala3/pull/21356) |
| 65 | + |
| 66 | +## Typer |
| 67 | + |
| 68 | +- Avoid forcing ctors & parents which caused cycles [#17086](https://github.com/scala/scala3/pull/17086) |
| 69 | +- Fix isomorphism tests of `AndOrType`s under non-empty `BinderPairs` [#21017](https://github.com/scala/scala3/pull/21017) |
| 70 | +- Fail when a poly function value has a different number of type params than the expected poly function [#21248](https://github.com/scala/scala3/pull/21248) |
| 71 | +- Fail early & more clearly on shaded-broken classfiles [#21262](https://github.com/scala/scala3/pull/21262) |
| 72 | +- A tweak to type improvement [#21312](https://github.com/scala/scala3/pull/21312) |
| 73 | +- Fix #20897: Make `Nothing ⋔ Nothing`, as per spec. [#21241](https://github.com/scala/scala3/pull/21241) |
| 74 | + |
| 75 | +# Experimental Changes |
| 76 | + |
| 77 | +## Modularity |
| 78 | + |
| 79 | +- Fix: Only implement a deferred given in a class if its parent won't implement it [#21206](https://github.com/scala/scala3/pull/21206) |
| 80 | + |
| 81 | +## Named Tuples |
| 82 | + |
| 83 | +- Re-use isConcrete checking in match types for NamedTuple.From [#20947](https://github.com/scala/scala3/pull/20947) |
| 84 | +- Fix: Dealias NamedTuple's name types when resolving NamedTuple's element types [#21331](https://github.com/scala/scala3/pull/21331) |
| 85 | + |
| 86 | +## Safe Global Initialization |
| 87 | + |
| 88 | +- Fix exception on sequence matching with drop [#21281](https://github.com/scala/scala3/pull/21281) |
| 89 | +- Fix uninitializing fields when evaluating a cached constructor call in global initialization checker [#21403](https://github.com/scala/scala3/pull/21403) |
| 90 | + |
| 91 | +# Contributors |
| 92 | + |
| 93 | +Thank you to all the contributors who made this release possible 🎉 |
| 94 | + |
| 95 | +According to `git shortlog -sn --no-merges 3.5.1..3.5.2` these are: |
| 96 | + |
| 97 | +``` |
| 98 | + 22 Dale Wijnand |
| 99 | + 12 Eugene Flesselle |
| 100 | + 11 Katarzyna Marek |
| 101 | + 11 Wojciech Mazur |
| 102 | + 6 dependabot[bot] |
| 103 | + 4 Hamza REMMAL |
| 104 | + 4 Kacper Korban |
| 105 | + 4 Martin Odersky |
| 106 | + 4 Som Snytt |
| 107 | + 4 Yichen Xu |
| 108 | + 4 kasiaMarek |
| 109 | + 3 Jamie Thompson |
| 110 | + 2 EnzeXing |
| 111 | + 2 Hamza Remmal |
| 112 | + 2 Sébastien Doeraene |
| 113 | + 1 Jan Chyb |
| 114 | + 1 Jędrzej Rochala |
| 115 | + 1 Kavin Satheeskumar |
| 116 | + 1 Martin Duhem |
| 117 | + 1 Matt Bovel |
| 118 | + 1 Raphael Jolly |
| 119 | + 1 noti0na1 |
| 120 | + 1 philippus |
| 121 | +``` |
0 commit comments