คอมไพเลอร์ของ Compose

เปลี่ยนรูปแบบฟังก์ชัน @Composable และเปิดใช้การเพิ่มประสิทธิภาพด้วยปลั๊กอินคอมไพเลอร์ Kotlin
อัปเดตล่าสุด รุ่นที่เสถียร รุ่นที่อาจได้รับการเผยแพร่ รุ่นเบต้า เวอร์ชันอัลฟ่า
7 สิงหาคม 2024 1.5.15 - - -

โครงสร้าง

คอมโพซเป็นชุดค่าผสมของรหัสกลุ่ม Maven 7 รายการภายใน androidx กลุ่มแต่ละกลุ่มประกอบด้วยชุดฟังก์ชันการทำงานย่อยที่กำหนดเป้าหมายไว้ โดยแต่ละกลุ่มจะมีชุดหมายเหตุการเผยแพร่ของตัวเอง

ตารางนี้อธิบายกลุ่มและลิงก์ไปยังชุดบันทึกประจำรุ่นแต่ละชุด

กลุ่มคำอธิบาย
compose.animationสร้างภาพเคลื่อนไหวในแอปพลิเคชัน Jetpack Compose เพื่อมอบประสบการณ์การใช้งานที่ดีขึ้นให้แก่ผู้ใช้
compose.compilerเปลี่ยนรูปแบบฟังก์ชัน @Composable และเปิดใช้การเพิ่มประสิทธิภาพด้วยปลั๊กอินคอมไพเลอร์ Kotlin
compose.foundationเขียนแอปพลิเคชัน Jetpack Compose ด้วยองค์ประกอบพื้นฐานที่พร้อมใช้งานและขยายฐานรากเพื่อสร้างชิ้นส่วนระบบออกแบบของคุณเอง
compose.materialสร้าง UI ของ Jetpack Compose ด้วยคอมโพเนนต์ Material Design ที่พร้อมใช้งาน นี่เป็นจุดแรกเข้าระดับที่สูงขึ้นของ Compose ซึ่งออกแบบมาเพื่อจัดหาคอมโพเนนต์ที่ตรงกับที่อธิบายไว้ใน www.material.io
compose.material3สร้าง UI ของ Jetpack Compose ด้วยคอมโพเนนต์ Material Design 3 ซึ่งเป็นวิวัฒนาการขั้นถัดไปของ Material Design Material 3 ประกอบด้วยธีมและคอมโพเนนต์ที่อัปเดต รวมถึงฟีเจอร์การปรับแต่งในแบบของคุณของ Material You เช่น สีแบบไดนามิก และออกแบบมาให้สอดคล้องไปกับสไตล์ภาพและ UI ของระบบ Android 12 ใหม่
compose.runtimeองค์ประกอบพื้นฐานของรูปแบบการเขียนโปรแกรมและการจัดการสถานะของ Compose รวมถึงรันไทม์หลักสำหรับกำหนดเป้าหมายปลั๊กอินคอมไพเลอร์ Compose
compose.uiองค์ประกอบพื้นฐานของ UI การเขียนที่จำเป็นต่อการโต้ตอบกับอุปกรณ์ ซึ่งรวมถึงเลย์เอาต์ ภาพวาด และอินพุต

การประกาศทรัพยากร Dependency

หากต้องการเพิ่มทรัพยากร Dependency ใน Compose คุณต้องเพิ่มที่เก็บ Maven ของ Google ลงในโปรเจ็กต์ อ่านข้อมูลเพิ่มเติมในที่เก็บ Maven ของ Google

เพิ่มการอ้างอิงสำหรับอาร์ติแฟกต์ที่ต้องการในไฟล์ build.gradle สำหรับแอปหรือโมดูล

ดึงดูด

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

ดูข้อมูลเพิ่มเติมเกี่ยวกับการพึ่งพาได้ที่เพิ่มการพึ่งพิงบิวด์

ความคิดเห็น

ความคิดเห็นของคุณช่วยปรับปรุง Jetpack ได้ โปรดแจ้งให้เราทราบหากพบปัญหาใหม่หรือมีแนวคิดในการปรับปรุงคลังนี้ โปรดดูปัญหาที่มีอยู่ในคลังนี้ก่อนสร้างปัญหาใหม่ คุณสามารถเพิ่มการโหวตให้กับปัญหาที่มีอยู่ได้โดยคลิกปุ่มดาว

สร้างปัญหาใหม่

ดูข้อมูลเพิ่มเติมในเอกสารประกอบของเครื่องมือติดตามปัญหา

รุ่น 1.5

เวอร์ชัน 1.5.15

7 สิงหาคม 2024

androidx.compose.compiler:compiler:1.5.15 และ androidx.compose.compiler:compiler-hosted:1.5.15 เผยแพร่แล้ว เวอร์ชัน 1.5.15 มีการคอมมิตเหล่านี้

  • คอมไพเลอร์รุ่นนี้มีเป้าหมายเป็น Kotlin 1.9.25

เวอร์ชัน 1.5.14

14 พฤษภาคม 2024

androidx.compose.compiler:compiler:1.5.14 และ androidx.compose.compiler:compiler-hosted:1.5.14 เผยแพร่แล้ว เวอร์ชัน 1.5.14 มีการคอมมิตเหล่านี้

คอมไพเลอร์รุ่นนี้กำหนดเป้าหมายเป็น Kotlin 1.9.24

การแก้ไขข้อบกพร่อง

  • ตรวจสอบว่ามีการสร้างขึ้นเมื่อข้อมูลแหล่งที่มาปิดอยู่ (Idddb8)

เวอร์ชัน 1.5.13

1 พฤษภาคม 2024

androidx.compose.compiler:compiler:1.5.13 และ androidx.compose.compiler:compiler-hosted:1.5.13 เผยแพร่แล้ว เวอร์ชัน 1.5.13 มีการคอมมิตเหล่านี้

ฟีเจอร์ใหม่

  • การข้ามโฆษณาอย่างมีประสิทธิภาพไม่ถือว่าเป็นการทดสอบอีกต่อไปและปลอดภัยสำหรับการใช้งานจริง ซึ่งจะกลายเป็นลักษณะการทำงานเริ่มต้นในรุ่นถัดไป (I6c8c4)

