-
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
f23048e
commit 7e456c1
Showing
1 changed file
with
194 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,194 @@ | ||
# Highlights of the release | ||
|
||
- Add sources of synthetic classes to sources jar [#20904](https://github.com/lampepfl/dotty/pull/20904) | ||
|
||
# Other changes and fixes | ||
|
||
## Annotations | ||
|
||
- Preventing compilation of a @tailrec method when it does not rewrite, but an inner method does [#20143](https://github.com/lampepfl/dotty/pull/20143) | ||
- #20145 - bugfix when a return tailrec is called inside a val def. [#20652](https://github.com/lampepfl/dotty/pull/20652) | ||
|
||
## Backend | ||
|
||
- Fix EnclosingMethod for lifted anonfun [#20558](https://github.com/lampepfl/dotty/pull/20558) | ||
- Emit switch bytecode when matching unions of a switchable type [#20411](https://github.com/lampepfl/dotty/pull/20411) | ||
- Fix deterministically adding additional interfaces [#20593](https://github.com/lampepfl/dotty/pull/20593) | ||
|
||
## Documentation | ||
|
||
- Avoid jpath in example [#20775](https://github.com/lampepfl/dotty/pull/20775) | ||
- Chore: Fix doc link in clauseInterleaving docstring [#20590](https://github.com/lampepfl/dotty/pull/20590) | ||
- Chore: fix doc link in namedTuples docstring [#20770](https://github.com/lampepfl/dotty/pull/20770) | ||
|
||
## Erasure | ||
|
||
- Don't re-balance AndTypes arising from supertypes [#20400](https://github.com/lampepfl/dotty/pull/20400) | ||
|
||
## GADTs | ||
|
||
- Harden GADT constraint handling to survive illegal F-bounds [#20325](https://github.com/lampepfl/dotty/pull/20325) | ||
|
||
## Inferencing | ||
|
||
- Adapt toInstantiate in interpolateTypeVars to consider #20399 [#20426](https://github.com/lampepfl/dotty/pull/20426) | ||
|
||
## Infrastructure | ||
|
||
- Update `addToBackportingProject.scala` [#20461](https://github.com/lampepfl/dotty/pull/20461) | ||
- Simple scripts to run non-bootstrapped compiler after 'sbt buildQuick' [#19894](https://github.com/lampepfl/dotty/pull/19894) | ||
- Bump from 3.4.0 to 3.5.0-RC1 for MiMA [#20404](https://github.com/lampepfl/dotty/pull/20404) | ||
- Set reference version to 3.5.0-RC4 [#21175](https://github.com/scala/scala3/pull/21175) | ||
- Bring back windows performance improvements [#20423](https://github.com/lampepfl/dotty/pull/20423) | ||
- Bump scalacenter/sbt-dependency-submission from 2 to 3 [#20440](https://github.com/lampepfl/dotty/pull/20440) | ||
- Fix incorrect paths to sha256 check sum files in release workflow [#20709](https://github.com/lampepfl/dotty/pull/20709) | ||
- Bump VirtusLab/scala-cli-setup from 1.3.2 to 1.4.0 [#20906](https://github.com/lampepfl/dotty/pull/20906) | ||
|
||
## Inline | ||
|
||
- Mark genSJSIR as *disabled* (rather than non-*runnable*) when no `-scalajs`. [#20815](https://github.com/lampepfl/dotty/pull/20815) | ||
- Map over refs of `ImportType`s in `TypeMap` [#20837](https://github.com/lampepfl/dotty/pull/20837) | ||
|
||
## Initialization | ||
|
||
- More principled filtering of abstract values in initialization check [#20548](https://github.com/lampepfl/dotty/pull/20548) | ||
|
||
## Match Types | ||
|
||
- TryCompiletimeConstantFold in disjointnessBoundary [#20168](https://github.com/lampepfl/dotty/pull/20168) | ||
|
||
## Opaque Types | ||
|
||
- Heal member-select on opaque reference [#19730](https://github.com/lampepfl/dotty/pull/19730) | ||
|
||
## Pattern Matching | ||
|
||
- Fix #20372: Check pattern match exhaustivity in inlined code [#20403](https://github.com/lampepfl/dotty/pull/20403) | ||
|
||
## Presentation Compiler | ||
|
||
- Add pattern completion for unapply contexts [#20274](https://github.com/lampepfl/dotty/pull/20274) | ||
- Bugfix: Exclude newer LSP4j, which is built on JDK 11 [#20771](https://github.com/lampepfl/dotty/pull/20771) | ||
- Chore: Bump mtags to latest stable [#20442](https://github.com/lampepfl/dotty/pull/20442) | ||
- Weekly metals backport [#20542](https://github.com/lampepfl/dotty/pull/20542) | ||
- Port pc find references from metals [#20544](https://github.com/lampepfl/dotty/pull/20544) | ||
|
||
## Quotes | ||
|
||
- Add regression test for issue 20309 [#20387](https://github.com/lampepfl/dotty/pull/20387) | ||
|
||
## REPL | ||
|
||
- Only consider methods with 0 parameters in valueOf [#20543](https://github.com/lampepfl/dotty/pull/20543) | ||
|
||
## Reflection | ||
|
||
- Fix erasure crash for Inlined rhs of a context function closure [#20398](https://github.com/lampepfl/dotty/pull/20398) | ||
- Fix #20458: do not expose ClassInfo in quotes reflect widenTermRefByName [#20468](https://github.com/lampepfl/dotty/pull/20468) | ||
|
||
## Reporting | ||
|
||
- Fix error message on setter with wrong type [#20444](https://github.com/lampepfl/dotty/pull/20444) | ||
- Add a specific error message for local final defs [#20557](https://github.com/lampepfl/dotty/pull/20557) | ||
- Explain unresolvable references better [#20477](https://github.com/lampepfl/dotty/pull/20477) | ||
- Add error code to diagnostics about unused code [#19780](https://github.com/lampepfl/dotty/pull/19780) | ||
- Better error diagnostics for illegal match cases [#20905](https://github.com/lampepfl/dotty/pull/20905) | ||
|
||
## Scaladoc | ||
|
||
- Fix handling of right associative extension methods across scaladoc and printers [#20467](https://github.com/lampepfl/dotty/pull/20467) | ||
|
||
## Specification | ||
|
||
- Add binary lits to syntax summaries [#19551](https://github.com/lampepfl/dotty/pull/19551) | ||
|
||
## Settings | ||
|
||
- Enhance help message for language flag [#20247](https://github.com/lampepfl/dotty/pull/20247) | ||
- Accept legacy language features [#20454](https://github.com/lampepfl/dotty/pull/20454) | ||
- Set default source version to 3.5 [#20435](https://github.com/lampepfl/dotty/pull/20435) | ||
|
||
## Tooling | ||
|
||
- Improve source positions emited for synthetic unit in if-conditions [#20431](https://github.com/lampepfl/dotty/pull/20431) | ||
- Adjust the API name entry for nested classes [#20279](https://github.com/lampepfl/dotty/pull/20279) | ||
- Fix declaring product of straight-to-jar compilation [#20592](https://github.com/lampepfl/dotty/pull/20592) | ||
|
||
## Transform | ||
|
||
- Correct Java signature for value classes appearing in type arguments [#20463](https://github.com/lampepfl/dotty/pull/20463) | ||
|
||
## Typer | ||
|
||
- Retry `constraint.replace` after `constraint.updateEntry` [#20399](https://github.com/lampepfl/dotty/pull/20399) | ||
- Add special handling for comparisons with Singleton types [#20474](https://github.com/lampepfl/dotty/pull/20474) | ||
- Reinstantiate restriction to transparent inline methods [#20371](https://github.com/lampepfl/dotty/pull/20371) | ||
- Add regression test for #20288 fixed in #20527 [#20857](https://github.com/lampepfl/dotty/pull/20857) | ||
- Fix isEffectivelySingleton [#20486](https://github.com/lampepfl/dotty/pull/20486) | ||
- Fall back to direct subtype comparison at the end in dropIfSuper and dropIfSub [#20523](https://github.com/lampepfl/dotty/pull/20523) | ||
- Mark AppliedType cachedSuper valid Nowhere when using provisional args [#20527](https://github.com/lampepfl/dotty/pull/20527) | ||
|
||
# Experimentqal Changes | ||
|
||
## Capture Checking | ||
|
||
- Fix soundness hole of forgotten reach capabilities [#20524](https://github.com/lampepfl/dotty/pull/20524) | ||
- Drop @capability annotations [#20396](https://github.com/lampepfl/dotty/pull/20396) | ||
- Fix symbol reference retrivial for `scala.caps.Caps` [#20493](https://github.com/lampepfl/dotty/pull/20493) | ||
- Refactor adaptBoxed [#20525](https://github.com/lampepfl/dotty/pull/20525) | ||
- Fix error related to reaches when using scala2-library-cc-tasty [#20528](https://github.com/lampepfl/dotty/pull/20528) | ||
|
||
## Named tuples | ||
|
||
- Make NamedTuple.Empty an alias to NamedTuple [#20502](https://github.com/lampepfl/dotty/pull/20502) | ||
- Move NamedTuple methods to separate scope. re-export [#20504](https://github.com/lampepfl/dotty/pull/20504) | ||
- WidenDealias before extracting namedTupleElementTypes [#20505](https://github.com/lampepfl/dotty/pull/20505) | ||
- Improve type inference for literal named tuples [#20497](https://github.com/lampepfl/dotty/pull/20497) | ||
- Fix issue #20267 with regression test [#20506](https://github.com/lampepfl/dotty/pull/20506) | ||
- Only set `AppliedType#validSuper` after `AppliedType#cachedSuper` [#20553](https://github.com/lampepfl/dotty/pull/20553) | ||
- Fix NamedTuple selection on an unstable prefix [#20455](https://github.com/lampepfl/dotty/pull/20455) | ||
- Allow `apply` adaptation on Selectable with Fields [#20489](https://github.com/lampepfl/dotty/pull/20489) | ||
|
||
# Contributors | ||
|
||
Thank you to all the contributors who made this release possible 🎉 | ||
|
||
According to `git shortlog -sn --no-merges 3.5.0..3.5.1-RC1` these are: | ||
|
||
``` | ||
77 Martin Odersky | ||
18 Wojciech Mazur | ||
17 Hamza REMMAL | ||
14 Jamie Thompson | ||
13 Eugene Flesselle | ||
13 noti0na1 | ||
11 Hamza Remmal | ||
9 Katarzyna Marek | ||
7 Fengyun Liu | ||
7 Jan Chyb | ||
6 Guillaume Martres | ||
5 Dale Wijnand | ||
5 Som Snytt | ||
4 dependabot[bot] | ||
3 Adrien Piquerez | ||
3 Derek Wickern | ||
3 Matt Bovel | ||
3 OlegYch | ||
2 Florian3k | ||
2 Kacper Korban | ||
2 Lucy Martin | ||
2 Paweł Marks | ||
2 Tomasz Godzik | ||
1 Arnout Engelen | ||
1 Eugene Yokota | ||
1 João Ferreira | ||
1 Kasper Kondzielski | ||
1 Lucas Nouguier | ||
1 Lukas Rytz | ||
1 Mikołaj Fornal | ||
1 Nafer Sanabria | ||
1 Natsu Kagami | ||
1 Seth Tisue | ||
1 Sébastien Doeraene | ||
``` |