Как скачать модуль с Drupal.org и не облажаться: Часть I

Аватар пользователя kalabro

Веб-программистам (код-ориентированным разработчикам), попавшим в мир друпала, рано или поздно приходится качать модули. Потому что...

There is a module for that.

— Я хочу добавить связь “1:M” к своим сущностям.
— Taxonomy, References.
— Я хочу вывести список сущностей...
— Views.
— … с группировкой
— Views.
— … с фильтрами и сортировками
— Views.
— …
— Views.
— Нужно, чтобы путь страницы был /catalog/notebooks/lenovo/thinkpad-e520-2130.html
— Pathauto.
— …И хлебные крошки.
— Path breadcrumbs.
— И...
https://drupal.org/project/modules

Сначала это бесит, потом привыкаешь.
Как использовать такое количество чужого кода в своём проекте и не сломать ни проект, ни себя?
Нужно качать с умом.

Нужно качать с умом

В серии статей «Как скачать модуль с Drupal.org и не облажаться» мы рассмотрим все нюансы этого нелёгкого дела.

Качайте только с Drupal.org

  • всё самое свежее;
  • минимальные риски уязвимостей;
  • автоматический поиск обновлений;
  • постоянная страница проекта в интернете;
  • стандарт версионирования и именования;
  • качество за счёт порога входа разработчиков (git, Code Review of Full Project Applications);
  • 100% Open source.

Исследуйте информацию о релизах

Перед тем, как скачивать архив с файлами, стоит обратить внимание на характеристики модуля, отмеченные на рисунке ниже:

Как скачать модуль с Drupal.org и не облажаться

1. Проверяем, есть ли зелёный релиз для вашей версии ядра и дату его выкатывания.

Если нет зелёной версии, см. Часть III «Я не уверен в модуле».

С датой релиза нет однозначной интерпретации. Однако вместе с дополнительной информацией о модуле она может говорить многое.

Как скачать модуль с Drupal.org и не облажаться

Пример 1: Если это модуль интеграции с Twitter API, который прикрыл своё API v1 7 мая 2013 г, то новый релиз должен быть достаточно свежим, уж точно от 2013 года.

Пример 2: 21 февраля 2013 г ядро друпала стало использовать токены безопасности при генерации пресетов картинок. Совершенно логично, что через некоторое время у модуля, тесно связанного с загрузкой изображений и генерацией превьюшек, выходит свежая версия.

Название релиза может содержать суффиксы:

  • unstable
    см. Часть III «Я не уверен в модуле».
  • alpha
    см. Часть III «Я не уверен в модуле».
  • beta
    Уже довольно стабильные модули, которым осталось дописать документацию, почистить стиль кода и сделать другие незначительные изменения.
    Как правило подходит для использования.
  • Отсутствие суффикса (7.x-1.0) или rc (7.x-1.0-rc1)
    Подходит для использования.

2. Проверяем, что происходит с --dev версией модуля.

Если в модуле нет новых коммитов, то он не развивается. Для небольшого модуля это нестрашно, но вообще-то не очень хороший знак.

Но если какая-то работа ведётся, это отлично — мэйнтейнеры модуля где-то рядом и в случае чего смогут помочь, закоммитить патч, выложить новую версию, подправить документацию и т.д. Ты прямо-таки чувствуешь их поддержку.

Как скачать модуль с Drupal.org и не облажаться

У большинства модулей один мэйнтейнер, человек, который имеет доступ к коду модуля. Если мэйнтейнеров больше одного, это очень хорошо. Повышается вероятность ответа на запрос в Issue queue, увеличивается объективность по отношению к пользовательским запросам. Одна голова хорошо, а две лучше.

Также стоит обращать внимание на имена авторов, смотреть в их профиле, какие у них есть заслуги. Страна должна знать своих героев!
Если автор модуля, например, fago или quicksketch, то скорее всего вы попали на страничку достойного вашего внимания проекта.
К тому же так вы сможете познакомиться с новыми людьми, например, со своим соотечественником (ну, или не совсем), создавшим интересный модуль, и пожелать ему успехов.

3. Проверяем статус проекта, указанный самими авторами.

Не все разработчики модулей указывают в этих полях реальное положение вещей.
Поводы для беспокойства:

  • Seeking co-maintainer(s) — разработчик считает модуль полезным, но сам уже не может справляться со всей нагрузкой по поддержке модуля.
    Вы можете предложить свою кандидатуру в Issue queue, предварительно проверив свои силы закрытием пары багов.
    Стабильную версию модуля при таком статусе обычно можно использовать.
  • Seeking new maintainer
    см. Часть III «Я не уверен в модуле».
  • Unsupported / No further development / Obsolete
    Проект закрыт.

4. Статистика модуля по версиям

Статистика Drupal.org даёт общее представление об использовании модуля. По этому параметру при прочих равных можно сравнить модули-аналоги.

У здорового модуля число установок должно стабильно расти.

Как скачать модуль с Drupal.org и не облажаться

Во второй части мы продолжим изучать хитрости при скачивании модулей с Drupal.org, а в третьей я расскажу, что делать, если модуль всё-таки нужен, но он выглядит недостаточно надёжно.

Комментарии

Аватар пользователя Alex Malkov

Супер руководство! Узнал кое

Супер руководство! Узнал кое-что новое для себя. Теперь буду обращать внимание еще на ряд моментов.
Спасибо большое! Ничего подобного не встречал еще. Жду продолжение...