Skip to content

Commit 57a6de2

Browse files
committed
Add changelog for 3.3.0-RC2
1 parent 5522929 commit 57a6de2

File tree

1 file changed

+229
-0
lines changed

1 file changed

+229
-0
lines changed

changelogs/3.3.0-RC2.md

+229
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,229 @@
1+
This release is nearly identical to 3.3.0-RC1. The only difference is that 3.3.0-RC1 generated output with incorrect TASTy version.
2+
3+
The following changelog is identical to the changelog of 3.3.0-RC1.
4+
5+
# Highlights of the release
6+
7+
- Stabilize new lazy vals [#16614](https://github.com/lampepfl/dotty/pull/16614)
8+
- Experimental Macro annotations [#16392](https://github.com/lampepfl/dotty/pull/16392) [#16454](https://github.com/lampepfl/dotty/pull/16454) [#16534](https://github.com/lampepfl/dotty/pull/16534)
9+
- Fix stability check for inline parameters [#15511](https://github.com/lampepfl/dotty/pull/15511)
10+
- Make `fewerBraces` a standard feature [#16297](https://github.com/lampepfl/dotty/pull/16297)
11+
- Add new front-end phase for unused entities and add support for unused imports [#16157](https://github.com/lampepfl/dotty/pull/16157)
12+
- Implement -Wvalue-discard warning [#15975](https://github.com/lampepfl/dotty/pull/15975)
13+
- Introduce boundary/break control abstraction. [#16612](https://github.com/lampepfl/dotty/pull/16612)
14+
15+
# Other changes and fixes
16+
17+
## Annotations
18+
19+
- Support use-site meta-annotations [#16445](https://github.com/lampepfl/dotty/pull/16445)
20+
21+
## Desugaring
22+
23+
- Reuse typed prefix for `applyDynamic` and `applyDynamicNamed` [#16552](https://github.com/lampepfl/dotty/pull/16552)
24+
- Fix object selftype match error [#16441](https://github.com/lampepfl/dotty/pull/16441)
25+
26+
## Erasure
27+
28+
- Dealias before checking for outer references in types [#16525](https://github.com/lampepfl/dotty/pull/16525)
29+
- Fix generic signature for type params bounded by primitive [#16442](https://github.com/lampepfl/dotty/pull/16442)
30+
- Avoid EmptyScope.cloneScope crashing, eg on missing references [#16314](https://github.com/lampepfl/dotty/pull/16314)
31+
32+
## GADTs
33+
34+
- Inline GADT state restoring in TypeComparer [#16564](https://github.com/lampepfl/dotty/pull/16564)
35+
- Add extension/conversion to GADT selection healing [#16638](https://github.com/lampepfl/dotty/pull/16638)
36+
37+
## Incremental compilation
38+
39+
- Unpickle arguments of parent constructors in Templates lazily [#16688](https://github.com/lampepfl/dotty/pull/16688)
40+
41+
## Initialization
42+
43+
- Fix #16438: Supply dummy args for erroneous parent call in init check [#16448](https://github.com/lampepfl/dotty/pull/16448)
44+
45+
## Inline
46+
47+
- Dealias in ConstantValue, for inline if cond [#16652](https://github.com/lampepfl/dotty/pull/16652)
48+
- Set Span for top level annotations generated in PostTyper [#16378](https://github.com/lampepfl/dotty/pull/16378)
49+
- Interpolate any type vars from comparing against SelectionProto [#16348](https://github.com/lampepfl/dotty/pull/16348)
50+
- Handle binding of beta reduced inlined lambdas [#16377](https://github.com/lampepfl/dotty/pull/16377)
51+
- Do not add dummy RHS to abstract inline methods [#16510](https://github.com/lampepfl/dotty/pull/16510)
52+
- Warn on inline given aliases with functions as RHS [#16499](https://github.com/lampepfl/dotty/pull/16499)
53+
- Support inline overrides in value classes [#16523](https://github.com/lampepfl/dotty/pull/16523)
54+
55+
## Java interop
56+
57+
- Represent Java annotations as interfaces so they can be extended, and disallow various misuses of them [#16260](https://github.com/lampepfl/dotty/pull/16260)
58+
59+
## Opaque Types
60+
61+
- Delay opaque alias checking until PostTyper [#16644](https://github.com/lampepfl/dotty/pull/16644)
62+
63+
## Overloading
64+
65+
- Handle context function arguments in overloading resolution [#16511](https://github.com/lampepfl/dotty/pull/16511)
66+
67+
## Parser
68+
69+
- Improve support for Unicode supplementary characters in identifiers and string interpolation (as in Scala 2) [#16278](https://github.com/lampepfl/dotty/pull/16278)
70+
- Require indent after colon at EOL [#16466](https://github.com/lampepfl/dotty/pull/16466)
71+
- Help givens return refined types [#16293](https://github.com/lampepfl/dotty/pull/16293)
72+
73+
## Pattern Matching
74+
75+
- Tweak AvoidMap's derivedSelect [#16563](https://github.com/lampepfl/dotty/pull/16563)
76+
- Space: Use RHS of & when refining subtypes [#16573](https://github.com/lampepfl/dotty/pull/16573)
77+
- Freeze constraints in a condition check of maximiseType [#16526](https://github.com/lampepfl/dotty/pull/16526)
78+
- Restrict syntax of typed patterns [#16150](https://github.com/lampepfl/dotty/pull/16150)
79+
- Test case to show that #16252 works with transparent [#16262](https://github.com/lampepfl/dotty/pull/16262)
80+
- Support inline unapplySeq and with leading given parameters [#16358](https://github.com/lampepfl/dotty/pull/16358)
81+
- Handle sealed prefixes in exh checking [#16621](https://github.com/lampepfl/dotty/pull/16621)
82+
- Detect irrefutable quoted patterns [#16674](https://github.com/lampepfl/dotty/pull/16674)
83+
84+
## Pickling
85+
86+
- Allow case classes with up to 254 parameters [#16501](https://github.com/lampepfl/dotty/pull/16501)
87+
- Correctly unpickle Scala 2 private case classes in traits [#16519](https://github.com/lampepfl/dotty/pull/16519)
88+
89+
## Polyfunctions
90+
91+
- Fix #9996: Crash with function accepting polymorphic function type with singleton result [#16327](https://github.com/lampepfl/dotty/pull/16327)
92+
93+
## Quotes
94+
95+
- Remove contents of inline methods [#16345](https://github.com/lampepfl/dotty/pull/16345)
96+
- Fix errors in explicit type annotations in inline match cases [#16257](https://github.com/lampepfl/dotty/pull/16257)
97+
- Handle macro annotation suspends and crashes [#16509](https://github.com/lampepfl/dotty/pull/16509)
98+
- Fix macro annotations `spliceOwner` [#16513](https://github.com/lampepfl/dotty/pull/16513)
99+
100+
## REPL
101+
102+
- REPL: Fix crash when printing instances of value classes [#16393](https://github.com/lampepfl/dotty/pull/16393)
103+
- Attempt to fix completion crash [#16267](https://github.com/lampepfl/dotty/pull/16267)
104+
- Fix REPL shadowing bug [#16389](https://github.com/lampepfl/dotty/pull/16389)
105+
- Open up for extensibility [#16276](https://github.com/lampepfl/dotty/pull/16276)
106+
- Don't crash if completions throw [#16687](https://github.com/lampepfl/dotty/pull/16687)
107+
108+
## Reflection
109+
110+
- Fix reflect typeMembers to return all members [#15033](https://github.com/lampepfl/dotty/pull/15033)
111+
- Deprecate reflect Flags.Static [#16568](https://github.com/lampepfl/dotty/pull/16568)
112+
113+
## Reporting
114+
115+
- Suppress follow-on errors for erroneous import qualifiers [#16658](https://github.com/lampepfl/dotty/pull/16658)
116+
- Fix order in which errors are reported for assignment to val [#16660](https://github.com/lampepfl/dotty/pull/16660)
117+
- Fix class name in error message [#16635](https://github.com/lampepfl/dotty/pull/16635)
118+
- Make refined type printing more source compatible [#16303](https://github.com/lampepfl/dotty/pull/16303)
119+
- Add error hint on local inline def used in quotes [#16572](https://github.com/lampepfl/dotty/pull/16572)
120+
- Fix Text wrapping [#16277](https://github.com/lampepfl/dotty/pull/16277)
121+
- Fix -Wunused:import registering constructor `<init>` instead of its owner (also fix false positive for enum) [#16661](https://github.com/lampepfl/dotty/pull/16661)
122+
- Fix #16675 : -Wunused false positive on case class generated method, due to flags used to distinguish case accessors. [#16683](https://github.com/lampepfl/dotty/pull/16683)
123+
- Fix #16680 by registering Ident not containing a symbol [#16689](https://github.com/lampepfl/dotty/pull/16689)
124+
- Fix #16682: CheckUnused missed some used symbols [#16690](https://github.com/lampepfl/dotty/pull/16690)
125+
- Fix the non-miniphase tree traverser [#16684](https://github.com/lampepfl/dotty/pull/16684)
126+
127+
## Scala-JS
128+
129+
- Fix #14289: Accept Ident refs to `js.native` in native member rhs. [#16185](https://github.com/lampepfl/dotty/pull/16185)
130+
131+
## Standard Library
132+
133+
- Add `CanEqual` instance for `Map` [#15886](https://github.com/lampepfl/dotty/pull/15886)
134+
- Refine `Tuple.Append` return type [#16140](https://github.com/lampepfl/dotty/pull/16140)
135+
136+
## TASTy format
137+
138+
- Make it a fatal error if erasure cannot resolve a type [#16373](https://github.com/lampepfl/dotty/pull/16373)
139+
140+
## Tooling
141+
142+
- Add -Yimports compiler flag [#16218](https://github.com/lampepfl/dotty/pull/16218)
143+
- Allow BooleanSettings to be set with a colon [#16425](https://github.com/lampepfl/dotty/pull/16425)
144+
145+
## Transform
146+
147+
- Avoid stackoverflow in ExplicitOuter [#16381](https://github.com/lampepfl/dotty/pull/16381)
148+
- Make lazy vals run on non-fallback graal image - remove dynamic reflection [#16346](https://github.com/lampepfl/dotty/pull/16346)
149+
- Patch to avoid crash in #16351 [#16354](https://github.com/lampepfl/dotty/pull/16354)
150+
- Don't treat package object's `<init>` methods as package members [#16667](https://github.com/lampepfl/dotty/pull/16667)
151+
- Space: Refine isSubspace property & an example [#16574](https://github.com/lampepfl/dotty/pull/16574)
152+
153+
## Typer
154+
155+
- Drop requirement that self types are closed [#16648](https://github.com/lampepfl/dotty/pull/16648)
156+
- Disallow constructor params from appearing in parent types for soundness [#16664](https://github.com/lampepfl/dotty/pull/16664)
157+
- Don't search implicit arguments in singleton type prefix [#16490](https://github.com/lampepfl/dotty/pull/16490)
158+
- Don't rely on isProvisional to determine whether atoms computed [#16489](https://github.com/lampepfl/dotty/pull/16489)
159+
- Support signature polymorphic methods (`MethodHandle` and `VarHandle`) [#16225](https://github.com/lampepfl/dotty/pull/16225)
160+
- Prefer parameterless alternatives during ambiguous overload resolution [#16315](https://github.com/lampepfl/dotty/pull/16315)
161+
- Fix calculation to drop transparent classes [#16344](https://github.com/lampepfl/dotty/pull/16344)
162+
- Test case for issue 16311 [#16317](https://github.com/lampepfl/dotty/pull/16317)
163+
- Skip caching provisional OrType atoms [#16295](https://github.com/lampepfl/dotty/pull/16295)
164+
- Avoid cyclic references due to experimental check when inlining [#16195](https://github.com/lampepfl/dotty/pull/16195)
165+
- Track type variable dependencies to guide instantiation decisions [#16042](https://github.com/lampepfl/dotty/pull/16042)
166+
- Two fixes to constraint solving [#16353](https://github.com/lampepfl/dotty/pull/16353)
167+
- Fix regression in cyclic constraint handling [#16514](https://github.com/lampepfl/dotty/pull/16514)
168+
- Sharpen range approximation for applied types with capture set ranges [#16261](https://github.com/lampepfl/dotty/pull/16261)
169+
- Cut the Gordian Knot: Don't widen unions to transparent [#15642](https://github.com/lampepfl/dotty/pull/15642)
170+
- Fix widening logic to keep instantiation within bounds [#16417](https://github.com/lampepfl/dotty/pull/16417)
171+
- Skip ambiguous reference error when symbols are aliases [#16401](https://github.com/lampepfl/dotty/pull/16401)
172+
- Avoid incorrect simplifications when updating bounds in the constraint [#16410](https://github.com/lampepfl/dotty/pull/16410)
173+
- Take `@targetName` into account when resolving extension methods [#16487](https://github.com/lampepfl/dotty/pull/16487)
174+
- Improve ClassTag handling to avoid invalid ClassTag generation and inference failure [#16492](https://github.com/lampepfl/dotty/pull/16492)
175+
- Fix extracting the elemType of a union of arrays [#16569](https://github.com/lampepfl/dotty/pull/16569)
176+
- Make sure annotations are typed in expression contexts [#16699](https://github.com/lampepfl/dotty/pull/16699)
177+
- Throw a type error when using hk-types in unions or intersections [#16712](https://github.com/lampepfl/dotty/pull/16712)
178+
179+
# Contributors
180+
181+
Thank you to all the contributors who made this release possible 🎉
182+
183+
According to `git shortlog -sn --no-merges 3.2.2..3.3.0-RC1` these are:
184+
185+
```
186+
225 Martin Odersky
187+
73 Dale Wijnand
188+
58 Szymon Rodziewicz
189+
54 Nicolas Stucki
190+
48 Kamil Szewczyk
191+
48 Paul Coral
192+
30 Paweł Marks
193+
28 Florian3k
194+
28 Yichen Xu
195+
14 Guillaume Martres
196+
8 Fengyun Liu
197+
8 Michał Pałka
198+
7 Chris Birchall
199+
7 rochala
200+
6 Kacper Korban
201+
6 Sébastien Doeraene
202+
6 jdudrak
203+
5 Seth Tisue
204+
5 Som Snytt
205+
5 nizhikov
206+
4 Filip Zybała
207+
4 Jan Chyb
208+
4 Michael Pollmeier
209+
4 Natsu Kagami
210+
3 Jamie Thompson
211+
2 Alex
212+
2 Anatolii Kmetiuk
213+
2 Dmitrii Naumenko
214+
2 Lukas Rytz
215+
2 adampauls
216+
2 yoshinorin
217+
1 Alexander Slesarenko
218+
1 Chris Kipp
219+
1 Guillaume Raffin
220+
1 Jakub Kozłowski
221+
1 Jan-Pieter van den Heuvel
222+
1 Julien Richard-Foy
223+
1 Kenji Yoshida
224+
1 Philippus
225+
1 Szymon R
226+
1 Tim Spence
227+
1 s.bazarsadaev
228+
229+
```

0 commit comments

Comments
 (0)