Skip to content

Commit

Permalink
Add changelog for 3.1.3-RC2
Browse files Browse the repository at this point in the history
  • Loading branch information
Kordyjan committed Apr 12, 2022
1 parent 5cfe83a commit 4ba0301
Showing 1 changed file with 263 additions and 0 deletions.
263 changes: 263 additions & 0 deletions changelogs/3.1.3-RC2.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,263 @@
This release is identical to the first release candidate. We decided to re-release because there were some problems with artifact propagation to the maven due to sonatype incident. This changelog is copied for the RC1.

# Highlights of the release

- f-interpolator: Scala 2 parity and bugfixes [#13367](https://github. This changelog is copied for the RC1.com/lampepfl/dotty/pull/13367)
- Show inlined positions with source code on errors [#14002](https://github.com/lampepfl/dotty/pull/14002)
- Add reflect `ClassDef.apply` and `Symbol.newClass` [#14124](https://github.com/lampepfl/dotty/pull/14124)
- Add experimental `TupledFunction` [#14414](https://github.com/lampepfl/dotty/pull/14414)

# Other changes and fixes

## Backend

- Filter out static forwarders for Java package private methods [#14662](https://github.com/lampepfl/dotty/pull/14662)
- Emit all classes as public to avoid object deserialization issues [#14686](https://github.com/lampepfl/dotty/pull/14686)
- Upgrade to ASM 9.2 [#14711](https://github.com/lampepfl/dotty/pull/14711)

## Desugaring

- Adapt function arguments to n-ary prototype [#14651](https://github.com/lampepfl/dotty/pull/14651)

## Erasure

- Don't optimize explicitly written isInstanceOf tests away. [#14715](https://github.com/lampepfl/dotty/pull/14715)

## Exports

- Fix use of exported prefix [#14461](https://github.com/lampepfl/dotty/pull/14461)
- Export constructor proxies for parameterized classes [#14681](https://github.com/lampepfl/dotty/pull/14681)

## GADT

- Fix [#14726](https://github.com/lampepfl/dotty/issues/14726): call exclusiveLower before addLess during unification [#14727](https://github.com/lampepfl/dotty/pull/14727)
- Avoid unsound GADT constraints derived from subtyping relations between singletons and refined types [#14728](https://github.com/lampepfl/dotty/pull/14728)
- Keep correct kind when preparing constraint in `stripParams` [#14761](https://github.com/lampepfl/dotty/pull/14761)

## Initialization

- Add special case to init checker to always allow certain methods [#14352](https://github.com/lampepfl/dotty/pull/14352)

## Implicits

- Avoid unnecessary under-constrained implicit searches [#14353](https://github.com/lampepfl/dotty/pull/14353)
- Prevent implicit conversion chaining [#14750](https://github.com/lampepfl/dotty/pull/14750)
- Fix hasKnownMembers [#14762](https://github.com/lampepfl/dotty/pull/14762)

## Match types

- Fix [#13855](https://github.com/lampepfl/dotty/issues/13855): Chaining Match Types fails at value level [#14354](https://github.com/lampepfl/dotty/pull/14354)
- Constrain pattern types when typing a match type case [#14563](https://github.com/lampepfl/dotty/pull/14563)
- Fix bounds of match type cases [#14645](https://github.com/lampepfl/dotty/pull/14645)

## Metaprogramming

- Allow nested Quotes with a different owners [#13652](https://github.com/lampepfl/dotty/pull/13652)
- Add typed versions of `Mirror.ProductOf#fromProduct` [#14114](https://github.com/lampepfl/dotty/pull/14114)
- Fix [#14393](https://github.com/lampepfl/dotty/issues/14393): foldOver in default TreeAccumulator can't process Typed nodes [#14396](https://github.com/lampepfl/dotty/pull/14396)
- Fix invariant quote type holes [#14425](https://github.com/lampepfl/dotty/pull/14425)
- Make singleton operations covariant [#14452](https://github.com/lampepfl/dotty/pull/14452)
- Find inline calls inserted in synthetic members [#14480](https://github.com/lampepfl/dotty/pull/14480)
- Don't generate `Mirror.Sum` for simple enum cases [#14525](https://github.com/lampepfl/dotty/pull/14525)
- Collect all local class definitions [#14528](https://github.com/lampepfl/dotty/pull/14528)
- Only make the staged parts of a quote inlineable [#14604](https://github.com/lampepfl/dotty/pull/14604)
- Tolerate some faults when copying trees in `InlineTreeMap` [#14674](https://github.com/lampepfl/dotty/pull/14674)
- Handle this prefix in objects (in quote patterns) [#14732](https://github.com/lampepfl/dotty/pull/14732)
- Detect when position is not in known source [#14801](https://github.com/lampepfl/dotty/pull/14801)
- Handle `SummonFrom` in reflect `TreeAccumulator` [#14809](https://github.com/lampepfl/dotty/pull/14809)
-Handle situation where an inline info cannot be computed [#14827](https://github.com/lampepfl/dotty/pull/14827)

## Opaque Types

- Disallow overriding opaque type aliases [#14665](https://github.com/lampepfl/dotty/pull/14665)
- Disallow private opaque type aliases [#14666](https://github.com/lampepfl/dotty/pull/14666)
- Generate opaque proxies also for base classes [#14668](https://github.com/lampepfl/dotty/pull/14668)

## Parser

- Accept supplementary Unicode characters [#13136](https://github.com/lampepfl/dotty/pull/13136)
- Don't compute indents when in a string [#14441](https://github.com/lampepfl/dotty/pull/14441)
- Parse empty arguments in (invalid) `Apply` more often [#14463](https://github.com/lampepfl/dotty/pull/14463)
- Expand span errorTermTree to include skipped span. [#14492](https://github.com/lampepfl/dotty/pull/14492)
- Fix lookahead logic in Scanner [#14562](https://github.com/lampepfl/dotty/pull/14562)
- Add private inteface methods parsing in JavaParser [#14643](https://github.com/lampepfl/dotty/pull/14643)
- Reject postfix ops already in Parser [#14677](https://github.com/lampepfl/dotty/pull/14677)
- Syntax error recovery [#14695](https://github.com/lampepfl/dotty/pull/14695)

## Pattern matching

- For generic tuples, call `Tuples.apply` instead of `_1/_2/..` [#14296](https://github.com/lampepfl/dotty/pull/14296)
- Preserve the intersection of disjoint numbers in match analysis [#14550](https://github.com/lampepfl/dotty/pull/14550)
- Fix casting of generic tuple selection [#14590](https://github.com/lampepfl/dotty/pull/14590)
- Ignore private/sealed abstract class/traits [#14599](https://github.com/lampepfl/dotty/pull/14599)
- Drop special treatment for Scala-2 code in unapply [#14766](https://github.com/lampepfl/dotty/pull/14766)

## Pickling

- Disable type simplify in unpickler [#14506](https://github.com/lampepfl/dotty/pull/14506)
- Check if package names will be encoded in desugar [#14597](https://github.com/lampepfl/dotty/pull/14597)
- Fix picking default syntax for comments [#14725](https://github.com/lampepfl/dotty/pull/14725)

## Refchecks

- Don't skip override tests when overridden is `AbsOverride` [#14527](https://github.com/lampepfl/dotty/pull/14527)
- Extend "cannot override mutable variable" restriction to deferred var… [#14724](https://github.com/lampepfl/dotty/pull/14724)

## Repl

- Avoid stale import context during REPL parsing [#14493](https://github.com/lampepfl/dotty/pull/14493)
- Fix #11202: Incorrect highlight for type constructor [#14518](https://github.com/lampepfl/dotty/pull/14518)
- Make empty catch an incomplete. [#14519](https://github.com/lampepfl/dotty/pull/14519)
- Add in feedback when resetting REPL state [#14521](https://github.com/lampepfl/dotty/pull/14521)
- Fix [#14535](https://github.com/lampepfl/dotty/issues/14535): End marker now has the same color as its definition in repl [#14555](https://github.com/lampepfl/dotty/pull/14555)
- Add backticks when needed in completions [#14594](https://github.com/lampepfl/dotty/pull/14594)
- Autocomplete repl commands [#14627](https://github.com/lampepfl/dotty/pull/14627)
- Harden REPL in presence of values that fail to initialize [#14702](https://github.com/lampepfl/dotty/pull/14702)

## Reporting

- Change error message text from "fully-initialized" to "fully initialized" [#14400](https://github.com/lampepfl/dotty/pull/14400)
- Improve -explain rendering [#14357](https://github.com/lampepfl/dotty/pull/14357)
- Propagate unreported features when flushing a reporter [#14503](https://github.com/lampepfl/dotty/pull/14503)
- Avoid using `·` character [#14453](https://github.com/lampepfl/dotty/pull/14453)
- Fix explain rendering with Windows EOL [#14456](https://github.com/lampepfl/dotty/pull/14456)
- Fix [#14576](https://github.com/lampepfl/dotty/issues/14576): Ensure unreported warning summaries are also emitted via sbt-bridge [#14602](https://github.com/lampepfl/dotty/pull/14602)
- Add context to safe-init warnings for inlined methods [#14646](https://github.com/lampepfl/dotty/pull/14646)
- Show unique ids of pattern bound symbols [#14716](https://github.com/lampepfl/dotty/pull/14716)
- Don't replace typevars by their f-bounds in error messages [#14723](https://github.com/lampepfl/dotty/pull/14723)
- Error message improvement for illegal access extension methods [#14730](https://github.com/lampepfl/dotty/pull/14730)
- Warn on misleading indentation in single-case catch [#14738](https://github.com/lampepfl/dotty/pull/14738)
- Use correct ErrorMessageID for EmptyCatchOrFinallyBlock [#14786](https://github.com/lampepfl/dotty/pull/14786)
- Correct highlight interpolation in explain message [#14802](https://github.com/lampepfl/dotty/pull/14802)
Don't issue implicit errors if parameter has default value [#14849](https://github.com/lampepfl/dotty/pull/14849)

## Typer

- Fix approximating RefinedTypes (n>1) [#14361](https://github.com/lampepfl/dotty/pull/14361)
- Allow override `protected[C]` in companion [#14105](https://github.com/lampepfl/dotty/pull/14105)
- Hide `apply` generated for rotected case class constructor [#14266](https://github.com/lampepfl/dotty/pull/14266)
- Infer parameters of eta applications with vararg parameters [#14397](https://github.com/lampepfl/dotty/pull/14397)
- Keep softness when widening unions [#14399](https://github.com/lampepfl/dotty/pull/14399)
- Fix [#11008](https://github.com/lampepfl/dotty/issues/11008): Support generic tuples as a valid unapply result [#14434](https://github.com/lampepfl/dotty/pull/14434)
- Fix `TreeTypeMap` to correctly substitute type parameters [#14537](https://github.com/lampepfl/dotty/pull/14537)
- Handle ownership changes in `InlineTyper` [#14568](https://github.com/lampepfl/dotty/pull/14568)
- Handle more corner cases in `etaReduce` [#14628](https://github.com/lampepfl/dotty/pull/14628)
- Remove false unchecked warnings on refined types [#14703](https://github.com/lampepfl/dotty/pull/14703)
- Fix hoisting local symbols [#14714](https://github.com/lampepfl/dotty/pull/14714)
- Fix desugaring empty argument blocks in normArgs [#14719](https://github.com/lampepfl/dotty/pull/14719)
- Improve overloading resolution if expected type is not FunProto [#14733](https://github.com/lampepfl/dotty/pull/14733)
- Don't force `LazyRefs` when computing `DepStatus` [#14774](https://github.com/lampepfl/dotty/pull/14774)

## Explicit nulls

- Fix override containing type param [#13975](https://github.com/lampepfl/dotty/pull/13975)
- Fix case null on non-nullable type in unsafe null [#13976](https://github.com/lampepfl/dotty/pull/13976)
- Thread context through block in transforms correctly and efficiently [#14523](https://github.com/lampepfl/dotty/pull/14523)
- Fix intercept `TypeApply` [#14617](https://github.com/lampepfl/dotty/pull/14617)
- Fix #14682: fix overriding check in mergeSingleDenot [#14755](https://github.com/lampepfl/dotty/pull/14755)

## IDE Support

- Fix `contextOfPath` for `Template` [#12783](https://github.com/lampepfl/dotty/pull/12783)
- Search all source trees for a given span [#14436](https://github.com/lampepfl/dotty/pull/14436)
- Set zero span for synthetic enum import selector [#14498](https://github.com/lampepfl/dotty/pull/14498)
- Set zero span for synthetic tuple type [#14499](https://github.com/lampepfl/dotty/pull/14499)
- Set proper position for ValDefs generated from tuples [#14513](https://github.com/lampepfl/dotty/pull/14513)
- Provide signature help for unapply methods [#14611](https://github.com/lampepfl/dotty/pull/14611)
- Add completions for specific MatchType cases [#14639](https://github.com/lampepfl/dotty/pull/14639)
- Support backticked imports in completions [#14649](https://github.com/lampepfl/dotty/pull/14649)
- Change completions filtering to now include package module classes [#14756](https://github.com/lampepfl/dotty/pull/14756)

## Scaladoc

- Correctly handle context functions [#14371](https://github.com/lampepfl/dotty/pull/14371)
- Fix rendering dependent function types [#14327](https://github.com/lampepfl/dotty/pull/14327)
- Unescaped special characters in Quotes documentation [#14377](https://github.com/lampepfl/dotty/pull/14377)
- Refactor static site loading and directory structure [#14378](https://github.com/lampepfl/dotty/pull/14378)
- Make member filtering case-insensitive [#14430](https://github.com/lampepfl/dotty/pull/14430)
- Add member position IDs to anchors in searchbar [#14454](https://github.com/lampepfl/dotty/pull/14454)
- Repair links [#14475](https://github.com/lampepfl/dotty/pull/14475)
- Follow renames in content contributors script [#14478](https://github.com/lampepfl/dotty/pull/14478)
- Change default blog directory to `blog` [#14485](https://github.com/lampepfl/dotty/pull/14485)
- Refactor generation configuration in sbt. Generate reference documentation using Scaladoc [#14489](https://github.com/lampepfl/dotty/pull/14489)
- Fix issues with incorrect external links and special characters [#14516](https://github.com/lampepfl/dotty/pull/14516)
- Grouping entries in searchbar. Add hints to searchbar [#14539](https://github.com/lampepfl/dotty/pull/14539)
- Fix [#14481](https://github.com/lampepfl/dotty/issues/14481): certain functions not being shown in searchbar [#14546](https://github.com/lampepfl/dotty/pull/14546)
- Fix function `classpathArgs()` [#14559](https://github.com/lampepfl/dotty/pull/14559)
- Add necessary parentheses in function types [#14565](https://github.com/lampepfl/dotty/pull/14565)
- Fix groupping entries using markdown syntax [#14577](https://github.com/lampepfl/dotty/pull/14577)
- Add table of content to static sites [#14607](https://github.com/lampepfl/dotty/pull/14607)
- Allow to set a comment syntax based on path to source [#14650](https://github.com/lampepfl/dotty/pull/14650)
- Tweak Language Reference documentation [#14669](https://github.com/lampepfl/dotty/pull/14669)
- Don't add extra newlines when there aren't extra sections in doc markdown [#14734](https://github.com/lampepfl/dotty/pull/14734)
- Fix regression with extension methods not being shown in searchbar [#14779](https://github.com/lampepfl/dotty/pull/14779)
- Fix snippets hiding and buttons animation [#14839](https://github.com/lampepfl/dotty/pull/14839)

## SemanticDB

- Update generated semanticdb code with the latest scalapb [#14591](https://github.com/lampepfl/dotty/pull/14591)
- Support MatchType[#14608](https://github.com/lampepfl/dotty/pull/14608)

## Other

- Kotlin interop: Find nested class if `InnerClass` entry is missing [#14426](https://github.com/lampepfl/dotty/pull/14426)
- Add 3.2 language mode internally, treat it like 3.0, 3.1 [#14690](https://github.com/lampepfl/dotty/pull/14690)
- Add -h to alternatives for -help [#14792](https://github.com/lampepfl/dotty/pull/14792)

# Contributors

Thank you to all the contributors who made this release possible 🎉

According to `git shortlog -sn --no-merges 3.1.2..3.1.3-RC1` these are:

```
59 odersky
48 Nicolas Stucki
38 Filip Zybała
36 Martin Odersky
29 noti0na1
27 Som Snytt
24 Dale Wijnand
19 Anatolii Kmetiuk
19 Chris Kipp
17 Rikito Taniguchi
13 Xavientois
12 Jan Chyb
11 Tom Grigg
8 Matt Bovel
8 Guillaume Martres
8 Paweł Marks
7 Jamie Thompson
6 Tomasz Godzik
5 Michael Pilquist
5 rochala
4 Kacper Korban
4 adampauls
3 Phil
3 Sébastien Doeraene
3 Andrzej Ressel
3 Seth Tisue
3 Olivier Blanvillain
2 Arman Bilge
2 Julien Richard-Foy
2 Adrien Piquerez
2 Yichen Xu
1 ireina7
1 Alexander Ioffe
1 Jentsch
1 Jędrzej Rochala
1 Michał Pałka
1 Ondrej Lhotak
1 Pascal Weisenburger
1 Quentin Bernet
1 Ruslan Shevchenko
1 SrTobi
1 Stephane MICHELOUD
1 Stéphane Micheloud
1 Vadim Chelyshov
1 Vasil Vasilev
1 bjornregnell
1 ghostbuster91
1 som-snytt
1 Łukasz Wroński
```

0 comments on commit 4ba0301

Please sign in to comment.