2013-08-13 5 views
9

Попытка установить KnpGaufretteBundle в проекте Symfony 2.3, мне не повезло. Проблема заключается в следующем:Композитор: как установить пакеты `dev` в Symfony 2.3?

  1. minimum-stability:stable (in composer.json);
  2. комплект я требую dev-master версия все еще.

Чтение this в документации Symfony был разочарованием:

Если вы знаете прохладную пачки или библиотек PHP, которая все еще требует DEV минимальной стабильности, поговорить с ведущим разработчиком и убедить его, чтобы пометить стабильный релиз.

Я не изменяя минимальную стабильность проекта в целом к dev, как это было бы, конечно, сделать огромный беспорядок - я имею в виду, я не могу использовать стабильные пакеты и пакеты Dev Бок боковая сторона?

Возможно, мне что-то не хватает о композиторе?


Edit (14 августа 2013)

Согласно ответу Sven «s ниже, я отредактировал мой composer.json (вы можете найти его here) и он начал работать. Во всяком случае, это частичное решение, потому что inline-псевдонимы не работают для зависимостей, поэтому в моем случае я должен сначала указать все зависимости «менее-стабильных» пакетов и их псевдонимы один за другим.

ответ

29

просто использовать

"knplabs/knp-gaufrette-bundle": "[email protected]" 

, если вам потребуется последняя Dev версия

Вы также можете изменить минимальное-стабильность Деву и добавить "предпочитают стабильный": истинный, как это:

"minimum-stability": "dev", 
"prefer-stable": true, 

, тогда композитор всегда будет пытаться найти стабильную версию, и если ничего не найдено, установите dev, так что ваши пакеты symfony будут по-прежнему стабильными. Но в вашем случае композитор установит v0.1.4 (последняя стабильная версия knplabs/knp-gaufrette-bundle), поэтому вам нужно dev-master @ dev в любом случае. предпочтительный-стабильный - это просто намек для вас.

+0

Отличный ответ ... –

1

Посмотри псевдонимы: http://getcomposer.org/doc/articles/aliases.md

Они должны позволить Вам обратиться в отделение (которое по определению всегда в развитии, потому что вы можете получить доступ только к последней фиксации) таким образом, чтобы эта отрасль должна быть логическим расширением тега версии.

Для еще немаркированного проекта правильная версия предполагаемого тега будет выглядеть как «0.0.0».

Вы должны попробовать встроенный псевдоним для комплекта.

+0

Отредактировал мой вопрос - thx для информации.В любом случае изменение строки версии (см. Раздел) от dev-master до 0.0.0 (или 2. *, в соответствии с секцией 'extra') ничего не изменило –

+0

Глупо меня: я обновлял неправильный композитор.json. Фактически, 'dev-master as 0.0.0' на этом комплекте и его зависимости действительно решают проблему. Я принимаю другой ответ, хотя, поскольку он более гибкий (нет необходимости указывать зависимые от псевдонимов). Спасибо большое! –

Смежные вопросы