Создать компилятор

Преобразуйте функции @Composable и включите оптимизацию с помощью плагина компилятора Kotlin.
Последнее обновление Стабильный выпуск Кандидат на выпуск Бета-версия Альфа-релиз
7 августа 2024 г. 1.5.15 - - -

Структура

Compose — это комбинация 7 идентификаторов групп Maven в androidx . Каждая группа содержит целевой подмножество функций, каждая из которых имеет свой собственный набор примечаний к выпуску.

В этой таблице описаны группы и ссылки на каждый набор примечаний к выпуску.

Группа Описание
сочинить.анимацию Создавайте анимацию в своих приложениях Jetpack Compose, чтобы улучшить взаимодействие с пользователем.
compose.compiler Преобразуйте функции @Composable и включите оптимизацию с помощью плагина компилятора Kotlin.
compose.foundation Создавайте приложения Jetpack Compose с готовыми к использованию стандартными блоками и расширяйте основу для создания собственных элементов системы проектирования.
составить.материал Создавайте пользовательские интерфейсы Jetpack Compose с готовыми к использованию компонентами Material Design. Это точка входа более высокого уровня в Compose, предназначенная для предоставления компонентов, соответствующих описанным на сайте www.material.io.
Compose.material3 Создавайте пользовательские интерфейсы Jetpack Compose с помощью компонентов Material Design 3 — следующего этапа развития Material Design. Material 3 включает в себя обновленные темы и компоненты, а также функции персонализации Material You, такие как динамический цвет, и разработан с учетом нового визуального стиля Android 12 и системного пользовательского интерфейса.
Compose.runtime Фундаментальные строительные блоки модели программирования Compose и управления состоянием, а также основная среда выполнения для целевого подключаемого модуля Compose Compiler.
Compose.ui Фундаментальные компоненты пользовательского интерфейса, необходимые для взаимодействия с устройством, включая макет, рисование и ввод.

Объявление зависимостей

Чтобы добавить зависимость от Compose, вам необходимо добавить в свой проект репозиторий Google Maven. Для получения дополнительной информации прочтите репозиторий Google Maven .

Добавьте зависимости для нужных вам артефактов в файл build.gradle для вашего приложения или модуля:

Groovy

android {
    buildFeatures {
        compose true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.5.15"
    }

    kotlinOptions {
        jvmTarget = "19"
    }
}

Kotlin

android {
    buildFeatures {
        compose = true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.5.15"
    }

    kotlinOptions {
        jvmTarget = "19"
    }
}

Дополнительные сведения о зависимостях см. в разделе Добавление зависимостей сборки .

Обратная связь

Ваши отзывы помогают сделать Jetpack лучше. Дайте нам знать, если вы обнаружите новые проблемы или у вас есть идеи по улучшению этой библиотеки. Пожалуйста, ознакомьтесь с существующими проблемами в этой библиотеке, прежде чем создавать новую. Вы можете добавить свой голос к существующей проблеме, нажав кнопку со звездочкой.

Создать новую задачу

Дополнительную информацию см . в документации по системе отслеживания проблем .

Версия 1.5

Версия 1.5.15

7 августа 2024 г.

Выпущены androidx.compose.compiler:compiler:1.5.15 и androidx.compose.compiler:compiler-hosted:1.5.15 . Версия 1.5.15 содержит эти коммиты .

  • Эта версия компилятора ориентирована на Kotlin 1.9.25.

Версия 1.5.14

14 мая 2024 г.

Выпущены androidx.compose.compiler:compiler:1.5.14 и androidx.compose.compiler:compiler-hosted:1.5.14 . Версия 1.5.14 содержит эти коммиты .

Эта версия компилятора ориентирована на Kotlin 1.9.24.

Исправления ошибок

  • Убедитесь, что встроенное тело реализуется, когда исходная информация отключена. ( Идддб8 )

Версия 1.5.13

1 мая 2024 г.

Выпущены androidx.compose.compiler:compiler:1.5.13 и androidx.compose.compiler:compiler-hosted:1.5.13 . Версия 1.5.13 содержит эти коммиты .

Новые возможности

  • Сильный пропуск больше не считается экспериментальным и безопасен для использования в производстве. В следующем выпуске это станет поведением по умолчанию. ( I6c8c4 )

Исправления ошибок

  • Исправлена ​​двоичная совместимость для функций @Composable с параметрами класса значений, которые имеют значение по умолчанию и оборачивают непримитивное значение. ( I89465
  • Исправления для компиляции JS и Native из мультиплатформенной версии Compose. Полную информацию см. в диапазоне фиксации выше.

Версия 1.5.12

17 апреля 2024 г.

androidx.compose.compiler:compiler:1.5.12 и androidx.compose.compiler:compiler-hosted:1.5.12 выпущены. Версия 1.5.12 содержит эти коммиты .

Исправления ошибок

  • Устраняет проблему с инкрементной компиляцией с Kotlin 1.9.23. ( Еслика55 )
  • Исправлены типы, не допускающие значения NULL, в параметрах значений для непримитивных встроенных классов. ( Ie6bb5 )

Версия 1.5.11

20 марта 2024 г.

androidx.compose.compiler:compiler:1.5.11 и androidx.compose.compiler:compiler-hosted:1.5.11 выпущены. Версия 1.5.11 содержит эти коммиты .

Примечания

  • Начиная с этой версии, компилятор теперь будет вызывать startReplaceGroup вместо startReplacableGroup , когда модуль компилируется со средой выполнения, содержащей этот метод. startReplaceGroup был представлен во время выполнения в Compose Runtime 1.7.0-alpha03 . Вызовы startRestartGroup генерируются только при настройке среды выполнения 1.7.0-alpha03 или более поздних версий.

  • Вызов startReplaceGroup вместо startReplaceableGroup позволяет среде выполнения обнаруживать изменения более эффективно, но может повлиять на порядок, в котором изменения обнаруживаются Composer и отправляются Applier . Это может привести к незначительным изменениям в поведении, если Applier полагается на порядок обнаружения этих операций.

Новые возможности

  • Поддержка Котлина 1.9.23

Исправления ошибок

  • Исправлена ​​ошибка, из-за которой вложенные внешние универсальные типы выводились как нестабильные. ( I3437f , б/327643787 )
  • Поддержка нескольких файлов конфигурации стабильности. ( I8db14 , б/325326744 )
  • Компилятор Compose теперь корректно преобразует переопределенные функции, рекурсивно проходя по базовым классам/переопределениям. ( I2c9f9 , б/316196500 )
  • Убедитесь, что мемоизация ссылок на функции не пытается захватить неявных родителей локальных объявлений, когда они не используются напрямую. ( Ib1267 )
  • Исправлена ​​генерация кода для компонуемой перекрестной лямбды (эту ошибку трудно обнаружить без включенной опции «nonSkippingGroupOptimization»). ( Icb2fd , б/325502738 )

Версия 1.5.10

21 февраля 2024 г.

Выпущены androidx.compose.compiler:compiler:1.5.10 и androidx.compose.compiler:compiler-hosted:1.5.10 . Версия 1.5.10 содержит эти коммиты.

Исправления ошибок

  • Поддержка живых литералов внутри блоков инициализации. ( б/320397488 )
  • Используйте параметр диспетчера, чтобы проверить, находится ли функция внутри локального класса ( b/323123439 ).

Версия 1.5.9

7 февраля 2024 г.

Выпущены androidx.compose.compiler:compiler:1.5.9 и androidx.compose.compiler:compiler-hosted:1.5.9 . Версия 1.5.9 содержит эти коммиты.

Исправления ошибок

  • Исправлены составные вызовы в инициализаторе анонимных объектов. ( б/320261458 , 96315c )
  • Считайте рекурсивные локальные объявления захватами. ( б/318745941 , e7b4b0 )
  • Исправлена ​​ошибка, из-за которой встроенное запоминание меняло поведение, связанное со ссылками на методы Java, принудительно устанавливая .changed для типов функций со встроенным запоминанием. ( б/319810819 , 77128e )
  • Добавлена ​​экспериментальная оптимизация, которая удалит группы вокруг функций, которые нельзя пропустить, например, явно помеченных как @NonSkippableComposable , и функций, которые неявно нельзя пропустить, таких как встроенные функции и функции, которые возвращают значение, отличное от Unit, например remember .
  • Эту оптимизацию можно включить, передав параметр плагина -P plugin:androidx.compose.compiler.plugins.kotlin:nonSkippingGroupOptimization=true компилятору Kotlin. ( I1688f )

Версия 1.5.8

10 января 2024 г.

Выпущены androidx.compose.compiler:compiler:1.5.8 и androidx.compose.compiler:compiler-hosted:1.5.8 . Версия 1.5.8 содержит эти коммиты.

Новые возможности

  • Поддержка Котлина 1.9.22

Исправления ошибок

  • Исправлена ​​ошибка, из-за которой сборка Compose Compiler выдавала исключения при сборке с использованием Java21. Пользователей, использующих Compose Compiler из Google Maven (т. е. не создающих его самостоятельно), эта ошибка никогда не затрагивала. ( б/316644294 )
  • Исправлена ​​ошибка, из-за которой сообщалось об ошибке COMPOSABLE_EXPECTED для некоторых вызывающих невстроенных лямбда-выражений. ( б / 309364913 )
  • Добавить ошибку компиляции для параметров по умолчанию в открытых функциях (раньше она была ограничена только для абстрактных функций). Compose на данный момент не поддерживает замену параметров по умолчанию из переопределенных функций, а переопределение составной функции параметрами по умолчанию не удавалось во время выполнения. Используйте @Suppress("ABSTRACT_COMPOSABLE_DEFAULT_PARAMETER_VALUE") для подавления, но учтите, что переопределение такой функции без указания значения по умолчанию для параметра приведет к сбою во время выполнения. ( b/317490247 )
  • Исправлена ​​ошибка во встроенной памяти, которая препятствовала правильному распространению значений. ( б / 316327367 )

Внешний вклад

  • Исправьте опечатку в документации. ( аосп/288106 )

Версия 1.5.7

19 декабря 2023 г.

Выпущены androidx.compose.compiler:compiler:1.5.7 и androidx.compose.compiler:compiler-hosted:1.5.7 . Версия 1.5.7 содержит эти коммиты.

Исправления ошибок

  • Исправлен сбой во время выполнения компоновки, когда ключевой параметр remember() вызывает составную функцию ( b/315855015 ).
  • Исправлен сбой во время выполнения Compose при использовании return@ . ( б / 315821171 )
  • Избегайте использования абсолютных путей в ключах запоминания, что позволяет лучше использовать кэш сборки. ( б/313937484 )

Версия 1.5.6

6 декабря 2023 г.

Выпущены androidx.compose.compiler:compiler:1.5.6 и androidx.compose.compiler:compiler-hosted:1.5.6 . Версия 1.5.6 содержит эти коммиты.

Новые возможности

  • Поддержка Котлина 1.9.21

Исправления ошибок

  • Включить встроенное запоминание — преобразование компилятора, которое встраивает запоминание в плагин компилятора Compose и заменяет сравнения .equals на сравнения int мета-параметров для стабильных параметров. Это приводит к тому, что во время выполнения используется меньше слотов и выполняется меньше сравнений. Эту опцию можно отключить, указав аргумент плагина компилятора: -P plugin:androidx.compose.compiler.plugins.kotlin:intrinsicRemember=false . ( Если675f )
  • Исправлено запоминание адаптированных ссылок на функции и встроенных аргументов. ( б/312738720 )
  • Реализация групп при выходе из встроенного вызова функции ( b/312242547 )

Внешний вклад

  • Исправлен сбой во время выполнения k/native и k/wasm из-за отсутствия оператора return в составных функциях, когда он является последним оператором и возвращает нулевую константу ( aosp/2835716 ).

Версия 1.5.5

29 ноября 2023 г.

Выпущены androidx.compose.compiler:compiler:1.5.5 и androidx.compose.compiler:compiler-hosted:1.5.5 . Версия 1.5.5 содержит эти коммиты.

Исправления ошибок

  • Исправлен сбой во время поиска переопределенных составных типов ( Ib6d2c , b/297665426 )
    • Добавьте stabilityConfigurationPath к известным параметрам (ранее ошибка не позволяла использовать флаг файла конфигурации). ( б/309765121 )
    • Исправления мемоизации ( I081d1 , I4d7bf )
    • Исправление рекомпозиции путем учета неопределенного состояния параметра во внутренней памяти ( b/263402091 )
    • Исправлена ​​информация о строке отладки для внутреннего запоминания ( Ic8cf5 ).
    • Исправлен сбой (не удалось понизить IR) во время поиска переопределенных составных типов во время компиляции ( b/297665426 )

Внешний вклад

  • Запомнить ссылки на стабильные функции с аргументами ( I4d7bf , b/302680514 )

Версия 1.5.4

7 ноября 2023 г.

Выпущены androidx.compose.compiler:compiler:1.5.4 и androidx.compose.compiler:compiler-hosted:1.5.4 . Версия 1.5.4 содержит эти коммиты.

Обновления зависимостей

  • Compose Compiler теперь совместим с Kotlin 1.9.20.

Новые возможности

  • Добавьте экспериментальную опцию для включения режима сильного пропуска. Режим сильного пропуска позволяет пропускать составные элементы с нестабильными параметрами. Кроме того, запоминаются лямбды с нестабильными захватами. Эта функция является экспериментальной и не считается готовой к промышленному использованию. ( 22421е )
  • Добавьте флаг, чтобы включить/отключить информацию об источнике/трассировке. ( 4d45f09 )
  • Разрешить настройку стабильности внешних классов через файл конфигурации. ( Если40eb )

Исправления ошибок

  • Исправлен ранний выход из составных функций, когда исходная информация не собрана. ( fe6267 )
  • Исправлено продолжение компонуемых функций. ( 948362 )
  • Исправлено разрешение, когда составные функции вызываются из вызова функции, имеющей несколько перегрузок, зависящих от типа возвращаемого выражения. ( 2d36d0 )
  • Исправлена ​​запоминание, когда ссылка на функцию не имеет получателя отправки. ( fc2326 )
  • Исправлена ​​грязная проверка, которая в некоторых ситуациях препятствовала перекомпоновке лямбда-выражений. ( дб3699 )
  • Исправлена ​​стабильность при постепенной компиляции между модулями. ( 7d3e127 )
  • Сократите область действия @DontMemoize только до лямбда-выражений. ( 7a7fa52 )
  • Исправлена ​​ошибка, из-за которой переменные фиксировались неправильно при использовании интерфейса Composable fun в качестве лямбды. ( 5ae3556 )

Внешний вклад

  • Используйте символ структурного равенства для числового и нулевого сравнения ( c612a0 ).

Версия 1.5.3

29 августа 2023 г.

androidx.compose.compiler:compiler:1.5.3 , androidx.compose.compiler:compiler-daemon:1.5.3 и androidx.compose.compiler:compiler-hosted:1.5.3 выпущены. Версия 1.5.3 содержит эти коммиты.

Обновление зависимостей

  • Версия Kotlin обновлена ​​до 1.9.10.

Версия 1.5.2

23 августа 2023 г.

androidx.compose.compiler:compiler:1.5.2 , androidx.compose.compiler:compiler-daemon:1.5.2 и androidx.compose.compiler:compiler-hosted:1.5.2 выпущены. Версия 1.5.2 содержит эти коммиты.

Исправления ошибок

  • Вставьте номера строк для операторов возврата в составные функции, возвращающие константы. ( I42d89 )
  • Исправлена ​​утечка памяти, вызванная переключением на новую точку входа плагина компилятора. ( 4f0a101 )
  • Прекратите трансформировать некомпонуемые забавные интерфейсы в компиляторе Compose. Это приводит к тому, что забавные интерфейсы обрабатываются так же, как и лямбды, включая правила запоминания. ( 28b3ce9 )
  • Используйте тип аргумента vararg для определения стабильности на месте вызова. ( BC83645 )

Версия 1.5.1

26 июля 2023 г.

androidx.compose.compiler:compiler:1.5.1 , androidx.compose.compiler:compiler-daemon:1.5.1 и androidx.compose.compiler:compiler-hosted:1.5.1 выпущены. Версия 1.5.1 содержит эти коммиты.

Исправления ошибок

  • Исправлены маркеры событий трассировки композиции в функциях @ReadOnlyComposable с ранними возвратами, которые приводили к повреждению трассировки.

Версия 1.5.0

18 июля 2023 г.

androidx.compose.compiler:compiler:1.5.0 , androidx.compose.compiler:compiler-daemon:1.5.0 и androidx.compose.compiler:compiler-hosted:1.5.0 выпущены. Версия 1.5.0 содержит эти коммиты.

Экспериментальная поддержка K2

  • Компилятор Compose 1.5.0 обеспечивает экспериментальную поддержку компилятора K2 . Некоторые функции Compose пока не поддерживаются K2 и появятся в будущих версиях компилятора.

Важные изменения с версии 1.4.0

  • Версия Kotlin обновлена ​​до 1.9.0.
  • Именованные аргументы для лямбда-вызовов @Composable устарели. Эта функция зависит от внутренних API-интерфейсов компилятора и не будет поддерживаться K2.
  • Добавлена ​​диагностика для проверки аннотации @Composable для ожидаемых/фактических вызовов. Ожидается, что оба объявления будут иметь соответствующие аннотации.

Версия 1.4.8

Версия 1.4.8

28 июня 2023 г.

androidx.compose.compiler:compiler:1.4.8 , androidx.compose.compiler:compiler-daemon:1.4.8 и androidx.compose.compiler:compiler-hosted:1.4.8 выпущены. Версия 1.4.8 содержит эти коммиты.

Новые возможности

  • Целевая версия компилятора Kotlin увеличена до 1.8.22.

Исправления ошибок

  • Улучшено сообщение об ошибке для переопределений @Composable . Теперь он правильно указывает на несоответствие аннотаций.
  • Предупреждайте о избыточной аннотации @Composable для встроенных лямбда-выражений, которые не следует помечать как составные. Эта функция не будет поддерживаться компилятором K2.

Версия 1.4.7

Версия 1.4.7

3 мая 2023 г.

androidx.compose.compiler:compiler:1.4.7 , androidx.compose.compiler:compiler-daemon:1.4.7 и androidx.compose.compiler:compiler-hosted:1.4.7 выпущены. Версия 1.4.7 содержит эти коммиты.

Новые возможности

  • Поддержка Котлина 1.8.21
  • Добавлены примитивные версии State API, позволяющие отслеживать значения Int, Long, Float и Double в объектах State без штрафов за автобоксинг.

Версия 1.4.6

Версия 1.4.6

19 апреля 2023 г.

androidx.compose.compiler:compiler:1.4.6 , androidx.compose.compiler:compiler-daemon:1.4.6 и androidx.compose.compiler:compiler-hosted:1.4.6 выпущены. Версия 1.4.6 содержит эти коммиты.

Исправления ошибок

  • Compose Compiler теперь зависит от Java11 (вместо Java17, требуемого Compose Compiler версии 1.4.5), чтобы лучше поддерживать пользователей, которые все еще используют старые версии Java.

Версия 1.4.5

Версия 1.4.5

12 апреля 2023 г.

androidx.compose.compiler:compiler:1.4.5 , androidx.compose.compiler:compiler-daemon:1.4.5 и androidx.compose.compiler:compiler-hosted:1.4.5 выпущены. Версия 1.4.5 содержит эти коммиты.

ПРИМЕЧАНИЕ. Эта сборка Compose Compiler требует, чтобы ваша среда сборки использовала Java 17+. Основываясь на отзывах пользователей, мы вернем это требование в Java 11 и выпустим еще одну версию (1.4.6), чтобы лучше поддерживать пользователей, использующих более старые версии Java.

Новые возможности

Поддержка Котлина 1.8.20

Исправления ошибок

  • Распространите требование переопределения составного оператора вызова на классы и интерфейсы, которые расширяют лямбда-интерфейсы с соответствующими аннотациями. f8f2f78a1a769c2373201027f12700e772e4e97e
  • Позволяет использовать аннотацию @Composable для оператора getValue и помечает сгенерированный метод получения для делегата как компонуемый в IR, чтобы обеспечить его правильное преобразование в дальнейшем. f174f6ee60ca957d5cb6d19a5bd02a88267cdf40
  • Исправлена ​​внутренняя ошибка выполнения компоновки (ожидался вызов applyChanges() ) для встроенных функций. б/274786923
  • Избегайте перехвата ProcessCancelledException , поскольку оно имеет особое значение в IDE. б/274725600

Внешний вклад

Версия 1.4.4

Версия 1.4.4

22 марта 2023 г.

androidx.compose.compiler:compiler:1.4.4 , androidx.compose.compiler:compiler-daemon:1.4.4 и androidx.compose.compiler:compiler-hosted:1.4.4 выпущены. Версия 1.4.4 содержит эти коммиты.

Исправления ошибок

  • Исправление составных встроенных лямбда-возвратов ( 72172b ).
  • Разрешить составным объектам возвращать Nothing (не генерировать ошибку при использовании TODO в составной функции) 3aea8d )

