[devel] сравнение версий в rpm
Alexey Tourbin
=?iso-8859-1?q?at_=CE=C1_altlinux=2Eru?=
Сб Дек 20 14:33:25 MSK 2008
On Sat, Dec 20, 2008 at 02:15:46PM +0300, Хихин Руслан wrote:
> > rpm-4.0 и rpm-4.4+ по-разному сравнивают некоторые версии.
> > Это не кривая особенность реализации, и нельзя скаазть, что
> > rpm-4.4 сравнивает вресии лучше, чем rpm-4.0. Различие нельзя
> > объснить целиком рационально в пользу одного из вариантов
> > сравнения.
> >
> > Мейнтенеры должны представлять себе сравнение версий так, как
> > я ранее написал. Не следует направлять в репозитарий новые
> > версии пакетов, если сравнение старых и новых версий "не
> > определено".
> Если у нас стоит в системе rpm 4.0.4 и порядок сортировки версий
> у нас определяется её кодом, а жизнь требует что-бы понятие не
> определено не было не правильнее-ли задать порядок сортировки
> для неопределённых случаев ? Если стоит вопрос о том, что-бы
Понятие "не опредлено" не очень плохо. Нужно избегать того, что
"не определно", что сложно определить интуитивно понятным способом.
> порядок сортировки должен соответствовать rpm-4.4, то надо
> патчить rpm (и всё, что с этим связано) и на видном месте
> расписать правила сравнения версий.
Порядок сортировки это сложная тема. Порядок должен быть
антисимметричным. Это означает, что либо a<b, либо a>b,
а в противном случае a=b. На "чисто версиях" реализация может
доопределить антисимметричный порядок для тех случаев, в которых
он "не определён".
С эпохами ситуация гораздо хуже: антисимметричное сравнение эпох
может нарушать интуитивно понятные представления о сравнения версий.
Эпоха просто становится "самым старшим" компонентом версии.
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя : =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Тип : application/pgp-signature
Размер : 197 байтов
Описание: =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Url : <http://lists.altlinux.org/pipermail/devel/attachments/20081220/8c72c80e/attachment.bin>
Подробная информация о списке рассылки Devel