Compose Compiler

Mentransformasi fungsi @Composable dan mengaktifkan pengoptimalan dengan plugin compiler Kotlin.
Update Terbaru Rilis Stabil Kandidat Rilis Rilis Beta Rilis Alfa
7 Agustus 2024 1.5.15 - - -

Struktur

Compose adalah kombinasi 7 ID Grup Maven dalam androidx. Setiap Grup berisi subkumpulan fungsi yang ditargetkan, masing-masing dengan kumpulan catatan rilisnya sendiri.

Tabel ini menjelaskan grup tersebut dan disertai link ke setiap kumpulan catatan rilis.

GrupDeskripsi
compose.animationMem-build animasi di aplikasi Jetpack Compose untuk memperkaya pengalaman pengguna.
compose.compilerMentransformasi fungsi @Composable dan mengaktifkan pengoptimalan dengan plugin compiler Kotlin.
compose.foundationMenulis aplikasi Jetpack Compose dengan elemen penyusun siap pakai dan memperluas dasar untuk mem-build bagian sistem desain Anda sendiri.
compose.materialMem-build UI Jetpack Compose dengan Komponen Desain Material siap pakai. Ini adalah titik entri pada tingkat yang lebih tinggi untuk Compose, yang dirancang untuk menyediakan komponen yang cocok dengan yang dijelaskan di www.material.io.
compose.material3Mem-build UI Jetpack Compose dengan Komponen Desain Material 3, evolusi berikutnya dari Desain Material. Material 3 menyertakan tema dan komponen yang diperbarui serta fitur personalisasi Material You, seperti warna dinamis. Material 3 juga didesain agar selaras dengan gaya visual dan UI sistem Android 12 yang baru.
compose.runtimeElemen penyusun yang penting untuk model pemrograman dan pengelolaan status Compose, serta runtime inti untuk ditargetkan oleh Plugin Compose Compiler.
compose.uiKomponen dasar compose UI yang diperlukan untuk berinteraksi dengan perangkat, termasuk tata letak, gambar, dan input.

Mendeklarasikan dependensi

Untuk menambahkan dependensi pada Compose, Anda harus menambahkan repositori Maven Google ke project Anda. Baca repositori Maven Google untuk informasi selengkapnya.

Tambahkan dependensi untuk artefak yang diperlukan dalam file build.gradle bagi aplikasi atau modul Anda:

Groovy

android {
    buildFeatures {
        compose true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.5.15"
    }

    kotlinOptions {
        jvmTarget = "19"
    }
}

Kotlin

android {
    buildFeatures {
        compose = true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.5.15"
    }

    kotlinOptions {
        jvmTarget = "19"
    }
}

Untuk informasi dependensi selengkapnya, lihat Menambahkan dependensi build.

Masukan

Masukan Anda membantu meningkatkan kualitas Jetpack. Beri tahu kami jika Anda menemukan masalah baru atau mempunyai masukan untuk meningkatkan kualitas library ini. Harap periksa masalah yang sudah diketahui dalam library ini sebelum membuat laporan baru. Anda dapat memberikan suara untuk masalah yang sudah diketahui dengan mengklik tombol bintang.

Laporkan masalah baru

Lihat dokumentasi Issue Tracker untuk informasi selengkapnya.

Versi 1.5

Versi 1.5.15

7 Agustus 2024

androidx.compose.compiler:compiler:1.5.15 dan androidx.compose.compiler:compiler-hosted:1.5.15 dirilis. Versi 1.5.15 berisi commit ini.

  • Rilis compiler ini menargetkan Kotlin 1.9.25.

Versi 1.5.14

14 Mei 2024

androidx.compose.compiler:compiler:1.5.14 dan androidx.compose.compiler:compiler-hosted:1.5.14 dirilis. Versi 1.5.14 berisi commit ini.

Rilis compiler ini menargetkan Kotlin 1.9.24.

Perbaikan Bug

  • Pastikan isi inline direalisasikan saat informasi sumber nonaktif. (Idddb8)

Versi 1.5.13

1 Mei 2024

androidx.compose.compiler:compiler:1.5.13 dan androidx.compose.compiler:compiler-hosted:1.5.13 dirilis. Versi 1.5.13 berisi commit ini.

Fitur baru

  • Pelewatan yang ketat tidak lagi dianggap sebagai tahap eksperimental dan aman digunakan dalam produksi. Hal ini akan menjadi perilaku default dalam rilis mendatang. (I6c8c4)

Perbaikan Bug

  • Memperbaiki kompatibilitas biner untuk fungsi @Composable dengan parameter class nilai yang memiliki nilai default dan menggabungkan nilai non-primitif. (I89465)
  • Perbaikan upstream untuk kompilasi JS dan Native dari multiplatform Compose. Lihat rentang commit di atas untuk mengetahui detail selengkapnya.

Versi 1.5.12

17 April 2024

androidx.compose.compiler:compiler:1.5.12 dan androidx.compose.compiler:compiler-hosted:1.5.12 dirilis. Versi 1.5.12 berisi commit ini.

Perbaikan Bug

  • Memperbaiki masalah pada kompilasi inkremental dengan Kotlin 1.9.23. (Ifca55)
  • Memperbaiki jenis non-nullable dalam parameter nilai untuk class inline non-primitif. (Ie6bb5)

Versi 1.5.11

