composer update 時にpackageをdownloadできない
更新:2021/05/09 作成:2021/04/30
Laravel toutounode開発記録 備忘録 composer
概要
事象:composer update
時にpackageがremote repositoryにないといわれてupdateができない
原因: 本家のPHPのライブラリリポジトリであるhttps://packagist.orgのパッケージ群がミラーサイトのhttps://packagist.jpに反映されておらず、packageをダウンロードできなかった
対策:composerが本家のリポジトリ(https://packagist.org)を参照するように変更する
経緯
GithubでLaravelの脆弱性アラートが来てたので、アップデートしようとした
composer update
時にpackageがremote repositoryにないといわれてupdateができない
# composer update
Loading composer repositories with package information
Updating dependencies
Your requirements could not be resolved to an installable set of packages.
Problem 1
- Root composer.json requires fideloper/proxy ^4.0, found fideloper/proxy[4.3.0] in the lock file but not in remote repositories, make sure you avoid updating this package to keep the one from the lock file.
Problem 2
- Root composer.json requires laravel/framework ^6.2, found laravel/framework[v6.20.14] in the lock file but not in remote repositories, make sure you avoid updating this package to keep the one from the lock file.
composerの調子が悪いのかと思って composerのドキュメントをもとにトラブルシューティング
- Troubleshooting - Composer
-> 試してみたが、問題ないことが分かった
install時または、update時の問題なので、debugオプションをつけてinstallしてみた
#composer help install
~
Options:
-v|vv|vvv, --verbose Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug
~
composer install -vvv
~~~
[404] https://packagist.jp/p2/laravel/sail.json
Downloading https://packagist.jp/p2/laravel/framework~dev.json
[404] https://packagist.jp/p2/laravel/tinker.json
[200] https://packagist.org/providers/fideloper/proxy.json
Downloading https://packagist.org/providers/fruitcake/laravel-cors.json
[200] https://packagist.org/providers/fruitcake/laravel-cors.json
Downloading https://packagist.org/providers/guzzlehttp/guzzle.json
~~~
https://packagist.jpは404でhttps://packagist.orgは200
-> つまり、ミラーサイトがおかしそう
リポジトリを本家に変えて解決!
composer config -g repos.packagist composer https://packagist.org
updateが成功し、無事laravelのアップデートができました。
# php artisan -V
Laravel Framework 6.20.26