Spec-Zone.ru › Kotlin 1.8

Что нового в Kotlin 1.8.0-RC2

Дата выпуска: 20 декабря 2022 года

Этот документ не охватывает все функции выпуска Early Access Preview (EAP), но выделяет новые функции и некоторые основные улучшения. Полный список изменений см. в журнале изменений на GitHub.

Выпущен релиз Kotlin 1.8.0-RC2! Вот некоторые важные моменты этого выпуска:

  • Мы удалили старый бэкенд для Kotlin/JVM

  • Теперь поддерживается Xcode 14.1

  • Обеспечена совместимость с Gradle 7.3

  • Добавлены новые экспериментальные функции для JVM: рекурсивное копирование или удаление содержимого каталога

Поддержка IDE

Плагины Kotlin, поддерживающие 1.8.0-RC2, доступны для:

IDE

Поддерживаемые версии

IntelliJ IDEA

2021.3.x, 2022.1.x, 2022.2.x

Android Studio

Dolphin (213), Electric Eel (221), Flamingo (222)

Вы можете обновить свои проекты до 1.8.0-RC2 в IntelliJ IDEA 2022.3 без обновления плагина IDE.

Для миграции существующих проектов в Kotlin 1.8.0-RC2 в IntelliJ IDEA 2022.3 измените версию Kotlin на 1.8.0-RC2 и повторно импортируйте свой проект Gradle или Maven.

Kotlin/JVM

  • Удалён старый бэкенд. (Опция компилятора -Xuse-old-backend больше не поддерживается).

  • Добавлена поддержка байткода Java 19.

Kotlin/Native

  • Добавлена поддержка Xcode 14.1 и watchosDeviceArm64 целевой платформы.

  • Добавлена поддержка новых аннотаций для улучшения взаимосвязи Objective-C и Swift:

    • @ObjCName

    • @HiddenFromObjC

    • @ShouldRefineInSwift

  • Внедрены улучшения плагина Gradle для CocoaPods, так что зарегистрированные Kotlin-фреймворки теперь по умолчанию динамически подключаются.

Kotlin/JS

  • Стабилизирован компилятор IR, и по умолчанию используется инкрементальная компиляция.

  • Устарел старый бэкенд.

  • Добавлены дополнительные параметры отчётности для случаев, когда yarn.lock обновляется в процессе CI.

  • Обновлён плагин Gradle, так что свойство kotlin.js.browser.karma.browsers может использоваться для задания целевых браузерных тестов.

Kotlin Многоплатформенность

  • Добавлена новая структура наборов Android-источников, которую можно включить в плагине Gradle с помощью kotlin.mpp.androidSourceSetLayoutVersion=2.

  • Добавлена новая схема именования KotlinSourceSet сущностей.

  • Изменена схема именования конфигураций компиляции, создаваемых плагином Kotlin Multiplatform Gradle.

Gradle

  • Обеспечена совместимость с Gradle 7.3.

  • Добавлена возможность отключения кеширования с помощью kotlin.daemon.useFallbackStrategy.

  • Доступны параметры компилятора Kotlin как свойства Gradle.

  • Минимальная поддерживаемая версия Gradle обновлена до 6.8.3.

  • Минимальная поддерживаемая версия Android Gradle Plugin обновлена до 4.1.3.

Компилятор

Обновлён плагин Lombok-компилятора, теперь он поддерживает аннотацию @Builder.

Стандартная библиотека

  • Обновлена JVM-целевая платформа библиотек в дистрибутиве Kotlin до версии 1.8:

    • Содержимое артефактов kotlin-stdlib-jdk7 и kotlin-stdlib-jdk8 перемещено в kotlin-stdlib.

  • Стабилизированы расширяющие функции для java.util.Optional.

  • Стабилизированы функции:

    • cbrt()

    • toTimeUnit()

    • toDurationUnit()

  • Добавлены новые экспериментальные расширяющие функции для java.nio.file.path, которые могут рекурсивно копировать или удалять содержимое каталога. Требуется опциональный ввод (см. подробности ниже), и их следует использовать только в оценочных целях.

  • Добавлена новая экспериментальная функциональность для TimeMarks, позволяющая elapsedNow одновременно читать из нескольких TimeMarks. Требуется опциональный ввод (см. подробности ниже), и их следует использовать только в оценочных целях.

Чтобы включить экспериментальный API для:

  • java.nio.file.path, используйте @OptIn(kotlin.io.path.ExperimentalPathApi::class) или @kotlin.io.path.ExperimentalPathApi.

  • TimeMarks, используйте @OptIn(ExperimentalTime::class) или @ExperimentalTime.

Как обновить до Kotlin 1.8.0-RC2

Вы можете установить Kotlin 1.8.0-RC2 следующим образом:

  • Если вы используете канал обновления Early Access Preview, IDE предложит автоматическое обновление до 1.8.0-RC2 по мере его появления.

  • Если вы используете канал обновления Stable, вы можете в любое время изменить канал на Early Access Preview, выбрав Tools | Kotlin | Настроить обновления плагина Kotlin в вашем IDE. Затем вы сможете установить последнюю версию предварительного просмотра. Подробные инструкции см. здесь.

После установки 1.8.0-RC2 не забудьте изменить версию Kotlin на 1.8.0-RC2 в ваших скриптах сборки.

Дополнительная информация

Для получения дополнительной информации об этом релизе, см. наш журнал изменений.

Последнее изменение: 10 января 2023 года

© 2010–2023 JetBrains s.r.o. and Kotlin Programming Language contributors
Licensed under the Apache License, Version 2.0.
https://kotlinlang.org/docs/whatsnew-eap.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API