Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions _data/scala-releases.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
- category: current_version
title: Current 3.7.x release
version: 3.7.2
release_date: August 1, 2025
version: 3.7.3
release_date: September 9, 2025
- category: current_version
title: Current 3.3.x LTS release
version: 3.3.6
Expand Down
10 changes: 10 additions & 0 deletions _downloads/2025-09-09-3.7.3.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
---
title: Scala 3.7.3
start: 9 September 2025
layout: downloadpage
release_version: 3.7.3
release_date: "September 9, 2025"
permalink: /download/3.7.3.html
license: <a href="https://www.scala-lang.org/license/">Apache License, Version 2.0</a>
api_docs: https://www.scala-lang.org/api/3.7.3/
---
39 changes: 39 additions & 0 deletions _posts/2025-09-09-release-notes-3.7.3.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
---
category: release
permalink: /news/3.7.3/
title: "Scala 3.7.3 is now available!"
by: Wojciech Mazur, VirtusLab
---
Scala 3.7.3 is now available!

## Highlights of the release

### Warn when an explicit `using` argument clouse with defaults shadows `given` in the scope [#23559](https://github.com/scala/scala3/pull/23559)

If a call supplies any `using` argument explicitly, `given` search is not performed for the remaining params in that clause. If a remaining param has a default, that default is used, even if a compatible `given` is in scope. This behaviour could have been confusing for users and lead to unexpected problems at runtime.
The compiler now reports a warning when default argument would be used instead of given defined in the scope.
```scala
def f(using x: X, y: Y = defaultY) = ???
given Y = ???
f(using x = X()) // warns: y = defaultY
```

This change also adds new flag `-Wrecurse-with-default` to emit warning when a method calls itself using a default argument instead of forwarding the current value

### Bump Scala CLI to v1.9.0
- Supports the new Scala 3 nightly Maven repository,
- Can be used to test Scala 3.8 nightly releases,
- See the [Scala CLI changelog](https://github.com/VirtusLab/scala-cli/releases/tag/v1.9.0) for additional details

### The new Maven repository for Scala 3 nightly releases

Scala 3 nightly releases are no longer published to Maven Central, these can now be found in dedicated `https://repo.scala-lang.org/artifactory/maven-nightlies` repository.

sbt 1.11.5 or later users can use a helper function to reference new repository in their builds
```scala
resolvers += Resolver.scalaNightlyRepository
```



For a full list of changes and contributor credits, please refer to the [release notes](https://github.com/scala/scala3/releases/tag/3.7.3).