Версия 1.4.3

Версия 1.4.3

22 февраля 2023 г.

androidx.compose.compiler:compiler:1.4.3 выпущен. Версия 1.4.3 содержит эти коммиты.

Исправления ошибок

  • Исправляет условные составные вызовы в аргументах составных вызовов ( Ie93edb ).

Версия 1.4.2

Версия 1.4.2

8 февраля 2023 г.

androidx.compose.compiler:compiler:1.4.2 выпущен. Версия 1.4.2 содержит эти коммиты.

Новые возможности

  • Поддержка Котлина 1.8.10

Исправления ошибок

  • Добавляйте группы в тело непропускаемых лямбда-выражений, чтобы избежать ошибки рекомпозиции.

Версия 1.4.1

Версия 1.4.1

8 февраля 2023 г.

androidx.compose.compiler:compiler:1.4.1 выпущен. Версия 1.4.1 содержит эти коммиты.

Исправления ошибок

  • Отключите внутреннюю оптимизацию запоминания, которая ранее приводила к нескольким ошибкам генерации кода.
  • Отключите встроенную память в функциях, содержащих параметр vararg.
  • Исправление ошибочного пропуска в компонуемых объектах с параметрами по умолчанию.
  • Добавьте сообщение об ошибке защитного резерва, если проверка совместимости Kotlin не удалась.
  • Удалить генерацию пропускаемого кода из встроенной лямбды

Версия 1.4.0

17 января 2023 г.

Выпущен androidx.compose.compiler:compiler:1.4.0 . Версия 1.4.0 содержит эти коммиты.

Важные изменения с версии 1.3.0

  • Поддержка Котлина 1.8.0
  • Внутреннее запоминание отключено
  • Класс данных инструментов пользовательского интерфейса Group теперь имеет поле isInline , которое указывает, предназначена ли группа для вызова встроенной составной функции. Если isInline имеет true , то вызывается встроенная компонуемая функция. Однако значение может быть ложным для вызовов встроенных компонуемых функций из модулей, скомпилированных с помощью версии подключаемого модуля компилятора Compose, которая не генерирует информацию о встроенных функциях.
  • ImmutableCollection и их братья и сестры Persistent теперь считаются стабильными.
  • Новый параметр в AnimatedContent для метки инструмента.
  • Исправлена ​​ошибка генерации кода для встроенной лямбды.

Версия 1.4.0-альфа02

11 ноября 2022 г.

Выпущен androidx.compose.compiler:compiler:1.4.0-alpha02 . Версия 1.4.0-alpha02 содержит эти коммиты.

Новые возможности

  • Добавлена ​​поддержка Котлина 1.7.21

Версия 1.4.0-альфа01

9 ноября 2022 г.

Выпущен androidx.compose.compiler:compiler:1.4.0-alpha01 . Версия 1.4.0-alpha01 содержит эти коммиты.

Исправления ошибок

  • Исправлена ​​возможность раннего возврата из встроенных компонуемых функций ( b/255350755 ).
  • Исправлена ​​ошибка при понижении приманки, из-за которой нарушалась поддержка Kotlin/JS в Compose ( 6a40f8 ).

Версия 1.3

Версия 1.3.2

4 октября 2022 г.

androidx.compose.compiler:compiler:1.3.2 выпущен. Версия 1.3.2 содержит эти коммиты.

Новая функция

  • Эта версия включает обновление Kotlin 1.7.20.

Версия 1.3.1

7 сентября 2022 г.

androidx.compose.compiler:compiler:1.3.1 выпущен. Версия 1.3.1 содержит эти коммиты.

Исправления ошибок

  • Исправлено исключение IllegalStateException , из-за которого компилятор Compose в некоторых случаях ошибочно помечал типы модулей как составные. ( б / 237863365 )
  • Пользователи теперь должны указывать предпочитаемую версию Kotlin при отключении проверки версии компилятора ( I9e5e2 ).

Версия 1.3.0

10 августа 2022 г.

Выпущен androidx.compose.compiler:compiler:1.3.0 . Версия 1.3.0 содержит эти коммиты.

Версия 1.3.0-rc02

3 августа 2022 г.

Выпущен androidx.compose.compiler:compiler:1.3.0-rc02 . Версия 1.3.0-rc02 содержит эти коммиты.

Версия 1.3.0-rc01

27 июля 2022 г.

Выпущен androidx.compose.compiler:compiler:1.3.0-rc01 . Версия 1.3.0-rc01 содержит эти коммиты.

Версия 1.3.0-бета01

20 июля 2022 г.

Выпущен androidx.compose.compiler:compiler:1.3.0-beta01 . Версия 1.3.0-beta01 содержит эти коммиты.

Новые возможности

  • Добавлена ​​поддержка Котлина 1.7.10

Версия 1.2

Версия 1.2.0

29 июня 2022 г.

androidx.compose.compiler:compiler:1.2.0 выпущен. Версия 1.2.0 содержит эти коммиты.

Важные изменения с версии 1.1.0

Версия 1.2.0-rc02

22 июня 2022 г.

Выпущен androidx.compose.compiler:compiler:1.2.0-rc02 . Версия 1.2.0-rc02 содержит эти коммиты.

Исправления ошибок

  • Удалена генерация компонуемого кода событий трассировки ( aosp/2127922 ).

Версия 1.2.0-rc01

15 июня 2022 г.

Выпущен androidx.compose.compiler:compiler:1.2.0-rc01 . Версия 1.2.0-rc01 содержит эти коммиты.

Версия 1.2.0-бета03

1 июня 2022 г.

Выпущен androidx.compose.compiler:compiler:1.2.0-beta03 . Версия 1.2.0-beta03 содержит эти коммиты.

Версия 1.2.0-бета02

18 мая 2022 г.

androidx.compose.compiler:compiler:1.2.0-beta02 выпущен. Версия 1.2.0-beta02 содержит эти коммиты.

Версия 1.2.0-бета01

11 мая 2022 г.

androidx.compose.compiler:compiler:1.2.0-beta01 выпущен. Версия 1.2.0-beta01 содержит эти коммиты.

  • Это первая бета-версия 1.2! Никаких изменений со времени последней альфы нет.

Новые возможности

  • Добавлена ​​поддержка Котлина 1.6.21

Версия 1.2.0-альфа08

20 апреля 2022 г.

Выпущен androidx.compose.compiler:compiler:1.2.0-alpha08 . Версия 1.2.0-alpha08 содержит эти коммиты.

Версия 1.2.0-альфа07

6 апреля 2022 г.

Выпущен androidx.compose.compiler:compiler:1.2.0-alpha07 . Версия 1.2.0-alpha07 содержит эти коммиты.

Версия 1.2.0-альфа06

23 марта 2022 г.

Выпущен androidx.compose.compiler:compiler:1.2.0-alpha06 . Версия 1.2.0-alpha06 содержит эти коммиты.

Версия 1.2.0-альфа05

9 марта 2022 г.

Выпущен androidx.compose.compiler:compiler:1.2.0-alpha05 . Версия 1.2.0-alpha05 содержит эти коммиты.

Версия 1.2.0-альфа04

23 февраля 2022 г.

Выпущен androidx.compose.compiler:compiler:1.2.0-alpha04 . Версия 1.2.0-alpha04 содержит эти коммиты.

Версия 1.2.0-альфа03

9 февраля 2022 г.

Выпущен androidx.compose.compiler:compiler:1.2.0-alpha03 . Версия 1.2.0-alpha03 содержит эти коммиты.

Версия 1.2.0-альфа02

26 января 2022 г.

Выпущен androidx.compose.compiler:compiler:1.2.0-alpha02 . Версия 1.2.0-alpha02 содержит эти коммиты.

Версия 1.2.0-альфа01

12 января 2022 г.

androidx.compose.compiler:compiler:1.2.0-alpha01 выпущен. Версия 1.2.0-alpha01 содержит эти коммиты.

Новые возможности

  • Добавлена ​​поддержка Kotlin 1.6.10 .

Версия 1.1

Версия 1.1.1

23 февраля 2022 г.

