3.4.1-RC1
Pre-release
Pre-release
Highlights of the release
- Add support for
@deprecatedInheritance
#19082
Other changes and fixes
Coverage
- Correctly prettify names in coverage info #18542
Desugaring
Documentation
- Update
private[this]
deprecation warning and documentation #19393
Erasure
- Make eraseInfo work for classes with EmptyScopes #19550
Exports
GADTs
- Only cache base types when gadt state is empty #19562
Implicits
- Run CheckStatic after UncacheGivenAliases #19318
- Add tests to verify that crash is fixed elsewhere. Fixes #19328 #19329
- Don't search for implicit conversions to NoType #19563
- Instantiate argument type vars before implicit search #19096
Java Interop
- Classfile reader: handle JDK 9+ constant types in constant pool #19533
Linting
- Make fatal warnings not fail compilation early & aggregate warns #19245
Macro Annotations
- Check and enter missing symbols in MacroAnnotations only for definitions #19579
Match Types
- Normalize MatchAlias in unrollTupleTypes #19565
- Fix #19445: Remove too-strict test in match type matching. #19511
Opaque Types
- Fix problems with cycle checks #19453
Parser
- Fix(#18265): crash on extension method without type nor RHS #18743
- Warn when @volatile is used on vals #19462
- Fix(#16459) xml parse regression #19531
Pattern Matching
- Fix false unreachable due to opaqueness #19368
- Improve recursive decompose prefix fix #19375
- Allow constraining a parameter to Nothing #19397
- Add a test case, proving i15661 is fixed #19432
Presentation Compiler
- Improvement: Support completions for implicit classes #19314
- Chore: Backport changes from Metals #19410
- Fix goto-def on exported forwarders #19494
- Backport pc changes from metals #19617
- Chore: Backport changes from Metals #19592
- Use comma counting for all signature help types #19520
- Make PC more resilient to crashes #19488
- Make order of renames and missing imports deterministic #19468
- Chore: backport changes from metals #19452
- Improve signature help by more stable position calculation + better named arg support #19214
- Instantiate Type Vars in completion labels of extension methods #18914
Quotes
- Only evaluate transparent inline unapply once #19380
- Update
staging.Compiler.make
documentation #19428 - Error instead of StaleSymbol crash for certain cyclic macro dependencies #19549
- Refine handling of StaleSymbol type errors #19605
- Fix module symbol recovery from
NoClassDefFoundError
#19645 - Fix HOAS pattern example and error message #19655
- Set the correct type when copying reflect Inlined trees #19409
Reporting
- Don't explain erroneous bounds #19338
- Better error diagnostics for cyclic references #19408
- Properly identify empty bounds in error message #19310
Scala-JS
- Fix #19528: Actually remove Dynamic from interfaces of native JS classes. #19536
- Consider static and non-static methods as non-double def #19400
Scaladoc
- Scaladoc - add option for dynamic side menu #19337
- Scaladoc: Fix "case case Foo" in enum's cases #19519
- Fix(#19377): show inherited abstract members in dedicated section #19552
- Jsoup: 1.14.3 → 1.17.2 #19564
- Extend copyright into 2024 #19367
Tooling
- Prioritize TASTy files over classfiles on classpath aggregation #19431
Transform
- Fix purity check for val inside of object #19598
- Drop special treatment of function types in overloading resolution #19654
- Add checks for the consistency of the parents in TreeChecker #18935
Type Inference
- More careful type variable instance improvements #19659
Typer
- Reject wildcard types in using clauses #19459
- Don't leave underspecified SAM types in the code #19461
- Also compute base classes of wildcardTypes #19465
- Fix(#15784): ident rule for pat match was too strict #19501
- Heal occurrences of => T between ElimByName and Erasure #19558
- Fix(#i18645): overload ext method body in braces didn't compile #19651
- Fix #19202: Passing NotNullInfos to a mutable field of a Completer #19463
- Fix Java record problems (#19578) and (#19386) #19583
- Improve when deprecation warnings are emitted #19621
- Space: Replace showType & make Space Showable #19370
Contributors
Thank you to all the contributors who made this release possible 🎉
According to git shortlog -sn --no-merges 3.4.0..3.4.1-RC1
these are:
53 Martin Odersky
53 Nicolas Stucki
20 Dale Wijnand
11 Szymon Rodziewicz
11 i10416
7 noti0na1
6 Yilin Wei
4 Hamza REMMAL
4 Jędrzej Rochala
3 Eugene Flesselle
3 Paweł Marks
3 Seth Tisue
2 Florian3k
2 Hamza Remmal
2 Jan Chyb
2 Katarzyna Marek
2 Sébastien Doeraene
2 Tomasz Godzik
2 dependabot[bot]
1 Bersier
1 Fabián Heredia Montiel
1 Jakub Ciesluk
1 Jakub Cieśluk
1 Kacper Korban
1 Kenji Yoshida
1 Mehdi Alaoui
1 Nikita Gazarov
1 Oron Port
1 Pascal Weisenburger
1 Philippus Baalman
1 Quentin Bernet
1 Som Snytt
1 Wojciech Mazur
1 Yichen Xu
1 aherlihy
1 rochala