Python Policy: различия между версиями

Материал из ALT Linux Wiki
Нет описания правки
Нет описания правки
 
(не показано 5 промежуточных версий 1 участника)
Строка 14: Строка 14:


== Технический регламент ==
== Технический регламент ==
С версии rpm-build-python=0.34.4-alt4 появился макрос %_python_version, призванный заменить макрос %__python_version. Во избежание использования в спеках макросов с двумя подчёркивания в начале названия.
Рекомендуется запаковывать тесты и примеры (содержимое
каталогов %python_sitelibdir/*/test* и %python_sitelibdir/*/example*)
в отдельный пакет (с одним из суффиксов: -devel, -tests, .tests, -testing, -examples).


== Нерешенные проблемы ==
== Нерешенные проблемы ==
Строка 45: Строка 51:
  Вот его автомат и указывает. Там нужен костыль.
  Вот его автомат и указывает. Там нужен костыль.
</pre>
</pre>
Бага по поводу вытягивания python-dev при проверке версии загруженного модуля: https://bugzilla.altlinux.org/show_bug.cgi?id=31587


== Ссылки ==
== Ссылки ==
* [[OldPolicies|Устаревшие политики]]
* [[OldPolicies|Устаревшие политики]]
* [[Python/Refactoring|Рефакторинг модулей питона]]


[[Категория:Packaging]]
[[Категория:Packaging]]

Текущая версия от 23:59, 2 декабря 2015

Stub.png
Черновик политики Sisyphus
Автор(ы) — sin@
Обсуждение в devel@
Обсуждается с 21.07.2009


Правила упаковки модулей и программ на языке Python.

Общие соображения

Основные термины

Технический регламент

С версии rpm-build-python=0.34.4-alt4 появился макрос %_python_version, призванный заменить макрос %__python_version. Во избежание использования в спеках макросов с двумя подчёркивания в начале названия.

Рекомендуется запаковывать тесты и примеры (содержимое каталогов %python_sitelibdir/*/test* и %python_sitelibdir/*/example*) в отдельный пакет (с одним из суффиксов: -devel, -tests, .tests, -testing, -examples).

Нерешенные проблемы

[17:31:35] <vlasenko> 
Requires: python-dev сейчас добавляются автоматически, 
насколько я понял, проблемв в том, что эта зависимость добавляется автоматом, т.е. я человека ругаю, а убрать он ее не может.

[17:39:23] <Sin> Вообще ругать нужно... нужно проверить то, что указано в последнем тексте python-policy, на который я опирался:
    3.  Указание зависимостей
        3.1.    Пакет ДОЛЖЕН содержать явно указанную зависимость на версию питона,
            использованного при его сборке. Такая зависимость вводится указанием
            следующих операторов::

                Requires: python = %__python_version

                BuildPreReq: python-devel = %__python_version

            Замечание: Из-за некоторых тонкостей реализации apt, пришлось
                отказатся от того, чбы держать в дистрибутиве пакет с именем
                python-devel и он провайдится пакетом python-dev, в то же
                время указывать зависимость на пакет python-dev
                __абсолютно__ недопустимо. Объяснения и споры могут быть
                очень долгими, но иначе это не работает.  Некоторые подробности
                изложены в FAQ Q20. Если вы считаете, что есть другое
                решение, или у вас возникают какие-то проблемы из-за этого -
                спишитесь с мантейнерами полиси;

[17:41:53] <Sin> Да, насколько я понял она, эта зависимость взялась из учёта файла, который требуется и принадлежит пакету python-dev
 Вот его автомат и указывает. Там нужен костыль.

Бага по поводу вытягивания python-dev при проверке версии загруженного модуля: https://bugzilla.altlinux.org/show_bug.cgi?id=31587

Ссылки