androidx.compose.compiler:compiler:1.1.1 выпущен. Версия 1.1.1 содержит эти коммиты.

Исправления ошибок

  • Исправьте NullPointerException в androidx.compose.ui.platform.RenderNodeLayer.updateDisplayList ( aosp/1947059 , b/206677462 ).
  • Исправлен сбой, вызванный содержимым буфера обмена при чтении из буфера обмена на Android. ( I06020 , б/197769306 )
  • Исправлено RTL в LazyVerticalGrid ( aosp/1931080 , b/207510535 )

Версия 1.1.0

9 февраля 2022 г.

androidx.compose.compiler:compiler:1.1.0 выпущен. Версия 1.1.0 содержит эти коммиты.

Важные изменения с версии 1.0.0

  • Стабильная поддержка эффекта прокрутки Android 12.
  • Улучшения в сенсорном изменении целевого размера.
  • Обратите внимание, что в Compose 1.0 компоненты Material будут расширять свое пространство макета, чтобы соответствовать рекомендациям по доступности Material для сенсорного размера цели . Например, цель касания кнопки расширится до минимального размера 48x48dp , даже если вы установите меньший размер кнопки. Это приводит Compose Material в соответствие с тем же поведением компонентов Material Design, обеспечивая единообразное поведение при смешивании представлений и Compose. Это изменение также гарантирует, что при создании пользовательского интерфейса с использованием компонентов Compose Material будут соблюдены минимальные требования к доступности сенсорной цели.
  • Стабильная поддержка Navigation Rail
  • Стабильный уровень ряда ранее экспериментальных API.
  • Поддержка новых версий Kotlin

Версия 1.1.0-rc03

26 января 2022 г.

Выпущен androidx.compose.compiler:compiler:1.1.0-rc03 . Версия 1.1.0-rc03 содержит эти коммиты.

Исправления ошибок

  • Обновлено для поддержки Compose Material 1.1.0-rc03.

Версия 1.1.0-rc02

16 декабря 2021 г.

Выпущен androidx.compose.compiler:compiler:1.1.0-rc02 . Версия 1.1.0-rc02 содержит эти коммиты.

Обновления зависимостей

  • Compose Compiler 1.1.0-rc02 совместим с Kotlin 1.6.10 .

Версия 1.1.0-rc01

15 декабря 2021 г.

androidx.compose.compiler:compiler:1.1.0-rc01 выпущен. Версия 1.1.0-rc01 содержит эти коммиты.

Изменения зависимостей

  • Compose Compiler 1.1.0-rc01 совместим с Kotlin 1.6.0 .
  • Совместимая сборка 1.6.10 доступна через SNAPSHOTs androidx.dev с buildId 8003490. Следующий фрагмент зависимости настроит SNAPSHOT для компилятора Compose:

    Добавьте следующий фрагмент в корневой файл build.gradle вашего проекта:

    buildscript {
        repositories {
            google()
            jcenter()
            maven { url 'https://androidx.dev/snapshots/builds/8003490/artifacts/repository' }
        }
    }
    

    Добавьте следующий фрагмент в файл build.gradle для вашего приложения или модуля, использующего Compose:

    android {
        composeOptions {
            kotlinCompilerExtensionVersion = "1.2.0-SNAPSHOT"
        }
    }
    

Версия 1.1.0-beta04

1 декабря 2021 г.

Выпущен androidx.compose.compiler:compiler:1.1.0-beta04 . Версия 1.1.0-beta04 содержит эти коммиты.

Новые возможности

  • Обновлен для совместимости с Kotlin 1.6.0

Версия 1.1.0-beta03

17 ноября 2021 г.

Выпущен androidx.compose.compiler:compiler:1.1.0-beta03 . Версия 1.1.0-beta03 содержит эти коммиты.

Версия 1.1.0-beta02

3 ноября 2021 г.

Выпущен androidx.compose.compiler:compiler:1.1.0-beta02 . Версия 1.1.0-beta02 содержит эти коммиты.

Версия 1.1.0-бета01

27 октября 2021 г.

Выпущен androidx.compose.compiler:compiler:1.1.0-beta01 . Версия 1.1.0-beta01 содержит эти коммиты.

Версия 1.1.0-альфа06

13 октября 2021 г.

Выпущен androidx.compose.compiler:compiler:1.1.0-alpha06 . Версия 1.1.0-alpha06 содержит эти коммиты.

Версия 1.1.0-альфа05

29 сентября 2021 г.

Выпущен androidx.compose.compiler:compiler:1.1.0-alpha05 . Версия 1.1.0-alpha05 содержит эти коммиты.

Версия 1.1.0-альфа04

15 сентября 2021 г.

Выпущен androidx.compose.compiler:compiler:1.1.0-alpha04 . Версия 1.1.0-alpha04 содержит эти коммиты.

Версия 1.1.0-альфа03

1 сентября 2021 г.

Выпущен androidx.compose.compiler:compiler:1.1.0-alpha03 . Версия 1.1.0-alpha03 содержит эти коммиты.

Новые возможности

  • Компилятор Compose теперь поддерживает более старые версии среды выполнения Compose (1.0). До этого изменения компилятор Compose был совместим только со средой выполнения Compose той же или более поздней версии. После этого изменения компилятор Compose совместим со старой версией среды выполнения Compose (1.0). ( аосп/1796968 )
  • Обновлен Compose 1.1.0-alpha03 для зависимости от Kotlin 1.5.30 . ( I74545 )

Версия 1.1.0-альфа02

18 августа 2021 г.

Выпущен androidx.compose.compiler:compiler:1.1.0-alpha02 . Версия 1.1.0-alpha02 содержит эти коммиты.

Версия 1.1.0-альфа01

4 августа 2021 г.

androidx.compose.compiler:compiler:1.1.0-alpha01 выпущен. Версия 1.1.0-alpha01 содержит эти коммиты.

Версия 1.0

Версия 1.0.5

3 ноября 2021 г.

Выпущен androidx.compose.compiler:compiler:1.0.5 . Версия 1.0.5 содержит эти коммиты.

Исправления ошибок

  • Исправлен сбой при отслеживании экземпляров производныхStateOf. ( аосп/1792247 )

Версия 1.0.4

13 октября 2021 г.

Выпущен androidx.compose.compiler:compiler:1.0.4 . Версия 1.0.4 содержит эти коммиты.

Обновления зависимостей

  • Обновлено в зависимости от Kotlin 1.5.31

Версия 1.0.3

29 сентября 2021 г.

Выпущен androidx.compose.compiler:compiler:1.0.3 . Версия 1.0.3 содержит эти коммиты.

Обновления зависимостей

  • Обновлено в зависимости от Kotlin 1.5.30

Версия 1.0.2

1 сентября 2021 г.

Выпущен androidx.compose.compiler:compiler:1.0.2 . Версия 1.0.2 содержит эти коммиты.

Обновлено для поддержки версии Compose 1.0.2 . Compose 1.0.2 по-прежнему совместим с Kotlin 1.5.21 .

Версия 1.0.1

4 августа 2021 г.

androidx.compose.compiler:compiler:1.0.1 выпущен. Версия 1.0.1 содержит эти коммиты.

Обновления зависимостей

  • Обновлено в зависимости от Kotlin 1.5.21 .

Версия 1.0.0

28 июля 2021 г.

Выпущен androidx.compose.compiler:compiler:1.0.0 . Версия 1.0.0 содержит эти коммиты.

Основные особенности версии 1.0.0

Это первая стабильная версия Compose. Более подробную информацию можно найти в официальном блоге Compose Release !

Версия 1.0.0-rc02

14 июля 2021 г.

Выпущен androidx.compose.compiler:compiler:1.0.0-rc02 . Версия 1.0.0-rc02 содержит эти коммиты.

Версия 1.0.0-rc01

1 июля 2021 г.

Выпущен androidx.compose.compiler:compiler:1.0.0-rc01 . Версия 1.0.0-rc01 содержит эти коммиты.

Версия 1.0.0-beta09

16 июня 2021 г.

Выпущен androidx.compose.compiler:compiler:1.0.0-beta09 . Версия 1.0.0-beta09 содержит эти коммиты.

Версия 1.0.0-beta08

2 июня 2021 г.

Выпущен androidx.compose.compiler:compiler:1.0.0-beta08 . Версия 1.0.0-beta08 содержит эти коммиты.

Версия 1.0.0-beta07

18 мая 2021 г.

Выпущен androidx.compose.compiler:compiler:1.0.0-beta07 . Версия 1.0.0-beta07 содержит эти коммиты.

Версия 1.0.0-beta06

5 мая 2021 г.

Выпущен androidx.compose.compiler:compiler:1.0.0-beta06 . Версия 1.0.0-beta06 содержит эти коммиты.

Версия 1.0.0-бета05

21 апреля 2021 г.

Выпущен androidx.compose.compiler:compiler:1.0.0-beta05 . Версия 1.0.0-beta05 содержит эти коммиты.

Версия 1.0.0-beta04

7 апреля 2021 г.

Выпущен androidx.compose.compiler:compiler:1.0.0-beta04 . Версия 1.0.0-beta04 содержит эти коммиты.

Версия 1.0.0-бета03

24 марта 2021 г.

Выпущен androidx.compose.compiler:compiler:1.0.0-beta03 . Версия 1.0.0-beta03 содержит эти коммиты.

Версия 1.0.0-beta02

10 марта 2021 г.

Выпущен androidx.compose.compiler:compiler:1.0.0-beta02 . Версия 1.0.0-beta02 содержит эти коммиты.

Версия 1.0.0-бета01

24 февраля 2021 г.

Выпущен androidx.compose.compiler:compiler:1.0.0-beta01 . Версия 1.0.0-beta01 содержит эти коммиты.

Это первый выпуск бета-версии Compose 1.0.0.

Версия 1.0.0-альфа12

10 февраля 2021 г.

Выпущен androidx.compose.compiler:compiler:1.0.0-alpha12 . Версия 1.0.0-alpha12 содержит эти коммиты.

Версия 1.0.0-альфа11

28 января 2021 г.

androidx.compose.compiler:compiler:1.0.0-alpha11 выпущен. Версия 1.0.0-alpha11 содержит эти коммиты.

Версия 1.0.0-альфа10

13 января 2021 г.

androidx.compose.compiler:compiler:1.0.0-alpha10 выпущен. Версия 1.0.0-alpha10 содержит эти коммиты.

Версия 1.0.0-альфа09

16 декабря 2020 г.

Выпущен androidx.compose.compiler:compiler:1.0.0-alpha09 . Версия 1.0.0-alpha09 содержит эти коммиты.

Версия 1.0.0-альфа08

2 декабря 2020 г.

Выпущен androidx.compose.compiler:compiler:1.0.0-alpha08 . Версия 1.0.0-alpha08 содержит эти коммиты.

Версия 1.0.0-альфа07

11 ноября 2020 г.

Выпущен androidx.compose.compiler:compiler:1.0.0-alpha07 . Версия 1.0.0-alpha07 содержит эти коммиты.

Новые возможности

  • Вывод стабильности и распространение . Плагин Compose Compiler будет анализировать типы, которые он компилирует, чтобы сделать вывод, подходит ли он для определенных оптимизаций во время выполнения. Этот предполагаемый результат затем синтезируется в виде метаданных в классе, который будет использоваться компилятором в других модулях. Более того, результат этих выводов во время выполнения передается в метаданных, передаваемых компонуемым вызовам во время композиции. Это потребовало другого протокола метаданных для составных функций, а это означает, что составные функции, скомпилированные с помощью компилятора Alpha07, не будут двоично совместимы с составными функциями, скомпилированными с помощью любой более ранней версии компилятора. ( аосп/1431988 )

Версия 1.0.0-альфа06

28 октября 2020 г.

Выпущен androidx.compose.compiler:compiler:1.0.0-alpha06 . Версия 1.0.0-alpha06 содержит эти коммиты.

Версия 1.0.0-альфа05

14 октября 2020 г.

Выпущен androidx.compose.compiler:compiler:1.0.0-alpha05 . Версия 1.0.0-alpha05 содержит эти коммиты.

Версия 1.0.0-альфа04

1 октября 2020 г.

Выпущен androidx.compose.compiler:compiler:1.0.0-alpha04 . Версия 1.0.0-alpha04 содержит эти коммиты.

androidx.compose:compose-compiler был реорганизован в androidx.compose.compiler:compiler . Это первый релиз в новой группе.

,

Создать компилятор

Преобразуйте функции @Composable и включите оптимизацию с помощью плагина компилятора Kotlin.
Последнее обновление Стабильный выпуск Кандидат на выпуск Бета-версия Альфа-релиз
7 августа 2024 г. 1.5.15 - - -

Структура

Compose — это комбинация 7 идентификаторов групп Maven в androidx . Каждая группа содержит целевой подмножество функций, каждая из которых имеет собственный набор примечаний к выпуску.

Эта таблица объясняет группы и ссылки на каждый набор заметок о выпуске.

Группа Описание
Компостиция. Анимирование Создайте анимации в их JetPack Compet Applications для обогащения пользовательского опыта.
Compose.compiler Преобразовать @composable функции и включить оптимизацию с помощью плагина компилятора Kotlin.
COMOSE.Foundation Напишите JetPack Compose Applications с готовыми к использованию строительных блоков и продлить фундамент для создания собственных систем проектирования.
Compose.material Построить JetPack Compose UI с готовыми к использованию компонентов дизайна материала. Это более высокая точка входа в состав, предназначенную для обеспечения компонентов, которые соответствуют тем, которые описаны на www.material.io.
Compose.material3 Построить JetPack Compose UI с компонентами Material Design 3, следующую эволюцию дизайна материала. Материал 3 включает в себя обновленные тематические и компоненты и материал, которые вы персонализации, такие как динамический цвет, и предназначены для сплоченного с новым визуальным стилем Android 12 и системным пользовательским интерфейсом.
Compose.Runtime Фундаментальные строительные блоки модели программирования Compose и управления состоянием, а также основное время выполнения для плагина компилятора Compose.
compose.ui Фундаментальные компоненты Compose UI, необходимые для взаимодействия с устройством, включая макет, рисунок и вход.

Объявление зависимостей

Чтобы добавить зависимость от сочинения, вы должны добавить репозиторий Google Maven в свой проект. Прочитайте репозиторий Google Maven для получения дополнительной информации.

Добавьте зависимости для артефактов, которые вам нужны в файле build.gradle для вашего приложения или модуля:

Groovy

android {
    buildFeatures {
        compose true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.5.15"
    }

    kotlinOptions {
        jvmTarget = "19"
    }
}

Kotlin

