Буду рассказывать про правильную готовку Composer на Podlodka PHP Crew 27 февраля. Сразу за мной Дмитрий Дерепко из команды Yii3 расскажет «Инструменты для работы с кодом: код-стайл, зависимости, рефакторинг». В другие дни также очень интересные доклады.
Все заметки с тегом «Composer»
-
Готовим Composer @ Podlodka PHP Crew
21 февраля 2023
Комментировать -
composer для продакшна
2 февраля 2022
КомментироватьПродакшн можно разворачивать многими способами. Один из них — когда код попадает на сервер отдельно, а зависимости ставятся запуском
composerуже на месте.В этом случае важно:
- Коммитить в репозиторий
composer.lock. - Делать только
composer install, ни в коем случае неupdate. - Не забывать оптимизировать автозагрузку. Предпочтительней флагом
--classmap-authoritativeили соответствующей опцией вcomposer.json. - Не забывать флаг
--no-devчтобы не ставить зависимости изrequire-dev. - Указать ту же версию PHP, что используется на сервере, в platform.
- Коммитить в репозиторий
-
Composer: чем отличается require от require-dev
14 января 2020
2 комментарияВ
requireдобавляются зависимости, которые необходимы для работы пакета.В
require-devдобавляются зависимости, которые нужны для разработки самого пакета. Например,phpunit/phpunit. Опцияrequire-devявляетсяroot-onlyопцией, то есть она не читается и зависимости из неё не ставятся когда пакет устанавливается не напрямую, а как зависимость корневого пакета-проекта.То же можно сказать и о ряде других опций
composer.json:autoload-dev, куда стоит прописывать namespace для тестов.minimum-stability.prefer-stable.repositories.config.scripts.
-
Ставим форк зависимости Composer вместо оригинала
14 апреля 2019
КомментироватьВ ожидании вмерживания pull request хочется продолжать работать и дать работать коллегам. Сделать это в случае Composer не так сложно:
{ "minimum-stability": "dev", "repositories": [ { "type": "git", "url": "https://github.com/markuspoerschke/graph-composer.git" } ], "require": { "clue/graph-composer": "dev-add-options-to-exclude" } }
- Добавляем
repositories, прописываем туда URL репозитория с форком. - В
requireменяем версию наdev-название-ветки.
- Добавляем
-
Yii: релизный вторник
12 апреля 2019
4 комментарияРешил каждый вторник посвящать релизам Yii. Смотреть что бы нарелизить из официальных пакетов Yii и, собственно, релизить. Начну со следующей недели.
Первые несколько вторников обещают быть напряжёнными, но далее пойдёт лучше потому как мелкие частые релизы делать проще и понятней.
-
Yii, fxp и Asset packagist
12 августа 2016
26 комментариевКогда Composer ещё не стал стабильным, API его довольно часто менялось. Из за этого отваливались плагины. Одним из самых ярких примеров был постоянно ломавшийся
fxp/composer-asset-plugin, используемый в Yii 2.0 и попивший немало крови. С релизом Composer проблема практически ушла, но к Yii 2.1, из за скорости установки и самой необходимости ставить плагин, было решено исследовать альтернативы. fxp, как и прежде, работает не быстро. -
Yii 2.0: не скачиваем клиентские пакеты
6 апреля 2016
25 комментариевПри разработке Yii 2.0 мы сделали ошибку, включив в ядро по умолчанию клиентские пакеты вроде jQuery. В большинстве случаев это не доставляет проблем, но вот когда разрабатывается исключительно API, а пакеты всё-равно скачиваются и занимают место, возникает некое чувство дискомфорта.
В 2.1 мы попробуем это решить, а пока можно воспользоваться средствами Composer прописав следующее в своём главном
composer.json:"provide": { "bower-asset/jquery": "*", "bower-asset/jquery.inputmask": "*", "bower-asset/punycode": "*", "bower-asset/yii2-pjax": "*" },
UPD: есть и в готовом виде: https://github.com/cebe/assetfree-yii2
-
Composer 1.0.0
5 апреля 2016
1 комментарийСостоялся стабильный релиз Composer-а. С beta-1 интересные изменения следующие:
installавтоматически делаетupdateесли нетcomposer.lock.removeудаляет зависимости.self-updateможно запустить с ключами--snapshot,--previewили--stableчтобы получить обновления соответствующей стабильности.
Полный changelog есть на GitHub.
Анонс можно прочитать в блоге автора.
Всех поздравляю с этим замечательным событием. Инфраструктура PHP, наконец, добралась до stable ;)
-
Composer 1.0.0-beta1
4 марта 2016
13 комментариевJordi Boggiano выпустил первую бета-версию Composer. Да, мы действительно до этого пользовались бесконечными альфа-версиями. Они работали, но иногда ломались.
Кроме того, что это может означать более стабильные релизы, добавились и новое возможности.
-
Как поставить расширение на Yii 2.0 без Composer
24 февраля 2015
22 комментарияНе первый раз спрашивают, как поставить расширение Yii 2.0 без Composer. Отвечаю.
Ставить будем yii2-imperavi-widget.
- Идём в https://github.com/vova07/yii2-imperavi-widget/releases, забираем архив.
- Смотрим его
composer.json. - Там у нас есть секция autoload, в ней упоминание PSR-4 и
vova07/imperavi. - Распаковываем файлы в
vendor/vova07/imperavi. - В
vendor/composer/autoload_psr4.phpдобавляем:
'vova07\\imperavi\\' => array($vendorDir . '/vova07/imperavi/src'),
- В
vendor/yiisoft/extensions.phpдобавляем:
'vova07/imperavi' => array ( 'name' => 'vova07/imperavi', 'version' => '2', 'alias' => array ( '@vova07/imperavi' => $vendorDir . '/vova07/imperavi/src', ), ),
Всё это делает за вас Composer. Лучше изучите его и не теряйте время.


