Mass NMU
Материал из ALT Linux Wiki
SirRaorn (обсуждение | вклад) |
|||
(15 промежуточных версий не показаны.) | |||
Строка 1: | Строка 1: | ||
{{DraftPolicy | {{DraftPolicy | ||
|responsible=viy@ | |responsible=viy@ | ||
- | |discussion_link= | + | |discussion_link=http://lists.altlinux.org/pipermail/devel/2009-April/169093.html |
|discussion_since=10.04.2009 | |discussion_since=10.04.2009 | ||
}} | }} | ||
- | '''Mass NMU''' (Non-Maintainer Upload) | + | '''Mass NMU''' (Non-Maintainer Upload) — массовое обновление чужих пакетов. |
== Общие соображения == | == Общие соображения == | ||
- | Данное полиси является дополнением к [[NMU]] полиси и описывает дополнительные процедуры, | + | Данное полиси является дополнением к [[NMU]] полиси и описывает дополнительные процедуры, которых нужно придерживаться для проведения массового NMU. |
- | которых нужно придерживаться для проведения массового NMU. | + | |
- | + | Для точечного NMU на пакет foobar у делающего это NMU достаточно времени чтобы обсудить это с мейнтейнером. | |
- | Однако если пакетов много, и | + | Однако если пакетов много, и мейнтейнеров много, проведение массового NMU как набора точечных NMU становится крайне затруднительным. |
- | NMU становится крайне затруднительным. | + | |
- | Вместо этого MassNMU полиси описывает процедуры, с помощью которых можно | + | Вместо этого MassNMU полиси описывает процедуры, с помощью которых можно обращаться ко всем мейнтейнерам вместе, а не к каждому по отдельности. |
- | обращаться ко всем | + | При этом при необходимости администратор репозитория может выдать NMU вместо отсутствующих или не высказавшихся мейнтейнеров. |
- | При этом при необходимости администратор репозитория может выдать | + | |
- | NMU вместо отсутствующих или не высказавшихся | + | |
- | Чтобы при проведении массовых NMU не было злоупотреблений, изменения, | + | Чтобы при проведении массовых NMU не было злоупотреблений, изменения, вносимые в пакеты при массовых NMU, должны быть бесспорными, основанными на общепринятой традиции или действующих полиси. |
- | вносимые в пакеты при массовых NMU, должны быть бесспорными, | + | |
- | основанными на общепринятой традиции или действующих полиси. | + | |
- | + | То есть надо подчеркнуть, что в массовых NMU, общий принцип которых не вызывает разногласий (например, основан на полиси) мейнтейнер считается по умолчанию (поскольку общий принцип не вызывает разногласий) согласным на NMU, а если не согласен — должен высказать явно. | |
- | не вызывает разногласий (например, основан на полиси) | + | |
- | + | ||
- | согласным на NMU, а если не | + | |
== Правила подготовки массовых NMU == | == Правила подготовки массовых NMU == | ||
- | Алгоритм и сгенерированные патчи выносятся на публичное обсуждение. | + | * Алгоритм и сгенерированные патчи выносятся на публичное обсуждение. |
+ | * Если алгоритм основан на полиси, достаточно явно сослаться на полиси. | ||
+ | * Иначе, алгоритм должен быть основан на полиси (драфте) или ещё как-либо документирован, пройти обсуждение в devel@, | ||
- | Если | + | Если в {{lists|devel}} предложенные изменения не вызывают возражений, либо возражения снимаются голосованием или отводом/исправлением, то алгоритм и патчи считаются принятыми сообществом. |
- | + | Срок обсуждения — от 2-х недель. 2 недели, если по алгоритму и патчам не было замечаний. Если возникают вопросы, то обсуждение можно продолжить до тех пор, пока все вопросы не будут урегулированы либо предложение будет отклонено в связи с существенными возражениями. | |
- | + | ||
- | + | === Правила публикации алгоритма и патчей === | |
- | + | * Завести страницу на wiki, посвящённую NMU (Категория MassNMU, статус Открыто/Закрыто/Отклонено), на которой желающие будут добавлять свои пакеты в список пакетов, не принимающих участия в NMU. | |
- | + | ** Если изменения носят разовый характер и их не нужно будет повторять над новыми пакетами, кратко описать предлагаемые изменения на wiki в этой же страничке. | |
+ | ** Если же изменения нужно будет учитывать при сборке новых пакетов, рекомендуется оформить предлагаемые изменения как драфт полиси, и сразу добиваться принятия этого драфта как полиси и для будущих пакетов тоже. | ||
+ | * Разместить на этой страничке wiki ссылку на патчи. | ||
+ | * Разместить на этой страничке wiki раздел, где разместить списки пакетов, попадающих под NMU. | ||
+ | * Разместить на этой страничке wiki раздел, куда мейнтейнеры могут указать пакеты, исключаемые из NMU. | ||
+ | * Анонсировать заявку на NMU, алгоритм и патчи в {{lists|devel}}. | ||
- | + | === Правила подачи заявок на отвод пакетов === | |
+ | Заинтересованный мейнтейнер оповещает мейнтейнера, проводящего MassNMU, о списке пакетов, которые он хочет | ||
+ | исключить. | ||
+ | Рекомендуемый способ — добавлять свои пакеты в список пакетов, не принимающих участия в NMU, на страничке wiki, посвящённой этому MassNMU, в разделе для исключаемых из NMU пакетов (чтобы не засорять рассылку). | ||
=== Пример === | === Пример === | ||
- | |||
Т.е. - если я, скажем, завтра напишу робота, который.. ну допустим | Т.е. - если я, скажем, завтра напишу робота, который.. ну допустим | ||
исправляет зависимости у всех KDE'шных пакетов, отправляя каждый из них | исправляет зависимости у всех KDE'шных пакетов, отправляя каждый из них | ||
на пересборку с определённым патчем на спек. | на пересборку с определённым патчем на спек. | ||
- | Каким образом должен выглядеть процесс такого массового NMU ? | + | Каким образом должен выглядеть процесс такого массового NMU? |
- | # написать драфт полиси, которое стремится воплотить в жизнь робот. | + | # написать драфт полиси, которое стремится воплотить в жизнь робот (рекомендуется, если изменения нужно будет учитывать при сборке новых пакетов) либо описать изменения на wiki, на страничке, посвящённой конкретно этому массовому NMU. (если изменения носят разовый характер и их не нужно будет повторять над новыми пакетами). |
- | # анонсировать | + | # анонсировать патчи. |
- | # завести | + | # завести раздел на wiki, в котором желающие будут добавлять свои пакеты в список пакетов, не принимающих участия в NMU. |
- | свои пакеты в список пакетов, не | + | |
Если | Если | ||
- | # сообщество приняло | + | # сообщество приняло алгоритм изменений. |
- | # | + | # истёк срок для подачи отводов на пакеты и возражений (2-3 недели?) |
то | то | ||
- | # Наступает deadline, кто не успел заявить отвод | + | # Наступает deadline, кто не успел заявить отвод NMU на свои пакеты, тот опоздал. |
- | # Автор робота получает право NMU на все заявленные им пакеты, | + | # Автор робота получает право NMU на все заявленные им пакеты, кроме тех, по которым заявлен отвод. |
- | кроме тех, по которым заявлен отвод. | + | |
- | Должен ли предпринимать какие-то шаги администратор | + | Должен ли предпринимать какие-то шаги администратор репозитория? |
- | Дать | + | Дать NMU от имени промолчавших мейнтейнеров. |
== Ссылки == | == Ссылки == | ||
- | [[NMU]] | + | * [[NMU]] |
Текущая версия на 06:38, 21 июля 2010
Mass NMU (Non-Maintainer Upload) — массовое обновление чужих пакетов.
Содержание |
Общие соображения
Данное полиси является дополнением к NMU полиси и описывает дополнительные процедуры, которых нужно придерживаться для проведения массового NMU.
Для точечного NMU на пакет foobar у делающего это NMU достаточно времени чтобы обсудить это с мейнтейнером.
Однако если пакетов много, и мейнтейнеров много, проведение массового NMU как набора точечных NMU становится крайне затруднительным.
Вместо этого MassNMU полиси описывает процедуры, с помощью которых можно обращаться ко всем мейнтейнерам вместе, а не к каждому по отдельности. При этом при необходимости администратор репозитория может выдать NMU вместо отсутствующих или не высказавшихся мейнтейнеров.
Чтобы при проведении массовых NMU не было злоупотреблений, изменения, вносимые в пакеты при массовых NMU, должны быть бесспорными, основанными на общепринятой традиции или действующих полиси.
То есть надо подчеркнуть, что в массовых NMU, общий принцип которых не вызывает разногласий (например, основан на полиси) мейнтейнер считается по умолчанию (поскольку общий принцип не вызывает разногласий) согласным на NMU, а если не согласен — должен высказать явно.
Правила подготовки массовых NMU
- Алгоритм и сгенерированные патчи выносятся на публичное обсуждение.
- Если алгоритм основан на полиси, достаточно явно сослаться на полиси.
- Иначе, алгоритм должен быть основан на полиси (драфте) или ещё как-либо документирован, пройти обсуждение в devel@,
Если в devel@ предложенные изменения не вызывают возражений, либо возражения снимаются голосованием или отводом/исправлением, то алгоритм и патчи считаются принятыми сообществом.
Срок обсуждения — от 2-х недель. 2 недели, если по алгоритму и патчам не было замечаний. Если возникают вопросы, то обсуждение можно продолжить до тех пор, пока все вопросы не будут урегулированы либо предложение будет отклонено в связи с существенными возражениями.
Правила публикации алгоритма и патчей
- Завести страницу на wiki, посвящённую NMU (Категория MassNMU, статус Открыто/Закрыто/Отклонено), на которой желающие будут добавлять свои пакеты в список пакетов, не принимающих участия в NMU.
- Если изменения носят разовый характер и их не нужно будет повторять над новыми пакетами, кратко описать предлагаемые изменения на wiki в этой же страничке.
- Если же изменения нужно будет учитывать при сборке новых пакетов, рекомендуется оформить предлагаемые изменения как драфт полиси, и сразу добиваться принятия этого драфта как полиси и для будущих пакетов тоже.
- Разместить на этой страничке wiki ссылку на патчи.
- Разместить на этой страничке wiki раздел, где разместить списки пакетов, попадающих под NMU.
- Разместить на этой страничке wiki раздел, куда мейнтейнеры могут указать пакеты, исключаемые из NMU.
- Анонсировать заявку на NMU, алгоритм и патчи в devel@.
Правила подачи заявок на отвод пакетов
Заинтересованный мейнтейнер оповещает мейнтейнера, проводящего MassNMU, о списке пакетов, которые он хочет исключить. Рекомендуемый способ — добавлять свои пакеты в список пакетов, не принимающих участия в NMU, на страничке wiki, посвящённой этому MassNMU, в разделе для исключаемых из NMU пакетов (чтобы не засорять рассылку).
Пример
Т.е. - если я, скажем, завтра напишу робота, который.. ну допустим исправляет зависимости у всех KDE'шных пакетов, отправляя каждый из них на пересборку с определённым патчем на спек. Каким образом должен выглядеть процесс такого массового NMU?
- написать драфт полиси, которое стремится воплотить в жизнь робот (рекомендуется, если изменения нужно будет учитывать при сборке новых пакетов) либо описать изменения на wiki, на страничке, посвящённой конкретно этому массовому NMU. (если изменения носят разовый характер и их не нужно будет повторять над новыми пакетами).
- анонсировать патчи.
- завести раздел на wiki, в котором желающие будут добавлять свои пакеты в список пакетов, не принимающих участия в NMU.
Если
- сообщество приняло алгоритм изменений.
- истёк срок для подачи отводов на пакеты и возражений (2-3 недели?)
то
- Наступает deadline, кто не успел заявить отвод NMU на свои пакеты, тот опоздал.
- Автор робота получает право NMU на все заявленные им пакеты, кроме тех, по которым заявлен отвод.
Должен ли предпринимать какие-то шаги администратор репозитория?
Дать NMU от имени промолчавших мейнтейнеров.