20 Maret 2024

androidx.compose.compiler:compiler:1.5.11 dan androidx.compose.compiler:compiler-hosted:1.5.11 dirilis. Versi 1.5.11 berisi commit ini.

Catatan

  • Mulai versi ini, compiler sekarang akan memanggil startReplaceGroup, bukan startReplacableGroup, saat modul dikompilasi dengan runtime yang berisi metode ini. startReplaceGroup diperkenalkan dalam runtime di Compose Runtime 1.7.0-alpha03. Panggilan ke startRestartGroup hanya dibuat saat menargetkan runtime 1.7.0-alpha03 atau versi yang lebih baru.

  • Memanggil startReplaceGroup, bukan startReplaceableGroup, memungkinkan runtime mendeteksi perubahan secara lebih efisien, tetapi dapat memengaruhi urutan perubahan yang terdeteksi oleh Composer dan dikirim ke Applier. Hal ini dapat mengakibatkan perubahan kecil pada perilaku jika Applier bergantung pada urutan operasi ini terdeteksi.

Fitur Baru

  • Dukungan untuk Kotlin 1.9.23

Perbaikan Bug

  • Memperbaiki jenis generik eksternal bertingkat yang dianggap sebagai Tidak Stabil. (I3437f, b/327643787)
  • Mendukung beberapa file konfigurasi stabilitas. (I8db14, b/325326744)
  • Compose Compiler kini mengubah fungsi yang diganti dengan benar dengan menelusuri class dasar/penggantian secara rekursif. (I2c9f9, b/316196500)
  • Pastikan bahwa memoisasi referensi fungsi tidak mencoba menangkap induk implisit deklarasi lokal saat tidak digunakan secara langsung. (Ib1267)
  • Memperbaiki pembuatan kode untuk lambda crossinline composable (sulit menemukan bug ini tanpa mengaktifkan "nonSkippingGroupOptimization"). (Icb2fd, b/325502738)

Versi 1.5.10

21 Februari 2024

androidx.compose.compiler:compiler:1.5.10 dan androidx.compose.compiler:compiler-hosted:1.5.10 dirilis. Versi 1.5.10 berisi commit ini.

Perbaikan Bug

  • Mendukung literal live di dalam blok init. (b/320397488)
  • Gunakan parameter dispatcher untuk memeriksa apakah fungsi tersebut berada di dalam class lokal (b/323123439)

Versi 1.5.9

7 Februari 2024

androidx.compose.compiler:compiler:1.5.9 dan androidx.compose.compiler:compiler-hosted:1.5.9 dirilis. Versi 1.5.9 berisi commit ini.

Perbaikan Bug

  • Memperbaiki panggilan composable di penginisialisasi objek anonim. (b/320261458, 96315c)
  • Menghitung deklarasi lokal berulang sebagai hasil. (b/318745941, e7b4b0)
  • Memperbaiki perilaku perubahan intrinsic remember terkait referensi metode Java dengan memaksa .changed untuk jenis fungsi dengan remember intrinsik. (b/319810819, 77128e)
  • Menambahkan pengoptimalan eksperimental yang akan menghapus grup di sekitar fungsi yang tidak dapat dilewati seperti yang ditandai secara eksplisit sebagai @NonSkippableComposable dan fungsi yang secara implisit tidak dapat dilewati seperti fungsi inline dan fungsi yang menampilkan nilai non-Satuan seperti remember.
  • Pengoptimalan ini dapat diaktifkan dengan meneruskan opsi plugin, -P plugin:androidx.compose.compiler.plugins.kotlin:nonSkippingGroupOptimization=true ke compiler Kotlin. (I1688f)

Versi 1.5.8

10 Januari 2024

androidx.compose.compiler:compiler:1.5.8 dan androidx.compose.compiler:compiler-hosted:1.5.8 dirilis. Versi 1.5.8 berisi commit ini.

Fitur Baru

  • Dukungan untuk Kotlin 1.9.22

Perbaikan Bug

  • Memperbaiki bug saat build Compose Compiler menampilkan pengecualian saat di-build menggunakan Java21. Pengguna yang menggunakan Compose Compiler dari Google Maven (yaitu, tidak membangunnya sendiri) tidak pernah terpengaruh oleh bug ini. (b/316644294)
  • Memperbaiki bug saat error COMPOSABLE_EXPECTED dilaporkan untuk beberapa pemanggil lambda yang tidak inline. (b/309364913)
  • Menambahkan error kompilasi untuk parameter default dalam fungsi terbuka (sebelumnya hanya dibatasi untuk fungsi abstrak). Compose tidak mendukung penggantian parameter default dari fungsi yang diganti saat ini, dan penggantian fungsi composable dengan parameter default gagal saat runtime. Gunakan @Suppress("ABSTRACT_COMPOSABLE_DEFAULT_PARAMETER_VALUE") untuk menyembunyikan, tetapi perhatikan bahwa mengganti fungsi tersebut tanpa memberikan nilai default untuk parameter akan menyebabkan error pada runtime.(b/317490247)
  • Memperbaiki bug dalam ingatan intrinsik yang mencegah nilai disebarkan dengan benar. (b/316327367)

Kontribusi Eksternal

Versi 1.5.7

19 Desember 2023

