Scrivi compilatore

Trasforma le funzioni @Composable e abilita le ottimizzazioni con un plug-in di compilazione Kotlin.
Aggiornamento più recente Release stabile Candidato per la release Versione beta Release alpha
20 marzo 2024 1.5.11 - - -

Struttura

Compose è una combinazione di 7 ID gruppo Maven all'interno di androidx. Ogni gruppo contiene un sottoinsieme specifico di funzionalità, ciascuna con il proprio set di note di rilascio.

Questa tabella illustra i gruppi e fornisce i link a ciascun insieme di note di rilascio.

RaggruppaDescrizione
compose.animationCreare animazioni nelle applicazioni Jetpack Compose per arricchire l'esperienza utente.
compose.compilerTrasforma le funzioni @Composable e abilita le ottimizzazioni con un plug-in di compilazione Kotlin.
compose.foundationScrivi applicazioni Jetpack Compose con componenti di base pronti all'uso ed estendi le basi per creare i componenti del tuo sistema di progettazione.
compose.materialCrea UI di Jetpack Compose con componenti Material Design pronti per l'uso. Si tratta del punto di accesso di livello superiore di Compose, progettato per fornire componenti corrispondenti a quelli descritti su www.material.io.
compose.material3Crea UI di Jetpack Compose con i componenti di Material Design 3, la prossima evoluzione di Material Design. Material 3 include temi e componenti aggiornati e funzionalità di personalizzazione di Material You, come il colore dinamico, ed è progettato per essere coerente con il nuovo stile visivo e la UI di sistema di Android 12.
compose.runtimeComponenti di base fondamentali del modello di programmazione e della gestione dello stato di Compose, nonché del runtime di base per il plug-in di Compose Compiler da utilizzare come target.
compose.uiComponenti fondamentali dell'interfaccia utente di composizione necessari per interagire con il dispositivo, inclusi layout, disegno e input.

Dichiarazione delle dipendenze

Per aggiungere una dipendenza su Compose, devi aggiungere il Repository Maven di Google al tuo progetto. Per ulteriori informazioni, consulta il Repository Maven di Google.

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.11"
    }

    kotlinOptions {
        jvmTarget = "19"
    }
}

Kotlin

android {
    buildFeatures {
        compose = true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.5.11"
    }

    kotlinOptions {
        jvmTarget = "19"
    }
}

Per ulteriori informazioni sulle dipendenze, vedi Aggiungere dipendenze build.

Feedback

Il tuo feedback ci aiuta a migliorare Jetpack. Facci sapere se rilevi nuovi problemi o hai idee per migliorare la libreria. Dai un'occhiata ai problemi esistenti in questa libreria prima di crearne una nuova. Puoi aggiungere il tuo voto a un problema esistente facendo clic sul pulsante a forma di stella.

Crea un nuovo problema

Per ulteriori informazioni, consulta la documentazione di Issue Tracker.

Versione 1.5

Versione 1.5.11

20 marzo 2024

androidx.compose.compiler:compiler:1.5.11 e androidx.compose.compiler:compiler-hosted:1.5.11 vengono rilasciati. La versione 1.5.11 contiene questi commit.

