
Коротко о главномРазвернутьСвернуть
- В обновлении появились новые возможности для стандартной библиотеки, улучшения компиляции и поддержки платформ Kotlin Multiplatform, обновления для Kotlin/Native, Kotlin/Wasm и Kotlin/JS, а также новые возможности инструментов сборки.
- Добавлена поддержка восстановления стека вызовов для корутин.
- Теперь при обработке ошибок можно получать более полную информацию о цепочке вызовов, что упрощает поиск проблем в асинхронном коде.
Команда JetBrains выпустила Kotlin 2.4.20. В обновлении появились новые возможности для стандартной библиотеки, улучшения компиляции и поддержки платформ Kotlin Multiplatform, обновления для Kotlin/Native, Kotlin/Wasm и Kotlin/JS, а также новые возможности инструментов сборки.
Стандартная библиотека
Добавлена поддержка восстановления стека вызовов для корутин. Теперь при обработке ошибок можно получать более полную информацию о цепочке вызовов, что упрощает поиск проблем в асинхронном коде.
Также появились новые функции для проверки элементов коллекций:
- allEqual() — позволяет проверить, что все элементы коллекции равны;
- allDistinct() и allDistinctBy() — помогают проверить уникальность элементов коллекции.
Кроме того, расширены возможности kotlin.test : добавлены новые перегрузки функций проверки с поддержкой отложенного вычисления сообщений об ошибках.
Kotlin/Native
В Kotlin/Native обновили экспорт в Swift: появились новые возможности для работы с кодом Kotlin из Swift.
Также улучшена инкрементальная компиляция артефактов klib . Это должно сократить время повторной сборки проектов, использующих Kotlin Multiplatform.
Для зависимостей Swift Package Manager теперь автоматически создаются файлы Package.swift , что упрощает интеграцию Kotlin-кода со Swift-проектами.
Kotlin/Wasm
В Kotlin/Wasm обновили несколько компонентов:
- изменено поведение вызовов верхнего уровня require() в объявлениях @JsFun ;
- улучшен порядок инициализации объектов-компаньонов;
- добавлена поддержка среды выполнения Wasmtime в Kotlin Gradle Plugin;
- уменьшен размер бинарных файлов для функциональных интерфейсов.
Kotlin/JS
Для Kotlin/JS добавили новый DSL для тестирования браузерного кода.
Также появилась возможность экспортировать приостанавливающие лямбда-функции ( suspend lambda ) как асинхронные функции JavaScript. Улучшена экспортируемость классов данных ( data class ).
Обновления Gradle и инструментов сборки
Kotlin 2.4.20 получил поддержку Gradle 9.7.0 и улучшенное отображение информации через API проблем Gradle.
В Build Tools API добавлена поддержка новых целей:
- Kotlin/Wasm;
- метаданных Kotlin.
Компилятор Kotlin
В состав релиза вошли новые возможности компилятора:
- команда kotlinr для запуска Kotlin-кода;
- отдельный нативный образ компилятора.
Как обновиться
Kotlin 2.4.20 уже доступен в последних версиях IntelliJ IDEA и Android Studio.
Чтобы обновить проект, нужно изменить версию Kotlin в файлах сборки на 2.4.20 .
plugins {
kotlin("jvm") version "2.4.20"
}Если используется командный компилятор Kotlin, его можно скачать со страницы релиза проекта на GitHub.
Полный список изменений доступен в документации Kotlin 2.4.20.
Расписание всех бесплатных уроков сентября от преподавателей Otus уже доступно в дайджесте.
- Блог компании OTUS
- Разработка мобильных приложений