androidx.compose.compiler:compiler:1.5.7 dan androidx.compose.compiler:compiler-hosted:1.5.7 dirilis. Versi 1.5.7 berisi commit ini.

Perbaikan Bug

  • Memperbaiki error runtime compose saat parameter kunci remember() memanggil fungsi Composable (b/315855015)
  • Memperbaiki error runtime Compose saat return@ digunakan. (b/315821171)
  • Hindari penggunaan jalur absolut di kunci memoisasi yang memungkinkan penggunaan cache build yang lebih baik. (b/313937484)

Versi 1.5.6

6 Desember 2023

androidx.compose.compiler:compiler:1.5.6 dan androidx.compose.compiler:compiler-hosted:1.5.6 dirilis. Versi 1.5.6 berisi commit ini.

Fitur Baru

  • Dukungan untuk Kotlin 1.9.21

Perbaikan Bug

  • Mengaktifkan ingatan intrinsik - transformasi compiler yang diingat inline di plugin compiler Compose dan mengganti perbandingan .equals dengan perbandingan int meta parameter untuk parameter stabil. Hal ini menghasilkan lebih sedikit slot yang digunakan dan lebih sedikit perbandingan yang dilakukan pada runtime. Opsi ini dapat dinonaktifkan dengan memberikan argumen plugin compiler: -P plugin:androidx.compose.compiler.plugins.kotlin:intrinsicRemember=false. (If675f)
  • Memperbaiki memoisasi referensi fungsi yang diadaptasi dan argumen inline. (b/312738720)
  • Menyadari grup saat keluar dari panggilan fungsi inline (b/312242547)

Kontribusi Eksternal

  • Memperbaiki error runtime k/native dan k/wasm karena pernyataan return yang tidak ada dalam fungsi Composable saat merupakan pernyataan terakhir dan menampilkan konstanta null (AOSP/2835716)

Versi 1.5.5

29 November 2023

androidx.compose.compiler:compiler:1.5.5 dan androidx.compose.compiler:compiler-hosted:1.5.5 dirilis. Versi 1.5.5 berisi commit ini.

Perbaikan Bug

  • Memperbaiki error selama pencarian jenis composable yang diganti (Ib6d2c, b/297665426)
    • Menambahkan stabilityConfigurationPath ke parameter yang diketahui (bug sebelumnya mencegah penggunaan flag file konfigurasi). (b/309765121)
    • Perbaikan notasi (I081d1, I4d7bf)
    • Perbaikan rekomposisi dengan memperhitungkan Status parameter yang tidak pasti dalam remember intrinsik (b/263402091)
    • Memperbaiki informasi baris proses debug untuk remember intrinsik (Ic8cf5)
    • Memperbaiki error (pengurangan IR gagal) selama pencarian jenis composable yang diganti pada waktu kompilasi (b/297665426)

Kontribusi Eksternal

Versi 1.5.4

7 November 2023

androidx.compose.compiler:compiler:1.5.4 dan androidx.compose.compiler:compiler-hosted:1.5.4 dirilis. Versi 1.5.4 berisi commit ini.

Update Dependensi

  • Compose Compiler kini kompatibel dengan Kotlin 1.9.20

Fitur Baru

  • Menambahkan opsi eksperimental untuk mengaktifkan mode melewati yang ketat. Mode pelewatan yang kuat memungkinkan composable dengan parameter yang tidak stabil untuk dilewati. Selain itu, lambda dengan screenshot yang tidak stabil akan dicatat. Fitur ini bersifat eksperimental dan tidak dianggap siap untuk penggunaan produksi. (22421e)
  • Tambahkan tanda untuk mengaktifkan/menonaktifkan informasi sumber/rekaman aktivitas. (4d45f09)
  • Mengizinkan konfigurasi stabilitas class eksternal melalui file konfigurasi. (If40eb)

Perbaikan Bug

  • Memperbaiki tindakan keluar awal dari fungsi composable saat informasi sumber tidak dikumpulkan. (fe6267)
  • Perbaiki lanjutkan dari fungsi composable. (948362)
  • Memperbaiki resolusi saat fungsi composable dipanggil dari dalam pemanggilan fungsi yang memiliki beberapa overload yang bergantung pada jenis nilai yang ditampilkan ekspresi. (2d36d0)
  • Memperbaiki memoisasi saat referensi fungsi tidak memiliki penerima pengiriman. (fc2326)
  • Memperbaiki pemeriksaan kotor yang mencegah rekomposisi lambda dalam beberapa situasi. (db3699)
  • Memperbaiki stabilitas saat mengompilasi secara bertahap di seluruh modul. (7d3e127)
  • Kurangi cakupan @DontMemoize menjadi ekspresi lambda saja. (7a7fa52)
  • Memperbaiki Variabel yang tidak diambil dengan benar saat menggunakan antarmuka menyenangkan Composable sebagai lambda. (5ae3556)

Kontribusi Eksternal

  • Menggunakan simbol persamaan struktural untuk perbandingan numerik dan null (c612a0)

Versi 1.5.3

29 Agustus 2023

androidx.compose.compiler:compiler:1.5.3, androidx.compose.compiler:compiler-daemon:1.5.3, dan androidx.compose.compiler:compiler-hosted:1.5.3 dirilis. Versi 1.5.3 berisi commit ini.

Pembaruan Dependensi

  • Versi Kotlin telah diupdate ke 1.9.10

Versi 1.5.2