Notes

  • A partire da questa versione, il compilatore ora chiamerà startReplaceGroup anziché startReplacableGroup quando un modulo viene compilato con un runtime che contiene questo metodo. startReplaceGroup è stato introdotto nel runtime in Compose Runtime 1.7.0-alpha03. Le chiamate a startRestartGroup vengono generate solo se hanno come target le versioni 1.7.0-alpha03 o successive del runtime.

  • La chiamata a startReplaceGroup anziché a startReplaceableGroup consente al runtime di rilevare le modifiche in modo più efficiente, ma potrebbe influire sull'ordine in cui le modifiche vengono rilevate da Composer e inviate al Applier. Ciò potrebbe causare lievi cambiamenti nel comportamento se un elemento Applier 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 come instabili. (I3437f, b/327643787)
  • Supportano più file di configurazione della stabilità. (I8db14, b/325326744).
  • Compose Compiler ora trasforma correttamente le funzioni con override camminando in modo ricorsivo attraverso le classi di base/gli override. (I2c9f9, b/316196500).
  • Assicurati che la memorizzazione dei riferimenti alle funzioni non provi ad acquisire elementi padre impliciti delle dichiarazioni locali quando non vengono utilizzate direttamente. (Ib1267)
  • Correggi la generazione del codice per lambda crossinline componibile (è difficile riscontrare questo bug senza l'opzione "nonSkippingGroup Optimization" abilitata). (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 vengono rilasciati. La versione 1.5.10 contiene questi commit.

Correzioni di bug

  • Supporta i valori letterali attivi all'interno di blocchi init. (b/320397488)
  • Utilizza il parametro supervisore per verificare se la funzione è 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 vengono rilasciati. La versione 1.5.9 contiene questi commit.

Correzioni di bug

  • Correggi le chiamate componibili nell'inizializzazione di oggetti anonimi. (b/320261458, 96315c).
  • Conteggia le dichiarazioni locali ricorsive come acquisizioni. (b/318745941, e7b4b0)
  • Correggi Intrinsic promemoria cambia il comportamento relativo ai riferimenti dei metodi Java forzando il comando .changed per i tipi di funzione con ricordo intrinseco. (b/319810819, 77128e)
  • È stata aggiunta un'ottimizzazione sperimentale che rimuoverà i gruppi intorno a funzioni non ignorabili, come esplicitamente contrassegnate come @NonSkippableComposable, e funzioni che non sono implicitamente ignorabili, come le funzioni incorporate e le funzioni che restituiscono un valore non di unità, come remember.
  • Questa ottimizzazione può essere abilitata 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 vengono rilasciati. 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 del compilatore Compose generava eccezioni quando veniva creata usando Java21. Gli utenti che utilizzano il compilatore di Compose di Google Maven (ovvero non lo creano da soli) non sono mai stati interessati da questo bug. (b/316644294)
  • Risolvi il bug in cui veniva segnalato l'errore COMPOSABLE_EXPECTED per alcuni chiamanti di lambda non integrate. (b/309364913)
  • Aggiungi un errore di compilazione per i parametri predefiniti nelle funzioni aperte (in precedenza era limitato solo per le funzioni astratte). Al momento, Scrivi non supporta la sostituzione dei parametri predefiniti delle funzioni con override e l'override di una funzione componibile con parametri predefiniti non era possibile durante il runtime. Utilizza @Suppress("ABSTRACT_COMPOSABLE_DEFAULT_PARAMETER_VALUE") per l'eliminazione, ma tieni presente che l'override di questa funzione senza fornire un valore predefinito per il parametro comporterà un arresto anomalo durante il runtime.(b/317490247)
  • È stato corretto un bug nel ricordo intrinseco che impediva la propagazione corretta dei valori. (b/316327367)

Contributi esterni

  • Correggi l'errore ortografico 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 vengono rilasciati. La versione 1.5.7 contiene questi commit.

Correzioni di bug

  • Risoluzione dell'arresto anomalo del runtime di scrittura quando il parametro chiave remember() richiama una funzione componibile (b/315855015)
  • Correggi l'arresto anomalo di runtime di Compose quando viene utilizzato return@. (b/315821171)
  • Evita di utilizzare percorsi assoluti nelle chiavi di memorizzazione che consentono un migliore utilizzo della 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 vengono rilasciati. La versione 1.5.6 contiene questi commit.

Nuove funzionalità

  • Supporto per Kotlin 1.9.21

Correzioni di bug

  • Abilita la memorizzazione intrinseca: la trasformazione del compilatore che viene ricordata nel plug-in di compilazione di Compose e sostituisce i confronti .equals con i confronti int del meta parametro per i parametri stabili. In questo modo vengono utilizzati meno slot e vengono effettuati meno confronti durante il runtime. L'opzione può essere disabilitata fornendo l'argomento del plug-in di compilazione: -P plugin:androidx.compose.compiler.plugins.kotlin:intrinsicRemember=false. (If675f)
  • Correggi la memorizzazione dei riferimenti alle funzioni adattate e degli argomenti in linea. (b/312738720)
  • Realizza i gruppi all'uscita dalla chiamata di funzione in linea (b/312242547)

Contributi esterni

  • Correggi l'arresto anomalo del runtime k/native e k/wasm a causa dell'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

androidx.compose.compiler:compiler:1.5.5 e androidx.compose.compiler:compiler-hosted:1.5.5 vengono rilasciati. La versione 1.5.5 contiene questi commit.

Correzioni di bug

  • È stato corretto un arresto anomalo durante la ricerca dei tipi componibili sostituiti (Ib6d2c, b/297665426)
    • Aggiungi stabilityConfigurationPath ai parametri noti (in precedenza un bug impediva l'utilizzo del flag del file di configurazione). (b/309765121)
    • Correzioni di memorizzazione nella cache (I081d1, I4d7bf)
    • Correzione di ricomposizione tenendo conto dello stato del parametro incerto nel ricordo intrinseco (b/263402091)
    • Correggere le informazioni sulle righe di debug per la memorizzazione intrinseca (Ic8cf5)
    • Correggi l'arresto anomalo (abbassamento IR non riuscito) durante la ricerca dei tipi componibili sostituiti al momento della compilazione (b/297665426)

Contributi esterni

Versione 1.5.4

7 novembre 2023

androidx.compose.compiler:compiler:1.5.4 e androidx.compose.compiler:compiler-hosted:1.5.4 vengono 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à Ignora forte. Questa modalità consente di ignorare gli elementi componibili con parametri instabili. Inoltre, le lambda con acquisizioni instabili vengono memorizzate. Questa funzionalità è sperimentale e non è considerata pronta per l'uso in produzione. (22421e)
  • Aggiungi flag per abilitare/disabilitare le informazioni di origine/traccia. (4d45f09)
  • Consente di configurare la stabilità delle classi esterne tramite un file di configurazione. (If40eb)

Correzioni di bug

  • Correggi l'uscita anticipata dalle funzioni componibili quando le informazioni di origine non vengono raccolte. (fe6267)
  • Correggi Continua dalle funzioni componibili. (948362)
  • Correggi la risoluzione quando le funzioni componibili vengono richiamate dall'interno di una chiamata di funzione con più sovraccarichi che dipendono dal tipo restituito dall'espressione. (2d36d0)
  • Correggi la memorizzazione nella cache quando il riferimento della funzione non ha un destinatario dell'invio. (fc2326)
  • Correggi i problemi relativi al controllo sporco che impediva la ricomposizione delle lambda in alcune situazioni. (db3699)
  • Problemi di stabilità durante la compilazione incrementale dei moduli. (7d3e127)
  • Riduci l'ambito di @DontMemoize alle sole espressioni lambda. (7a7fa52)
  • Correggi le variabili non acquisite correttamente quando utilizzi un'interfaccia divertente componibile come lambda. (5ae3556).

Contributi esterni

  • 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 vengono rilasciati. La versione 1.5.3 contiene questi commit.

Aggiornamento delle dipendenze

  • La versione di Kotlin è 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 vengono rilasciati. La versione 1.5.2 contiene questi commit.

Correzioni di bug

  • Inserisci i numeri di riga per le istruzioni restituite nelle funzioni componibili a restituzione costante. (I42d89)
  • È stata corretta una perdita di memoria causata dal passaggio al nuovo punto di ingresso del plug-in di compilazione. (4f0a101)
  • Smetti di trasformare le interfacce divertenti non componibili nel compilatore di Compose. In questo modo, le interfacce divertenti vengono gestite allo stesso modo delle lambda, incluse 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

androidx.compose.compiler:compiler:1.5.1, androidx.compose.compiler:compiler-daemon:1.5.1 e androidx.compose.compiler:compiler-hosted:1.5.1 vengono rilasciati. La versione 1.5.1 contiene questi commit.

Correzioni di bug

  • Sono stati corretti gli indicatori di evento della traccia della composizione nelle funzioni @ReadOnlyComposable con ritorni in anteprima 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 vengono rilasciati. La versione 1.5.0 contiene questi commit.

Assistenza sperimentale K2

  • Il compilatore Compose 1.5.0 fornisce supporto sperimentale per il compilatore K2. Alcune funzionalità di Compose non sono ancora supportate con K2 e saranno disponibili nelle versioni future del compilatore.

Modifiche importanti dalla versione 1.4.0

  • La versione di Kotlin è aggiornata alla 1.9.0.
  • Gli argomenti con nome per @Composable chiamate lambda sono stati ritirati. Questa funzionalità si basa su API di compilazione interne e non è 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

androidx.compose.compiler:compiler:1.4.8, androidx.compose.compiler:compiler-daemon:1.4.8 e androidx.compose.compiler:compiler-hosted:1.4.8 vengono rilasciati. La versione 1.4.8 contiene questi commit.

Nuove funzionalità

  • La versione del compilatore Kotlin di destinazione è stata portata alla 1.8.22.

Correzioni di bug

  • Messaggio di errore migliorato per l'override di @Composable. Ora indica correttamente la mancata corrispondenza delle annotazioni.
  • Avvisa in caso di annotazione @Composable ridondante sui lambda incorporati che non devono essere contrassegnati 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 vengono 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 il monitoraggio di valori Int, Long, Float e Double negli oggetti State senza 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 vengono rilasciati. La versione 1.4.6 contiene questi commit.

Correzioni di bug

  • Compose Compiler ora dipende da Java11 (anziché Java17 richiesto da Compose Compiler versione 1.4.5) 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 vengono rilasciati. La versione 1.4.5 contiene questi commit.

NOTA Questa build del compilatore di Compose richiede l'utilizzo dell'ambiente di build per l'utilizzo di Java 17 o versioni successive. In base al feedback degli utenti, ritireremo questo requisito a Java 11 e seguiremo un'altra release (1.4.6) per supportare meglio gli utenti che utilizzano versioni di Java precedenti.

Nuove funzionalità

Supporto per Kotlin 1.8.20

Correzioni di bug

  • Requisito di propagazione 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'operatore getValue e contrassegna il getter generato per il delegato come componibile in IR per garantire che venga trasformato correttamente in seguito. f174f6ee60ca957d5cb6d19a5bd02a88267cdf40
  • Correggi l'errore di runtime di composizione interno (è previsto che applyChanges() sia stato chiamato) per le funzioni incorporate.b/274786923
  • Evita di acquisire ProcessCancelledException poiché ha un significato speciale nell'IDE.b/274725600

Contributi esterni

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 vengono rilasciati. 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 si utilizza TODO in una funzione componibile) 3aea8d)

