Features Scala Scala programming

Scala 3 support in IntelliJ Scala plugin

We added basic Dotty support in the IntelliJ Scala plugin a long time ago, right after the announcement of Dotty. However, for a long time Dotty has been a dark horse, and aiming at a moving target hadn’t been easy. So it was reasonable to put that task on the back-burner and focus on Scala 2 for a while. Now that Dotty is finally destined to become Scala 3 and the language features are getting more stable, we have started to work on a full-fledged Scala 3 support.

The 2020.1 Scala plugin nightly builds now include preliminary support for Scala 3: the new syntax (by the way, we had to adjust that “given” thing several times already :) ), error highlighting, navigation, type info, and many other bread-and-butter IDE features. Although the functionality is already usable, it is still “in beta” – some bumps here and there are expected. We depend on your feedback to smooth the rough edges and make Scala 3 support as good as Scala 2 one (and possibly even better, because, just as Dotty, we now have a lot of experience to rely on).

Trying the nightly builds is easy:

  1. Download IntelliJ IDEA 2020.1 EAP (that’s a good opportunity to try the Toolbox App, which allows you to quickly install, update, or rollback IntelliJ IDEA versions; and you may have different versions next to each other).
  2. Open Settings | Languages | Scala | Updates.
  3. Select Nightly plugin update channel and press Check for updates (you can always select EAP or Release to revert to a more stable build; alternatively, you can download any Scala plugin build from the Plugin Repository).

If you haven’t yet tried Dotty, now is as good time as ever – clone the Dotty example project  and open it in IntelliJ IDEA. Your feedback is very welcome, as always. Feel free to ask any questions in intellij-scala Gitter channel. Report any bugs to YouTrack.

Sincerely,
IntelliJ Scala plugin team