Skip to content

Commit

Permalink
More suggested changes
Browse files Browse the repository at this point in the history
  • Loading branch information
adpi2 committed Feb 4, 2025
1 parent 5fdeb05 commit 5b7555a
Showing 1 changed file with 8 additions and 6 deletions.
14 changes: 8 additions & 6 deletions blog/_posts/2025-02-04-highlights-2024.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ Welcome to the first edition of **Scala Highlights**, a new quarterly newsletter
The newsletter is a joint effort by the Scala Center, LAMP, Akka, and VirtusLab, the four core organizations involved in the Scala language development.
It also covers our collaborations with other parties, such as the Scala Center’s advisory board.

This inaugural issue is special as it offers a recap of 2024, celebrating the year's most significant advancements, and their impact on the Scala ecosystem.
This inaugural issue is special as it offers a recap of 2024, celebrating the year's most significant advancements and their impact on the Scala ecosystem.
Future issues will cover quarterly highlights.

A few of the highlights covered in this issue:
Expand Down Expand Up @@ -90,8 +90,10 @@ Further reading:
Scala Native 0.5 introduces an implementation of `java.lang.Thread` based on system threads, along with Scala and Java concurrency primitives.
It provides support for synchronized blocks, `@volatile` annotations, final fields, and includes thread-safe implementations of most classes in `java.util.concurrent`, `scala.concurrent` and `scala.collection.concurrent`.

The support is solid enough to allow the Scala parallel collections library to work on Native without code changes.

For more details about the multi-threading support in Scala Native, check out the [Scala Native 0.5 release notes](https://scala-native.org/en/stable/changelog/0.5.x/0.5.0.html).
It also contains the initial support for 32-bit architectures, and more.
It also contains initial support for 32-bit architectures, and more.

## Developer experience

Expand All @@ -101,7 +103,7 @@ It also contains the initial support for 32-bit architectures, and more.
It allows lightning-fast running and testing of Scala code. It can even publish single-module projects to Maven Central without involving a separate build tool.

In 3.5.0, it became the default runner in the Scala distribution.
You can install it as `scala` using Coursier, or popular package managers such as Homebrew or SDKMAN!.
You can install it as `scala` using Coursier or popular package managers such as Homebrew or SDKMAN!.
Check out the default installation for your system on [scala-lang.org/download](http://scala-lang.org/download).

This is a game-changer for the Scala runner, as it introduces `using` directives to configure Scala files with compiler options, library dependencies and more.
Expand Down Expand Up @@ -141,7 +143,7 @@ To learn about these new features and more, check out the [sbt 2.0.0-M3 announce

*By the IntelliJ Scala plugin team at JetBrains*

In 2024, the IntelliJ Scala Plugin introduced a new sbt layout, which creates separate `main` and `test` modules for each sbt project.
In 2024, the IntelliJ Scala Plugin introduced a new sbt layout which creates separate `main` and `test` modules for each sbt project.
This change allows for different compiler options in each scope and improves the representation of dependencies.
To enable this feature you can follow the guide in [this blog post](https://blog.jetbrains.com/scala/2024/11/19/new-module-layout-for-sbt/).

Expand All @@ -151,7 +153,7 @@ In addition, IntelliJ automatically recognizes it when importing existing Scala
Other minor enhancements are planned for future releases.

Throughout 2024, the Scala 3 support improved steadily with each release.
Although there is still much work to do, the latest IntelliJ Scala Plugin can now import most Scala 3 projects effectively.
Although there is still work to do, the latest IntelliJ Scala Plugin can now import most Scala 3 projects effectively.
Furthermore, Scala 3.3.x LTS is now selected as the new default version when creating new projects.

Other major updates from 2024 include:
Expand All @@ -169,7 +171,7 @@ One of those efforts has been implementing best-effort compilation for Scala 3.
Best-effort compilation allows Metals to provide the most up-to-date information, for things such as autocompletion even in broken code that fails to compile.

Since this is a big change, we are still making sure everything works correctly.
It’s an opt-in feature.
The feature remains opt-in for now.
To try it out you can start Metals with `-Dmetals.enable-best-effort=true`, or if using VS Code put that into `metals.serverProperties`.

A more limited version is implemented for Scala 2. It is based on outline compilation, which only compiles signatures.
Expand Down

0 comments on commit 5b7555a

Please sign in to comment.