Versione 1.4.3

Versione 1.4.3

22 febbraio 2023

androidx.compose.compiler:compiler:1.4.3 viene rilasciato. 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 rilasciato. 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 il bug di ricomposizione.

Versione 1.4.1

Versione 1.4.1

8 febbraio 2023

androidx.compose.compiler:compiler:1.4.1 viene rilasciato. La versione 1.4.1 contiene questi commit.

Correzioni di bug

  • Disattiva l'ottimizzazione intrinseca della memoria che in precedenza aveva introdotto alcuni bug di generazione del codice.
  • Disattiva la memorizzazione intrinseca nelle funzioni contenenti un parametro vararg.
  • Correggere gli errori per ignorare gli 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 generazione di codice saltata da lambda in linea

Versione 1.4.0

17 gennaio 2023

androidx.compose.compiler:compiler:1.4.0 viene rilasciato. 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 dell'interfaccia utente Group ora include un campo, isInline, che indica se il gruppo è destinato a una chiamata a una funzione componibile in linea. Se isInline è true, la chiamata è a una funzione componibile in linea. Tuttavia, il valore potrebbe essere false per le chiamate a funzioni componibili in linea che provengono da moduli compilati con una versione del plug-in di compilazione Composer che non genera le informazioni sulla funzione in linea.
  • ImmutableCollection e i fratelli e le sorelle permanenti sono ora considerati stabili.
  • Nuovo parametro in AnimatedContent per l'etichetta degli strumenti
  • Correzione della generazione del codice difettoso per lambda in linea