23 Agustus 2023

androidx.compose.compiler:compiler:1.5.2, androidx.compose.compiler:compiler-daemon:1.5.2, dan androidx.compose.compiler:compiler-hosted:1.5.2 dirilis. Versi 1.5.2 berisi commit ini.

Perbaikan Bug

  • Menyisipkan nomor baris untuk pernyataan return dalam fungsi composable yang menampilkan konstan. (I42d89)
  • Memperbaiki kebocoran memori yang disebabkan oleh peralihan ke titik entri plugin compiler yang baru. (4f0a101)
  • Menghentikan transformasi antarmuka seru non-composable di compiler Compose. Hal ini menyebabkan antarmuka yang menyenangkan ditangani dengan cara yang sama seperti lambda, termasuk aturan memoisasi. (28b3ce9)
  • Gunakan jenis argumen vararg untuk menyimpulkan stabilitas di situs panggilan. (bc83645)

Versi 1.5.1

26 Juli 2023

androidx.compose.compiler:compiler:1.5.1, androidx.compose.compiler:compiler-daemon:1.5.1, dan androidx.compose.compiler:compiler-hosted:1.5.1 dirilis. Versi 1.5.1 berisi commit ini.

Perbaikan Bug

  • Memperbaiki penanda peristiwa rekaman aktivitas komposisi dalam fungsi @ReadOnlyComposable dengan hasil awal yang menyebabkan kerusakan rekaman aktivitas.

Versi 1.5.0

18 Juli 2023

androidx.compose.compiler:compiler:1.5.0, androidx.compose.compiler:compiler-daemon:1.5.0, dan androidx.compose.compiler:compiler-hosted:1.5.0 dirilis. Versi 1.5.0 berisi commit ini.

Dukungan eksperimental untuk K2

  • Compiler Compose 1.5.0 menyediakan dukungan eksperimental untuk compiler K2. Beberapa fitur Compose belum didukung dengan K2 dan akan tersedia pada versi compiler mendatang.

Perubahan penting sejak versi 1.4.0

  • Versi Kotlin telah diupdate ke 1.9.0.
  • Argumen bernama untuk panggilan lambda @Composable sudah tidak digunakan lagi. Fitur ini mengandalkan API compiler internal dan tidak akan didukung oleh K2.
  • Menambahkan diagnostik untuk memverifikasi anotasi @Composable pada panggilan yang diharapkan/aktual. Kedua deklarasi diharapkan memiliki anotasi yang cocok.

Versi 1.4.8

Versi 1.4.8

28 Juni 2023

androidx.compose.compiler:compiler:1.4.8, androidx.compose.compiler:compiler-daemon:1.4.8, dan androidx.compose.compiler:compiler-hosted:1.4.8 dirilis. Versi 1.4.8 berisi commit ini.

Fitur Baru

  • Versi compiler Kotlin target ditempatkan ke 1.8.22.

Perbaikan Bug

  • Pesan error yang ditingkatkan untuk penggantian @Composable. Kini ia menunjukkan ketidakcocokan anotasi dengan benar.
  • Peringatkan tentang anotasi @Composable redundan pada lambda inline yang seharusnya tidak ditandai sebagai composable. Fitur ini tidak akan didukung dengan compiler K2.

Versi 1.4.7

Versi 1.4.7

3 Mei 2023

androidx.compose.compiler:compiler:1.4.7, androidx.compose.compiler:compiler-daemon:1.4.7, dan androidx.compose.compiler:compiler-hosted:1.4.7 dirilis. Versi 1.4.7 berisi commit ini.

Fitur Baru

  • Dukungan untuk Kotlin 1.8.21
  • Menambahkan versi primitif dari State API, yang memungkinkan nilai Int, Long, Float, dan Double dilacak dalam objek State tanpa menimbulkan penalti untuk autobox.

Versi 1.4.6

Versi 1.4.6

19 April 2023

androidx.compose.compiler:compiler:1.4.6, androidx.compose.compiler:compiler-daemon:1.4.6, dan androidx.compose.compiler:compiler-hosted:1.4.6 dirilis. Versi 1.4.6 berisi commit ini.

Perbaikan Bug

  • Compose Compiler kini bergantung pada Java11 (bukan Java17 yang diperlukan oleh Compose Compiler versi 1.4.5) untuk lebih mendukung pengguna yang masih menggunakan versi Java lama.

Versi 1.4.5

Versi 1.4.5

12 April 2023

androidx.compose.compiler:compiler:1.4.5, androidx.compose.compiler:compiler-daemon:1.4.5, dan androidx.compose.compiler:compiler-hosted:1.4.5 dirilis. Versi 1.4.5 berisi commit ini.

CATATAN Build Compose Compiler ini memerlukan lingkungan build Anda untuk menggunakan Java 17+. Berdasarkan masukan pengguna, kami akan membatalkan persyaratan ini kembali ke Java 11 dan menindaklanjuti dengan rilis lain (1.4.6) untuk mendukung pengguna yang menggunakan versi Java lama dengan lebih baik.

Fitur Baru

Dukungan untuk Kotlin 1.8.20

