Советы PHP-разработчика

Блог содержащий короткие заметки касающиеся программирования для web.

Инструмент для визиализации зависимстей composer-а

Инструмент для визиализации зависимстей composer-а

Сегодня я поведаю рассказ о замечательнейшем композер пакете `clue/graph-composer`, который позволяет строить зависимости пакетов и версий композер пакетов, что является очень актуальным при работе с большими проектами или проектами с большим количеством контрибьютеров. В общем в тех случаях, когда следить за пакетами и зависимостями проекта становится сложновато.

Установка clue/graph-composer на Ubuntu

Существует несколько вариантов инсталляции. Я приведу рекомендованный способ.

Все очень просто. Сначала устанавливаеи GraphViz. Далее скачиваем последнюю версию пакета со страницы релизов на github, устанавливаем права на запуск от всех пользователей и переносим в `/usr/local/bin`.

sudo apt-get install graphviz
wget https://github.com/clue/graph-composer/releases/download/v1.0.0/graph-composer.phar
chmod 0755 graph-composer.phar
sudo mv graph-composer.phar /usr/local/bin/graph-composer

Как использовать

graph-composer имеет несколько режимов работы. Это две команды:

  • show (построение схемы) cоздает граф зависимостей и открывает ее в программе просмотра изображений по умолчанию
  • export (экспорт в файл) работает аналогичным образом, но вместо запуска открытия "просмотрщика" она записывает вывод в файл. В отличае от предыдущей команды тут необходимо задать имя файла в который будет осуществлен экспорт

Обе команды могут принимать параметр --format=[svg/svgz/png/jpeg/dot/...].

При вызове show или export вы можете передать путь до директории с файлом composer.json. Если этого не сделать, то поиск файла будет осуществляться в текущей папке.

Пример экспорта графа зависимостей, как png изображение на основе файла проекта ~/path/to/your/project/composer.json:

graph-composer export --format=png /path/to/your/project /path/to/your/export/dir/export.png

Вызов команды просмотра графа выглядит аналогично.

graph-composer show --format=svg /path/to/your/project

Подробную документацию о пакете и последнюю версию можно узнать на странице проекта.

  • 2016-02-15 18:03:58