Управление вложенными зависимостями с Composer?

Не могу понять почему не хочет работать composer: у меня есть два репозитория: Main и Second.

Main composer.json:
{
    "name":"Elfet/Main",
    "type":"library",
    "require":{
        "php":">=5.3.0"
    }
}



Second зависит от Main:
{
    "name":"Elfet/Second",
    "type":"library",
    "require":{
        "php":">=5.3.0",
        "Elfet/Main":"dev-master"
    },
    "repositories":[
        {
            "type":"git",
            "url":"http://github.com/Elfet/Main"
        }
    ]
}



Если я делаю в Second: composer install — все хорого устанавливается.


Однако если я делаю ещё один проект(зависит от Second):
{
    "require":{
        "php":">=5.3.0",
        "Elfet/Second":"dev-master"
    },
    "repositories":[
        {
            "type":"git",
            "url":"http://github.com/Elfet/Second"
        }
    ]
}



То composer не хочет работать и выдаёт следующее:
Installing dependencies

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

Problem 1

— Installation request for elfet/second dev-master -> satisfiable by Elfet/Second dev-master.

— Elfet/Second dev-master requires elfet/main dev-master -> no matching package found.




В чём проблема?
  • Вопрос задан
  • 4860 просмотров
Решения вопроса 1
Davert
@Davert
Не уверен, что это именно оно, но скорее всего…

You may run into problems when using custom repositories because Composer does not load the repositories of your requirements, so you have to redefine those repositories in all your composer.json files.

getcomposer.org/doc/faqs/why-can't-composer-load-repositories-recursively.md
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
1. Вы опубликовали elfet/second на packagist?
2. Попробуйте в третьем composer.json добавить "minimum-stability": "dev"
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы