-
Notifications
You must be signed in to change notification settings - Fork 1.1k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
ab4bf5e
commit b271cb8
Showing
1 changed file
with
162 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,162 @@ | ||
# Highlights of the release | ||
|
||
- Use Scala 2.13.15 standard library [#21648](https://github.com/scala/scala3/pull/21648) | ||
- Support JDK 23 [#20144](https://github.com/scala/scala3/pull/20144) | ||
- Add the `-Wall` option that enables all warnings [#20577](https://github.com/scala/scala3/pull/20577) | ||
- Reversed `-Wconf` parsing order to mirror Scala 2 semantics [#18503](https://github.com/scala/scala3/pull/18503) | ||
|
||
# Other changes and fixes | ||
|
||
## Annotations | ||
|
||
- Tighten java annot value parsing [#21650](https://github.com/scala/scala3/pull/21650) | ||
|
||
## Exports | ||
|
||
- Re-use attachment in exportForwarders to handle ambiguous overloads [#21518](https://github.com/scala/scala3/pull/21518) | ||
- Allow export statements in AnyVal [#21653](https://github.com/scala/scala3/pull/21653) | ||
|
||
## Extension Methods | ||
|
||
- Make right assoc ext method fwd refs error [#21641](https://github.com/scala/scala3/pull/21641) | ||
|
||
## Inference | ||
|
||
- Fix #20521: Optimise caching for computing atoms and widened in OrTypes [#21223](https://github.com/scala/scala3/pull/21223) | ||
|
||
## Linting | ||
|
||
- Add origin filter to WConf, DeprecationWarning [#21404](https://github.com/scala/scala3/pull/21404) | ||
- CheckUnused checks type param annotations [#20549](https://github.com/scala/scala3/pull/20549) | ||
|
||
## Match Types | ||
|
||
- Fix #20897: Make `Nothing ⋔ Nothing`, as per spec. [#21241](https://github.com/scala/scala3/pull/21241) | ||
- Always interpret underscores inside patterns as type bounds [#21718](https://github.com/scala/scala3/pull/21718) | ||
|
||
## Overloading | ||
|
||
- Report only non-overridden unimplemented members [#21337](https://github.com/scala/scala3/pull/21337) | ||
|
||
## Parser | ||
|
||
- Harden skip in Scanner [#21607](https://github.com/scala/scala3/pull/21607) | ||
- SimplePattern errors should now be recovered as wildcard instead of unimplemented expr [#21438](https://github.com/scala/scala3/pull/21438) | ||
|
||
## Positions | ||
|
||
- Fix trailing comma Ident's span [#20445](https://github.com/scala/scala3/pull/20445) | ||
|
||
## Presentation Compiler | ||
|
||
- Fix autoimports with using directives [#21590](https://github.com/scala/scala3/pull/21590) | ||
- Remove artificial `CURSOR` added to code in the completions [#20899](https://github.com/scala/scala3/pull/20899) | ||
- Help implement Metals' infer expected type feature [#21390](https://github.com/scala/scala3/pull/21390) | ||
- Weekly metals backport [#21343](https://github.com/scala/scala3/pull/21343) | ||
- Change mock symbol search [#21296](https://github.com/scala/scala3/pull/21296) | ||
- Fix: completions when parenthesis already provided [#21299](https://github.com/scala/scala3/pull/21299) | ||
- Backport from metals [#21196](https://github.com/scala/scala3/pull/21196) | ||
- Fix: don't add suffix if brackets already present [#21259](https://github.com/scala/scala3/pull/21259) | ||
|
||
## Quotes | ||
|
||
- Handle suspension due to macro call in arbitrary phases [#21651](https://github.com/scala/scala3/pull/21651) | ||
- Have a better error message when healing types [#21711](https://github.com/scala/scala3/pull/21711) | ||
- Expr#show: Don't crash when the expression contains an unsupported type (like a SkolemType) [#20494](https://github.com/scala/scala3/pull/20494) | ||
- Quotes type printing: take `infix` type modifier into account [#21726](https://github.com/scala/scala3/pull/21726) | ||
|
||
## Reporting | ||
|
||
- Nicer error message in case a `derived` method has an explicit term param [#21332](https://github.com/scala/scala3/pull/21332) | ||
- Add better error reporting for inlined non-immutable paths [#21639](https://github.com/scala/scala3/pull/21639) | ||
|
||
## Releases | ||
|
||
- Add support for Chocolatey [#20534](https://github.com/scala/scala3/pull/20534) | ||
- Add the merge commit hash to the icon's url [#21221](https://github.com/scala/scala3/pull/21221) | ||
- Add sources of synthetic classes to sources jar [#20904](https://github.com/scala/scala3/pull/20904) | ||
|
||
## REPL | ||
|
||
- Uppdate JLine to 3.27.0 (was 3.25.1) [#21752](https://github.com/scala/scala3/pull/21752) | ||
- Allow JLine to fall back to a dumb terminal [#21330](https://github.com/scala/scala3/pull/21330) | ||
|
||
## Scaladoc | ||
|
||
- Only trim one newline when preprocessing the content of a markdown code snippet [#21519](https://github.com/scala/scala3/pull/21519) | ||
- Bump Inkuire version to fix it for the new Scala versions [#21611](https://github.com/scala/scala3/pull/21611) | ||
- Filter opaque modifier from object documentation [#21640](https://github.com/scala/scala3/pull/21640) | ||
|
||
## TASTy format | ||
|
||
- Add child to parent in completion context [#21214](https://github.com/scala/scala3/pull/21214) | ||
|
||
## Transform | ||
|
||
- Three fixes to SAM type handling [#21596](https://github.com/scala/scala3/pull/21596) | ||
- Fix treatment of separately compiled @native methods in FirstTransform [#21593](https://github.com/scala/scala3/pull/21593) | ||
- Fix #20856: Serialize `Waiting` and `Evaluating` as if `null`. [#21243](https://github.com/scala/scala3/pull/21243) | ||
- Fixes IllegalAccessError with Java package protected class [#21362](https://github.com/scala/scala3/pull/21362) | ||
- Consistently use TypeMismatch in TreeChecker [#21529](https://github.com/scala/scala3/pull/21529) | ||
- Fix: don't use color codes for pattern match code action [#21120](https://github.com/scala/scala3/pull/21120) | ||
- Let show behave more robustly for Recheck [#21678](https://github.com/scala/scala3/pull/21678) | ||
- Always rewrite empty List() to Nil [#21689](https://github.com/scala/scala3/pull/21689) | ||
|
||
## Typer | ||
|
||
- Fix extending protected nested java classes [#21857](https://github.com/scala/scala3/pull/21857) | ||
- Avoid cyclic errors forcing default arg types [#21597](https://github.com/scala/scala3/pull/21597) | ||
- Survive inaccessible types when computing implicit scope [#21589](https://github.com/scala/scala3/pull/21589) | ||
- Revert "Drop redundant `butNot = Param` clause in isAnchor" [#21566](https://github.com/scala/scala3/pull/21566) | ||
- Fail early & more clearly on shaded-broken classfiles [#21262](https://github.com/scala/scala3/pull/21262) | ||
- Fix isomorphism tests of `AndOrType`s under non-empty `BinderPairs` [#21017](https://github.com/scala/scala3/pull/21017) | ||
- Some fixes for AnnotatedTypes mapping [#19957](https://github.com/scala/scala3/pull/19957) | ||
- Simple performance improvement for Denotations [#21584](https://github.com/scala/scala3/pull/21584) | ||
- Avoid import suggestion thread hang if -Ximport-suggestion-timeout <= 1 [#21434](https://github.com/scala/scala3/pull/21434) | ||
- Fix incorrect caching with dependent method parameters [#21699](https://github.com/scala/scala3/pull/21699) | ||
|
||
## Experimental: Explicit Nulls | ||
|
||
- Add tracking of NotNullInfo for Match, Case, Try trees (fix #21380) [#21389](https://github.com/scala/scala3/pull/21389) | ||
- Fix #21392: Adjust `canComparePredefined(Nothing, T)` in explicit nulls [#21504](https://github.com/scala/scala3/pull/21504) | ||
|
||
# Contributors | ||
|
||
Thank you to all the contributors who made this release possible 🎉 | ||
|
||
According to `git shortlog -sn --no-merges 3.3.4..3.3.5-RC1` these are: | ||
|
||
``` | ||
44 Wojciech Mazur | ||
14 Dale Wijnand | ||
10 Katarzyna Marek | ||
8 rochala | ||
5 noti0na1 | ||
4 Hamza Remmal | ||
4 Matt Bovel | ||
4 Som Snytt | ||
3 Jamie Thompson | ||
3 Martin Odersky | ||
3 Michał Pałka | ||
3 dependabot[bot] | ||
3 kasiaMarek | ||
2 Aleksander Rainko | ||
2 Eugene Flesselle | ||
2 Florian3k | ||
2 HarrisL2 | ||
2 Jędrzej Rochala | ||
2 Kacper Korban | ||
2 Yichen Xu | ||
1 Eugene Yokota | ||
1 Guillaume Martres | ||
1 Hamza REMMAL | ||
1 Jan Chyb | ||
1 Joel Wilsson | ||
1 Kenji Yoshida | ||
1 Martin Duhem | ||
1 Nicolas Stucki | ||
1 Ondrej Lhotak | ||
1 Seth Tisue | ||
1 Sébastien Doeraene | ||
1 Tomasz Godzik | ||
``` |