[devel] bugs assigned NOT to maintainers

Alexey Tourbin =?iso-8859-1?q?at_=CE=C1_altlinux=2Eru?=
Пт Авг 12 22:18:36 MSD 2005


On Fri, Aug 12, 2005 at 08:57:31PM +0400, Alexey Tourbin wrote:
> On Fri, Aug 12, 2005 at 05:16:12PM +0400, Denis Smirnov wrote:
> > Обнаружил тут одну неприятность в bugzilla -- очень много багов висит на 
> > старых мантейнеров, а новые об этих багах могут узнать только поиском 
> > или заглянув на sisyphus.ru
> 
> Ну.  Делаешь такой дамп:
> https://bugzilla.altlinux.org/buglist.cgi?ctype=csv&columnlist=bug_id,component,assigned_to
> 
> Он выплёвывает:
> bug_id,"component","assigned_to",
> 6006,"xvidcap","aris на altlinux.org",
> 7379,"spamassassin-spamd","force на altlinux.org",
> 7484,"gcc3.4","ldv на altlinux.org",
> 3986,"Form for enter new bug","legion на altlinux.org",
> 1240,"indexhtml","rider на altlinux.org",
> 
> Дальше нужно сравнивать assigned_to по пакетной базе.

Редактором (ну, типа, exmode) делаем из него tab-delimited дамп, который
назовём bugs:

6006    xvidcap aris на altlinux
7379    spamassassin-spamd      force на altlinux
7484    gcc3.4  ldv на altlinux
...

Далее делаем дамп для пакетной базы, который назовём packages:

$ find /raid/ALT/Sisyphus/files/ -type f -name '*.rpm' -print0 |xargs -r0 \
	rpm -qp --qf '%{NAME}\t%{PACKAGER}\n'
AVLTree-devel   AEN <aen на altlinux>
7colors Rider <rider на altlinux>
libmidgard      Sergei Dolmatov <saint на altlinux>
...
$

После обработки редактором остается:
AVLTree-devel   aen на altlinux
7colors rider на altlinux
libmidgard      saint на altlinux

Далее будем делать join этих двух дампов (bugs и packages) по имени
пакета, нужна предварительная сортировка:

$ sort -o bugs -u bugs
$ sort -o bugs -t$'\t' -k2,2 bugs
$ sort -o packages -u packages
$ sort -o packages -t$'\t' -k1,1 packages

Смотрим, что получилось:

$ head bugs
1776    3dwm    nidd на altlinux
1940    3dwm    nidd на altlinux
2226    3dwm    reporter на altlinux
470     3dwm    inger на altlinux
476     3dwm    nidd на altlinux
749     3dwm    nidd на altlinux
785     3dwm    inger на altlinux
130     7colors rider на altlinux
1842    7colors rider на altlinux
7188    855resolution   rider на altlinux
$ head packages
7colors rider на altlinux
855resolution   rider на altlinux
a2ps    andrei на altlinux
a52dec  aris на altlinux
aalib   aris на altlinux
aalib-devel     aris на altlinux
aalib-utils     aris на altlinux
abiword vk на altlinux
abook   sass на altlinux
abuse_sdl       zerg на altlinux
$

Похоже на правду.
Теперь надо проверить, нет ли в списке packages "двойных maintainer'ов".

$ awk -F'\t' 'BEGIN{OFS=FS}(p==$1){print p,m;print}{p=$1;m=$2}' packages >dups
$ head dups
arts    mouse на altlinux
arts    zerg на altlinux
bobtail mouse на altlinux
bobtail rider на altlinux
cdda2wav        lakostis на altlinux
cdda2wav        mouse на altlinux
cdrecord        lakostis на altlinux
cdrecord        mouse на altlinux
cdrtools        lakostis на altlinux
cdrtools        mouse на altlinux
$

Ясно, дупы есть, поскольку пакеты искали также в x86_64. :(
Из дупов убираем mouse'а.

$ awk -F'\t' '$2~/mouse/' dups >mouse
$ grep -Fx -vf mouse packages >packages.new
$ diff -u packages packages.new |head
--- packages    2005-08-12 17:50:32 +0000
+++ packages.new        2005-08-12 17:55:32 +0000
@@ -196,7 +196,6 @@
 arm-palmos-prc-tools   raorn на altlinux
 arpd   ldv на altlinux
 arpwatch       inger на altlinux
-arts   mouse на altlinux
 arts   zerg на altlinux
 asciidoc       abulava на altlinux
 aseqview       aris на altlinux
$ mv packages.new packages

Теперь всё готово для того, чтобы Сделать Join.

# pkg	bugno	assigned to	packager
$ join -t$'\t' -12 -21 bugs packages |awk -F'\t' '$3!=$4' |head
abiword 3019    aen на altlinux    vk на altlinux
abiword 3755    aen на altlinux    vk на altlinux
abiword 3869    aen на altlinux    vk на altlinux
abiword 3880    aen на altlinux    vk на altlinux
acl     1111    reporter на altlinux       ab на altlinux
acpi    4945    oes на altlinux    force на altlinux
acpid   175     reporter на altlinux       wrar на altlinux
acpid   2849    darkstar на altlinux       wrar на altlinux
acpid   2970    darkstar на altlinux       wrar на altlinux
agetty  1058    inger на altlinux  util-linux на packages.altlinux
$

Получилось!  Полный список довольно большой (1900), но это с учетом
адресов @packages.altlinux.

Таким образом получен список багов, которые присвоены НЕ maintainer'ам.
Вопрос: что делать с этим списком?
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя     : =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Тип     : application/pgp-signature
Размер  : 189 байтов
Описание: =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Url     : <http://lists.altlinux.org/pipermail/devel/attachments/20050812/6d992a55/attachment-0001.bin>


Подробная информация о списке рассылки Devel