IntelliJ Scala 3 support

I am afraid this will perhaps sound a bit harsh. I am daily IntelliJ user and in spite of all shortcomings I still consider IDEA IDE to be the best for my purpose. That said, the image conveyed by the words above does not reflect the reality which is: Scala 3 support is seriously lacking in IntelliJ, esp. the highlighting and type inference is inferior compared to excellent Scala 2 support I have been used to.

Besides of named tuples there are opaque types, extensions and givens, which are older and more fundamental features, in my opinion. I have reported more than 10 issues regarding those features - most of them cause my project sources being significantly red.

I understand this takes a lot of effort and I do not expect this to be solved immediately, I understand the JetBrains team may have different priorities, but at least I would like the problem to be acknowledged.

I do not pretend to know the solution, but acting like a problem does not exist is certainly not a solution.

1 Like

Another thing is better Java 21 interoperation support, Java 25 is the next LTS.

To help others, can you provide links to the issues you mention…?

Whole collection at your disposal: https://youtrack.jetbrains.com/issues/SCL?q=by:%20ospanel%20%20sort%20by:%20created%20desc%20State:%20Open (dynamic view, may change as/if some issues are closed or added)

Some selected issues:
https://youtrack.jetbrains.com/issue/SCL-23232/Good-code-red-given-not-resolved-for-opaque-type-extension
https://youtrack.jetbrains.com/issue/SCL-23227/Method-of-underlying-type-used-instead-of-opaque-type-one
https://youtrack.jetbrains.com/issue/SCL-23233/Good-code-red-given-not-resolved-with-opaque-type-parameter
https://youtrack.jetbrains.com/issue/SCL-23236/Good-code-red-Incorrect-extension-resolution-for-opaque-types-with-type-bounds
https://youtrack.jetbrains.com/issue/SCL-23226/Opaque-type-method-not-resolved-properly-in-presence-of-type-alias
https://youtrack.jetbrains.com/issue/SCL-23225/Methods-from-underlying-type-of-opaque-type-accessible
https://youtrack.jetbrains.com/issue/SCL-23204/Scala-3-summon-not-inferred-with-ClassTag

1 Like

I just reported one issue too:
https://youtrack.jetbrains.com/issue/SCL-23334/Highlighting-error-in-Scala-code-using-Java-16-records

I mostly using Scala with Java 21

1 Like