Skip to main content

Metals v1.4.2 - Palladium

· 6 min read

We're happy to announce the release of Metals v1.4.2, which yet again focuses on stability, but thanks to our contributors we also have a new code action.

Commits since last release93
Merged PRs71
Contributors13
Closed issues17
New features1

For full details: https://github.com/scalameta/metals/milestone/74?closed=1

Metals is a language server for Scala that works with VS Code, Vim, Emacs, Zed, Helix and Sublime Text. Metals is developed at the Scala Center and VirtusLab with the help from contributors from the community.

TL;DR

Check out https://scalameta.org/metals/, and give Metals a try!

Infer method code action

Thanks to great work by ag91 it's now possible to ask Metals to infer a method definition based on it's usage when symbol was not found.

This works similar to the "Create new symbol" code action which would create a new Scala file with the added symbol. Now, for anything starting with a lower case we offer to create a method instead.

This will work both when the symbol is used as a parameter:

first-example

as well as a standalone function call:

second-example

The feature has only been implemented for Scala 2 for the time being and there might be still some unsupported cases.

Contributors

Big thanks to everybody who contributed to this release or reported an issue!

$ git shortlog -sn --no-merges v1.4.1..v1.4.2
30 Tomasz Godzik
29 Scalameta Bot
10 Andrea
7 dependabot[bot]
3 Francesco Nero
3 kasiaMarek
3 scarf
2 Jean-Luc Deprez
2 Katarzyna Marek
1 Ruby Iris Juric
1 nocontribute
1 rochala

Miscellaneous

  • bugfix: Check if inlay hints refresh is enabled tgodzik
  • bugfix: Show implicit chained calls in inlay hints francesconero
  • bugfix: Don't set empty edits - fixes code actions for Zed tgodzik
  • bugfix: Respect customProjectRoot in BspConnector spangaer
  • improvement: Change default StatusBarState to LogMessage tgodzik
  • bugfix: Fix issue when anonymous function name would be added as prefix tgodzik
  • bugfix: Presentation Compiler is now loaded with correct classloader rochala
  • improvement: if no binary version in jar path try using build target info kasiaMarek
  • fix: don't look for overshadow conflicts for symbols not in the scope kasiaMarek
  • improvement: Make including detail in completion label configurable Sorixelle
  • fix: use alternative definition with stripped synthetic filename$package. kasiaMarek
  • improvement: by default support scala-cli power options kasiaMarek
  • bugfix: Update Bloop to 2.0.6 to fix importing build when using pipeling in sbt tgodzik

Merged PRs

v1.4.2 (2024-12-13)

Full Changelog

Merged pull requests: