Skip to content

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented May 13, 2025

This PR contains the following updates:

Package Change Age Confidence
scala 3.6.4 -> 3.7.2 age confidence

Release Notes

scala/scala3 (scala)

v3.7.2

Compare Source

v3.7.1

Compare Source

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

  • Approximate annotated types in wildApprox #​22893
  • Keep unused annot on params #​23037

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 using in 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

Transform

  • Mix in the productPrefix hash statically in case class hashCode #​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

v3.7.0

Compare Source

See release blogpost: https://www.scala-lang.org/news/3.7.0/

Highlights of the release

  • Add @scala.annotation.internal.preview annotation and -preview flag. #​22317
  • Make SIP-52 @publicInBinary a stable feature in 3.7 #​22591
  • Make SIP-58 - Named Tuples a stable feature in 3.7 #​22753
  • Make SIP-62 - Better Fors a preview feature in 3.7 #​22776
  • Implement SIP-61 @unroll annotation as experimental #​21693
  • Upgrade Scala 2 Standard Library to 2.13.16 #​22386
  • Upgrade Scala.js to 1.19.0 #​23026
  • Upgrade Scala CLI to 1.7.1 #​22843
  • Expression Compiler is now part of Scala 3 compiler #​22597
  • Quotes API: Added apply methods to import selectors #​22457
  • Quotes API: Implement experimental summonIgnoring method #​22417
  • Quotes API: Add class parameters, flags, and privateWithin and annotations to experimental newClass methods #​21880
  • Experimental: Capture Calculus - Inferring tracked modifier #​21628
  • Presentation Compiler: Show inferred type on holes in hover #​21423
  • JVM Backend: Fix #​15736 blocking Scala 3 on Android #​22632
  • REPL: add flag to quit after evaluating init script #​22636
  • REPL: implement :jar (deprecate :require) #​22343
  • Linting: Improvements to -Wunused and -Wconf #​20894
  • Implicit parameters warn at call site without using keyword #​22441
  • Support for dependent case classes #​21698
  • Deprecate Yno-kind-polymorphism #​22814

Other changes and fixes

Annotations

  • Lift arguments of explicitly constructed annotations #​22553
  • Fix copy of annotation on @main methods #​22582
  • @publicInBinary has now effect on secondary constructors #​22630
  • Fix mapping of annotations #​22407

Backend: Scala.js

  • Emit js.NewArray IR nodes when possible. #​22446
  • Fix #​22794: Emit the definition of Arrays.newArray even though it's a primitive #​22797

Classpath

  • Fix empty ClassPath attribute in one or more classpath jars causes crash #​22462

Documentation

  • Improve the usage of inclusive language #​22360

Erasure

  • Handle type aliases in contextFunctionResultTypeAfter #​21517
  • Align erasure of Array[Nothing] and Array[Null] with Scala 2 #​22517

Desugering

  • Under betterFors don't drop the trailing map if it would result in a different type (also drop _ => ()) #​22619

Experimental: Capture Checking

  • Canonicalize capture variable subtype comparisons #​22299
  • Permit Capture Refs for Uninitialized Type and Term Params in BiTypeMap #​22451
  • Fix maximal capability handling and expand aliases #​22341

Experimental: Modularity

  • Widen skolem types when adding parent refinements #​22488

Experimental: Global Initialization Checker

  • Refactor the abstract domain of global init checker to compile http4s #​22179
  • Fix global init checking crash when using a value defined in by-name closure #​22625

Experimentals

  • Expand value references to packages to their underlying package objects #​22011

Implicits

Linting

  • Suppress spurious Suppression #​22383
  • CheckUnused checks span.exists before testing its parts #​22504
  • Don't warn retainedBody #​22510
  • Handle Typeable #​22663
  • Nowarn public implicit val class params #​22664
  • Exclude synthetic this.m, Any.m from import lookup #​22695
  • Warn unused member of anonymous class #​22729
  • Ignore params to default arg getters #​22749
  • Lazy val def member is pattern var #​22750
  • Restore resolving prefixes of implicit Ident #​22751
  • No warning for parameter of overriding method #​22757
  • Dealias before checking for member in lint #​22708
  • Warn on bad extensions of aliases #​22362
  • Warn universal extensions on opaque types #​22502
  • Discourage default arg for extension receiver #​22492
  • Rename on import is never wildcard #​22712
  • Collect nowarn symbols instead of skipping them #​22766
  • Revert unconditional lint of Inlined expansion #​22815

Match Types

  • Handle NoType in TypeComparer.disjointnessBoundary #​21520

Named Tuples

  • Special case NamedTuple.From for arguments derived from Tuple #​22449
  • Generate mirrors for named tuples #​22469
  • Two fixes to NamedTuple pattern matching #​22953

Opaque Types

  • Fix stack overflow errors when generating opaque type proxies #​22479
  • Fix inline proxy generation for opaque types referencing other opaque types #​22381
  • Fix opaque types leaking rhs when inlined and found in type params (and a related stale symbol issue) #​22655

