Skip to content

Commit

Permalink
Add changelog for 3.5.1-RC1
Browse files Browse the repository at this point in the history
  • Loading branch information
WojciechMazur committed Jul 14, 2024
1 parent f23048e commit 7e456c1
Showing 1 changed file with 194 additions and 0 deletions.
194 changes: 194 additions & 0 deletions changelogs/3.5.1-RC1.md
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
```

0 comments on commit 7e456c1

Please sign in to comment.