Skip to content

2025.2 Roadmap #3704

@joshuataylor

Description

@joshuataylor

Finally feeling well again after many months, and I'm dedicating Saturday afternoon/Sunday to finalising a whole bunch of work.

Step 1: Finish outstanding PRs

This release requires a bit of work, but we're fairly close, and we have some exciting features.

  1. We need to upgrade to Kotlin 2.x, which is required for 2025.1+. I did this a while ago, PR Kotlin 2.x support #3702.
  2. HEEx injection - this is honestly one of my favourite features when working with other languages, as the SQL injection etc is super handy, and this is a great idea. Many thanks to @polymorfiq for getting the ball rolling for this, and figuring out the arcane magic incantations to do so.
  3. Language Support for HEEx - This might need a bit of work in future, as these are really tricky to get right (PSI nightmares). Add language support for HEEx #3696

Step 2: RELEASE

This will support 2025.1 and below, but 2025.2 will have a few issues.

Step 3: Fix deprecated IntelliJ Plugin Platform code

Now, we'll need to fix a fair few Kotlin coroutines/threading related issues, such as #3699 .

Fun. Unknown scope.

Step 3a: Work on 2025.2 support

Every fix will be in either a canary or point release, to help fix 2025.2 support, and hopefully get the IDEs working again.

During this, we will obviously get reports in about how 2025.x+ doesn't support the way the plugin does background work not via coroutines.

Step 4: OTP/Elixir Version Upgrades

After this is merged, I will open another issue where we can track upgrading to the newer versions of Erlang & Elixir, which will make local development a bit easier (for example, installing OTP 24.3.4.6 requires openssl1, which is a pain on both MacOS/Linux).

This will require some updates to the Lexer, as there are new language features in Elixir & OTP.

A interesting experiment could be burrito, which allows you to build binaries for platforms, which would be perfect for the intellij_elixir Elixir Helpers, see https://github.com/joshuataylor/intellij_elixir/blob/main/.github/workflows/burrito-build-cross.yaml , as we can build standalone binaries that run the Erlang/Elixir app without needing that specific version, allowing easier collaboration, and support for JetBrains (trying to get them to read your issue, yet along run Erlang/Elixir is not going to happen).

Future work / fun stuff

During all this, there are obviously still lots of long hanging fruit, and hopefully we can merge these quickly.

e.g:

  1. Get Canary Releases working, for testing - no more ZIPs!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions