Metals v1.4.2 - Palladium
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 release | 93 |
Merged PRs | 71 |
Contributors | 13 |
Closed issues | 17 |
New features | 1 |
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:
as well as a standalone function call:
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)
Merged pull requests:
- chore: Update Bloop to 2.0.6 #7029 (tgodzik)
- build(deps): Update coursier, ... from 2.1.20 to 2.1.21 #7022 (scalameta-bot)
- build(deps): bump nanoid from 3.3.7 to 3.3.8 in /website #7020 (dependabot[bot])
- build(deps): Update mdoc-interfaces from 2.6.1 to 2.6.2 #7024 (scalameta-bot)
- build(deps): Update flyway-core from 11.0.1 to 11.1.0 #7023 (scalameta-bot)
- build(deps): Update metaconfig-core from 0.13.0 to 0.14.0 #7025 (scalameta-bot)
- build(deps): Update scalameta, semanticdb-metap, ... from 4.12.0 to 4.12.1 #7026 (scalameta-bot)
- improvement: by default support
scala-cli
power options #7017 (kasiaMarek) - fix: use alternative with stripped synthetic
filename$package.
#7000 (kasiaMarek) - build(deps): Update munit from 1.0.2 to 1.0.3 #7011 (scalameta-bot)
- debug: Log client config at the start #7014 (tgodzik)
- build(deps): Update flyway-core from 11.0.0 to 11.0.1 #7010 (scalameta-bot)
- build(deps): Update interface from 1.0.25 to 1.0.26 #7009 (scalameta-bot)
- build(deps): Update coursier, ... from 2.1.19 to 2.1.20 #7008 (scalameta-bot)
- build(deps): Update protobuf-java from 4.29.0 to 4.29.1 #7007 (scalameta-bot)
- improvement: Make including detail in completion label configurable #6986 (Sorixelle)
- fix: don't look for overshadow conflicts for symbols not in the scope #7001 (kasiaMarek)
- Presentation Compiler is now loaded with correct classloader #7002 (rochala)
- improvement: if no binary version in jar path try using build target info #6698 (kasiaMarek)
- build(deps): Update qdox from 2.1.0 to 2.2.0 #6996 (scalameta-bot)
- build(deps): bump @docusaurus/plugin-client-redirects from 3.6.0 to 3.6.3 in /website #6989 (dependabot[bot])
- build(deps): Update jsoup from 1.18.2 to 1.18.3 #6997 (scalameta-bot)
- build(deps): Update sbt, scripted-plugin from 1.10.5 to 1.10.6 #6998 (scalameta-bot)
- build(deps): bump @docusaurus/core from 3.6.0 to 3.6.3 in /website #6992 (dependabot[bot])
- build(deps): bump react-dom from 18.2.0 to 18.3.1 in /website #6991 (dependabot[bot])
- build(deps): bump @easyops-cn/docusaurus-search-local from 0.45.0 to 0.46.1 in /website #6990 (dependabot[bot])
- build(deps): bump @docusaurus/faster from 3.6.0 to 3.6.3 in /website #6993 (dependabot[bot])
- build(deps): Update jsoup from 1.18.1 to 1.18.2 #6985 (scalameta-bot)
- chore: Retry flaky tests #6987 (tgodzik)
- build(deps): Update interface from 1.0.24 to 1.0.25 #6984 (scalameta-bot)
- build(deps): Update coursier, ... from 2.1.18 to 2.1.19 #6983 (scalameta-bot)
- build(deps): Update protobuf-java from 4.28.3 to 4.29.0 #6981 (scalameta-bot)
- bugfix: Add name field to distinguish different action data #6980 (tgodzik)
- tests: Await program being run in native cancel test #6979 (tgodzik)
- improvement: Use codeAction/resolve for code actions #6978 (tgodzik)
- bugfix: Fix issue when would be added as prefix #6977 (tgodzik)
- improvement: Add toString to UserConfiguration #6975 (tgodzik)
- build(deps): Update scalameta, semanticdb-metap, ... from 4.11.2 to 4.12.0 #6974 (scalameta-bot)
- bugfix: Don't send best effort flag when disabled #6966 (tgodzik)
- build(deps): Update flyway-core from 10.22.0 to 11.0.0 #6973 (scalameta-bot)
- docs: use
authors.yml
#6972 (scarf005) - docs: fix broken links #6971 (scarf005)
- Infer method #6877 (ag91)
- build(deps): Update coursier, ... from 2.1.17 to 2.1.18 #6961 (scalameta-bot)
- improvement: Change default StatusBarState to LogMessage #6960 (tgodzik)
- build(deps): Update flyway-core from 10.21.0 to 10.22.0 #6963 (scalameta-bot)
- build(deps): Update interface from 1.0.23 to 1.0.24 #6962 (scalameta-bot)
- build(deps): Update scalameta, semanticdb-metap, ... from 4.11.1 to 4.11.2 #6964 (scalameta-bot)
- build(deps): Update cli_3, scala-cli-bsp from 1.5.3 to 1.5.4 #6965 (scalameta-bot)
- bugfix #6950:respect customProjectRoot in BspConnector #6956 (spangaer)
- bugfix: Try to make focused document more secure #6959 (tgodzik)
- improvement: avoid atomic double touch if not needed #6957 (spangaer)
- bugfix: Don't set empty edits #6953 (tgodzik)
- debug: Add more debug information and cancel all current state in Com… #6948 (tgodzik)
- build(deps): Update interface from 1.0.22 to 1.0.23 #6935 (scalameta-bot)
- improvement: Don't ask for cancel for main and test clases #6946 (tgodzik)
- bugfix: Don't show run code lense when using Main class and worksheets #6947 (tgodzik)
- build(deps): Update scalameta, semanticdb-metap, ... from 4.11.0 to 4.11.1 #6943 (scalameta-bot)
- bugfix: Add refresh inlay hints to true #6945 (tgodzik)
- build(deps): Update mill-contrib-testng from 0.11.13 to 0.12.2 #6942 (scalameta-bot)
- build(deps): bump cross-spawn from 7.0.3 to 7.0.5 in /website #6941 (dependabot[bot])
- bugfix: Show implicit chained calls in inlay hints #6929 (francesconero)
- bugfix: Check if inlay hints refresh is enabled #6940 (tgodzik)
- chore: Fix wrongly pasted metals version #6939 (tgodzik)
- docs: Add release notes for Metals 1.4.1 #6930 (tgodzik)
- build(deps): Update mill-contrib-testng from 0.11.9 to 0.11.13 #6934 (scalameta-bot)
- build(deps): Update cli_3, scala-cli-bsp from 1.5.1 to 1.5.3 #6936 (scalameta-bot)