android {
    buildFeatures {
        compose = true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.5.15"
    }

    kotlinOptions {
        jvmTarget = "19"
    }
}

Для получения дополнительной информации о зависимостях см. Добавить зависимости от сборки .

Обратная связь

Ваш отзыв помогает сделать JetPack лучше. Дайте нам знать, если вы обнаружите новые проблемы или у вас есть идеи для улучшения этой библиотеки. Пожалуйста, посмотрите на существующие проблемы в этой библиотеке, прежде чем создать новую. Вы можете добавить свой голос к существующей проблеме, нажав кнопку Star.

Создать новую проблему

Смотрите документацию по трекеру проблемы для получения дополнительной информации.

Версия 1.5

Версия 1.5.15

7 августа 2024 г.

androidx.compose.compiler:compiler:1.5.15 и androidx.compose.compiler:compiler-hosted:1.5.15 выпускаются. Версия 1.5.15 содержит эти коммиты .

  • Этот выпуск компилятора нацелен на Kotlin 1.9.25.

Версия 1.5.14

14 мая 2024 г.

androidx.compose.compiler:compiler:1.5.14 и androidx.compose.compiler:compiler-hosted:1.5.14 выпускаются. Версия 1.5.14 содержит эти коммиты .

Этот выпуск компилятора нацелен на Kotlin 1.9.24.

Исправления ошибок

  • Убедитесь, что встроенный корпус реализован при выключении источника. ( Idddb8 )

Версия 1.5.13

1 мая 2024 г.

androidx.compose.compiler:compiler:1.5.13 и androidx.compose.compiler:compiler-hosted:1.5.13 выпускаются. Версия 1.5.13 содержит эти коммиты .

Новые возможности

  • Сильный пропуск больше не считается экспериментальным и безопасным для использования в производстве. Это станет поведением по умолчанию в предстоящем выпуске. ( I6c8c4 )

Исправления ошибок

  • Исправьте бинарную совместимость для функций @Composable с параметрами класса значения, которые имеют значение по умолчанию и обертывают не примитивное значение. ( I89465
  • Вверх по течению исправления для JS и нативного компиляции из Compose Multiplatform. Смотрите диапазон коммит выше для полной информации.

Версия 1.5.12

17 апреля 2024 г.

androidx.compose.compiler:compiler:1.5.12 и androidx.compose.compiler:compiler-hosted:1.5.12 выпускаются. Версия 1.5.12 содержит эти коммиты .

Исправления ошибок

  • Исправляет проблему с постепенной компиляцией с Kotlin 1.9.23. ( IFCA55 )
  • Исправьте не нулевые типы в параметрах значения для неприеменных встроенных классов. ( IE6BB5 )

Версия 1.5.11

20 марта 2024 г.

androidx.compose.compiler:compiler:1.5.11 и androidx.compose.compiler:compiler-hosted:1.5.11 выпускаются. Версия 1.5.11 содержит эти коммиты .

Примечания

  • Начиная с этой версии, компилятор теперь вызовет startReplaceGroup вместо startReplacableGroup , когда модуль составлен со временем выполнения, содержащим этот метод. startReplaceGroup была введена во время выполнения в составе времени выполнения 1.7.0-alpha03 . Вызовы в startRestartGroup генерируются только при нацеливании на 1,7.0-Alpha03 или более позднее версии времени выполнения.

  • Вызов startReplaceGroup вместо startReplaceableGroup позволяет среде выполнения более эффективно обнаруживать изменения, но может повлиять на порядок, в котором Composer обнаруживается изменения и отправляется Applier . Это может привести к тонким изменениям в поведении, если Applier полагается на заказ, которые обнаруживаются эти операции.

Новые возможности

  • Поддержка Kotlin 1.9.23

Исправления ошибок

  • Исправьте вложенные внешние общие типы, которые выводятся нестабильными. ( I3437f , b/327643787 )
  • Поддержите несколько файлов конфигурации стабильности. ( I8db14 , b/325326744 )
  • Составьте компилятор теперь правильно преобразует переопределенные функции, рекурсивно ходя по базовым классам/переопределениям. ( I2c9f9 , b/316196500 )
  • Убедитесь, что ссылка на функцию не пытается запечатлеть неявных родителей местных объявлений, когда они не используются напрямую. ( IB1267 )
  • Исправьте генерацию кода для композиционного Crossinline Lambda (трудно встретить эту ошибку без включения «NonskingGroupomization»). ( ICB2FD , B/325502738 )

Версия 1.5.10

21 февраля 2024 г.

androidx.compose.compiler:compiler:1.5.10 и androidx.compose.compiler:compiler-hosted:1.5.10 выпускаются. Версия 1.5.10 содержит эти коммиты.

Исправления ошибок

  • Поддержка живых литералов внутри блоков init. ( B/320397488 )
  • Используйте параметр диспетчера, чтобы проверить, находится ли функция внутри локального класса ( B/323123439 )

Версия 1.5.9

7 февраля 2024 г.

androidx.compose.compiler:compiler:1.5.9 и androidx.compose.compiler:compiler-hosted:1.5.9 выпускаются. Версия 1.5.9 содержит эти коммиты.

Исправления ошибок

  • Исправьте композиционные вызовы в инициализаторе анонимного объекта. ( B/320261458 , 96315c )
  • График рекурсивные местные объявления как захваты. ( B/318745941 , E7B4B0 )
  • Исправить внутренние помните по поведению, связанное с ссылками метода Java, путем принудительного. ( B/319810819 , 77128E )
  • Добавлена ​​экспериментальная оптимизация, которая удалит группы вокруг функций, которые не подлежат промежутке, такие как явно обозначенные как @NonSkippableComposable , и функции, которые неявно не пропускаются такие встроенные функции и функции, которые возвращают не единичное значение, такие как remember .
  • Эта оптимизация может быть включена с помощью опции плагина, -P plugin:androidx.compose.compiler.plugins.kotlin:nonSkippingGroupOptimization=true для компилятора Kotlin. ( I1688f )

Версия 1.5.8

10 января 2024 г.

androidx.compose.compiler:compiler:1.5.8 и androidx.compose.compiler:compiler-hosted:1.5.8 . Версия 1.5.8 содержит эти коммиты.

Новые возможности

  • Поддержка Kotlin 1.9.22

Исправления ошибок

  • Исправьте ошибку, где компилятор сочиняет строительные исключения при строительстве с использованием Java21. Пользователи, которые используют Compose Compiler из Google Maven (то есть, а не создают его сами) никогда не подвергались воздействию этой ошибки. ( B/316644294 )
  • Исправлена ​​ошибка, где для некоторых абонентов не инлинированных лямбдас сообщалось о ошибке COMPOSABLE_EXPECTED . ( B/309364913 )
  • Добавьте ошибку компиляции для параметров по умолчанию в открытых функциях (ранее только она была ограничена только для абстрактных функций). Compose не поддерживает замену параметров по умолчанию из переопределенных функций в настоящее время, и переопределение композиционной функции с параметрами по умолчанию не удалось во время выполнения. Используйте @Suppress("ABSTRACT_COMPOSABLE_DEFAULT_PARAMETER_VALUE") , чтобы подавить, но обратите внимание, что переоценка такой функции без предоставления значения по умолчанию для параметра приведет к сбою во время выполнения. ( B/317490247 )
  • Исправлена ​​ошибка в внутреннем порядке, помните, что предотвращало правильное распространение значений. ( B/316327367 )

Внешний вклад

  • Исправить документацию опечатки. ( AOSP/288106 )

Версия 1.5.7

19 декабря 2023 г.

androidx.compose.compiler:compiler:1.5.7 и androidx.compose.compiler:compiler-hosted:1.5.7 выпускаются. Версия 1.5.7 содержит эти коммиты.

Исправления ошибок

  • Fix Compose Compose Cramck remember() ключа вызывает композиционную функцию ( B/315855015 )
  • Исправьте сбою составления времени выполнения при использовании return@ . ( B/315821171 )
  • Избегайте использования абсолютных путей в клавишах Memoization, что позволяет лучше использовать кэш -карта. ( B/313937484 )

Версия 1.5.6

6 декабря 2023 г.

androidx.compose.compiler:compiler:1.5.6 и androidx.compose.compiler:compiler-hosted:1.5.6 . Версия 1.5.6 содержит эти коммиты.

Новые возможности

  • Поддержка Kotlin 1.9.21

Исправления ошибок

  • Включите Intrinsic Помните - преобразование компилятора, которое вложены в плагин Compose Compose Compiler, и .equals сравнения Equal с сравнением Met Meta параметра для стабильных параметров. Это приводит к меньшему количеству слотов и меньше сравнений проводится во время выполнения. Опция может быть отключена, предоставив аргумент плагина компилятора: -p plugin:androidx.compose.compiler.plugins.kotlin:intrinsicRemember=false . ( If675f )
  • Исправлена ​​память о адаптированных ссылках на функцию и встроенных аргументов. ( B/312738720 )
  • Реализуйте группы при выходе из встроенного функционального вызова ( B/312242547 )

Внешний вклад

  • Исправьте K/Native и K/WASM выполнения выполнения из -за отсутствующего оператора возврата в композиционных функциях, когда это последнее утверждение, и возвращает NULL Const ( AOSP/2835716 )

Версия 1.5.5

29 ноября 2023 г.

androidx.compose.compiler:compiler:1.5.5 и androidx.compose.compiler:compiler-hosted:1.5.5 выпускаются. Версия 1.5.5 содержит эти коммиты.

Исправления ошибок

  • Исправляет сбой во время поиска переопределенных композиционных типов ( IB6D2C , B/297665426 )
    • Добавить stabilityConfigurationPath к известным параметрам (ранее ошибочная ошибка предотвратила использование флага файла конфигурации). ( B/309765121 )
    • Исправления заметок ( I081D1 , I4D7BF )
    • Исправление переоценки путем учета неопределенного состояния параметра в внутреннем запоминании ( B/263402091 )
    • Исправить информацию о линии отладки для внутренних помните ( IC8CF5 )
    • Исправление сбоя (понижение IR не удалось) во время переопределенных композиционных типов в поисках времени компиляции ( B/297665426 )

Внешний вклад

  • Запомните ссылки на стабильную функцию с аргументами ( i4d7bf , b/302680514 )

Версия 1.5.4

7 ноября 2023 г.

androidx.compose.compiler:compiler:1.5.4 и androidx.compose.compiler:compiler-hosted:1.5.4 выпускаются. Версия 1.5.4 содержит эти коммиты.

Обновления зависимости

  • Компилятор Compose теперь совместим с Kotlin 1.9.20

Новые возможности

  • Добавьте экспериментальный вариант, чтобы включить сильный режим прохождения. Сильный режим прохождения позволяет пропустить композиции с нестабильными параметрами. Кроме того, лямбдас с нестабильными захватами запоминаются. Эта функция экспериментальная и не считается готовой к производству. ( 22421e )
  • Добавьте флаг, чтобы включить/отключить информацию об источнике/трассировке. ( 4D45F09 )
  • Разрешить настройку стабильности внешних классов через файл конфигурации. ( If40eb )

Исправления ошибок

  • Исправьте ранний выход из композиционных функций, когда информация источника не собирается. ( Fe6267 )
  • Исправление Продолжается от композиционных функций. ( 948362 )
  • Решение исправления, когда композиционные функции вызываются из вызова функции, который имеет несколько перегрузки, которые зависят от типа возврата экспрессии. ( 2d36d0 )
  • Исправлена ​​память, когда ссылка на функцию не имеет приемника для отправки. ( FC2326 )
  • Исправьте грязную проверку, которая предотвращала переоборудование Lambdas в некоторых ситуациях. ( DB3699 )
  • Исправьте стабильность при постепенном компиляции между модулями. ( 7d3e127 )
  • Уменьшите объем @DontMemoize только до выражений Lambda. ( 7A7FA52 )
  • Исправьте переменные, которые не фиксируются правильно при использовании композиционного развлекательного интерфейса в качестве лямбды. ( 5ae3556 )

Внешний вклад

  • Используйте символ структурного равенства для числового и нулевого сравнения ( C612A0 )

Версия 1.5.3

29 августа 2023 г.

androidx.compose.compiler:compiler:1.5.3 , androidx.compose.compiler:compiler-daemon:1.5.3 , и androidx.compose.compiler:compiler-hosted:1.5.3 . Версия 1.5.3 содержит эти коммиты.

Обновление зависимости

  • Котлин версия обновляется до 1.9.10

Версия 1.5.2

23 августа 2023 г.

androidx.compose.compiler:compiler:1.5.2 , androidx.compose.compiler:compiler-daemon:1.5.2 и androidx.compose.compiler:compiler-hosted:1.5.2 . Версия 1.5.2 содержит эти коммиты.

Исправления ошибок

  • Вставьте номера строк для возвращающихся операторов в композиционные функции с постоянным возвратом. ( I42d89 )
  • Исправьте утечку памяти, вызванную переключением на новую точку ввода плагина компилятора. ( 4F0A101 )
  • Прекратите трансформировать некомпасингии веселые интерфейсы в компиляторе составного состава. Это приводит к обработке забавных интерфейсов так же, как и Lambdas, включая правила памяти. ( 28b3ce9 )
  • Используйте тип аргумента Vararg для вывода стабильности на сайте вызовов. ( BC83645 )

Версия 1.5.1

26 июля 2023 г.

androidx.compose.compiler:compiler:1.5.1 , androidx.compose.compiler:compiler-daemon:1.5.1 и androidx.compose.compiler:compiler-hosted:1.5.1 . Версия 1.5.1 содержит эти коммиты.

Исправления ошибок

  • Маркеры событий с фиксированной композицией в @ReadOnlyComposable с ранними доходами, что вызвало коррупцию трассировки.

Версия 1.5.0

18 июля 2023 г.

androidx.compose.compiler:compiler:1.5.0 , androidx.compose.compiler:compiler-daemon:1.5.0 и androidx.compose.compiler:compiler-hosted:1.5.0 . Версия 1.5.0 содержит эти коммиты.

Экспериментальная поддержка К2

  • Compose Compiler 1.5.0 обеспечивает экспериментальную поддержку компилятора K2 . Некоторые функции сочиняются еще не поддерживаются K2 и будут появляться в будущих версиях компилятора.

Важные изменения с 1.4.0

  • Версия Kotlin обновляется до 1.9.0.
  • Названные аргументы для @Composable lambda -звонков устарели. Эта функция полагается на API -интерфейсы внутренних компиляторов и не будет поддерживаться K2.
  • Добавлена ​​диагностика для проверки @Composable аннотации при ожидаемых/фактических вызовах. Ожидается, что обе заявления будут иметь соответствующие аннотации.

Версия 1.4.8

Версия 1.4.8

28 июня 2023 г.

androidx.compose.compiler:compiler:1.4.8 , androidx.compose.compiler:compiler-daemon:1.4.8 и androidx.compose.compiler:compiler-hosted:1.4.8 . Версия 1.4.8 содержит эти коммиты.

Новые возможности

  • Целевая версия компилятора Kotlin увеличивается до 1,8.22.

Исправления ошибок

  • Улучшенное сообщение об ошибке для @Composable переопределения. Теперь это правильно указывает на несоответствие аннотаций.
  • Предупреждайте о избыточной @Composable аннотации на встроенных лямбдах, которые не должны быть помечены как композиционные. Эта функция не будет поддерживаться компилятором K2.

Версия 1.4.7

Версия 1.4.7

3 мая 2023 г.

androidx.compose.compiler:compiler:1.4.7 , androidx.compose.compiler:compiler-daemon:1.4.7 и androidx.compose.compiler:compiler-hosted:1.4.7 . Версия 1.4.7 содержит эти коммиты.

Новые возможности

  • Поддержка Kotlin 1.8.21
  • Добавлены примитивные версии API State , позволяющие int, long, float и двойные значения отслеживать в объектах State без штрафов за автобоксинг.

Версия 1.4.6

Версия 1.4.6

19 апреля 2023 г.

androidx.compose.compiler:compiler:1.4.6 , androidx.compose.compiler:compiler-daemon:1.4.6 и androidx.compose.compiler:compiler-hosted:1.4.6 . Версия 1.4.6 содержит эти коммиты.

Исправления ошибок

  • Компилятор теперь зависит от Java11 (вместо Java17, необходимого для составления компилятора версии 1.4.5), чтобы лучше поддерживать пользователей, которые все еще используют более старые версии Java.

Версия 1.4.5

Версия 1.4.5

12 апреля 2023 г.

androidx.compose.compiler:compiler:1.4.5 , androidx.compose.compiler:compiler-daemon:1.4.5 и androidx.compose.compiler:compiler-hosted:1.4.5 выпускаются. Версия 1.4.5 содержит эти коммиты.

Обратите внимание на эту сборку компилятора Compose требует, чтобы ваша среда сборки использовала Java 17+. Основываясь на отзывах пользователей, мы отбросим это требование обратно на Java 11 и последующее наблюдение с другим выпуском (1.4.6), чтобы лучше поддерживать пользователей, которые используют более старые версии Java.

Новые возможности

Поддержка Kotlin 1.8.20

Исправления ошибок

  • Распространить требования композиционного вызова переопределения оператора на классы и интерфейсы, которые расширяют интерфейсы Lambda с соответствующими аннотациями. F8F2F78A1A769C2373201027F12700E772E4E97E
  • Позволяет использовать @Composable аннотацию на операторе getValue и сгенерированные знаки для делегата в качестве композиционного в IR, чтобы убедиться, что он правильно преобразован позже. F174F6EE60CA957D5CB6D19A5BD02A88267CDF40
  • Исправьте внутреннюю ошибку выполнения сочинения (ожидается, что applyChanges() была вызвана) для встроенных функций. B/274786923
  • Избегайте захвата ProcessCancelledException , поскольку оно имеет особое значение в IDE. B/274725600

Внешний вклад

Версия 1.4.4

Версия 1.4.4

22 марта 2023 г.

androidx.compose.compiler:compiler:1.4.4 , androidx.compose.compiler:compiler-daemon:1.4.4 и androidx.compose.compiler:compiler-hosted:1.4.4 выпускаются. Версия 1.4.4 содержит эти коммиты.

Исправления ошибок

  • Исправлена ​​композиционная inline Lambda возвращение ( 72172b )
  • Разрешить композиции Nothing возвращать (не генерируйте ошибку при использовании TODO в композитной функции) 3AEA8D )