Versione 1.4.0-alpha02

11 novembre 2022

androidx.compose.compiler:compiler:1.4.0-alpha02 viene rilasciato. 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

androidx.compose.compiler:compiler:1.4.0-alpha01 viene rilasciato. La versione 1.4.0-alpha01 contiene questi commit.

Correzioni di bug

  • Risoluzione del problema di restituzione anticipata dalle funzioni componibili incorporate (b/255350755)
  • Correzione di un bug nell'abbassamento ingannevole che causava l'interruzione del 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 rilasciato. 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 rilasciato. La versione 1.3.1 contiene questi commit.

Correzioni di bug

  • È stato risolto il problema IllegalStateException per cui in alcune circostanze il compilatore di Compose contrassegna erroneamente i tipi di unità come componibili. (b/237863365)
  • Ora gli utenti devono specificare la loro versione di Kotlin preferita durante l'eliminazione del controllo della versione del compilatore (I9e5e2)

Versione 1.3.0

10 agosto 2022

androidx.compose.compiler:compiler:1.3.0 viene rilasciato. 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 rilasciato. 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 rilasciato. 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 rilasciato. 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

androidx.compose.compiler:compiler:1.2.0 viene rilasciato. La versione 1.2.0 contiene questi commit.

Modifiche importanti dalla versione 1.1.0

