لاراول نسخه ۵.۸.۵ منتشر شد

لاراول نسخه ۵.۸.۵
لاراول نسخه ۵.۸.۵

طی چند روز گذشته نسخه ۵.۸.۵ فریم‌ورک لاراول منتشر شد. در این نسخه یک مشکل امنیتی مربوط به قانون اعتبارسنجی unique برطرف شده و همچنین آخرین تغییرات اعمال و فیچرها نیز اضافه شدند.


ابتدا، متد جدید Gate::none هر کدام از توانایی‌های داده شده برای کاربر فعلی را مشخص می‌کنه.

سپس، اِوِنت یا رویداد (Event) جدیدی به نام OtherDeviceLogout در زمانی که سایر سِشِن‌ها برای کاربر فعلی غیرقابل قبول است استارت میخوره و این اجازه ره به لیسنِرها (Listeners) می‌ده که به اِوِنت‌های خروج از سیستم برای لغوکردن توکن دسترسی کاربر، عکس‌العمل نشون بدن.

و در نهایت، مقادیر even و odd (جهت مشخص شدن زوج و فرد بودن) حالا در دسترس متغیر loop تمپلیت انجین لاراول یعنی بلِید قرار دارند.

loop variable
loop variable

نسخه ۵.۸.۵ همچنین شامل یک پچ امنیتی برای قانون اعتبارسنجی unique می‌باشد. این قانون حاوی یک SQL Injection محتمل می‌باشد که می‌توانید در وب‌لاگ لاراول مشاهده کنید.

مستندات نحوه استفاده از قانون unique را مشخص می‌کند و حاوی یک هشدار است که می‌گوید: تنها از شناسه‌های افزایش خودکار (auto-incrementing IDs) استفاده کنید.

برای جزئیات بیشتر درباره به روز رسانی ساخته شده برای پچ امنیتی، کامیت da4d4a4 را بررسی کنید.

شما می‌توانید لیست کامل اصلاحات را در زیر مشاهده کنید و همچنین تمام تفاوت‌های بین نسخه ۵.۸.۴ و ۵.۸.۵ در گیت‌هاب موجود است. بعلاوه اگر خواستید می‌توانید یادداشت‌های کامل انتشار (release notes) مربوط به نسخه ۵.۸ را نیز ببینید.

۵.۸.۵

اضافه شده:

  • متد Illuminate\Database\DatabaseManager::setReconnector گیت‌هاب: (۲۷۸۴۵#)
  • متد Illuminate\Auth\Access\Gate::none گیت‌هاب: (27859#)
  • اِوِنت unique گیت‌هاب: (۲۷۸۶۵#) و (5e87f2d)
  • پرچم‌های even و odd برای متغیر loop در بلِید. گیت‌هاب: (۲۷۸۸۳#)

تغییر کرده:

  • افزودن جایگزین برای حرف æ دانمارکی (27886#)
  • نمایش پیغام خطا از اِکسِپشن در صورت وجود (۲۷۸۹۳#) و (۲۷۹۰۲#)

اصلاح شده:

  • اصلاح منطق برای Seeding در Arr::shuffle گیت‌هاب: (۲۷۸۶۱#)
  • اصلاح متد Illuminate\Database\Query\Builder::updateOrInsert برای پذیرش مقادیر خالی. (۲۷۹۰۶#)
  • اصلاح متد Application::getNamespace گیت‌هاب: (۲۷۹۱۵#)
  • اصلاح ذخیره‌سازی آدرس‌های قبلی. (۲۷۹۳۵#) و (791992e)

موارد امنیتی: