Compose Compiler
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.
Grup | Deskripsi |
---|---|
compose.animation | Mem-build animasi di aplikasi Jetpack Compose untuk memperkaya pengalaman pengguna. |
compose.compiler | Mentransformasi fungsi @Composable dan mengaktifkan pengoptimalan dengan plugin compiler Kotlin. |
compose.foundation | Menulis aplikasi Jetpack Compose dengan elemen penyusun siap pakai dan memperluas dasar untuk mem-build bagian sistem desain Anda sendiri. |
compose.material | Mem-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.material3 | Mem-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.runtime | Elemen penyusun yang penting untuk model pemrograman dan pengelolaan status Compose, serta runtime inti untuk ditargetkan oleh Plugin Compose Compiler. |
compose.ui | Komponen 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.
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
, bukanstartReplacableGroup
, saat modul dikompilasi dengan runtime yang berisi metode ini.startReplaceGroup
diperkenalkan dalam runtime di Compose Runtime1.7.0-alpha03
. Panggilan kestartRestartGroup
hanya dibuat saat menargetkan runtime 1.7.0-alpha03 atau versi yang lebih baru.Memanggil
startReplaceGroup
, bukanstartReplaceableGroup
, memungkinkan runtime mendeteksi perubahan secara lebih efisien, tetapi dapat memengaruhi urutan perubahan yang terdeteksi olehComposer
dan dikirim keApplier
. Hal ini dapat mengakibatkan perubahan kecil pada perilaku jikaApplier
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 sepertiremember
. - 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
- Perbaiki kesalahan ketik dokumentasi. (AOSP/288106)
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: -Pplugin: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 jika itu 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)
- Menambahkan
Kontribusi Eksternal
- Menghafal referensi fungsi stabil dengan argumen (I4d7bf, b/302680514)
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 objekState
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 operatorgetValue
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
- Meningkatkan dukungan untuk fungsi Composable di Kotlin/Native.f52b6aeed22400dd4f4a4f05559a9aa42642402c
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. JikaisInline
adalahtrue
, 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
- Dukungan untuk Kotlin 1.7.0
- Lihat postingan blog kami yang menjelaskan strategi Pembuatan Versi Compose Compiler baru di Compose.
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
- Memperbaiki
NullPointerException
diandroidx.compose.ui.platform.RenderNodeLayer.updateDisplayList
(aosp/1947059, b/206677462) - Memperbaiki error yang disebabkan oleh konten papan klip saat membaca dari papan klip di Android. (I06020, b/197769306)
- Memperbaiki RTL di
LazyVerticalGrid
(aosp/1931080, b/207510535)
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 Kotlin1.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 Kotlin1.6.0
. Build
1.6.10
yang kompatibel tersedia melalui SNAPSHOT androidx.dev denganbuildId
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 Kotlin1.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.