[devel] Python Modules Policy:
Alexey Morozov
=?iso-8859-1?q?alex-altlinux_=CE=C1_idisys=2Eiae=2Ensk=2Esu?=
Ср Фев 11 12:50:23 MSK 2004
On Tue, Feb 10, 2004 at 06:51:18PM +0300, Алексей Любимов wrote:
>
> >Не вопрос. Мы с Андреем уже договорились (в джаббере) до того, что
> >
> >1. Он проставляет Obsoletes: pythonN в python{N+1} или делает
> > аналогичные изменения, о точном решении будет сообщено
> > дополнительно ориентировочно в конце недели.
> >2. _Одновременная_ сборка пакетов под разные версии питона является
> > на данный момент ненужной ввиду своей трудоемкости.
> реально это означает, что поддержка python22 отменяется.
> Или, проще говоря, на зоп* в сизифе и все, что посложнее "hello world"
> можно забить.
Нет. Их можно будет собирать "неодновременно", т.е. в два прохода.
Может быть, даже автоматом.
> >3. Андрей думает над целесообразностью сборки пакетов вида
> > python<N>-ModuleName из исходника вида python-ModuleName
> Если будет строго выполнен пункт 2, то это имхо лишнее...
> Уж если у кого дойдут руки, то можно делать пакеты python22-ModuleName
> то есть схема пакет и compat-пакет, а не ПакетВерсия1 и ПакетВерсия2
См. выше про автомат.
> >5. В полиси для питоньих модулей вносится обязательный
> > Requires: python = %<pversion>, где %<pversion> совпадает с
> > %__python_version того питона, для которого производилась сборка.
> Это понятно.
ldv@ уже предложил решение, которое, вроде бы, не хуже по последствиям,
но автоматизируется. Прокомментируйте его, пожалуйста.
> >Предлагается подумать над следующими двумя полиси:
> >6. Программы на python, не зависящие от конкретной версии питона
> > (epydoc, python-doc-tools), собираются _без_ байткода и,
> > соответственно, без привязки к точной версии питона, используется
> > #!/usr/bin/env python ...
> А где же они лежать будут? по логике все равно в python?.?/site-packages/
Нет. Питоньи скрипты (н-р, python-doc-tools) лежат не там.
epydoc тоже лежит не там, вроде бы. Если нужно подумать над
"версионно-независимом" каталоге для питона, его можно организовать,
насколько я понимаю.
> По моему, это излишнее усложнение. Поддерживается один питон, так и
> пусть поддерживается.
> Наоборот скорее от сорцов надо избавлятся (только без размножения
> пакетов).
Без разможения пакетов - плохо, по-моему. Я сейчас периодически сам
заглядываю в твистедовые потроха, чтобы понять, что же имелось ввиду в
доке.
> >7. Программы, имеющие такую привязку (н-р, идущие вместе с конкретной
> > версией питона) иcпользуют #!/usr/bin/env python<version> ...
> > и могут таскать за собой байткод.
> В скриптах? и вы согласны переписывать все скрипты в модуле при переходе
> версий???
Если эти _скрипты_ завязаны на данную версию питона: да, согласен.
Но, мой опыт (сборки twisted) показывает, что достаточно внятно разделить:
вот этот пакет - модул{ь,и}, он[и] привязан[ы] к версии питона, а вот
это - скрипты [из /usr/bin], которые одинаково хорошо работают как с
твистедом, собранным под 2.2, так и с твистедом, собранным под 2.3
> >8. Некоторое время назад Андрей предлагал в "боевых" пакетах таскать
> > только байткод, а .py заворачивать в отдельные пакеты "для
> > интересующихся" (по моему разумению, по схеме, напоминающей то, что
> > делает Алекс Отт для емакса, хотя _это мои предположения_)
> И наплодить еще дубликатов-пакетов пачку.
У Андрея были практические соображения, почему в боевую версию НЕ надо
пихать сорцы. С другой стороны, мой небольшой практический опыт
показывает, что сорцы _иногда_ нужны.
> У меня вот зреет какое то общее средство под кодовым названием stripper.
...
> Также можно поставить правила по умолчанию и они будут срабатывать при
> установке пакетов сами.
Это никак не упихивается в рамки distutils?
>
> Незрело, конечно, но по моему, вполне может получится...
Показывайте.
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя : =?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/20040211/ef06b7b2/attachment-0001.bin>
Подробная информация о списке рассылки Devel