Майкл Штапельберг ушёл из числа мэйнтейнеров проекта Debian
Майкл Штапельберг (Michael Stapelberg) объявил о прекращении сопровождения в Debian поддерживаемых им пакетов из-за недовольства текущим состоянием инфраструктуры проекта. Штапельберг заявил, что его следует считать в бессрочном отпуске. Совместно поддерживаемые пакеты будут переданы для сопровождения другим разработчикам, а единолично сопровождаемые пакеты останутся без мэйнтейнера. При этом он пообещал по возможности продолжить поддержку сопровождаемых им сервисов manpages.debian.org и codesearch.debian.net.
Штапельберг являлся мэйнтейнером около 170 пакетов, большая часть из которых инструменты и модули, связанные с языком программирования Go, а также такие пакеты, как raspi3-firmware, xserver-xorg-video-intel, freeradius, sbuild, rkt, mandoc, libxkbcommon, libtomcrypt, i3-wm и google-cloud-print-connector. Помимо сопровождения пакетов Штапельберг также известен как создатель сервиса Debian Code Search и автор мозаичного оконного менеджера i3, распределённой IRC-сети RobustIRC и прошивки для домашних маршрутизаторов router7.
Претензии к инфраструктуре касаются излишне усложнённого сборочного стека, необходимости ждать до семи часов пока загруженный пакет можно будет установить, устаревших асинхронных механизмов взаимодействия в сообществе и отсутствия инструментов для обработки больших изменений. По мнению Штапельберга некоторые элементы инфраструктуры сильно устарели. Например, в Debian применяется тянущийся с 1994 года устаревший механизм отслеживания ошибок (debbugs), который не используется нигде, кроме Debian и проектов GNU, завязан на отправке сообщений через email, а через Web (bugs.debian.org) доступен в режиме только для чтения.
В проекте наблюдается большая фрагментация в применяемых решениях. Например, разные пакеты сопровождаются в разных репозиториях с разными методами приёма патчей, нет единой системы контроля версий (кто-то использует git, а кто-то svn). До сих пор не подготовлен нормальный web-интерфейс для просмотра архива списков рассылки с наглядной древовидной навигацией для отслеживания ответов в дискуссиях. Штапельберг попытался переработать web-интерфейс архива, но ответственные за списки рассылки не захотели поддержать этот проект.
Огромным демотивирующим фактором также является затягивание принятия патчей. Отправка изменений для рецензирования сводится к заведению уведомления о проблеме (bug report), к которому прикреплён патч. Но так как на время рецензирования не накладывается никаких жёстких рамок, данный процесс может протекать очень медленно. Случалось, что сообщение об утверждении патча приходило спустя несколько лет с момента его предложения. Отсутствуют должные средства для отладки пакетов (не все пакеты доступны с отладочной информацией).
Продвижение изменений также может существенно замедлить отказ некоторых разработчиков сотрудничать в разрешении каких-то вопросов. Например, в своё время мэйнтейнер пакета с rsync отказался принимать патчи, добавляющие поддержку debhelper для автоматизации различных аспектов сборки, только из-за своих частных предубеждений. По мнению Штапельберга отдельным мэйнтейнерам предоставлено слишком много личной свободы, что мешает повышению уровня абстракции системы сборки пакетов и усложняет инструментарий.
© OpenNet