การแก้ไขข้อบกพร่อง

  • แก้ไขความเข้ากันได้ของไบนารีสําหรับฟังก์ชัน @Composable ที่มีพารามิเตอร์คลาสค่าซึ่งมีค่าเริ่มต้นและมีการรวมค่าที่ไม่ใช่แบบพื้นฐาน (I89465
  • การแก้ไขที่ส่งไปยังเวอร์ชันที่ใช้งานจริงสำหรับการคอมไพล์ JS และเนทีฟจาก Compose แบบหลายแพลตฟอร์ม ดูรายละเอียดทั้งหมดได้ที่ช่วงการคอมมิตด้านบน

เวอร์ชัน 1.5.12

17 เมษายน 2024

androidx.compose.compiler:compiler:1.5.12 และ androidx.compose.compiler:compiler-hosted:1.5.12 เผยแพร่แล้ว เวอร์ชัน 1.5.12 มีการคอมมิตเหล่านี้

การแก้ไขข้อบกพร่อง

  • แก้ไขปัญหาการคอมไพล์แบบเพิ่มทีละน้อยด้วย Kotlin 1.9.23 (Ifca55)
  • แก้ไขประเภทที่ไม่ใช่ Null ในพารามิเตอร์ค่าสำหรับคลาสอินไลน์ที่ไม่ใช่แบบพื้นฐาน (Ie6bb5)

เวอร์ชัน 1.5.11

20 มีนาคม 2024

androidx.compose.compiler:compiler:1.5.11 และ androidx.compose.compiler:compiler-hosted:1.5.11 เผยแพร่แล้ว เวอร์ชัน 1.5.11 มีการคอมมิตเหล่านี้

หมายเหตุ

  • ตั้งแต่เวอร์ชันนี้เป็นต้นไป คอมไพเลอร์จะเรียก startReplaceGroup แทน startReplacableGroup เมื่อคอมไพล์โมดูลด้วยรันไทม์ที่มีเมธอดนี้ startReplaceGroup เปิดตัวในรันไทม์ใน รันไทม์ Compose 1.7.0-alpha03 การเรียกใช้ startRestartGroup จะสร้างขึ้นเมื่อกําหนดเป้าหมายรันไทม์เวอร์ชัน 1.7.0-alpha03 ขึ้นไปเท่านั้น

  • การเรียกใช้ startReplaceGroup แทน startReplaceableGroup จะช่วยให้รันไทม์ตรวจหาการเปลี่ยนแปลงได้อย่างมีประสิทธิภาพมากขึ้น แต่อาจส่งผลต่อลําดับที่ Composer ตรวจหาการเปลี่ยนแปลงและส่งไปยัง Applier ซึ่งอาจส่งผลให้ลักษณะการทํางานมีการเปลี่ยนแปลงเล็กน้อยหาก Applier อาศัยลําดับที่ตรวจพบการดำเนินการเหล่านี้

ฟีเจอร์ใหม่

  • รองรับ Kotlin 1.9.23

การแก้ไขข้อบกพร่อง

  • แก้ไขประเภททั่วไปภายนอกที่ฝังอยู่ซึ่งระบบอนุมานว่าไม่เสถียร (I3437f, b/327643787)
  • รองรับไฟล์การกำหนดค่าความเสถียรหลายไฟล์ (I8db14, b/325326744)
  • ตอนนี้คอมไพเลอร์ Compose จะเปลี่ยนรูปแบบฟังก์ชันที่ลบล้างอย่างถูกต้องแล้วโดยเรียกใช้คลาสพื้นฐาน/การลบล้างแบบซ้ำ (I2c9f9, b/316196500)
  • ตรวจสอบว่าการเก็บข้อมูลการอ้างอิงฟังก์ชันไม่ได้พยายามจับพ่อแม่โดยนัยของประกาศภายในเมื่อไม่ได้ใช้โดยตรง (Ib1267)
  • แก้ไขการสร้างโค้ดสําหรับ Lambda แบบข้ามบรรทัดแบบคอมโพสิเบิล (พบข้อบกพร่องนี้ได้ยากหากไม่ได้เปิดใช้ "nonSkippingGroupOptimization") (Icb2fd, b/325502738)

เวอร์ชัน 1.5.10

21 กุมภาพันธ์ 2024

androidx.compose.compiler:compiler:1.5.10 และ androidx.compose.compiler:compiler-hosted:1.5.10 เผยแพร่แล้ว เวอร์ชัน 1.5.10 มีคอมมิตเหล่านี้

การแก้ไขข้อบกพร่อง

  • รองรับนิพจน์แบบสดภายในบล็อก init (b/320397488)
  • ใช้พารามิเตอร์ตัวจัดสรรเพื่อตรวจสอบว่าฟังก์ชันอยู่ภายในคลาสภายในหรือไม่ (b/323123439)

เวอร์ชัน 1.5.9

7 กุมภาพันธ์ 2024

androidx.compose.compiler:compiler:1.5.9 และ androidx.compose.compiler:compiler-hosted:1.5.9 เผยแพร่แล้ว เวอร์ชัน 1.5.9 มีคอมมิตเหล่านี้

การแก้ไขข้อบกพร่อง

  • แก้ไขการเรียกแบบคอมโพสิเบิลในตัวเริ่มต้นออบเจ็กต์ที่ไม่ระบุชื่อ (b/320261458, 96315c)
  • นับการประกาศในเครื่องแบบซ้ำซ้อนเป็นการจับ (b/318745941, e7b4b0)
  • แก้ไขลักษณะการทํางานของการเปลี่ยนแปลงการจดจําโดยเนื้อแท้ที่เกี่ยวข้องกับการอ้างอิงเมธอด Java โดยบังคับใช้ .changed สําหรับประเภทฟังก์ชันที่มีการจดจําโดยเนื้อแท้ (b/319810819, 77128e)
  • เพิ่มการเพิ่มประสิทธิภาพเวอร์ชันทดลองที่จะนำกลุ่มรอบๆ ฟังก์ชันที่ข้ามไม่ได้ออก เช่น ฟังก์ชันที่มีการทำเครื่องหมายเป็น @NonSkippableComposable อย่างชัดเจน และฟังก์ชันที่ข้ามไม่ได้โดยนัย เช่น ฟังก์ชันในบรรทัดและฟังก์ชันที่แสดงผลค่าที่ไม่ใช่หน่วย เช่น remember
  • การเพิ่มประสิทธิภาพนี้สามารถเปิดใช้ได้โดยการส่งตัวเลือกปลั๊กอิน -P plugin:androidx.compose.compiler.plugins.kotlin:nonSkippingGroupOptimization=true ไปยังคอมไพเลอร์ Kotlin (I1688f)

เวอร์ชัน 1.5.8

10 มกราคม 2024

androidx.compose.compiler:compiler:1.5.8 และ androidx.compose.compiler:compiler-hosted:1.5.8 เผยแพร่แล้ว เวอร์ชัน 1.5.8 มีคอมมิตเหล่านี้

ฟีเจอร์ใหม่

  • รองรับ Kotlin 1.9.22

การแก้ไขข้อบกพร่อง

  • แก้ไขข้อบกพร่องที่บิลด์คอมไพเลอร์ Compose แสดงข้อยกเว้นเมื่อบิลด์โดยใช้ Java21 ผู้ใช้ที่ใช้ Compose Compiler จาก Google Maven (ไม่ได้สร้างเอง) จะไม่ได้รับผลกระทบจากข้อบกพร่องนี้ (b/316644294)
  • แก้ไขข้อบกพร่องที่ระบบรายงานข้อผิดพลาด COMPOSABLE_EXPECTED สำหรับผู้ที่เรียกใช้ Lambda ที่ไม่ได้ฝังบางส่วน (b/309364913)
  • เพิ่มข้อผิดพลาดในการคอมไพล์สำหรับพารามิเตอร์เริ่มต้นในฟังก์ชันแบบเปิด (ก่อนหน้านี้มีข้อจำกัดเฉพาะสำหรับฟังก์ชันนามธรรมเท่านั้น) ขณะนี้ Compose ไม่รองรับการแทนที่พารามิเตอร์เริ่มต้นจากฟังก์ชันที่ลบล้าง และลบล้างฟังก์ชันคอมโพสิเบิลด้วยพารามิเตอร์เริ่มต้นไม่สำเร็จเมื่อรันไทม์ ใช้ @Suppress("ABSTRACT_COMPOSABLE_DEFAULT_PARAMETER_VALUE") เพื่อระงับ แต่โปรดทราบว่าการลบล้างฟังก์ชันดังกล่าวโดยไม่ระบุค่าเริ่มต้นสำหรับพารามิเตอร์จะทำให้ระบบขัดข้องเมื่อรันไทม์ (b/317490247)
  • แก้ไขข้อบกพร่องในการจดจำแบบมีอยู่ในตัวของตัวแปร ซึ่งทำให้ค่าไม่เผยแพร่อย่างถูกต้อง (b/316327367)

การมีส่วนร่วมจากภายนอก

  • แก้ไขการพิมพ์ผิดในเอกสารประกอบ (aosp/288106)

เวอร์ชัน 1.5.7

19 ธันวาคม 2023

androidx.compose.compiler:compiler:1.5.7 และ androidx.compose.compiler:compiler-hosted:1.5.7 เผยแพร่แล้ว เวอร์ชัน 1.5.7 มีคอมมิตเหล่านี้

การแก้ไขข้อบกพร่อง

  • แก้ไขข้อขัดข้องในรันไทม์ของคอมโพซเมื่อพารามิเตอร์คีย์ remember() เรียกใช้ฟังก์ชัน Composable (b/315855015)
  • แก้ไขข้อขัดข้องเกี่ยวกับรันไทม์ของ Compose เมื่อใช้ return@ (b/315821171)
  • หลีกเลี่ยงการใช้เส้นทางแบบสัมบูรณ์ในคีย์การจํา ซึ่งช่วยให้ใช้แคชของบิวด์ได้ดียิ่งขึ้น (b/313937484)

เวอร์ชัน 1.5.6

6 ธันวาคม 2023

androidx.compose.compiler:compiler:1.5.6 และ androidx.compose.compiler:compiler-hosted:1.5.6 เผยแพร่แล้ว เวอร์ชัน 1.5.6 มีคอมมิตเหล่านี้

ฟีเจอร์ใหม่

  • รองรับ Kotlin 1.9.21

การแก้ไขข้อบกพร่อง

  • เปิดใช้การจดจําแบบมีอยู่ในตัวของคอมไพเลอร์ ซึ่งเป็นการเปลี่ยนรูปแบบคอมไพเลอร์ที่แทรกการจดจําในเพลย์อินคอมไพเลอร์ Compose และแทนที่การเปรียบเทียบ .equals ด้วยการเปรียบเทียบ int ของข้อมูลเมตาพารามิเตอร์สําหรับพารามิเตอร์ที่เสถียร ซึ่งส่งผลให้มีการใช้สล็อตน้อยลงและทำการเปรียบเทียบน้อยลงเมื่อรันไทม์ คุณสามารถปิดใช้ตัวเลือกนี้ได้โดยการระบุอาร์กิวเมนต์ของปลั๊กอินคอมไพเลอร์: -P plugin:androidx.compose.compiler.plugins.kotlin:intrinsicRemember=false (If675f)
  • แก้ไขการจําข้อมูลการอ้างอิงฟังก์ชันที่ปรับและอาร์กิวเมนต์ในบรรทัด (b/312738720)
  • แสดงกลุ่มเมื่อออกจากการเรียกฟังก์ชันในบรรทัด (b/312242547)

การมีส่วนร่วมจากภายนอก

  • แก้ไขข้อขัดข้องในรันไทม์ k/native และ k/wasm เนื่องจากไม่มีคำสั่ง return ในฟังก์ชัน Composable เมื่อเป็นคำสั่งสุดท้ายและแสดงผล const ที่เป็นค่าว่าง (aosp/2835716)

เวอร์ชัน 1.5.5

29 พฤศจิกายน 2023

androidx.compose.compiler:compiler:1.5.5 และ androidx.compose.compiler:compiler-hosted:1.5.5 เผยแพร่แล้ว เวอร์ชัน 1.5.5 มีคอมมิตเหล่านี้

การแก้ไขข้อบกพร่อง

  • แก้ไขข้อขัดข้องระหว่างการค้นหาประเภทคอมโพสิเบิลที่ลบล้าง (Ib6d2c, b/297665426)
    • เพิ่ม stabilityConfigurationPath ลงในพารามิเตอร์ที่รู้จัก (ก่อนหน้านี้ข้อบกพร่องทำให้ใช้แฟล็กไฟล์การกําหนดค่าไม่ได้) (b/309765121)
    • การแก้ไขการจํา (I081d1, I4d7bf)
    • แก้ไขการคอมโพสิชันใหม่โดยพิจารณาสถานะพารามิเตอร์ที่ไม่แน่นอนในการจดจำแบบมีเงื่อนไข (b/263402091)
    • แก้ไขข้อมูลบรรทัดการแก้ไขข้อบกพร่องสําหรับการจดจําโดยปริยาย (Ic8cf5)
    • แก้ไขข้อขัดข้อง (การลด IR ไม่สําเร็จ) ระหว่างการค้นหาประเภทคอมโพสิเบิลที่ลบล้างกัน ณ เวลาคอมไพล์ (b/297665426)

การมีส่วนร่วมจากภายนอก

  • บันทึกการอ้างอิงฟังก์ชันที่เสถียรซึ่งมีอาร์กิวเมนต์ (I4d7bf, b/302680514)

เวอร์ชัน 1.5.4

7 พฤศจิกายน 2023

androidx.compose.compiler:compiler:1.5.4 และ androidx.compose.compiler:compiler-hosted:1.5.4 เผยแพร่แล้ว เวอร์ชัน 1.5.4 มีคอมมิตเหล่านี้

การอัปเดตทรัพยากร Dependency

  • ตอนนี้คอมไพเลอร์ Compose ใช้ได้กับ Kotlin 1.9.20 แล้ว

ฟีเจอร์ใหม่

  • เพิ่มตัวเลือกการทดสอบเพื่อเปิดใช้โหมดการข้ามอย่างมีประสิทธิภาพ โหมดการข้ามที่เข้มงวดจะข้ามคอมโพสิเบิลที่มีพารามิเตอร์ที่ไม่เสถียร นอกจากนี้ ระบบจะจัดเก็บ Lambda ที่มีการเก็บที่ไม่เสถียรไว้ด้วย ฟีเจอร์นี้อยู่ในขั้นทดลองและยังไม่พร้อมใช้งานจริง (22421e)
  • เพิ่มการแจ้งเตือนเพื่อเปิด/ปิดใช้แหล่งที่มา/ข้อมูลการติดตาม (4d45f09)
  • อนุญาตให้กำหนดค่าความเสถียรของคลาสภายนอกผ่านไฟล์การกําหนดค่า (If40eb)

การแก้ไขข้อบกพร่อง

  • แก้ไขการออกก่อนเวลาอันควรจากฟังก์ชันคอมโพสิเบิลเมื่อไม่ได้รวบรวมข้อมูลแหล่งที่มา (fe6267)
  • แก้ไขการดําเนินการต่อจากฟังก์ชันคอมโพสิเบิล (948362)
  • แก้ไขการแก้ไขเมื่อมีการเรียกใช้ฟังก์ชันคอมโพสิเบิลจากภายในการเรียกใช้ฟังก์ชันที่มีการโอเวอร์โหลดหลายรายการซึ่งขึ้นอยู่กับประเภทผลลัพธ์ของนิพจน์ (2d36d0)
  • แก้ไขการจําเมื่อการอ้างอิงฟังก์ชันไม่มีตัวรับการเรียก (fc2326)
  • แก้ไขการตรวจสอบข้อมูลที่ไม่ถูกต้องซึ่งป้องกันไม่ให้คอมโพสิชันของ Lambda ทำงานอีกครั้งในบางกรณี (db3699)
  • แก้ไขความเสถียรเมื่อคอมไพล์โมดูลต่างๆ เพิ่มเติม (7d3e127)
  • ลดขอบเขตของ @DontMemoize ไว้สำหรับนิพจน์ Lambda เท่านั้น (7a7fa52)
  • แก้ไขตัวแปรที่บันทึกไม่ถูกต้องเมื่อใช้อินเทอร์เฟซการทำงานแบบคอมโพสพอสเป็น Lambda (5ae3556)

การมีส่วนร่วมจากภายนอก

  • ใช้สัญลักษณ์ความเท่าเทียมเชิงโครงสร้างสำหรับการเปรียบเทียบตัวเลขและค่า Null (c612a0)

เวอร์ชัน 1.5.3

29 สิงหาคม 2023

androidx.compose.compiler:compiler:1.5.3, androidx.compose.compiler:compiler-daemon:1.5.3 และ androidx.compose.compiler:compiler-hosted:1.5.3 เผยแพร่แล้ว เวอร์ชัน 1.5.3 มีคอมมิตเหล่านี้

อัปเดตทรัพยากร Dependency

  • อัปเดต Kotlin เป็นเวอร์ชัน 1.9.10

รุ่น 1.5.2

23 สิงหาคม 2023

androidx.compose.compiler:compiler:1.5.2, androidx.compose.compiler:compiler-daemon:1.5.2 และ androidx.compose.compiler:compiler-hosted:1.5.2 เผยแพร่แล้ว เวอร์ชัน 1.5.2 มีคอมมิตเหล่านี้

การแก้ไขข้อบกพร่อง

  • แทรกหมายเลขบรรทัดสำหรับคำสั่ง return ในฟังก์ชันคอมโพสิเบิลที่แสดงผลค่าคงที่ (I42d89)
  • แก้ไขปัญหาการรั่วไหลของหน่วยความจำที่เกิดจากการเปลี่ยนไปใช้จุดแรกเข้าของปลั๊กอินคอมไพเลอร์ใหม่ (4f0a101)
  • หยุดการเปลี่ยนรูปแบบอินเทอร์เฟซที่สนุกซึ่งคอมโพสิเบิลไม่ได้ในคอมไพเลอร์ Compose ซึ่งทำให้ระบบจัดการอินเทอร์เฟซแบบสนุกๆ ในลักษณะเดียวกับ Lambda รวมถึงกฎการช่วยจำ (28b3ce9)
  • ใช้ประเภทอาร์กิวเมนต์ vararg ในการอนุมานความเสถียรในตำแหน่งการเรียกใช้ (bc83645)

รุ่น 1.5.1

26 กรกฎาคม 2023

androidx.compose.compiler:compiler:1.5.1, androidx.compose.compiler:compiler-daemon:1.5.1 และ androidx.compose.compiler:compiler-hosted:1.5.1 เผยแพร่แล้ว เวอร์ชัน 1.5.1 มีคอมมิตเหล่านี้

การแก้ไขข้อบกพร่อง

  • แก้ไขเครื่องหมายเหตุการณ์การติดตามการคอมโพสิชันในฟังก์ชัน @ReadOnlyComposable ที่มีการแสดงผลก่อนเวลาอันควรซึ่งทําให้การติดตามเสียหาย

เวอร์ชัน 1.5.0

18 กรกฎาคม 2023

androidx.compose.compiler:compiler:1.5.0, androidx.compose.compiler:compiler-daemon:1.5.0 และ androidx.compose.compiler:compiler-hosted:1.5.0 เผยแพร่แล้ว เวอร์ชัน 1.5.0 มีคอมมิตเหล่านี้

การสนับสนุน K2 เวอร์ชันทดลอง

  • คอมไพเลอร์ Compose 1.5.0 รองรับคอมไพเลอร์ K2 แบบทดลอง K2 ยังไม่รองรับฟีเจอร์บางอย่างของ Compose และจะรองรับในคอมไพเลอร์เวอร์ชันในอนาคต

การเปลี่ยนแปลงที่สําคัญตั้งแต่เวอร์ชัน 1.4.0

  • อัปเดต Kotlin เป็นเวอร์ชัน 1.9.0
  • อาร์กิวเมนต์ที่มีชื่อสําหรับการเรียกใช้ Lambda ของ @Composable เลิกใช้งานแล้ว ฟีเจอร์นี้ใช้ API คอมไพเลอร์ภายในและ K2 จะไม่รองรับ
  • เพิ่มการวินิจฉัยเพื่อยืนยันคำอธิบายประกอบ @Composable ในการโทรที่คาดไว้/จริง การประกาศทั้ง 2 รายการควรมีคำอธิบายประกอบที่ตรงกัน

เวอร์ชัน 1.4.8

เวอร์ชัน 1.4.8

28 มิถุนายน 2023

androidx.compose.compiler:compiler:1.4.8, androidx.compose.compiler:compiler-daemon:1.4.8 และ androidx.compose.compiler:compiler-hosted:1.4.8 เผยแพร่แล้ว เวอร์ชัน 1.4.8 มีคอมมิตเหล่านี้

ฟีเจอร์ใหม่

  • เวอร์ชันคอมไพเลอร์ Kotlin เป้าหมายจะอัปเกรดเป็น 1.8.22

การแก้ไขข้อบกพร่อง

  • ปรับปรุงข้อความแสดงข้อผิดพลาดสำหรับการลบล้าง @Composable ตอนนี้ระบบจะชี้ให้เห็นการกำกับเนื้อหาที่ไม่ตรงกันได้อย่างถูกต้อง
  • เตือนเกี่ยวกับคำอธิบายประกอบ @Composable ซ้ำใน Lambda แบบอินไลน์ที่ไม่ควรทําเครื่องหมายว่าคอมโพสิเบิล คอมไพเลอร์ K2 ไม่รองรับฟีเจอร์นี้

เวอร์ชัน 1.4.7

เวอร์ชัน 1.4.7

3 พฤษภาคม 2023

androidx.compose.compiler:compiler:1.4.7, androidx.compose.compiler:compiler-daemon:1.4.7 และ androidx.compose.compiler:compiler-hosted:1.4.7 เผยแพร่แล้ว เวอร์ชัน 1.4.7 มีคอมมิตเหล่านี้

ฟีเจอร์ใหม่

  • รองรับ Kotlin 1.8.21
  • เพิ่ม State API เวอร์ชันพื้นฐาน ซึ่งช่วยให้ติดตามค่า Int, Long, Float และ Double ในออบเจ็กต์ State ได้โดยไม่เสียค่าปรับสำหรับการแปลงค่าอัตโนมัติ

เวอร์ชัน 1.4.6

เวอร์ชัน 1.4.6

19 เมษายน 2023

androidx.compose.compiler:compiler:1.4.6, androidx.compose.compiler:compiler-daemon:1.4.6 และ androidx.compose.compiler:compiler-hosted:1.4.6 เผยแพร่แล้ว เวอร์ชัน 1.4.6 มีคอมมิตเหล่านี้

การแก้ไขข้อบกพร่อง

  • ตอนนี้ Compose Compiler ต้องใช้ Java11 (แทน Java17 ที่ Compose Compiler เวอร์ชัน 1.4.5 ต้องใช้) เพื่อรองรับผู้ใช้ที่ยังใช้ Java เวอร์ชันเก่าได้ดีขึ้น

เวอร์ชัน 1.4.5

เวอร์ชัน 1.4.5

12 เมษายน 2023

androidx.compose.compiler:compiler:1.4.5, androidx.compose.compiler:compiler-daemon:1.4.5 และ androidx.compose.compiler:compiler-hosted:1.4.5 เผยแพร่แล้ว เวอร์ชัน 1.4.5 มีคอมมิตเหล่านี้

หมายเหตุ คอมไพเลอร์ Compose รุ่นนี้กำหนดให้สภาพแวดล้อมการสร้างของคุณต้องใช้ Java 17 ขึ้นไป จากความคิดเห็นของผู้ใช้ เราจะยกเลิกข้อกำหนดนี้กลับไปใช้ Java 11 และติดตามผลด้วยรุ่นอื่น (1.4.6) เพื่อรองรับผู้ใช้ที่ใช้ Java เวอร์ชันเก่าได้ดียิ่งขึ้น

ฟีเจอร์ใหม่

รองรับ Kotlin 1.8.20

การแก้ไขข้อบกพร่อง

  • เผยแพร่ข้อกำหนดของการลบล้างโอเปอเรเตอร์การเรียกแบบคอมโพสิเบิลไปยังคลาสและอินเทอร์เฟซที่ขยายอินเทอร์เฟซ Lambda ด้วยแอตทริบิวต์กำกับที่เกี่ยวข้องf8f2f78a1a769c2373201027f12700e772e4e97e
  • อนุญาตให้ใช้คำอธิบายประกอบ @Composable ในโอเปอเรเตอร์ getValue และทําเครื่องหมาย Gettier ที่สร้างขึ้นสําหรับผู้รับมอบสิทธิ์ว่าคอมโพสิเบิลใน IR เพื่อให้แน่ใจว่าระบบจะเปลี่ยนรูปแบบได้อย่างถูกต้องในภายหลัง f174f6ee60ca957d5cb6d19a5bd02a88267cdf40
  • แก้ไขข้อผิดพลาดรันไทม์ของคอมโพสิชันภายใน (คาดว่ามีการเรียกใช้ applyChanges()) สำหรับฟังก์ชันในบรรทัดb/274786923
  • หลีกเลี่ยงการบันทึก ProcessCancelledException เนื่องจากมีความหมายพิเศษใน IDEb/274725600

การมีส่วนร่วมจากภายนอก

เวอร์ชัน 1.4.4

เวอร์ชัน 1.4.4

22 มีนาคม 2023

androidx.compose.compiler:compiler:1.4.4, androidx.compose.compiler:compiler-daemon:1.4.4 และ androidx.compose.compiler:compiler-hosted:1.4.4 เผยแพร่แล้ว เวอร์ชัน 1.4.4 มีการคอมมิตเหล่านี้

การแก้ไขข้อบกพร่อง

  • แก้ไขผลลัพธ์ของ Lambda ในบรรทัดของ Composable (72172b)
  • อนุญาตให้คอมโพสิเบิลแสดงผล Nothing (ไม่สร้างข้อผิดพลาดเมื่อใช้ TODO ในฟังก์ชันคอมโพสิเบิล) 3aea8d)

