Skip to content

Commit fa6eafc

Browse files
committed
Mikhail review
1 parent eeeec87 commit fa6eafc

File tree

1 file changed

+17
-16
lines changed

1 file changed

+17
-16
lines changed

docs/topics/compatibility-guides/compatibility-guide-23.md

Lines changed: 17 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -39,16 +39,16 @@ perspective (for example, from Java) is out of the scope of this document.
3939
> - 2.2.0: report a warning when using `-language-version` with versions 1.8 and 1.9.
4040
> - 2.3.0: raise the warning to an error for language version 1.8 on all platforms and for language version 1.9 on non-JVM platforms.
4141
42-
### Handle `UPPER_BOUND_VIOLATED` on implicit type arguments
42+
### Report upper-bound constraint violation errors for inferred types with typealiases
4343

4444
> **Issue**: [KTLC-287](https://youtrack.jetbrains.com/issue/KTLC-287)
4545
>
4646
> **Component**: Core language
4747
>
48-
> **Incompatible change type**: behavioral
48+
> **Incompatible change type**: source
4949
>
50-
> **Short summary**: Previously, the compiler never reported `UPPER_BOUND_VIOLATED` for implicit type parameters. This
51-
> has been fixed in Kotlin 2.3.0 so that `UPPER_BOUND_VIOLATED` is reported consistently across all type parameters.
50+
> **Short summary**: Previously, the compiler never reported errors about upper-bound violation constraints for the inferred types. This
51+
> has been fixed in Kotlin 2.3.0 so that the error is reported consistently across all type parameters.
5252
>
5353
> **Deprecation cycle**:
5454
>
@@ -61,7 +61,7 @@ perspective (for example, from Java) is out of the scope of this document.
6161
>
6262
> **Component**: Core language
6363
>
64-
> **Incompatible change type**: behavioral
64+
> **Incompatible change type**: source
6565
>
6666
> **Short summary**: Prohibit adding the `@JvmSerializableLambda` annotation on `inline` and `crossinline` lambdas
6767
> because it has no effect. `inline` and `crossinline` lambdas are not serializable.
@@ -77,7 +77,7 @@ perspective (for example, from Java) is out of the scope of this document.
7777
>
7878
> **Component**: Core language
7979
>
80-
> **Incompatible change type**: behavioral
80+
> **Incompatible change type**: source
8181
>
8282
> **Short summary**: Kotlin 2.3.0 forbids delegation to a Java class that implements a generic interface method with
8383
> a non-generic override. Previously, allowing this behavior led to type mismatches and `ClassCastException` reported at runtime.
@@ -94,7 +94,7 @@ perspective (for example, from Java) is out of the scope of this document.
9494
>
9595
> **Component**: Core language
9696
>
97-
> **Incompatible change type**: behavioral
97+
> **Incompatible change type**: source
9898
>
9999
> **Short summary**: Kotlin now deprecates using `return` inside expression bodies when the function's return type is not
100100
> explicitly declared.
@@ -110,7 +110,7 @@ perspective (for example, from Java) is out of the scope of this document.
110110
>
111111
> **Component**: Core language
112112
>
113-
> **Incompatible change type**: behavioral
113+
> **Incompatible change type**: source
114114
>
115115
> **Short summary**: Kotlin now reports an error when attempting to inherit from a nullable typealias, consistent with
116116
> how it already handles direct nullable supertypes.
@@ -124,7 +124,7 @@ perspective (for example, from Java) is out of the scope of this document.
124124

125125
> **Issue**: [KTLC-277](https://youtrack.jetbrains.com/issue/KTLC-277)
126126
>
127-
> **Component**: Core language
127+
> **Component**: Reflection
128128
>
129129
> **Incompatible change type**: behavioral
130130
>
@@ -141,7 +141,7 @@ perspective (for example, from Java) is out of the scope of this document.
141141
>
142142
> **Component**: Core language
143143
>
144-
> **Incompatible change type**: behavioral
144+
> **Incompatible change type**: source
145145
>
146146
> **Short summary**: Kotlin 2.3 prohibits situations where a reified type parameter is inferred to an intersection type,
147147
> due to the risk of incorrect runtime behavior.
@@ -157,7 +157,7 @@ perspective (for example, from Java) is out of the scope of this document.
157157
>
158158
> **Component**: Core language
159159
>
160-
> **Incompatible change type**: behavioral
160+
> **Incompatible change type**: source
161161
>
162162
> **Short summary**: Kotlin 2.3 forbids using type parameter bounds that expose types with more restrictive visibility
163163
> than the function or declaration itself, aligning the rules for functions with those already applied to classes.
@@ -167,15 +167,17 @@ perspective (for example, from Java) is out of the scope of this document.
167167
> - 2.1.0: report a warning on the problematic type parameter bound
168168
> - 2.3.0: raise the warning to an error
169169
170+
## Standard library
171+
170172
### Deprecate misleading Char-to-number conversions and introduce explicit digit and code APIs
171173

172174
> **Issue**: [KTLC-321](https://youtrack.jetbrains.com/issue/KTLC-321)
173175
>
174-
> **Component**: Core language
176+
> **Component**: kotlin-stdlib
175177
>
176-
> **Incompatible change type**: behavioral
178+
> **Incompatible change type**: source
177179
>
178-
> **Short summary**: Kotlin 2.3 deprecates `Char.toX()` and `X.toChar()` conversions for numeric types and introduces new,
180+
> **Short summary**: Kotlin 2.3 deprecates `Char.toX()` and `X.toChar()` conversions for numeric types and introduces new,
179181
> explicit APIs for accessing a character's code and digit value.
180182
>
181183
> **Deprecation cycle**:
@@ -184,7 +186,6 @@ perspective (for example, from Java) is out of the scope of this document.
184186
> - 1.5.0: promote the new functions to Stable; report warnings for old functions with suggestions for replacements
185187
> - 2.3.0: raise the warnings to errors
186188
187-
## Standard library
188189

189190
### Deprecate `String.subSequence(start, end)` function
190191

@@ -254,7 +255,7 @@ perspective (for example, from Java) is out of the scope of this document.
254255
>
255256
> **Component**: Kotlin/Native
256257
>
257-
> **Incompatible change type**: behavior
258+
> **Incompatible change type**: behavioral
258259
>
259260
> **Short summary**: When formatting an exception stacktrace, no additional causes are printed once a previously seen exception cause has already been printed.
260261
>

0 commit comments

Comments
 (0)