Вышла новая версия Laravel 10.9
Laravel 10.9 — новая версия популярного PHP-фреймворка


Команда разработчиков Laravel выпустила версию 10.9

Команда Laravel 26 апреля 2023 года выпустила версию 10.9 с рядом новых возможностей и улучшений. Среди изменений: именованные статические методы для middleware, новые HTTP статусы для тестирования функций, а также возможность удаления всех отмененных и незавершенных пакетов очереди.

Кроме того, Ignition IDE поддерживает работу с командой artisan serve, которая позволяет открывать файлы в IDE, кликнув на имя файла, отображаемое на странице ошибки Ignition.

Перейдем к более подробному рассмотрению функций и изменений, представленных в Laravel 10.9.

Именованные статические методы для Middleware в Laravel 10.9

Tim MacDonald продолжил улучшение альтернативных "более PHP-шных" способов определения маршрутов для middleware. Вот несколько примеров из Pull Request #46362:

Route::get('users', UserController::class)
    ->middleware([
        Authenticate::class, // default.
        Authenticate::using('web'), // specify a guard.
        Authenticate::using('web', 'another'), // specify multiple guards.
 
        Authorize::using('store', Post::class),
 
        EnsureEmailIsVerified::class, // default.
        EnsureEmailIsVerified::redirectTo('route.name'),
    ]);

Новые определения HTTP заголовков в Laravel 10.9

Miran AL Mehrab предложил три новых HTTP статуса для написания функциональных тестов в Laravel:

$response->assertGone(); // 410
$response->assertInternalServerError(); // 500
$response->assertServiceUnavailable(); // 503

Разрешение удаления всех отмененных и незавершенных пакетов очереди в Laravel 10.9

James Hulse внес обновление в queue:prune-batches, которое позволяет удалять незавершенные и отмененные пакеты с помощью флагов --infinished=0 и --cancelled=0. Теперь код будет проверять наличие ненулевых значений. Более подробную информацию смотрите в Pull Request #46833.

Настройка связей IDE Ignition с artisan serve в Laravel 10.9

Niclas внес вклад в возможность передавать IGNITION_LOCAL_SITES_PATH команде artisan serve, что позволяет открывать файлы в вашей IDE, кликая на имя файла, отображаемое на странице ошибки Ignition.

Более подробную информацию смотрите в Pull Request #46857.

Примечания к выпуску Laravel 10.9

Полный список новых функций и обновлений можно посмотреть ниже, а разницу между версиями 10.8.0 и 10.9.0 - на GitHub. Нижеприведенные примечания к выпуску взяты непосредственно из журнала изменений:

v10.9.0

Добавлено

  • Добавлены новые статусы состояния HTTP (#46841)
  • Возможность удаления всех отмененных и незавершенных пакетов очереди (#46833)
  • Добавлен IGNITION_LOCAL_SITES_PATH в $passthroughVariables в ServeCommand.php (#46857)
  • Добавлены именованные статические методы для middleware (#46362)

Исправлено

  • Исправлено правило date_format, при котором возникало ValueError (#46824)

Изменено

  • Возможность использования отдельного каталога для блокировок в файловом хранилище (#46811)
  • Разрешение работы whereMorphedTo с пустой моделью (#46821)
  • Использование модели pivot fromDateTime вместо использования Carbon в Illuminate/Database/Eloquent/Relations/Concerns/InteractsWithPivotTable::addTimestampsToAttachment() (#46822)
  • Метод rules в FormRequest стал необязательным (#46846)
  • Исключение LogicException при вызове FileFactory@image(), если mimetype не поддерживается (#46859)
  • Улучшение метода освобождения задания для приема экземпляра даты (#46854)
  • Использование foreignUlid, если модель содержит признак HasUlids, при вызове foreignIdFor (#46876)

Перевод с английского официальных новостей Laravel:
https://laravel-news.com/laravel-10-9-0

Заберите ссылку на статью к себе, чтобы потом легко её найти!
Раз уж досюда дочитали, то может может есть желание рассказать об этом месте своим друзьям, знакомым и просто мимо проходящим?
Не надо себя сдерживать! ;)

Старт! Горячий старт на просторы интернета
Старт! Горячий старт на просторы интернета
Старт! Меню