Compilatore di Compose
androidx.compose
(Consulta la documentazione di riferimento dell'API per tutti i pacchetti di Compose)
Ultimo aggiornamento | Release stabile | Candidato per la release | Release beta | Release alpha |
---|---|---|---|---|
7 agosto 2024 | 1.5.15 | - | - | - |
Struttura
Compose è una combinazione di 7 ID gruppo Maven all'interno di androidx
. Ogni gruppo
contiene un sottoinsieme mirato di funzionalità, ognuna con il proprio insieme di note di rilascio.
Questa tabella spiega i gruppi e fornisce i link a ogni insieme di note di rilascio.
Gruppo | Descrizione |
---|---|
compose.animation | Creare animazioni nelle applicazioni Jetpack Compose per arricchire l'esperienza utente. |
compose.compiler | Trasforma le funzioni @Composable e attiva le ottimizzazioni con un plug-in del compilatore Kotlin. |
compose.foundation | Scrivi applicazioni Jetpack Compose con componenti di base pronti all'uso ed estendi le fondamenta per creare i tuoi elementi del sistema di progettazione. |
compose.material | Crea interfacce utente Jetpack Compose con componenti Material Design pronti all'uso. Si tratta del punto di ingresso di livello superiore di Compose, progettato per fornire componenti che corrispondono a quelli descritti all'indirizzo www.material.io. |
compose.material3 | Crea UI Jetpack Compose con i componenti Material Design 3, la prossima evoluzione di Material Design. Material 3 include componenti e temi aggiornati e funzionalità di personalizzazione Material You come il colore dinamico. È progettato per essere coerente con il nuovo stile visivo e l'interfaccia utente di sistema di Android 12. |
compose.runtime | Elementi di base del modello di programmazione e della gestione dello stato di Compose e runtime di base a cui fare riferimento per il plug-in del compilatore Compose. |
compose.ui | Componenti fondamentali dell'interfaccia utente di Compose necessari per interagire con il dispositivo, inclusi layout, disegno e input. |
Dichiarazione di dipendenze
Per aggiungere una dipendenza da Compose, devi aggiungere il repository Maven di Google al tuo progetto. Per saperne di più, consulta il repository Maven di Google.
Aggiungi le dipendenze per gli artefatti che ti servono nel file build.gradle
per
la tua app o il tuo modulo:
Alla moda
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" } }
Per saperne di più sulle dipendenze, consulta Aggiungi dipendenze di build.
Feedback
Il tuo feedback ci aiuta a migliorare Jetpack. Facci sapere se riscontri nuovi problemi o hai idee per migliorare questa libreria. Prima di crearne uno nuovo, dai un'occhiata ai problemi esistenti in questa libreria. Puoi aggiungere il tuo voto a un problema esistente facendo clic sul pulsante a forma di stella.
Per ulteriori informazioni, consulta la documentazione di Issue Tracker.
Versione 1.5
Versione 1.5.15
7 agosto 2024
androidx.compose.compiler:compiler:1.5.15
e androidx.compose.compiler:compiler-hosted:1.5.15
sono stati rilasciati. La versione 1.5.15 contiene questi commit.
- Questa release del compilatore è destinata a Kotlin 1.9.25.
Versione 1.5.14
14 maggio 2024
androidx.compose.compiler:compiler:1.5.14
e androidx.compose.compiler:compiler-hosted:1.5.14
sono stati rilasciati. La versione 1.5.14 contiene questi commit.
Questa release del compilatore è destinata a Kotlin 1.9.24.
Correzioni di bug
- Assicurati che il corpo incorporato venga realizzato quando le informazioni sull'origine sono disattivate. (Idddb8)
Versione 1.5.13
1° maggio 2024
androidx.compose.compiler:compiler:1.5.13
e androidx.compose.compiler:compiler-hosted:1.5.13
sono stati rilasciati. La versione 1.5.13 contiene questi commit.
Nuove funzionalità
- Il salto forzato non è più considerato sperimentale ed è sicuro per l'uso in produzione. Diventerà il comportamento predefinito in una release futura. (I6c8c4)
Correzioni di bug
- Correzione della compatibilità binaria per le funzioni
@Composable
con parametri della classe di valori che hanno un valore predefinito e che racchiudono un valore non primitivo. (I89465 - Correzioni upstream per la compilazione JS e nativa da Compose Multiplatform. Per informazioni dettagliate, vedi l'intervallo di commit sopra.
Versione 1.5.12
17 aprile 2024
androidx.compose.compiler:compiler:1.5.12
e androidx.compose.compiler:compiler-hosted:1.5.12
sono stati rilasciati. La versione 1.5.12 contiene questi commit.
Correzioni di bug
- Corregge un problema relativo alla compilazione incrementale con Kotlin 1.9.23. (Ifca55)
- Correggi i tipi non nullabili nei parametri di valore per le classi inline non primitive. (Ie6bb5)
Versione 1.5.11
20 marzo 2024
androidx.compose.compiler:compiler:1.5.11
e androidx.compose.compiler:compiler-hosted:1.5.11
sono stati rilasciati. La versione 1.5.11 contiene questi commit.
Notes
A partire da questa versione, il compilatore chiamerà
startReplaceGroup
anzichéstartReplacableGroup
quando un modulo viene compilato con un runtime che contiene questo metodo.startReplaceGroup
è stato introdotto nel runtime in Compose Runtime1.7.0-alpha03
. Le chiamate astartRestartGroup
vengono generate solo quando il targeting è impostato su versioni 1.7.0-alpha03 o successive del runtime.La chiamata a
startReplaceGroup
anziché astartReplaceableGroup
consente al runtime di rilevare le modifiche in modo più efficiente, ma potrebbe influire sull'ordine in cui le modifiche vengono rilevate daComposer
e inviate aApplier
. Ciò potrebbe comportare lievi modifiche nel comportamento se unApplier
si basa sull'ordine in cui vengono rilevate queste operazioni.
Nuove funzionalità
- Supporto per Kotlin 1.9.23
Correzioni di bug
- Correggi i tipi generici esterni nidificati che vengono dedotti come instabili. (I3437f, b/327643787)
- Supporta più file di configurazione della stabilità. (I8db14, b/325326744)
- Compose Compiler ora trasforma correttamente le funzioni sottoposte a override attraversando in modo ricorsivo le classi di base/gli override. (I2c9f9, b/316196500)
- Assicurati che la memorizzazione delle funzioni non tenti di acquisire i genitori impliciti delle dichiarazioni locali quando non vengono utilizzati direttamente. (Ib1267)
- Correzione della generazione di codice per l'espressione lambda crossinline componibile (è difficile riscontrare questo bug senza l'ottimizzazione nonSkippingGroupOptimization attivata). (Icb2fd, b/325502738)
Versione 1.5.10
21 febbraio 2024
androidx.compose.compiler:compiler:1.5.10
e androidx.compose.compiler:compiler-hosted:1.5.10
sono stati rilasciati. La versione 1.5.10 contiene questi commit.
Correzioni di bug
- Supporta i valori letterali live all'interno dei blocchi init. (b/320397488)
- Utilizza il parametro dispatcher per verificare se la funzione si trova all'interno della classe locale (b/323123439)
Versione 1.5.9
7 febbraio 2024
androidx.compose.compiler:compiler:1.5.9
e androidx.compose.compiler:compiler-hosted:1.5.9
sono stati rilasciati. La versione 1.5.9 contiene questi commit.
Correzioni di bug
- Correggi le chiamate componibili nell'inizializzatore di oggetti anonimi. (b/320261458, 96315c)
- Considera le dichiarazioni locali ricorsive come acquisizioni. (b/318745941, e7b4b0)
- Correzione del comportamento di memorizzazione delle modifiche intrinseche relative ai riferimenti ai metodi Java forzando .changed per i tipi di funzione con memorizzazione intrinseca. (b/319810819, 77128e)
- È stata aggiunta un'ottimizzazione sperimentale che rimuove i gruppi intorno alle funzioni non ignorabili, ad esempio quelle contrassegnate esplicitamente come
@NonSkippableComposable
e quelle implicitamente non ignorabili, come le funzioni inline e quelle che restituiscono un valore non unitario comeremember
. - Questa ottimizzazione può essere attivata passando l'opzione del plug-in,
-P plugin:androidx.compose.compiler.plugins.kotlin:nonSkippingGroupOptimization=true
al compilatore Kotlin. (I1688f)
Versione 1.5.8
10 gennaio 2024
androidx.compose.compiler:compiler:1.5.8
e androidx.compose.compiler:compiler-hosted:1.5.8
sono stati rilasciati. La versione 1.5.8 contiene questi commit.
Nuove funzionalità
- Supporto per Kotlin 1.9.22
Correzioni di bug
- È stato corretto un bug per cui la build di Compose Compiler generava eccezioni quando veniva creata utilizzando Java21. Gli utenti che utilizzano Compose Compiler da Google Maven (ovvero che non lo compilano autonomamente) non sono mai stati interessati da questo bug. (b/316644294)
- Correzione del bug per cui veniva segnalato l'errore
COMPOSABLE_EXPECTED
per alcuni chiamanti di espressioni lambda non inline. (b/309364913) - Aggiungi un errore di compilazione per i parametri predefiniti nelle funzioni aperte (in precedenza era limitato solo alle funzioni astratte). Al momento Compose non supporta la sostituzione dei parametri predefiniti dalle funzioni sottoposte a override e l'override di una funzione componibile con parametri predefiniti non è riuscito in fase di runtime. Utilizza
@Suppress("ABSTRACT_COMPOSABLE_DEFAULT_PARAMETER_VALUE")
per la soppressione, ma tieni presente che l'override di questa funzione senza fornire un valore predefinito per il parametro comporterà un arresto anomalo in fase di runtime.(b/317490247) - È stato corretto un bug nella memorizzazione intrinseca che impediva la propagazione corretta dei valori. (b/316327367)
Contributo esterno
- Correzione di un errore di battitura nella documentazione. (aosp/288106)
Versione 1.5.7
19 dicembre 2023
androidx.compose.compiler:compiler:1.5.7
e androidx.compose.compiler:compiler-hosted:1.5.7
sono stati rilasciati. La versione 1.5.7 contiene questi commit.
Correzioni di bug
- Correzione dell'arresto anomalo di runtime di Compose quando il parametro della chiave
remember()
richiama una funzione composable (b/315855015) - Correzione dell'arresto anomalo di runtime di Compose quando viene utilizzato
return@
. (b/315821171) - Evita di utilizzare percorsi assoluti nelle chiavi di memorizzazione, in modo da utilizzare meglio la cache di build. (b/313937484)
Versione 1.5.6
6 dicembre 2023
androidx.compose.compiler:compiler:1.5.6
e androidx.compose.compiler:compiler-hosted:1.5.6
sono stati rilasciati. La versione 1.5.6 contiene questi commit.
Nuove funzionalità
- Supporto per Kotlin 1.9.21
Correzioni di bug
- Attiva l'opzione di memorizzazione intrinseca: la trasformazione del compilatore che inlines remember nel plug-in del compilatore Compose e sostituisce i confronti
.equals
con confronti int dei metadati dei parametri per i parametri stabili. In questo modo vengono utilizzati meno slot e vengono eseguiti meno confronti in fase di runtime. L'opzione può essere disattivata fornendo l'argomento del plug-in del compilatore: -Pplugin:androidx.compose.compiler.plugins.kotlin:intrinsicRemember=false
. (If675f) - Correggi la memoizzazione dei riferimenti alle funzioni adattate e degli argomenti in linea. (b/312738720)
- Realizza gruppi quando esci dalla chiamata di funzione in linea (b/312242547)
Contributo esterno
- Correzione dell'arresto anomalo dell'ambiente di runtime k/native e k/wasm dovuto alla mancanza dell'istruzione return nelle funzioni componibili quando è l'ultima istruzione e restituisce una costante null (aosp/2835716)
Versione 1.5.5
29 novembre 2023
androidx.compose.compiler:compiler:1.5.5
e androidx.compose.compiler:compiler-hosted:1.5.5
sono stati rilasciati. La versione 1.5.5 contiene questi commit.
Correzioni di bug
- Correzione di un arresto anomalo durante la ricerca di tipi di componenti componibili sottoposti a override (Ib6d2c, b/297665426)
- Aggiungi
stabilityConfigurationPath
ai parametri noti (in precedenza un bug impediva l'utilizzo del flag del file di configurazione). (b/309765121) - Correzioni della memoizzazione (I081d1, I4d7bf)
- Correzione della ricomposizione tenendo conto dello stato del parametro Uncertain in intrinsic remember (b/263402091)
- Correzione delle informazioni sulla riga di debug per la funzionalità intrinseca di memorizzazione (Ic8cf5)
- Correzione dell'arresto anomalo (riduzione IR non riuscita) durante la ricerca di tipi componibili sottoposti a override in fase di compilazione (b/297665426)
- Aggiungi
Contributo esterno
- Memorizza i riferimenti alle funzioni stabili con argomenti (I4d7bf, b/302680514)
Versione 1.5.4
7 novembre 2023
androidx.compose.compiler:compiler:1.5.4
e androidx.compose.compiler:compiler-hosted:1.5.4
sono stati rilasciati. La versione 1.5.4 contiene questi commit.
Aggiornamenti delle dipendenze
- Compose Compiler è ora compatibile con Kotlin 1.9.20
Nuove funzionalità
- Aggiungi un'opzione sperimentale per attivare la modalità di salto avanzato. La modalità di salto rigido consente di saltare i composable con parametri instabili. Inoltre, le espressioni lambda con acquisizioni instabili vengono memorizzate. Questa funzionalità è sperimentale e non è considerata pronta per l'uso in produzione. (22421e)
- Aggiungi il flag per attivare/disattivare le informazioni sull'origine/la traccia. (4d45f09)
- Consente di configurare la stabilità delle classi esterne tramite un file di configurazione. (If40eb)
Correzioni di bug
- Correzione dell'uscita anticipata dalle funzioni componibili quando le informazioni sull'origine non vengono raccolte. (fe6267)
- Correzione di continua dalle funzioni componibili. (948362)
- Correzione della risoluzione quando le funzioni componibili vengono richiamate dall'interno di una chiamata di funzione con più overload che dipendono dal tipo restituito dell'espressione. (2d36d0)
- Correggi la memoizzazione quando il riferimento alla funzione non ha un destinatario di distribuzione. (fc2326)
- Correzione del controllo dirty che impediva la ricomposizione delle espressioni lambda in alcune situazioni. (db3699)
- Correzione della stabilità durante la compilazione incrementale tra i moduli. (7d3e127)
- Riduci l'ambito di
@DontMemoize
alle sole espressioni lambda. (7a7fa52) - Correzione delle variabili non acquisite correttamente quando si utilizza un'interfaccia funzionale componibile come espressione lambda. (5ae3556)
Contributo esterno
- Utilizza il simbolo di uguaglianza strutturale per il confronto numerico e nullo (c612a0)
Versione 1.5.3
29 agosto 2023
androidx.compose.compiler:compiler:1.5.3
, androidx.compose.compiler:compiler-daemon:1.5.3
e androidx.compose.compiler:compiler-hosted:1.5.3
sono rilasciati. La versione 1.5.3 contiene questi commit.
Aggiornamento delle dipendenze
- La versione di Kotlin è stata aggiornata alla 1.9.10
Versione 1.5.2
23 agosto 2023
androidx.compose.compiler:compiler:1.5.2
, androidx.compose.compiler:compiler-daemon:1.5.2
e androidx.compose.compiler:compiler-hosted:1.5.2
sono rilasciati. La versione 1.5.2 contiene questi commit.
Correzioni di bug
- Inserisci i numeri di riga per le istruzioni return nelle funzioni componibili che restituiscono costanti. (I42d89)
- Correzione di una perdita di memoria causata dal passaggio al nuovo punto di ingresso del plug-in del compilatore. (4f0a101)
- Interrompere la trasformazione di interfacce non componibili nel compilatore Compose. In questo modo, le interfacce funzionali vengono gestite allo stesso modo delle espressioni lambda, incluse le regole di memorizzazione. (28b3ce9)
- Utilizza il tipo di argomento vararg per dedurre la stabilità nel sito di chiamata. (bc83645)
Versione 1.5.1
26 luglio 2023
androidx.compose.compiler:compiler:1.5.1
, androidx.compose.compiler:compiler-daemon:1.5.1
e androidx.compose.compiler:compiler-hosted:1.5.1
sono rilasciati. La versione 1.5.1 contiene questi commit.
Correzioni di bug
- Corretti i marcatori degli eventi di traccia di composizione nelle funzioni
@ReadOnlyComposable
con ritorni anticipati che causavano il danneggiamento della traccia.
Versione 1.5.0
18 luglio 2023
androidx.compose.compiler:compiler:1.5.0
, androidx.compose.compiler:compiler-daemon:1.5.0
e androidx.compose.compiler:compiler-hosted:1.5.0
sono rilasciati. La versione 1.5.0 contiene questi commit.
Supporto sperimentale di K2
- Il compilatore Compose 1.5.0 fornisce il supporto sperimentale per il compilatore K2. Alcune funzionalità di Compose non sono ancora supportate con K2 e verranno aggiunte nelle versioni future del compilatore.
Modifiche importanti dalla versione 1.4.0
- La versione di Kotlin è stata aggiornata alla 1.9.0.
- Gli argomenti denominati per le chiamate lambda
@Composable
sono stati ritirati. Questa funzionalità si basa su API del compilatore interno e non sarà supportata da K2. - È stata aggiunta una diagnostica per verificare l'annotazione
@Composable
nelle chiamate previste/effettive. Entrambe le dichiarazioni devono avere annotazioni corrispondenti.
Versione 1.4.8
Versione 1.4.8
28 giugno 2023
androidx.compose.compiler:compiler:1.4.8
, androidx.compose.compiler:compiler-daemon:1.4.8
e androidx.compose.compiler:compiler-hosted:1.4.8
sono rilasciati. La versione 1.4.8 contiene questi commit.
Nuove funzionalità
- La versione del compilatore Kotlin di destinazione è stata aggiornata alla 1.8.22.
Correzioni di bug
- Messaggio di errore migliorato per gli override di
@Composable
. Ora indica correttamente la mancata corrispondenza delle annotazioni. - Avvisa in merito all'annotazione
@Composable
ridondante sulle espressioni lambda inline che non devono essere contrassegnate come componibili. Questa funzionalità non sarà supportata con il compilatore K2.
Versione 1.4.7
Versione 1.4.7
3 maggio 2023
androidx.compose.compiler:compiler:1.4.7
, androidx.compose.compiler:compiler-daemon:1.4.7
e androidx.compose.compiler:compiler-hosted:1.4.7
sono rilasciati. La versione 1.4.7 contiene questi commit.
Nuove funzionalità
- Supporto per Kotlin 1.8.21
- Sono state aggiunte versioni primitive dell'API
State
, che consentono di monitorare i valori Int, Long, Float e Double negli oggettiState
senza incorrere in penalità per l'autoboxing.
Versione 1.4.6
Versione 1.4.6
19 aprile 2023
androidx.compose.compiler:compiler:1.4.6
, androidx.compose.compiler:compiler-daemon:1.4.6
e androidx.compose.compiler:compiler-hosted:1.4.6
sono rilasciati. La versione 1.4.6 contiene questi commit.
Correzioni di bug
- Ora Compose Compiler dipende da Java11 (anziché da Java17 richiesto dalla versione 1.4.5 di Compose Compiler) per supportare meglio gli utenti che utilizzano ancora versioni precedenti di Java.
Versione 1.4.5
Versione 1.4.5
12 aprile 2023
androidx.compose.compiler:compiler:1.4.5
, androidx.compose.compiler:compiler-daemon:1.4.5
e androidx.compose.compiler:compiler-hosted:1.4.5
sono rilasciati. La versione 1.4.5 contiene questi commit.
NOTA Questa build di Compose Compiler richiede che l'ambiente di build utilizzi Java 17 o versioni successive. In base al feedback degli utenti, ripristineremo questo requisito a Java 11 e rilasceremo un'altra versione (1.4.6) per supportare meglio gli utenti che utilizzano versioni precedenti di Java.
Nuove funzionalità
Supporto per Kotlin 1.8.20
Correzioni di bug
- Propaga il requisito di override dell'operatore di chiamata componibile a classi e interfacce che estendono le interfacce lambda con le annotazioni corrispondenti.f8f2f78a1a769c2373201027f12700e772e4e97e
- Consente l'utilizzo dell'annotazione
@Composable
sull'operatoregetValue
e contrassegna il getter generato per il delegato come componibile in IR per garantire che venga trasformato correttamente in un secondo momento. f174f6ee60ca957d5cb6d19a5bd02a88267cdf40 - Correzione dell'errore di runtime di composizione interno (previsto che
applyChanges()
sia stato chiamato) per le funzioni inline.b/274786923 - Evita di acquisire
ProcessCancelledException
perché ha un significato speciale nell'IDE.b/274725600
Contributo esterno
- Migliore supporto per le funzioni composable in Kotlin/Native.f52b6aeed22400dd4f4a4f05559a9aa42642402c
Versione 1.4.4
Versione 1.4.4
22 marzo 2023
androidx.compose.compiler:compiler:1.4.4
, androidx.compose.compiler:compiler-daemon:1.4.4
e androidx.compose.compiler:compiler-hosted:1.4.4
sono rilasciati. La versione 1.4.4 contiene questi commit.
Correzioni di bug
- Correggi i ritorni lambda inline componibili (72172b)
- Consenti ai composable di restituire
Nothing
(non generare un errore quando utilizzi TODO in una funzione composable) 3aea8d)
Versione 1.4.3
Versione 1.4.3
22 febbraio 2023
androidx.compose.compiler:compiler:1.4.3
viene rilasciata. La versione 1.4.3 contiene questi commit.
Correzioni di bug
- Corregge le chiamate componibili condizionali negli argomenti delle chiamate componibili (Ie93edb)
Versione 1.4.2
Versione 1.4.2
8 febbraio 2023
androidx.compose.compiler:compiler:1.4.2
viene rilasciata. La versione 1.4.2 contiene questi commit.
Nuove funzionalità
- Supporto per Kotlin 1.8.10
Correzioni di bug
- Aggiungi gruppi nel corpo delle espressioni lambda non ignorabili per evitare il bug di ricomposizione.
Versione 1.4.1
Versione 1.4.1
8 febbraio 2023
androidx.compose.compiler:compiler:1.4.1
viene rilasciata. La versione 1.4.1 contiene questi commit.
Correzioni di bug
- Disattiva l'ottimizzazione intrinseca della memorizzazione che in precedenza aveva introdotto alcuni bug di generazione del codice.
- Disattiva il ricordo intrinseco nelle funzioni contenenti un parametro vararg.
- Correggere lo skip errato nei composable con parametri predefiniti
- Aggiungi un messaggio di errore di fallback difensivo se il controllo della compatibilità di Kotlin non va a buon fine.
- Rimuovi la generazione di codice di salto dalla lambda inline
Versione 1.4.0
17 gennaio 2023
androidx.compose.compiler:compiler:1.4.0
viene rilasciata. La versione 1.4.0 contiene questi commit.
Modifiche importanti dalla versione 1.3.0
- Supporto per Kotlin 1.8.0
- Disattivazione del ricordo intrinseco
- La classe di dati ui tooling
Group
ora ha un campo,isInline
, che indica se il gruppo è per una chiamata a una funzione componibile inline. SeisInline
ètrue
, la chiamata è a una funzione componibile inline. Tuttavia, il valore potrebbe essere false per le chiamate a funzioni componibili inline provenienti da moduli compilati con una versione del plug-in del compilatore Compose che non genera le informazioni sulla funzione inline. ImmutableCollection
e i relativi elementi secondari persistenti sono ora considerati stabili.- Nuovo parametro in
AnimatedContent
per l'etichetta dello strumento - È stata corretta la generazione di codice errato per le espressioni lambda inline
Versione 1.4.0-alpha02
11 novembre 2022
androidx.compose.compiler:compiler:1.4.0-alpha02
viene rilasciata. La versione 1.4.0-alpha02 contiene questi commit.
Nuove funzionalità
- È stato aggiunto il supporto per Kotlin
1.7.21
Versione 1.4.0-alpha01
9 novembre 2022
androidx.compose.compiler:compiler:1.4.0-alpha01
viene rilasciata. La versione 1.4.0-alpha01 contiene questi commit.
Correzioni di bug
- Correzione della possibilità di uscire in anticipo dalle funzioni componibili inline (b/255350755)
- È stato corretto un bug nella riduzione del decoy che ha interrotto il supporto di Kotlin/JS in Compose (6a40f8).
Versione 1.3
Versione 1.3.2
4 ottobre 2022
androidx.compose.compiler:compiler:1.3.2
viene rilasciata. La versione 1.3.2 contiene questi commit.
Nuova funzionalità
- Questa versione include un aggiornamento a Kotlin 1.7.20
Versione 1.3.1
7 settembre 2022
androidx.compose.compiler:compiler:1.3.1
viene rilasciata. La versione 1.3.1 contiene questi commit.
Correzioni di bug
- Correzione di
IllegalStateException
in cui Compose Compiler contrassegnava erroneamente i tipi di unità come componibili in alcune circostanze. (b/237863365) - Ora gli utenti devono specificare la versione di Kotlin preferita quando disattivano il controllo della versione del compilatore (I9e5e2)
Versione 1.3.0
10 agosto 2022
androidx.compose.compiler:compiler:1.3.0
viene rilasciata. La versione 1.3.0 contiene questi commit.
Versione 1.3.0-rc02
3 agosto 2022
androidx.compose.compiler:compiler:1.3.0-rc02
viene rilasciata. La versione 1.3.0-rc02 contiene questi commit.
Versione 1.3.0-rc01
27 luglio 2022
androidx.compose.compiler:compiler:1.3.0-rc01
viene rilasciata. La versione 1.3.0-rc01 contiene questi commit.
Versione 1.3.0-beta01
20 luglio 2022
androidx.compose.compiler:compiler:1.3.0-beta01
viene rilasciata. La versione 1.3.0-beta01 contiene questi commit.
Nuove funzionalità
- È stato aggiunto il supporto per Kotlin
1.7.10
Versione 1.2
Versione 1.2.0
29 giugno 2022
androidx.compose.compiler:compiler:1.2.0
viene rilasciata. La versione 1.2.0 contiene questi commit.
Modifiche importanti dalla versione 1.1.0
- Supporto di Kotlin 1.7.0
- Consulta il nostro post del blog che spiega la nuova strategia di controllo delle versioni del compilatore Compose in Compose.
Versione 1.2.0-rc02
22 giugno 2022
androidx.compose.compiler:compiler:1.2.0-rc02
viene rilasciata. La versione 1.2.0-rc02 contiene questi commit.
Correzioni di bug
- Rimossa la generazione di codice dell'evento traccia componibile (aosp/2127922)
Versione 1.2.0-rc01
15 giugno 2022
androidx.compose.compiler:compiler:1.2.0-rc01
viene rilasciata. La versione 1.2.0-rc01 contiene questi commit.
Versione 1.2.0-beta03
1° giugno 2022
androidx.compose.compiler:compiler:1.2.0-beta03
viene rilasciata. La versione 1.2.0-beta03 contiene questi commit.
Versione 1.2.0-beta02
18 maggio 2022
androidx.compose.compiler:compiler:1.2.0-beta02
viene rilasciata. La versione 1.2.0-beta02 contiene questi commit.
Versione 1.2.0-beta01
11 maggio 2022
androidx.compose.compiler:compiler:1.2.0-beta01
viene rilasciata. La versione 1.2.0-beta01 contiene questi commit.
- Questa è la prima release beta della versione 1.2. Non sono state apportate modifiche dall'ultima versione alpha.
Nuove funzionalità
- È stato aggiunto il supporto per Kotlin
1.6.21
Versione 1.2.0-alpha08
20 aprile 2022
androidx.compose.compiler:compiler:1.2.0-alpha08
viene rilasciata. La versione 1.2.0-alpha08 contiene questi commit.
Versione 1.2.0-alpha07
6 aprile 2022
androidx.compose.compiler:compiler:1.2.0-alpha07
viene rilasciata. La versione 1.2.0-alpha07 contiene questi commit.
Versione 1.2.0-alpha06
23 marzo 2022
androidx.compose.compiler:compiler:1.2.0-alpha06
viene rilasciata. La versione 1.2.0-alpha06 contiene questi commit.
Versione 1.2.0-alpha05
9 marzo 2022
androidx.compose.compiler:compiler:1.2.0-alpha05
viene rilasciata. La versione 1.2.0-alpha05 contiene questi commit.
Versione 1.2.0-alpha04
23 febbraio 2022
androidx.compose.compiler:compiler:1.2.0-alpha04
viene rilasciata. La versione 1.2.0-alpha04 contiene questi commit.
Versione 1.2.0-alpha03
9 febbraio 2022
androidx.compose.compiler:compiler:1.2.0-alpha03
viene rilasciata. La versione 1.2.0-alpha03 contiene questi commit.
Versione 1.2.0-alpha02
26 gennaio 2022
androidx.compose.compiler:compiler:1.2.0-alpha02
viene rilasciata. La versione 1.2.0-alpha02 contiene questi commit.
Versione 1.2.0-alpha01
12 gennaio 2022
androidx.compose.compiler:compiler:1.2.0-alpha01
viene rilasciata. La versione 1.2.0-alpha01 contiene questi commit.
Nuove funzionalità
- È stato aggiunto il supporto per Kotlin
1.6.10
.
Versione 1.1
Versione 1.1.1
23 febbraio 2022
androidx.compose.compiler:compiler:1.1.1
viene rilasciata. La versione 1.1.1 contiene questi commit.
Correzioni di bug
- Correzione
NullPointerException
alle oreandroidx.compose.ui.platform.RenderNodeLayer.updateDisplayList
(aosp/1947059, b/206677462) - Correzione dell'arresto anomalo causato dai contenuti degli appunti durante la lettura dagli appunti su Android. (I06020, b/197769306)
- RTL fisso in
LazyVerticalGrid
(aosp/1931080, b/207510535)
Versione 1.1.0
9 febbraio 2022
androidx.compose.compiler:compiler:1.1.0
viene rilasciata. La versione 1.1.0 contiene questi commit.
Modifiche importanti dalla versione 1.0.0
- Supporto stabile per l'effetto di overscroll di Android 12
- Miglioramenti alle dimensioni del target tocco
- Tieni presente che, rispetto a Compose 1.0, i componenti Material espanderanno lo spazio del layout per soddisfare le linee guida sull'accessibilità di Material per le dimensioni del target di tocco. Ad esempio, il touch target del pulsante si espanderà fino a una dimensione minima di
48x48dp
, anche se imposti una dimensione più piccola per il pulsante. In questo modo, Compose Material si allinea allo stesso comportamento dei componenti Material Design, fornendo un comportamento coerente se combini Views e Compose. Questa modifica garantisce inoltre che, quando crei la tua UI utilizzando i componenti di Compose Material, vengano soddisfatti i requisiti minimi per l'accessibilità dei touch target. - Supporto stabile per la modalità di navigazione laterale
- Viene eseguito l'upgrade di una serie di API sperimentali precedenti alla versione stabile
- Supporto per le versioni più recenti di Kotlin
Versione 1.1.0-rc03
26 gennaio 2022
androidx.compose.compiler:compiler:1.1.0-rc03
viene rilasciata. La versione 1.1.0-rc03 contiene questi commit.
Correzioni di bug
- Aggiornato per supportare Compose Material 1.1.0-rc03
Versione 1.1.0-rc02
16 dicembre 2021
androidx.compose.compiler:compiler:1.1.0-rc02
viene rilasciata. La versione 1.1.0-rc02 contiene questi commit.
Aggiornamenti delle dipendenze
- Compose Compiler
1.1.0-rc02
è compatibile con Kotlin1.6.10
.
Versione 1.1.0-rc01
15 dicembre 2021
androidx.compose.compiler:compiler:1.1.0-rc01
viene rilasciata. La versione 1.1.0-rc01 contiene questi commit.
Modifiche alle dipendenze
- Compose Compiler
1.1.0-rc01
è compatibile con Kotlin1.6.0
. Una build
1.6.10
compatibile è disponibile tramite gli SNAPSHOT di androidx.dev conbuildId
8003490. Il seguente snippet di dipendenza configurerà le SNAPSHOT per il compilatore Compose:Aggiungi il seguente snippet al file
build.gradle
principale del progetto:buildscript { repositories { google() jcenter() maven { url 'https://androidx.dev/snapshots/builds/8003490/artifacts/repository' } } }
Aggiungi il seguente snippet al file
build.gradle
per l'app o il modulo che utilizza Compose:android { composeOptions { kotlinCompilerExtensionVersion = "1.2.0-SNAPSHOT" } }
Versione 1.1.0-beta04
1° dicembre 2021
androidx.compose.compiler:compiler:1.1.0-beta04
viene rilasciata. La versione 1.1.0-beta04 contiene questi commit.
Nuove funzionalità
- Aggiornato per essere compatibile con Kotlin
1.6.0
Versione 1.1.0-beta03
17 novembre 2021
androidx.compose.compiler:compiler:1.1.0-beta03
viene rilasciata. La versione 1.1.0-beta03 contiene questi commit.
Versione 1.1.0-beta02
3 novembre 2021
androidx.compose.compiler:compiler:1.1.0-beta02
viene rilasciata. La versione 1.1.0-beta02 contiene questi commit.
Versione 1.1.0-beta01
27 ottobre 2021
androidx.compose.compiler:compiler:1.1.0-beta01
viene rilasciata. La versione 1.1.0-beta01 contiene questi commit.
Versione 1.1.0-alpha06
13 ottobre 2021
androidx.compose.compiler:compiler:1.1.0-alpha06
viene rilasciata. La versione 1.1.0-alpha06 contiene questi commit.
Versione 1.1.0-alpha05
29 settembre 2021
androidx.compose.compiler:compiler:1.1.0-alpha05
viene rilasciata. La versione 1.1.0-alpha05 contiene questi commit.
Versione 1.1.0-alpha04
15 settembre 2021
androidx.compose.compiler:compiler:1.1.0-alpha04
viene rilasciata. La versione 1.1.0-alpha04 contiene questi commit.
Versione 1.1.0-alpha03
1° settembre 2021
androidx.compose.compiler:compiler:1.1.0-alpha03
viene rilasciata. La versione 1.1.0-alpha03 contiene questi commit.
Nuove funzionalità
- Il compilatore Compose ora supporta le versioni precedenti di Compose Runtime (1.0). Prima di questa modifica, Compose Compiler era compatibile solo con Compose Runtime della stessa versione o di una versione successiva. Dopo questa modifica, Compose Compiler è compatibile con una versione precedente di Compose Runtime (1.0). (aosp/1796968)
- Aggiornamento di Compose
1.1.0-alpha03
in modo che dipenda da Kotlin1.5.30
. (I74545)
Versione 1.1.0-alpha02
18 agosto 2021
androidx.compose.compiler:compiler:1.1.0-alpha02
viene rilasciata. La versione 1.1.0-alpha02 contiene questi commit.
Versione 1.1.0-alpha01
4 agosto 2021
androidx.compose.compiler:compiler:1.1.0-alpha01
viene rilasciata. La versione 1.1.0-alpha01 contiene questi commit.
Versione 1.0
Versione 1.0.5
3 novembre 2021
androidx.compose.compiler:compiler:1.0.5
viene rilasciata. La versione 1.0.5 contiene questi commit.
Correzioni di bug
- È stato corretto un arresto anomalo durante il monitoraggio delle istanze derivedStateOf. (aosp/1792247)
Versione 1.0.4
13 ottobre 2021
androidx.compose.compiler:compiler:1.0.4
viene rilasciata. La versione 1.0.4 contiene questi commit.
Aggiornamenti delle dipendenze
- Aggiornato in modo che dipenda da Kotlin
1.5.31
Versione 1.0.3
29 settembre 2021
androidx.compose.compiler:compiler:1.0.3
viene rilasciata. La versione 1.0.3 contiene questi commit.
Aggiornamenti delle dipendenze
- Aggiornato in modo che dipenda da Kotlin
1.5.30
Versione 1.0.2
1° settembre 2021
androidx.compose.compiler:compiler:1.0.2
viene rilasciata. La versione 1.0.2 contiene questi commit.
Aggiornato per supportare la release di Compose 1.0.2
. Compose 1.0.2
è ancora compatibile con Kotlin 1.5.21
.
Versione 1.0.1
4 agosto 2021
androidx.compose.compiler:compiler:1.0.1
viene rilasciata. La versione 1.0.1 contiene questi commit.
Aggiornamenti delle dipendenze
- Aggiornato in modo da dipendere da Kotlin
1.5.21
.
Versione 1.0.0
28 luglio 2021
androidx.compose.compiler:compiler:1.0.0
viene rilasciata. La versione 1.0.0 contiene questi commit.
Funzionalità principali della versione 1.0.0
Questa è la prima release stabile di Compose. Per ulteriori dettagli, consulta il blog ufficiale di Compose Release.
Versione 1.0.0-rc02
14 luglio 2021
androidx.compose.compiler:compiler:1.0.0-rc02
viene rilasciata. La versione 1.0.0-rc02 contiene questi commit.
Versione 1.0.0-rc01
1° luglio 2021
androidx.compose.compiler:compiler:1.0.0-rc01
viene rilasciata. La versione 1.0.0-rc01 contiene questi commit.
Versione 1.0.0-beta09
16 giugno 2021
androidx.compose.compiler:compiler:1.0.0-beta09
viene rilasciata. La versione 1.0.0-beta09 contiene questi commit.
Versione 1.0.0-beta08
2 giugno 2021
androidx.compose.compiler:compiler:1.0.0-beta08
viene rilasciata. La versione 1.0.0-beta08 contiene questi commit.
Versione 1.0.0-beta07
18 maggio 2021
androidx.compose.compiler:compiler:1.0.0-beta07
viene rilasciata. La versione 1.0.0-beta07 contiene questi commit.
Versione 1.0.0-beta06
5 maggio 2021
androidx.compose.compiler:compiler:1.0.0-beta06
viene rilasciata. La versione 1.0.0-beta06 contiene questi commit.
Versione 1.0.0-beta05
21 aprile 2021
androidx.compose.compiler:compiler:1.0.0-beta05
viene rilasciata. La versione 1.0.0-beta05 contiene questi commit.
Versione 1.0.0-beta04
7 aprile 2021
androidx.compose.compiler:compiler:1.0.0-beta04
viene rilasciata. La versione 1.0.0-beta04 contiene questi commit.
Versione 1.0.0-beta03
24 marzo 2021
androidx.compose.compiler:compiler:1.0.0-beta03
viene rilasciata. La versione 1.0.0-beta03 contiene questi commit.
Versione 1.0.0-beta02
10 marzo 2021
androidx.compose.compiler:compiler:1.0.0-beta02
viene rilasciata. La versione 1.0.0-beta02 contiene questi commit.
Versione 1.0.0-beta01
24 febbraio 2021
androidx.compose.compiler:compiler:1.0.0-beta01
viene rilasciata. La versione 1.0.0-beta01 contiene questi commit.
Questa è la prima release di Compose 1.0.0 Beta.
Versione 1.0.0-alpha12
10 febbraio 2021
androidx.compose.compiler:compiler:1.0.0-alpha12
viene rilasciata. La versione 1.0.0-alpha12 contiene questi commit.
Versione 1.0.0-alpha11
28 gennaio 2021
androidx.compose.compiler:compiler:1.0.0-alpha11
viene rilasciata. La versione 1.0.0-alpha11 contiene questi commit.
Versione 1.0.0-alpha10
13 gennaio 2021
androidx.compose.compiler:compiler:1.0.0-alpha10
viene rilasciata. La versione 1.0.0-alpha10 contiene questi commit.
Versione 1.0.0-alpha09
16 dicembre 2020
androidx.compose.compiler:compiler:1.0.0-alpha09
viene rilasciata. La versione 1.0.0-alpha09 contiene questi commit.
Versione 1.0.0-alpha08
2 dicembre 2020
androidx.compose.compiler:compiler:1.0.0-alpha08
viene rilasciata. La versione 1.0.0-alpha08 contiene questi commit.
Versione 1.0.0-alpha07
11 novembre 2020
androidx.compose.compiler:compiler:1.0.0-alpha07
viene rilasciata. La versione 1.0.0-alpha07 contiene questi commit.
Nuove funzionalità
- Inferenza e propagazione della stabilità. Il plug-in del compilatore Compose analizza i tipi che compila per dedurre se sono idonei o meno a determinate ottimizzazioni in fase di runtime. Questo risultato dedotto viene quindi sintetizzato come metadati nella classe per essere utilizzato dal compilatore in altri moduli. Inoltre, il risultato di runtime di queste inferenze viene passato nei metadati passati alle chiamate componibili durante la composizione. Ciò ha reso necessario un protocollo di metadati diverso per le funzioni componibili, il che significa che le funzioni componibili compilate con il compilatore alpha07 non saranno compatibili a livello binario con le funzioni componibili compilate con qualsiasi versione precedente del compilatore. (aosp/1431988)
Versione 1.0.0-alpha06
28 ottobre 2020
androidx.compose.compiler:compiler:1.0.0-alpha06
viene rilasciata. La versione 1.0.0-alpha06 contiene questi commit.
Versione 1.0.0-alpha05
14 ottobre 2020
androidx.compose.compiler:compiler:1.0.0-alpha05
viene rilasciata. La versione 1.0.0-alpha05 contiene questi commit.
Versione 1.0.0-alpha04
1° ottobre 2020
androidx.compose.compiler:compiler:1.0.0-alpha04
viene rilasciata. La versione 1.0.0-alpha04 contiene questi commit.
androidx.compose:compose-compiler
è stato refactorizzato in androidx.compose.compiler:compiler
.
Questa è la prima release del nuovo gruppo.