[devel] sisyphus_check: рубить с плеча не так уж безопасно.

Igor Vlasenko vlasenko на imath.kiev.ua
Пн Мар 28 08:35:38 UTC 2011


Уважаемые коллеги,
Уважаемый Алексей, еще раз извиняюсь, что поднимаю эту тему.

Когда я внезапно узнал из письма Алексея про
AT> sisyphus_check, которые запрещает зависимость на xorg-devel
сначала был в шоке, но потом немного отошел.
Конечно, плохо, что такие вещи делались без обсуждения и
предупреждения, но Алексей сделает из этого какие-то выводы, 
подумал я, плюс, эти изменения действительно дают небольшую 
оптимизацию. Так что человек нещепетильный пусть уступит
человеку щепетильному. Раз Алексею это важно, пусть будет.

К сожалению, кода я получил сообщеня о непересобирающихся пакетах 
и посмотрел в код sisyphus_check, шок у меня случился повторно.

В sisyphus_check Алексей запретил все пакеты вида xorg-x11-.* .

Из этих пакетов желаемую Алексеем оптимизацию даст только борьба с 
xorg-x11-devel. Остальные (B)Req: пострадали безвинно, их "вина" 
только в том, что они не угнались за переименованиями в Сизифе.

"Лечение" пострадавших пакетов заулючается в механических subst
xorg-x11-server -> xorg-server
xorg-x11-proto-devel -> xorg-proto-devel
xorg-x11-locales -> libX11-locales
и, как видим, совершенно бесполезно и идет вразрез с нашей практикой
при переименовании пакета оставлять совместимые Provides:.

Кроме того, Provides: вида xorg-x11-server, xorg-x11-proto-devel,
нужны для совместимости с другими дистрибутивами, в частности,
fedora, чтобы облегчать написание кроссдистрибутивных rpm
и уменьшать дурную работу при адаптации пакета из другого дистрибутива.

Поэтому проверке xorg-x11-.* не место в sisyphus_check,
из уважения к Алексею ее можно заменить на xorg-x11-devel.

Вот списки безвинно пострадавших (B)Req:

sqlite> select distinct requirename from rpm_requires where requirename glob 'xorg-x11-*';
xorg-x11-drv-vboxmouse
xorg-x11-drv-vboxvideo
xorg-x11-drv-video
xorg-x11-font-utils
xorg-x11-libs
xorg-x11-locales
xorg-x11-proto-devel
xorg-x11-rgb
xorg-x11-server
xorg-x11-utils
xorg-x11-xauth
xorg-x11-xnest
xorg-x11-xvfb
sqlite> select distinct buildrequirename from rpm_buildrequires where buildrequirename glob 'xorg-x11-*';
xorg-x11-bitmaps
xorg-x11-font-utils
xorg-x11-libs
xorg-x11-locales
xorg-x11-mesagl
xorg-x11-proto-devel
xorg-x11-server
xorg-x11-util-macros
xorg-x11-utils
xorg-x11-xtrans-devel
xorg-x11-xvfb


-- 

Dr. Igor Vlasenko
--------------------
Topology Department
Institute of Math
Kiev, Ukraine



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