Версия 1.4.3

Версия 1.4.3

22 февраля 2023 г.

androidx.compose.compiler:compiler:1.4.3 выпускается. Версия 1.4.3 содержит эти коммиты.

Исправления ошибок

  • Исправляет условные композиционные вызовы в аргументах композиционных вызовов ( IE93EDB )

Версия 1.4.2

Версия 1.4.2

8 февраля 2023 г.

androidx.compose.compiler:compiler:1.4.2 выпускается. Версия 1.4.2 содержит эти коммиты.

Новые возможности

  • Поддержка Kotlin 1.8.10

Исправления ошибок

  • Добавьте группы в организме небезопасных лямбдов, чтобы избежать ошибки переработки.

Версия 1.4.1

Версия 1.4.1

8 февраля 2023 г.

androidx.compose.compiler:compiler:1.4.1 выпускается. Версия 1.4.1 содержит эти коммиты.

Исправления ошибок

  • Отключить внутреннюю оптимизацию, которая ранее представила несколько ошибок генерации кода.
  • Отключить внутренние помните в функциях, содержащих параметр Vararg.
  • Исправить ошибочное пропуск в композиционных параметрах с параметрами по умолчанию
  • Добавьте сообщение об ошибке защиты, если проверка совместимости Kotlin не удается.
  • Удалить генерацию пропусков кода из inline lambda

Версия 1.4.0

17 января 2023 г.

androidx.compose.compiler:compiler:1.4.0 выпускается. Версия 1.4.0 содержит эти коммиты.

Важные изменения с 1.3.0

  • Поддержка Kotlin 1.8.0
  • Выключил внутреннее помните
  • Group класса данных пользовательского интерфейса теперь имеет поле isInline , которое указывает, является ли группа для вызова встроенной композиционной функции. Если isInline true , то вызов к встроенной композиционной функции. Тем не менее, значение может быть ложным для вызовов для внедренных композиционных функций, которые взяты из модулей, которые составлены с версией плагина Compose Compiler, который не генерирует встроенную информацию о функции.
  • ImmutableCollection и их постоянные братья и сестры теперь считаются стабильными.
  • Новый Param в AnimatedContent для метки инструментов
  • Исправлена ​​неисправная генерация кода для встроенной Lambda

Версия 1.4.0-Alpha02

11 ноября 2022 г.

androidx.compose.compiler:compiler:1.4.0-alpha02 выпускается. Версия 1.4.0-Alpha02 содержит эти коммиты.

Новые возможности

  • Добавлена ​​поддержка Kotlin 1.7.21

Версия 1.4.0-Alpha01

9 ноября 2022 г.

androidx.compose.compiler:compiler:1.4.0-alpha01 выпускается. Версия 1.4.0-Alpha01 содержит эти коммиты.

Исправления ошибок

  • Установка способности вернуться рано из встроенных композиционных функций ( B/255350755 )
  • Исправьте ошибку в опускании приманки, которая сломала поддержку Kotlin/JS в Compose ( 6A40F8 ).

Версия 1.3

Версия 1.3.2

4 октября 2022 г.

androidx.compose.compiler:compiler:1.3.2 выпускается. Версия 1.3.2 содержит эти коммиты.

Новая функция

  • Эта версия включает в себя обновление Kotlin 1.7.20

Версия 1.3.1

7 сентября 2022 г.

androidx.compose.compiler:compiler:1.3.1 выпускается. Версия 1.3.1 содержит эти коммиты.

Исправления ошибок

  • Исправлена IllegalStateException , где компилятор Compose был ошибочно маркировать типы блоков как композиционные в некоторых обстоятельствах. ( B/237863365 )
  • Теперь пользователи должны указать свою предпочтительную версию Kotlin при подавлении проверки версии компилятора ( i9e5e2 )

Версия 1.3.0

10 августа 2022 г.

androidx.compose.compiler:compiler:1.3.0 выпускается. Версия 1.3.0 содержит эти коммиты.

Версия 1.3.0-RC02

3 августа 2022 г.

androidx.compose.compiler:compiler:1.3.0-rc02 выпускается. Версия 1.3.0-RC02 содержит эти коммиты.

Версия 1.3.0-rc01

27 июля 2022 г.

androidx.compose.compiler:compiler:1.3.0-rc01 выпускается. Версия 1.3.0-RC01 содержит эти коммиты.

Версия 1.3.0-бета01

20 июля 2022 г.

androidx.compose.compiler:compiler:1.3.0-beta01 выпущен. Версия 1.3.0-бета01 содержит эти коммиты.

Новые возможности

  • Добавлена ​​поддержка Kotlin 1.7.10

Версия 1.2

Версия 1.2.0

29 июня 2022 г.

androidx.compose.compiler:compiler:1.2.0 выпускается. Версия 1.2.0 содержит эти коммиты.

Важные изменения с 1.1.0

Версия 1.2.0-RC02

22 июня 2022 г.

androidx.compose.compiler:compiler:1.2.0-rc02 выпускается. Версия 1.2.0-RC02 содержит эти коммиты.

Исправления ошибок

  • Удаленная генерация кода событий с компостируемым трассировкой ( AOSP/2127922 )

Версия 1.2.0-RC01

15 июня 2022 г.

androidx.compose.compiler:compiler:1.2.0-rc01 выпускается. Версия 1.2.0-RC01 содержит эти коммиты.

Версия 1.2.0-бета03

1 июня 2022 г.

androidx.compose.compiler:compiler:1.2.0-beta03 выпускается. Версия 1.2.0-бета03 содержит эти коммиты.

Версия 1.2.0-бета02

18 мая 2022 г.

androidx.compose.compiler:compiler:1.2.0-beta02 выпущен. Версия 1.2.0-бета02 содержит эти коммиты.

Версия 1.2.0-бета01

11 мая 2022 г.

androidx.compose.compiler:compiler:1.2.0-beta01 выпущен. Версия 1.2.0-бета01 содержит эти коммиты.

  • Это первая бета -версия 1.2! С момента последней Альфа нет изменений.

Новые возможности

  • Добавлена ​​поддержка Kotlin 1.6.21

Версия 1.2.0-Alpha08

20 апреля 2022 г.

androidx.compose.compiler:compiler:1.2.0-alpha08 выпускается. Версия 1.2.0-Alpha08 содержит эти коммиты.

Версия 1.2.0-Alpha07

6 апреля 2022 г.

androidx.compose.compiler:compiler:1.2.0-alpha07 выпускается. Версия 1.2.0-Alpha07 содержит эти коммиты.

Версия 1.2.0-Alpha06

23 марта 2022 г.

androidx.compose.compiler:compiler:1.2.0-alpha06 выпускается. Версия 1.2.0-Alpha06 содержит эти коммиты.

Версия 1.2.0-Alpha05

9 марта 2022 г.

androidx.compose.compiler:compiler:1.2.0-alpha05 выпускается. Версия 1.2.0-Alpha05 содержит эти коммиты.

Версия 1.2.0-Alpha04

23 февраля 2022 г.

androidx.compose.compiler:compiler:1.2.0-alpha04 выпускается. Версия 1.2.0-Alpha04 содержит эти коммиты.

Версия 1.2.0-Alpha03

9 февраля 2022 г.

androidx.compose.compiler:compiler:1.2.0-alpha03 выпускается. Версия 1.2.0-Alpha03 содержит эти коммиты.

Версия 1.2.0-Alpha02

26 января 2022 г.

androidx.compose.compiler:compiler:1.2.0-alpha02 выпускается. Версия 1.2.0-Alpha02 содержит эти коммиты.

Версия 1.2.0-Alpha01

12 января 2022 года

androidx.compose.compiler:compiler:1.2.0-alpha01 выпускается. Версия 1.2.0-Alpha01 содержит эти коммиты.

Новые возможности

  • Добавлена ​​поддержка Kotlin 1.6.10 .

Версия 1.1

Версия 1.1.1

23 февраля 2022 г.

androidx.compose.compiler:compiler:1.1.1 выпускается. Версия 1.1.1 содержит эти коммиты.

Исправления ошибок

  • Исправить NullPointerException на androidx.compose.ui.platform.RenderNodeLayer.updateDisplayList ( AOSP/1947059 , b/206677462 )
  • Исправьте сбой, вызванный контентом буфера обмена во время чтения из буфера обмена на Android. ( I06020 , B/197769306 )
  • Фиксированный RTL в LazyVerticalGrid ( AOSP/1931080 , B/207510535 )

Версия 1.1.0

9 февраля 2022 г.

androidx.compose.compiler:compiler:1.1.0 выпускается. Версия 1.1.0 содержит эти коммиты.

Важные изменения с 1.0.0

  • Стабильная поддержка эффекта перепроверчика Android 12
  • Улучшения по поводу достижения целевого размера
  • Обратите внимание, что в отношении сочинения 1.0 компоненты материала будут расширять место для макета, чтобы соответствовать рекомендациям доступности материала для прикосновения целевого размера . Например, Target Button Touch будет расширяться до минимального размера 48x48dp , даже если вы установите размер кнопки меньше. Это выравнивает материал с тем же поведением компонентов дизайна материала, обеспечивая постоянное поведение, если вы смешиваете виды и сочиняете. Это изменение также гарантирует, что при создании вашего пользовательского интерфейса используется компоненты Compose Material, будут выполнены минимальные требования к доступающей целевой доступности.
  • Стабильная поддержка навигационной железной дороги
  • Выпускники ряда ранее экспериментальных API до стабильных
  • Поддержка новых версий Kotlin

Версия 1.1.0-RC03

26 января 2022 г.

androidx.compose.compiler:compiler:1.1.0-rc03 выпускается. Версия 1.1.0-RC03 содержит эти коммиты.

Исправления ошибок

  • Обновлено для поддержки Compose Material 1.1.0-RC03

Версия 1.1.0-RC02

16 декабря 2021 г.

androidx.compose.compiler:compiler:1.1.0-rc02 выпускается. Версия 1.1.0-RC02 содержит эти коммиты.

Обновления зависимости

  • Компилятор Compose 1.1.0-rc02 совместим с Kotlin 1.6.10 .

Версия 1.1.0-RC01

15 декабря 2021 г.

androidx.compose.compiler:compiler:1.1.0-rc01 выпускается. Версия 1.1.0-RC01 содержит эти коммиты.

Изменения зависимости

  • Компилятор Compose 1.1.0-rc01 совместим с Kotlin 1.6.0 .
  • Совместимая сборка 1.6.10 доступна через снимки Androidx.dev с buildId 8003490. Следующий фрагмент зависимости будет настроить снимки для компилятора Compose:

    Добавьте следующий фрагмент в файл root build.gradle для вашего проекта:

    buildscript {
        repositories {
            google()
            jcenter()
            maven { url 'https://androidx.dev/snapshots/builds/8003490/artifacts/repository' }
        }
    }
    

    Добавьте следующий фрагмент в файл build.gradle для вашего приложения или модуля, в котором используется Compose:

    android {
        composeOptions {
            kotlinCompilerExtensionVersion = "1.2.0-SNAPSHOT"
        }
    }
    

