PHP Profi

Composer
Всё о composer

ComposerComposer 2.0 уже доступен!

1/ Что нового?

Изменений и улучшений много: посмотрите полный список изменений, если вам интересно прочитать все. В этой статье я выделю несколько ключевых моментов.

Улучшения производительности

Мы пересмотрели почти все от протокола, используемого между Composer и packagist.org, до разрешения зависимостей, включая параллельную загрузку файлов с использованием curl и оптимизацию оценки ограничений. Это приводит к значительному улучшению как в скорости, так и в использовании памяти. Разница в производительности зависит от вашего варианта использования, поэтому, хоть я и видел отчеты об улучшениях более чем на 50% в некоторых проектах, назвать точную цифру не могу. Однако я уверен, если вы еще не пробовали Composer 2, то будете приятно удивлены.

В качестве дополнительного примечания к этому, require/remove и частичные обновления теперь намного быстрее, потому что Composer будет загружать только метаданные изменяемых пакетов.

Время первоначального обновления + установки (новый проект, пустой кэш) занимает примерно на 60% меньше времени при использовании Composer 2 с включенным ext-curl

2020-10-29 buggybux

ComposerУправление зависимостями и решение конфликтов в PHP через Composer

Когда вы создаете PHP-приложение или библиотеку, вы, как правило, имеете 3 вида зависимостей:

  • Жесткие зависимости: то, что требуется вашему приложению/библиотеке, чтобы работать
  • Необязательные зависимости: например, ваша PHP-библиотека может предоставлять адаптеры/бриджи для различных фреймворков
  • Зависимости для разработки: инструменты отладки, тестирования...

Как управлять этими зависимостями?

2017-12-20 alek13

ComposerComposer: Шпаргалка команд

Коротко и ясно обо всех командах Composer.

2017-01-26 alek13

ComposerSatis: Создайте свой собственный репозиторий Composer

Все мы любим Composer. Он существенно изменил способ построения PHP приложений, основанных на небольших и повторно используемых компонентах, но это создает новые проблемы, особенно, когда у нас есть единая точка отказа. С помощью Satis, мы можем сделать процесс выкладки более устойчивым, добавив резервирование для всех потенциальных точек отказа (Packagist и GitHub). Давайте посмотрим, как это работает.

2015-05-27 Systra

ComposerМонолитные репозитории для PHP и Composer

Монолитные репозитории предоставляют множество преимуществ. Я создал прототип Fiddler - дополнение для Composer, добавляющее управление зависимостями для монолитных репозиториев в PHP.

2015-05-05 irul

ComposerComposer: Всё о .lock файле

Composer является стандартом де-факто для управления зависимостями в PHP. Он прост, эффективен и уже стал вездесущ.

Каждый знает, что при использовании Composer вы просто создаёте файл composer.json со списком зависимостей и их версий, а после запускаете composer install и всё готово.

Потом вы коммитите composer.json в ваш проект и каждый разработчик вашей команды может легко установить все небходимые зависимости запустив composer install.

Конечно мы знаем и про composer update, которая обновит установленные пакеты до последний версии (опираясь на указанные версии в composer.json).

Это действительно просто. Но как насчёт файла composer.lock, который генерируется в корне проекта? Зачем ? И что нам с ним делать ?

2015-04-03 alek13