Skip to main content

Metals v0.3.2 - Iron

· 2 min read

We are pleased to announce the release of Metals v0.3.2. Metals is a language server for Scala that works with VS Code, Atom, Vim, Sublime Text and Emacs. Metals is developed at the Scala Center with contributors from the community.

Metals server

Full details:

In this release we closed 7 issues and merged 17 PRs.

Improved sbt launcher

Metals now respects .sbtopts and .jvmopts when running sbt bloopInstall. If you need further customization like reading environment variables, then you can configure the "Sbt Script" setting (-Dmetals.sbt-script=/path/to/sbt).

sbt script

Build server discovery

Metals now works with any build tool that implements "BSP Connection Protocol". See the Metals docs for more information:

Blog post on fast goto definition with low memory footprint

New blog post on how Metals implements Goto Definition:

VS Code

Release notes:

Improved Java home detection

The extension now automatically detects a Java 8 home directory even if Java 11 is installed on the computer. Also, the extension now works for jenv users.

Outdated server version detection

The extension now automatically detects when you have a custom "Server Version" setting with an outdated version.

Reload Window

Sublime Text

The Metals process now exits when Sublime Text quits so that you no longer end up with zombie metals-sublime processes.

@ayoub-benali has contributed several improvements to tomv564/LSP to improve the experience of using Metals with Sublime Text.

Watch the scalameta/metals-sublime repository for updates on further improvements to the Sublime Text integration.


The website now documents the installation steps for Emacs:

Note that the Emacs LSP client has several known issues so the experience is not as good as it could be.


Big thanks to all contributors who reported issues, reviewed PRs and contributed code!

$ git shortlog -sn --no-merges v0.3.1..v0.3.2
Ólafur Páll Geirsson
Gabriele Petronella
Jakub Kozłowski