Perbaikan Bug

  • Persyaratan propagasi penggantian operator pemanggilan composable ke class dan antarmuka yang memperluas antarmuka lambda dengan anotasi terkait.f8f2f78a1a769c2373201027f12700e772e4e97e
  • Memungkinkan penggunaan anotasi @Composable pada operator getValue dan menandai pengambil yang dihasilkan untuk delegasi sebagai composable di IR guna memastikannya diubah dengan benar nantinya. f174f6ee60ca957d5cb6d19a5bd02a88267cdf40
  • Memperbaiki error runtime compose internal (applyChanges() yang diharapkan telah dipanggil) untuk fungsi inline.b/274786923
  • Hindari merekam ProcessCancelledException karena memiliki arti khusus di IDE.b/274725600

Kontribusi Eksternal

Versi 1.4.4

Versi 1.4.4

22 Maret 2023

androidx.compose.compiler:compiler:1.4.4, androidx.compose.compiler:compiler-daemon:1.4.4, dan androidx.compose.compiler:compiler-hosted:1.4.4 dirilis. Versi 1.4.4 berisi commit ini.

Perbaikan Bug

  • Memperbaiki tampilan lambda inline Composable (72172b)
  • Izinkan composable menampilkan Nothing (Jangan buat error saat menggunakan TODO dalam fungsi composable) 3aea8d)

Versi 1.4.3

Versi 1.4.3

22 Februari 2023

androidx.compose.compiler:compiler:1.4.3 dirilis. Versi 1.4.3 berisi commit ini.

Perbaikan Bug

  • Memperbaiki panggilan composable bersyarat dalam argumen panggilan composable (Ie93edb)

Versi 1.4.2

Versi 1.4.2

8 Februari 2023

androidx.compose.compiler:compiler:1.4.2 dirilis. Versi 1.4.2 berisi commit ini.

Fitur Baru

  • Dukungan untuk Kotlin 1.8.10

Perbaikan Bug

  • Menambahkan grup dalam isi lambda yang tidak dapat dilewati untuk menghindari bug rekomposisi.

Versi 1.4.1

Versi 1.4.1

8 Februari 2023

androidx.compose.compiler:compiler:1.4.1 dirilis. Versi 1.4.1 berisi commit ini.

Perbaikan Bug

  • Menonaktifkan pengoptimalan remember intrinsik yang sebelumnya telah memperkenalkan beberapa bug pembuatan kode.
  • Menonaktifkan remember intrinsik dalam fungsi yang berisi parameter vararg.
  • Memperbaiki tindakan melewatkan yang keliru dalam composable dengan parameter default
  • Menambahkan pesan error penggantian defensif jika gagal memeriksa kompatibilitas Kotlin.
  • Menghapus pembuatan kode yang terlewat dari lambda inline

Versi 1.4.0

17 Januari 2023

androidx.compose.compiler:compiler:1.4.0 dirilis. Versi 1.4.0 berisi commit ini.

Perubahan penting sejak versi 1.3.0

  • Dukungan untuk Kotlin 1.8.0
  • Menonaktifkan remember intrinsik
  • Class data alat UI Group kini memiliki kolom, isInline, yang menunjukkan apakah grup tersebut untuk panggilan ke fungsi composable inline. Jika isInline adalah true, maka panggilan tersebut untuk fungsi composable inline. Namun, nilainya mungkin salah (false) untuk panggilan ke fungsi composable inline yang berasal dari modul yang dikompilasi dengan versi plugin compiler compose yang tidak menghasilkan informasi fungsi inline.
  • ImmutableCollection dan elemen seinduk Persisten kini dianggap stabil.
  • Parameter baru di AnimatedContent untuk label alat
  • Memperbaiki pembuatan kode yang salah untuk lambda inline

Versi 1.4.0-alpha02

11 November 2022

androidx.compose.compiler:compiler:1.4.0-alpha02 dirilis. Versi 1.4.0-alpha02 berisi commit ini.

Fitur Baru

  • Menambahkan dukungan untuk Kotlin 1.7.21

Versi 1.4.0-alpha01

9 November 2022

androidx.compose.compiler:compiler:1.4.0-alpha01 dirilis. Versi 1.4.0-alpha01 berisi commit ini.

Perbaikan Bug

  • Memperbaiki kemampuan untuk menampilkan lebih awal dari fungsi composable inline (b/255350755)
  • Memperbaiki bug dalam penurunan umpan yang merusak dukungan Kotlin/JS di Compose (6a40f8).

Versi 1.3

Versi 1.3.2

4 Oktober 2022

androidx.compose.compiler:compiler:1.3.2 dirilis. Versi 1.3.2 berisi commit ini.

Fitur Baru

  • Versi ini mencakup update ke Kotlin 1.7.20

Versi 1.3.1

7 September 2022

androidx.compose.compiler:compiler:1.3.1 dirilis. Versi 1.3.1 berisi commit ini.

Perbaikan Bug

  • Memperbaiki IllegalStateException saat Compose Compiler salah menandai jenis unit sebagai composable dalam beberapa situasi. (b/237863365)
  • Pengguna kini harus menentukan versi Kotlin pilihan mereka saat menyembunyikan pemeriksaan versi compiler (I9e5e2)

Versi 1.3.0

10 Agustus 2022

androidx.compose.compiler:compiler:1.3.0 dirilis. Versi 1.3.0 berisi commit ini.

Versi 1.3.0-rc02

3 Agustus 2022

androidx.compose.compiler:compiler:1.3.0-rc02 dirilis. Versi 1.3.0-rc02 berisi commit ini.

