В Composer нет штатного инструментария для работы с ресурсами/asset.
Есть несколько более-менее популярных решений со своими достоинствами и недостатками.
libra/libra-assets-installer — умер и оживлению не подлежит.
robloach/component-installer — отлично подходит для раздачи собственных ресурсов. Но задача чаще стоит в том, чтобы подключать сторонние пакеты, в первую очередь — bower. Можно, конечно, собирать свои сборки, даже автоматизировать процесс, но придётся постоянно следить за выходом новых версий. Когда пакетов становится хотя бы десяток, это уже утомительно.
Есть средства для работы напрямую с bower-asset:
fxp/composer-asset-plugin — очень популярное решение, отчасти из-за простоты использования, отчасти из-за использования в Yii. Минус в очень долгой работе и необходимости первого глобального включения (или в новых версиях composer/plugin стали такое разруливать? — давно не натыкался на ошибку зависимостей, но специально руки не доходили проверить). Главный же для меня минус — это то, что пакет из bower тянется целиком. Со всеми исходниками, примерами, документацией... Иногда они занимают место в десятки раз больше, чем сами рабочие файлы .min.js/.min.css... И всё это вываливается на боевой сервер!
asset-packagist.org — практически то же самое решение, даже совместимое по форматам, только требует указания отдельного репозитория, что в дополнительный минус, но работает быстро, что в плюс. Главный же минус загрузки уймы мусора остаётся таким же.
Так вот, у меня возникает вопрос. Может, я что-то упустил? Может, есть решения, типа fxp/composer-asset-plugin/asset-packagist.org, но позволяющие на уровне пакета (не composer.json проекта!) указать дополнительно, какие файлы и каталоги нужно реально задействовать из bower-пакета? Или есть какое-то решение третьего типа?
1. Balancer - 24 Октября, 2016 - 23:52:38 - перейти к сообщению
2. caballero - 25 Октября, 2016 - 11:36:38 - перейти к сообщению
лично я считаю что больше одного манагера пакетов в проекте - моветон. NuGet как то справляется без проблем и с серверными и с клиентскими либами.
Посему никаких боверов.
свой файлик инсталера на событиях композера.
поскольку это php то какая разница какие файлы править конфиги или PHP код, зато максимальная гибкость
Посему никаких боверов.
свой файлик инсталера на событиях композера.
поскольку это php то какая разница какие файлы править конфиги или PHP код, зато максимальная гибкость
3. Balancer - 25 Октября, 2016 - 13:24:53 - перейти к сообщению
caballero пишет:
Посему никаких боверов.
bower [как пакетный менеджер] в теме и не упоминается