3.7.1
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
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
- Mention extension in unused param warning #23132
- Remove premature caching of lookups for unused lint #22982
- Enclosing package p.q not visible as q #23069
Inline
- Revert recent changes to opaque type proxy generation #23059
Initialization
- Check for tasty error in template trees. #22867
Metaprogramming: Compile-time
- Fix issue with certain synthetics missing in compiletime.typechecks #22978
Named Tuples
- Call dealias after stripping type variables for tupleElementTypesUpTo #23005
- Avoid loosing denotations of named types during integrate#22839
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 usingin applications with trailing lambda syntax #22937
- Test chars safely when highlighting #22918
Reporting
- Print infix operations in infix form #22854
Runner
- Bump Scala CLI to v1.8.0 (was v1.7.1) #23168
Scaladoc
- Chore: add support for 'abstract override' modifier #22802
- Scaladoc: fix generation of unique header ids #22779
Settings
- Filter allowed source versions by import and by settings #23215
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 productPrefixhash 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 these are:
   135  Martin Odersky
    31  Som Snytt
    14  Wojciech Mazur
    13  Hamza Remmal
    13  Matt Bovel
     6  Jan Chyb
     5  Quentin Bernet
     5  Tomasz Godzik
     4  aherlihy
     3  HarrisL2
     3  Natsu Kagami
     3  Ondrej Lhotak
     3  Piotr Chabelski
     3  Sébastien Doeraene
     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