Scrivi compilatore
androidx.compose
(consulta la documentazione di riferimento dell'API per tutti i pacchetti di scrittura)
Aggiornamento più recente | Release stabile | Candidato per l'uscita | Versione beta | Release alpha |
---|---|---|---|---|
7 agosto 2024 | 05/01/15 | - | - | - |
Struttura
Compose è una combinazione di 7 ID gruppo Maven all'interno di androidx
. Ogni gruppo
contiene un sottoinsieme di funzionalità target, ciascuna con il proprio insieme di funzionalità
note.
Questa tabella illustra i gruppi e i link a ciascun insieme di note di rilascio.
Gruppo | Descrizione |
---|---|
compose.animation | Sviluppa animazioni nelle applicazioni Jetpack Compose per arricchire l'esperienza utente. |
compose.compiler | Trasforma le funzioni @Composable e abilita le ottimizzazioni con un plug-in del compilatore Kotlin. |
compose.foundation | Scrivi applicazioni Jetpack Compose con componenti di base pronti all'uso ed estende le basi per creare i tuoi componenti di sistema di progettazione. |
compose.material | Crea UI di Jetpack Compose con componenti Material Design pronti per l'uso. Si tratta del punto di ingresso di livello superiore di Compose, progettato per fornire componenti corrispondenti a quelli descritti all'indirizzo www.material.io. |
compose.material3 | Crea UI di Jetpack Compose con Material Design 3 Components, la prossima evoluzione di Material Design. Material 3 include temi e componenti aggiornati, nonché funzionalità di personalizzazione di Material You, come il colore dinamico, ed è progettato per essere coerente con il nuovo stile visivo e la nuova UI di sistema di Android 12. |
compose.runtime | Componenti di base di base del modello di programmazione e della gestione dello stato di Compose, nonché del runtime principale per il targeting del plug-in Compose Compiler. |
compose.ui | I componenti fondamentali dell'UI di scrittura necessari per interagire con il dispositivo, tra cui layout, disegno e input, |
Dichiarazione delle dipendenze
Per aggiungere una dipendenza su Compose, devi aggiungere il Repository Maven di Google al tuo progetto. Consulta il Repository Maven di Google per ulteriori informazioni.
Aggiungi le dipendenze per gli artefatti necessari nel file build.gradle
per
l'app o il modulo:
Trendy
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 Aggiungere dipendenze build.
Feedback
Il tuo feedback ci aiuta a migliorare Jetpack. Non esitare a contattarci in caso di nuovi problemi o idee per migliorare questa raccolta. Dai un'occhiata alle problemi esistenti in questa raccolta, prima di crearne uno nuovo. Puoi aggiungere il tuo voto a un problema esistente tramite facendo clic sul pulsante a forma di stella.
Consulta la documentazione di Issue Tracker per ulteriori informazioni.
Versione 1.5
Versione 1.5.15
7 agosto 2024
Vengono rilasciate le versioni androidx.compose.compiler:compiler:1.5.15
e androidx.compose.compiler:compiler-hosted:1.5.15
. La versione 1.5.15 contiene questi commit.
- Questa versione del compilatore ha come target Kotlin 1.9.25.
Versione 1.5.14
14 maggio 2024
Vengono rilasciate le versioni androidx.compose.compiler:compiler:1.5.14
e androidx.compose.compiler:compiler-hosted:1.5.14
. La versione 1.5.14 contiene questi commit.
Questa versione del compilatore ha come target Kotlin 1.9.24.
Correzioni di bug
- Assicurati che il corpo in linea venga realizzato quando le informazioni di origine sono disattivate. (Idddb8)
Versione 1.5.13
1° maggio 2024
Vengono rilasciate le versioni androidx.compose.compiler:compiler:1.5.13
e androidx.compose.compiler:compiler-hosted:1.5.13
. La versione 1.5.13 contiene questi commit.
Nuove funzionalità
- L'esclusione definitiva non è più considerata sperimentale ed è sicura per l'uso in produzione. Diventerà il comportamento predefinito in una prossima release. (I6c8c4)
Correzioni di bug
- Correggi la compatibilità binaria per le funzioni
@Composable
con parametri di classe di valore che hanno un valore predefinito e aggregano un valore non primitivo. (I89465 - Correzioni upstream per le compilazioni JS e native da Compose multipiattaforma. Per informazioni dettagliate, consulta l'intervallo di commit riportato sopra.
Versione 1.5.12
17 aprile 2024
Vengono rilasciate le versioni androidx.compose.compiler:compiler:1.5.12
e androidx.compose.compiler:compiler-hosted:1.5.12
. 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 senza valori null nei parametri di valore per le classi in linea non primitive. (Ie6bb5).
Versione 1.5.11
20 marzo 2024
Vengono rilasciate le versioni androidx.compose.compiler:compiler:1.5.11
e androidx.compose.compiler:compiler-hosted:1.5.11
. 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 Componi runtime1.7.0-alpha03
. Le chiamate astartRestartGroup
vengono generate soltanto per la versione 1.7.0-alpha03 o versioni successive del runtime.La chiamata di
startReplaceGroup
anziché distartReplaceableGroup
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 cambiamenti nel comportamento se unApplier
si basa sull'ordine di rilevamento di queste operazioni.
Nuove funzionalità
- Supporto per Kotlin 1.9.23
Correzioni di bug
- Correggi i tipi generici esterni nidificati che vengono dedotti instabili. (I3437f, b/327643787)
- Supporta più file di configurazione della stabilità. (I8db14, b/325326744)
- Ora, il compilatore Scrivi trasforma correttamente le funzioni sottoposte a override camminando in modo ricorsivo tra le classi e gli override di base. (I2c9f9, b/316196500)
- Assicurati che la memorizzazione dei riferimenti delle funzioni non provi a acquisire elementi padre impliciti di dichiarazioni locali quando non vengono utilizzate direttamente. (Ib1267)
- Correggi la generazione del codice per lambda in linea componibile (difficile rilevare questo bug senza "nonSkippingGroup Optimization"). (Icb2fd, b/325502738)
Versione 1.5.10
21 febbraio 2024
Vengono rilasciate le versioni androidx.compose.compiler:compiler:1.5.10
e androidx.compose.compiler:compiler-hosted:1.5.10
. La versione 1.5.10 contiene questi commit.
Correzioni di bug
- Supporta i valori letterali attivi all'interno dei blocchi di inizializzazione. (b/320397488)
- Utilizza il parametro del supervisore per verificare se la funzione si trova nella classe locale (b/323123439)
Versione 1.5.9
7 febbraio 2024
Vengono rilasciate le versioni androidx.compose.compiler:compiler:1.5.9
e androidx.compose.compiler:compiler-hosted:1.5.9
. La versione 1.5.9 contiene questi commit.
Correzioni di bug
- Correggi le chiamate componibili nell'inizializzazione degli oggetti anonimi. (b/320261458, 96315c)
- Conteggia le dichiarazioni locali ricorrenti come acquisizioni. (b/318745941, e7b4b0)
- La funzionalità Memorizzazione intrinseca modifica il comportamento relativo ai riferimenti dei metodi Java forzando .changed per i tipi di funzione con Memorizzazione intrinseca. (b/319810819, 77128e)
- È stata aggiunta un'ottimizzazione sperimentale che rimuoverà i gruppi relativi a funzioni non ignorabili, quali esplicitamente contrassegnate come
@NonSkippableComposable
, e funzioni che implicitamente non sono ignorabili, ad esempio funzioni in linea e funzioni che restituiscono un valore diverso da unità, ad esempioremember
. - Questa ottimizzazione può essere abilitata
trasmettendo l'opzione plug-in,
-P plugin:androidx.compose.compiler.plugins.kotlin:nonSkippingGroupOptimization=true
al compilatore Kotlin. (I1688F)
Versione 1.5.8
10 gennaio 2024
Vengono rilasciate le versioni androidx.compose.compiler:compiler:1.5.8
e androidx.compose.compiler:compiler-hosted:1.5.8
. La versione 1.5.8 contiene questi commit.
Nuove funzionalità
- Supporto per Kotlin 1.9.22
Correzioni di bug
- È stato corretto il bug per cui la build di Compose Compiler generava eccezioni quando veniva creata utilizzando Java21. Gli utenti che utilizzano il compilatore Compose di Google Maven (ovvero non lo creano autonomamente) non sono mai stati interessati da questo bug. (b/316644294)
- È stato corretto il bug per cui veniva segnalato un errore
COMPOSABLE_EXPECTED
per alcuni chiamanti di lambda non in linea. (b/309364913) - Aggiungi un errore di compilazione per i parametri predefiniti nelle funzioni aperte (in precedenza solo era limitato solo per le funzioni astratte). Al momento, Compose non supporta la sostituzione dei parametri predefiniti dalle funzioni sottoposte a override e durante l'esecuzione l'override di una funzione componibile con parametri predefiniti non funzionava. Utilizza
@Suppress("ABSTRACT_COMPOSABLE_DEFAULT_PARAMETER_VALUE")
per l'eliminazione, ma tieni presente che se esegui l'override di questa funzione senza fornire un valore predefinito per il parametro si verificherà un arresto anomalo in fase di runtime.(b/317490247) - È stato corretto il bug nella memoria intrinseca che impediva la corretta propagazione dei valori. (b/316327367)
Contributo esterno
- Correggi l'errore ortografico nella documentazione. (aosp/288106)
Versione 1.5.7
19 dicembre 2023
Vengono rilasciate le versioni androidx.compose.compiler:compiler:1.5.7
e androidx.compose.compiler:compiler-hosted:1.5.7
. La versione 1.5.7 contiene questi commit.
Correzioni di bug
- È stato risolto il problema che causava l'arresto anomalo del runtime di composizione quando il parametro chiave
remember()
richiama una funzione componibile (b/315855015) - Correggi l'arresto anomalo del runtime di Compose quando viene utilizzato
return@
. (b/315821171) - Evita di utilizzare percorsi assoluti nelle chiavi di memorizzazione per ottimizzare l'utilizzo della cache nella build. (b/313937484)
Versione 1.5.6
6 dicembre 2023
Vengono rilasciate le versioni androidx.compose.compiler:compiler:1.5.6
e androidx.compose.compiler:compiler-hosted:1.5.6
. La versione 1.5.6 contiene questi commit.
Nuove funzionalità
- Supporto per Kotlin 1.9.21
Correzioni di bug
- Attiva Memorizzazione intrinseca: la trasformazione del compilatore che ricorda in linea nel plug-in del compilatore Compose e sostituisce i confronti
.equals
con i confronti int del meta parametro per i parametri stabili. Ciò si traduce in un numero inferiore di slot utilizzati e meno confronti da eseguire in fase di runtime. L'opzione può essere disabilitata fornendo l'argomento del plug-in del compilatore: -Pplugin:androidx.compose.compiler.plugins.kotlin:intrinsicRemember=false
. (If675f) - È stata corretta la memorizzazione di riferimenti a funzioni adattate e argomenti in linea. (b/312738720)
- Crea gruppi all'uscita dalla chiamata di funzione in linea (b/312242547)
Contributo esterno
- Correggi l'arresto anomalo del runtime k/native e k/wasm a causa di un'istruzione di ritorno mancante nelle funzioni componibili quando è l'ultima istruzione e restituisce un const null (aosp/2835716)
Versione 1.5.5
29 novembre 2023
Vengono rilasciate le versioni androidx.compose.compiler:compiler:1.5.5
e androidx.compose.compiler:compiler-hosted:1.5.5
. La versione 1.5.5 contiene questi commit.
Correzioni di bug
- Corregge un arresto anomalo durante la ricerca di tipi componibili sostituiti (Ib6d2c, b/297665426)
- Aggiungi
stabilityConfigurationPath
ai parametri noti (in precedenza il bug impediva l'utilizzo del flag del file di configurazione). (b/309765121) - Correzioni relative alla memorizzazione (I081d1, I4d7bf)
- Correzione della ricomposizione tenendo conto dello stato del parametro Incerto nel ricordo intrinseco (b/263402091)
- Correggere le informazioni della riga di debug per la memoria intrinseca (Ic8cf5)
- Correzione dell'arresto anomalo (riduzione IR non riuscita) durante la ricerca di tipi componibili sottoposta a override al momento della compilazione (b/297665426)
- Aggiungi
Contributo esterno
- Memorizza i riferimenti alle funzioni stabili con gli argomenti (I4d7bf, b/302680514)
Versione 1.5.4
7 novembre 2023
Vengono rilasciate le versioni androidx.compose.compiler:compiler:1.5.4
e androidx.compose.compiler:compiler-hosted:1.5.4
. 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 questa modalità. Questa modalità consente di saltare gli elementi componibili con parametri instabili. Inoltre, vengono memorizzate le funzioni lambda con acquisizioni instabili. Questa funzionalità è sperimentale e non è considerata pronta per l'uso in produzione. (22421e)
- Aggiungi un flag per abilitare/disabilitare le informazioni di origine/traccia. (4d45f09).
- Consente di configurare la stabilità di classi esterne tramite un file di configurazione. (If40eb)
Correzioni di bug
- Correggi l'uscita anticipata dalle funzioni componibili quando non vengono raccolte informazioni di origine. (fe6267)
- Correggi l'errore Continua dalle funzioni componibili. (948362)
- Correggi la risoluzione quando le funzioni componibili vengono richiamate dall'interno di una chiamata di funzione con più overload che dipendono dal tipo di espressione restituito. (2d36d0)
- È stato corretto il problema di memorizzazione quando il riferimento alla funzione non ha un ricevitore. (fc2326).
- È stato risolto il problema del controllo "sporco" che impediva la ricomposizione dei lambda in alcune situazioni. (db3699)
- Correggi la stabilità durante la compilazione incrementale tra i moduli. (7d3e127)
- Riduci l'ambito di
@DontMemoize
alle sole espressioni lambda. (7a7fa52) - Correggi le variabili non acquisite correttamente quando si utilizza un'interfaccia divertente componibile come lambda. (5ae3556).
Contributo esterno
- Utilizza il simbolo di uguaglianza strutturale per il confronto numerico e nullo (c612a0)
Versione 1.5.3
29 agosto 2023
Vengono rilasciate le funzionalità androidx.compose.compiler:compiler:1.5.3
, androidx.compose.compiler:compiler-daemon:1.5.3
e androidx.compose.compiler:compiler-hosted:1.5.3
. 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
Vengono rilasciate le funzionalità androidx.compose.compiler:compiler:1.5.2
, androidx.compose.compiler:compiler-daemon:1.5.2
e androidx.compose.compiler:compiler-hosted:1.5.2
. La versione 1.5.2 contiene questi commit.
Correzioni di bug
- Inserisci i numeri di riga per le istruzioni di ritorno in funzioni componibili a restituzione costante. (I42d89)
- È stata corretta una perdita di memoria causata dal passaggio al nuovo entry point del plug-in del compilatore. (4f0a101)
- Interrompi la trasformazione di interfacce divertenti non componibili nel compilatore Compose. Questo fa sì che le interfacce divertenti vengano gestite allo stesso modo di lambda, comprese le regole di memorizzazione. (28b3ce9).
- Utilizza il tipo di argomento vararg per dedurre la stabilità sul sito di chiamata. (bc83645).
Versione 1.5.1
26 luglio 2023
Vengono rilasciate le funzionalità androidx.compose.compiler:compiler:1.5.1
, androidx.compose.compiler:compiler-daemon:1.5.1
e androidx.compose.compiler:compiler-hosted:1.5.1
. La versione 1.5.1 contiene questi commit.
Correzioni di bug
- Sono stati corretti gli indicatori degli eventi di traccia della composizione nelle funzioni
@ReadOnlyComposable
con resi iniziali che causavano il danneggiamento della traccia.
Versione 1.5.0
18 luglio 2023
Vengono rilasciate le funzionalità androidx.compose.compiler:compiler:1.5.0
, androidx.compose.compiler:compiler-daemon:1.5.0
e androidx.compose.compiler:compiler-hosted:1.5.0
. La versione 1.5.0 contiene questi commit.
Supporto sperimentale di K2
- Compose compiler 1.5.0 fornisce il supporto sperimentale per K2 compiler. Alcune funzionalità di Compose non sono ancora supportate con la versione K2 e saranno disponibili nelle versioni future del compilatore.
Modifiche importanti dalla versione 1.4.0
- La versione di Kotlin è stata aggiornata alla 1.9.0.
- Gli argomenti con nome per
@Composable
chiamate lambda sono stati deprecati. Questa funzionalità si basa su API di compilazione interne e non sarà supportata da K2. - È stata aggiunta una diagnostica per verificare l'annotazione
@Composable
sulle chiamate previste/effettive. Entrambe le dichiarazioni devono avere annotazioni corrispondenti.
Versione 1.4.8
Versione 1.4.8
28 giugno 2023
Vengono rilasciate le funzionalità androidx.compose.compiler:compiler:1.4.8
, androidx.compose.compiler:compiler-daemon:1.4.8
e androidx.compose.compiler:compiler-hosted:1.4.8
. La versione 1.4.8 contiene questi commit.
Nuove funzionalità
- La versione del compilatore Kotlin di destinazione è passata alla versione 1.8.22.
Correzioni di bug
- Messaggio di errore migliorato per gli override di
@Composable
. Ora indica correttamente la mancata corrispondenza delle annotazioni. - Avviso in caso di annotazione
@Composable
ridondante su lambda in linea 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
Vengono rilasciate le funzionalità androidx.compose.compiler:compiler:1.4.7
, androidx.compose.compiler:compiler-daemon:1.4.7
e androidx.compose.compiler:compiler-hosted:1.4.7
. 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 il tracciamento dei valori Int, Long, Float e Double negli oggettiState
senza incorrere in sanzioni per l'autoboxing.
Versione 1.4.6
Versione 1.4.6
19 aprile 2023
Vengono rilasciate le funzionalità androidx.compose.compiler:compiler:1.4.6
, androidx.compose.compiler:compiler-daemon:1.4.6
e androidx.compose.compiler:compiler-hosted:1.4.6
. La versione 1.4.6 contiene questi commit.
Correzioni di bug
- Compose Compiler ora dipende da Java11 (anziché 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
Vengono rilasciate le funzionalità androidx.compose.compiler:compiler:1.4.5
, androidx.compose.compiler:compiler-daemon:1.4.5
e androidx.compose.compiler:compiler-hosted:1.4.5
. La versione 1.4.5 contiene questi commit.
NOTA Questa build di Compose Compiler richiede l'utilizzo di Java 17 o versioni successive nel tuo ambiente di build. Sulla base del feedback degli utenti, rilasceremo questo requisito a Java 11 e faremo il follow-up con un'altra release (1.4.6) per supportare meglio gli utenti che usano versioni precedenti di Java.
Nuove funzionalità
Supporto per Kotlin 1.8.20
Correzioni di bug
- Propaga il requisito dell'override dell'operatore di richiamo componibile a classi e interfacce che estendono le interfacce lambda con 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 - Correggi l'errore di runtime di scrittura interno (previsto che sia stato richiamato
applyChanges()
) per le funzioni in linea.b/274786923 - Evita di acquisire l'elemento
ProcessCancelledException
perché ha un significato speciale nell'IDE.b/274725600
Contributo esterno
- Supporto migliorato per le funzioni componibili in Kotlin/native.f52b6aeed22400dd4f4a4f05559a9aa42642402c
Versione 1.4.4
Versione 1.4.4
22 marzo 2023
Vengono rilasciate le funzionalità androidx.compose.compiler:compiler:1.4.4
, androidx.compose.compiler:compiler-daemon:1.4.4
e androidx.compose.compiler:compiler-hosted:1.4.4
. La versione 1.4.4 contiene questi commit.
Correzioni di bug
- Correggi i resi lambda in linea componibili (72172b)
- Consenti agli elementi componibili di restituire
Nothing
(Non generare un errore quando utilizzi TODO in una funzione componibile) 3aea8d)
Versione 1.4.3
Versione 1.4.3
22 febbraio 2023
Viene rilasciato androidx.compose.compiler:compiler:1.4.3
. La versione 1.4.3 contiene questi commit.
Correzioni di bug
- Corregge le chiamate componibili condizionali in argomenti di chiamate componibili (Ie93edb)
Versione 1.4.2
Versione 1.4.2
8 febbraio 2023
Viene rilasciato androidx.compose.compiler:compiler:1.4.2
. La versione 1.4.2 contiene questi commit.
Nuove funzionalità
- Supporto per Kotlin 1.8.10
Correzioni di bug
- Aggiungi gruppi nel corpo dei lambda non ignorabili per evitare bug di ricomposizione.
Versione 1.4.1
Versione 1.4.1
8 febbraio 2023
Viene rilasciato androidx.compose.compiler:compiler:1.4.1
. La versione 1.4.1 contiene questi commit.
Correzioni di bug
- Disattiva l'ottimizzazione del ricordo intrinseco che in precedenza aveva introdotto alcuni bug di generazione del codice.
- Disattiva il ricordo intrinseco nelle funzioni contenenti un parametro vararg.
- Correggi gli errori di salto negli elementi componibili con parametri predefiniti
- Aggiungi un messaggio di errore di riserva difensivo se il controllo della compatibilità di Kotlin non va a buon fine.
- Rimuovi la possibilità di ignorare la generazione del codice dalla funzione lambda in linea
Versione 1.4.0
17 gennaio 2023
Viene rilasciato androidx.compose.compiler:compiler:1.4.0
. La versione 1.4.0 contiene questi commit.
Modifiche importanti dalla versione 1.3.0
- Supporto per Kotlin 1.8.0
- Memorizzazione intrinseca disattivata
- La classe di dati degli strumenti UI
Group
ora ha un campo,isInline
, che indica se il gruppo riguarda una chiamata a una funzione componibile in linea. SeisInline
ètrue
, la chiamata è a una funzione componibile in linea. Tuttavia, il valore potrebbe essere falso per le chiamate a funzioni componibili inline che provengono da moduli compilati con una versione del plug-in del compilatore Composer che non genera le informazioni della funzione inline. ImmutableCollection
e i suoi fratelli permanenti sono ora considerati stabili.- Nuovo parametro in
AnimatedContent
per l'etichetta degli strumenti - È stato corretto un errore di generazione del codice per la funzione lambda in linea
Versione 1.4.0-alpha02
11 novembre 2022
Viene rilasciato androidx.compose.compiler:compiler:1.4.0-alpha02
. La versione 1.4.0-alpha02 contiene questi commit.
Nuove funzionalità
- Aggiunto il supporto per Kotlin
1.7.21
Versione 1.4.0-alpha01
9 novembre 2022
Viene rilasciato androidx.compose.compiler:compiler:1.4.0-alpha01
. La versione 1.4.0-alpha01 contiene questi commit.
Correzioni di bug
- Correzione della possibilità di restituire anticipatamente le funzioni componibili in linea (b/255350755)
- È stato corretto il bug nella riduzione esca che comprometteva il supporto di Kotlin/JS in Compose (6a40f8).
Versione 1.3
Versione 1.3.2
4 ottobre 2022
Viene rilasciato androidx.compose.compiler:compiler:1.3.2
. 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
Viene rilasciato androidx.compose.compiler:compiler:1.3.1
. La versione 1.3.1 contiene questi commit.
Correzioni di bug
- È stato corretto
IllegalStateException
in cui in alcune circostanze il compilatore Compose contrassegnava erroneamente tipi di unità come componibili. (b/237863365) - Ora gli utenti devono specificare la loro versione Kotlin preferita quando sopprimono il controllo della versione del compilatore (I9e5e2)
Versione 1.3.0
10 agosto 2022
Viene rilasciato androidx.compose.compiler:compiler:1.3.0
. La versione 1.3.0 contiene questi commit.
Versione 1.3.0-rc02
3 agosto 2022
Viene rilasciato androidx.compose.compiler:compiler:1.3.0-rc02
. La versione 1.3.0-rc02 contiene questi commit.
Versione 1.3.0-rc01
27 luglio 2022
Viene rilasciato androidx.compose.compiler:compiler:1.3.0-rc01
. La versione 1.3.0-rc01 contiene questi commit.
Versione 1.3.0-beta01
20 luglio 2022
Viene rilasciato androidx.compose.compiler:compiler:1.3.0-beta01
. La versione 1.3.0-beta01 contiene questi commit.
Nuove funzionalità
- Aggiunto il supporto per Kotlin
1.7.10
Versione 1.2
Versione 1.2.0
29 giugno 2022
Viene rilasciato androidx.compose.compiler:compiler:1.2.0
. La versione 1.2.0 contiene questi commit.
Modifiche importanti dalla versione 1.1.0
- Supporto per Kotlin 1.7.0
- Consulta il post del nostro blog che spiega la nostra nuova strategia di controllo delle versioni del compilatore di Compose in Compose.
Versione 1.2.0-rc02
22 giugno 2022
Viene rilasciato androidx.compose.compiler:compiler:1.2.0-rc02
. La versione 1.2.0-rc02 contiene questi commit.
Correzioni di bug
- Generazione del codice di evento di traccia componibile rimossa (aosp/2127922)
Versione 1.2.0-rc01
15 giugno 2022
Viene rilasciato androidx.compose.compiler:compiler:1.2.0-rc01
. La versione 1.2.0-rc01 contiene questi commit.
Versione 1.2.0-beta03
1 giugno 2022
Viene rilasciato androidx.compose.compiler:compiler:1.2.0-beta03
. La versione 1.2.0-beta03 contiene questi commit.
Versione 1.2.0-beta02
18 maggio 2022
Viene rilasciato androidx.compose.compiler:compiler:1.2.0-beta02
. La versione 1.2.0-beta02 contiene questi commit.
Versione 1.2.0-beta01
11 maggio 2022
Viene rilasciato androidx.compose.compiler:compiler:1.2.0-beta01
. La versione 1.2.0-beta01 contiene questi commit.
- Questa è la prima versione beta della 1.2. Non sono state apportate modifiche dall'ultima versione alpha.
Nuove funzionalità
- Aggiunto il supporto per Kotlin
1.6.21
Versione 1.2.0-alpha08
20 aprile 2022
Viene rilasciato androidx.compose.compiler:compiler:1.2.0-alpha08
. La versione 1.2.0-alpha08 contiene questi commit.
Versione 1.2.0-alpha07
6 aprile 2022
Viene rilasciato androidx.compose.compiler:compiler:1.2.0-alpha07
. La versione 1.2.0-alpha07 contiene questi commit.
Versione 1.2.0-alpha06
23 marzo 2022
Viene rilasciato androidx.compose.compiler:compiler:1.2.0-alpha06
. La versione 1.2.0-alpha06 contiene questi commit.
Versione 1.2.0-alpha05
9 marzo 2022
Viene rilasciato androidx.compose.compiler:compiler:1.2.0-alpha05
. La versione 1.2.0-alpha05 contiene questi commit.
Versione 1.2.0-alpha04
23 febbraio 2022
Viene rilasciato androidx.compose.compiler:compiler:1.2.0-alpha04
. La versione 1.2.0-alpha04 contiene questi commit.
Versione 1.2.0-alpha03
9 febbraio 2022
Viene rilasciato androidx.compose.compiler:compiler:1.2.0-alpha03
. La versione 1.2.0-alpha03 contiene questi commit.
Versione 1.2.0-alpha02
26 gennaio 2022
Viene rilasciato androidx.compose.compiler:compiler:1.2.0-alpha02
. La versione 1.2.0-alpha02 contiene questi commit.
Versione 1.2.0-alpha01
12 gennaio 2022
Viene rilasciato androidx.compose.compiler:compiler:1.2.0-alpha01
. La versione 1.2.0-alpha01 contiene questi commit.
Nuove funzionalità
- Aggiunto il supporto per Kotlin
1.6.10
.
Versione 1.1
Versione 1.1.1
23 febbraio 2022
Viene rilasciato androidx.compose.compiler:compiler:1.1.1
. La versione 1.1.1 contiene questi commit.
Correzioni di bug
- Correggi
NullPointerException
inandroidx.compose.ui.platform.RenderNodeLayer.updateDisplayList
(aosp/1947059, b/206677462) - È stato corretto l'arresto anomalo causato dai contenuti degli appunti durante la lettura da appunti su Android. (I06020, b/197769306)
- RTL fisso in
LazyVerticalGrid
(aosp/1931080, b/207510535)
Versione 1.1.0
9 febbraio 2022
Viene rilasciato androidx.compose.compiler:compiler:1.1.0
. La versione 1.1.0 contiene questi commit.
Modifiche importanti dalla versione 1.0.0
- Supporto stabile dell'effetto Overscroll per Android 12
- Miglioramenti alle dimensioni del touch target
- Tieni presente che, rispetto a Compose 1.0, i componenti Material amplieranno lo spazio di layout per rispettare le linee guida per l'accessibilità di Material relative alle dimensioni del touch target. Ad esempio, il touch target del pulsante si espanderà fino a una dimensione minima di
48x48dp
, anche se imposti le dimensioni del pulsante su un valore inferiore. In questo modo, Compose Material si allinea allo stesso comportamento dei componenti di Material Design e si ottiene un comportamento coerente se si combinano Visualizzazioni e Compose. Questa modifica garantisce inoltre che, quando crei la UI utilizzando i componenti Compose Material, vengano soddisfatti i requisiti minimi per l'accessibilità dei touch target. - Supporto stabile per barra di navigazione
- Consente di passare alcune API precedentemente sperimentali allo stato stabile
- Supporto per versioni più recenti di Kotlin
Versione 1.1.0-rc03
26 gennaio 2022
Viene rilasciato androidx.compose.compiler:compiler:1.1.0-rc03
. 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
Viene rilasciato androidx.compose.compiler:compiler:1.1.0-rc02
. La versione 1.1.0-rc02 contiene questi commit.
Aggiornamenti delle dipendenze
- Il compilatore
1.1.0-rc02
è compatibile con Kotlin1.6.10
.
Versione 1.1.0-rc01
15 dicembre 2021
Viene rilasciato androidx.compose.compiler:compiler:1.1.0-rc01
. La versione 1.1.0-rc01 contiene questi commit.
Modifiche alle dipendenze
- Il compilatore
1.1.0-rc01
è compatibile con Kotlin1.6.0
. È disponibile una build
1.6.10
compatibile tramite SNAPSHOT androidx.dev conbuildId
8003490. Il seguente snippet di dipendenza configura le SNAPSHOT per il compilatore di scrittura:Aggiungi il seguente snippet al file
build.gradle
principale del tuo progetto:buildscript { repositories { google() jcenter() maven { url 'https://androidx.dev/snapshots/builds/8003490/artifacts/repository' } } }
Aggiungi il seguente snippet al file
build.gradle
dell'app o del modulo che utilizza Compose:android { composeOptions { kotlinCompilerExtensionVersion = "1.2.0-SNAPSHOT" } }
Versione 1.1.0-beta04
1 dicembre 2021
Viene rilasciato androidx.compose.compiler:compiler:1.1.0-beta04
. La versione 1.1.0-beta04 contiene questi commit.
Nuove funzionalità
- Aggiornamento per essere compatibile con Kotlin
1.6.0
Versione 1.1.0-beta03
17 novembre 2021
Viene rilasciato androidx.compose.compiler:compiler:1.1.0-beta03
. La versione 1.1.0-beta03 contiene questi commit.
Versione 1.1.0-beta02
3 novembre 2021
Viene rilasciato androidx.compose.compiler:compiler:1.1.0-beta02
. La versione 1.1.0-beta02 contiene questi commit.
Versione 1.1.0-beta01
27 ottobre 2021
Viene rilasciato androidx.compose.compiler:compiler:1.1.0-beta01
. La versione 1.1.0-beta01 contiene questi commit.
Versione 1.1.0-alpha06
13 ottobre 2021
Viene rilasciato androidx.compose.compiler:compiler:1.1.0-alpha06
. La versione 1.1.0-alpha06 contiene questi commit.
Versione 1.1.0-alpha05
29 settembre 2021
Viene rilasciato androidx.compose.compiler:compiler:1.1.0-alpha05
. La versione 1.1.0-alpha05 contiene questi commit.
Versione 1.1.0-alpha04
15 settembre 2021
Viene rilasciato androidx.compose.compiler:compiler:1.1.0-alpha04
. La versione 1.1.0-alpha04 contiene questi commit.
Versione 1.1.0-alpha03
1° settembre 2021
Viene rilasciato androidx.compose.compiler:compiler:1.1.0-alpha03
. 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 il runtime di Compose della stessa versione o versioni successive. Dopo questa modifica, Compose Compiler è compatibile con una versione precedente di Compose Runtime (1.0). (aosp/1796968)
- Compose
1.1.0-alpha03
è stata aggiornata per dipendere da Kotlin1.5.30
. (I74545)
Versione 1.1.0-alpha02
18 agosto 2021
Viene rilasciato androidx.compose.compiler:compiler:1.1.0-alpha02
. La versione 1.1.0-alpha02 contiene questi commit.
Versione 1.1.0-alpha01
4 agosto 2021
Viene rilasciato androidx.compose.compiler:compiler:1.1.0-alpha01
. La versione 1.1.0-alpha01 contiene questi commit.
Versione 1.0
Versione 1.0.5
3 novembre 2021
Viene rilasciato androidx.compose.compiler:compiler:1.0.5
. La versione 1.0.5 contiene questi commit.
Correzioni di bug
- È stato corretto un arresto anomalo del monitoraggio delle istanze derivateStateOf. (aosp/1792247)
Versione 1.0.4
13 ottobre 2021
Viene rilasciato androidx.compose.compiler:compiler:1.0.4
. La versione 1.0.4 contiene questi commit.
Aggiornamenti delle dipendenze
- Aggiornamento in base a Kotlin
1.5.31
eseguito
Versione 1.0.3
29 settembre 2021
Viene rilasciato androidx.compose.compiler:compiler:1.0.3
. La versione 1.0.3 contiene questi commit.
Aggiornamenti delle dipendenze
- Aggiornamento in base a Kotlin
1.5.30
eseguito
Versione 1.0.2
1° settembre 2021
Viene rilasciato androidx.compose.compiler:compiler:1.0.2
. La versione 1.0.2 contiene questi commit.
Aggiornamento eseguito per supportare la release Compose 1.0.2
. Compose 1.0.2
è ancora compatibile con Kotlin 1.5.21
.
Versione 1.0.1
4 agosto 2021
Viene rilasciato androidx.compose.compiler:compiler:1.0.1
. La versione 1.0.1 contiene questi commit.
Aggiornamenti delle dipendenze
- Aggiornamento eseguito in modo da dipendere da Kotlin
1.5.21
.
Versione 1.0.0
28 luglio 2021
Viene rilasciato androidx.compose.compiler:compiler:1.0.0
. La versione 1.0.0 contiene questi commit.
Funzionalità principali di 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
Viene rilasciato androidx.compose.compiler:compiler:1.0.0-rc02
. La versione 1.0.0-rc02 contiene questi commit.
Versione 1.0.0-rc01
1 luglio 2021
Viene rilasciato androidx.compose.compiler:compiler:1.0.0-rc01
. La versione 1.0.0-rc01 contiene questi commit.
Versione 1.0.0-beta09
16 giugno 2021
Viene rilasciato androidx.compose.compiler:compiler:1.0.0-beta09
. La versione 1.0.0-beta09 contiene questi commit.
Versione 1.0.0-beta08
2 giugno 2021
Viene rilasciato androidx.compose.compiler:compiler:1.0.0-beta08
. La versione 1.0.0-beta08 contiene questi commit.
Versione 1.0.0-beta07
18 maggio 2021
Viene rilasciato androidx.compose.compiler:compiler:1.0.0-beta07
. La versione 1.0.0-beta07 contiene questi commit.
Versione 1.0.0-beta06
5 maggio 2021
Viene rilasciato androidx.compose.compiler:compiler:1.0.0-beta06
. La versione 1.0.0-beta06 contiene questi commit.
Versione 1.0.0-beta05
21 aprile 2021
Viene rilasciato androidx.compose.compiler:compiler:1.0.0-beta05
. La versione 1.0.0-beta05 contiene questi commit.
Versione 1.0.0-beta04
7 aprile 2021
Viene rilasciato androidx.compose.compiler:compiler:1.0.0-beta04
. La versione 1.0.0-beta04 contiene questi commit.
Versione 1.0.0-beta03
24 marzo 2021
Viene rilasciato androidx.compose.compiler:compiler:1.0.0-beta03
. La versione 1.0.0-beta03 contiene questi commit.
Versione 1.0.0-beta02
10 marzo 2021
Viene rilasciato androidx.compose.compiler:compiler:1.0.0-beta02
. La versione 1.0.0-beta02 contiene questi commit.
Versione 1.0.0-beta01
24 febbraio 2021
Viene rilasciato androidx.compose.compiler:compiler:1.0.0-beta01
. La versione 1.0.0-beta01 contiene questi commit.
Questa è la prima versione di Compose 1.0.0 Beta.
Versione 1.0.0-alpha12
10 febbraio 2021
Viene rilasciato androidx.compose.compiler:compiler:1.0.0-alpha12
. La versione 1.0.0-alpha12 contiene questi commit.
Versione 1.0.0-alpha11
28 gennaio 2021
Viene rilasciato androidx.compose.compiler:compiler:1.0.0-alpha11
. La versione 1.0.0-alpha11 contiene questi commit.
Versione 1.0.0-alpha10
13 gennaio 2021
Viene rilasciato androidx.compose.compiler:compiler:1.0.0-alpha10
. La versione 1.0.0-alpha10 contiene questi commit.
Versione 1.0.0-alpha09
16 dicembre 2020
Viene rilasciato androidx.compose.compiler:compiler:1.0.0-alpha09
. La versione 1.0.0-alpha09 contiene questi commit.
Versione 1.0.0-alpha08
2 dicembre 2020
Viene rilasciato androidx.compose.compiler:compiler:1.0.0-alpha08
. La versione 1.0.0-alpha08 contiene questi commit.
Versione 1.0.0-alpha07
11 novembre 2020
Viene rilasciato androidx.compose.compiler:compiler:1.0.0-alpha07
. La versione 1.0.0-alpha07 contiene questi commit.
Nuove funzionalità
- Inferenza e stabilità Propagazione. Il plug-in Compose Compiler analizza i tipi che compila per dedurre se è idoneo per determinate ottimizzazioni in base al runtime. Questo risultato dedotto viene quindi sintetizzato come metadati nella classe per essere utilizzato dal compilatore in altri moduli. Inoltre, il risultato del runtime di queste inferenze viene trasmesso nei metadati passati alle chiamate componibili durante la composizione. Ciò richiedeva un protocollo di metadati diverso per le funzioni componibili, il che significa che le funzioni componibili compilate con il compilatore alpha07 non saranno compatibili binarie con le funzioni componibili compilate con qualsiasi versione precedente del compilatore. (aosp/1431988)
Versione 1.0.0-alpha06
28 ottobre 2020
Viene rilasciato androidx.compose.compiler:compiler:1.0.0-alpha06
. La versione 1.0.0-alpha06 contiene questi commit.
Versione 1.0.0-alpha05
14 ottobre 2020
Viene rilasciato androidx.compose.compiler:compiler:1.0.0-alpha05
. La versione 1.0.0-alpha05 contiene questi commit.
Versione 1.0.0-alpha04
1° ottobre 2020
Viene rilasciato androidx.compose.compiler:compiler:1.0.0-alpha04
. La versione 1.0.0-alpha04 contiene questi commit.
È stato eseguito il refactoring di androidx.compose:compose-compiler
in androidx.compose.compiler:compiler
.
Questa è la prima release del nuovo gruppo.