برای ورژن ۶ لاراول آماده شوید!

به زودی شاهد ورژن ۶ خواهیم بود ;)
به زودی شاهد ورژن ۶ خواهیم بود ;)

اگر منتظر بودید یا بودیم که ورژن 5.9 لاراول تا سه هفته دیگه به دستمون برسه و بعد از 5.5 یک ورژن جدید ‌LTS داشته باشیم، این انتظار سرانجام نداره !!!! چون لاراول داره میره روی ورژن ۶. آخه چرا؟؟؟؟


الگوی فعلی ورژن دهی لاراول چطوری هست؟
ورژن بندی لاراول بعد از سال ۲۰۱۳ تا امروز به این صورت بود:

paradigm.major.minor

طبق این الگو هر ۶ ماه یعنی ماه های ۲ و ۸ میلادی یک نسخه major ارائه می شد مثل لاراول ۵.۶ ، ۵.۷ یا آخرین اونها یعنی ۵.۸. این نسخه ها دارای تغییراتی بودند که برای ارتقا به اونها از نسخه های قدیمی می بایست upgrade note رو می خوندیم و از breaking changes ها مطلع می شدیم.

اما تقریبا هر هفته هم یک نسخه minor داده می شد که ‌breaking changes نداشتند و با خیال راحت آپدیت می کردیم و بعضی از باگ های فریمورک رو رفع می کرد آخرین نسخه minor هم از ۵.۸.۲۹ به ۵.۸.۳۰ بود.

هم چنین هر ۲ سال هم یک نسخه LTS داشتیم مثل ۵.۱ ، ۵.۵ و البته ۵.۹ که هیچ وقت release نمیشه!
تاریخچه ورژن های لاراول رو می تونیم اینجا ببینیم:

تاریخچه ورژن های لاراول
تاریخچه ورژن های لاراول


چه ویژگی جدیدی در ورژن ۶ قراره داشته باشیم؟

اتفاق جدیدی که قرار هست تا ۳ هفته دیگه برای اولین بار در کنفرانس آمستردام laraconf بیفته مربوط به نسخه paradigm میشه.

لاراول زمانی نسخه paradigm رو جا به جا می کنه که یک paradigm shifting اتفاق بیفته یعنی تغییراتی در architecture و یا conventions که این اتفاق از ورژن ۴ به ۵ انجام شد و همان طور که به یاد دارید تغییرات مهمی در ساختار لاراول ایجاد شد.

در این ۴ سال هیچ نسخه paradigm از لاراول روی github در حال توسعه نبود و هیچ توضیحی هم در مورد تغییرات احتمالی ورژن ۶ داده نشده بود و الان که همه منتظر نسخه ۵.۹ بودیم ظاهرا تا ۳ هفته دیگه و بعد از کنفرانس آمستردام نسخه ۶ رو خواهیم داشت اون هم بدون هیچ paradigm shifting روی کد ها!!!


پس چرا داره ورژن paradigm رو بالا میبره؟
دلیل اینکه لاراول داره میره روی ورژن ۶ دقیقا همین سیستم ورژن دهی خودش هست!!
قرار هست به زودی لاراول هم مثل اکثر فریمورک ها و نرم افزار های مطرح دیگه مثل react از روش استاندارد ورژن دهی SemVer استفاده کنه پس با این تغییر لاراول داره میره روی ورژن ۶.
اگر علاقه دارید می توانید روش ورژن دهی semantic versioning رو مشاهده کنید این نوع ورژن دهی باعث میشه که با سرعت بیشتری یک نسخه به این صورت داشته باشیم ۷.۰.۰ ، ۸.۰.۰ ، ۹.۰.۰ و ....

البته باید صبر کنیم تا بعد از 30 آگوست که کنفرانس ۲ روزه تموم بشه و همه چیز مشخص بشه. ( اگر پولتون میرسه میتونید با ۷۵۰ یورو با مالیات تو کنفرانس شرکت کنید ;) )
این جواب taylor otwell توی توییتر در مورد ورژن دهی جدید هست که میگه هر ۶ ماه یه ورژن major خواهیم داشت!!! (عدد کم نیاریم خوبه :دی)

شاید semver باعث بشه نگهداری از package هایی که برای لاراول نوشته میشه راحت تر بشه! چون هر ورژن major جدید یعنی دیگه با api های ورژن قبل compatible نیست!

البته همراه با ورژن ۶ لاراول از وب سایت جدیدش به علاوه لوگو جدید و هم چنین vapor رونمایی می کنه که باید جالب باشه :)