3.7.1-RC1
Pre-release
Pre-release
Highlights of the release
- Support for JDK 25 #23004
- Warn if interpolator uses toString #20578
- Warn if match in block is not used for PartialFunction #23002
Other changes and fixes
Annotations
Erasure
- Disallow context function types as value-class parameters #23015
Experimental: Capture Checking
- Two fixes to handling of abstract types with cap bounds #22838
- Drop idempotent type maps #22910
- Fix setup of class constructors #22980
Named Tuples
- Call dealias after stripping type variables for tupleElementTypesUpTo #23005
- Avoid loosing denotations of named types during
integrate
#22839
Experimental: Unroll
Experimental: Referencable Package Objects
- Add experimental.packageObjectValues language setting #23001
Exports
- Respect export alias for default arg forwarder #21109
Extension Methods
- Extension check checks for no parens not empty parens #22825
GADTs
- Fix: Prevent GADT reasoning in pattern alternatives #22853
Linting
- Dealias when looking into imports #22889
- Process Export for unused check #22984
- Drill into QuotePattern bindings symbol info #22987
- No warn implicit param of overriding method #22901
- No warn for evidence params of marker traits such as NotGiven #22985
Initialization
- Check for tasty error in template trees. #22867
Metaprogramming: Compile-time
- Fix issue with certain synthetics missing in compiletime.typechecks #22978
Pattern Matching
- Fix existing GADT constraints with introduced pattern-bound symbols #22928
Pickling
- Fix fromProduct synthesized code for parameter-dependent case classes #22961
Presentation Compiler
- Completions for requests just before string #22894
- Fix: go to def should lead to all: apply, object and class #22771
- Ignore ending
$
when looking at end marker names #22798 - Feature: Skip auto importing symbols we know are wrong in current context #22813
- Show the Autofill completion case as what would be auto-filled #22819
- Bugfix: Fix issues with annotations not detected #22878
- Improvement: Rework IndexedContext to reuse the previously calculated scopes #22898
- Pc: Properly adjust indentation when inlining blocks #22915
- Improvement: Support using directives in worksheets #22957
- Fix: show hover for synthetics if explicitly used #22973
- Pc: fix: inline value when def indentation equals 2 #22990
Rewrites
- Fix insertion of
using
in applications with trailing lambda syntax #22937 - Test chars safely when highlighting #22918
Reporting
- Print infix operations in infix form #22854
Scaladoc
- Chore: add support for 'abstract override' modifier #22802
- Scaladoc: fix generation of unique header ids #22779
Typer
- Disallow context bounds in type lambdas #22659
- Refuse trailing type parameters in extractors #22699
- Fix #22724: Revert the PolyType case in #21744 #22820
- Fix isGenericArrayElement for higher-kinded types #22938
- Tighten condition to preserve denotation in IntegrateMap #23060
Transform
- Mix in the
productPrefix
hash statically in case classhashCode
#22865
Value Classes
Contributors
Thank you to all the contributors who made this release possible 🎉
According to git shortlog -sn --no-merges 3.7.0..3.7.1-RC1
these are:
135 Martin Odersky
27 Som Snytt
13 Matt Bovel
10 Wojciech Mazur
9 Hamza Remmal
5 Quentin Bernet
5 Tomasz Godzik
4 aherlihy
3 HarrisL2
3 Jan Chyb
3 Natsu Kagami
3 Ondrej Lhotak
3 Sébastien Doeraene
2 Piotr Chabelski
2 Yichen Xu
2 Yoonjae Jeon
2 kasiaMarek
1 Aleksey Troitskiy
1 Daisy Li
1 Dale Wijnand
1 Jan-Pieter van den Heuvel
1 Jędrzej Rochala
1 Kacper Korban
1 Katarzyna Marek
1 Lukas Rytz
1 Mikołaj Fornal
1 Nikita Glushchenko
1 Oliver Bračevac
1 Ondřej Lhoták
1 dependabot[bot]
1 noti0na1
1 philippus