php composerでバージョンを指定してrequireする
ここ最近PHPのプロジェクトに参加していて、基本的にLaravelを使ってる。
んで、新しいプロジェクトは最新のLaravelを使うからいいんやけど、
つい最近のプロジェクトでも過去のLaravelを使いまわしてたりして古かったりする。
そうすると、laravel-ide-helperのバージョンが合わないということが発生する。
それに対応するために必要なバージョンを指定してreuqireすることになったので、そのことを備忘として残しておく
バージョンの指定方法
指定するだけなら簡単。
composer require --dev barryvdh/laravel-ide-helper:v2.8.0
普段は最新版を入れるので、
composer require --dev barryvdh/laravel-ide-helper
で十分。
適切なバージョンの特定方法
これが難しい。
まずgithubのreleaseに使ってるLaravelのバージョンに対応しましたーというリリースをみつけようとしたけど、
そこまでしっかりリリースログが書かれていなかった。
次にみたのがPackagist。
こっちには必要条件が書かれている。
例えば、今使っているPHPが7.2Laravelのバージョンが5.8だとする。
この記事を書いてる時点での最新のide-helperは2.8.1で illuminate/console が6以上ってことで、Laravel5.8出は使えない。
そして一つ前の2.8.0をみると、phpバージョンもconsoleバージョンも満たしている。
じゃあ2.8.0だ!
ってことで、やってみるとエラー。
どうも関連ライブラリの依存してるPHPが7.3以上らしい。
うおーい。
ってことでもういっこ前の2.7.0を試した。
成功。
これはあれだ良い方法ないわ。
更新履歴
2020/11/25 公開