You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/topics/components-stability.md
+22-22Lines changed: 22 additions & 22 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -2,12 +2,12 @@
2
2
3
3
The Kotlin language and toolset are divided into many components such as the compilers for the JVM, JS and Native targets,
4
4
the Standard Library, various accompanying tools and so on.
5
-
Many of these components were officially released as **Stable**, which means that they were evolved
5
+
Many of these components were officially released as **Stable**, which means that they were evolved
6
6
in a backward-compatible way following the [principles of _Comfortable Updates_ and _Keeping the Language Modern_](kotlin-evolution-principles.md).
7
7
8
-
Following the _Feedback Loop_ principle, we release many things early for the community to try out,
8
+
Following the _Feedback Loop_ principle, we release many things early for the community to try out,
9
9
so a number of components are not yet released as **Stable**.
10
-
Some of them are at a very early stage, some are more mature.
10
+
Some of them are at a very early stage, some are more mature.
11
11
We mark them as **Experimental**, **Alpha** or **Beta** depending on how quickly each component evolves
12
12
and the level of risk users take on when adopting it.
13
13
@@ -16,22 +16,22 @@ and the level of risk users take on when adopting it.
16
16
Here's a quick guide to these stability levels and their meaning:
17
17
18
18
**Experimental** means "try it only in toy projects":
19
-
* We are just trying out an idea and want some users to play with it and give feedback. If it doesn't work out, we may drop it any minute.
19
+
* We are just trying out an idea and want some users to play with it and give feedback. If it doesn't work out, we may drop it any minute.
20
20
21
-
**Alpha** means "use at your own risk, expect migration issues":
22
-
* We intend to productize this idea, but it hasn't reached its final shape yet.
21
+
**Alpha** means "use at your own risk, expect migration issues":
22
+
* We intend to productize this idea, but it hasn't reached its final shape yet.
23
23
24
-
**Beta** means "you can use it, we'll do our best to minimize migration issues for you":
25
-
* It's almost done, user feedback is especially important now.
26
-
* Still, it's not 100% finished, so changes are possible (including ones based on your own feedback).
27
-
* Watch for deprecation warnings in advance for the best update experience.
24
+
**Beta** means "you can use it, we'll do our best to minimize migration issues for you":
25
+
* It's almost done, user feedback is especially important now.
26
+
* Still, it's not 100% finished, so changes are possible (including ones based on your own feedback).
27
+
* Watch for deprecation warnings in advance for the best update experience.
28
28
29
29
We collectively refer to _Experimental_, _Alpha_ and _Beta_ as **pre-stable** levels.
30
30
31
31
<aname="stable"/>
32
32
33
33
**Stable** means "use it even in most conservative scenarios":
34
-
* It's done. We will be evolving it according to our strict [backward compatibility rules](https://kotlinfoundation.org/language-committee-guidelines/).
34
+
* It's done. We will be evolving it according to our strict [backward compatibility rules](https://kotlinfoundation.org/language-committee-guidelines/).
35
35
36
36
Please note that stability levels do not say anything about how soon a component will be released as Stable. Similarly, they do not indicate how much a component will be changed before release. They only say how fast a component is changing and how much risk of update issues users are running.
37
37
@@ -61,13 +61,13 @@ A stable component may have an experimental subcomponent, for example:
61
61
* a stable command-line tool may have experimental options.
62
62
63
63
We make sure to document precisely which subcomponents are not **Stable**.
64
-
We also do our best to warn users where possible and ask to opt them in explicitly
64
+
We also do our best to warn users where possible and ask to opt them in explicitly
65
65
to avoid the accidental use of features that have not been released as stable.
66
66
67
67
## Current stability of Kotlin components
68
68
69
69
> By default, all new components have Experimental status.
70
-
>
70
+
>
71
71
{style="note"}
72
72
73
73
### Kotlin compiler
@@ -103,7 +103,7 @@ to avoid the accidental use of features that have not been released as stable.
103
103
| kotlinx-datetime | Alpha | 0.2.0 ||
104
104
| kotlinx-io | Alpha | 0.2.0 ||
105
105
106
-
### Kotlin Multiplatform
106
+
### Kotlin Multiplatform
107
107
108
108
|**Component**|**Status**|**Status since version**|**Comments**|
0 commit comments