เวอร์ชัน 1.4.3

เวอร์ชัน 1.4.3

22 กุมภาพันธ์ 2023

androidx.compose.compiler:compiler:1.4.3 ได้รับการปล่อยแล้ว เวอร์ชัน 1.4.3 มีคอมมิตเหล่านี้

การแก้ไขข้อบกพร่อง

  • แก้ไขการเรียกใช้คอมโพสิเบิลแบบมีเงื่อนไขในอาร์กิวเมนต์ของการเรียกใช้คอมโพสิเบิล (Ie93edb)

เวอร์ชัน 1.4.2

เวอร์ชัน 1.4.2

8 กุมภาพันธ์ 2023

androidx.compose.compiler:compiler:1.4.2 ได้รับการปล่อยแล้ว เวอร์ชัน 1.4.2 มีการคอมมิตเหล่านี้

ฟีเจอร์ใหม่

  • รองรับ Kotlin 1.8.10

การแก้ไขข้อบกพร่อง

  • เพิ่มกลุ่มในเนื้อหาของ Lambda แบบข้ามไม่ได้เพื่อหลีกเลี่ยงข้อบกพร่องในการคอมโพสิชันใหม่

เวอร์ชัน 1.4.1

เวอร์ชัน 1.4.1

8 กุมภาพันธ์ 2023