Overloading

  • Make overload pruning based on result types less aggressive #​21744
  • Fail compilation if multiple conflicting top-level private defs/vals are in the same package #​22759

Parser

  • Fix annotations being not expected in the middle of an array type by java parser #​22391
  • No outdent at eof #​22435
  • Allow observing an indent after conditional #​22611
  • Correctly detect colon lambda eol indent for optional brace of argument #​22477

Pattern Matching

  • Avoid crash in uninhab check in Space #​22601
  • Account for named tuples in space subtraction #​22658
  • Check exhaustivity of any case class #​22604

Presentation Compiler

  • Add enum type param support in sourceSymbol #​18603
  • Map name position to desugared version of named context bound #​22374
  • Hover and go to definition for named tuples #​22202
  • Completions: do not complete package #​20532
  • Print parens for single method argument only if a direct tuple type #​21510
  • Improvement: use heuristic to figure out nameSpan if pointDelta too big #​22484
  • Fix inferredTypeEdits for symbols #​22485
  • Fix: Only fallback to the definition of a synthetic valdef if it is zero extent #​22551
  • Better LSP completions inside of backticks #​22555
  • Don't search for members in pc info when irrelevant #​22674
  • Backport from Metals #​22426
  • Backport from Metals #​22491
  • Backport from Metals #​22665

Runner

  • Upgrade Scala CLI to 1.7.1 highlights
    • Switch to scalameta/scalafmt images of scalafmt 3.9.1+ #​3502
    • Support the --test command line option for run subcommand #​3519
    • Support the --test command line option for package subcommand #​3519
    • Detect objects with main class in scripts #​3479
    • Support for Scala.js 1.18.2 #​3454
    • Support for Scala Native 0.5.7 #​3527
    • Add support for running a main method from the test scope #​3502

Quotes

  • Add a check for correct Array shape in quotes.reflect.ClassOfConstant #​22033
  • Fix issue with static this references erroring in quoted code #​22618
  • Fix #​21721: make case TypeBlock(,) not match non-type Block #​21722
  • Make Ref.apply() return trees usable in the largest scope possible #​22240
  • Make sure Block does not incorrectly match a TypeBlock #​22716
  • Do not approximate prefixes when using memberType in reflect API #​22448
  • Bring back pattern match exhaustivity checking for macros #​22622

REPL

  • REPL: JLine 3.29.0 (was 3.27.1) #​22679
  • Repl: emit warning for the :sh command #​22694
  • Add warning for :kind command #​22572
  • Check trailing blank line at EOF for OUTDENT #​22855

Reporting

  • Filter help renders box border #​22434
  • Register nowarn when inlining #​22682
  • Rule out exports of member of the current class #​22545

Standard Library

  • Changes in preparation to make caps.Capability stable #​22849
  • Mitigate change in status of scala.caps #​22956

Scaladoc

  • Render @deprecated correctly even when named arguments weren't used #​21925
  • Remove DRI from Scaladoc warnings #​22330

SemanticDB

  • Don't add () to semanticdb symbol for java variables #​22573
  • Fix compiler crash when using betasty with missing java classfiles #​22599

Transform

  • Check only stable qual for import prefix #​22633
  • Treat static vals as enclosures in lambdalift #​22452
  • Record calls to constructors in lambdaLift #​22487
  • Only check logicalOwners for methods, and not for classes, when looking for proxies #​22356
  • Add error-checking when fetching rhs of trees from TASTy #​22565

Typer

  • Root of Java select must be class or rooted package #​21800
  • Check if a prefix is valid before selecting from a type #​22368
  • Preserve hard unions in widenSingletons #​22369
  • Constructor proxy is restricted if class is protected #​22563
  • Constructor companion gets privateWithin #​22627
  • Revert lambda cleanup #​22697
  • Avoid infinite recursion when looking for suggestions #​22361
  • Fix cyclic check, regardless of definition order #​22342
  • Avoid inf recursion in provablyDisjointClasses #​22489

Value Classes

  • Allow private members when computing the denotation of a NamedType #​22549

Other changes

  • Remove locale dependent FileSystemException check #​21633

Contributors

Thank you to all the contributors who made this release possible 🎉