Versione 1.2.0-rc02

22 giugno 2022

androidx.compose.compiler:compiler:1.2.0-rc02 viene rilasciato. 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

androidx.compose.compiler:compiler:1.2.0-rc01 viene rilasciato. 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 rilasciato. 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 rilasciato. 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 rilasciato. La versione 1.2.0-beta01 contiene questi commit.

  • Questa è la prima versione beta 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

androidx.compose.compiler:compiler:1.2.0-alpha08 viene rilasciato. 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 rilasciato. 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 rilasciato. 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 rilasciato. 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 rilasciato. 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 rilasciato. 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 rilasciato. 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 rilasciato. 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

androidx.compose.compiler:compiler:1.1.1 viene rilasciato. La versione 1.1.1 contiene questi commit.

Correzioni di bug

  • Correggi NullPointerException all'indirizzo androidx.compose.ui.platform.RenderNodeLayer.updateDisplayList (aosp/1947059, b/206677462)
  • È stato risolto l'arresto anomalo causato dai contenuti degli appunti durante la lettura dagli appunti su Android. (I06020, b/197769306)
  • RTL corretto in LazyVerticalGrid (aosp/1931080, b/207510535)

Versione 1.1.0

9 febbraio 2022

androidx.compose.compiler:compiler:1.1.0 viene rilasciato. La versione 1.1.0 contiene questi commit.

Modifiche importanti dalla versione 1.0.0

  • Supporto stabile per l'effetto scorrimento orizzontale di Android 12
  • Miglioramenti alle dimensioni del touch target
  • Tieni presente che, rispetto a Compose 1.0, i componenti Material espanderanno lo spazio di layout in modo da rispettare le linee guida sull'accessibilità di Material per le dimensioni del touch target. Ad esempio, il touch target del pulsante si espanderà fino a una dimensione minima di 48x48dp, anche se hai impostato le dimensioni del pulsante su un valore inferiore. In questo modo Compose Material allo stesso comportamento dei componenti di Material Design, offrendo un comportamento coerente se combini le visualizzazioni e Compose. Inoltre, questa modifica garantisce che quando crei la tua UI utilizzando i componenti di Compose Material, verranno soddisfatti i requisiti minimi per l'accessibilità del touch target.
  • Supporto stabile per Navigazione
  • Assegna una serie di API precedentemente sperimentali alla versione stabile
  • Supporto per versioni più recenti di Kotlin

Versione 1.1.0-rc03

26 gennaio 2022

androidx.compose.compiler:compiler:1.1.0-rc03 viene rilasciato. 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 rilasciato. La versione 1.1.0-rc02 contiene questi commit.