androidx.compose.compiler:compiler:1.4.1 ได้รับการปล่อยแล้ว เวอร์ชัน 1.4.1 มีคอมมิตเหล่านี้

การแก้ไขข้อบกพร่อง

  • ปิดใช้การเพิ่มประสิทธิภาพการจดจําโดยปริยายซึ่งก่อนหน้านี้ทำให้เกิดข้อบกพร่องในการสร้างโค้ดบางรายการ
  • ปิดใช้การจดจําแบบมีอยู่ในฟังก์ชันที่มีพารามิเตอร์ vararg
  • แก้ไขการข้ามที่ไม่ถูกต้องในคอมโพสิเบิลที่มีพารามิเตอร์เริ่มต้น
  • เพิ่มข้อความแสดงข้อผิดพลาดสำรองเพื่อการป้องกันในกรณีที่การตรวจสอบความเข้ากันได้ของ Kotlin ไม่สำเร็จ
  • นำการข้ามการสร้างโค้ดจาก Lambda ในบรรทัดออก

เวอร์ชัน 1.4.0

17 มกราคม 2023

androidx.compose.compiler:compiler:1.4.0 ได้รับการปล่อยแล้ว เวอร์ชัน 1.4.0 มีการคอมมิตเหล่านี้

การเปลี่ยนแปลงที่สําคัญตั้งแต่เวอร์ชัน 1.3.0

  • รองรับ Kotlin 1.8.0
  • ปิดการจดจำข้อมูลโดยปริยาย
  • ตอนนี้คลาสข้อมูลเครื่องมือ UI Group มีฟิลด์ isInline ที่ระบุว่ากลุ่มมีไว้สำหรับการเรียกใช้ฟังก์ชันคอมโพสิเบิลแบบอินไลน์หรือไม่ หาก isInline เป็น true แสดงว่าเป็นการเรียกใช้ฟังก์ชันคอมโพสิเบิลในบรรทัด อย่างไรก็ตาม ค่าอาจเป็นเท็จสำหรับการเรียกใช้ฟังก์ชันคอมโพสิเบิลแบบอินไลน์ที่มาจากโมดูลที่คอมไพล์ด้วยปลั๊กอินคอมไพเลอร์คอมโพสิเบิลเวอร์ชันที่ไม่ได้สร้างข้อมูลฟังก์ชันแบบอินไลน์
  • ขณะนี้ ImmutableCollection และรายการที่เกี่ยวข้องแบบถาวรถือว่ามีเสถียรภาพ
  • พารามิเตอร์ใหม่ใน AnimatedContent สำหรับป้ายกำกับเครื่องมือ
  • แก้ไขการสร้างโค้ดที่ไม่ถูกต้องสำหรับ Lambda แบบแทรกในบรรทัด