Версия 1.1.0-бета04

1 декабря 2021 г.

androidx.compose.compiler:compiler:1.1.0-beta04 выпускается. Версия 1.1.0-beta04 содержит эти коммиты.

Новые возможности

  • Обновлено, чтобы быть совместимым с Kotlin 1.6.0

Версия 1.1.0-BETA03

17 ноября 2021 г.

androidx.compose.compiler:compiler:1.1.0-beta03 выпускается. Версия 1.1.0-beta03 содержит эти коммиты.

Версия 1.1.0-бета02

3 ноября 2021 г.

androidx.compose.compiler:compiler:1.1.0-beta02 выпускается. Версия 1.1.0-beta02 содержит эти коммиты.

Версия 1.1.0-бета01

27 октября 2021 г.

androidx.compose.compiler:compiler:1.1.0-beta01 выпускается. Версия 1.1.0-beta01 содержит эти коммиты.

Версия 1.1.0-Alpha06

13 октября 2021 г.

androidx.compose.compiler:compiler:1.1.0-alpha06 выпускается. Версия 1.1.0-Alpha06 содержит эти коммиты.

Версия 1.1.0-Alpha05

29 сентября 2021 г.

androidx.compose.compiler:compiler:1.1.0-alpha05 выпускается. Версия 1.1.0-Alpha05 содержит эти коммиты.

Версия 1.1.0-Alpha04

15 сентября 2021 г.

androidx.compose.compiler:compiler:1.1.0-alpha04 . Версия 1.1.0-Alpha04 содержит эти коммиты.

Версия 1.1.0-Alpha03

1 сентября 2021 г.

androidx.compose.compiler:compiler:1.1.0-alpha03 выпускается. Версия 1.1.0-Alpha03 содержит эти коммиты.

Новые возможности

  • Компилятор Compose теперь поддерживает более старые версии времени выполнения Compose (1.0). До этого изменения компилятор Compose был совместимы только со временем выполнения Compose той же версии или позже. После этого изменения компилятор Compose совместим с более старой версией времени выполнения Compose (1.0). ( AOSP/1796968 )
  • Обновленная композа 1.1.0-alpha03 чтобы зависеть от Kotlin 1.5.30 . ( I74545 )

Версия 1.1.0-Alpha02

18 августа 2021 г.

androidx.compose.compiler:compiler:1.1.0-alpha02 выпускается. Версия 1.1.0-Alpha02 содержит эти коммиты.

Версия 1.1.0-Alpha01

4 августа 2021 г.

androidx.compose.compiler:compiler:1.1.0-alpha01 выпускается. Версия 1.1.0-Alpha01 содержит эти коммиты.

Версия 1.0

Версия 1.0.5

3 ноября 2021 г.

androidx.compose.compiler:compiler:1.0.5 выпускается. Версия 1.0.5 содержит эти коммиты.

Исправления ошибок

  • Исправлена ​​экземпляры отслеживания аварии. ( AOSP/1792247 )

Версия 1.0.4

13 октября 2021 г.

androidx.compose.compiler:compiler:1.0.4 выпущен. Версия 1.0.4 содержит эти коммиты.

Обновления зависимости

  • Обновлено, чтобы зависеть от Kotlin 1.5.31

Версия 1.0.3

29 сентября 2021 г.

androidx.compose.compiler:compiler:1.0.3 выпускается. Версия 1.0.3 содержит эти коммиты.

Обновления зависимости

  • Обновлено, чтобы зависеть от Kotlin 1.5.30

Версия 1.0.2

1 сентября 2021 г.

androidx.compose.compiler:compiler:1.0.2 выпускается. Версия 1.0.2 содержит эти коммиты.

Обновлено, чтобы поддержать выпуск Compose 1.0.2 . Compose 1.0.2 по -прежнему совместим с Kotlin 1.5.21 .

Версия 1.0.1

4 августа 2021 г.

androidx.compose.compiler:compiler:1.0.1 выпускается. Версия 1.0.1 содержит эти коммиты.

Обновления зависимости

  • Обновлено, чтобы зависеть от Kotlin 1.5.21 .

Версия 1.0.0

28 июля 2021 г.

androidx.compose.compiler:compiler:1.0.0 выпускается. Версия 1.0.0 содержит эти коммиты.

Основные особенности 1.0.0

Это первый стабильный выпуск Compose. Пожалуйста, смотрите официальный блог Compose Release для получения более подробной информации!

Версия 1.0.0-RC02

14 июля 2021 г.

androidx.compose.compiler:compiler:1.0.0-rc02 выпускается. Версия 1.0.0-RC02 содержит эти коммиты.

Версия 1.0.0-RC01

1 июля 2021 г.

androidx.compose.compiler:compiler:1.0.0-rc01 выпускается. Версия 1.0.0-RC01 содержит эти коммиты.

Версия 1.0.0-бета09

16 июня 2021 г.

androidx.compose.compiler:compiler:1.0.0-beta09 выпущен. Версия 1.0.0-BETA09 содержит эти коммиты.

Версия 1.0.0-бета08

2 июня 2021 года

androidx.compose.compiler:compiler:1.0.0-beta08 выпускается. Версия 1.0.0-BETA08 содержит эти коммиты.

Версия 1.0.0-бета07

18 мая 2021 г.

androidx.compose.compiler:compiler:1.0.0-beta07 выпускается. Версия 1.0.0-BETA07 содержит эти коммиты.

Версия 1.0.0-бета06

5 мая 2021 г.

androidx.compose.compiler:compiler:1.0.0-beta06 выпускается. Версия 1.0.0-BETA06 содержит эти коммиты.

Версия 1.0.0-бета05

21 апреля 2021 г.

androidx.compose.compiler:compiler:1.0.0-beta05 выпускается. Версия 1.0.0-BETA05 содержит эти коммиты.

Версия 1.0.0-бета04

7 апреля 2021 г.

androidx.compose.compiler:compiler:1.0.0-beta04 выпускается. Версия 1.0.0-BETA04 содержит эти коммиты.

Версия 1.0.0-бета03

24 марта 2021 г.

androidx.compose.compiler:compiler:1.0.0-beta03 выпускается. Версия 1.0.0-BETA03 содержит эти коммиты.

Версия 1.0.0-бета02

10 марта 2021 г.

androidx.compose.compiler:compiler:1.0.0-beta02 выпускается. Версия 1.0.0-BETA02 содержит эти коммиты.

Версия 1.0.0-бета01

24 февраля 2021 г.

androidx.compose.compiler:compiler:1.0.0-beta01 выпускается. Версия 1.0.0-BETA01 содержит эти коммиты.

Это первый выпуск Compose 1.0.0 Beta.

Версия 1.0.0-Alpha12

10 февраля 2021 г.

androidx.compose.compiler:compiler:1.0.0-alpha12 выпускается. Версия 1.0.0-Alpha12 содержит эти коммиты.

Версия 1.0.0-Альфа11

28 января 2021 г.

androidx.compose.compiler:compiler:1.0.0-alpha11 выпускается. Версия 1.0.0-Alpha11 содержит эти коммиты.

Версия 1.0.0-Alpha10

13 января 2021 г.

androidx.compose.compiler:compiler:1.0.0-alpha10 выпускается. Версия 1.0.0-Alpha10 содержит эти коммиты.

Версия 1.0.0-Alpha09

16 декабря 2020 г.

androidx.compose.compiler:compiler:1.0.0-alpha09 выпущен. Версия 1.0.0-Alpha09 содержит эти коммиты.

Версия 1.0.0-Alpha08

2 декабря 2020 г.

androidx.compose.compiler:compiler:1.0.0-alpha08 выпускается. Версия 1.0.0-Alpha08 содержит эти коммиты.

Версия 1.0.0-Alpha07

11 ноября 2020 г.

androidx.compose.compiler:compiler:1.0.0-alpha07 выпускается. Версия 1.0.0-Alpha07 содержит эти коммиты.

Новые возможности

  • Стабильность вывод и распространение . Плагин компилятора Compose будет анализировать типы, которые он компилирует, чтобы сделать вывод, имеет ли он право на определенные оптимизации во время выполнения. Этот предполагаемый результат затем синтезируется в виде метаданных на класс, который используется компилятором в других модулях. Кроме того, результат выполнения этих выводов передается в метаданных, передаваемых композиционным вызовам во время композиции. Это потребовало другого протокола метаданных для композиционных функций, что означает, что композиционные функции, составленные с компилятором Alpha07, не будут совместимы с композиционными функциями, составленными с любой более ранней версией компилятора. ( AOSP/1431988 )

Версия 1.0.0-Alpha06

28 октября 2020 г.

androidx.compose.compiler:compiler:1.0.0-alpha06 выпускается. Версия 1.0.0-Alpha06 содержит эти коммиты.

Версия 1.0.0-Alpha05

14 октября 2020 г.

androidx.compose.compiler:compiler:1.0.0-alpha05 выпускается. Версия 1.0.0-Alpha05 содержит эти коммиты.

Версия 1.0.0-Alpha04

1 октября 2020 г.

androidx.compose.compiler:compiler:1.0.0-alpha04 выпускается. Версия 1.0.0-Alpha04 содержит эти коммиты.

androidx.compose:compose-compiler был рефактор androidx.compose.compiler:compiler . Это первый релиз в новой группе.

,

Составьте компилятор

Преобразовать @composable функции и включить оптимизацию с помощью плагина компилятора Kotlin.
Последнее обновление Стабильный релиз Выпустить кандидата Бета-версия Альфа -релиз
7 августа 2024 г. 1.5.15 - - -

Структура

Compose - это комбинация 7 Maven Group Ids в androidx . Каждая группа содержит целевое подмножество функциональности, каждая из которых со своим собственным набором заметок.

Эта таблица объясняет группы и ссылки на каждый набор заметок о выпуске.

Группа Описание
Компостиция. Анимирование Создайте анимации в их JetPack Compet Applications для обогащения пользовательского опыта.
Compose.compiler Преобразовать @composable функции и включить оптимизацию с помощью плагина компилятора Kotlin.
COMOSE.Foundation Напишите JetPack Compose Applications с готовыми к использованию строительных блоков и продлить фундамент для создания собственных систем проектирования.
Compose.material Построить JetPack Compose UI с готовыми к использованию компонентов дизайна материала. Это более высокая точка входа в состав, предназначенную для обеспечения компонентов, которые соответствуют тем, которые описаны на www.material.io.
Compose.material3 Build Jetpack Compose UIs with Material Design 3 Components, the next evolution of Material Design. Material 3 includes updated theming and components and Material You personalization features like dynamic color, and is designed to be cohesive with the new Android 12 visual style and system UI.
compose.runtime Fundamental building blocks of Compose's programming model and state management, and core runtime for the Compose Compiler Plugin to target.
compose.ui Fundamental components of compose UI needed to interact with the device, including layout, drawing, and input.

Declaring dependencies

To add a dependency on Compose, you must add the Google Maven repository to your project. Read Google's Maven repository for more information.

Add the dependencies for the artifacts you need in the build.gradle file for your app or module:

Groovy

android {
    buildFeatures {
        compose true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.5.15"
    }

    kotlinOptions {
        jvmTarget = "19"
    }
}

Kotlin

android {
    buildFeatures {
        compose = true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.5.15"
    }

    kotlinOptions {
        jvmTarget = "19"
    }
}

For more information about dependencies, see Add build dependencies .

Обратная связь

Your feedback helps make Jetpack better. Let us know if you discover new issues or have ideas for improving this library. Please take a look at the existing issues in this library before you create a new one. You can add your vote to an existing issue by clicking the star button.

Create a new issue

See the Issue Tracker documentation for more information.

Версия 1.5

Version 1.5.15

7 августа 2024 г.

androidx.compose.compiler:compiler:1.5.15 and androidx.compose.compiler:compiler-hosted:1.5.15 are released. Version 1.5.15 contains these commits .

  • This compiler release is targeting Kotlin 1.9.25.

Version 1.5.14

14 мая 2024 г.

androidx.compose.compiler:compiler:1.5.14 and androidx.compose.compiler:compiler-hosted:1.5.14 are released. Version 1.5.14 contains these commits .

This compiler release is targeting Kotlin 1.9.24.

Исправления ошибок

  • Ensure that inline body is realized when source information is off. ( Idddb8 )

Version 1.5.13

1 мая 2024 г.

androidx.compose.compiler:compiler:1.5.13 and androidx.compose.compiler:compiler-hosted:1.5.13 are released. Version 1.5.13 contains these commits .

Новые возможности

  • Strong skipping is no longer considered experimental and is safe for use in production. It will become the default behavior in an upcoming release. ( I6c8c4 )