Aggiornamenti delle dipendenze

  • Il compilatore Compose 1.1.0-rc02 è compatibile con Kotlin 1.6.10.

Versione 1.1.0-rc01

15 dicembre 2021

androidx.compose.compiler:compiler:1.1.0-rc01 viene rilasciato. La versione 1.1.0-rc01 contiene questi commit.

Modifiche delle dipendenze

  • Il compilatore Compose 1.1.0-rc01 è compatibile con Kotlin 1.6.0.
  • Una build 1.6.10 compatibile è disponibile tramite androidx.dev SNAPSHOT con buildId 8003490. Il seguente snippet di dipendenza configurerà gli SNAPSHOT per il compilatore di Compose:

    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 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 rilasciato. 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 rilasciato. 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 rilasciato. 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 rilasciato. 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 rilasciato. 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 rilasciato. 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 rilasciato. 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 rilasciato. La versione 1.1.0-alpha03 contiene questi commit.

Nuove funzionalità

  • Il compilatore di Compose ora supporta le versioni precedenti del runtime di Compose (1.0). Prima di questa modifica, il compilatore di Compose era compatibile solo con il runtime di Compose della stessa versione o successiva. Dopo questa modifica, il compilatore di Compose è compatibile con una versione precedente di Compose Runtime (1.0). (aosp/1796968).
  • Scrittura 1.1.0-alpha03 aggiornata in modo che dipendesse da Kotlin 1.5.30. (I74545)

Versione 1.1.0-alpha02

18 agosto 2021

androidx.compose.compiler:compiler:1.1.0-alpha02 viene rilasciato. 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 rilasciato. 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 rilasciato. La versione 1.0.5 contiene questi commit.

Correzioni di bug

  • Risolto il problema di monitoraggio degli arresti anomali delle istanze derivateStateOf. (aosp/1792247)

Versione 1.0.4

13 ottobre 2021

androidx.compose.compiler:compiler:1.0.4 viene rilasciato. La versione 1.0.4 contiene questi commit.

Aggiornamenti delle dipendenze

  • Aggiornato in modo da dipendere da Kotlin 1.5.31

Versione 1.0.3

29 settembre 2021

androidx.compose.compiler:compiler:1.0.3 viene rilasciato. La versione 1.0.3 contiene questi commit.

Aggiornamenti delle dipendenze

  • Aggiornato in modo da dipendere da Kotlin 1.5.30

Versione 1.0.2

1° settembre 2021

androidx.compose.compiler:compiler:1.0.2 viene rilasciato. 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 rilasciato. La versione 1.0.1 contiene questi commit.

Aggiornamenti delle dipendenze

  • Aggiornato in modo che dipende da Kotlin 1.5.21.

Versione 1.0.0

28 luglio 2021

androidx.compose.compiler:compiler:1.0.0 viene rilasciato. La versione 1.0.0 contiene questi commit.

Funzionalità principali della versione 1.0.0

Questa è la prima release stabile di Compose. Consulta il blog ufficiale di Compose Release per ulteriori dettagli.

Versione 1.0.0-rc02

14 luglio 2021

androidx.compose.compiler:compiler:1.0.0-rc02 viene rilasciato. 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 rilasciato. 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 rilasciato. 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 rilasciato. 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 rilasciato. 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 rilasciato. 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 rilasciato. 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 rilasciato. 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 rilasciato. 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 rilasciato. 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 rilasciato. 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 rilasciato. 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 rilasciato. 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 rilasciato. 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 rilasciato. 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 rilasciato. 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 rilasciato. La versione 1.0.0-alpha07 contiene questi commit.

Nuove funzionalità

  • Inferenza e propagazione della stabilità. Il plug-in Compose Compiler analizza i tipi che compila per dedurre se è idoneo o meno per determinate ottimizzazioni da parte del 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 trasmesso insieme ai 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 binarie 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 rilasciato. 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 rilasciato. 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 rilasciato. La versione 1.0.0-alpha04 contiene questi commit.

androidx.compose:compose-compiler è stato sottoposto al refactoring di androidx.compose.compiler:compiler. Questa è la prima release nel nuovo gruppo.