ALT Linux Team development discussions
 help / color / mirror / Atom feed
From: "Alexey I. Froloff" <raorn@immo.ru>
To: ALT Devel discussion list <devel@altlinux.ru>
Subject: Re: [devel] Переход на новый python
Date: Thu, 17 Mar 2005 10:17:51 +0300
Message-ID: <20050317071751.GP16967@immo.ru> (raw)
In-Reply-To: <200503161611.54490.cray@neural.ru>

[-- Attachment #1: Type: text/plain, Size: 3928 bytes --]

* Andrey Orlov <cray@> [050316 16:12]:
> Теперь подробно. 
[..skip..]
> Если же вам libpython2.3 нужна для чего-то еще, то .... вам
> придется чем-то пожертвовать.
Ну, мы вчера в jabber этот вопрос уже обсуждали...

Если питон один, то почему их три?  Зачем нужно держать в
репозитарии три версии питона? (Андрей, если напрягает, пропусти
пять абзацев ;-)

$ locate -r SRPMS/python-\?2
/var/ftp/pub/distributions/ALTLinux/Sisyphus/files/SRPMS/python-2.4.0-alt5.src.rpm
/var/ftp/pub/distributions/ALTLinux/Sisyphus/files/SRPMS/python2.3-2.3.4-alt7.src.rpm
/var/ftp/pub/distributions/ALTLinux/Sisyphus/files/SRPMS/python22-2.2.3-alt8.1.1.src.rpm

Для меня количество питонов определется количеством пакетов,
провайдящих python-devel - количество вариантов сборки чего-либо.
Сейчас выбор варианта делается через зависимость на
python-devel=%_python_version...

После появления python-2.4.0 и переименования python-2.3.x ->
python2.3 все попытки собрать пакеты с python2.3 были об'явлены
противозаконными и нарушающими права человека.  Отсюда
получается, что есть смысл держать в репозитарии один
пакет python-devel последней версии.

Едем дальше.  Все пакеты, предоставляющие или зависимые от
питоньих модулей имеют версию питона в зависимостях
(pyhtonX.Y(blah)).  Отсюда получается, что python2.3 нужен только
на момент перехода на новый питон, чтобы не плодить сто тыщщ
мульёнов unmet'ов.

Андрей, я помню, что есть люди, которые хотят странного.  Считаем
вышенаписаное моим занудством.


Далее, зависимость на libpythonX.Y.so.x.y как правило означает
что пакет может использовать какие-то возможности языка python.
Как правило это опционально.  См. напр. vim, OOo, xchat,
gnumeric, zapping...

Сейчас libpythonX.Y.so.x.y лежит в python-base, python-base сам
по себе требует python=%__python_version, python-strict
конфликтует с python не своей версии.

Если развернуть зависимости следующим образом:

python-base может быть установлен сам по себе.
python хочет python-base=%__python_version
python-strict по прежнему конфликтует с python не своей версии.

Это решит следующие проблемы:

+ установка пакета, использующего embedded python не приведёт к
установке python-strict/relaxed/whatever если не требуются
дополнительные модули (как правило задействуются они из
вспомогательных скриптов на языке python).

+ можно одновременно поставить две непересекающиеся по файлам
версии python-base если этого требуют межпакетные зависимости и
тем более зависимости на SONAME у исполняемых файлов.  Мне
кажется, что на момент перехода можно допустить _частичную_
потерю функциональности у некоторых пакетов.  По крайней мере они
не будут унесены из системы во время перехода на новый python...

Вариант, когда у пакета есть зависимости на libpythonX.Y.so.x.y и
одновременно на pythonZ.C(blah) мне представляется маловероятным.


По поводу автоматической пересборки...  Да, я помню что некоторые
пакеты не работали при после автоматической пересборки с новым
python (2.2 это был кажется?), но у программ, которые встраивают
в себя питон немного другая ситуация.

Если изменился API программа просто автоматически не
пересоберётся, о чём мантейнер будет уведомлён и уже сам будет с
этим разбираться.  Если программа пересобралась, она запустится.
Я не думаю, что Гвидо настолько отмороженый на голову, чтобы
делать какие-то радикальные изменения, незаметные обычному
пользователю libpython (как это недавно случилось с libncurses)...

Поэтому есть смысл натравливать QA робота на все пакеты,
зависящие от libpythonX.Y.so.x.y сразу после появления нового
python в репозитарии.  Возможно с поправкой - зависящие от
libpythonX.Y.so.x.y и не зависясище от pythonX.Y(*)...

-- 
Regards, Sir Raorn.
-------------------
> Помогите решить проблему с проигрыванием midi. KMid и playmidi
...все равно не переиграют TiMidity++? ;-)
		-- mike in community@

