توی لاراول ۹ چه ویژگی هایی قراره بیاد؟
سلام. چه ویژگی هایی قراره توی لاراول ۹ باشه و چرا انقدر زمان ریلیزش عقب افتاده؟
سلام. من این مطلب رو توی سایت اصلی خود لاراول پیدا کردم
لاراول نسخهی ۹، ورژن LTS بعدی لاراوله. همونطور که میدونیم LTS به کلمهی Long-Term-Support اطلاق میشه و به معنی نسخهای از نرم افزاره که استیبله و در طول مدت انتشارش، متعهد به پشتیبانی و بهروزرسانیه. ورژن نه لاراول اوایل سال ۲۰۲۲ رسما معرفی میشه ولی تا الآن تعدادی تغییرات و ویژگیهایی ازش بیرون اومده که توی این پست به اون ویژگیها میپردازیم.
تغییرات زمان انتشار
لاراول نسخهی ۹ مثل بقیه نسخهها قرار بود در حدود سپتامبر سال جاری منتشر بشه، اما تیم لاراول یهویی تصمیم گرفت این نسخه را تا ژانویه ۲۰۲۲ به تعویق بندازه. تیم لاراول یه بیانیه منتشر کرد و توضیح داد که چه اتفاقی باعث این تعویق توی نسخهی ۹ شد. خلاصهی بیانیه این بود که چون لاراول از یه سری از پکیجهای community-driven استفاده میکنه که برای تعدادی از ویژگیهای فریمورک لازمه و این پکیجها اواخر ماه نوامبر آپدیت میشن. برای همین لاراول صبر کرد تا اول این پکیجهای مهم رو به نسخهی جدید ارتقا بده و برای همین این تاخیر توی زمان انتشار نسخهی ۹ پیش اومد.
این تاخیر همچنین باعث میشه زمان انتشار نسخههای بعدی هم تغییر بکنه. تا در نهایت لاراول ۱۰ و ۱۱ هم به ترتیب در ژانویه ۲۰۲۳ و ۲۰۲۴ منتشر بشن.
نیازمند PHP نسخهی ۸ به بالا
لاراول ۹ برای یه سری از ویژگیهای حیاتی فریمورکش از نسخهی ۶ پکیج Symfony استفاده میکنه. یکی از محدودیتهای این پکیج استفاده از PHP با نسخهی ۸ به بالاست. برای همین لاراول هم مجبوره این محدودیت رو به جون بخره و از این به بعد استفاده از PHP نسخهی ۸ در لاراول ۹ الزامی میشه.
پیشفرض شدن migration های ناشناس
اگه نسخههای مختلف لاراول رو دنبال کرده باشید. میدونید که تقریبا اوایل سال ۲۰۲۱ بود که لاراول ۸٫۳۷ با یه ویژگی جدید به اسم migration های ناشناس منتشر شد. قضیه این ویژگی به یه issue توی گیتهاب برمیگشت که یکی از کاربرهای لاراول اون رو گزارش کرده بود که برای حل این مشکل نیاز به این بود که لاراول بتونه خطای برخورد نامهای یکسان رو در migration ها از بین ببره که توی نسخهی ۸٫۳۷ با موفقیت انجام شد.
حالا توی نسخهی ۹، لاراول اعلام کرده که هر موقع شما دستور آشنای php artisan make:migration رو تایپ کنید، این ویژگی و جلوگیری از این اتفاق هم در پیشفرض دستور نهادینه شده.