[sisyphus] Re: I: Sisyphus-20051024 packages: +1! +4 (4867)
Dmitry V. Levin
=?iso-8859-1?q?ldv_=CE=C1_altlinux=2Eorg?=
Пн Окт 24 03:49:31 MSD 2005
On Mon, Oct 24, 2005 at 03:30:42AM +0400, Alexey Tourbin wrote:
> On Mon, Oct 24, 2005 at 02:50:48AM +0400, Dmitry V. Levin wrote:
> > Потому что rpmEVRcmp() не коммутативно:
> >
> > $ rpmevrcmp 1:1.06-alt1 1.06-ipl6mdk
> > -1
> > $ rpmevrcmp 1.06-ipl6mdk 1:1.06-alt1
> > -1
>
> Не понял. Коммутативность(+) ::= forall(a,b) a+b = b+a
> Сравнение версий и не может быть коммутативным в этом смысле.
> То есть речь идёт не о свойстве a<b=b<a, а о свойстве a<b=b>a.
Ну да, я имел в виду, что оно не антисимметрично. :)
> > Зато если у обоих аргументов serial определён, то rpmEVRcmp() уже
> > коммутативно:
> >
> > $ rpmevrcmp 1:1.06-alt1 0:1.06-ipl6mdk
> > 1
> > $ rpmevrcmp 0:1.06-ipl6mdk 1:1.06-alt1
> > -1
>
> Как сравнивается в первом случае?
Если у первого аргумента epoch не определён, а у второго определён, то
меньше.
Если у первого аргумента epoch определён, а у второго не определён, то
зависит от версии librpm; в rpm-4_0 равно, в rpm-4_4 больше или равно в
зависимости от настроек второго аргумента. :)
Я могу сделать поведение утилиты rpmevrcmp более логичным, чем поведение
rpmEVRcmp/rpmdsCompare. Если надо.
--
ldv
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя : =?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/sisyphus/attachments/20051024/7098b4ba/attachment-0003.bin>
Подробная информация о списке рассылки Sisyphus