symfony – composer如何处理同一个包的多个版本?

这可能(应该)在某个地方被问过,但我似乎无法找到答案.如果有人提供链接,我可以删除这篇文章!:

只是试图让我的头脑周围的一些作曲家(可能也适用于其他包经理)的功能.

基本上我只是想知道作曲家在以下场景中做了什么:

1.

我的主项目有一个依赖:

"guzzlehttp/guzzle": "5.0.*",

我的外部捆绑包依赖于

"guzzlehttp/guzzle": "5.0.*",

作曲家一次安装guzzlehttp / guzzle是因为它知道它只需要一次吗?

2.
相同的情况,但将来如果有人更新要使用的主项目:

"guzzlehttp/guzzle": "6.0.*",

作曲家现在会安装两个版本的guzzle(5和6)(我认为这是它应该做的),还是会采用最高版本(即6)?此外,如果有2个版本,这会导致任何冲突,因为名称空间可能是相同的吗?

谢谢

问题1

是Composer只能安装每个扩展/包的一个版本.

问题2

由于答案1:Composer会认为您的主项目和外部包不兼容.

在这种情况下你可以

>也可以在主项目中使用第5版.>如果兼容,请要求外部包所有者升级到版本6.> fork外部包并使其与版本6兼容

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...