【问题标题】:Cannot upgrade to Symfony 3 because of a dependency由于依赖关系,无法升级到 Symfony 3
【发布时间】:2016-01-16 22:37:51
【问题描述】:

我正在尝试从 Symfony 2.8 升级到 Symfony 3,但我无法从 Composer 更新它。

我收到此错误:

hellogerard/jobby dev-master requires symfony/process ^2.7 -> satisfiable by symfony/process[v2.7.0 ... blabla bla v2.8.2]

当我查看我需要的这个库的 composer.json 文件时,我看到了这个:

  "require": {
    (...)
    "symfony/process": "^2.7"
  },

你可以在这里找到 Jobby 的作曲家文件:https://github.com/jobbyphp/jobby/blob/master/composer.json

问题是在 Symfony 3 中,symfony/process 版本是 3.0,并且由于 Jobby 的 composer.json 上的“^2.7”,我无法获取它。我知道 symfony/进程没有向后兼容性问题,那么我该如何解决/忽略该问题?

问候

【问题讨论】:

  • 创建具有固定依赖关系的hellogerard/jobby 的分支
  • 感谢您的建议,我正在努力解决
  • 仅供参考,我创建了a pull request 以允许使用 Symfony 3 组件(在 PR 合并之前,您可以使用我的 repo 分支)。

标签: symfony composer-php symfony-process


【解决方案1】:

创建您自己的分支并在基础存储库上发出拉取请求。

如果使用symfony/process:3.0请求的包没有BC-break, 只需在 fork 的 composer.json 中将包版本从 ^2.7 更改为 ^3.0>=2.7

编辑
然后,告诉作曲家使用你的 fork 进行安装,如下所示:

"repositories": [
    {
        "type": "vcs",
        "url": "https://github.com/yourusername/jobby"
    }
],
"require": {
    "hellogerard/jobby": "dev-master"
}

VCS Repositories documentation

【讨论】:

  • 永远不要在 packagist 上发布临时分叉。您可以直接向您的 fork 提示作曲家。
猜你喜欢
  • 2021-03-11
  • 2022-06-17
  • 1970-01-01
  • 1970-01-01
  • 2013-05-19
  • 1970-01-01
  • 1970-01-01
  • 2015-09-22
  • 1970-01-01
相关资源
最近更新 更多