think-api icon indicating copy to clipboard operation
think-api copied to clipboard

guzzle 与 阿里云sdk 的 guzzle 版本冲突

Open SuSuSoo opened this issue 3 years ago • 1 comments

安装时报错:

shell : composer req "topthink/think-api:^1.0"

Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - topthink/think-api[v1.0.0, ..., v1.0.3] require guzzlehttp/guzzle ^7.0 -> found guzzlehttp/guzzle[7.0.0, ..., 7.4.1] but the package is fixed to 6.4.1 (lock file version) by a partial update and that version does not match. Make sure you list it as an argument for the update command.
    - topthink/think-api[v1.0.4, ..., v1.0.23] require guzzlehttp/guzzle ^6.5 || ^7.0 -> found guzzlehttp/guzzle[6.5.0, ..., 6.5.5, 7.0.0, ..., 7.4.1] but the package is fixed to 6.4.1 (lock file version) by a partial update and that version does not match. Make sure you list it as an argument for the update command.
    - Root composer.json requires topthink/think-api ^1.0 -> satisfiable by topthink/think-api[v1.0.0, ..., v1.0.23].

Use the option --with-all-dependencies (-W) to allow upgrades, downgrades and removals for packages currently locked to specific versions.

Installation failed, reverting ./composer.json and ./composer.lock to their original content.

通过查看依赖发现与阿里云sdk不兼容

shell composer show --tree


alibabacloud/client 1.5.18 Alibaba Cloud Client for PHP - Use Alibaba Cloud in your PHP project
├──adbario/php-dot-notation ^2.2
│  ├──ext-json *
│  └──php >=5.5
├──clagiordano/weblibs-configmanager ^1.0
│  └──php >=5.4
├──danielstjules/stringy ^3.1
│  ├──php >=5.4.0
│  └──symfony/polyfill-mbstring ~1.1
│     └──php >=5.3.3
├──ext-curl *
├──ext-json *
├──ext-libxml *
├──ext-mbstring *
├──ext-openssl *
├──ext-simplexml *
├──ext-xmlwriter *
├──guzzlehttp/guzzle ^6.3
│  ├──ext-json *
│  ├──guzzlehttp/promises ^1.0
│  │  └──php >=5.5.0
│  ├──guzzlehttp/psr7 ^1.6.1
│  │  ├──php >=5.4.0
│  │  ├──psr/http-message ~1.0
│  │  │  └──php >=5.3.0
│  │  └──ralouphie/getallheaders ^2.0.5 || ^3.0.0
│  │     └──php >=5.6
│  └──php >=5.5
├──mtdowling/jmespath.php ^2.4
│  └──php >=5.4.0
└──php >=5.5

能否增加对 guzzle 6 的兼容以兼容其他库?

SuSuSoo avatar Feb 22 '22 06:02 SuSuSoo

或者改为使用 php-curl-class/php-curl-class 替代 guzzle ?

php-curl-class/php-curl-class

SuSuSoo avatar Feb 22 '22 06:02 SuSuSoo