composer官方在2020-10-24发布composer2,包处理能力整体提升不少;同时prestissimo项目推荐使用composer2, 并且支持范围限定在2.0以下版本。官方博客中提到composer2.x虽然支持PHP5.6等低版本,后续composer2.x版本会要求PHP在7.0以上主流版本;推荐升级PHP版本,毕竟PHP8都出来了。

composer2升级:

1
composer self-update --2

composer2新增runtime特性,其中plaform check功能会检查当前PHP版本,如果PHP版本符合包的要求会报错,具体特性参考官方博客

注意:阿里云和腾讯云composer镜像存在一定几率异常,优先使用官方镜像


composer是PHP项目包管理利器,由于墙的原因导致包下载速度缓慢;composer全量镜像主要有phpcomposer、laravel-china和新开放的阿里云。阿里云最近开放composer镜像仓库,大大减少包下载的速度。笔者推荐阿里云+prestissimo组合方式。

腾讯云也跟随阿里的脚步开放composer全量镜像仓库, 官网配置, 阿里的composer偶尔也会抽筋,可能与本地网络有关 :)

laravel-china全量镜像仓库将会在两个月左右关闭,具体移步阅读

#阿里云composer配置

1
2
3
4
全局安装(推荐): composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/

取消配置: composer config -g --unset repos.packagist

这里使用composer下载包时使用-vvv参数显示进度详情,能有有一个直观的体现。

#prestissimo并发加速

prestissimo是一个并发下载的composer插件,通过使用curl_multi*系列方法并发请求包,一定程度节约时间。

1
2
安装: composer global require hirak/prestissimo
卸载: composer global remove hirak/prestissimo

#参考:

  1. prestissimo仓库
  2. 阿里云Composer全量镜像
  3. 腾讯云Composer全量镜像
  4. composer2

评论