TypicalPackagingErrors/versions: различия между версиями

Материал из ALT Linux Wiki
(Import from freesource.info)
 
Строка 37: Строка 37:


''TODO: добавить в policy и/или ссылку на него, если имеется''
''TODO: добавить в policy и/или ссылку на него, если имеется''
[[Категория:TypicalPackagingErrors|{{SUBPAGENAME}}]]

Версия от 18:50, 13 марта 2009

Freesource-logo.png Blue Glass Arrow.svg MediaWiki logo.png
Эта страница была перемещена с freesource.info.
Эта страница наверняка требует чистки и улучшения — смело правьте разметку и ссылки.
Просьба по окончанию убрать этот шаблон со страницы.


Типичные ошибки нумерования версий

...приводящие к неожиданным проблемам при последующем обновлении (e.g. 1.0 < 1.0pre лексикографически).

Subject: [sisyphus] Как правильно давать версию пакету?
Date: Fri, 25 Nov 2005 16:50:32 +0200
From: Slava Dubrovskiy 
To: Sisyphus lists.altlinux.org

Здравствуйте.

Запаковал пакет с той версией какая указана в апстриме - 7.1PRE1. Теперь
вышла 7.1.1 и апт считает, что 7.1PRE1 больше чем 7.1.1.
Отсюда вопрос: что делать в данной ситуации и как правильно разрулить?

Поведение apt вполне объяснимо, ведь

~ $ rpmvercmp 7.1PRE1 7.1.1
1
~ $

т.е. 7.1PRE1 действительно больше чем 7.1.1.

Выход в данной ситуации один. Давать номера пакетов вида: version-altx.prefix Например, в данной ситуации, было бы лучше версию PRE1 запаковать как 7.1-alt0.PRE1, а официальный релиз тогда имел бы версию 7.1-alt1 и т.д. Тоже самое предлагается делать и для cvs (например 7.1-alt0.cvs20051128) и всяких там alpha/beta/rc/pre. Сборка alt0 как раз визуально выделят версии cvs/pre из списка релизов.

То же самое относится и к пакетам имеющим iplXXmdk вместо altXX в номере сборки. Без смены версии пакета, менять iplXXmdk на alt (пусть даже и XX+1) не стоит!!! Не верите на слово:

~ $ rpmvercmp ipl23mdk alt4
8
~ $

Если пакет с release вида alt0.cvsyyyymmdd собирается для backports, сообразно backports policy следует выставить его в alt0.0.cvsyyyymmdd; при этом "0" лексикографически меньше "c" и последуюшее обновление пройдёт успешно по крайней мере по этой части.

Надеюсь, что данная рекомендация попадет в полиси.


TODO: добавить в policy и/или ссылку на него, если имеется