เวอร์ชัน 1.4.0-alpha02

11 พฤศจิกายน 2022

androidx.compose.compiler:compiler:1.4.0-alpha02 ได้รับการปล่อยแล้ว เวอร์ชัน 1.4.0-alpha02 มีการคอมมิตเหล่านี้

ฟีเจอร์ใหม่

  • เพิ่มการรองรับ Kotlin 1.7.21

เวอร์ชัน 1.4.0-alpha01

9 พฤศจิกายน 2022

androidx.compose.compiler:compiler:1.4.0-alpha01 ได้รับการปล่อยแล้ว เวอร์ชัน 1.4.0-alpha01 มีการคอมมิตเหล่านี้

การแก้ไขข้อบกพร่อง

  • แก้ไขความสามารถในการออกก่อนกำหนดจากฟังก์ชันที่ประกอบกันได้ในบรรทัด (b/255350755)
  • แก้ไขข้อบกพร่องในการลดทอนการสร้างภาพลวงซึ่งทำให้การรองรับ Kotlin/JS ใน Compose ใช้งานไม่ได้ (6a40f8)

เวอร์ชัน 1.3

เวอร์ชัน 1.3.2

4 ตุลาคม 2022

androidx.compose.compiler:compiler:1.3.2 ได้รับการปล่อยแล้ว เวอร์ชัน 1.3.2 มีคอมมิตเหล่านี้

ฟีเจอร์ใหม่

  • เวอร์ชันนี้มีการอัปเดต Kotlin 1.7.20

เวอร์ชัน 1.3.1

7 กันยายน 2022

androidx.compose.compiler:compiler:1.3.1 ได้รับการปล่อยแล้ว เวอร์ชัน 1.3.1 มีคอมมิตเหล่านี้

การแก้ไขข้อบกพร่อง

  • แก้ไข IllegalStateException ที่คอมไพเลอร์ Compose ทำเครื่องหมายประเภทหน่วยเป็นคอมโพสิเบิลอย่างไม่ถูกต้องในบางกรณี (b/237863365)
  • ตอนนี้ผู้ใช้ต้องระบุเวอร์ชัน Kotlin ที่ต้องการเมื่อระงับการตรวจสอบเวอร์ชันคอมไพเลอร์ (I9e5e2)

เวอร์ชัน 1.3.0

10 สิงหาคม 2022

androidx.compose.compiler:compiler:1.3.0 ได้รับการปล่อยแล้ว เวอร์ชัน 1.3.0 มีคอมมิตเหล่านี้

เวอร์ชัน 1.3.0-rc02

3 สิงหาคม 2022

