個人開発プロジェクトのLaravelのバージョンを6から8に上げる時にやったこと


はじめに

個人で開発中のプロジェクトで練習のためLaravelのバージョンを6.2から8にアップデートしたので、その時行った事を公開します。

参考サイト

アップグレードガイドを主に参考にしました。
6から8に上げるため、7の物も参考にしています。

依存パッケージ

上記のアップグレードガイドを元に依存パッケージを更新しました。
更新した項目は以下の通りです。
- nunomaduro/collisionを^3.0から^4.1へ
- phpunit/phpunitを^8.0から^9.0
- laravel/frameworkを^6.2から^8.4へ
- facade/ignitionを ^1.4から^2.3.6へ
- laravel/uiを1.0から^3.0へ

シーダーとファクトリの名前空間

元々database/seedsのディレクトリ名をdatabase/seedersに変更しました。
また、バージョン8からシーダとファクトリに名前空間が追加されたので、seederとfactoryにそれぞれ以下の名前空間を追加しました。
- namespace Database\Seeders;
- namespace Database\Factories;

composer.jsonのオートロードの設定を変更しました。

composer.json(変更前)
"autoload": {
    "psr-4": {
        "App\\": "app/"
    },
    "classmap": [
        "database/seeders",
        "database/factories"
    ]
},
composer.json(変更後)
"autoload": {
    "psr-4": {
        "App\\": "app/",
        "Database\\Factories\\": "database/factories/",
        "Database\\Seeders\\": "database/seeders/"
    }
},

ルーティング

Laravel8のルーティングを参考にapi.phpを変更します。
ここが変更としては一番変更箇所が多かったです。

おわりに

以上です。
意外と変更箇所は少なくすみました。
Laravelはドキュメントが丁寧なので、基本的にドキュメントに沿って変更しておけば良さそうです。

みなさんも 「こんな変更したよ!」とか 「ここ大変だった」みたいなのがあれば、コメントください!