-
Notifications
You must be signed in to change notification settings - Fork 333
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
docs: Add release notes for Metals 1.0.0 #5453
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🎉
@tgodzik We have some new improvements coming in the next version of the scala-debug-adapter but it is not yet ready to be released. So let's go with the current latest version. There is nothing major to be announced there, it's mostly bug fixes, perf improvements, and added support for new Scala versions. |
|
||
Please let us know about any issues! This is a new feature and we expect that it | ||
might take some time to get it ironed out. | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do you think it'd be worth while putting another small "Note for clients" here mentioning the extra flags that are needed for this?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Oooo, I totally missed this. So then the logic to add extra flags to start Metals is no longer needed at all?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Let me check that.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yep, looks like it works without the flags.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ah ok cool. We should revert scalameta/metals-vscode#1395 as well then.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Here we only show a short summary of the main feature from the release notes. | ||
|
||
#### Linting | ||
|
||
Scala 3.3.0 brings back linting to the Scala compiler. Right now, you can enable | ||
checking for unused symbols and discarded values. More linting options will come | ||
soon in the following Scala 3.3.x releases. | ||
|
||
#### Fewer braces | ||
|
||
Braces around method parameters can now be replaced with a colon. This can lead | ||
to cleaner, shorter, and often more readable code in places like configuration | ||
DSLs or test case definitions. | ||
|
||
#### Boundary and break | ||
|
||
Two new methods were added to the standard library: boundary and break. They are | ||
safer and more expressive replacements for non-local returns, which were | ||
deprecated recently. | ||
|
||
break allows for a type-safe early escape from anywhere inside the block | ||
delimited by boundary to its end, returning the passed value from the entire | ||
block. | ||
|
||
#### The new default implementation of lazy vals | ||
|
||
Last but not least, we have changed the default implementation of lazy vals. The | ||
new implementation has better performance and is safer under parallel access. | ||
This may result in improvements in the performance of effect systems. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
No strong feeling on this, but I don't actually think this is needed. It might even be confusing that we're outlining features of the Scala release here in the Metals release. I'd focus on what this release of Metals brings you and link to the relevant places elsewhere. I'm not sure this add a lot to the Metals release notes.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I thought it might be useful to highlight some changes to Scala 3 that might be relevant to users. I think that might be useful especially since Metals release notes will show up automatically (at least in VS Code) where it would be clearly visible. Not everyone is on Twitter and checks release notes, so this would be another idea to promote the awesome work of people behind the compiler.
But I can reduce that to just links to the release if you think that would be enough. What do other people think?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I got the same feeling as @ckipp01, that it is a bit out of place here. But I see how this is a chance to promote the changes done in the compiler so I'd leave it.
1466a1d
to
7bf8394
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pretty crazy to see 1.0.0 here. Thanks for steering the ship @tgodzik! 🚢
This is no longer needed as of scalameta/metals#5375. You can see more context for this in scalameta/metals#5453 (comment).
7bf8394
to
37394e7
Compare
Let me know if I should improve or add something!
@adpi2 do you want to add a section on debugging? I updated to latest Bloop with the latest scala-debug-adapter. I am also thing of doing another release with a couple of fixes, so I could include next version if you want to release it?