Skip to content

Update 2022-08-17-long-term-compatibility-plans for LTS vs Next guide #1790

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

Merged
merged 1 commit into from
Apr 17, 2025
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 5 additions & 1 deletion blog/_posts/2022-08-17-long-term-compatibility-plans.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,11 @@ Scala 3 guarantees backward compatibility between all releases and forward compa

## What version of Scala should I use?

So, we know what output compatibility is and what Scala 3 guarantees. What does it mean in practice? What version of the compiler should I choose for my project? The compiler team believes that the good answer for this question is always *the newest one*.
So, we know what output compatibility is and what Scala 3 guarantees. What does it mean in practice? What version of the compiler should I choose for my project?

The simple answer is:
* The **Scala Next** line should be used be used by most users, as it contains the latest features, bug fixes and improvements.
* The **Scala LTS** line is advised to be used for publishing libraries. (Some especially conservative users might also choose it over Scala Next.)

We believe that you should treat the compiler as one of your dependencies. If you are fine with updating the versions of your library dependencies, there should be no reason not to update the compiler version. In most cases, you wouldn't even notice that the Scala version has changed. Meanwhile, you can get better compilation performance, improved error messages, and most importantly, you may be able to use newly stabilized features of the language and of the standard library.

Expand Down