Вы здесь

Drupal.org репозитории для composer вышли из беты

Так как множество людей используют composer для управления своими Drupal-проектами и модулями, на DrupalCon'е в Новом Орлеане (был в мае 2016) показали альфа-релиз drupal.org репозиториев для composer.

Что такое composer?

Composer это известный инструмент в PHP-мире для управления зависимостями (пакетами). Он позволяет вам объявлять зависимости для вашего проекта, управлять ими, гибко обновлять, работать с патчами и т.п. Он перенял лучшие черты npm-менеджера из мира nodejs и bundler'а из мира ruby. Инструкции по установке.

Как работают репозитории Drupal.org для composer?

Drupal.org предоставляет два репозитория, для Drupal7 и для Drupal8. А еще, composer предполагает семантическое версионирование, которое поддерживается ядром Drupal8, но не поддерживается Drupal7 и контрибными модулями D7/D8 (хотя, разговоры об этом есть: https://www.drupal.org/node/1612910). Пришлось создать фасад для этого (что такое паттерн проектирования "Фасад" вы можете прочесть на этом прекрасном ресурсе . Если вы не знали - данный ресурс делает Александр Швец, организатор первых drupalcamp в Киеве). Фасад конвертирует все проекты модулей в формат, требуемый composer для работы.

Как использовать composer для работы с Drupal.org?

Для использования вам необходимо обновить ваш composer.json файл, добавив соответствующий путь репозитория. Для drupal7 он: https://packages.drupal.org/7, для drupla8 соответственно https://packages.drupal.org/8 . Если у вас уже установлен composer, сделать это можно просто командой

composer config repositories.drupal composer https://packages.drupal.org/8

это добавит в ваш composer.json следующие строки:

{ 
    "repositories": { 
        "drupal": {
            "type": "composer",
            "url": "https://packages.drupal.org/8" 
        }
    }
}

Сделав это, вы сможете использовать composer для модулей и тем, с помощью drupal как namespace, :

composer require drupal/<modulename>

Больше информации по использованию composer на странице https://www.drupal.org/node/2718229 .

В будущем решение будет дорабатываться, в т.ч. следующие цели:

  • Использование composer для дистрибутивов и инсталяционных профилей
  • Обновление страниц проектов (модулей) для предоставления большей информации о работе с composer, статистикой по использованию, оповещению о внешних зависимостях
    и др. (весь список в оригинальной статье).

На dru.io представлен краткий (очень вольный) перевод, сама новость: https://www.drupal.org/drupalorg/blog/drupalorgs-composer-endpoints-are-...

3
1
22.12.2016 - 22:33

Комментарии