@@ -58,7 +58,7 @@ fun test(e: Example) = when (e) {
58
58
}
59
59
```
60
60
61
- With the new feature enabled, the ` when ` expression in this example compiles to a single ` invokedynamic ` type switch
61
+ With the new feature enabled, the ` when ` expression in this example compiles to a single ` invokedynamic ` type switch
62
62
instead of multiple ` instanceof ` checks.
63
63
64
64
To enable this feature, compile your Kotlin code with JVM target 21 or above and add the following compiler option:
@@ -112,7 +112,7 @@ Note that in some cases, stack protection might come with a performance cost.
112
112
Kotlin %kotlinEapVersion% introduces the ` smallBinary ` option that can help you decrease the binary size for iOS targets.
113
113
The new option effectively sets ` -Oz ` as the default optimization argument for the compiler during the LLVM compilation phase.
114
114
115
- With the ` smallBinary ` option enabled, you can make release binaries smaller and improve build time. However, it might
115
+ With the ` smallBinary ` option enabled, you can make release binaries smaller and improve build time. However, it might
116
116
affect runtime performance in some cases.
117
117
118
118
#### How to enable smaller binary size
@@ -128,23 +128,23 @@ For a specific binary, set the `binaryOption("smallBinary", "true")` in your `bu
128
128
129
129
``` kotlin
130
130
kotlin {
131
- listOf (
132
- iosX64(),
133
- iosArm64(),
134
- iosSimulatorArm64(),
135
- ).forEach {
136
- it.binaries.framework {
137
- binaryOption(" smallBinary" , " true" )
138
- }
139
- }
131
+ listOf (
132
+ iosX64(),
133
+ iosArm64(),
134
+ iosSimulatorArm64(),
135
+ ).forEach {
136
+ it.binaries.framework {
137
+ binaryOption(" smallBinary" , " true" )
138
+ }
139
+ }
140
140
}
141
141
```
142
142
143
143
The Kotlin team is grateful to [ Troels Lund] ( https://github.com/troelsbjerre ) for his help in implementing this feature.
144
144
145
145
### Improved debugger object summaries
146
146
147
- Kotlin/Native now generates clearer object summaries for debugger tools like LLDB and GDB. This improves the
147
+ Kotlin/Native now generates clearer object summaries for debugger tools like LLDB and GDB. This improves the
148
148
readability of the produced debug information and streamlines your debugging experience.
149
149
150
150
Previously, if you inspected an object such as:
@@ -172,6 +172,8 @@ With Kotlin %kotlinEapVersion%, the debugger shows richer details, including the
172
172
(int32_t) point->x = 1
173
173
```
174
174
175
+ The Kotlin team is grateful to [ Nikita Nazarov] ( https://github.com/nikita-nazarov ) for his help in implementing this feature.
176
+
175
177
For more information on debugging in Kotlin/Native, see the [ documentation] ( native-debugging.md ) .
176
178
177
179
## Kotlin/Wasm: separated npm dependencies
@@ -196,11 +198,11 @@ tooling and the user dependencies have separate directories:
196
198
197
199
Also, the lock files inside the project directory contain only user-defined dependencies.
198
200
199
- This improvement keeps your lock files focused only on your own dependencies, helps maintain a cleaner project, and
201
+ This improvement keeps your lock files focused only on your own dependencies, helps maintain a cleaner project, and
200
202
reduces unnecessary changes to your files.
201
203
202
204
This change is enabled by default for the ` wasm-js ` target. The change is not yet implemented for the ` js ` target. While
203
- there are plans to implement it in future releases, the behavior of the npm dependencies remains the same for the ` js `
205
+ there are plans to implement it in future releases, the behavior of the npm dependencies remains the same for the ` js `
204
206
target in Kotlin %kotlinEapVersion%.
205
207
206
208
## Kotlin/JS: new DSL function for cleaner arguments
@@ -211,7 +213,7 @@ When running a Kotlin/JS application with Node.js, the arguments passed to your
211
213
* The path to your script.
212
214
* The actual command-line arguments you provided.
213
215
214
- However, the expected behavior for ` args ` was to include only the command-line arguments. To achieve this, you had to
216
+ However, the expected behavior for ` args ` was to include only the command-line arguments. To achieve this, you had to
215
217
manually skip the first two arguments using the ` drop() ` function inside your ` build.gradle.kts ` file or in your Kotlin code:
216
218
217
219
``` kotlin
@@ -229,7 +231,7 @@ With this function, the arguments only include the command-line arguments and ex
229
231
``` kotlin
230
232
fun main (args : Array <String >) {
231
233
// No need for drop() and only your custom arguments are included
232
- println (args.joinToString(" , " ))
234
+ println (args.joinToString(" , " ))
233
235
}
234
236
```
235
237
0 commit comments