[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

  reply	other threads:[~2005-03-17  7:17 UTC|newest]

Thread overview: 57+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-03-09  7:49 Andrey Orlov
2005-03-11 15:43 ` Dmitry V. Levin
2005-03-11 16:08   ` Alexey Morozov
2005-03-11 16:43     ` Dmitry V. Levin
2005-03-13 18:37     ` Mikhail Zabaluev
2005-03-14  8:46       ` Alexey Morozov
2005-03-14 20:29         ` Andrey Orlov
2005-03-15  9:13           ` Mikhail Zabaluev
2005-03-15 17:06           ` Alexey Morozov
2005-03-15 18:58             ` Andrey Orlov
2005-03-16  6:41               ` Alexey I. Froloff
2005-03-16  7:26                 ` Alexey Morozov
2005-03-16  8:53                   ` [devel] " Michael Shigorin
2005-03-16  8:58                     ` Ivan Fedorov
2005-03-16  7:51                 ` [devel] " Andrey Orlov
2005-03-16  8:48                   ` Alexey I. Froloff
2005-03-16 11:29                     ` Andrey Orlov
2005-03-16 11:43                       ` Alexey I. Froloff
2005-03-16 13:11                         ` Andrey Orlov
2005-03-17  7:17                           ` Alexey I. Froloff [this message]
2005-03-17  7:53                             ` Andrey Orlov
2005-03-17  8:01                               ` [devel] " Michael Shigorin
2005-03-17 20:28                                 ` Andrey Orlov
2005-03-18  9:05                                   ` Michael Shigorin
2005-03-17  8:13                               ` [devel] " Alexey I. Froloff
2005-03-17  8:37                               ` Anton Farygin
2005-03-17 20:26                                 ` Andrey Orlov
2005-03-16  7:24               ` Alexey Morozov
2005-03-16  8:28                 ` Andrey Orlov
2005-03-16  8:46                 ` Andrey Orlov
2005-03-16 21:18                   ` Mikhail Zabaluev
2005-03-16 21:44                     ` Andrey Orlov
2005-03-17 23:33                       ` Mikhail Zabaluev
2005-03-18  0:09                         ` Andrey Orlov
2005-03-18  8:03                           ` Mikhail Zabaluev
2005-03-19 11:39                             ` Andrey Orlov
2005-03-19 21:17                               ` [devel] apt-rpm issue Dmitry V. Levin
2005-03-13 21:31   ` [devel] Переход на новый python Andrey Orlov
2005-03-14  0:02     ` Dmitry V. Levin
2005-03-14 11:10       ` [devel] " Michael Shigorin
2005-03-14 16:29       ` [devel] " Dmitry V. Levin
2005-03-14 20:43       ` Andrey Orlov
2005-03-14 22:18         ` Alexey I. Froloff
2005-03-14 23:06           ` Andrey Orlov
2005-03-15  6:35             ` Alexey I. Froloff
2005-03-15  8:38               ` Andrey Orlov
2005-03-14 23:12         ` Dmitry V. Levin
2005-03-14 23:19           ` Alexey Rusakov
2005-03-14 23:22           ` Andrey Orlov
2005-03-14 23:40             ` Dmitry V. Levin
2005-03-15  8:09               ` Andrey Orlov
2005-03-29 16:19               ` Dmitry V. Levin
2005-03-29 17:23                 ` Вячеслав Диконов
2005-03-30  1:01                 ` Ivan Fedorov
2005-03-30  8:36                 ` Vitaly Lipatov
2005-03-30 10:57               ` Dmitry V. Levin
2005-03-30 14:02                 ` Sergey V Turchin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20050317071751.GP16967@immo.ru \
    --to=raorn@immo.ru \
    --cc=devel@altlinux.ru \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

ALT Linux Team development discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \
		devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru
	public-inbox-index devel

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.devel


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git