Versi 1.3.0-rc01

27 Juli 2022

androidx.compose.compiler:compiler:1.3.0-rc01 dirilis. Versi 1.3.0-rc01 berisi commit ini.

Versi 1.3.0-beta01

20 Juli 2022

androidx.compose.compiler:compiler:1.3.0-beta01 dirilis. Versi 1.3.0-beta01 berisi commit ini.

Fitur Baru

  • Menambahkan dukungan untuk Kotlin 1.7.10

Versi 1.2

Versi 1.2.0

29 Juni 2022

androidx.compose.compiler:compiler:1.2.0 dirilis. Versi 1.2.0 berisi commit ini.

Perubahan penting sejak 1.1.0

Versi 1.2.0-rc02

22 Juni 2022

androidx.compose.compiler:compiler:1.2.0-rc02 dirilis. Versi 1.2.0-rc02 berisi commit ini.

Perbaikan Bug

  • Menghapus pembuatan kode Peristiwa Rekaman Aktivitas composable (aosp/2127922)

Versi 1.2.0-rc01

15 Juni 2022

androidx.compose.compiler:compiler:1.2.0-rc01 dirilis. Versi 1.2.0-rc01 berisi commit ini.

Versi 1.2.0-beta03

1 Juni 2022

androidx.compose.compiler:compiler:1.2.0-beta03 dirilis. Versi 1.2.0-beta03 berisi commit ini.

Versi 1.2.0-beta02

18 Mei 2022

androidx.compose.compiler:compiler:1.2.0-beta02 dirilis. Versi 1.2.0-beta02 berisi commit ini.

Versi 1.2.0-beta01

11 Mei 2022

androidx.compose.compiler:compiler:1.2.0-beta01 dirilis. Versi 1.2.0-beta01 berisi commit ini.

  • Ini adalah rilis beta pertama 1.2. Tidak ada perubahan sejak versi alfa terakhir.

Fitur Baru

  • Menambahkan dukungan untuk Kotlin 1.6.21

Versi 1.2.0-alpha08

20 April 2022

androidx.compose.compiler:compiler:1.2.0-alpha08 dirilis. Versi 1.2.0-alpha08 berisi commit ini.

Versi 1.2.0-alpha07

6 April 2022

androidx.compose.compiler:compiler:1.2.0-alpha07 dirilis. Versi 1.2.0-alpha07 berisi commit ini.

Versi 1.2.0-alpha06

23 Maret 2022

androidx.compose.compiler:compiler:1.2.0-alpha06 dirilis. Versi 1.2.0-alpha06 berisi commit ini.

Versi 1.2.0-alpha05

9 Maret 2022

androidx.compose.compiler:compiler:1.2.0-alpha05 dirilis. Versi 1.2.0-alpha05 berisi commit ini.

Versi 1.2.0-alpha04

23 Februari 2022

androidx.compose.compiler:compiler:1.2.0-alpha04 dirilis. Versi 1.2.0-alpha04 berisi commit ini.

Versi 1.2.0-alpha03

9 Februari 2022

androidx.compose.compiler:compiler:1.2.0-alpha03 dirilis. Versi 1.2.0-alpha03 berisi commit ini.

Versi 1.2.0-alpha02

26 Januari 2022

androidx.compose.compiler:compiler:1.2.0-alpha02 dirilis. Versi 1.2.0-alpha02 berisi commit ini.

Versi 1.2.0-alpha01

12 Januari 2022

androidx.compose.compiler:compiler:1.2.0-alpha01 dirilis. Versi 1.2.0-alpha01 berisi commit ini.

Fitur Baru

  • Menambahkan dukungan untuk Kotlin 1.6.10.

Versi 1.1

Versi 1.1.1

23 Februari 2022

androidx.compose.compiler:compiler:1.1.1 dirilis. Versi 1.1.1 berisi commit ini.

Perbaikan Bug

Versi 1.1.0

9 Februari 2022

androidx.compose.compiler:compiler:1.1.0 dirilis. Versi 1.1.0 berisi commit ini.

Perubahan penting sejak versi 1.0.0

  • Dukungan yang stabil untuk Efek overscroll Android 12
  • Peningkatan penentuan ukuran target sentuh
  • Perhatikan bahwa, sehubungan dengan Compose 1.0, komponen Material akan memperluas ruang tata letaknya untuk memenuhi panduan aksesibilitas Material terkait ukuran target sentuh. Misalnya, target sentuh Button akan diperluas hingga ukuran minimum 48x48dp, meskipun Anda menyetel ukuran Button menjadi lebih kecil. Tindakan ini akan menyelaraskan Compose Material ke perilaku Komponen Desain Material yang sama, sehingga memberikan perilaku yang konsisten jika Anda menggabungkan Views dan Compose. Perubahan ini juga memastikan bahwa saat Anda membuat UI menggunakan komponen Compose Material, persyaratan minimum untuk aksesibilitas target sentuh akan terpenuhi.
  • Dukungan yang stabil untuk Navigation Rail
  • Menstabilkan sejumlah API yang sebelumnya masih eksperimental
  • Dukungan untuk versi Kotlin yang lebih baru

Versi 1.1.0-rc03

26 Januari 2022

androidx.compose.compiler:compiler:1.1.0-rc03 dirilis. Versi 1.1.0-rc03 berisi commit ini.

