[Перевод] Расцвет Composer и закат PEAR
[Дабы не возникло недопонимания, стоит пояснить, что автор оригинального текста — Fabien Potencier, создатель популярного PHP фреймворка Symfony — прим. пер.]Совсем недавно, Nils Adermann, прислал мне милую открытку, в напоминание о нашей встречи три года назад на «SymfonyLive hackday» в Сан-Франциско. Nils присутствовал на конференции, т.к. за год до этого, он анонсировал, что phpBB в версии 4 перейдет на Symfony.
В то время, я серьезно интересовался темой менеджеров пакетов, ибо искал удобный способ управлять бандлами в Symfony2. Для плагинов в Symfony1 я использовал PEAR, но код был очень запутанным, ведь PEAR изначально создавался немного не для этого. Философия Бандлера из Ruby сообщества выглядела очень привлекательно, так что я начал поиски подобного пакетного менеджера. После долгих бессонных ночей, я наткнулся на libzypp, и моментально понял, что это оно! К сожалению libzypp — сложная библиотека, написанная на C, и в таком виде, совсем не подходила для Symfony.
Я смекнул, что хорошим менеджером пакетов, позволяющим пользователям легко устанавливать плагины/бандлы/моды наверняка интересуется и Nils, для phpBB, так что я завел об этом разговор на hackday в Сан-Франциско. Оказалось, что в то время, Нилс уже начал работу над Composer.
Нилс проделал потрясающую работу по переводу C кода в PHP код. Позже, присоединившийся к команде Джорди вывел все на новый уровень, взяв на себя заботы по реализации всей инфраструктуры проекта.
Так, что насчет PEAR? PEAR верой и правдой служил PHP сообществу много лет, думаю настало время, дать ему умереть.
Я использовал PEAR в качестве менеджера пакетов еще с моего первого проекта на PHP в далеком 2004-м. Я даже написал популярный сервер каналов Pirum. Но сейчас настало время двигаться дальше, и рассказать о своих планах на каналы, которыми я управляю.
13 февраля я писал в твиттере, что собираюсь перестать поддерживать свои пакеты в PEAR, т.к. Composer уже достаточно популярен. 14 февраля я решил перестать работать над Pirum.
Так как многие хотели узнать статистику канала Symfony, я залез в логи, и обнаружил, что большинство запросов идет от зависимостей PHPUnit. 20-того апреля Sebastian Bergmann открыл обсуждение о поддержке PEAR для PHPUnit. На следующий день, он опубликовал сообщение, в котором прощался с PEAR. Чуть позже, Pádraic Brady также отказался от поддержки PEAR канала для Mockery.
Кроме Symfony, в моем ведении также находятся каналы Twig, Swiftmailer и Pirum. И вот мои планы:
Обновить документацию, четко объяснить в ней, что каналы PEAR устарели, и что предпочитаемый менеджер пакетов — Composer. (Уже сделано для всех проектов). Опубликовать заметку об устаревании PEAR каналов на сайтах этих каналов (сделано для всех проектов) Опубликовать пост в блогах (Twig, Swiftmailer, и Symfony) Перестать выпускать новые PEAR пакеты Удалить описание установки через PEAR в официальной документации (Вероятно в сентябре этого года) Заметьте, что я говорю о прекращении выпуска НОВЫХ пакетов в PEAR, и продвижении Composer как основного средства для инсталляции моих библиотек и проектов. Уже существующие пакеты, в обозримом будущем, все еще можно будет ставить через PEAR.
Всем Composer!