Компилятор Compose
| Последнее обновление | Стабильный релиз | Предварительная версия для выпуска | Бета-версия | Альфа-версия |
|---|---|---|---|---|
| 7 августа 2024 г. | 1.5.15 | - | - | - |
Структура
Compose — это комбинация из 7 идентификаторов групп Maven в рамках androidx . Каждая группа содержит целевой набор функций, каждый со своим набором примечаний к выпуску.
В этой таблице поясняются группы и приводятся ссылки на каждый набор примечаний к выпуску.
| Группа | Описание |
|---|---|
| compose.animation | Создавайте анимации в их приложениях Jetpack Compose, чтобы улучшить пользовательский опыт. |
| compose.compiler | Преобразуйте функции с аннотацией @Composable и включите оптимизацию с помощью плагина компилятора Kotlin. |
| compose.foundation | Создавайте приложения Jetpack Compose, используя готовые к применению строительные блоки, и расширяйте их функциональность для создания собственных элементов дизайн-системы. |
| compose.material | Создавайте пользовательские интерфейсы 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. |
| compose.ui | Основные компоненты Compose UI, необходимые для взаимодействия с устройством, включают в себя компоновку, отрисовку и ввод данных. |
Объявление зависимостей
Чтобы добавить зависимость от Compose, необходимо добавить репозиторий Google Maven в ваш проект. Для получения дополнительной информации ознакомьтесь с информацией в репозитории Google Maven .
Добавьте зависимости для необходимых артефактов в файл build.gradle вашего приложения или модуля:
классный
android { buildFeatures { compose true } composeOptions { kotlinCompilerExtensionVersion = "1.5.15" } kotlinOptions { jvmTarget = "19" } }
Котлин
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.
Исправлены ошибки
- Убедитесь, что встроенный текст сообщения реализуется, даже если информация об источнике отключена. ( Iddb8 )
Версия 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. Подробную информацию см. в указанном выше диапазоне коммитов.
Версия 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был введен в среду выполнения Compose Runtime1.7.0-alpha03. Вызовы методаstartRestartGroupгенерируются только при использовании версии среды выполнения 1.7.0-alpha03 или более поздних версий.Вызов метода
startReplaceGroupвместоstartReplaceableGroupпозволяет среде выполнения более эффективно обнаруживать изменения, но может повлиять на порядок обнаружения измененийComposerи их отправки вApplier. Это может привести к незначительным изменениям в поведении, еслиApplierполагается на порядок обнаружения этих операций.
Новые функции
- Поддержка Kotlin 1.9.23
Исправлены ошибки
- Исправлена ошибка вывода вложенных внешних обобщенных типов. Нестабильно. ( I3437f , b/327643787 )
- Поддерживается поддержка нескольких файлов конфигурации стабильности. ( I8db14 , b/325326744 )
- Компилятор Compose теперь корректно преобразует переопределенные функции, рекурсивно проходясь по базовым классам/переопределениям. ( I2c9f9 , b/316196500 )
- Убедитесь, что мемоизация ссылок на функции не пытается захватить неявные родительские элементы локальных объявлений, если они не используются напрямую. ( Ib1267 )
- Исправлена генерация кода для компонуемой лямбда-функции, выполняемой в несколько строк (эту ошибку сложно обнаружить без включенной опции "nonSkippingGroupOptimization"). ( 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 содержит следующие коммиты.
Исправлены ошибки
- Поддержка динамических литералов внутри блоков инициализации. ( 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 )
- Исправление поведения встроенной функции remember, изменяющей поведение, связанное со ссылками на методы Java, путем принудительного использования метода .changed для типов функций со встроенной функцией remember. ( b/319810819 , 77128e )
- Добавлена экспериментальная оптимизация, которая удалит группы вокруг функций, которые нельзя пропустить, например, явно помеченных как
@NonSkippableComposable, и функций, которые неявно нельзя пропустить, таких как встроенные функции и функции, возвращающие значение, отличное от Unit, например,remember. - Эту оптимизацию можно включить, передав компилятору Kotlin параметр
-P plugin:androidx.compose.compiler.plugins.kotlin:nonSkippingGroupOptimization=true. ( 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
Исправлены ошибки
- Исправлена ошибка, из-за которой сборка с помощью Compose Compiler выдавала исключения при использовании Java 21. Пользователи, использующие 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 содержит следующие коммиты.
Исправлены ошибки
- Исправлена ошибка выполнения Compose, приводящая к сбою при вызове функции Composable параметром ключа
remember()( b/315855015 ) - Исправлена ошибка выполнения Compose при использовании
return@. ( b/315821171 ) - Избегайте использования абсолютных путей в ключах мемоизации, это позволит лучше использовать кэш сборки. ( 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
Исправлены ошибки
- Включить встроенную функцию remember — преобразование компилятора, которое встраивает remember в плагин компилятора Compose и заменяет сравнения
.equalsсравнениями целочисленных значений метаданных параметров для стабильных параметров. Это приводит к уменьшению количества используемых слотов и количества сравнений, выполняемых во время выполнения. Эту опцию можно отключить, указав аргумент плагина компилятора: -Pplugin:androidx.compose.compiler.plugins.kotlin:intrinsicRemember=false. ( If675f ) - Исправлена ошибка мемоизации адаптированных ссылок на функции и встроенных аргументов. ( b/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к известным параметрам (ранее из-за ошибки использование флага файла конфигурации было невозможно). ( 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 )
- Исправлена проверка на наличие изменений, которая в некоторых ситуациях препятствовала повторной компоновке лямбда-функций. ( db3699 )
- Исправлена проблема со стабильностью при инкрементальной компиляции модулей. ( 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 содержит эти коммиты.
Исправлены ошибки
- Вставьте номера строк для операторов return в составных функциях, возвращающих константу. ( I42d89 )
- Исправлена утечка памяти, вызванная переходом на новую точку входа плагина компилятора. ( 4f0a101 )
- Прекратите преобразование некомпозируемых интерфейсов fun в компиляторе Compose. Это приводит к тому, что интерфейсы fun обрабатываются так же, как и лямбда-функции, включая правила мемоизации. ( 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для вызовов expect/actual. Ожидается, что оба объявления будут иметь совпадающие аннотации.
Версия 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 и 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 зависит от Java 11 (вместо Java 17, требуемой версией 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 требуется, чтобы ваша среда сборки использовала Java 17+. На основе отзывов пользователей мы снизим это требование до Java 11 и выпустим ещё один релиз (1.4.6), чтобы лучше поддерживать пользователей, использующих более старые версии Java.
Новые функции
Поддержка Kotlin 1.8.20
Исправлены ошибки
- Распространить требование переопределения компонуемого оператора вызова на классы и интерфейсы, расширяющие лямбда-интерфейсы с соответствующими аннотациями. f8f2f78a1a769c2373201027f12700e772e4e97e
- Позволяет использовать аннотацию
@Composableдля оператораgetValueи помечает сгенерированный геттер для делегата как компонуемый в IR, чтобы гарантировать его корректное преобразование в дальнейшем. f174f6ee60ca957d5cb6d19a5bd02a88267cdf40 - Исправлена внутренняя ошибка выполнения compose (ожидалось, что будет вызван
applyChanges()) для встроенных функций. b/274786923 - Избегайте перехвата исключения
ProcessCancelledExceptionпоскольку оно имеет особое значение в IDE. b/274725600
Внешний вклад
- Улучшена поддержка компонуемых функций в Kotlin/Native. f52b6aeed22400dd4f4a4f05559a9aa42642402c
Версия 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 содержит эти коммиты.
Исправлены ошибки
- Исправление возврата встроенных лямбда-функций в Composable ( 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 содержит следующие коммиты.
Исправлены ошибки
- Отключить встроенную оптимизацию запоминания, которая ранее привела к появлению нескольких ошибок генерации кода.
- Отключить встроенную функцию запоминания в функциях, содержащих переменное количество аргументов.
- Исправлена ошибка пропуска в составных объектах с параметрами по умолчанию.
- Добавить резервное сообщение об ошибке в случае неудачной проверки совместимости с Kotlin.
- Удалить генерацию кода пропуска из встроенной лямбда-функции
Версия 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, то вызов относится к встроенной компонуемой функции. Однако значение может быть false для вызовов встроенных компонуемых функций из модулей, скомпилированных с версией плагина компилятора compose, которая не генерирует информацию о встроенной функции. - Классы
ImmutableCollectionи Persistent теперь считаются стабильными. - Новый параметр в
AnimatedContentдля метки инструмента. - Исправлена ошибка генерации кода для встроенных лямбда-выражений.
Версия 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-beta01
20 июля 2022 г.
Выпущена версия androidx.compose.compiler:compiler:1.3.0-beta01 . Версия 1.3.0-beta01 содержит следующие коммиты.
Новые функции
- Добавлена поддержка Kotlin
1.7.10
Версия 1.2
Версия 1.2.0
29 июня 2022 г.
Выпущена версия androidx.compose.compiler:compiler:1.2.0 . Версия 1.2.0 содержит следующие коммиты.
Важные изменения по сравнению с версией 1.1.0
- Поддержка Kotlin 1.7.0
- Ознакомьтесь с нашей статьей в блоге, в которой объясняется новая стратегия версионирования компилятора Compose.
Версия 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-beta03
1 июня 2022 г.
Выпущена версия androidx.compose.compiler:compiler:1.2.0-beta03 . Версия 1.2.0-beta03 содержит следующие коммиты.
Версия 1.2.0-beta02
18 мая 2022 г.
Выпущена версия androidx.compose.compiler:compiler:1.2.0-beta02 . Версия 1.2.0-beta02 содержит следующие коммиты.
Версия 1.2.0-beta01
11 мая 2022 г.
Выпущена версия androidx.compose.compiler:compiler:1.2.0-beta01 . Версия 1.2.0-beta01 содержит следующие коммиты.
- Это первый бета-релиз версии 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
- Стабильная поддержка эффекта Overscroll в Android 12.
- Улучшена настройка размера сенсорной области.
- Обратите внимание, что в Compose 1.0 компоненты Material будут расширять свое пространство компоновки в соответствии с рекомендациями Material Design по размеру сенсорной области . Например, сенсорная область кнопки будет расширяться до минимального размера
48x48dp, даже если вы установите меньший размер кнопки. Это приводит поведение Compose Material в соответствие с поведением компонентов Material Design, обеспечивая согласованность при использовании Views и Compose. Это изменение также гарантирует, что при создании пользовательского интерфейса с использованием компонентов Compose Material будут соблюдены минимальные требования к доступности сенсорной области. - Стабильная поддержка Navigation Rail
- Преобразует ряд ранее экспериментальных АФИ в стабильные продукты.
- Поддержка более новых версий 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совместим с Kotlin1.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совместим с Kotlin1.6.0. Совместимая сборка
1.6.10доступна через androidx.dev SNAPSHOTs сbuildId8003490. Следующий фрагмент кода зависимости настроит SNAPSHOTs для компилятора 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-beta01
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 )
- Обновлен Compose
1.1.0-alpha03, теперь он зависит от Kotlin1.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 содержит следующие коммиты.
Исправлены ошибки
- Исправлена ошибка, приводившая к сбою при отслеживании экземпляров derivedStateOf. ( 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 !
Версия 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-beta05
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-beta03
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-beta01
24 февраля 2021 г.
Выпущена версия androidx.compose.compiler:compiler:1.0.0-beta01 . Версия 1.0.0-beta01 содержит следующие коммиты.
Это первый релиз бета-версии Compose 1.0.0.
Версия 1.0.0-alpha12
10 февраля 2021 г.
Выпущена версия androidx.compose.compiler:compiler:1.0.0-alpha12 . Версия 1.0.0-alpha12 содержит следующие коммиты.
Версия 1.0.0-alpha11
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 . Это первый релиз в новой группе.