Laravel 10: Стоит ли обновлять?

Источник: «Laravel 10: the mindful upgrade guide»
Давайте выясним действительно ли вам нужно обновлять своё приложение до Laravel 10? Или можно не спешить и сделать это в удобный момент?

Мажорные релизы Laravel с годами становятся всё меньше и меньше.

Но в Laravel 10 много изменения и я писал о них в статье Laravel 10: Дата выхода и новые возможности.

Laravel 9 всё ещё поддерживается и у нас есть:

Теперь когда вы об этом знаете, окупаемость инвестиций по-прежнему того стоит?

Обновлять до Laravel 10 имеет смысл, если:

Не имеет смысла переходить на Laravel 10, если:

Если вы решили обновить проект после прочтения, то сделайте это! Наверное, это правильное решение.

Но если вы придерживаетесь осторожного подхода, воспользуйтесь двухлетней поддержкой, которая есть у Laravel 9, для подготовки к обновлению.

Как обновить Laravel 9 на Laravel 10

Убедитесь, что сторонние пакеты Composer поддерживают Laravel 10

Поддерживаются ли сторонние пакеты (использующие библиотеки Laravel), используемые в вашем приложении, Laravel 10?

Для ответа на этот вопрос, перейдите на Packagist, введите имя пакета и посмотрите, получал ли он последние обновление. В списке зависимостей вы должны увидеть "ìlluminate/что-то": "^10.0".

Возьмём, к примеру, spatie/laravel-permissions — один из самых популярных пакетов для Laravel.

На скриншоте ниже видно, что он поддерживает Laravel 7, 8, 9 и 10.

Как узнать требования стороннего пакета

Если нет ни каких признаков, что используемы пакеты были обновлены для Laravel 10, подождите немного, прежде чем обновлять свой проект.

Однако некоторые люди не настолько терпеливы.

К счастью, добавление поддержки Laravel 10 для пакета Composer в большинстве случаев связано с изменением ограничений версии ìlluminate/что-то в composer.json, поэтому в наши дни не так много критических изменений между обновлениями:

{
"require": {

- "illuminate/support": "^9.0",
+ "illuminate/support": "^10.0",

}
}

Вы можете создать Pull Request, чтобы помочь разработчику поддерживающему пакет, или создать свой fork пакета и внести изменения самостоятельно.

Следуйте руководству по обновлению

Нет никаких хитростей в обновлении Laravel приложения. Вам нужно следовать инструкциям в руководстве по обновлению

Эти инструкции, обычно, заключаются в следующем:

  1. Измените минимальную версию для данной зависимости
  2. Измените строку в указанном файле.
  3. Метод изменил свои параметры или возвращаемое значение. Проверьте, используете ли вы его, и внесите необходимые изменения.
  4. Ранее устаревший класс или метод были удалены, используйте что-то другое (руководство всегда предлагает альтернативы).

В зависимости от размера кодовой базы, насколько она хорошо протестирована и даже от количества проектов, которые вам нужно обновить, это может занять много времени.

Дополнительные материалы

Предыдущая Статья

XSS: Контексты межсайтового скриптинга

Следующая Статья

JavaScript: Более безопасное чтение и запись URL