androidx.compose.compiler:compiler:1.3.0-rc02 ได้รับการปล่อยแล้ว เวอร์ชัน 1.3.0-rc02 มีการคอมมิตเหล่านี้

เวอร์ชัน 1.3.0-rc01

27 กรกฎาคม 2022

androidx.compose.compiler:compiler:1.3.0-rc01 ได้รับการปล่อยแล้ว เวอร์ชัน 1.3.0-rc01 มีการคอมมิตเหล่านี้

เวอร์ชัน 1.3.0-beta01

20 กรกฎาคม 2022

androidx.compose.compiler:compiler:1.3.0-beta01 ได้รับการปล่อยแล้ว เวอร์ชัน 1.3.0-beta01 มีการคอมมิตเหล่านี้

ฟีเจอร์ใหม่

  • เพิ่มการรองรับ Kotlin 1.7.10

เวอร์ชัน 1.2

เวอร์ชัน 1.2.0

29 มิถุนายน 2022

androidx.compose.compiler:compiler:1.2.0 ได้รับการปล่อยแล้ว เวอร์ชัน 1.2.0 มีคอมมิตเหล่านี้

การเปลี่ยนแปลงที่สําคัญตั้งแต่ 1.1.0

เวอร์ชัน 1.2.0-rc02

22 มิถุนายน 2022

androidx.compose.compiler:compiler:1.2.0-rc02 ได้รับการปล่อยแล้ว เวอร์ชัน 1.2.0-rc02 มีการคอมมิตเหล่านี้

การแก้ไขข้อบกพร่อง

  • นำการสร้างโค้ดเหตุการณ์การติดตามแบบคอมโพสิเบิลออก (aosp/2127922)

เวอร์ชัน 1.2.0-rc01

15 มิถุนายน 2022

androidx.compose.compiler:compiler:1.2.0-rc01 ได้รับการปล่อยแล้ว เวอร์ชัน 1.2.0-rc01 มีการคอมมิตเหล่านี้

เวอร์ชัน 1.2.0-beta03

1 มิถุนายน 2022

androidx.compose.compiler:compiler:1.2.0-beta03 ได้รับการปล่อยแล้ว เวอร์ชัน 1.2.0-beta03 มีการคอมมิตเหล่านี้

เวอร์ชัน 1.2.0-beta02

18 พฤษภาคม 2022

androidx.compose.compiler:compiler:1.2.0-beta02 ได้รับการปล่อยแล้ว เวอร์ชัน 1.2.0-beta02 มีการคอมมิตเหล่านี้

เวอร์ชัน 1.2.0-beta01

11 พฤษภาคม 2022

androidx.compose.compiler:compiler:1.2.0-beta01 ได้รับการปล่อยแล้ว เวอร์ชัน 1.2.0-beta01 มีการคอมมิตเหล่านี้

  • นี่เป็นรุ่นเบต้าแรกของ 1.2 ไม่มีการเปลี่ยนแปลงนับตั้งแต่รุ่นอัลฟ่าล่าสุด

ฟีเจอร์ใหม่

  • เพิ่มการรองรับ Kotlin 1.6.21

เวอร์ชัน 1.2.0-alpha08

20 เมษายน 2022

androidx.compose.compiler:compiler:1.2.0-alpha08 ได้รับการปล่อยแล้ว เวอร์ชัน 1.2.0-alpha08 มีการคอมมิตเหล่านี้

เวอร์ชัน 1.2.0-alpha07

6 เมษายน 2022

androidx.compose.compiler:compiler:1.2.0-alpha07 ได้รับการปล่อยแล้ว เวอร์ชัน 1.2.0-alpha07 มีการคอมมิตเหล่านี้

เวอร์ชัน 1.2.0-alpha06

23 มีนาคม 2022

androidx.compose.compiler:compiler:1.2.0-alpha06 ได้รับการปล่อยแล้ว เวอร์ชัน 1.2.0-alpha06 มีคอมมิตเหล่านี้

เวอร์ชัน 1.2.0-alpha05

9 มีนาคม 2022

androidx.compose.compiler:compiler:1.2.0-alpha05 ได้รับการปล่อยแล้ว เวอร์ชัน 1.2.0-alpha05 มีการคอมมิตเหล่านี้

เวอร์ชัน 1.2.0-alpha04

23 กุมภาพันธ์ 2022

androidx.compose.compiler:compiler:1.2.0-alpha04 ได้รับการปล่อยแล้ว เวอร์ชัน 1.2.0-alpha04 มีการคอมมิตเหล่านี้

เวอร์ชัน 1.2.0-alpha03

9 กุมภาพันธ์ 2022

androidx.compose.compiler:compiler:1.2.0-alpha03 ได้รับการปล่อยแล้ว เวอร์ชัน 1.2.0-alpha03 มีการคอมมิตเหล่านี้

เวอร์ชัน 1.2.0-alpha02

26 มกราคม 2022

androidx.compose.compiler:compiler:1.2.0-alpha02 ได้รับการปล่อยแล้ว เวอร์ชัน 1.2.0-alpha02 มีการคอมมิตเหล่านี้

เวอร์ชัน 1.2.0-alpha01

12 มกราคม 2022

androidx.compose.compiler:compiler:1.2.0-alpha01 ได้รับการปล่อยแล้ว เวอร์ชัน 1.2.0-alpha01 มีการคอมมิตเหล่านี้

ฟีเจอร์ใหม่

  • เพิ่มการรองรับ Kotlin 1.6.10

เวอร์ชัน 1.1

เวอร์ชัน 1.1.1

23 กุมภาพันธ์ 2022

androidx.compose.compiler:compiler:1.1.1 ได้รับการปล่อยแล้ว เวอร์ชัน 1.1.1 มีคอมมิตเหล่านี้

การแก้ไขข้อบกพร่อง

  • แก้ไข NullPointerException ที่ androidx.compose.ui.platform.RenderNodeLayer.updateDisplayList (aosp/1947059, b/206677462)
  • แก้ไขข้อขัดข้องที่เกิดขึ้นจากเนื้อหาในคลิปบอร์ดขณะอ่านจากคลิปบอร์ดใน Android (I06020, b/197769306)
  • แก้ไข RTL ใน LazyVerticalGrid (aosp/1931080, b/207510535)

เวอร์ชัน 1.1.0

9 กุมภาพันธ์ 2022

androidx.compose.compiler:compiler:1.1.0 ได้รับการปล่อยแล้ว เวอร์ชัน 1.1.0 มีคอมมิตเหล่านี้

การเปลี่ยนแปลงที่สําคัญตั้งแต่เวอร์ชัน 1.0.0

  • การรองรับเอฟเฟกต์การเลื่อนผ่านของ Android 12 อย่างเสถียร
  • การปรับปรุงขนาดเป้าหมายการสัมผัส
  • โปรดทราบว่าสำหรับ Compose 1.0 คอมโพเนนต์ Material จะขยายพื้นที่เลย์เอาต์เพื่อให้เป็นไปตามหลักเกณฑ์การช่วยเหลือพิเศษของ Material สำหรับขนาดเป้าหมายการสัมผัส เช่น เป้าหมายการสัมผัสของปุ่มจะขยายให้มีขนาดขั้นต่ำ 48x48dp แม้ว่าคุณจะตั้งค่าขนาดของปุ่มให้เล็กกว่านี้ก็ตาม ซึ่งจะช่วยให้ Compose Material ทำงานในลักษณะเดียวกับคอมโพเนนต์ Material Design เพื่อให้ทำงานได้อย่างสอดคล้องกันหากคุณใช้ทั้ง Views และ Compose การเปลี่ยนแปลงนี้ยังช่วยให้มั่นใจด้วยว่าเมื่อคุณสร้าง UI โดยใช้คอมโพเนนต์ Compose Material คุณจะมีคุณสมบัติตรงตามข้อกำหนดขั้นต่ำสำหรับการช่วยเหลือพิเศษสำหรับเป้าหมายการสัมผัส
  • รองรับแถบข้างสำหรับไปยังส่วนต่างๆ อย่างเสถียร
  • เปลี่ยน API เวอร์ชันทดลองจำนวนหนึ่งเป็นเวอร์ชันเสถียร
  • รองรับ Kotlin เวอร์ชันใหม่

เวอร์ชัน 1.1.0-rc03

26 มกราคม 2022

androidx.compose.compiler:compiler:1.1.0-rc03 ได้รับการปล่อยแล้ว เวอร์ชัน 1.1.0-rc03 มีการคอมมิตเหล่านี้

การแก้ไขข้อบกพร่อง

  • อัปเดตเพื่อรองรับ Compose Material 1.1.0-rc03

เวอร์ชัน 1.1.0-rc02

16 ธันวาคม 2021

androidx.compose.compiler:compiler:1.1.0-rc02 ได้รับการปล่อยแล้ว เวอร์ชัน 1.1.0-rc02 มีการคอมมิตเหล่านี้

การอัปเดตทรัพยากรที่เกี่ยวข้อง

  • คอมไพเลอร์ Compose 1.1.0-rc02 เข้ากันได้กับ Kotlin 1.6.10

เวอร์ชัน 1.1.0-rc01

15 ธันวาคม 2021

androidx.compose.compiler:compiler:1.1.0-rc01 ได้รับการปล่อยแล้ว เวอร์ชัน 1.1.0-rc01 มีการคอมมิตเหล่านี้

การเปลี่ยนแปลงทรัพยากร Dependency

  • คอมไพเลอร์ Compose 1.1.0-rc01 เข้ากันได้กับ Kotlin 1.6.0
  • บิลด์ 1.6.10 ที่เข้ากันได้พร้อมใช้งานผ่าน SNAPSHOT ของ androidx.dev ที่มี buildId 8003490 ข้อมูลโค้ดต่อไปนี้จะกำหนดค่า SNAPSHOT สำหรับคอมไพเลอร์ Compose

    เพิ่มข้อมูลโค้ดต่อไปนี้ลงในไฟล์ build.gradle รูทของโปรเจ็กต์

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

    เพิ่มข้อมูลโค้ดต่อไปนี้ลงในไฟล์ build.gradle สําหรับแอปหรือโมดูลที่ใช้ Compose

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

เวอร์ชัน 1.1.0-beta04

1 ธันวาคม 2021

androidx.compose.compiler:compiler:1.1.0-beta04 ได้รับการปล่อยแล้ว เวอร์ชัน 1.1.0-beta04 มีการคอมมิตเหล่านี้

ฟีเจอร์ใหม่

  • อัปเดตให้ใช้งานร่วมกับ Kotlin 1.6.0 ได้

เวอร์ชัน 1.1.0-beta03

17 พฤศจิกายน 2021

androidx.compose.compiler:compiler:1.1.0-beta03 ได้รับการปล่อยแล้ว เวอร์ชัน 1.1.0-beta03 มีการคอมมิตเหล่านี้

เวอร์ชัน 1.1.0-beta02

3 พฤศจิกายน 2021

androidx.compose.compiler:compiler:1.1.0-beta02 ได้รับการปล่อยแล้ว เวอร์ชัน 1.1.0-beta02 มีการคอมมิตเหล่านี้

เวอร์ชัน 1.1.0-beta01

27 ตุลาคม 2021

androidx.compose.compiler:compiler:1.1.0-beta01 ได้รับการปล่อยแล้ว เวอร์ชัน 1.1.0-beta01 มีการคอมมิตเหล่านี้

เวอร์ชัน 1.1.0-alpha06

13 ตุลาคม 2021

androidx.compose.compiler:compiler:1.1.0-alpha06 ได้รับการปล่อยแล้ว เวอร์ชัน 1.1.0-alpha06 มีการคอมมิตเหล่านี้

เวอร์ชัน 1.1.0-alpha05

29 กันยายน 2021

androidx.compose.compiler:compiler:1.1.0-alpha05 ได้รับการปล่อยแล้ว เวอร์ชัน 1.1.0-alpha05 มีการคอมมิตเหล่านี้

เวอร์ชัน 1.1.0-alpha04

15 กันยายน 2021

androidx.compose.compiler:compiler:1.1.0-alpha04 ได้รับการปล่อยแล้ว เวอร์ชัน 1.1.0-alpha04 มีการคอมมิตเหล่านี้

เวอร์ชัน 1.1.0-alpha03

1 กันยายน 2021

androidx.compose.compiler:compiler:1.1.0-alpha03 ได้รับการปล่อยแล้ว เวอร์ชัน 1.1.0-alpha03 มีการคอมมิตเหล่านี้

ฟีเจอร์ใหม่

  • ตอนนี้คอมไพเลอร์ Compose รองรับรันไทม์ Compose เวอร์ชันเก่า (1.0) แล้ว ก่อนการเปลี่ยนแปลงนี้ คอมไพเลอร์ Compose ใช้ได้กับรันไทม์ Compose เวอร์ชันเดียวกันหรือเวอร์ชันที่ใหม่กว่าเท่านั้น หลังจากการเปลี่ยนแปลงนี้ คอมไพเลอร์ Compose จะใช้งานร่วมกับรันไทม์ Compose เวอร์ชันเก่า (1.0) ได้ (aosp/1796968)
  • อัปเดต Compose 1.1.0-alpha03 ให้ใช้ Kotlin 1.5.30 (I74545)

เวอร์ชัน 1.1.0-alpha02

18 สิงหาคม 2021

androidx.compose.compiler:compiler:1.1.0-alpha02 ได้รับการปล่อยแล้ว เวอร์ชัน 1.1.0-alpha02 มีการคอมมิตเหล่านี้

เวอร์ชัน 1.1.0-alpha01

4 สิงหาคม 2021

androidx.compose.compiler:compiler:1.1.0-alpha01 ได้รับการปล่อยแล้ว เวอร์ชัน 1.1.0-alpha01 มีการคอมมิตเหล่านี้

รุ่น 1.0

เวอร์ชัน 1.0.5

3 พฤศจิกายน 2021

androidx.compose.compiler:compiler:1.0.5 ได้รับการปล่อยแล้ว เวอร์ชัน 1.0.5 มีคอมมิตเหล่านี้

การแก้ไขข้อบกพร่อง

  • แก้ไขข้อขัดข้องในการติดตามอินสแตนซ์ derivedStateOf (aosp/1792247)

เวอร์ชัน 1.0.4

13 ตุลาคม 2021

androidx.compose.compiler:compiler:1.0.4 ได้รับการปล่อยแล้ว เวอร์ชัน 1.0.4 มีการคอมมิตเหล่านี้

การอัปเดตทรัพยากร Dependency

  • อัปเดตให้ใช้ Kotlin 1.5.31

เวอร์ชัน 1.0.3

29 กันยายน 2021

androidx.compose.compiler:compiler:1.0.3 ได้รับการปล่อยแล้ว เวอร์ชัน 1.0.3 มีคอมมิตเหล่านี้

การอัปเดตทรัพยากร Dependency

  • อัปเดตให้ใช้ Kotlin 1.5.30

เวอร์ชัน 1.0.2

1 กันยายน 2021

androidx.compose.compiler:compiler:1.0.2 ได้รับการปล่อยแล้ว เวอร์ชัน 1.0.2 มีคอมมิตเหล่านี้

อัปเดตเพื่อรองรับรุ่น Compose 1.0.2 Compose 1.0.2 จะยังคงใช้งานร่วมกับ Kotlin 1.5.21 ได้

เวอร์ชัน 1.0.1

4 สิงหาคม 2021

androidx.compose.compiler:compiler:1.0.1 ได้รับการปล่อยแล้ว เวอร์ชัน 1.0.1 มีคอมมิตเหล่านี้

การอัปเดตทรัพยากร Dependency

  • อัปเดตให้ใช้ Kotlin 1.5.21

เวอร์ชัน 1.0.0

28 กรกฎาคม 2021

androidx.compose.compiler:compiler:1.0.0 ได้รับการปล่อยแล้ว เวอร์ชัน 1.0.0 มีคอมมิตเหล่านี้

ฟีเจอร์หลักของ 1.0.0

นี่เป็นเวอร์ชันเสถียรครั้งแรกของ Compose โปรดดูรายละเอียดเพิ่มเติมในบล็อกการเผยแพร่อย่างเป็นทางการของ Compose

เวอร์ชัน 1.0.0-rc02

14 กรกฎาคม 2021

androidx.compose.compiler:compiler:1.0.0-rc02 ได้รับการปล่อยแล้ว เวอร์ชัน 1.0.0-rc02 มีการคอมมิตเหล่านี้

เวอร์ชัน 1.0.0-rc01

1 กรกฎาคม 2021

androidx.compose.compiler:compiler:1.0.0-rc01 ได้รับการปล่อยแล้ว เวอร์ชัน 1.0.0-rc01 มีการคอมมิตเหล่านี้

เวอร์ชัน 1.0.0-beta09

16 มิถุนายน 2021

androidx.compose.compiler:compiler:1.0.0-beta09 ได้รับการปล่อยแล้ว เวอร์ชัน 1.0.0-beta09 มีการคอมมิตเหล่านี้

เวอร์ชัน 1.0.0-beta08

2 มิถุนายน 2021

androidx.compose.compiler:compiler:1.0.0-beta08 ได้รับการปล่อยแล้ว เวอร์ชัน 1.0.0-beta08 มีการคอมมิตเหล่านี้

เวอร์ชัน 1.0.0-beta07

18 พฤษภาคม 2021

androidx.compose.compiler:compiler:1.0.0-beta07 ได้รับการปล่อยแล้ว เวอร์ชัน 1.0.0-beta07 มีการคอมมิตเหล่านี้

เวอร์ชัน 1.0.0-beta06

5 พฤษภาคม 2021

androidx.compose.compiler:compiler:1.0.0-beta06 ได้รับการปล่อยแล้ว เวอร์ชัน 1.0.0-beta06 มีการคอมมิตเหล่านี้

เวอร์ชัน 1.0.0-beta05

21 เมษายน 2021

androidx.compose.compiler:compiler:1.0.0-beta05 ได้รับการปล่อยแล้ว เวอร์ชัน 1.0.0-beta05 มีการคอมมิตเหล่านี้

เวอร์ชัน 1.0.0-beta04

7 เมษายน 2021

androidx.compose.compiler:compiler:1.0.0-beta04 ได้รับการปล่อยแล้ว เวอร์ชัน 1.0.0-beta04 มีการคอมมิตเหล่านี้

เวอร์ชัน 1.0.0-beta03

24 มีนาคม 2021

androidx.compose.compiler:compiler:1.0.0-beta03 ได้รับการปล่อยแล้ว เวอร์ชัน 1.0.0-beta03 มีการคอมมิตเหล่านี้

เวอร์ชัน 1.0.0-beta02

10 มีนาคม 2021

androidx.compose.compiler:compiler:1.0.0-beta02 ได้รับการปล่อยแล้ว เวอร์ชัน 1.0.0-beta02 มีการคอมมิตเหล่านี้

เวอร์ชัน 1.0.0-beta01

24 กุมภาพันธ์ 2021

androidx.compose.compiler:compiler:1.0.0-beta01 ได้รับการปล่อยแล้ว เวอร์ชัน 1.0.0-beta01 มีการคอมมิตเหล่านี้

นี่เป็นรุ่นแรกของ Compose 1.0.0 เบต้า

เวอร์ชัน 1.0.0-alpha12

10 กุมภาพันธ์ 2021

androidx.compose.compiler:compiler:1.0.0-alpha12 ได้รับการปล่อยแล้ว เวอร์ชัน 1.0.0-alpha12 มีการคอมมิตเหล่านี้

เวอร์ชัน 1.0.0-alpha11

28 มกราคม 2021

androidx.compose.compiler:compiler:1.0.0-alpha11 ได้รับการปล่อยแล้ว เวอร์ชัน 1.0.0-alpha11 มีการคอมมิตเหล่านี้

เวอร์ชัน 1.0.0-alpha10

13 มกราคม 2021

androidx.compose.compiler:compiler:1.0.0-alpha10 ได้รับการปล่อยแล้ว เวอร์ชัน 1.0.0-alpha10 มีการคอมมิตเหล่านี้

เวอร์ชัน 1.0.0-alpha09

16 ธันวาคม 2020

androidx.compose.compiler:compiler:1.0.0-alpha09 ได้รับการปล่อยแล้ว เวอร์ชัน 1.0.0-alpha09 มีการคอมมิตเหล่านี้

เวอร์ชัน 1.0.0-alpha08

2 ธันวาคม 2020

androidx.compose.compiler:compiler:1.0.0-alpha08 ได้รับการปล่อยแล้ว เวอร์ชัน 1.0.0-alpha08 มีการคอมมิตเหล่านี้

เวอร์ชัน 1.0.0-alpha07

11 พฤศจิกายน 2020

androidx.compose.compiler:compiler:1.0.0-alpha07 ได้รับการปล่อยแล้ว เวอร์ชัน 1.0.0-alpha07 มีการคอมมิตเหล่านี้

ฟีเจอร์ใหม่

  • การอนุมานและความเสถียรของการจัดสรร ปลั๊กอินคอมไพเลอร์ Compose จะวิเคราะห์ประเภทที่คอมไพล์เพื่ออนุมานว่าประเภทนั้นมีสิทธิ์รับการเพิ่มประสิทธิภาพบางอย่างจากรันไทม์หรือไม่ จากนั้นระบบจะสังเคราะห์ผลลัพธ์ที่อิงตามข้อมูลนี้ให้เป็นข้อมูลเมตาในคลาสเพื่อให้คอมไพเลอร์ใช้ในโมดูลอื่นๆ นอกจากนี้ ระบบจะส่งผลลัพธ์รันไทม์ของการอนุมานเหล่านี้ผ่านข้อมูลเมตาที่ส่งไปยังการเรียกใช้คอมโพสิเบิลระหว่างการคอมโพสิชัน ด้วยเหตุนี้ เราจึงต้องใช้โปรโตคอลข้อมูลเมตาอื่นสําหรับฟังก์ชันที่คอมไพล์ได้ ซึ่งหมายความว่าฟังก์ชันที่คอมไพล์ได้ซึ่งคอมไพล์ด้วยคอมไพเลอร์ alpha07 จะใช้งานร่วมกันไม่ได้กับฟังก์ชันที่คอมไพล์ได้ซึ่งคอมไพล์ด้วยคอมไพเลอร์เวอร์ชันก่อนหน้า (aosp/1431988)

เวอร์ชัน 1.0.0-alpha06

28 ตุลาคม 2020

androidx.compose.compiler:compiler:1.0.0-alpha06 ได้รับการปล่อยแล้ว เวอร์ชัน 1.0.0-alpha06 มีการคอมมิตเหล่านี้

เวอร์ชัน 1.0.0-alpha05

14 ตุลาคม 2020

androidx.compose.compiler:compiler:1.0.0-alpha05 ได้รับการปล่อยแล้ว เวอร์ชัน 1.0.0-alpha05 มีการคอมมิตเหล่านี้

เวอร์ชัน 1.0.0-alpha04

1 ตุลาคม 2020

androidx.compose.compiler:compiler:1.0.0-alpha04 ได้รับการปล่อยแล้ว เวอร์ชัน 1.0.0-alpha04 มีการคอมมิตเหล่านี้

androidx.compose:compose-compiler ได้รับการแยกส่วนใหม่เป็น androidx.compose.compiler:compiler แล้ว นี่เป็นรุ่นแรกในกลุ่มใหม่