参与 Kotlin 早期访问计划

You can participate in the Kotlin Early Access Preview (EAP) to try out the latest Kotlin features before they are released.

We ship a few Beta (Beta) and Release Candidate (RC) builds before every feature (1.x) and incremental (1.x.y) release.

We'll be very thankful if you find and report bugs to our issue tracker YouTrack. It is very likely that we'll be able to fix them before the final release, which means you won't need to wait until the next Kotlin release for your issues to be addressed.

By participating in the Early Access Preview and reporting bugs, you contribute to Kotlin and help us make it better for everyone in the growing Kotlin community. We appreciate your help a lot!

If you have any questions and want to participate in discussions, you are welcome to join the #eap channel in Kotlin Slack. In this channel, you can also get notifications about new EAP builds.

Install the Kotlin EAP Plugin for IDEA or Android Studio

By participating in the EAP, you expressly acknowledge that the EAP version may not be reliable, may not work as intended, and may contain errors.

Please note that we don't provide any guarantees of compatibility between EAP and final versions of the same release.

If you have already installed the EAP version and want to work on projects that were created previously, check our instructions on how to configure your build to support this version.

How the EAP can help you be more productive with Kotlin

  • Prepare for the Stable release. If you work on a complex multimodule project, participating in the EAP may streamline your experience when you adopt the Stable release version. The sooner you update to the Stable version, the sooner you can take advantage of its performance improvements and new language features.

    The migration of huge and complex projects might take a while, not only because of their size, but also because some specific use cases may not have been covered by the Kotlin team yet. By participating in the EAP and continuously testing new versions of Kotlin, you can provide us with early feedback about your specific use cases. This will help us address as many issues as possible and ensure you can safely update to the Stable version when it's released. Check out how Slack benefits from testing Android, Kotlin, and Gradle pre-release versions.

  • Keep your library up-to-date. If you're a library author, updating to the new Kotlin version is extremely important. Using older versions could block your users from updating Kotlin in their projects. Working with EAP versions allows you to support the latest Kotlin versions in your library almost immediately with the Stable release, which makes your users happier and your library more popular.
  • Share the experience. If you're a Kotlin enthusiast and enjoy contributing to the Kotlin ecosystem by creating educational content, trying new features in the Kotlin EAP allows you to be among the first to share the experience of using the new cool features with the community.

Build details

Build info Build highlights
1.9.20-RC2

Released: October 24, 2023

Release on GitHub

  • K2: support for Kotlin/Wasm, preview kapt compiler plugin
  • Kotlin/JVM: support for Java 21 bytecode
  • Kotlin/Native: custom allocator enabled by default, full parallel mark available in the GC, deprecated targets disabled, obligatory opt-in for all cinterop declarations (except for platform libraries), the GC scheduler tracking objects in big chunks, legacy memory manager disabled, support for Xcode 15
  • Kotlin Multiplatform: hierarchy template available by default, full support for Gradle Configuration cache, the default support for third-party cinterop libraries, reworked configuration of compiler settings in multiplatform projects
  • Kotlin/Wasm: support for WASI, new wasm-wasi target and rename wasm target to wasm-js, compatible with recent updates in Wasm GC
  • Kotlin/JS: using open-addressing hash map in the JS stdlib, ability to generate one JS file for each Kotlin source file
  • Libraries: experimental support for enumEntries() function, further stabilization of Kotlin/Native standard library
  • Gradle: support for Gradle versions 8.0 and 8.1, new build metrics for Kotlin/Native tasks, support for test fixtures to access internal declarations, new property to configure custom path to Konan and its dependencies

For more details, please refer to the changelog or What's new in Kotlin 1.9.20-RC2.

1.9.20-RC

Released: October 12, 2023

Release on GitHub

  • K2: support for Kotlin/Wasm, preview kapt compiler plugin
  • Kotlin/JVM: support for Java 21 bytecode
  • Kotlin/Native: custom allocator enabled by default, full parallel mark available in the GC, deprecated targets disabled, obligatory opt-in for all cinterop declarations (except for platform libraries), the GC scheduler tracking objects in big chunks, legacy memory manager disabled, support for Xcode 15
  • Kotlin Multiplatform: hierarchy template available by default, full support for Gradle Configuration cache, the default support for third-party cinterop libraries, reworked configuration of compiler settings in multiplatform projects
  • Kotlin/Wasm: support for WASI, new wasm-wasi target and rename wasm target to wasm-js, compatible with recent updates in Wasm GC
  • Kotlin/JS: using open-addressing hash map in the JS stdlib, ability to generate one JS file for each Kotlin source file
  • Libraries: experimental support for enumEntries() function, further stabilization of Kotlin/Native standard library
  • Gradle: support for Gradle versions 8.0 and 8.1, new build metrics for Kotlin/Native tasks, support for test fixtures to access internal declarations, new property to configure custom path to Konan and its dependencies

For more details, please refer to the changelog or What's new in Kotlin 1.9.20-RC.

1.9.20-Beta2

Released: September 21, 2023

Release on GitHub

  • Kotlin/JVM: support for Java 21 bytecode
  • Kotlin/Native: custom allocator enabled by default, full parallel mark available in the GC, deprecated targets disabled, obligatory opt-in for all cinterop declarations (except for platform libraries), the GC scheduler tracking objects in big chunks, legacy memory manager disabled
  • Kotlin Multiplatform: hierarchy template available by default, full support for Gradle Configuration cache, the default support for third-party cinterop libraries, reworked configuration of compiler settings in multiplatform projects
  • Kotlin/Wasm: support for WASI, new wasm-wasi target and rename wasm target to wasm-js, compatible with recent updates in Wasm GC
  • Kotlin/JS: using open-addressing hash map in the JS stdlib, ability to generate one JS file for each Kotlin source file
  • Libraries: experimental support for enumEntries() function, further stabilization of Kotlin/Native standard library
  • Gradle: support for Gradle versions 8.0 and 8.1, new build metrics for Kotlin/Native tasks, support for test fixtures to access internal declarations, new property to configure custom path to Konan and its dependencies

For more details, please refer to the changelog or What's new in Kotlin 1.9.20-Beta2.

1.9.20-Beta

Released: September 11, 2023

Release on GitHub

  • Kotlin/JVM: support for Java 21 bytecode
  • Kotlin/Native: custom allocator enabled by default, full parallel mark available in the GC, deprecated targets disabled, obligatory opt-in for all cinterop declarations (except for platform libraries), the GC scheduler tracking objects in big chunks, legacy memory manager disabled
  • Kotlin Multiplatform: hierarchy template available by default, full support for Gradle Configuration cache, the default support for third-party cinterop libraries, reworked configuration of compiler settings in multiplatform projects
  • Kotlin/Wasm: support for WASI, new wasm-wasi target and rename wasm target to wasm-js, compatible with recent updates in Wasm GC
  • Kotlin/JS: using open-addressing hash map in the JS stdlib, ability to generate one JS file for each Kotlin source file
  • Libraries: experimental support for enumEntries() function, further stabilization of Kotlin/Native standard library
  • Gradle: support for Gradle versions 8.0 and 8.1, new build metrics for Kotlin/Native tasks, support for test fixtures to access internal declarations, new property to configure custom path to Konan and its dependencies

For more details, please refer to the changelog or What's new in Kotlin 1.9.20-Beta.

If the Kotlin EAP plugin can't find the latest EAP build, check that you are using the latest version of IntelliJ IDEA or Android Studio.