Исправления ошибок

  • Fix binary compatibility for @Composable functions with value class parameters that have a default value and are wrapping a non-primitive value. ( I89465
  • Upstreamed fixes for JS and Native compilation from Compose multiplatform. See the commit range above for full details.

Version 1.5.12

17 апреля 2024 г.

androidx.compose.compiler:compiler:1.5.12 and androidx.compose.compiler:compiler-hosted:1.5.12 are released. Version 1.5.12 contains these commits .

Исправления ошибок

  • Fixes an issue with incremental compilation with Kotlin 1.9.23. ( Ifca55 )
  • Fix non-nullable types in value parameters for non-primitive inline classes. ( Ie6bb5 )

Version 1.5.11

20 марта 2024 г.

androidx.compose.compiler:compiler:1.5.11 and androidx.compose.compiler:compiler-hosted:1.5.11 are released. Version 1.5.11 contains these commits .

Примечания

  • Starting with this version, the compiler will now call startReplaceGroup instead of startReplacableGroup when a module is compiled with a runtime that contains this method. startReplaceGroup was introduced in the runtime in Compose Runtime 1.7.0-alpha03 . Calls to startRestartGroup are only generated when targeting 1.7.0-alpha03 or later versions of the runtime.

  • Calling startReplaceGroup instead of startReplaceableGroup allows the runtime to detect changes more efficiently but may affect the order in which changes are detected by the Composer and sent to the Applier . This may result in subtle changes in behavior if an Applier relies on the order these operations are detected.

Новые возможности

  • Support for Kotlin 1.9.23

Исправления ошибок

  • Fix nested external generic types being inferred Unstable. ( I3437f , b/327643787 )
  • Support multiple stability configuration files. ( I8db14 , b/325326744 )
  • Compose Compiler now correctly transforms overridden functions by recursively walking through base classes/overrides. ( I2c9f9 , b/316196500 )
  • Ensure that function reference memoization doesn't try to capture implicit parents of local declarations when they are not used directly. ( Ib1267 )
  • Fix code generation for composable crossinline lambda (hard to encounter this bug without "nonSkippingGroupOptimization" enabled). ( Icb2fd , b/325502738 )

Version 1.5.10

21 февраля 2024 г.

androidx.compose.compiler:compiler:1.5.10 and androidx.compose.compiler:compiler-hosted:1.5.10 are released. Version 1.5.10 contains these commits.

Исправления ошибок

  • Support live literals inside init blocks. ( b/320397488 )
  • Use dispatcher parameter to check if the function is inside local class ( b/323123439 )

Version 1.5.9

7 февраля 2024 г.

androidx.compose.compiler:compiler:1.5.9 and androidx.compose.compiler:compiler-hosted:1.5.9 are released. Version 1.5.9 contains these commits.

Исправления ошибок

  • Fix composable calls in anonymous object initializer. ( b/320261458 , 96315c )
  • Count recursive local declarations as captures. ( b/318745941 , e7b4b0 )
  • Fix Intrinsic remember changes behavior related to Java method refs by forceing .changed for function types with intrinsic remember. ( b/319810819 , 77128e )
  • Added an experimental optimization that will remove the groups around functions that are not skippable such as explicitly marked as @NonSkippableComposable and functions that are implicitly not skippable such inline functions and functions that return a non-Unit value such as remember .
  • This optimization can be enabled by passing plugin option, -P plugin:androidx.compose.compiler.plugins.kotlin:nonSkippingGroupOptimization=true to the Kotlin compiler. ( I1688f )

Version 1.5.8

10 января 2024 г.

androidx.compose.compiler:compiler:1.5.8 and androidx.compose.compiler:compiler-hosted:1.5.8 are released. Version 1.5.8 contains these commits.

Новые возможности

  • Support for Kotlin 1.9.22

Исправления ошибок

  • Fix bug where Compose Compiler build threw exceptions when built using Java21. Users who are using Compose Compiler from Google Maven (ie, not building it themselves) were never impacted by this bug. ( b/316644294 )
  • Fix bug where COMPOSABLE_EXPECTED error was being reported for some callers of non-inlined lambdas. ( b/309364913 )
  • Add a compilation error for default parameters in open functions (previously only it was restricted only for abstract functions). Compose does not support substitution of default parameters from overridden functions at the moment, and overriding a composable function with default parameters was failing at runtime. Use @Suppress("ABSTRACT_COMPOSABLE_DEFAULT_PARAMETER_VALUE") to suppress, but note that overriding such function without providing a default value for parameter will result in a crash at runtime.( b/317490247 )
  • Fixed bug in intrinsic remember which prevented values from propagating correctly. ( b/316327367 )

External Contribution

Version 1.5.7

19 декабря 2023 г.

androidx.compose.compiler:compiler:1.5.7 and androidx.compose.compiler:compiler-hosted:1.5.7 are released. Version 1.5.7 contains these commits.

Исправления ошибок

  • Fix compose runtime crash when remember() key parameter invokes a Composable function ( b/315855015 )
  • Fix Compose runtime crash when return@ is used. ( b/315821171 )
  • Avoid using absolute paths in memoization keys which allows better build cache utilization. ( b/313937484 )

Version 1.5.6

6 декабря 2023 г.

androidx.compose.compiler:compiler:1.5.6 and androidx.compose.compiler:compiler-hosted:1.5.6 are released. Version 1.5.6 contains these commits.

Новые возможности

  • Support for Kotlin 1.9.21

Исправления ошибок

  • Enable intrinsic remember - the compiler transform that inlines remember in Compose compiler plugin and replaces .equals comparisons with int comparisons of the parameter meta for stable params. This results in less slots being used and less comparisons being done at runtime. The option can be disabled by providing compiler plugin argument: -P plugin:androidx.compose.compiler.plugins.kotlin:intrinsicRemember=false . ( If675f )
  • Fix memoization of adapted function references and inline arguments. ( b/312738720 )
  • Realize groups when exiting inline function call ( b/312242547 )

External Contribution

  • Fix k/native and k/wasm runtime crash due to missing return statement in Composable functions when it's the last statement and returns a null const ( aosp/2835716 )

Version 1.5.5

29 ноября 2023 г.

androidx.compose.compiler:compiler:1.5.5 and androidx.compose.compiler:compiler-hosted:1.5.5 are released. Version 1.5.5 contains these commits.

Исправления ошибок

  • Fixes a crash during lookup of overridden composable types ( Ib6d2c , b/297665426 )
    • Add stabilityConfigurationPath to known parameters (previously bug prevented usage of configuration file flag). ( b/309765121 )
    • Memoization fixes ( I081d1 , I4d7bf )
    • Recomposition fix by accounting for Uncertain param state in intrinsic remember ( b/263402091 )
    • Fix debugging line information for intrinsic remember ( Ic8cf5 )
    • Fix crash (IR lowering failed) during overridden composable types lookup at compile time ( b/297665426 )

External Contribution

Version 1.5.4

7 ноября 2023 г.

androidx.compose.compiler:compiler:1.5.4 and androidx.compose.compiler:compiler-hosted:1.5.4 are released. Version 1.5.4 contains these commits.

Dependency Updates

  • Compose Compiler is now compatible with Kotlin 1.9.20

Новые возможности

  • Add an experimental option to enable strong skipping mode. Strong skipping mode allows composables with unstable parameters to be skipped. Additionally, lambdas with unstable captures are memoized. This feature is experimental and not considered ready for production use. ( 22421e )
  • Add flag to enable/disable source/trace information. ( 4d45f09 )
  • Allow configuring the stability of external classes via a configuration file. ( If40eb )

Исправления ошибок

  • Fix early exit from composable functions when source information is not collected. ( fe6267 )
  • Fix continue from composable functions. ( 948362 )
  • Fix resolution when composable functions are invoked from within a function invocation that has multiple overloads that are dependent on expression return type. ( 2d36d0 )
  • Fix memoization when function reference does not have dispatch receiver. ( fc2326 )
  • Fix dirty check which was preventing recomposition of lambdas in some situations. ( db3699 )
  • Fix stability when incrementally compiling across modules. ( 7d3e127 )
  • Reduce scope of @DontMemoize to lambda expressions only. ( 7a7fa52 )
  • Fix Variables not captured correctly when using a Composable fun interface as a lambda. ( 5ae3556 )

External Contribution

  • Use structural equality symbol for numeric and null comparison ( c612a0 )

Version 1.5.3

29 августа 2023 г.

androidx.compose.compiler:compiler:1.5.3 , androidx.compose.compiler:compiler-daemon:1.5.3 , and androidx.compose.compiler:compiler-hosted:1.5.3 are released. Version 1.5.3 contains these commits.

Dependency Update

  • Kotlin version is updated to 1.9.10

Версия 1.5.2

23 августа 2023 г.

androidx.compose.compiler:compiler:1.5.2 , androidx.compose.compiler:compiler-daemon:1.5.2 , and androidx.compose.compiler:compiler-hosted:1.5.2 are released. Version 1.5.2 contains these commits.

Исправления ошибок

  • Insert line numbers for return statements in constant-returning composable functions. ( I42d89 )
  • Fix a memory leak caused by switching to the new compiler plugin entrypoint. ( 4f0a101 )
  • Stop transforming non-composable fun interfaces in Compose compiler. This causes fun interfaces to be handled the same way as lambdas, including memoization rules. ( 28b3ce9 )
  • Use vararg argument type for inferring stability on call site. ( bc83645 )

Version 1.5.1

26 июля 2023 г.

androidx.compose.compiler:compiler:1.5.1 , androidx.compose.compiler:compiler-daemon:1.5.1 , and androidx.compose.compiler:compiler-hosted:1.5.1 are released. Version 1.5.1 contains these commits.

Исправления ошибок

  • Fixed composition trace event markers in @ReadOnlyComposable functions with early returns which caused trace corruption.

Version 1.5.0

18 июля 2023 г.

androidx.compose.compiler:compiler:1.5.0 , androidx.compose.compiler:compiler-daemon:1.5.0 , and androidx.compose.compiler:compiler-hosted:1.5.0 are released. Version 1.5.0 contains these commits.

Experimental K2 support

  • Compose compiler 1.5.0 provides experimental support for K2 compiler . Some Compose features are not supported with K2 yet and will be coming in the future versions of the compiler.

Important changes since 1.4.0

  • Kotlin version is updated to 1.9.0.
  • Named arguments for @Composable lambda calls have been deprecated. This feature is relying on internal compiler APIs and will not be supported by K2.
  • Added a diagnostic to verify @Composable annotation on expect/actual calls. Both declarations are expected to have matching annotations.

Version 1.4.8

Version 1.4.8

28 июня 2023 г.

androidx.compose.compiler:compiler:1.4.8 , androidx.compose.compiler:compiler-daemon:1.4.8 , and androidx.compose.compiler:compiler-hosted:1.4.8 are released. Version 1.4.8 contains these commits.

Новые возможности

  • Target Kotlin compiler version is bumped to 1.8.22.

Исправления ошибок

  • Improved error message for @Composable overrides. Now it correctly points out annotation mismatch.
  • Warn about redundant @Composable annotation on inline lambdas that should not be marked as composable. This feature will not be supported with K2 compiler.

Version 1.4.7

Version 1.4.7

3 мая 2023 г.

androidx.compose.compiler:compiler:1.4.7 , androidx.compose.compiler:compiler-daemon:1.4.7 , and androidx.compose.compiler:compiler-hosted:1.4.7 are released. Version 1.4.7 contains these commits.

Новые возможности

  • Support for Kotlin 1.8.21
  • Added primitive versions of the State API, allowing Int, Long, Float, and Double values to be tracked in State objects without incurring penalties for autoboxing.

Version 1.4.6

Version 1.4.6

19 апреля 2023 г.

androidx.compose.compiler:compiler:1.4.6 , androidx.compose.compiler:compiler-daemon:1.4.6 , and androidx.compose.compiler:compiler-hosted:1.4.6 are released. Version 1.4.6 contains these commits.

Исправления ошибок

  • Compose Compiler now depends on Java11 (instead of Java17 required by Compose Compiler version 1.4.5) to better support users who are still using older versions of Java.

Version 1.4.5

Version 1.4.5

12 апреля 2023 г.

androidx.compose.compiler:compiler:1.4.5 , androidx.compose.compiler:compiler-daemon:1.4.5 , and androidx.compose.compiler:compiler-hosted:1.4.5 are released. Version 1.4.5 contains these commits.

NOTE This build of Compose Compiler requires your build environment to use Java 17+. Based on user feedback, we will drop this requirement back to Java 11 and follow-up with another release (1.4.6) to better support users who are using older Java versions.

Новые возможности

Support for Kotlin 1.8.20

Исправления ошибок

  • Propagate requirement of composable invoke operator override to classes and interfaces that are extending lambda interfaces with corresponding annotations. f8f2f78a1a769c2373201027f12700e772e4e97e
  • Allows usage of @Composable annotation on getValue operator and marks generated getter for delegate as composable in IR to ensure it is correctly transformed later. f174f6ee60ca957d5cb6d19a5bd02a88267cdf40
  • Fix internal compose runtime error (Expected applyChanges() to have been called) for inline functions. b/274786923
  • Avoid capturing ProcessCancelledException as it has a special meaning in the IDE. b/274725600

External Contribution

Версия 1.4.4

Версия 1.4.4

22 марта 2023 г.

androidx.compose.compiler:compiler:1.4.4 , androidx.compose.compiler:compiler-daemon:1.4.4 , and androidx.compose.compiler:compiler-hosted:1.4.4 are released. Version 1.4.4 contains these commits.

Исправления ошибок

  • Fix Composable inline lambda returns ( 72172b )
  • Allow composables to return Nothing (Do not generate an error when using TODO in a composable function) 3aea8d )

Версия 1.4.3

Версия 1.4.3

22 февраля 2023 г.

androidx.compose.compiler:compiler:1.4.3 is released. Version 1.4.3 contains these commits.

Исправления ошибок

  • Fixes conditional composable calls in arguments of composable calls ( Ie93edb )

Версия 1.4.2

Версия 1.4.2

8 февраля 2023 г.

androidx.compose.compiler:compiler:1.4.2 is released. Version 1.4.2 contains these commits.

Новые возможности

  • Support for Kotlin 1.8.10

Исправления ошибок

  • Add groups in the body of unskippable lambdas to avoid recomposition bug.

Версия 1.4.1

Версия 1.4.1

8 февраля 2023 г.

androidx.compose.compiler:compiler:1.4.1 is released. Version 1.4.1 contains these commits.

Исправления ошибок

  • Disable intrinsic remember optimization which had previously introduced a few code generation bugs.
  • Disable intrinsic remember in functions containing a vararg parameter.
  • Fix erroneous skipping in composables with default parameters
  • Add defensive fallback error message if checking Kotlin compatibility fails.
  • Remove skipping code generation from inline lambda

Версия 1.4.0

17 января 2023 г.

androidx.compose.compiler:compiler:1.4.0 is released. Version 1.4.0 contains these commits.

Important changes since 1.3.0

  • Support for Kotlin 1.8.0
  • Turned off intrinsic remember
  • The ui tooling data class Group now has a field, isInline , that indicates if the group is for a call to an inline composable function. If isInline is true then the call is to an inline composable function. However, the value might be false for calls to inline composable functions that are from modules that are compiled with a version of the compose compiler plugin that doesn't generate the inline function information.
  • ImmutableCollection and their Persistent siblings are now considered stable.
  • New param in AnimatedContent for tooling label
  • Fixed faulty code generation for inline lambda

Version 1.4.0-alpha02

11 ноября 2022 г.

androidx.compose.compiler:compiler:1.4.0-alpha02 is released. Version 1.4.0-alpha02 contains these commits.

Новые возможности

  • Added support for Kotlin 1.7.21

Version 1.4.0-alpha01

9 ноября 2022 г.

androidx.compose.compiler:compiler:1.4.0-alpha01 is released. Version 1.4.0-alpha01 contains these commits.

Исправления ошибок

  • Fix ability to return early from inline composable functions ( b/255350755 )
  • Fix bug in decoy lowering which broke Kotlin/JS support in Compose ( 6a40f8 ).

Версия 1.3

Версия 1.3.2

4 октября 2022 г.

androidx.compose.compiler:compiler:1.3.2 is released. Version 1.3.2 contains these commits.