Perbaikan Bug

  • Diupdate agar mendukung Compose Material 1.1.0-rc03

Versi 1.1.0-rc02

16 Desember 2021

androidx.compose.compiler:compiler:1.1.0-rc02 dirilis. Versi 1.1.0-rc02 berisi commit berikut ini.

Update dependensi

  • Compose Compiler 1.1.0-rc02 kompatibel dengan Kotlin 1.6.10.

Versi 1.1.0-rc01

15 Desember 2021

androidx.compose.compiler:compiler:1.1.0-rc01 dirilis. Versi 1.1.0-rc01 berisi commit ini.

Perubahan dependensi

  • Compose Compiler 1.1.0-rc01 kompatibel dengan Kotlin 1.6.0.
  • Build 1.6.10 yang kompatibel tersedia melalui SNAPSHOT androidx.dev dengan buildId 8003490. Cuplikan dependensi berikut akan mengonfigurasi SNAPSHOT untuk Compose Compiler:

    Tambahkan cuplikan berikut ke file build.gradle root untuk project Anda:

    buildscript {
        repositories {
            google()
            jcenter()
            maven { url 'https://androidx.dev/snapshots/builds/8003490/artifacts/repository' }
        }
    }
    

    Tambahkan cuplikan berikut ke file build.gradle untuk aplikasi atau modul yang menggunakan Compose:

    android {
        composeOptions {
            kotlinCompilerExtensionVersion = "1.2.0-SNAPSHOT"
        }
    }
    

Versi 1.1.0-beta04

1 Desember 2021

androidx.compose.compiler:compiler:1.1.0-beta04 dirilis. Versi 1.1.0-beta04 berisi commit ini.

Fitur Baru

  • Diupdate agar kompatibel dengan Kotlin 1.6.0

Versi 1.1.0-beta03

17 November 2021

androidx.compose.compiler:compiler:1.1.0-beta03 dirilis. Versi 1.1.0-beta03 berisi commit ini.

Versi 1.1.0-beta02

3 November 2021

androidx.compose.compiler:compiler:1.1.0-beta02 dirilis. Versi 1.1.0-beta02 berisi commit ini.

Versi 1.1.0-beta01

27 Oktober 2021

androidx.compose.compiler:compiler:1.1.0-beta01 dirilis. Versi 1.1.0-beta01 berisi commit ini.

Versi 1.1.0-alpha06

13 Oktober 2021

androidx.compose.compiler:compiler:1.1.0-alpha06 dirilis. Versi 1.1.0-alpha06 berisi commit ini.

Versi 1.1.0-alpha05

29 September 2021

androidx.compose.compiler:compiler:1.1.0-alpha05 dirilis. Versi 1.1.0-alpha05 berisi commit ini.

Versi 1.1.0-alpha04

15 September 2021

androidx.compose.compiler:compiler:1.1.0-alpha04 dirilis. Versi 1.1.0-alpha04 berisi commit ini.

Versi 1.1.0-alpha03

1 September 2021

androidx.compose.compiler:compiler:1.1.0-alpha03 dirilis. Versi 1.1.0-alpha03 berisi commit ini.

Fitur Baru

  • Compose Compiler kini mendukung versi Compose Runtime yang lebih lama (1.0). Sebelum perubahan ini, Compose Compiler hanya kompatibel dengan Compose Runtime versi yang sama atau yang lebih baru. Setelah perubahan ini, Compose Compiler kompatibel dengan versi Compose Runtime yang lebih lama (1.0). (aosp/1796968)
  • Mengupdate Compose 1.1.0-alpha03 agar bergantung pada Kotlin 1.5.30. (I74545)

Versi 1.1.0-alpha02

18 Agustus 2021

androidx.compose.compiler:compiler:1.1.0-alpha02 dirilis. Versi 1.1.0-alpha02 berisi commit ini.

Versi 1.1.0-alpha01

4 Agustus 2021

androidx.compose.compiler:compiler:1.1.0-alpha01 dirilis. Versi 1.1.0-alpha01 berisi commit ini.

Versi 1.0

Versi 1.0.5

3 November 2021

androidx.compose.compiler:compiler:1.0.5 dirilis. Versi 1.0.5 berisi commit ini.

Perbaikan Bug

  • Memperbaiki instance derivedStateOf pelacakan error. (aosp/1792247)

Versi 1.0.4

13 Oktober 2021

androidx.compose.compiler:compiler:1.0.4 dirilis. Versi 1.0.4 berisi commit ini.

Update Dependensi

  • Diupdate agar bergantung pada Kotlin 1.5.31

Versi 1.0.3

29 September 2021

androidx.compose.compiler:compiler:1.0.3 dirilis. Versi 1.0.3 berisi commit ini.

Update Dependensi

  • Diupdate agar bergantung pada Kotlin 1.5.30

Versi 1.0.2

1 September 2021

androidx.compose.compiler:compiler:1.0.2 dirilis. Versi 1.0.2 berisi commit ini.

Diupdate untuk mendukung rilis Compose 1.0.2. Compose 1.0.2 masih kompatibel dengan Kotlin 1.5.21.

Versi 1.0.1

4 Agustus 2021

androidx.compose.compiler:compiler:1.0.1 dirilis. Versi 1.0.1 berisi commit ini.

