2013-04-29 4 views
0

Для нашей пользовательской CMS мы извлекли все из разных модулей, это включает в себя все: от пользовательской системы, менеджера ролей, редактора страниц, системы тем и т. Д.Должен ли я создать композитный пакет зонтика?

Некоторые из них необходимы для запуска системы в первую очередь.

Так что наш композитор.json уже имеет около 15 различных «требований» на месте.

Теперь, мне интересно, было бы лучше создать пакет umberella, этот пакет не будет содержать ничего, но для этого потребуются все разные кусочки.

Таким образом, вместо того, чтобы 15 различных требуют, мы могли бы просто иметь

{ 
    "require": { 
     "cms/core": "1.0.*" 
    } 
} 

оборотной стороны, я вижу, если это для каждого обновления для любого пакета под зонтом мы должны обновить версию для пакета зонтика, а это означает, что в то время как самая высокая часть в рамках может составлять всего 2,7,34, то зонтик вполне может быть на уровне 26.12.116 или аналогичным.

Если мы действительно создали пакет зонтиков, как мы должны это делать? просто пакет требует всех пакетов как *? будем ли мы сталкиваться с проблемами совместимости?

+2

Вы должны не только догадываться, но и пытаться, а затем сообщать, как это сработало для вас. Вы пытались создать такой зонтичный пакет? Это работало? Автозагрузчик все еще работает для вас? И все эти подробные вопросы, которые будут всплывать, если вы столкнетесь с фактической работой. Итак, проверьте свои собственные, прежде чем просить в целом, детали придут от одного, и пользователи здесь не могут сказать для вашего кода. Также о нумерации версий: Решите, как * вы * хотите версия основного пакета –

+0

@ M8R-1jmw5r Я согласен, и я сообщаю, как это работает, я надеялся, что вы будете делать проблемы с этим, у вас есть групповое собрание для обсуждения проекта, прежде чем вы начнете его. – Hailwood

+0

Stackoverflow не подходит для таких групповых встреч. Это голые Q и A с низким уровнем шума, что означает: Нет (или очень мало это вообще) обсуждение, отсутствие формирования мнения. По уважительной причине. Что касается версий, то здесь есть место, где некоторые люди уже сформировали мнение: http://semver.org/ –

ответ

2

Вы можете сделать это и установить type в metapackage также, если он действительно не содержит файлов. Это может сделать жизнь вашего пользователя проще.

То, что я рекомендовал бы, хотя в том, что вам требуется: 1.0.* каждого суб-пакета, а затем, когда вы врезаться все, чтобы 1.1 вы смените 1.1.* и помечать cms/core 1.1.0. Это если у вас все версии более или менее синхронизированы.

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