[devel] python problems
Alexey Tourbin
=?iso-8859-1?q?at_=CE=C1_altlinux=2Eru?=
Ср Мар 14 13:13:40 MSK 2007
On Wed, Mar 14, 2007 at 01:12:39AM +0300, Alexey Tourbin wrote:
> > > Кроме того, будут проблемы с питоном, потому что `#!/usr/bin/env python'
> > > теперь отыскиваются слишком хорошо.
> >
> > Что значит "слишком хорошо" и что значит "будут проблемы с питоном"?
>
> Слишком хорошо означает что для #!/usr/bin/env python будет вызван
> FindPackage "$f" /usr/bin/env python.
>
> $ /usr/lib/rpm/shebang.req -v /usr/lib/rpm/python.req.py
> shebang.req: /usr/lib/rpm/python.req.py: /usr/bin/env -> coreutils (via rpmdb)
> coreutils
> shebang.req: /usr/lib/rpm/python.req.py: python -> /usr/bin/python -> ... (via which)
> shebang.req: /usr/lib/rpm/python.req.py: /usr/bin/python -> python-strict (via rpmdb)
> python-strict
> $
>
> А пакет python-strict, грубо говоря, требует все остальные пакеты, на
> которые распилен питон. Последнее явно неприемлемо для базовой
> сборочной системы (тогда как внесение python-base в базовую систему
> кажется мне приемлемым).
>
> У пакета rpm-build-python вообще никакой зависимости на python нету,
> т.е. это такой дохляк, который прямо начиная с #! может не запуститься
> и отвалить, а это противоречит нашему принципу что всё более-менее
> должно работать из коробки без всяких там грубых посыланий и доустановок.
>
> Хуже того, если я правильно понимаю, то скрипты из rpm-build-python
> всячески скрывают свои зависимости, и если им чего-то не хватает, то они
> отваливают абсолютно тихо, по-подлому.
>
> python.req:
> 35 try :
> 36 import sys, os
> 37 import parser, symbol, token, types
> 38 except :
> 39 pass
> 40 else :
>
> После else идет весь реальный код. Такая же история с python.prov.py.
> Т.е. мы можем не только недосчитаться requires зависимостей, но и
> пропустить provides зависимости, а это уже чревато анметами в
> репозитарии. И, как известно, в репозитарии больше всего именно
> питоновских анметов. В общем, такой лажи быть не должно.
>
> Резюмирую, что мне кажется рационально нужно сделать с питоном.
>
> 1) пересмотреть как питон распилен. python-base должен давать работающий
> /usr/bin/python и достаточно модулей для работы rpm-build-python. Тогда
> можно раскрыть зависимости в rpm-build-python и внести python-base в
> базовую сборочную систему.
>
> 2) Изменить rpm-build-python чтобы если там чево-то отваливает то чтобы
> хотя бы сообщал, что, мол, отваливаю, и чево не хватает. А ещё лучше
> чтобы просто отваливал, как следует.
Ну что, специалисты по питону есть, или мне придется взять быка за рога?
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя : =?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/20070314/f45d1bb7/attachment-0001.bin>
Подробная информация о списке рассылки Devel