Skip to main content

Metals v0.3.2 - Iron

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: https://github.com/scalameta/metals/milestone/3?closed=1

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: https://scalameta.org/metals/docs/integrations/new-build-tool#custom-build-server

Blog post on fast goto definition with low memory footprint#

New blog post on how Metals implements Goto Definition: https://scalameta.org/metals/blog/2018/12/12/fast-goto-definition.html

VS Code#

Release notes: https://github.com/scalameta/metals-vscode/releases/tag/v1.1.0

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.

Emacs#

The website now documents the installation steps for Emacs: https://scalameta.org/metals/docs/editors/emacs.html

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

Contributors#

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
Chris
Jakub Kozłowski