[devel] QA: Unmets в питоновских модулях , как с ними боротся

Andrey Orlov =?iso-8859-1?q?cray_=CE=C1_neural=2Eru?=
Ср Июн 23 18:21:13 MSD 2004


On Wednesday 23 June 2004 14:32, Igor Tertishny wrote:
> Я поступил вышеуказанным образом. Что еще интересно, остальные питоновские 
> модули находятся автоматически.

Я посмотрел scribus. Дело в том, python.find.prov провайдес sсribus не находит,
потому что его там нет. Иными словами, scribus python2.3(scribus) не провайдит:

%python
>>> import scribus
Traceback (most recent call last):
  File "<stdin>", line 1, in ?
ImportError: No module named scribus
>>>

так что все вполне допустимо.

Я просмотрель исходники, насколько я понял, scribus - это некая утилита (не суть) слинкованная
с питоном, которая может использовать питон в качестве внутреннего скрптового языка, для работы
с которым она провайдит builtin модуль scribus - поправьте меня, если я не прав.

А раз так, то нужно ставить не provide, а skip - т.е. когда я писал про лушче в предыдущем письоме,
 я был неправ: 

%add_python_req_skip scribus  - вот это правильный выбор.

Теперь  вопросу о построении пакета. Не думаю, что имеет смысл прямо сейчас, но если
пакет будет развиваться, то в будущем стоит подумать о таком варианте.

В принципе, питоновские скрипты из него надо выносить. Во что-то типа 
scribus-module-<имя скрипта>. Наша полиси такой случай вообще-то не описывает (это в чистом
виде второй случай такого рода, правда, есть еще Zope - это третий, но там хоть проблемы сходные,
причины, формально, другие). Можно предложить что-то типа следующего:

1. Завести подпакет scribus - это собственно сам scribus;

2. Который провайдит что-то типа srcibus-core

3. Все скрипты к srcibus разбить либо по одному, либо пучками на подпакеты.

4. В каждом из них вписать

%add_python_skip_req scribus
Require: scribus-core

Последнюю операцию, насколько я понимаю, можно автоматизировать, 
но я этим некогда не пользовался.

Насчет именования пакетов - ну, я прям даже не знаю. Система именования питоновских
модулей к ним не применима, потому как по совокупности признаков они
питоновскими модулями не являются, хотя и написаны на питоне. Так что
стандартное 

"python" [<X> ". " <Y>] "-module-" <NAME> 

им не подходит. 

4all: Прошу считать вышеизложенное предложением для обсуждения. Так как такие
пакеты будут появлятся и дальше.

-- 
WthBstRgrds -- Андрей Орлов --  
 --- http: www.neural.ru, mail: cray на neural.ru, jid: cray на altlinux.org ---
----------------------------------------



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