ALT Linux Team development discussions
 help / color / mirror / Atom feed
From: Mikhail Zabaluev <mhz@altlinux.org>
To: ALT Devel discussion list <devel@altlinux.ru>
Subject: [devel] Re: A: Полиси ( я свел все воедино ) + FAQ
Date: Tue, 24 Feb 2004 03:16:41 +0300
Message-ID: <20040224001641.GF2598@av1046.comex.ru> (raw)
In-Reply-To: <200402230950.40967.cray@neural.ru>

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

Hello Andrey,

On Mon, Feb 23, 2004 at 09:50:40AM +0300, Andrey Orlov wrote:
>
> > Нужно решить лишь такую задачу: если есть зависимость между модулями,
> > эта зависимость должна учитывать версию python ABI. Как этого можно
> > достичь, я писал.
> 
> Увы, но синтаксис языка тоже менятся, не оставаясь до конца совместимым
> ни вперед, ни назад. Zope для версии 2.2 разражается кучей предупреждений
> и ввалится, при запуске с 2.3, причем исключительно из-за проблем синтаксиса.

Здесь ещё раз хочу предложить wrapper /usr/bin/python, который
позволит устанавливать версию с помощью переменной окружения
PYTHON_VERSION для любого отдельного приложения.
Alternatives, как вы понимаете, такой гибкости дать не может.

Нужно ли решать эту проблему с помощью вилки "ужесточение/усложнение"
("конфликтный" python vs "левый" python-weak), когда более элегантное
решение есть и уже отработано на других приложениях?  Ей-богу, когда
пользователей зажимают в жёсткие зависимости и крюки, чтобы их обойти,
это может быть гораздо хуже, чем дать им возможность ошибиться,
запустив приложение не под тем python. Тем более, что это главным
образом проблема ПЕРЕХОДНОГО ПЕРИОДА в Sisyphus.  Обеспечение
полностью безболезненного апгрейда для пользователей Sisyphus -- это
вообще не-задача.

> > Я думаю, можно полагаться на неявное обязательство разработчиков
> > Python не ломать ABI между микро-релизами.
> 
> Я тоже думаю, только как я уже написал - дело не в ABI, а в синтаксисе.

Синтаксис тем более не меняется между микро-релизами. 

> > По крайней мере, такое правило должно соблюдаться: если пользователь ставит
> > apt-get install python python-doc
> > он вправе расчитывать на наличие всех модулей, о которых написано в
> 
> Соблюдается. Правда, в перспективе, скорее python, python-modules, python-doc.
> зависимость python / python-modules - временное решение.

Предлагаю сделать постоянным. Для любителей компактной установки
всё равно останется python-base и ручной выбор python-modules-*

> > >             python-weak -- python с облегченными зависимостями,
> > > допускающий провести совместную установку со старой версий pythonX.Y
> >
> > Я чую ненужную сложность.
> > не будет установлен. Отпустите python-weak в пространство
> > невоплощённых идей.
> 
> Не отпущу. Вам не мешает - мне нужно, некоторым другим - тоже. Кроме
> того, это работает.

Мне мешает любое отклонение от ожидаемого именования пакетов,
которое надо запоминать или разыскивать.
Аргумент "мне и некоторым другим нужно" от корифея-разработчика вызывает
нехорошие подозрения. Вспоминается панель управления GNOME 1.4,
80% которой повергали обычного пользователя в ступор.
Что можно сделать, если пользователь установил python-weak по недомыслию и
желает его сменить на нормальный python? Апгрейдится ли python-weak и
на что? Наконец, нужно ли всё это где-либо вне Sisyphus?
Если ответ на последний вопрос "нет", лучше убейте этот аппендикс
и уберите конфликт между python и legacy pythons. Те, кто используют
Sisyphus, смогут разобраться сами, иначе им не стоит использовать
Sisyphus.

> Установка новой версии командой apt-get install python приведет
> к сносу старой версии, из-за существующего между ними конфликта.

Меня тут озарило.
Нужно ввести как policy критерий использования тега Conflicts: тогда и
только тогда, когда есть конфликт по файлам либо совместная установка
пакетов _безусловно_ нарушает работоспособность системы или её
составляющих.  Если вы используете Conflicts для каких-то других
целей, вы роете яму себе и другим.

> > >         6.  Симлинки на головные модули пакетов, устанавливаемых
> > > многократно с специфичными версиями python должны управлятся посредством
> > > alternatives, что позволяет избежать ситуации, с запуском головного
> 
> > Интересно, как вы этого добьётесь, если python и инструмент
> > устанавливаются раздельно и используют отдельные конфигурации
> > для alternatives (slave невозможен).
> 
> Пока что я этого добиваюсь, так как все такие пакеты мои и являются частью питона,
> как например idle и pynche.

С трудом представляю. При установке python заводится slave на idle,
которого может не быть в системе?
Без slave возможен разнобой, когда python показывает на 2.2,
а idle на 2.3.

> > Не стоит. Python - скриптовый язык, и пусть модули сохраняют
> > скриптовый вид. Если нужна "компактность, компактность, компактность",
> > пользуйтесь zip-ованными архивами, которые поддерживает python 2.3
> 
> Нужна не только компактность, но и быстродействие

И наличие .py рядом с компилированным кодом влияет на это как?

> а также некая степень
> защищенности от случайного вмешательства со стороны любителя "грязной"
> настройки.

Учим пользователя жить в его собственной системе? :)
Это настолько не в духе Unix, что я даже не знаю, что на это возразить...

-- 
Stay tuned,
  MhZ                                     JID: mhz@altlinux.org
___________
Military intelligence is a contradiction in terms.
		-- Groucho Marx

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

  reply	other threads:[~2004-02-24  0:16 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-02-22 19:32 [devel] " Andrey Orlov
2004-02-22 21:40 ` [devel] " Mikhail Zabaluev
2004-02-22 22:18   ` Mikhail Zabaluev
2004-02-22 22:34   ` Dmitry V. Levin
2004-02-22 22:57     ` [devel] " Денис Смирнов
2004-02-23  6:37     ` [devel] " Andrey Orlov
2004-02-23  7:32       ` [devel][JT] " Andrey Rahmatullin
2004-02-23  6:50   ` [devel] " Andrey Orlov
2004-02-24  0:16     ` Mikhail Zabaluev [this message]
2004-02-24  5:01       ` Andrey Orlov
2004-02-24 11:18       ` Алексей Любимов

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=20040224001641.GF2598@av1046.comex.ru \
    --to=mhz@altlinux.org \
    --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