Skip to content

IntelliJ SDK depends on custom fork of kotlinx coroutines #2825

@jaschdoc

Description

@jaschdoc

The IntelliJ SDK used by Kotlin includes a custom fork of kotlinx coroutines which contains the IntelliJCoroutines class. KSP must also depend on that version instead of the normal kotlinx coroutines since it may be loaded in some cases by Kotlin (see JetBrains/kotlin@3534805). We added the fork as a dependency in #2809. If the IntelliJ SDK ever switches back to the upstream kotlinx coroutines, we have to switch too.

However, in the uber jar, the IntelliJ SDK does not load the bundled class (possibly due to renaming), thus leading to a crash. The solution to this is to back port some fixes into KSP so the IntellijCoroutines class is not loaded (until they fix it upstream).

Metadata

Metadata

Assignees

No one assigned

    Labels

    AAwaiting for upstream fix

    Type

    No fields configured for Task.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions