کامپایلر نوشتن
آخرین به روز رسانی | انتشار پایدار | کاندید را آزاد کنید | نسخه بتا | انتشار آلفا |
---|---|---|---|---|
7 آگوست 2024 | 1.5.15 | - | - | - |
ساختار
Compose ترکیبی از 7 شناسه گروه Maven در androidx
است. هر گروه شامل یک زیرمجموعه هدفمند از عملکرد است که هر کدام مجموعه ای از یادداشت های انتشار خود را دارند.
این جدول گروه ها و پیوندهای هر مجموعه از یادداشت های انتشار را توضیح می دهد.
گروه | توضیحات |
---|---|
آهنگسازی.انیمیشن | انیمیشن هایی را در برنامه های Jetpack Compose خود بسازید تا تجربه کاربر را غنی تر کنید. |
compose.compiler | توابع @Composable را تغییر دهید و بهینه سازی ها را با افزونه کامپایلر Kotlin فعال کنید. |
تألیف.بنیاد | برنامه های Jetpack Compose را با بلوک های ساختمانی آماده بنویسید و پایه را گسترش دهید تا قطعات سیستم طراحی خود را بسازید. |
آهنگسازی.مواد | رابط کاربری Jetpack Compose را با اجزای طراحی مواد آماده برای استفاده بسازید. این نقطه ورود سطح بالاتر Compose است که برای ارائه مؤلفه هایی مطابق با آنچه در www.material.io توضیح داده شده است طراحی شده است. |
نوشتن.مواد3 | ایجاد رابط کاربری Jetpack Compose با 3 مؤلفه طراحی متریال، تکامل بعدی طراحی متریال. Material 3 شامل قالبها و اجزای بهروز شده و ویژگیهای شخصیسازی Material You مانند رنگ پویا است و به گونهای طراحی شده است که با سبک بصری جدید Android 12 و رابط کاربری سیستم هماهنگ باشد. |
نوشتن. زمان اجرا | بلوکهای بنیادی مدل برنامهنویسی Compose و مدیریت حالت، و زمان اجرا اصلی برای هدف قرار دادن افزونه Compose Compiler. |
compose.ui | مؤلفههای اساسی نوشتن رابط کاربر برای تعامل با دستگاه، از جمله طرحبندی، طراحی، و ورودی مورد نیاز است. |
اعلام وابستگی ها
برای افزودن وابستگی به Compose، باید مخزن Google Maven را به پروژه خود اضافه کنید. برای اطلاعات بیشتر، مخزن Maven Google را بخوانید.
وابستگیهای مصنوعات مورد نیاز خود را در فایل build.gradle
برای برنامه یا ماژول خود اضافه کنید:
شیار
android { buildFeatures { compose true } composeOptions { kotlinCompilerExtensionVersion = "1.5.15" } kotlinOptions { jvmTarget = "19" } }
کاتلین
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 حاوی این commit ها است.
- این نسخه کامپایلر 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 حاوی این commit ها است.
این نسخه کامپایلر 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 شامل این commit ها است.
ویژگی های جدید
- پرش قوی دیگر آزمایشی در نظر گرفته نمی شود و برای استفاده در تولید بی خطر است. این به رفتار پیش فرض در نسخه آینده تبدیل می شود. ( I6c8c4 )
رفع اشکال
- سازگاری باینری را برای توابع
@Composable
با پارامترهای کلاس مقدار که دارای یک مقدار پیشفرض هستند و یک مقدار غیر ابتدایی را بسته بندی میکنند، برطرف کنید. ( I89465 - اصلاحات Upstreamed برای JS و کامپایل Native از Compose multiplatform. برای جزئیات کامل به محدوده commit بالا مراجعه کنید.
نسخه 1.5.12
17 آوریل 2024
androidx.compose.compiler:compiler:1.5.12
و androidx.compose.compiler:compiler-hosted:1.5.12
منتشر شده است. نسخه 1.5.12 حاوی این commit ها است.
رفع اشکال
- رفع مشکل کامپایل تدریجی با Kotlin 1.9.23. ( Ifca55 )
- انواع غیر قابل تهی را در پارامترهای مقدار برای کلاس های درون خطی غیر ابتدایی ثابت کنید. ( Ie6bb5 )
نسخه 1.5.11
20 مارس 2024
androidx.compose.compiler:compiler:1.5.11
و androidx.compose.compiler:compiler-hosted:1.5.11
منتشر شد. نسخه 1.5.11 شامل این commit ها است.
یادداشت ها
با شروع با این نسخه، کامپایلر اکنون
startReplaceGroup
به جایstartReplacableGroup
هنگامی که یک ماژول با یک زمان اجرا که حاوی این متد کامپایل می شود، فراخوانی می کند.startReplaceGroup
در زمان اجرا در Compose Runtime1.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 )
- ایجاد کد برای لامبدای متقابل ترکیبی را برطرف کنید (برخورد با این اشکال بدون فعال کردن "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 حاوی این commit ها است.
رفع اشکال
- از حروف زنده در داخل بلوک های 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 حاوی این commit ها است.
رفع اشکال
- رفع تماس های قابل ترکیب در اولیه ساز شی ناشناس. ( b/320261458 , 96315c )
- اعلان های محلی بازگشتی را به عنوان ضبط بشمارید. ( b/318745941 , e7b4b0 )
- اصلاح رفتار تغییر حافظه ذاتی مربوط به ref های متد جاوا با اجبار .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 حاوی این commit ها است.
ویژگی های جدید
- پشتیبانی از Kotlin 1.9.22
رفع اشکال
- رفع اشکال که در آن ساخت Compose Compiler در هنگام ساخت با استفاده از Java21 استثناهایی را ایجاد می کرد. کاربرانی که از Compose Compiler از Google Maven استفاده می کنند (یعنی خودشان آن را نمی سازند) هرگز تحت تأثیر این باگ قرار نگرفتند. ( b/316644294 )
- رفع اشکال که در آن خطا
COMPOSABLE_EXPECTED
برای برخی از تماسگیرندگان لامبداهای غیر خطی گزارش شده بود. ( 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 حاوی این commit ها است.
رفع اشکال
- رفع خرابی زمان اجرا نوشتن زمانی که پارامتر کلید
remember()
یک تابع Composable را فراخوانی می کند ( b/315855015 ) - رفع خرابی زمان اجرا نوشتن هنگام استفاده از
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 حاوی این commit ها است.
ویژگی های جدید
- پشتیبانی از Kotlin 1.9.21
رفع اشکال
- ذخیره ذاتی را فعال کنید - تبدیل کامپایلری که درون خطی در افزونه کامپایلر Compose به خاطر میآورد و مقایسههای
.equals
را با مقایسههای int متای پارامتر برای پارامترهای پایدار جایگزین میکند. این منجر به استفاده از اسلات های کمتر و مقایسه کمتر در زمان اجرا می شود. این گزینه را می توان با ارائه آرگومان افزونه کامپایلر غیرفعال کرد: -Pplugin:androidx.compose.compiler.plugins.kotlin:intrinsicRemember=false
. ( If675f ) - حفظ کردن منابع تابع سازگار و آرگومان های درون خطی را برطرف کنید. ( b/312738720 )
- هنگام خروج از فراخوانی تابع درون خطی، گروه ها را متوجه شوید ( b/312242547 )
مشارکت خارجی
- رفع خرابی زمان اجرا k/native و k/wasm به دلیل از دست دادن دستور بازگشت در توابع Composable زمانی که آخرین دستور است و یک const null برمی گرداند ( 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 حاوی این commit ها است.
رفع اشکال
- رفع خرابی در حین جستجوی انواع قابل ترکیب لغو شده ( 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 حاوی این commit ها است.
به روز رسانی های وابستگی
- Compose Compiler اکنون با Kotlin 1.9.20 سازگار است
ویژگی های جدید
- برای فعال کردن حالت پرش قوی، یک گزینه آزمایشی اضافه کنید. حالت پرش قوی این امکان را می دهد که از اجزای سازنده با پارامترهای ناپایدار پرش شود. علاوه بر این، لامبداهایی با ضبط ناپایدار به حافظه سپرده می شوند. این ویژگی آزمایشی است و برای استفاده در تولید آماده نیست. ( 22421e )
- برای فعال/غیرفعال کردن اطلاعات منبع/ردیابی پرچم پرچم اضافه کنید. ( 4d45f09 )
- اجازه پیکربندی پایداری کلاس های خارجی از طریق یک فایل پیکربندی. ( If40eb )
رفع اشکال
- وقتی اطلاعات منبع جمع آوری نمی شود، خروج زودهنگام از توابع قابل ترکیب را برطرف کنید. ( fe6267 )
- ادامه از توابع قابل ترکیب را رفع کنید. ( 948362 )
- هنگامی که توابع قابل ترکیب از داخل فراخوانی تابعی فراخوانی می شوند که دارای اضافه بارهای متعدد است که به نوع بازگشت عبارت بستگی دارد، وضوح را برطرف کنید. ( 2d36d0 )
- هنگامی که مرجع تابع گیرنده ارسال ندارد، یادداشت را برطرف کنید. ( fc2326 )
- بررسی کثیفی را که در برخی شرایط از ترکیب مجدد لامبدا جلوگیری می کرد، رفع کنید. ( db3699 )
- هنگام کامپایل تدریجی در ماژول ها، ثبات را برطرف کنید. ( 7d3e127 )
- دامنه
@DontMemoize
را فقط به عبارات لامبدا کاهش دهید. ( 7a7fa52 ) - هنگام استفاده از یک رابط سرگرم کننده Composable به عنوان لامبدا، متغیرهایی که به درستی ثبت نشده اند را برطرف کنید. ( 5ae3556 )
مشارکت خارجی
- استفاده از نماد برابری ساختاری برای مقایسه عددی و تهی ( 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 حاوی این commit ها است.
به روز رسانی وابستگی
- نسخه کاتلین به 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 حاوی این commit ها است.
رفع اشکال
- درج اعداد خط برای عبارات بازگشتی در توابع ترکیب پذیر با بازگشت ثابت. ( I42d89 )
- رفع نشت حافظه ناشی از جابجایی به نقطه ورودی جدید افزونه کامپایلر. ( 4f0a101 )
- تغییر رابط های سرگرم کننده غیرقابل ترکیب را در کامپایلر Compose متوقف کنید. این باعث میشود که رابطهای سرگرمکننده مانند لامبداها، از جمله قوانین حافظهسازی، مدیریت شوند. ( 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 حاوی این commit ها است.
رفع اشکال
- نشانگرهای رویداد ردیابی ترکیب را در توابع
@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 حاوی این commit ها است.
پشتیبانی آزمایشی K2
- کامپایلر Compose 1.5.0 پشتیبانی آزمایشی از کامپایلر K2 را فراهم می کند. برخی از ویژگی های Compose هنوز با K2 پشتیبانی نمی شوند و در نسخه های بعدی کامپایلر ارائه خواهند شد.
تغییرات مهم از 1.4.0
- نسخه کاتلین به 1.9.0 آپدیت شده است.
- آرگومانهای نامگذاری شده برای تماسهای لامبدا
@Composable
منسوخ شدهاند. این ویژگی به APIهای کامپایلر داخلی متکی است و توسط K2 پشتیبانی نخواهد شد. - برای تأیید حاشیهنویسی
@Composable
در تماسهای انتظاری/واقعی، یک عیبیابی اضافه شد. انتظار می رود هر دو اعلامیه دارای حاشیه نویسی منطبق باشند.
نسخه 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 حاوی این commit ها است.
ویژگی های جدید
- نسخه کامپایلر Target Kotlin به 1.8.22 رسیده است.
رفع اشکال
- پیام خطای بهبود یافته برای نادیده گرفتن
@Composable
. اکنون به درستی به عدم تطابق حاشیه نویسی اشاره می کند. - درباره حاشیهنویسی اضافی
@Composable
در لامبداهای درون خطی که نباید بهعنوان قابل ترکیب علامتگذاری شوند، هشدار دهید. این ویژگی با کامپایلر 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 حاوی این commit ها است.
ویژگی های جدید
- پشتیبانی از 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 حاوی این commit ها است.
رفع اشکال
- Compose Compiler اکنون برای پشتیبانی بهتر از کاربرانی که هنوز از نسخه های قدیمی جاوا استفاده می کنند به Java11 (به جای Java17 مورد نیاز Compose Compiler نسخه 1.4.5) وابسته است.
نسخه 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 حاوی این commit ها است.
توجه این بیلد Compose Compiler به محیط ساخت شما برای استفاده از Java 17+ نیاز دارد. بر اساس بازخورد کاربران، ما این نیاز را به جاوا 11 برمیگردانیم و نسخه دیگری (1.4.6) را برای پشتیبانی بهتر از کاربرانی که از نسخههای قدیمی جاوا استفاده میکنند، پیگیری میکنیم.
ویژگی های جدید
پشتیبانی از Kotlin 1.8.20
رفع اشکال
- انتشار الزامات نادیده گرفتن عملگر فراخوانی ترکیبی به کلاس ها و رابط هایی که رابط های لامبدا را با حاشیه نویسی های مربوطه گسترش می دهند. f8f2f78a1a769c2373201027f12700e772e4e97e
- به استفاده از حاشیهنویسی
@Composable
در عملگرgetValue
اجازه میدهد و دریافتکننده ایجاد شده را برای نماینده بهعنوان قابل ترکیب در IR علامتگذاری میکند تا اطمینان حاصل شود که بعداً به درستی تبدیل شده است. f174f6ee60ca957d5cb6d19a5bd02a88267cdf40 - برای توابع درون خطی، خطای داخلی نگارش زمان اجرا (که انتظار میرود
applyChanges()
فراخوانی شده باشد) را برطرف کنید. b/274786923 - از گرفتن
ProcessCancelledException
خودداری کنید زیرا معنای خاصی در IDE دارد. b/274725600
مشارکت خارجی
- پشتیبانی بهبود یافته برای توابع Composable در Kotlin/Native. f52b6aeed22400dd4f4a4f05559a9aa42642402c
نسخه 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 حاوی این commit ها است.
رفع اشکال
- رفع برگشت های لامبدا درون خطی Composable ( 72172b )
- اجازه دادن به composables برای برگرداندن
Nothing
(هنگام استفاده از TODO در یک تابع composable خطا ایجاد نکنید) 3aea8d )
نسخه 1.4.3
نسخه 1.4.3
22 فوریه 2023
androidx.compose.compiler:compiler:1.4.3
منتشر شد. نسخه 1.4.3 حاوی این commit ها است.
رفع اشکال
- تماسهای مشروط را در آرگومانهای فراخوانیهای قابل تنظیم رفع میکند ( Ie93edb )
نسخه 1.4.2
نسخه 1.4.2
8 فوریه 2023
androidx.compose.compiler:compiler:1.4.2
منتشر شد. نسخه 1.4.2 حاوی این commit ها است.
ویژگی های جدید
- پشتیبانی از Kotlin 1.8.10
رفع اشکال
- گروه هایی را در بدنه لامبداهای غیرقابل رد شدن اضافه کنید تا از اشکال ترکیب مجدد جلوگیری کنید.
نسخه 1.4.1
نسخه 1.4.1
8 فوریه 2023
androidx.compose.compiler:compiler:1.4.1
منتشر شد. نسخه 1.4.1 حاوی این commit ها است.
رفع اشکال
- بهینه سازی حافظه ذاتی را که قبلاً چند اشکال تولید کد را معرفی کرده بود، غیرفعال کنید.
- غیرفعال کردن حافظه ذاتی در توابع حاوی پارامتر vararg.
- رد شدن اشتباه در composable ها را با پارامترهای پیش فرض برطرف کنید
- اگر بررسی سازگاری Kotlin ناموفق بود، پیام خطای بازگشتی دفاعی را اضافه کنید.
- تولید کد رد شدن را از لامبدا درون خطی حذف کنید
نسخه 1.4.0
17 ژانویه 2023
androidx.compose.compiler:compiler:1.4.0
منتشر شد. نسخه 1.4.0 حاوی این commit ها است.
تغییرات مهم از 1.3.0
- پشتیبانی از Kotlin 1.8.0
- ذخیره ذاتی خاموش شد
-
Group
داده ابزار ابزار رابط کاربر اکنون یک فیلد بهisInline
دارد که نشان می دهد آیا گروه برای فراخوانی یک تابع قابل ترکیب درون خطی است یا خیر. اگرisInline
true
باشد، فراخوانی به یک تابع قابل ترکیب درون خطی است. با این حال، مقدار ممکن است برای فراخوانیهای توابع ترکیبپذیر درون خطی که از ماژولهایی هستند که با نسخهای از افزونه کامپایلر نوشتن که اطلاعات تابع درون خطی را تولید نمیکند کامپایل شدهاند، نادرست باشد. -
ImmutableCollection
و خواهر و برادرهای Persistent آنها اکنون پایدار در نظر گرفته می شوند. - پارامتر جدید در
AnimatedContent
برای برچسب ابزار - ایجاد کد معیوب برای لامبدا درون خطی رفع شد
نسخه 1.4.0-alpha02
11 نوامبر 2022
androidx.compose.compiler:compiler:1.4.0-alpha02
منتشر شد. نسخه 1.4.0-alpha02 حاوی این commit ها است.
ویژگی های جدید
- پشتیبانی اضافه شده برای Kotlin
1.7.21
نسخه 1.4.0-alpha01
9 نوامبر 2022
androidx.compose.compiler:compiler:1.4.0-alpha01
منتشر شد. نسخه 1.4.0-alpha01 حاوی این commit ها است.
رفع اشکال
- رفع توانایی بازگشت زودهنگام از توابع ترکیبی درون خطی ( b/255350755 )
- رفع اشکال در کاهش طعمه که پشتیبانی Kotlin/JS را در Compose شکسته است ( 6a40f8 ).
نسخه 1.3
نسخه 1.3.2
4 اکتبر 2022
androidx.compose.compiler:compiler:1.3.2
منتشر شد. نسخه 1.3.2 حاوی این commit ها است.
ویژگی جدید
- این نسخه شامل به روز رسانی Kotlin 1.7.20 است
نسخه 1.3.1
7 سپتامبر 2022
androidx.compose.compiler:compiler:1.3.1
منتشر شد. نسخه 1.3.1 حاوی این commit ها است.
رفع اشکال
-
IllegalStateException
که Compose Compiler در برخی شرایط به اشتباه انواع واحدها را بهعنوان قابل ترکیب علامتگذاری میکرد، برطرف کنید. ( b/237863365 ) - کاربران اکنون باید هنگام سرکوب بررسی نسخه کامپایلر، نسخه Kotlin مورد نظر خود را مشخص کنند ( I9e5e2 )
نسخه 1.3.0
10 آگوست 2022
androidx.compose.compiler:compiler:1.3.0
منتشر شد. نسخه 1.3.0 حاوی این commit ها است.
نسخه 1.3.0-rc02
3 آگوست 2022
androidx.compose.compiler:compiler:1.3.0-rc02
منتشر شد. نسخه 1.3.0-rc02 حاوی این commit ها است.
نسخه 1.3.0-rc01
27 جولای 2022
androidx.compose.compiler:compiler:1.3.0-rc01
منتشر شد. نسخه 1.3.0-rc01 حاوی این commit ها است.
نسخه 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 حاوی این commit ها است.
تغییرات مهم از 1.1.0
- پشتیبانی از Kotlin 1.7.0
- پست وبلاگ ما را بررسی کنید که استراتژی جدید Compose Compiler Versioning در Compose را توضیح می دهد.
نسخه 1.2.0-rc02
22 ژوئن 2022
androidx.compose.compiler:compiler:1.2.0-rc02
منتشر شد. نسخه 1.2.0-rc02 حاوی این commit ها است.
رفع اشکال
- تولید کد Trace Event قابل ترکیب حذف شد ( aosp/2127922 )
نسخه 1.2.0-rc01
15 ژوئن 2022
androidx.compose.compiler:compiler:1.2.0-rc01
منتشر شد. نسخه 1.2.0-rc01 حاوی این commit ها است.
نسخه 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 حاوی این commit ها است.
نسخه 1.2.0-alpha07
6 آوریل 2022
androidx.compose.compiler:compiler:1.2.0-alpha07
منتشر شد. نسخه 1.2.0-alpha07 حاوی این commit ها است.
نسخه 1.2.0-alpha06
23 مارس 2022
androidx.compose.compiler:compiler:1.2.0-alpha06
منتشر شد. نسخه 1.2.0-alpha06 حاوی این commit ها است.
نسخه 1.2.0-alpha05
9 مارس 2022
androidx.compose.compiler:compiler:1.2.0-alpha05
منتشر شد. نسخه 1.2.0-alpha05 حاوی این commit ها است.
نسخه 1.2.0-alpha04
23 فوریه 2022
androidx.compose.compiler:compiler:1.2.0-alpha04
منتشر شد. نسخه 1.2.0-alpha04 حاوی این commit ها است.
نسخه 1.2.0-alpha03
9 فوریه 2022
androidx.compose.compiler:compiler:1.2.0-alpha03
منتشر شد. نسخه 1.2.0-alpha03 حاوی این commit ها است.
نسخه 1.2.0-alpha02
26 ژانویه 2022
androidx.compose.compiler:compiler:1.2.0-alpha02
منتشر شد. نسخه 1.2.0-alpha02 حاوی این commit ها است.
نسخه 1.2.0-alpha01
12 ژانویه 2022
androidx.compose.compiler:compiler:1.2.0-alpha01
منتشر شد. نسخه 1.2.0-alpha01 حاوی این commit ها است.
ویژگی های جدید
- پشتیبانی اضافه شده برای Kotlin
1.6.10
.
نسخه 1.1
نسخه 1.1.1
23 فوریه 2022
androidx.compose.compiler:compiler:1.1.1
منتشر شد. نسخه 1.1.1 حاوی این commit ها است.
رفع اشکال
- رفع
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 حاوی این commit ها است.
تغییرات مهم از 1.0.0
- پشتیبانی پایدار از افکت Overscroll Android 12
- بهبود در اندازه هدف لمسی
- توجه داشته باشید که با توجه به Compose 1.0، مؤلفههای Material فضای طرحبندی خود را گسترش میدهند تا دستورالعملهای دسترسی به مواد برای اندازه هدف لمسی را رعایت کنند. به عنوان مثال، هدف لمسی دکمه تا حداقل اندازه
48x48dp
گسترش می یابد، حتی اگر اندازه دکمه را کوچکتر تنظیم کنید. این Compose Material را با همان رفتار Material Design Components تراز میکند و اگر Views و Compose را با هم ترکیب کنید، رفتار ثابتی را ارائه میدهد. این تغییر همچنین تضمین میکند که وقتی رابط کاربری خود را با استفاده از اجزای Compose Material ایجاد میکنید، حداقل الزامات برای دسترسی به هدف لمسی برآورده میشود. - پشتیبانی پایدار برای راه آهن ناوبری
- تعدادی از APIهای آزمایشی قبلی را به ثبات رسانده است
- پشتیبانی از نسخه های جدیدتر Kotlin
نسخه 1.1.0-rc03
26 ژانویه 2022
androidx.compose.compiler:compiler:1.1.0-rc03
منتشر شد. نسخه 1.1.0-rc03 حاوی این commit ها است.
رفع اشکال
- برای پشتیبانی از Compose Material 1.1.0-rc03 به روز شد
نسخه 1.1.0-rc02
16 دسامبر 2021
androidx.compose.compiler:compiler:1.1.0-rc02
منتشر شد. نسخه 1.1.0-rc02 حاوی این commit ها است.
به روز رسانی وابستگی
- Compose Compiler
1.1.0-rc02
با Kotlin1.6.10
سازگار است.
نسخه 1.1.0-rc01
15 دسامبر 2021
androidx.compose.compiler:compiler:1.1.0-rc01
منتشر شد. نسخه 1.1.0-rc01 حاوی این commit ها است.
وابستگی تغییر می کند
- Compose Compiler
1.1.0-rc01
با Kotlin1.6.0
سازگار است. یک ساخت
1.6.10
سازگار از طریق SNAPSHOT های androidx.dev باbuildId
8003490 در دسترس است. قطعه وابستگی زیر SNAPSHOT ها را برای Compose Compose پیکربندی می کند:قطعه زیر را به فایل root
build.gradle
پروژه خود اضافه کنید:buildscript { repositories { google() jcenter() maven { url 'https://androidx.dev/snapshots/builds/8003490/artifacts/repository' } } }
قطعه زیر را برای برنامه یا ماژول خود که از Compose استفاده می کند به فایل
build.gradle
اضافه کنید: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 حاوی این commit ها است.
نسخه 1.1.0-alpha05
29 سپتامبر 2021
androidx.compose.compiler:compiler:1.1.0-alpha05
منتشر شد. نسخه 1.1.0-alpha05 حاوی این commit ها است.
نسخه 1.1.0-alpha04
15 سپتامبر 2021
androidx.compose.compiler:compiler:1.1.0-alpha04
منتشر شد. نسخه 1.1.0-alpha04 حاوی این commit ها است.
نسخه 1.1.0-alpha03
1 سپتامبر 2021
androidx.compose.compiler:compiler:1.1.0-alpha03
منتشر شد. نسخه 1.1.0-alpha03 حاوی این commit ها است.
ویژگی های جدید
- Compose Compiler اکنون از نسخه های قدیمی تر Compose Runtime (1.0) پشتیبانی می کند. قبل از این تغییر، Compose Compiler فقط با Compose Runtime همان نسخه یا نسخه های جدیدتر سازگار بود. پس از این تغییر، Compose Compiler با نسخه قدیمی Compose Runtime (1.0) سازگار است. ( aosp/1796968 )
- Compose
1.1.0-alpha03
را به روز کرد تا به Kotlin1.5.30
وابسته باشد. ( I74545 )
نسخه 1.1.0-alpha02
18 آگوست 2021
androidx.compose.compiler:compiler:1.1.0-alpha02
منتشر شد. نسخه 1.1.0-alpha02 حاوی این commit ها است.
نسخه 1.1.0-alpha01
4 آگوست 2021
androidx.compose.compiler:compiler:1.1.0-alpha01
منتشر شد. نسخه 1.1.0-alpha01 حاوی این commit ها است.
نسخه 1.0
نسخه 1.0.5
3 نوامبر 2021
androidx.compose.compiler:compiler:1.0.5
منتشر شد. نسخه 1.0.5 حاوی این commit ها است.
رفع اشکال
- رفع ردیابی خرابی نمونههای مشتق شده ازStateOf. ( aosp/1792247 )
نسخه 1.0.4
13 اکتبر 2021
androidx.compose.compiler:compiler:1.0.4
منتشر شد. نسخه 1.0.4 حاوی این commit ها است.
به روز رسانی های وابستگی
- به روز شد تا به Kotlin
1.5.31
وابسته باشد
نسخه 1.0.3
29 سپتامبر 2021
androidx.compose.compiler:compiler:1.0.3
منتشر شد. نسخه 1.0.3 حاوی این commit ها است.
به روز رسانی های وابستگی
- به روز شد تا به Kotlin
1.5.30
وابسته باشد
نسخه 1.0.2
1 سپتامبر 2021
androidx.compose.compiler:compiler:1.0.2
منتشر شد. نسخه 1.0.2 حاوی این commit ها است.
برای پشتیبانی از نسخه 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 حاوی این commit ها است.
به روز رسانی های وابستگی
- به روز شد تا به Kotlin
1.5.21
وابسته باشد.
نسخه 1.0.0
28 ژوئیه 2021
androidx.compose.compiler:compiler:1.0.0
منتشر شد. نسخه 1.0.0 حاوی این commit ها است.
ویژگی های اصلی 1.0.0
این اولین نسخه پایدار Compose است. لطفاً برای جزئیات بیشتر به وبلاگ رسمی Compose Release مراجعه کنید!
نسخه 1.0.0-rc02
14 جولای 2021
androidx.compose.compiler:compiler:1.0.0-rc02
منتشر شد. نسخه 1.0.0-rc02 حاوی این commit ها است.
نسخه 1.0.0-rc01
1 ژوئیه 2021
androidx.compose.compiler:compiler:1.0.0-rc01
منتشر شد. نسخه 1.0.0-rc01 حاوی این commit ها است.
نسخه 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 Beta است.
نسخه 1.0.0-alpha12
10 فوریه 2021
androidx.compose.compiler:compiler:1.0.0-alpha12
منتشر شد. نسخه 1.0.0-alpha12 حاوی این commit ها است.
نسخه 1.0.0-alpha11
28 ژانویه 2021
androidx.compose.compiler:compiler:1.0.0-alpha11
منتشر شد. نسخه 1.0.0-alpha11 حاوی این commit ها است.
نسخه 1.0.0-alpha10
13 ژانویه 2021
androidx.compose.compiler:compiler:1.0.0-alpha10
منتشر شد. نسخه 1.0.0-alpha10 حاوی این commit ها است.
نسخه 1.0.0-alpha09
16 دسامبر 2020
androidx.compose.compiler:compiler:1.0.0-alpha09
منتشر شد. نسخه 1.0.0-alpha09 حاوی این commit ها است.
نسخه 1.0.0-alpha08
2 دسامبر 2020
androidx.compose.compiler:compiler:1.0.0-alpha08
منتشر شد. نسخه 1.0.0-alpha08 حاوی این commit ها است.
نسخه 1.0.0-alpha07
11 نوامبر 2020
androidx.compose.compiler:compiler:1.0.0-alpha07
منتشر شد. نسخه 1.0.0-alpha07 حاوی این commit ها است.
ویژگی های جدید
- استنتاج و انتشار پایداری افزونه Compose Compiler انواعی را که کامپایل می کند تجزیه و تحلیل می کند تا مشخص کند که آیا برای بهینه سازی های خاصی در زمان اجرا واجد شرایط است یا خیر. این نتیجه استنتاج شده سپس به عنوان ابرداده در کلاس سنتز می شود تا توسط کامپایلر در ماژول های دیگر استفاده شود. علاوه بر این، نتیجه زمان اجرا این استنتاجها در فرادادههای ارسال شده به فراخوانیهای قابل ترکیب در طول ترکیب ارسال میشود. این امر مستلزم پروتکل متادیتا متفاوتی برای توابع کامپایلپذیر است، به این معنی که توابع کامپایلشده با کامپایلر alpha07 با توابع قابلکامپایلشده با هر نسخه کامپایلر قبلی سازگار باینری نخواهند بود. ( aosp/1431988 )
نسخه 1.0.0-alpha06
28 اکتبر 2020
androidx.compose.compiler:compiler:1.0.0-alpha06
منتشر شد. نسخه 1.0.0-alpha06 حاوی این commit ها است.
نسخه 1.0.0-alpha05
14 اکتبر 2020
androidx.compose.compiler:compiler:1.0.0-alpha05
منتشر شد. نسخه 1.0.0-alpha05 حاوی این commit ها است.
نسخه 1.0.0-alpha04
1 اکتبر 2020
androidx.compose.compiler:compiler:1.0.0-alpha04
منتشر شد. نسخه 1.0.0-alpha04 حاوی این commit ها است.
androidx.compose:compose-compiler
دوباره به androidx.compose.compiler:compiler
تبدیل شده است. این اولین نسخه در گروه جدید است.