Update Dependensi

  • Diupdate agar bergantung pada Kotlin 1.5.21.

Versi 1.0.0

28 Juli 2021

androidx.compose.compiler:compiler:1.0.0 dirilis. Versi 1.0.0 berisi commit ini.

Fitur utama 1.0.0

Ini adalah rilis stabil pertama Compose. Lihat blog Rilis Compose resmi untuk mengetahui detail selengkapnya.

Versi 1.0.0-rc02

14 Juli 2021

androidx.compose.compiler:compiler:1.0.0-rc02 dirilis. Versi 1.0.0-rc02 berisi commit ini.

Versi 1.0.0-rc01

1 Juli 2021

androidx.compose.compiler:compiler:1.0.0-rc01 dirilis. Versi 1.0.0-rc01 berisi commit ini.

Versi 1.0.0-beta09

16 Juni 2021

androidx.compose.compiler:compiler:1.0.0-beta09 dirilis. Versi 1.0.0-beta09 berisi commit ini.

Versi 1.0.0-beta08

2 Juni 2021

androidx.compose.compiler:compiler:1.0.0-beta08 dirilis. Versi 1.0.0-beta08 berisi commit ini.

Versi 1.0.0-beta07

18 Mei 2021

androidx.compose.compiler:compiler:1.0.0-beta07 dirilis. Versi 1.0.0-beta07 berisi commit ini.

Versi 1.0.0-beta06

5 Mei 2021

androidx.compose.compiler:compiler:1.0.0-beta06 dirilis. Versi 1.0.0-beta06 berisi commit ini.

Versi 1.0.0-beta05

21 April 2021

androidx.compose.compiler:compiler:1.0.0-beta05 dirilis. Versi 1.0.0-beta05 berisi commit ini.

Versi 1.0.0-beta04

7 April 2021

androidx.compose.compiler:compiler:1.0.0-beta04 dirilis. Versi 1.0.0-beta04 berisi commit ini.

Versi 1.0.0-beta03

24 Maret 2021

androidx.compose.compiler:compiler:1.0.0-beta03 dirilis. Versi 1.0.0-beta03 berisi commit ini.

Versi 1.0.0-beta02

10 Maret 2021

androidx.compose.compiler:compiler:1.0.0-beta02 dirilis. Versi 1.0.0-beta02 berisi commit ini.

Versi 1.0.0-beta01

24 Februari 2021

androidx.compose.compiler:compiler:1.0.0-beta01 dirilis. Versi 1.0.0-beta01 berisi commit ini.

Ini adalah rilis pertama Compose 1.0.0 Beta.

Versi 1.0.0-alpha12

10 Februari 2021

androidx.compose.compiler:compiler:1.0.0-alpha12 dirilis. Versi 1.0.0-alpha12 berisi commit ini.

Versi 1.0.0-alpha11

28 Januari 2021

androidx.compose.compiler:compiler:1.0.0-alpha11 dirilis. Versi 1.0.0-alpha11 berisi commit ini.

Versi 1.0.0-alpha10

13 Januari 2021

androidx.compose.compiler:compiler:1.0.0-alpha10 dirilis. Versi 1.0.0-alpha10 berisi commit ini.

Versi 1.0.0-alpha09

16 Desember 2020

androidx.compose.compiler:compiler:1.0.0-alpha09 dirilis. Versi 1.0.0-alpha09 berisi commit ini.

Versi 1.0.0-alpha08

2 Desember 2020

androidx.compose.compiler:compiler:1.0.0-alpha08 dirilis. Versi 1.0.0-alpha08 berisi commit ini.

Versi 1.0.0-alpha07

11 November 2020

androidx.compose.compiler:compiler:1.0.0-alpha07 dirilis. Versi 1.0.0-alpha07 berisi commit ini.

Fitur Baru

  • Inferensi & Propagasi Stabilitas. Plugin Compose Compiler akan menganalisis jenis yang dikompilasi untuk menyimpulkan apakah memenuhi syarat untuk pengoptimalan tertentu pada runtime. Inferensi hasil ini kemudian disintesis sebagai metadata ke dalam class untuk digunakan oleh compiler dalam modul lain. Selain itu, hasil runtime dari inferensi ini diteruskan dalam metadata yang diteruskan ke panggilan composable selama komposisi. Hal ini memerlukan protokol metadata yang berbeda untuk fungsi composable, yang berarti bahwa fungsi composable yang dikompilasi dengan compiler alpha07 tidak akan kompatibel secara biner dengan fungsi composable yang dikompilasi dengan versi compiler sebelumnya. (aosp/1431988)

Versi 1.0.0-alpha06

28 Oktober 2020

androidx.compose.compiler:compiler:1.0.0-alpha06 dirilis. Versi 1.0.0-alpha06 berisi commit ini.

Versi 1.0.0-alpha05

14 Oktober 2020

androidx.compose.compiler:compiler:1.0.0-alpha05 dirilis. Versi 1.0.0-alpha05 berisi commit ini.

Versi 1.0.0-alpha04

1 Oktober 2020

androidx.compose.compiler:compiler:1.0.0-alpha04 dirilis. Versi 1.0.0-alpha04 berisi commit ini.

androidx.compose:compose-compiler telah difaktorkan ulang ke androidx.compose.compiler:compiler. Rilis ini merupakan rilis pertama di grup baru.