According to git shortlog -sn --no-merges 3.6.4..3.7.0 these are:

    63  Martin Odersky
    47  Som Snytt
    33  Adrien Piquerez
    32  Hamza Remmal
    29  Wojciech Mazur
    19  aherlihy
    19  kasiaMarek
    16  Jan Chyb
    13  Dale Wijnand
    11  Kacper Korban
    10  EnzeXing
     9  Sébastien Doeraene
     7  Guillaume Martres
     7  Matt Bovel
     7  Oliver Bračevac
     7  noti0na1
     5  HarrisL2
     5  Jamie Thompson
     5  dependabot[bot]
     4  Joel Wilsson
     4  Piotr Chabelski
     4  Seth Tisue
     3  Roman Janusz
     3  anna herlihy
     2  David Hua
     2  Tomasz Godzik
     2  Yichen Xu
     1  Alec Theriault
     1  Daisy Li
     1  Daniel Thoma
     1  Dmitrii Naumenko
     1  Felix Herrmann
     1  He-Pin(kerr)
     1  João Ferreira
     1  Jędrzej Rochala
     1  Katarzyna Marek
     1  Kenji Yoshida
     1  Natsu Kagami
     1  Niklas Fiekas
     1  Rocco Mathijn Andela
     1  Vadim Chelyshov
     1  adpi2
     1  fan-tom
     1  philwalk
     1  rochala

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Enabled.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate bot force-pushed the renovate/scala-3.x branch 3 times, most recently from ebfb6b7 to 2884086 Compare May 18, 2025 01:20
@renovate renovate bot force-pushed the renovate/scala-3.x branch 5 times, most recently from 9073f15 to 1768245 Compare May 26, 2025 04:23
@nicolasfara nicolasfara force-pushed the renovate/scala-3.x branch from 1768245 to 590bfa8 Compare May 26, 2025 09:14
@renovate renovate bot force-pushed the renovate/scala-3.x branch 4 times, most recently from 8e06557 to de73ccd Compare May 31, 2025 22:33
@renovate renovate bot force-pushed the renovate/scala-3.x branch 2 times, most recently from b1be0bb to bc0db3d Compare June 3, 2025 16:42
@renovate renovate bot changed the title chore(core-deps): update dependency scala to v3.7.0 chore(core-deps): update dependency scala to v3.7.1 Jun 3, 2025
@nicolasfara nicolasfara force-pushed the renovate/scala-3.x branch from bc0db3d to ced3281 Compare June 6, 2025 19:18
@renovate renovate bot force-pushed the renovate/scala-3.x branch from ced3281 to 0ad5893 Compare June 6, 2025 19:18
@nicolasfara nicolasfara force-pushed the renovate/scala-3.x branch 2 times, most recently from 5d8e139 to c60c763 Compare June 10, 2025 07:19
@renovate renovate bot force-pushed the renovate/scala-3.x branch from c60c763 to 6ea1397 Compare June 10, 2025 07:19
@renovate renovate bot force-pushed the renovate/scala-3.x branch from 6ea1397 to 282f1c4 Compare June 25, 2025 03:33
@renovate renovate bot force-pushed the renovate/scala-3.x branch 4 times, most recently from 7ccf80b to c693ec3 Compare July 2, 2025 18:44
@renovate renovate bot force-pushed the renovate/scala-3.x branch from 9f7ff12 to 69db4d9 Compare July 7, 2025 00:39
@renovate renovate bot force-pushed the renovate/scala-3.x branch from 426dbd3 to 69d446b Compare July 16, 2025 19:23
@renovate renovate bot force-pushed the renovate/scala-3.x branch 2 times, most recently from 94d2ea1 to 41e5591 Compare July 18, 2025 01:54
@renovate renovate bot force-pushed the renovate/scala-3.x branch from 41e5591 to acf734e Compare July 30, 2025 17:53
@renovate renovate bot changed the title chore(core-deps): update dependency scala to v3.7.1 chore(core-deps): update dependency scala to v3.7.2 Jul 30, 2025
@renovate renovate bot force-pushed the renovate/scala-3.x branch from acf734e to cc9b6d2 Compare August 1, 2025 00:50
@renovate renovate bot force-pushed the renovate/scala-3.x branch 4 times, most recently from 8588abf to d16204b Compare August 12, 2025 11:02
@renovate renovate bot force-pushed the renovate/scala-3.x branch 3 times, most recently from b278f7c to 8f4917e Compare August 17, 2025 04:32
@renovate renovate bot force-pushed the renovate/scala-3.x branch 6 times, most recently from ef21664 to ae46974 Compare August 29, 2025 13:48
@renovate renovate bot force-pushed the renovate/scala-3.x branch from 6e61872 to 785786e Compare August 29, 2025 23:05
Copy link

codecov bot commented Aug 29, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 48.84%. Comparing base (b76e1f0) to head (785786e).
⚠️ Report is 1 commits behind head on master.

Additional details and impacted files
@@            Coverage Diff             @@
##           master      #75      +/-   ##
==========================================
- Coverage   49.18%   48.84%   -0.34%     
==========================================
  Files          29       29              
  Lines         305      303       -2     
  Branches       21       22       +1     
==========================================
- Hits          150      148       -2     
  Misses        155      155              

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@mergify mergify bot merged commit 9b4a202 into master Aug 29, 2025
11 of 12 checks passed
@mergify mergify bot deleted the renovate/scala-3.x branch August 29, 2025 23:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant