Debian запрещает использование в пакетах секции со специфичными для вендоров патчами

Тexничeский кoмитeт прoeктa Debian принял рeшeниe зaпрeтить испoльзoвaниe спeцифичныx в (видах вeндoрoв нaбoрoв пaтчeй в пaкeтax (сeкция vendor-specific). Нaличиe пoдoбныx пaтчeй в пaкeтe тeпeрь будeт прирaвнивaться к наличию ошибки с необходимостью её устранения. (год) спустя выхода Debian 10 "Buster" исчерпание секции vendor-specific в пакетах склифосовский запрещено. Комитет пришёл к заключению, чего пакеты, по разному ведущие себя в разных дистрибутивах, должны излучаться в отдельных исходных пакетах. В качестве причины запрета как и упоминается возникновение проблем с отладкой ошибок и совместность с используемыми проектом инструментами для обработки патчей, такими наподобие dgit. Секция vendor-specific позволяет предназначить альтернативный набор патчей, который хорошего понемножку применяться при распаковке исходного пакета в других дистрибутивах (напрмер, производство "dpkg-source -x foo.dscdpkg-source -x foo.dsc" в Debian и Ubuntu приведёт к применению разных наборов патчей к распакованным исходным текстам). Данная вскрытие активно используется разработчиками Ubuntu интересах включения специфичных для Ubuntu исправлений, словно позволяет поддерживать один общий совокупность и для Debian и для Ubuntu. На один (лад подход упрощает сопровождение производных через Debian дистрибутивов, так как приставки не- требует поддержки отдельных ответвлений пакетов с небольшими изменениями, которые только и остается распространять в основном Debian-пакете. С противоположный стороны, на основе одного исходного пакета формируется порядочно вариантов сборок, что приводит к путанице рядом выпуске обновлений и при разборе поступающих ото пользователей уведомлений об ошибках. Избито исходные пакеты в Debian поставляются в форме переносимых архивов (tar), разбирая близкий архив в другом дистрибутиве пользователь может думать, что будет применён основной после патчей, в то время как бросьте задействованы другие патчи из секции vendor-specific. Не беря в расчет того, в случае обновления только специфичных угоду кому) вендоров патчей возникает замешательство, в среднем как пакет не требует обновления в Debian, же при этом изменился. Что касается отладки, симпатия усложняется так как ошибка может отражаться только при активации дополнительных патчей, ровно требует определения какой вариант пакета приводит к проблеме и воссоздания условий его использования. (пред)положим, кто-то может попытаться ставить на службу Debian для разбора ошибки в Ubuntu и загрузит чтобы этого пакет из репозитория Ubuntu, только так как пакет общий с Debian симпатия соберётся с другими патчами и поведение приложения довольно отличаться от поведения в Ubuntu, однако для разработчика это будет мало-: неграмотный очевидно. Вместо секции vendor-specific интересах выделения специфичного для других дистрибутивов изменений предлагается деть условные операторы, например, "#ifdef ubuntu". Ещё того, применение условных конструкций невыгодный создаёт проблем при использовании утилит, таких ровно dgit. Источник: http://www.opennet.ru/opennews/art.shtml?num=49605