New Feature

  • This version includes an update to Kotlin 1.7.20

Версия 1.3.1

7 сентября 2022 г.

androidx.compose.compiler:compiler:1.3.1 is released. Version 1.3.1 contains these commits.

Исправления ошибок

  • Fix IllegalStateException where Compose Compiler was erroneously marking unit types as composable in some circumstances. ( b/237863365 )
  • Users must now specify their preferred Kotlin version when suppressing compiler version check ( I9e5e2 )

Version 1.3.0

10 августа 2022 г.

androidx.compose.compiler:compiler:1.3.0 is released. Version 1.3.0 contains these commits.

Version 1.3.0-rc02

3 августа 2022 г.

androidx.compose.compiler:compiler:1.3.0-rc02 is released. Version 1.3.0-rc02 contains these commits.

Версия 1.3.0-rc01

27 июля 2022 г.

androidx.compose.compiler:compiler:1.3.0-rc01 is released. Version 1.3.0-rc01 contains these commits.

Version 1.3.0-beta01

20 июля 2022 г.

androidx.compose.compiler:compiler:1.3.0-beta01 is released. Version 1.3.0-beta01 contains these commits.

Новые возможности

  • Added support for Kotlin 1.7.10

Версия 1.2

Версия 1.2.0

29 июня 2022 г.

androidx.compose.compiler:compiler:1.2.0 is released. Version 1.2.0 contains these commits.

Important changes since 1.1.0

Version 1.2.0-rc02

22 июня 2022 г.

androidx.compose.compiler:compiler:1.2.0-rc02 is released. Version 1.2.0-rc02 contains these commits.

Исправления ошибок

  • Removed composable Trace Event code generation ( aosp/2127922 )

Version 1.2.0-rc01

15 июня 2022 г.

androidx.compose.compiler:compiler:1.2.0-rc01 is released. Version 1.2.0-rc01 contains these commits.

Version 1.2.0-beta03

1 июня 2022 г.

androidx.compose.compiler:compiler:1.2.0-beta03 is released. Version 1.2.0-beta03 contains these commits.

Version 1.2.0-beta02

18 мая 2022 г.

androidx.compose.compiler:compiler:1.2.0-beta02 is released. Version 1.2.0-beta02 contains these commits.

Версия 1.2.0-бета01

11 мая 2022 г.

androidx.compose.compiler:compiler:1.2.0-beta01 is released. Version 1.2.0-beta01 contains these commits.

  • This is the first beta release of 1.2! There are no changes since the last alpha.

Новые возможности

  • Added support for Kotlin 1.6.21

Version 1.2.0-alpha08

20 апреля 2022 г.

androidx.compose.compiler:compiler:1.2.0-alpha08 is released. Version 1.2.0-alpha08 contains these commits.

Version 1.2.0-alpha07

6 апреля 2022 г.

androidx.compose.compiler:compiler:1.2.0-alpha07 is released. Version 1.2.0-alpha07 contains these commits.

Version 1.2.0-alpha06

23 марта 2022 г.

androidx.compose.compiler:compiler:1.2.0-alpha06 is released. Version 1.2.0-alpha06 contains these commits.

Version 1.2.0-alpha05

9 марта 2022 г.

androidx.compose.compiler:compiler:1.2.0-alpha05 is released. Version 1.2.0-alpha05 contains these commits.

Version 1.2.0-alpha04

23 февраля 2022 г.

androidx.compose.compiler:compiler:1.2.0-alpha04 is released. Version 1.2.0-alpha04 contains these commits.

Version 1.2.0-alpha03

9 февраля 2022 г.

androidx.compose.compiler:compiler:1.2.0-alpha03 is released. Version 1.2.0-alpha03 contains these commits.

Version 1.2.0-alpha02

26 января 2022 г.

androidx.compose.compiler:compiler:1.2.0-alpha02 is released. Version 1.2.0-alpha02 contains these commits.

Version 1.2.0-alpha01

January 12, 2022

androidx.compose.compiler:compiler:1.2.0-alpha01 is released. Version 1.2.0-alpha01 contains these commits.

Новые возможности

  • Added support for Kotlin 1.6.10 .

Версия 1.1

Версия 1.1.1

23 февраля 2022 г.

androidx.compose.compiler:compiler:1.1.1 is released. Version 1.1.1 contains these commits.

Исправления ошибок

Версия 1.1.0

9 февраля 2022 г.

androidx.compose.compiler:compiler:1.1.0 is released. Version 1.1.0 contains these commits.

Important changes since 1.0.0

  • Stable support for the Android 12 Overscroll effect
  • Improvements to touch target sizing
  • Note that, with respect to Compose 1.0, Material components will expand their layout space to meet Material accessibility guidelines for touch target size . For instance, Button touch target will expand to a minimum size of 48x48dp , even if you set the Button's size to be smaller. This aligns Compose Material to the same behavior of Material Design Components, providing consistent behavior if you mix Views and Compose. This change also ensures that when you create your UI using Compose Material components, minimum requirements for touch target accessibility will be met.
  • Stable support for Navigation Rail
  • Graduates a number of previously experimental APIs to stable
  • Support for newer versions of Kotlin

Version 1.1.0-rc03

26 января 2022 г.

androidx.compose.compiler:compiler:1.1.0-rc03 is released. Version 1.1.0-rc03 contains these commits.

Исправления ошибок

  • Updated to support Compose Material 1.1.0-rc03

Version 1.1.0-rc02

16 декабря 2021 г.

androidx.compose.compiler:compiler:1.1.0-rc02 is released. Version 1.1.0-rc02 contains these commits.

Dependency updates

  • Compose Compiler 1.1.0-rc02 is compatible with Kotlin 1.6.10 .

Version 1.1.0-rc01

15 декабря 2021 г.

androidx.compose.compiler:compiler:1.1.0-rc01 is released. Version 1.1.0-rc01 contains these commits.

Dependency changes

  • Compose Compiler 1.1.0-rc01 is compatible with Kotlin 1.6.0 .
  • A compatible 1.6.10 build is available through androidx.dev SNAPSHOTs with buildId 8003490. The following dependency snippet will configure SNAPSHOTs for the Compose Compiler:

    Add the following snippet to the root build.gradle file for your project:

    buildscript {
        repositories {
            google()
            jcenter()
            maven { url 'https://androidx.dev/snapshots/builds/8003490/artifacts/repository' }
        }
    }
    

    Add the following snippet to the build.gradle file for your app or module that uses Compose:

    android {
        composeOptions {
            kotlinCompilerExtensionVersion = "1.2.0-SNAPSHOT"
        }
    }
    

Version 1.1.0-beta04

1 декабря 2021 г.

androidx.compose.compiler:compiler:1.1.0-beta04 is released. Version 1.1.0-beta04 contains these commits.

Новые возможности

  • Updated to be compatible with Kotlin 1.6.0

Version 1.1.0-beta03

17 ноября 2021 г.

androidx.compose.compiler:compiler:1.1.0-beta03 is released. Version 1.1.0-beta03 contains these commits.

Version 1.1.0-beta02

November 3, 2021

androidx.compose.compiler:compiler:1.1.0-beta02 is released. Version 1.1.0-beta02 contains these commits.

Version 1.1.0-beta01

27 октября 2021 г.

androidx.compose.compiler:compiler:1.1.0-beta01 is released. Version 1.1.0-beta01 contains these commits.

Version 1.1.0-alpha06

13 октября 2021 г.

androidx.compose.compiler:compiler:1.1.0-alpha06 is released. Version 1.1.0-alpha06 contains these commits.

Version 1.1.0-alpha05

29 сентября 2021 г.

androidx.compose.compiler:compiler:1.1.0-alpha05 is released. Version 1.1.0-alpha05 contains these commits.

Version 1.1.0-alpha04

15 сентября 2021 г.

androidx.compose.compiler:compiler:1.1.0-alpha04 is released. Version 1.1.0-alpha04 contains these commits.

Version 1.1.0-alpha03

1 сентября 2021 г.

androidx.compose.compiler:compiler:1.1.0-alpha03 is released. Version 1.1.0-alpha03 contains these commits.

Новые возможности

  • The Compose Compiler now supports older versions of the Compose Runtime (1.0). Prior to this change, the Compose Compiler was only compatible with the Compose Runtime of the same version or later. After this change, the Compose Compiler is compatible with an older version of the Compose Runtime (1.0). ( aosp/1796968 )
  • Updated Compose 1.1.0-alpha03 to depend on Kotlin 1.5.30 . ( I74545 )

Version 1.1.0-alpha02

18 августа 2021 г.

androidx.compose.compiler:compiler:1.1.0-alpha02 is released. Version 1.1.0-alpha02 contains these commits.

Version 1.1.0-alpha01

4 августа 2021 г.

androidx.compose.compiler:compiler:1.1.0-alpha01 is released. Version 1.1.0-alpha01 contains these commits.

Версия 1.0

Версия 1.0.5

November 3, 2021

androidx.compose.compiler:compiler:1.0.5 is released. Version 1.0.5 contains these commits.

Исправления ошибок

  • Fixed a crash tracking derivedStateOf instances. ( aosp/1792247 )

Версия 1.0.4

13 октября 2021 г.

androidx.compose.compiler:compiler:1.0.4 is released. Version 1.0.4 contains these commits.

Dependency Updates

  • Updated to depend on Kotlin 1.5.31

Version 1.0.3

29 сентября 2021 г.

androidx.compose.compiler:compiler:1.0.3 is released. Version 1.0.3 contains these commits.

Dependency Updates

  • Updated to depend on Kotlin 1.5.30

Версия 1.0.2

1 сентября 2021 г.

androidx.compose.compiler:compiler:1.0.2 is released. Version 1.0.2 contains these commits.

Updated to support the Compose 1.0.2 release. Compose 1.0.2 is still compatible with Kotlin 1.5.21 .

Version 1.0.1

4 августа 2021 г.

androidx.compose.compiler:compiler:1.0.1 is released. Version 1.0.1 contains these commits.

Dependency Updates

  • Updated to depend on Kotlin 1.5.21 .

Версия 1.0.0

28 июля 2021 г.

androidx.compose.compiler:compiler:1.0.0 is released. Version 1.0.0 contains these commits.

Major features of 1.0.0

This is the first stable release of Compose. Please see the official Compose Release blog for more details!

Version 1.0.0-rc02

14 июля 2021 г.

androidx.compose.compiler:compiler:1.0.0-rc02 is released. Version 1.0.0-rc02 contains these commits.

Version 1.0.0-rc01

1 июля 2021 г.

androidx.compose.compiler:compiler:1.0.0-rc01 is released. Version 1.0.0-rc01 contains these commits.

Version 1.0.0-beta09

16 июня 2021 г.

androidx.compose.compiler:compiler:1.0.0-beta09 is released. Version 1.0.0-beta09 contains these commits.

Version 1.0.0-beta08

June 2, 2021

androidx.compose.compiler:compiler:1.0.0-beta08 is released. Version 1.0.0-beta08 contains these commits.

Version 1.0.0-beta07

18 мая 2021 г.

androidx.compose.compiler:compiler:1.0.0-beta07 is released. Version 1.0.0-beta07 contains these commits.

Version 1.0.0-beta06

5 мая 2021 г.

androidx.compose.compiler:compiler:1.0.0-beta06 is released. Version 1.0.0-beta06 contains these commits.

Version 1.0.0-beta05

21 апреля 2021 г.

androidx.compose.compiler:compiler:1.0.0-beta05 is released. Version 1.0.0-beta05 contains these commits.

Version 1.0.0-beta04

7 апреля 2021 г.

androidx.compose.compiler:compiler:1.0.0-beta04 is released. Version 1.0.0-beta04 contains these commits.

Version 1.0.0-beta03

24 марта 2021 г.

androidx.compose.compiler:compiler:1.0.0-beta03 is released. Version 1.0.0-beta03 contains these commits.

Version 1.0.0-beta02

10 марта 2021 г.

androidx.compose.compiler:compiler:1.0.0-beta02 is released. Version 1.0.0-beta02 contains these commits.

Version 1.0.0-beta01

24 февраля 2021 г.

androidx.compose.compiler:compiler:1.0.0-beta01 is released. Version 1.0.0-beta01 contains these commits.

This is the first release of Compose 1.0.0 Beta.

Version 1.0.0-alpha12

10 февраля 2021 г.

androidx.compose.compiler:compiler:1.0.0-alpha12 is released. Version 1.0.0-alpha12 contains these commits.

Version 1.0.0-alpha11

28 января 2021 г.

androidx.compose.compiler:compiler:1.0.0-alpha11 is released. Version 1.0.0-alpha11 contains these commits.

Version 1.0.0-alpha10

13 января 2021 г.

androidx.compose.compiler:compiler:1.0.0-alpha10 is released. Version 1.0.0-alpha10 contains these commits.

Version 1.0.0-alpha09

16 декабря 2020 г.

androidx.compose.compiler:compiler:1.0.0-alpha09 is released. Version 1.0.0-alpha09 contains these commits.

Version 1.0.0-alpha08

2 декабря 2020 г.

androidx.compose.compiler:compiler:1.0.0-alpha08 is released. Version 1.0.0-alpha08 contains these commits.

Version 1.0.0-alpha07

11 ноября 2020 г.

androidx.compose.compiler:compiler:1.0.0-alpha07 is released. Version 1.0.0-alpha07 contains these commits.

Новые возможности

  • Stability Inference & Propagation . The Compose Compiler Plugin will analyze types it compiles to infer whether or not it is eligible for certain optimizations by the runtime. This inferred result is then synthesized as metadata onto the class to be utilized by the compiler in other modules. Furthermore, the runtime result of these inferences is passed along in metadata passed to composable calls during composition. This necessitated a different metadata protocol for composable functions, which means that composable functions compiled with the alpha07 compiler will not be binary compatible with composable functions compiled with any earlier compiler version. ( aosp/1431988 )

Version 1.0.0-alpha06

28 октября 2020 г.

androidx.compose.compiler:compiler:1.0.0-alpha06 is released. Version 1.0.0-alpha06 contains these commits.

Version 1.0.0-alpha05

14 октября 2020 г.

androidx.compose.compiler:compiler:1.0.0-alpha05 is released. Version 1.0.0-alpha05 contains these commits.

Version 1.0.0-alpha04

1 октября 2020 г.

androidx.compose.compiler:compiler:1.0.0-alpha04 is released. Version 1.0.0-alpha04 contains these commits.

androidx.compose:compose-compiler has been refactored to androidx.compose.compiler:compiler . This is the first release in the new group.