Compilateur Compose
androidx.compose
(Voir la documentation de référence de l'API pour tous les packages Compose)
Dernière mise à jour | Version stable | Version finale | Version bêta | Version alpha |
---|---|---|---|---|
7 août 2024 | 1.5.15 | - | - | - |
Structure
Compose est une combinaison de sept ID de groupe Maven dans androidx
, chacun contenant un sous-ensemble ciblé de fonctionnalités. Chaque sous-ensemble est associé à son propre ensemble de notes de version.
Ce tableau décrit les différents groupes et renvoie à chaque ensemble de notes de version.
Groupe | Description |
---|---|
compose.animation | Créer des animations dans les applications Jetpack Compose afin d'enrichir l'expérience utilisateur. |
compose.compiler | Transformation de fonctions @Composable et prise en charge des optimisations avec un plug-in de compilation en Kotlin. |
compose.foundation | Conception d'applications Jetpack Compose avec des composants prêts à l'emploi et extension de la base pour créer vos propres éléments de système de conception. |
compose.material | Création d'UI Jetpack Compose avec des composants Material Design prêts à l'emploi. Il s'agit du point d'entrée de niveau supérieur de Compose, conçu pour fournir des composants qui correspondent à ceux décrits sur www.material.io. |
compose.material3 | Création d'UI Jetpack Compose grâce aux composants Material Design 3, la nouvelle évolution de Material Design. Material 3 inclut des thématisations et des composants mis à jour ainsi que des fonctionnalités de personnalisation Material You telles que les couleurs dynamiques. Material 3 est conçu pour correspondre au nouveau style visuel et à l'UI du système Android 12. |
compose.runtime | Composants fondamentaux du modèle de programmation et de la gestion d'état de Compose, et environnement d'exécution principal du plug-in Compose Compiler à cibler. |
compose.ui | Composants fondamentaux de l'interface utilisateur de Compose nécessaires pour interagir avec l'appareil, y compris la mise en page, le dessin et la saisie. |
Déclarer des dépendances
Pour ajouter une dépendance sur Compose, vous devez ajouter le dépôt Maven de Google à votre projet. Pour en savoir plus, consultez la section Dépôt Maven de Google.
Ajoutez les dépendances correspondant aux artefacts dont vous avez besoin dans le fichier build.gradle
de votre application ou de votre 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" } }
Pour en savoir plus sur les dépendances, consultez Ajouter des dépendances de compilation.
Commentaires
Vos commentaires nous aident à améliorer Jetpack. N'hésitez pas à nous contacter si vous découvrez de nouveaux problèmes ou si vous avez des idées pour améliorer cette bibliothèque. Veuillez consulter les problèmes existants de cette bibliothèque avant d'en signaler un nouveau. Vous pouvez ajouter votre vote à un problème existant en cliquant sur le bouton en forme d'étoile.
Pour en savoir plus, consultez la documentation sur l'outil Issue Tracker.
Version 1.5
Version 1.5.15
7 août 2024
Publication d'androidx.compose.compiler:compiler:1.5.15
et d'androidx.compose.compiler:compiler-hosted:1.5.15
. La version 1.5.15 contient ces commits.
- Cette version du compilateur cible Kotlin 1.9.25.
Version 1.5.14
14 mai 2024
Publication d'androidx.compose.compiler:compiler:1.5.14
et d'androidx.compose.compiler:compiler-hosted:1.5.14
. La version 1.5.14 contient ces commits.
Cette version du compilateur cible Kotlin 1.9.24.
Correction de bugs
- Assurez-vous que le corps intégré est réalisé lorsque les informations sources sont désactivées. (Idddb8).
Version 1.5.13
1er mai 2024
Publication d'androidx.compose.compiler:compiler:1.5.13
et d'androidx.compose.compiler:compiler-hosted:1.5.13
. La version 1.5.13 contient ces commits.
Nouvelles fonctionnalités
- L'omission intensive n'est plus considérée comme expérimentale et peut être utilisée sans risque en production. Il deviendra le comportement par défaut dans une prochaine version. (I6c8c4).
Correction de bugs
- Correction de la compatibilité binaire des fonctions
@Composable
avec des paramètres de classe de valeur ayant une valeur par défaut et encapsulant une valeur non primitive. (I89465). - Corrections en amont pour JS et la compilation native à partir de la multiplateforme Compose. Pour en savoir plus, consultez la plage de validation ci-dessus.
Version 1.5.12
17 avril 2024
Publication d'androidx.compose.compiler:compiler:1.5.12
et d'androidx.compose.compiler:compiler-hosted:1.5.12
. La version 1.5.12 contient ces commits.
Correction de bugs
- Correction d'un problème de compilation incrémentielle avec Kotlin 1.9.23. (Ifca55).
- Correction des types ne pouvant pas avoir une valeur nulle dans les paramètres de valeur pour les classes intégrées non primitives. (Ie6bb5).
Version 1.5.11
20 mars 2024
Publication d'androidx.compose.compiler:compiler:1.5.11
et d'androidx.compose.compiler:compiler-hosted:1.5.11
. La version 1.5.11 contient ces commits.
Notes
À partir de cette version, le compilateur appellera
startReplaceGroup
au lieu destartReplacableGroup
lorsqu'un module est compilé avec un environnement d'exécution contenant cette méthode.startReplaceGroup
a été introduit dans l'environnement d'exécution dans l'environnement d'exécution Compose1.7.0-alpha03
. Les appels àstartRestartGroup
ne sont générés que si vous ciblez la version 1.7.0-alpha03 ou ultérieure de l'environnement d'exécution.Appeler
startReplaceGroup
au lieu destartReplaceableGroup
permet à l'environnement d'exécution de détecter les modifications plus efficacement, mais cela peut affecter l'ordre dans lequel les modifications sont détectées parComposer
et envoyées auApplier
. Cela peut entraîner de légers changements de comportement si uneApplier
dépend de l'ordre dans lequel ces opérations sont détectées.
Nouvelles fonctionnalités
- Compatibilité avec Kotlin 1.9.23
Correction de bugs
- Correction des types génériques externes imbriqués qui sont considérés comme instables. (I3437f, b/327643787).
- Prenez en charge plusieurs fichiers de configuration de stabilité. (I8db14, b/325326744).
- Le compilateur Compose transforme désormais correctement les fonctions remplacées en parcourant de manière récursive les classes/remplacements de base. (I2c9f9, b/316196500).
- Assurez-vous que la mémorisation des références de fonction n'essaie pas de capturer les parents implicites des déclarations locales lorsqu'elles ne sont pas utilisées directement. (Ib1267).
- Correction de la génération de code pour le lambda crossinline composable (difficile de rencontrer ce bug sans "nonSkippingGroupOptimization" activé). (Icb2fd, b/325502738).
Version 1.5.10
21 février 2024
Publication d'androidx.compose.compiler:compiler:1.5.10
et d'androidx.compose.compiler:compiler-hosted:1.5.10
. Liste des commits de la version 1.5.10
Correction de bugs
- Prise en charge des littéraux actifs dans des blocs "init". (b/320397488).
- Vérifier si la fonction se trouve dans la classe locale à l'aide du paramètre de répartiteur (b/323123439)
Version 1.5.9
7 février 2024
Publication d'androidx.compose.compiler:compiler:1.5.9
et d'androidx.compose.compiler:compiler-hosted:1.5.9
. Liste des commits de la version 1.5.9
Correction de bugs
- Correction des appels composables dans l'initialiseur d'objets anonyme. (b/320261458, 96315c).
- Comptez les déclarations locales récursives en tant que captures. (b/318745941, e7b4b0).
- Correction du comportement de modification de la mémorisation intrinsèque liée aux références de méthode Java en forçant l'option .changed pour les types de fonctions avec mémorisation intrinsèque. (b/319810819, 77128e).
- Ajout d'une optimisation expérimentale qui supprimera les groupes autour des fonctions non désactivables, comme celles qui sont explicitement marquées comme
@NonSkippableComposable
, et celles qui ne sont pas implicitement désactivables, comme les fonctions intégrées et celles qui renvoient une valeur qui n'est pas un élément Unité, commeremember
. - Cette optimisation peut être activée
en transmettant l'option du plug-in,
-P plugin:androidx.compose.compiler.plugins.kotlin:nonSkippingGroupOptimization=true
au compilateur Kotlin. (I1688f).
Version 1.5.8
10 janvier 2024
Publication d'androidx.compose.compiler:compiler:1.5.8
et d'androidx.compose.compiler:compiler-hosted:1.5.8
. Liste des commits de la version 1.5.8
Nouvelles fonctionnalités
- Compatibilité avec Kotlin 1.9.22
Correction de bugs
- Correction d'un bug qui provoquait des exceptions lors de la compilation du compilateur Compose en cas de compilation avec Java21. Les utilisateurs qui utilisent le compilateur Compose de Google Maven (c'est-à-dire qui ne le créent pas eux-mêmes) n'ont jamais été affectés par ce bug. (b/316644294).
- Correction d'un bug qui provoquait le signalement d'une erreur
COMPOSABLE_EXPECTED
pour certains appelants de lambdas non intégrés. (b/309364913). - Ajout d'une erreur de compilation pour les paramètres par défaut des fonctions ouvertes (auparavant, seule cette erreur était limitée aux fonctions abstraites). Pour le moment, Compose ne permet pas de remplacer les paramètres par défaut des fonctions remplacées. Par ailleurs, le remplacement d'une fonction composable par des paramètres par défaut échouait au moment de l'exécution. Utilisez
@Suppress("ABSTRACT_COMPOSABLE_DEFAULT_PARAMETER_VALUE")
pour supprimer. Notez toutefois que le remplacement de cette fonction sans fournir de valeur par défaut pour le paramètre entraînera un plantage au moment de l'exécution.(b/317490247) - Correction d'un bug dans la mémoire intrinsèque qui empêchait la propagation correcte des valeurs. (b/316327367).
Contribution externe
- Corriger une faute de frappe dans la documentation. (aosp/288106).
Version 1.5.7
19 décembre 2023
Publication d'androidx.compose.compiler:compiler:1.5.7
et d'androidx.compose.compiler:compiler-hosted:1.5.7
. Liste des commits de la version 1.5.7
Correction de bugs
- Correction du plantage de l'environnement d'exécution Compose lorsque le paramètre de clé
remember()
appelle une fonction modulable. (b/315855015) - Correction du plantage de l'environnement d'exécution Compose lorsque
return@
est utilisé. (b/315821171). - Évitez d'utiliser des chemins absolus dans les clés de mémoisation, car cela permet une meilleure utilisation du cache de compilation. (b/313937484).
Version 1.5.6
6 décembre 2023
Publication d'androidx.compose.compiler:compiler:1.5.6
et d'androidx.compose.compiler:compiler-hosted:1.5.6
. Liste des commits de la version 1.5.6
Nouvelles fonctionnalités
- Compatibilité avec Kotlin 1.9.21
Correction de bugs
- Activer la mémorisation intrinsèque : transformation du compilateur qui intègre le plug-in de compilation Compose et qui remplace les comparaisons
.equals
par des comparaisons int de la méta de paramètre pour les paramètres stables. Ainsi, moins d'emplacements sont utilisés et moins de comparaisons sont effectuées au moment de l'exécution. L'option peut être désactivée en fournissant l'argument du plug-in de compilation: -Pplugin:androidx.compose.compiler.plugins.kotlin:intrinsicRemember=false
. (If675f). - Correction de la mémoisation des références de fonction adaptées et des arguments intégrés. (b/312738720).
- Création de groupes lors de la fermeture d'un appel de fonction intégrée. (b/312242547)
Contribution externe
- Correction du plantage de l'environnement d'exécution k/native et k/wasm en raison d'une instruction return manquante dans les fonctions composables lorsqu'il s'agit de la dernière instruction et qu'il renvoie une constante nulle (aosp/2835716).
Version 1.5.5
29 novembre 2023
Publication d'androidx.compose.compiler:compiler:1.5.5
et d'androidx.compose.compiler:compiler-hosted:1.5.5
. Liste des commits de la version 1.5.5
Correction de bugs
- Correction d'un plantage lors de la recherche de types de composables remplacés. (Ib6d2c, b/297665426)
- Ajout de
stabilityConfigurationPath
aux paramètres connus (auparavant, le bug empêchait l'utilisation de l'indicateur du fichier de configuration). (b/309765121). - Correction de problèmes liés à la mémoisation. (I081d1, I4d7bf)
- Correction de la recomposition en tenant compte de l'état de paramètre incertain dans la mémorisation intrinsèque. (b/263402091)
- Correction des informations de débogage de ligne pour la mémorisation intrinsèque. (Ic8cf5)
- Correction du plantage (échec de l'abaissement infrarouge) lors de la recherche de types composables remplacés au moment de la compilation. (b/297665426)
- Ajout de
Contribution externe
- Mémorise des références de fonctions stables avec des arguments. (I4d7bf, b/302680514)
Version 1.5.4
7 novembre 2023
Publication d'androidx.compose.compiler:compiler:1.5.4
et d'androidx.compose.compiler:compiler-hosted:1.5.4
. Liste des commits de la version 1.5.4
Mises à jour des dépendances
- Le compilateur Compose est désormais compatible avec Kotlin 1.9.20
Nouvelles fonctionnalités
- Ajout d'une option expérimentale pour activer le mode "Ignorer" de façon intensive. Le mode de désactivation fort permet d'ignorer les composables avec des paramètres instables. De plus, les lambdas avec des captures instables sont mémoisés. Cette fonctionnalité est expérimentale et n'est pas considérée comme prête à être utilisée en production. (22421e).
- Ajout d'un indicateur pour activer/désactiver les informations sur la source/la trace. (4d45f09).
- Autorise la configuration de la stabilité des classes externes via un fichier de configuration. (If40eb).
Correction de bugs
- Correction de la sortie anticipée des fonctions composables lorsque les informations sources ne sont pas collectées. (fe6267).
- Correction de l'erreur continue à partir des fonctions composables. (948362)
- Correction du problème de résolution des fonctions composables appelées à partir d'un appel de fonction présentant plusieurs surcharges qui dépendent du type renvoyé d'expression. (2d36d0).
- Correction de la mémoisation lorsque la référence de fonction ne comporte pas de récepteur de distribution. (fc2326).
- Correction d'une vérification sale qui empêchait la recomposition des lambdas dans certaines situations. (db3699).
- Correction de la stabilité lors de la compilation incrémentielle entre les modules. (7d3e127).
- Réduisez le champ d'application de
@DontMemoize
aux expressions lambda uniquement. (7a7fa52). - Correction des variables qui n'étaient pas capturées correctement lors de l'utilisation d'une interface modulable en tant que lambda. (5ae3556).
Contribution externe
- Utilisation du symbole d'égalité structurelle pour la comparaison numérique et nulle. (c612a0)
Version 1.5.3
29 août 2023
Publication d'androidx.compose.compiler:compiler:1.5.3
, androidx.compose.compiler:compiler-daemon:1.5.3
et androidx.compose.compiler:compiler-hosted:1.5.3
. Liste des commits de la version 1.5.3
Mise à jour de la dépendance
- La version de Kotlin est mise à jour vers la version 1.9.10.
Version 1.5.2
23 août 2023
Publication d'androidx.compose.compiler:compiler:1.5.2
, androidx.compose.compiler:compiler-daemon:1.5.2
et androidx.compose.compiler:compiler-hosted:1.5.2
. Liste des commits de la version 1.5.2
Correction de bugs
- Insérez des numéros de ligne pour les instructions de retour dans les fonctions composables à renvoi constant. (I42d89).
- Correction d'une fuite de mémoire causée par le passage au nouveau point d'entrée du plug-in de compilation. (4f0a101).
- Arrêtez de transformer des interfaces amusantes non modulables dans le compilateur Compose. Ainsi, les interfaces amusantes sont traitées de la même manière que les lambdas, y compris les règles de mémoisation. (28b3ce9).
- Utilisez le type d'argument "vararg" pour déduire la stabilité sur le site d'appel. (bc83645).
Version 1.5.1
26 juillet 2023
Publication d'androidx.compose.compiler:compiler:1.5.1
, androidx.compose.compiler:compiler-daemon:1.5.1
et androidx.compose.compiler:compiler-hosted:1.5.1
. Liste des commits de la version 1.5.1
Correction de bugs
- Correction des repères d'événement de trace de composition dans les fonctions
@ReadOnlyComposable
avec des retours anticipés, ce qui entraînait une corruption de la trace.
Version 1.5.0
18 juillet 2023
Publication d'androidx.compose.compiler:compiler:1.5.0
, androidx.compose.compiler:compiler-daemon:1.5.0
et androidx.compose.compiler:compiler-hosted:1.5.0
. Liste des commits de la version 1.5.0
Compatibilité expérimentale de K2
- Le compilateur Compose 1.5.0 offre une compatibilité expérimentale pour le compilateur K2. Certaines fonctionnalités de Compose ne sont pas encore compatibles avec la version K2 et le seront dans les futures versions du compilateur.
Changements importants depuis la version 1.4.0
- La version de Kotlin est mise à jour vers la version 1.9.0.
- Abandon des arguments nommés pour les appels lambda
@Composable
. Cette fonctionnalité s'appuie sur des API de compilation internes et ne sera pas compatible avec K2. - Ajout d'un diagnostic pour vérifier l'annotation
@Composable
sur les appels attendus/réels. Les deux déclarations doivent avoir des annotations correspondantes.
Version 1.4.8
Version 1.4.8
28 juin 2023
Publication d'androidx.compose.compiler:compiler:1.4.8
, androidx.compose.compiler:compiler-daemon:1.4.8
et androidx.compose.compiler:compiler-hosted:1.4.8
. Liste des commits de la version 1.4.8
Nouvelles fonctionnalités
- La version du compilateur Kotlin cible est remplacée par la version 1.8.22.
Correction de bugs
- Amélioration du message d'erreur pour les forçages
@Composable
. Désormais, il signale correctement les différences entre les annotations. - Avertir en cas d'annotation
@Composable
redondante sur les lambdas intégrés qui ne doivent pas être marqués comme composables. Cette fonctionnalité ne sera pas compatible avec le compilateur K2.
Version 1.4.7
Version 1.4.7
3 mai 2023
Publication d'androidx.compose.compiler:compiler:1.4.7
, androidx.compose.compiler:compiler-daemon:1.4.7
et androidx.compose.compiler:compiler-hosted:1.4.7
. Liste des commits de la version 1.4.7
Nouvelles fonctionnalités
- Compatibilité avec Kotlin 1.8.21
- Ajout de versions primitives de l'API
State
, qui permettent de suivre les valeurs Int, Long, Float et Double dans des objetsState
sans entraîner de pénalités pour l'autoboxing.
Version 1.4.6
Version 1.4.6
19 avril 2023
Publication d'androidx.compose.compiler:compiler:1.4.6
, androidx.compose.compiler:compiler-daemon:1.4.6
et androidx.compose.compiler:compiler-hosted:1.4.6
. Liste des commits de la version 1.4.6
Correction de bugs
- Compose Compiler dépend désormais de Java11 (au lieu de Java17 requis par la version 1.4.5 du compilateur Compose) pour mieux prendre en charge les utilisateurs qui utilisent encore d'anciennes versions de Java.
Version 1.4.5
Version 1.4.5
12 avril 2023
Publication d'androidx.compose.compiler:compiler:1.4.5
, androidx.compose.compiler:compiler-daemon:1.4.5
et androidx.compose.compiler:compiler-hosted:1.4.5
. Liste des commits de la version 1.4.5
REMARQUE Cette version de Compose Compiler nécessite que votre environnement de compilation utilise Java 17 ou une version ultérieure. Suite aux commentaires des utilisateurs, nous reviendrons à cette exigence sur Java 11 et en proposerons une autre (1.4.6) afin de mieux prendre en charge les utilisateurs d'anciennes versions de Java.
Nouvelles fonctionnalités
Compatibilité avec Kotlin 1.8.20
Correction de bugs
- Propagation de l'exigence de forçage de l'opérateur d'appel composable aux classes et interfaces qui étendent les interfaces lambda avec les annotations correspondantes.f8f2f78a1a769c2373201027f12700e772e4e97e
- Autorise l'utilisation de l'annotation
@Composable
sur l'opérateurgetValue
et marque le getter généré pour le délégué comme composable dans la infrarouge pour s'assurer qu'il sera correctement transformé ultérieurement. f174f6ee60ca957d5cb6d19a5bd02a88267cdf40 - Correction de l'erreur d'exécution interne de Compose (appel de
applyChanges()
attendu) pour les fonctions intégrées.b/274786923 - Évitez de capturer
ProcessCancelledException
, car il a une signification particulière dans l'IDE.b/274725600
Contribution externe
- Amélioration de la prise en charge des fonctions composables en Kotlin/Native.f52b6aeed22400dd4f4a4f05559a9aa42642402c
Version 1.4.4
Version 1.4.4
22 mars 2023
Publication d'androidx.compose.compiler:compiler:1.4.4
, androidx.compose.compiler:compiler-daemon:1.4.4
et androidx.compose.compiler:compiler-hosted:1.4.4
. Liste des commits de la version 1.4.4
Correction de bugs
- Correction des retours lambda intégrés du composable. (72172b)
- Autoriser les composables à renvoyer
Nothing
(ne génère pas d'erreur lors de l'utilisation de TODO dans une fonction composable) 3aea8d)
Version 1.4.3
Version 1.4.3
22 février 2023
Publication d'androidx.compose.compiler:compiler:1.4.3
. Liste des commits de la version 1.4.3
Correction de bugs
- Correction des appels de composables conditionnels dans les arguments des appels de composables. (Ie93edb)
Version 1.4.2
Version 1.4.2
8 février 2023
Publication d'androidx.compose.compiler:compiler:1.4.2
. Liste des commits de la version 1.4.2
Nouvelles fonctionnalités
- Compatibilité avec Kotlin 1.8.10.
Correction de bugs
- Ajout des groupes dans le corps des lambdas non désactivables afin d'éviter tout bug de recomposition.
Version 1.4.1
Version 1.4.1
8 février 2023
Publication d'androidx.compose.compiler:compiler:1.4.1
. Liste des commits de la version 1.4.1
Correction de bugs
- Désactivation de l'optimisation de la mémorisation intrinsèque, qui comportait quelques bugs de génération de code.
- Désactivation de la mémorisation intrinsèque dans les fonctions contenant un paramètre vararg.
- Correction des erreurs qui ignoraient des éléments dans les composables avec des paramètres par défaut.
- Ajout d'un message d'erreur de remplacement défensif si la vérification de la compatibilité Kotlin échoue.
- Suppression de l'étape où la génération de code était ignorée à partir du lambda intégré.
Version 1.4.0
17 janvier 2023
Publication d'androidx.compose.compiler:compiler:1.4.0
. Liste des commits de la version 1.4.0
Changements importants depuis la version 1.3.0
- Compatibilité avec Kotlin 1.8.0.
- Mémorisation intrinsèque désactivée.
- La classe de données ui-tooling
Group
dispose désormais d'un champ,isInline
, qui indique si le groupe est destiné à un appel à une fonction modulable intégrée. SiisInline
est défini surtrue
, il s'agit d'un appel à une fonction modulable intégrée. Toutefois, la valeur peut être "false" pour les appels à des fonctions modulables intégrées qui proviennent de modules compilés avec une version du plug-in de compilation Compose qui ne génère pas d'informations sur la fonction intégrée. ImmutableCollection
et ses frères persistants sont maintenant considérés comme stables.- Nouveau paramètre dans
AnimatedContent
pour l'étiquette d'outil. - Résolution du problème de génération de code pour le lambda intégré.
Version 1.4.0-alpha02
11 novembre 2022
Publication d'androidx.compose.compiler:compiler:1.4.0-alpha02
. Liste des commits de la version 1.4.0-alpha02
Nouvelles fonctionnalités
- Ajout de la compatibilité avec Kotlin
1.7.21
Version 1.4.0-alpha01
9 novembre 2022
Publication d'androidx.compose.compiler:compiler:1.4.0-alpha01
. Liste des commits de la version 1.4.0-alpha01.
Correction de bugs
- Correction permettant de renvoyer plus tôt des fonctions modulables intégrées (b/255350755)
- Correction d'un bug lors de la réduction du leurre qui empêchait la prise en charge de Kotlin/JS dans Compose (6a40f8)
Version 1.3
Version 1.3.2
4 octobre 2022
Publication d'androidx.compose.compiler:compiler:1.3.2
. Liste des commits de la version 1.3.2.
Nouvelle fonctionnalité
- Cette version inclut une mise à jour vers Kotlin 1.7.20.
Version 1.3.1
7 septembre 2022
Publication d'androidx.compose.compiler:compiler:1.3.1
. Liste des commits de la version 1.3.1
Correction de bugs
- Correction de
IllegalStateException
: le compilateur Compose marquait par erreur les types d'unités comme composables dans certaines circonstances. (b/237863365) - Les utilisateurs doivent maintenant spécifier leur version de Kotlin préférée lorsqu'ils suppriment la vérification de la version du compilateur. (I9e5e2)
Version 1.3.0
10 août 2022
Publication d'androidx.compose.compiler:compiler:1.3.0
. Liste des commits de la version 1.3.0.
Version 1.3.0-rc02
3 août 2022
Publication d'androidx.compose.compiler:compiler:1.3.0-rc02
. Liste des commits de la version 1.3.0-rc02
Version 1.3.0-rc01
27 juillet 2022
Publication d'androidx.compose.compiler:compiler:1.3.0-rc01
. Liste des commits de la version 1.3.0-rc01
Version 1.3.0-beta01
20 juillet 2022
Publication d'androidx.compose.compiler:compiler:1.3.0-beta01
. Liste des commits de la version 1.3.0-beta01
Nouvelles fonctionnalités
- Ajout de la compatibilité avec Kotlin
1.7.10
Version 1.2
Version 1.2.0
29 juin 2022
Publication d'androidx.compose.compiler:compiler:1.2.0
. Liste des commits de la version 1.2.0
Changements importants depuis la version 1.1.0
- Compatibilité avec Kotlin 1.7.0.
- Consultez notre article de blog expliquant notre nouvelle stratégie de gestion des versions dans Compose.
Version 1.2.0-rc02
22 juin 2022
Publication d'androidx.compose.compiler:compiler:1.2.0-rc02
. Liste des commits de la version 1.2.0-rc02
Correction de bugs
- Suppression de la génération de code sur les événements de trace du composable (aosp/2127922)
Version 1.2.0-rc01
15 juin 2022
Publication d'androidx.compose.compiler:compiler:1.2.0-rc01
. Liste des commits de la version 1.2.0-rc01.
Version 1.2.0-beta03
1er juin 2022
Publication d'androidx.compose.compiler:compiler:1.2.0-beta03
. Liste des commits de la version 1.2.0-beta03
Version 1.2.0-beta02
18 mai 2022
Publication d'androidx.compose.compiler:compiler:1.2.0-beta02
. Liste des commits de la version 1.2.0-beta02
Version 1.2.0-beta01
11 mai 2022
Publication d'androidx.compose.compiler:compiler:1.2.0-beta01
. Liste des commits de la version 1.2.0-beta01
- Il s'agit de la première version bêta de la version 1.2. Aucune modification n'a été apportée depuis la dernière version alpha.
Nouvelles fonctionnalités
- Ajout de la compatibilité avec Kotlin
1.6.21
Version 1.2.0-alpha08
20 avril 2022
Publication d'androidx.compose.compiler:compiler:1.2.0-alpha08
. Liste des commits de la version 1.2.0-alpha08.
Version 1.2.0-alpha07
6 avril 2022
Publication d'androidx.compose.compiler:compiler:1.2.0-alpha07
. Liste des commits de la version 1.2.0-alpha07
Version 1.2.0-alpha06
23 mars 2022
Publication d'androidx.compose.compiler:compiler:1.2.0-alpha06
. Liste des commits de la version 1.2.0-alpha06.
Version 1.2.0-alpha05
9 mars 2022
Publication d'androidx.compose.compiler:compiler:1.2.0-alpha05
. Liste des commits de la version 1.2.0-alpha05
Version 1.2.0-alpha04
23 février 2022
Publication d'androidx.compose.compiler:compiler:1.2.0-alpha04
. Liste des commits de la version 1.2.0-alpha04.
Version 1.2.0-alpha03
9 février 2022
Publication d'androidx.compose.compiler:compiler:1.2.0-alpha03
. Liste des commits de la version 1.2.0-alpha03
Version 1.2.0-alpha02
26 janvier 2022
Publication d'androidx.compose.compiler:compiler:1.2.0-alpha02
. Liste des commits de la version 1.2.0-alpha02
Version 1.2.0-alpha01
12 janvier 2022
Publication d'androidx.compose.compiler:compiler:1.2.0-alpha01
. Liste des commits de la version 1.2.0-alpha01
Nouvelles fonctionnalités
- Ajout de la compatibilité avec Kotlin
1.6.10
Version 1.1
Version 1.1.1
23 février 2022
Publication d'androidx.compose.compiler:compiler:1.1.1
. Liste des commits de la version 1.1.1
Correction de bugs
- Correction d'une exception
NullPointerException
dansandroidx.compose.ui.platform.RenderNodeLayer.updateDisplayList
. (aosp/1947059, b/206677462) - Correction du plantage causé par le contenu du presse-papiers lors de la lecture du presse-papiers sur Android. (I06020, b/197769306)
- Résolution du problème de lecture de droite à gauche dans
LazyVerticalGrid
. (aosp/1931080, b/207510535)
Version 1.1.0
9 février 2022
Publication d'androidx.compose.compiler:compiler:1.1.0
. Liste des commits de la version 1.1.0
Modifications importantes depuis la version 1.0.0
- Stabilisation de la prise en charge du défilement hors limites d'Android 12.
- Améliorations apportées au dimensionnement des zones cibles tactiles.
- Notez que, dans Compose 1.0, les composants Material développent leur espace de mise en page pour respecter les consignes d'accessibilité Material concernant la taille des zones cibles tactiles. Par exemple, la zone cible tactile minimale d'un bouton est de
48x48dp
et sera étendue si le paramètre indique une dimension inférieure. Cela permet d'aligner la bibliothèque Compose Material sur le comportement des composants Material Design, pour plus de cohérence si vous combinez le système de vues et Compose. Cette modification garantit également que les conditions minimales requises pour l'accessibilité des zones cibles tactiles sont remplies lorsque vous créez votre UI à l'aide de composants Compose Material. - Stabilisation de la prise en charge du rail de navigation.
- Reclassement d'un certain nombre d'API expérimentales en version stable.
- Prise en charge des nouvelles versions de Kotlin.
Version 1.1.0-rc03
26 janvier 2022
Publication d'androidx.compose.compiler:compiler:1.1.0-rc03
. Liste des commits de la version 1.1.0-rc03
Correction de bugs
- Mise à jour pour assurer la compatibilité avec Compose Material 1.1.0-rc03
Version 1.1.0-rc02
16 décembre 2021
Publication d'androidx.compose.compiler:compiler:1.1.0-rc02
. Liste des commits de la version 1.1.0-rc02.
Mises à jour des dépendances
- Le compilateur Compose
1.1.0-rc02
est compatible avec la version1.6.10
de Kotlin.
Version 1.1.0-rc01
15 décembre 2021
Publication d'androidx.compose.compiler:compiler:1.1.0-rc01
. Liste des commits de la version 1.1.0-rc01
Modifications de la dépendance
- Le compilateur Compose
1.1.0-rc01
est compatible avec la version1.6.0
de Kotlin. Une version
1.6.10
compatible est disponible via les Androidx.dev SNAPSHOT avec lebuildId
8003490. L'extrait de dépendance suivant configure les SNAPSHOT pour le compilateur Compose :Ajoutez l'extrait suivant au fichier
build.gradle
racine de votre projet :buildscript { repositories { google() jcenter() maven { url 'https://androidx.dev/snapshots/builds/8003490/artifacts/repository' } } }
Ajoutez l'extrait de code suivant dans le fichier
build.gradle
de votre application ou module qui utilise Compose :android { composeOptions { kotlinCompilerExtensionVersion = "1.2.0-SNAPSHOT" } }
Version 1.1.0-beta04
1er décembre 2021
Publication d'androidx.compose.compiler:compiler:1.1.0-beta04
. Liste des commits de la version 1.1.0-beta04
Nouvelles fonctionnalités
- Mise à jour pour assurer la compatibilité avec Kotlin
1.6.0
Version 1.1.0-beta03
17 novembre 2021
Publication d'androidx.compose.compiler:compiler:1.1.0-beta03
. Liste des commits de la version 1.1.0-beta03
Version 1.1.0-beta02
3 novembre 2021
Publication d'androidx.compose.compiler:compiler:1.1.0-beta02
. Liste des commits de la version 1.1.0-beta02.
Version 1.1.0-beta01
27 octobre 2021
Publication d'androidx.compose.compiler:compiler:1.1.0-beta01
. Liste des commits de la version 1.1.0-beta01
Version 1.1.0-alpha06
13 octobre 2021
Publication d'androidx.compose.compiler:compiler:1.1.0-alpha06
. Liste des commits de la version 1.1.0-alpha06.
Version 1.1.0-alpha05
29 septembre 2021
Publication d'androidx.compose.compiler:compiler:1.1.0-alpha05
. Liste des commits de la version 1.1.0-alpha05.
Version 1.1.0-alpha04
15 septembre 2021
Publication d'androidx.compose.compiler:compiler:1.1.0-alpha04
. Liste des commits de la version 1.1.0-alpha04.
Version 1.1.0-alpha03
1er septembre 2021
Publication d'androidx.compose.compiler:compiler:1.1.0-alpha03
. Liste des commits de la version 1.1.0-alpha03
Nouvelles fonctionnalités
- Le compilateur Compose est désormais compatible avec les anciennes versions de l'environnement d'exécution Compose (1.0). Avant cette modification, le compilateur Compose n'était compatible qu'avec l'environnement d'exécution Compose de la même version ou d'une version ultérieure. Après cette modification, le compilateur Compose est compatible avec une ancienne version de l'environnement d'exécution Compose (1.0). (aosp/1796968)
- Mise à jour des dépendances Compose
1.1.0-alpha03
vers Kotlin1.5.30
. (I74545)
Version 1.1.0-alpha02
18 août 2021
Publication d'androidx.compose.compiler:compiler:1.1.0-alpha02
. Liste des commits de la version 1.1.0-alpha02
Version 1.1.0-alpha01
4 août 2021
Publication d'androidx.compose.compiler:compiler:1.1.0-alpha01
. Liste des commits de la version 1.1.0-alpha01
Version 1.0
Version 1.0.5
3 novembre 2021
Publication d'androidx.compose.compiler:compiler:1.0.5
. Liste des commits de la version 1.0.5
Correction de bugs
- Correction d'un plantage lié au suivi des instances de derivedStateOf. (aosp/1792247)
Version 1.0.4
13 octobre 2021
Publication d'androidx.compose.compiler:compiler:1.0.4
. Liste des commits de la version 1.0.4
Mises à jour des dépendances
- Mise à jour des dépendances vers Kotlin
1.5.31
Version 1.0.3
29 septembre 2021
Publication d'androidx.compose.compiler:compiler:1.0.3
. Liste des commits de la version 1.0.3
Mises à jour des dépendances
- Mise à jour des dépendances vers Kotlin
1.5.30
Version 1.0.2
1er septembre 2021
Publication d'androidx.compose.compiler:compiler:1.0.2
. Liste des commits de la version 1.0.2
Mise à jour pour prendre en charge la version 1.0.2
de Compose. Compose 1.0.2
reste compatible avec Kotlin 1.5.21
.
Version 1.0.1
4 août 2021
Publication d'androidx.compose.compiler:compiler:1.0.1
. Liste des commits de la version 1.0.1
Mises à jour des dépendances
- Mise à jour des dépendances vers Kotlin
1.5.21
Version 1.0.0
28 juillet 2021
Publication d'androidx.compose.compiler:compiler:1.0.0
. Liste des commits de la version 1.0.0
Principales fonctionnalités de la version 1.0.0
Première version stable de Compose. Pour en savoir plus, consultez le blog officiel des publications de Compose.
Version 1.0.0-rc02
14 juillet 2021
Publication d'androidx.compose.compiler:compiler:1.0.0-rc02
. Liste des commits de la version 1.0.0-rc02
Version 1.0.0-rc01
1er juillet 2021
Publication d'androidx.compose.compiler:compiler:1.0.0-rc01
. Liste des commits de la version 1.0.0-rc01.
Version 1.0.0-beta09
16 juin 2021
Publication d'androidx.compose.compiler:compiler:1.0.0-beta09
. Liste des commits de la version 1.0.0-beta09.
Version 1.0.0-beta08
2 juin 2021
Publication d'androidx.compose.compiler:compiler:1.0.0-beta08
. Liste des commits de la version 1.0.0-beta08.
Version 1.0.0-beta07
18 mai 2021
Publication d'androidx.compose.compiler:compiler:1.0.0-beta07
. Liste des commits de la version 1.0.0-beta07
Version 1.0.0-beta06
5 mai 2021
Publication d'androidx.compose.compiler:compiler:1.0.0-beta06
. Liste des commits de la version 1.0.0-beta06.
Version 1.0.0-beta05
21 avril 2021
Publication d'androidx.compose.compiler:compiler:1.0.0-beta05
. Liste des commits de la version 1.0.0-beta05
Version 1.0.0-beta04
7 avril 2021
Publication d'androidx.compose.compiler:compiler:1.0.0-beta04
. Liste des commits de la version 1.0.0-beta04.
Version 1.0.0-beta03
24 mars 2021
Publication d'androidx.compose.compiler:compiler:1.0.0-beta03
. Liste des commits de la version 1.0.0-beta03.
Version 1.0.0-beta02
10 mars 2021
Publication d'androidx.compose.compiler:compiler:1.0.0-beta02
. Liste des commits de la version 1.0.0-beta02.
Version 1.0.0-beta01
24 février 2021
Publication d'androidx.compose.compiler:compiler:1.0.0-beta01
. Liste des commits de la version 1.0.0-beta01
Première publication bêta de la version 1.0.0 de Compose.
Version 1.0.0-alpha12
10 février 2021
Publication d'androidx.compose.compiler:compiler:1.0.0-alpha12
. Liste des commits de la version 1.0.0-alpha12.
Version 1.0.0-alpha11
28 janvier 2021
Publication d'androidx.compose.compiler:compiler:1.0.0-alpha11
. Liste des commits de la version 1.0.0-alpha11.
Version 1.0.0-alpha10
13 janvier 2021
Publication d'androidx.compose.compiler:compiler:1.0.0-alpha10
. Liste des commits de la version 1.0.0-alpha10.
Version 1.0.0-alpha09
16 décembre 2020
Publication d'androidx.compose.compiler:compiler:1.0.0-alpha09
. Liste des commits de la version 1.0.0-alpha09.
Version 1.0.0-alpha08
2 décembre 2020
Publication d'androidx.compose.compiler:compiler:1.0.0-alpha08
. Liste des commits de la version 1.0.0-alpha08.
Version 1.0.0-alpha07
11 novembre 2020
Publication d'androidx.compose.compiler:compiler:1.0.0-alpha07
. Liste des commits de la version 1.0.0-alpha07
Nouvelles fonctionnalités
- Inférences et propagation de la stabilité. Le plug-in Compose Compiler analyse les types qu'il compile pour déterminer s'ils sont éligibles ou non à certaines optimisations par l'environnement d'exécution. Le résultat déduit est ensuite synthétisé sous forme de métadonnées sur la classe qui sera utilisée par le compilateur dans d'autres modules. De plus, le résultat de l'exécution de ces inférences est transmis dans les métadonnées transmises aux appels composables pendant la composition. Cela nécessitait un protocole de métadonnées différent pour les fonctions modulables, ce qui signifie que les fonctions modulables compilées avec le compilateur alpha07 ne seront pas compatibles avec les fonctions modulables compilées avec une version antérieure du compilateur. (aosp/1431988)
Version 1.0.0-alpha06
28 octobre 2020
Publication d'androidx.compose.compiler:compiler:1.0.0-alpha06
. Liste des commits de la version 1.0.0-alpha06.
Version 1.0.0-alpha05
14 octobre 2020
Publication d'androidx.compose.compiler:compiler:1.0.0-alpha05
. Liste des commits de la version 1.0.0-alpha05.
Version 1.0.0-alpha04
1er octobre 2020
Publication d'androidx.compose.compiler:compiler:1.0.0-alpha04
. Liste des commits de la version 1.0.0-alpha04.
Refactorisation de androidx.compose:compose-compiler
afin d'utiliser androidx.compose.compiler:compiler
.
Il s'agit de la première version dans le nouveau groupe.