5.5のサポートが2020年8月30日で終了するので、アップグレードしておくことに。
数字だけ見ると大きくアップグレードしているように見えるがlaravel6移行はセマンティックバージョニングが採用されたようで、実際はそれほど大きな変更ではないようです。
ここではセマンティックバージョニングについては触りませんが、qiitaにわかりやすく解説してくださっている記事があったのでリンク貼っておきます。
Laravel 5.5 → 5.8
以下の記事を参考にした。
Laravel6に備えて5.5から5.8へアップグレード
特に問題なし。
以下ファイルを追加しておくのを忘れないように。
logging.php
hashing.php
Laravel 5.8 → 6.1.8
以下公式の記事を参考
Laravel 6.x アップグレードガイド
特に問題なし。
composer updateをして終わり。
直接関係はないが、deployerでデプロイする際に以下エラーを出力するようになった。
The command "cd /var/www/comdesk-api-staging/releases/5 && /usr/bin/php /usr/bin/composer install --verbose --prefer-dist --no-progress --no-interaction --no-dev --optimize-autoloader --no-suggest" failed.
devのパッケージが必要。
deploy.phpにcomposer実行時のオプションを上書きする。
set('composer_options', 'install --verbose --prefer-dist --no-progress --no-interaction --optimize-autoloader');
Laravel 6.1.8 → 7.16.1
session.phpとcache.phpで使われている「str_slug」を静的にメソッドで呼び出すように変更
composer updateを行う前にこちらの対応をしないとcomposer installでエラーになるので気をつけよう。
'cookie' => env('SESSION_COOKIE',str_slug(env('APP_NAME', 'laravel'), '_').'_session'
),
'cookie' => env('SESSION_COOKIE', Str::slug(env('APP_NAME', 'laravel'), '_').'_session'),
サードパーティのライブラリがないため、比較的スムーズに移行することが出来た!