forked from JetBrains/kotlin-web-site
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
update: add Kotlin plugin 2020.3 release (JetBrains#1965)
* update: add What's new in Kotlin plugin 2020.3 * update: update titles
- Loading branch information
Showing
3 changed files
with
61 additions
and
5 deletions.
There are no files selected for viewing
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,54 @@ | ||
--- | ||
type: doc | ||
layout: reference | ||
title: "Kotlin plugin releases" | ||
--- | ||
|
||
# Kotlin plugin releases | ||
|
||
The [IntelliJ Kotlin plugin](https://plugins.jetbrains.com/plugin/6954-kotlin) and [IntelliJ IDEA](https://www.jetbrains.com/idea/) are now on the same release cycle. To speed up the testing and delivery of new features, the plugin and the platform have been moved to the same codebase and ship simultaneously. Kotlin releases happen independently according to the [new release cadence](https://blog.jetbrains.com/kotlin/2020/10/new-release-cadence-for-kotlin-and-the-intellij-kotlin-plugin/). | ||
|
||
Kotlin and the Kotlin plugin have distinct sets of features: | ||
* Kotlin releases contain language, compiler, and standard library features. | ||
* Kotlin plugin releases introduce only IDE related features. For example, code formatting and debugging tools. | ||
|
||
This also affects the versioning of the Kotlin plugin. Releases now have the same version as the simultaneous IntelliJ IDEA release. | ||
You can learn more about new release cadence in this [blog post](https://blog.jetbrains.com/kotlin/2020/10/new-release-cadence-for-kotlin-and-the-intellij-kotlin-plugin/). | ||
|
||
## Kotlin plugin 2020.3 | ||
|
||
This plugin release introduces the following features: | ||
* [New types of inline refactorings](#new-types-of-inline-refactorings) | ||
* [Structural search and replace](#structural-search-and-replace) | ||
* [EditorConfig support](#editorconfig-support) | ||
* [Project templates for Jetpack Compose for Desktop](#project-templates-for-jetpack-compose-for-desktop) | ||
|
||
### New types of inline refactorings | ||
|
||
Cross-language conversion is possible starting with version 2020.3 of the Kotlin plugin. You can now use the inline refactoring actions for Kotlin elements defined in Java. | ||
|
||
The Kotlin plugin can inline code from libraries with attached sources. That means you can [inline refactor](https://www.jetbrains.com/help/idea/inline.html) all the [Kotlin scope functions](https://kotlinlang.org/docs/reference/scope-functions.html): _also_, _let_, _run_, _apply_, and _with_. | ||
|
||
Also, this release brings refactoring improvements for lambda expressions. Now the IDE analyzes their syntax more thoroughly and formats them correctly. | ||
|
||
### Structural search and replace | ||
|
||
[Structural search and replace (SSR)](https://www.jetbrains.com/help/idea/structural-search-and-replace.html) actions are now available for Kotlin. The SSR feature allows you to find and replace code patterns, taking the syntax and semantics of the source code into account. | ||
|
||
To start using the feature, open the **Structural Search** dialog for your `.kt` file and select one of the [templates](https://www.jetbrains.com/help/idea/search-templates.html) or create your own. | ||
|
||
### EditorConfig support | ||
|
||
From 2020.3, the Kotlin API has the full support of [.editorconfig](https://editorconfig.org/) files for [managing code style on a directory level](https://www.jetbrains.com/help/idea/configuring-code-style.html#editorconfig). | ||
|
||
### Project templates for Jetpack Compose for Desktop | ||
|
||
The new experimental Jetpack Compose for Desktop templates are now available in the Kotlin Project Wizard. You can create a project using the following templates: | ||
* **Desktop** – a Compose project targeting the desktop JVM platform: Windows, Linux, or macOS. | ||
* **Multiplatform** – a Multiplatform Compose project targeting the desktop JVM platform (Windows, Linux, macOS) and Android with shared code in common modules. | ||
|
||
![Kotlin Project Wizard – Jetpack Compose project]({{ url_for('asset', path='images/reference/whats-new/jetpack-compose.png') }}) | ||
|
||
To create a project, select one of the templates while creating a new project and specify the Gradle build system. The Kotlin plugin creates all the configuration files automatically. You can try out this experimental feature by working through [Getting Started with Compose for Desktop tutorial](https://github.com/JetBrains/compose-jb/tree/master/tutorials/Getting_Started). | ||
|
||
Read more about Jetpack Compose features in this [blog post](https://blog.jetbrains.com/cross-post/jetpack-compose-for-desktop-milestone-1-released/) and look through the [examples of Compose applications](https://github.com/JetBrains/compose-jb/tree/master/examples). |