Compilateur Compose

Transformation de fonctions @Composable et prise en charge des optimisations avec un plug-in de compilation en Kotlin.
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.

GroupeDescription
compose.animationCréer des animations dans les applications Jetpack Compose afin d'enrichir l'expérience utilisateur.
compose.compilerTransformation de fonctions @Composable et prise en charge des optimisations avec un plug-in de compilation en Kotlin.
compose.foundationConception 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.materialCré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.material3Cré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.runtimeComposants 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.uiComposants 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.

Signaler un nouveau problème

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 de startReplacableGroup 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 Compose 1.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 de startReplaceableGroup 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 par Composer et envoyées au Applier. Cela peut entraîner de légers changements de comportement si une Applier 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).
  • Désormais, le compilateur Compose transforme 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érifiez 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, telles que 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 autre que Unit (remember, par exemple).
  • 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: -P plugin: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) <ph type="x-smartling-placeholder">
      </ph>
    • 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 ligne de débogage 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)

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 objets State 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érateur getValue 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

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. Si isInline est défini sur true, 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

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 dans androidx.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 version 1.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 version 1.6.0 de Kotlin.
  • Une version 1.6.10 compatible est disponible via les Androidx.dev SNAPSHOT avec le buildId 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 Kotlin 1.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.