Releases: scala/scala3
3.7.4-RC3
Backported changes
- Lint avoids revisiting Inlined.call #24277
 - Register no elements for lint after inlining #24279
 - Use enclosing enclosingInlineds for empty call #24281
 - Exclude synthetic opaque proxy from lint #24264
 - Deprecate 
scala_legacy/MainGenericRunner/scalac -run/scalac -replfor removal #24267 
Contributors
Thank you to all the contributors who made this release possible 🎉
According to git shortlog -sn --no-merges 3.7.4-RC2..3.7.4-RC4 these are:
  4  Wojciech Mazur
  2  Piotr Chabelski
  2  Som Snytt
3.7.4-RC2
Backported changes
- Always traverse Inlined.call in linter #24043
 - Deduplicate patches before applying them to sources #24215
 - Fix compiler crash with 
-Ymagic-offset-header#24124 - Fix completions for named tuples #24169
 - Fix java record varargs field accessor #24172
 - Fix parameter untupling for named tuples (#23440) #24152
 - Fix possible SuspendException thrown when using macros #24174
 - Fix rendering of function-type aliases #24042
 - Ignore warnings when compiletime.testing is imported #24036
 
Contributors
Thank you to all the contributors who made this release possible 🎉
According to git shortlog -sn --no-merges 3.7.4-RC1..3.7.4-RC2 these are:
  5  Wojciech Mazur
  2  Li Haoyi
  2  Som Snytt
  2  Tomasz Godzik
  1  Florian3k
  1  Kacper Korban
  1  Oliver Bračevac
  1  aherlihy
3.3.7
Highlights of the release
- Warn a standard interpolator used toString on a reference type with 
-Wtostring-interpolated#20578 - Unblock Scala 3 on Android #22632
 - Implement :jar (deprecate :require) in REPL #22343
 - Linting rework: In selector check, prefix of reference must match import qualifier #20894
 - Add REPL flag to quit after evaluating init script #22636
 - Warn if implicit default shadows given with 
-Wrecurse-with-default#23559 
Other changes and fixes
Annotations
Coverage
- Make coverage more similar to the one in Scala 2 #23722
 
CI
- Disable Cats flaky tests #23007
 - Switch releasing to Sontype Central instead of legacy Sonatype OSS #23290
 - Revert dubious retry in vulpix #21801
 
Developer Experience
- Add support for running the 
testsub-command with the bisect script #22796 
Documentation
Enums
- Make hashcode of enum items stable #23218
 
Erasure
- Add regression test for #23616 #23623
 - Disallow context function types as value-class parameters to avoid crashes #23015
 - Handle type aliases in contextFunctionResultTypeAfter #21517
 - Align erasure of 
Array[Nothing]andArray[Null]with Scala 2 #22517 
Experimental: Erased definitions
- Erased fields are not nullable #23311
 
Implicits
- Refine implicit search fallbacks for better ClassTag handling #23532
 - Try extensions for arguments with type mismatch error #23212
 
Inline
- Fix Symbol.info remapping in TreeTypeMap #23432
 
Lambda Lift
- Fix: treat static vals as enclosures in lambdalift #22452
 - Fix: record calls to constructors in lambdaLift #22487
 
Linting
- Check OrType in interpolated toString lint #23365
 - Consider setter of effectively private var #23211
 - Nowarn receiver of extension taking params #23351
 - Dealias when looking into imports #22889
 - Revert unconditional lint of Inlined expansion #22815
 - Warn unused member of anonymous class #22729
 - No warning for parameter of overriding method #22757
 - Lazy val def member is pattern var #22750
 - Ignore params to default arg getters #22749
 - Restore resolving prefixes of implicit Ident #22751
 - Exclude synthetic this.m, Any.m from import lookup #22695
 - Nowarn public implicit val class params #22664
 - Don't warn retainedBody #22510
 - Suppress spurious Suppression #22383
 - Handle Typeable #22663
 - CheckUnused checks span.exists before testing its parts #22504
 - Process Export for unused check #22984
 - Enclosing package p.q not visible as q #23069
 - Remove premature caching of lookups for unused lint #22982
 - Improve checking LHS of Assign #22977
 - Improve Unit ascription escape hatch #23147
 - Mention extension in unused param warning #23132
 - Dealias for unused param check #23256
 - Take inferred or explicit refinement result for unused check #23325
 - Add accessible check for import usage #23348
 - Use result of lambda type of implicit in CheckUnused #23497
 
Match Types
- Handle NoType in TypeComparer.disjointnessBoundary #21520
 - Distinguish 0.0 and -0.0 in ConstantType match types #23265
 
Metaprogramming
- Add a check for correct Array shape in quotes.reflect.ClassOfConstant #22033
 
Opaque Types
- Fix stack overflow errors when generating opaque type proxies #22479
 
Optional Braces
- Correctly detect colon lambda eol indent for optional brace of argument #22477
 
Overloading
- Fail compilation if multiple conflicting top-level private defs/vals are in the same package #22759
 
Parser
- Allow observing an indent after conditional #22611
 - No outdent at eof #22435
 - Fix annotations not expected in the middle of an array type by java parser #22391
 - Fix incorrect warning with -no-indent #23216
 
Pattern Matching
- Fix issue in lazy symbol completion or bug in nested classfile parser #23634
 - Fix existing GADT constraints with introduced pattern-bound symbols #22928
 - Avoid crash in uninhab check in Space #22601
 
Pickling
- Try to handle SkolemTypes in SingletonTypeTree during pickling #23236
 
Presentation Compiler
- Compare span points in pathTo to determine best span #23581
 - Fix: Fix extracting refinements from intersection types in dynamic select hovers #23640
 - Completions for requests just before string #22894
 - Add enum type param support in sourceSymbol #18603
 - Use untpd.Tree instead of tpd.Tree for SelectionRangeProvider #22702
 - Fix: handle multiple params lists in for infer type #23197
 - Fix completion mode filtering + optimize scopeCompletions #23172
 - Add selection ranges for more names #23257
 - Add inlay hints for by-name parameters #23283
 - Add jpath to VirtualFile (for pc) #23203
 - Add X-Ray Inlay Hints #23891
 - Add using to completions when applicable #23647
 - Do not add [] after 
derives#23811 
Quotes
- Fix issue with static 
thisreferences erroring in quoted code #22618 - Skip splice level checking for symbols #22782
 - Fix stale top level synthetic package object being used in later runs #23464
 
REPL
Reflection
- Fix regression: do not approximate prefixes when using memberType in reflect API #22448
 - Forbid 
StringConstant(null)#23064 - Quotes reflect: sort the typeMembers output list and filter out non-members #22876
 
Reporting
3.7.4-RC1
Highlights of the release
- Bump Scala CLI to v1.9.1 (was v1.9.0) #23962
 - Make coverage more similar to the one in Scala 2 #23722
 
Other changes and fixes
Context Functions
- Explain no expansion of ContextFunction0 #23844
 
Experimental: Capture Checking
- Fix #23737: Update superCallContext to include dummy capture parameters in scope #23740
 - Fix separation checking for function results #23927
 - Simple enhancement for pattern matching with capturing types #23524
 - Don't check bounds in match type cases at CC #23738
 
Experimental: Explicit Nulls
- Add warnings for inferred flexible types in public methods and fields #23880
 
Exports
- Refine isEffectivelyFinal to avoid no-owner crash #23675
 
Implicits
- Fix LiftToAnchors for higher-kinded type applications #23672
 - Fix implicit scope liftToAnchors for parameter lower bounds #23679
 
Linting
- Invent given pattern name in for comprehension #23121
 - Unused var message mentions unread or unset #23719
 - Lint function arrow intended context function #23847
 
Match Types
- Fix 
derivesFromfalse negative inprovablyDisjointClasses#23834 
Parser
- Improve message for nested package missing braces #23816
 - Fix: allow postfix setters under language.postfixOps #23775
 
Pattern Matching
- Fix: do not transform 
IdenttoThisin PostTyper anymore #23899 - Call inhabited for AppliedType recursively #23964
 - Fix false unreachable case warning #23800
 - Add subtype-based fallback in inferPrefixMap and recalculate constraints after application #23771
 
Presentation Compiler
- Additional completions for using clause #23647
 - Completions - do not add 
[]for... derives TC@@#23811 - Improve symbol order in completions provided by the presentation compiler #23888
 - Porting XRayModeHints #23891
 - Go to definition and hover for named args in pattern match #23956
 
Reporting
- Do not discard amended format when f-interpolator warns #23697
 - Mention named givens in double def explainer #23833
 - Compute the right span for abstract error messages #23853
 - Add quick fix to add .nn #23598
 - Add addendum to 
private valparameter variance error message #23876 
Scaladoc
- Indicate optional parameters with 
= ...#23676 - Scaladoc Support for Capture & Separation Checking #23607
 - Capture Calcuclus: don't eagerly drop caps on parameters #23759
 
SemanticDB
Tuples
- Fix: make vals created in desugaring of n-ary lambdas non-synthetic #23896
 
Typer
- Prevent crash in SAM conversion with mismatched arity #23877
 - Handle assertion error in TyperState #23665
 - Correctly require a 
ClassTagwhen building a multidimensionalArray#23902 - Make isExactlyNothing and isExactlyAny work for And/OrTypes #24016
 
Contributors
Thank you to all the contributors who made this release possible 🎉
According to git shortlog -sn --no-merges 3.7.3..3.7.4-RC1 these are:
    12  Som Snytt
    11  noti0na1
    11  Wojciech Mazur
     6  Martin Odersky
     5  Eugene Flesselle
     4  Hamza Remmal
     4  Natsu Kagami
     4  Seyon Sivatharan
     3  Oliver Bračevac
     3  Yoonjae Jeon
     3  dependabot[bot]
     2  Jan Chyb
     2  Katarzyna Marek
     2  Matt Bovel
     1  HarrisL2
     1  Kacper Korban
     1  Martin Duhem
     1  Paweł Perłakowski
     1  Piotr Chabelski
     1  Tomasz Godzik
     1  Vadim Chelyshov
     1  Yichen Xu
     1  Zieliński Patryk
     1  aherlihy
     1  katrinafyi
     1  vder
     1  zielinsky
3.3.7-RC2
Backported fixes
- Backport: Make coverage more similar to the one in Scala 2 #23955
 - Backport: latest Scala Presentation Improvements to 3.3.7 #23945. This includes X-Ray Inlay Hints, using completions, do not add [] after 
derives. - Revert: "Check exhaustivity of any case class" to 3.3 LTS #23943
 
Contributors
Thank you to all the contributors who made this release possible 🎉
According to git shortlog -sn --no-merges 3.3.7-RC1..3.3.7-RC2 these are:
     2  Tomasz Godzik
     1  Jan Chyb
     1  Vadim Chelyshov
     1  Zieliński Patryk
     1  vder
3.7.3
Release highlights
- Warn if implicit default shadows given #23559
 - Standardize on 
-Vprint:...(still support-Xprint:...as alias) #22828 
Other changes and fixes
Desugaring
- Optimize simple tuple extraction #23373
 
Enums
- Make hashcode of enum items stable #23218
 
Erasure
- Replace erased class modifiers with Erased base traits #23447
 - Bring back part of PruneErasedDefs #23466
 
Experimental: Capture Checking
- Fix parsing crash for update in later phases #23390
 - Implement boxing for singleton type arguments #23418
 - Expand Capability types also in arguments of Capability classes #23427
 - Adjustments to the capability trilogy #23428
 - Set context owner to the method for 
paramsToCap#23436 - Flatten nested capture sets in retainedElementsRaw #23571
 - Fix well-formed test for capabilities #23393
 - Add restricted capabilities 
x.only[C]#23485 - Rely on hidden sets for use checking #23580
 
Experimental: Separation Checking
- Make separation checking controlled by language import #23560
 
Experimental: Erased Definitions
- Refactorings and fixes to erased definition handling #23404
 
Experimental: Explicit Nulls
- Add quick fix to remove unnecessary .nn #23461
 - Add 
stableNullannotation to force tracking mutable fields #23528 
Experimental: Global Initialization
- Rewrite resolveThis in global init checker #23282
 - Fix errors in the global initialization checker when compiling bootstrapped dotty #23429
 - Fix error in product-sequence match in global init checker #23480
 
Experimental: Into
- Fix isConversionTargetType test #23401
 
Experimental: Modularity
- Refinements to skolemizaton #23513
 
Experimental: Unroll
- Enable UnrollDefinitions phase in REPL frontend phases #23433
 
Extension Methods
- Avoid forcing extension on check of local select #23439
 
Implicits
- Refine implicit search fallbacks for better ClassTag handling #23532
 
Inline
- Fix Symbol.info remapping in TreeTypeMap #23432
 - Fail not inlined inline method calls early #22925
 - Fix inline export forwarder generation regression #23126
 
Linting
- Consider setter of effectively private var #23211
 - Add accessible check for import usage #23348
 - Check OrType in interpolated toString lint #23365
 - Use result of lambda type of implicit in CheckUnused #23497
 - Add suppression if nowarn differs #23652
 
Match Types
Named Tuples
- Skip bypassing unapply for scala 2 case classes to allow for single-element named tuple in unapply #23603
 
Parser
- Enforce 
-new-syntaxunder-language:future#23443 - Disallow Scala 2 implicits under 
-source:future#23472 
Pattern Matching
- Fix problems in checking that a constructor is uninhabited for exhaustive match checking #23403
 
Pickling
- Don't force annotation unpickling when testing for SilentIntoAnnot #23506
 - Drop invalid assumption from TastyUnpickler #23353
 
Printer
- Print update modifier when printing update method definitions #23392
 
Positions
- Compare span points in pathTo to determine best span #23581
 - Add line number magic comment support #23549
 
Presentation Compiler
- Port Inlay hints for name parameters #23375
 - Fix: Simplify infer type for apply #23434
 - Fix: Inconsistent annotation tooltips #23454
 - Fix adjust type when already exists #23455
 - Exclude named parameters inlay hints for java defined #23462
 - Fix: StringIndexOutOfBoundsException in presentation compiler's hasColon method #23498
 - Add InferredMethodProvider for automatic method signature generation #23563
 - Fix completions for Quotes #23619
 - Handle default arguments in named parameters for inlay hints #23641
 - Fix issue with pc breaking in requiredMethod on newly overloaded valueOf #23708
 - Handle default arguments in named parameters for inlay hints #23641
 - Fix extracting refinements from intersection types in dynamic select hovers #23640
 
Quotes
- Skip splice level checking for 
<refinement>symbols #22782 - Fix stale top level synthetic package object being used in later runs #23464
 - Emit an error for quoted pattern type variable after 
new#23618 - Fix issue with certain polyfunctions not properly matching in macros #23614
 - Check PCP of constructor calls on the type #7531
 
Reflection
- Quotes reflect: sort the typeMembers output list and filter out non-members #22876
 
Reporting
- Add an explainer to the DoubleDefinition error #23470
 - Suppress warnings in comprehensions with 22+ binds #23590
 - Unhelpful error message when trying to use named extraction, when not matching case class or named tuple #23354
 - Improve error message for conflicting definitions #23453
 -Yprofile-traceproperly report macro splicing source #23488-Yprofile-traceprofiles all inline calls #23490
Rewrites
Runner
- Bump Scala CLI to v1.9.0 (was v1.8.4) #23702
 
Scaladoc
- Scaladoc: fixes and improvements to context bounds and extension methods #22156
 - Encode path of class #23503
 
SemanticDB
- Bugfix: Also save infos in semanticdb #23587
 
Transform
- Handle multiple type parameter lists in value class methods #23516
 - Check path of module prefix for tailrec #23491
 
Tuples
- Normalize tuple types in var args seq literals and classOf instances #23465
 
Typer
- Fix #22922: Add TypeParamRef handling in isSingletonBounded #23501
 - Fix this references everywhere in dependent function types #23514
 - Don't approximate a type using 
Nothingas prefix #23531 - Support cleanup actions in class completers #23515
 - Fix regressions in asSeenFrom introduced in 3.7 #23438
 - Use correct owner in eta expansion #7564
 - Fix irrefutability checking in 
forwith untupling #23273 - Fix missing members reporting for var setter...
 
3.7.3-RC3
3.3.7-RC1
Highlights of the release
- Warn if interpolator uses toString #20578
 - Fixes #15736 blocking Scala 3 on Android #22632
 - Implement :jar (deprecate :require) #22343
 - In selector check, prefix of reference must match import qualifier #20894
 - Fix #21242: Add REPL flag to quit after evaluating init script #22636
 - Warn if implicit default shadows given #23559
 
Other changes and fixes
Annotations
CI
- Disable Cats flaky tests #23007
 
Developer Experience
- Add support for running the 
testsub-command with the bisect script #22796 
Documentation
Enums
- Make hashcode of enum items stable #23218
 
Erasure
- Add regression test for #23616 #23623
 - Disallow context function types as value-class parameters #23015
 - Handle type aliases in contextFunctionResultTypeAfter #21517
 - Align erasure of 
Array[Nothing]andArray[Null]with Scala 2 #22517 
Experimental: Erased definitions
- Erased fields are not nullable #23311
 
Implicits
- Refine implicit search fallbacks for better ClassTag handling #23532
 - Fix #20335: Try extensions for arguments with type mismatch error #23212
 
Inline
- Fix Symbol.info remapping in TreeTypeMap #23432
 
Lambda Lift
- Fix: treat static vals as enclosures in lambdalift #22452
 - Fix: record calls to constructors in lambdaLift #22487
 
Linting
- Check OrType in interpolated toString lint #23365
 - Consider setter of effectively private var #23211
 - Nowarn receiver of extension taking params #23351
 - Dealias when looking into imports #22889
 - Revert unconditional lint of Inlined expansion #22815
 - Warn unused member of anonymous class #22729
 - No warning for parameter of overriding method #22757
 - Lazy val def member is pattern var #22750
 - Ignore params to default arg getters #22749
 - Restore resolving prefixes of implicit Ident #22751
 - Exclude synthetic this.m, Any.m from import lookup #22695
 - Nowarn public implicit val class params #22664
 - Don't warn retainedBody #22510
 - Suppress spurious Suppression #22383
 - Handle Typeable #22663
 - CheckUnused checks span.exists before testing its parts #22504
 - Process Export for unused check #22984
 - Enclosing package p.q not visible as q #23069
 - Remove premature caching of lookups for unused lint #22982
 - Improve checking LHS of Assign #22977
 - Improve Unit ascription escape hatch #23147
 - Mention extension in unused param warning #23132
 - Dealias for unused param check #23256
 - Take inferred or explicit refinement result for unused check #23325
 - Add accessible check for import usage #23348
 - Use result of lambda type of implicit in CheckUnused #23497
 
Match Types
- Handle NoType in TypeComparer.disjointnessBoundary #21520
 - Fix: #23261 Distinguish 0.0 and -0.0 in ConstantType match types #23265
 
Metaprogramming
- Add a check for correct Array shape in quotes.reflect.ClassOfConstant #22033
 
Opaque Types
- Fix stack overflow errors when generating opaque type proxies #22479
 
Optional Braces
- Correctly detect colon lambda eol indent for optional brace of argument #22477
 
Overloading
- Fail compilation if multiple conflicting top-level private defs/vals are in the same package #22759
 
Parser
- Allow observing an indent after conditional #22611
 - No outdent at eof #22435
 - Fix annotations being not expected in the middle of an array type by java parser #22391
 - Fix incorrect warning with -no-indent #23216
 
Pattern Matching
- Fix issue in lazy symbol completion or bug in nested classfile parser #23634
 - Fix existing GADT constraints with introduced pattern-bound symbols #22928
 - Avoid crash in uninhab check in Space #22601
 
Pickling
- Try to handle SkolemTypes in SingletonTypeTree during pickling #23236
 
Positions
- Compare span points in pathTo to determine best span #23581
 
Presentation Compiler
- Fix: Fix extracting refinements from intersection types in dynamic select hovers #23640
 - Completions for requests just before string #22894
 - Add enum type param support in sourceSymbol #18603
 - Use untpd.Tree instead of tpd.Tree for SelectionRangeProvider #22702
 - Fix: handle multiple params lists in for infer type #23197
 - Fix completion mode filtering + optimize scopeCompletions #23172
 - Add selection ranges for more names #23257
 - Add inlay hints for by-name parameters #23283
 - Add jpath to VirtualFile (for pc) #23203
 
Quotes
- Fix issue with static 
thisreferences erroring in quoted code #22618 - Skip splice level checking for symbols #22782
 - Fix stale top level synthetic package object being used in later runs #23464
 
REPL
Reflection
- Fix regression: do not approximate prefixes when using memberType in reflect API #22448
 - Forbid 
StringConstant(null)#23064 - Quotes reflect: sort the typeMembers output list and filter out non-members #22876
 
Reporting
- Register nowarn when inlining #22682
 - Filter help renders box border #22434
 - Fix incorrect warning on type ascription for backquoted identifiers #23088
 - Add an explainer to the DoubleDefinition error #23470
 
Scaladoc
- Encode path of class #23503
 
Settings
- Chore: filter allowed source versions by import and by settings #23215
 
Testing framework
- Revert dubious retry in vulpix #21801
 
Transform
Tuples
- Normalize tuple types ...
 
3.7.3-RC2
Backported chnages
- Warn if implicit default shadows given #23559
 - Bump Scala CLI to v1.8.5 (was v1.8.4) #23702
 - Fix issue with pc breaking in requiredMethod on newly overloaded valueOf #23708
 - Handle default arguments in named parameters for inlay hints #23641
 - Add suppression if nowarn differs #23652
 - Fix match type bounds checking problem #23695
 - Generalize "Don't approximate a type using Nothing as prefix" #23628
 - More careful ClassTag instantiation #23659
 - Use more context for implicit search only if no default argument #23664
 - Fix extracting refinements from intersection types in dynamic select hovers #23640
 
Contributors
Thank you to all the contributors who made this release possible 🎉
According to git shortlog -sn --no-merges 3.7.3-RC1..3.7.3-RC2 these are:
  5  Martin Odersky
  4  Som Snytt
  2  Wojciech Mazur
  1  Guillaume Martres
  1  Jan Chyb
  1  Kacper Korban
  1  Piotr Chabelski
  1  aherlihy
3.7.3-RC1
Changes and fixes
Desugaring
Enums
- Make hashcode of enum items stable #23218
 
Erasure
- Replace erased class modifiers with Erased base traits #23447
 - Bring back part of PruneErasedDefs #23466
 
Experimental: Capture Checking
- Fix parsing crash for update in later phases #23390
 - Implement boxing for singleton type arguments #23418
 - Expand Capability types also in arguments of Capability classes #23427
 - Adjustments to the capability trilogy #23428
 - Set context owner to the method for 
paramsToCap#23436 - Flatten nested capture sets in retainedElementsRaw #23571
 - Fix well-formed test for capabilities #23393
 - Add restricted capabilities 
x.only[C]#23485 - Rely on hidden sets for use checking #23580
 
Experimental: Seperation Checking
- Make separation checking controlled by language import #23560
 
Experimental: Erased Definitions
- Refactorings and fixes to erased definition handling #23404
 
Experimental: Explicit Nulls
- Add quick fix to remove unnecessary .nn #23461
 - Add 
stableNullannotation to force tracking mutable fields #23528 
Experimental: Global Initialization
- Rewrite resolveThis in global init checker #23282
 - Fix errors in the global initialization checker when compiling bootstrapped dotty #23429
 - Fix error in product-sequence match in global init checker #23480
 
Experimental: Into
- Fix isConversionTargetType test #23401
 
Experimental: Modularity
- Refinements to skolemizaton #23513
 
Experimental: Unroll
- Enable UnrollDefinitions phase in REPL frontend phases #23433
 
Extension Methods
- Avoid forcing extension on check of local select #23439
 
Implicits
- Refine implicit search fallbacks for better ClassTag handling #23532
 
Inline
- Fix Symbol.info remapping in TreeTypeMap #23432
 - Fail not inlined inline method calls early #22925
 - Fix inline export forwarder generation regression #23126
 
Linting
- Consider setter of effectively private var #23211
 - Add accessible check for import usage #23348
 - Check OrType in interpolated toString lint #23365
 - Use result of lambda type of implicit in CheckUnused #23497
 
Match Types
Named Tuples
- Skip bypassing unapply for scala 2 case classes to allow for single-element named tuple in unapply #23603
 
Parser
- Enforce 
-new-syntaxunder-language:future#23443 - Disallow Scala 2 implicits under 
-source:future#23472 
Pattern Matching
- Fix problems in checking that a constructor is uninhabited for exhaustive match checking #23403
 
Pickling
- Don't force annotation unpickling when testing for SilentIntoAnnot #23506
 - Drop invalid assumption from TastyUnpickler #23353
 
Printer
- Print update modifier when printing update method definitions #23392
 
Positions
- Compare span points in pathTo to determine best span #23581
 - Add line number magic comment support #23549
 
Presentation Compiler
- Port Inlay hints for name parameters #23375
 - Fix: Simplify infer type for apply #23434
 - Fix: Inconsistent annotation tooltips #23454
 - Fix adjust type when already exists #23455
 - Exclude named parameters inlay hints for java defined #23462
 - Fix: StringIndexOutOfBoundsException in presentation compiler's hasColon method #23498
 - Add InferredMethodProvider for automatic method signature generation #23563
 - Fix completions for Quotes #23619
 - Handle default arguments in named parameters for inlay hints #23641
 
Quotes
- Skip splice level checking for 
<refinement>symbols #22782 - Fix stale top level synthetic package object being used in later runs #23464
 - Emit an error for quoted pattern type variable after 
new#23618 - Fix issue with certain polyfunctions not properly matching in macros #23614
 - Check PCP of constructor calls on the type #7531
 
Reflection
- Quotes reflect: sort the typeMembers output list and filter out non-members #22876
 
Reporting
- Add an explainer to the DoubleDefinition error #23470
 - Suppress warnings in comprehensions with 22+ binds #23590
 - Unhelpful error message when trying to use named extraction, when not matching case class or named tuple #23354
 - Improve error message for conflicting definitions #23453
 -Yprofile-traceproperly report macro splicing source #23488-Yprofile-traceprofiles all inline calls #23490
Rewrites
Scaladoc
- Scaladoc: fixes and improvements to context bounds and extension methods #22156
 - Encode path of class #23503
 
SemanticDB
- Bugfix: Also save infos in semanticdb #23587
 
Settings
- Standardize on 
-Vprint:...(still support-Xprint:...as alias) #22828 
Transform
- Handle multiple type parameter lists in value class methods #23516
 - Check path of module prefix for tailrec #23491
 
Tuples
- Normalize tuple types in var args seq literals and classOf instances #23465
 
Typer
- Fix #22922: Add TypeParamRef handling in isSingletonBounded #23501
 - Fix this references everywhere in dependent function types #23514
 - Don't approximate a type using 
Nothingas prefix #23531 - Support cleanup actions in class completers #23515
 - Fix regressions in asSeenFrom introduced in 3.7 #23438
 - Use correct owner in eta expansion #7564
 - Fix irrefutability checking in 
forwith untupling #23273 - Fix missing members reporting for var setters #23476
 - Guard against invalid prefixes in argForParam #23508
 - Add missing case to TypeComparer #23550
 
Contributors
Thank you to all the contributors who made this release possible 🎉
According to git shortlog -sn --no-merges 3.7.2..3.7.3-RC1 these are:
    80  Martin Odersky
    56  Hamza Remmal
    22  Wojciech Mazur
    20  noti0na1
    18  Yichen Xu
    16  Som Snytt
    14  Jan Chyb
     9  Matt Bovel
     7  EnzeXing
     6  Guillaume Martres
     5  Sébastien Doeraene
     5  aherlihy
  ...