Kotlin v2.0.21 Help

Stability of Kotlin components (pre 1.4)

There can be different modes of stability depending on how quickly a component is evolving:

  • Moving fast (MF): no compatibility should be expected between even incremental releases, any functionality can be added, removed or changed without warning.

  • Additions in Incremental Releases (AIR): things can be added in an incremental release, removals and changes of behavior should be avoided and announced in a previous incremental release if necessary.

  • Stable Incremental Releases (SIR): incremental releases are fully compatible, only optimizations and bug fixes happen. Any changes can be made in a language release.

  • Fully Stable (FS): incremental releases are fully compatible, only optimizations and bug fixes happen. Feature releases are backwards compatible.

Source and binary compatibility may have different modes for the same component, e.g. the source language can reach full stability before the binary format stabilizes, or vice versa.

The provisions of the Kotlin evolution policy fully apply only to components that have reached Full Stability (FS). From that point on incompatible changes have to be approved by the Language Committee.

Component

Status Entered at version

Mode for Sources

Mode for Binaries

Kotlin/JVM

1.0

FS

FS

kotlin-stdlib (JVM)

1.0

FS

FS

KDoc syntax

1.0

FS

N/A

Coroutines

1.3

FS

FS

kotlin-reflect (JVM)

1.0

SIR

SIR

Kotlin/JS

1.1

AIR

MF

Kotlin/Native

1.3

AIR

MF

Kotlin Scripts (*.kts)

1.2

AIR

MF

dokka

0.1

MF

N/A

Kotlin Scripting APIs

1.2

MF

MF

Compiler Plugin API

1.0

MF

MF

Serialization

1.3

MF

MF

Multiplatform Projects

1.2

MF

MF

Inline classes

1.3

MF

MF

Unsigned arithmetics

1.3

MF

MF

All other experimental features, by default

N/A

MF

MF

Last modified: 26 十一月 2024