ALT Linux Team development discussions
 help / color / mirror / Atom feed
From: Andrey Orlov <cray@neural.ru>
To: ALT Devel discussion list <devel@altlinux.ru>
Subject: Re: [devel] Python Modules Policy: (was: alternatives && postfix)
Date: Mon, 16 Feb 2004 12:10:14 +0300
Message-ID: <200402161210.14350.cray@neural.ru> (raw)
In-Reply-To: <200402161122.02014.cray@neural.ru>

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

On Monday 16 February 2004 11:46, Andrey Orlov wrote:
> что с Obsoletes / Conflicts разобрался только-только. Я поставил Conflicts.
> Причины и подробное описание будут в отдельном письме, тестовый пакет
> в дедалусе будет сегодня или завтра.

Введение :

    В существующем варианте системы зависимостей на пакетах python и модулей
    к ним, существует проблема, состоящая в несостоятельности системы
    ограничений, например:
    
        Zope требует python23
        
        Zope требует MySQLdb
        
        MySQLdb требует python22
        
    Приведет к установке Zope, python23, MySQLdb & python22, что окажется
    нераобтоспособным.  Возможное решение состоит в внесении дополнительного
    ограничения на совместную установку python23 & python22, что может быть
    не очень удобно для некоторых пользователей, готовых "рискнуть".
    
Предлагаемое решение :

    Спеки для мистического пакета test & test-module лежат в атаче, чбы
    пример заработал, в /etc/apt/pkgpriorities нужно добавить строчки
    test23, test23-strict, test22-weak (Кстати, к кому обращатся по поводу
    их внесения на постоянной основе для пакетов python?).
    
    Чбы проиллюстрировать работу, просто приведу несколько команд:
    
        1.  Установка старой версии :
        
            apt-get install test22
            
        2.1  Обновление ее до новой версии (старая версия будет снесена):
        
            apt-get install test23
    
        2.2  Установка новой версии с сохранением старой (для тех кому
        надо):
        
            apt-get install test23-weak
    
        2.2.1 Удаление старой версии
        
            apt-get install test23-strict
            
    Обычные пользователи проводят систему через стадии 1, 2.1; Разработчики,
    которым некоторое время могут быть реально нужны обе версии python,
    проводят систему через стадии 1, 2.2, 2.2.1, понимая при этом, что на
    стадии 2.2 система может оказаться не юзабельной.
    
Преимущества и недостатки решения :

    Раз уж оба пакета можно поставить, то умный apt должен бы находить
    решение (недопустимое) в системе ограничений, описанной в "введении",
    Правда, в моих опытах apt решение не находит, но я не знаю как к этому
    относится: не полному пониманию смысла ограничений мной, или ошибкой в
    apt. Если кто-то себя считает авторитетом в apt (LDV?) и ему это
    интересно - можно обсудить приватно. Если apt начнет находить решение,
    то стоит отказаться от пакетов *weak или вынести их в отдельный
    репозиторий, сделав ограничение строгим.
    
    В тоже время, по крайней мере "обычные" варианты апгрейда системы будут
    приводить к обязательному сносу старой версии python. Т.о. это работает.

    Если кто-то обратил внимание, в спеках прописано ограничение вида
    "Conflicts", а не "Obsoletes", из комментариев видно, что "Obsoletes" я
    тоже пробовал. Мне показалось (частью потому, как это работает, частью
    после чтения ченджлогов и исходников на rpm), что фича rpm Obsoletes в
    паре с apt преимуществ не имеет, возможно в силу того, что apt о ее
    отличиях от Conflicts просто не знает. Мне проще использовать Conflicts,
    так как Obsoletes на виртуальные пакеты не действует, но в принципе с
    Obsoletes (см. комментарии) тоже работает.

    Есть упрощенный вариант, в котором нет пакета test23-strict, а его функции
    берет на себя пакет test23, этот вариант тоже работает. Правда, наличие
    в заголовке конфликта на самого себя выглядит неким хаком и внушает горячкее желание
    поближе ознакомится с обработкой зависимостей в apt/rpm. В принципе, если
    я проблем не найду, то именно второй вариант останетя для python.
    
-- 
WthBstRgrds -- Андрей Орлов --  
 --- http: www.neural.ru, mail: cray@neural.ru, jid: cray@altlinux.org ---
----------------------------------------

[-- Attachment #2: test22-module.spec --]
[-- Type: text/plain, Size: 386 bytes --]

%define curver	22
%define prever  21

Version: 2.3.3
Release: alt5.99
Name: test%curver-module
Summary: Stupid module
License: PSF
Group: Development/Python
Url: http://www.python.org/
Packager: Python Development Team <python@packages.altlinux.org>
Provides: test-module
Requires: test%curver-core

%description
test
package.

%prep
%build
%install
%__mkdir_p $RPM_BUILD_ROOT

%files 

[-- Attachment #3: test23-module.spec --]
[-- Type: text/plain, Size: 386 bytes --]

%define curver	23
%define prever  22

Version: 2.3.3
Release: alt5.99
Name: test%curver-module
Summary: Stupid module
License: PSF
Group: Development/Python
Url: http://www.python.org/
Packager: Python Development Team <python@packages.altlinux.org>
Provides: test-module
Requires: test%curver-core

%description
test
package.

%prep
%build
%install
%__mkdir_p $RPM_BUILD_ROOT

%files 

[-- Attachment #4: test23.spec --]
[-- Type: text/plain, Size: 1138 bytes --]

%define curver	23
%define prever  22

Version: 2.3.3
Release: alt5.991
Name: test%curver
Summary: An interpreted, interactive object-oriented programming language
License: PSF
Group: Development/Python
Url: http://www.python.org/
Packager: Python Development Team <python@packages.altlinux.org>
Provides: test
Requires: test%curver-core

%description
test
package.

%package weak
Summary: Python with weak conflicts: using with python22 are allowed
Group: Development/Python
Provides: test%curver-core
Conflicts: test%curver-strict
Requires: test%curver-base
%description weak

%package strict
Summary: Python with weak conflicts: using with python22 are allowed
Group: Development/Python
Provides: test%curver-core
Conflicts: test%curver-weak
Requires: test%curver-base
#Obsoletes: test%prever-core
Conflicts: test%prever-core
#Obsoletes: test%prever-strict
#Obsoletes: test%prever-weak
%description strict

%package base
Summary: Base python modules and executables
Group: Development/Python
Requires: test%curver-core

%description base

%prep
%build
%install
%__mkdir_p $RPM_BUILD_ROOT

%files 
%files weak
%files strict
%files base 

[-- Attachment #5: test22.spec --]
[-- Type: text/plain, Size: 1138 bytes --]

%define curver	22
%define prever  21

Version: 2.3.3
Release: alt5.991
Name: test%curver
Summary: An interpreted, interactive object-oriented programming language
License: PSF
Group: Development/Python
Url: http://www.python.org/
Packager: Python Development Team <python@packages.altlinux.org>
Provides: test
Requires: test%curver-core

%description
test
package.

%package weak
Summary: Python with weak conflicts: using with python22 are allowed
Group: Development/Python
Provides: test%curver-core
Conflicts: test%curver-strict
Requires: test%curver-base
%description weak

%package strict
Summary: Python with weak conflicts: using with python22 are allowed
Group: Development/Python
Provides: test%curver-core
Conflicts: test%curver-weak
Requires: test%curver-base
#Obsoletes: test%prever-core
Conflicts: test%prever-core
#Obsoletes: test%prever-strict
#Obsoletes: test%prever-weak
%description strict

%package base
Summary: Base python modules and executables
Group: Development/Python
Requires: test%curver-core

%description base

%prep
%build
%install
%__mkdir_p $RPM_BUILD_ROOT

%files 
%files weak
%files strict
%files base 

  parent reply	other threads:[~2004-02-16  9:10 UTC|newest]

Thread overview: 193+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-02-09 12:47 [devel] alternatives && postfix Grigory Milev
2004-02-09 12:47 ` Grigory Milev
2004-02-09 14:03 ` Алексей Любимов
2004-02-09 14:06   ` Алексей Любимов
2004-02-09 14:20   ` [devel] " Michael Shigorin
2004-02-09 14:20     ` Michael Shigorin
2004-02-09 14:45     ` Алексей Любимов
2004-02-09 14:49       ` Алексей Любимов
2004-02-09 15:04       ` Yuri N. Sedunov
2004-02-09 15:04         ` Yuri N. Sedunov
2004-02-09 15:30         ` Алексей Любимов
2004-02-09 15:34           ` Алексей Любимов
2004-02-09 15:44           ` Yuri N. Sedunov
2004-02-09 15:44             ` Yuri N. Sedunov
2004-02-09 15:53             ` Алексей Любимов
2004-02-09 15:56               ` Алексей Любимов
2004-02-09 16:01               ` Alexander Bokovoy
2004-02-09 16:02                 ` Alexander Bokovoy
2004-02-09 16:02                 ` Алексей Любимов
2004-02-09 16:06                   ` Алексей Любимов
2004-02-09 16:00           ` Yuri N. Sedunov
2004-02-09 16:00             ` Yuri N. Sedunov
2004-02-09 19:12         ` Egor S. Orlov
2004-02-09 19:13           ` Egor S. Orlov
2004-02-09 20:01           ` Alexey Lubimov
2004-02-09 20:01             ` Alexey Lubimov
2004-02-10  6:47             ` Egor S. Orlov
2004-02-10  6:48               ` Egor S. Orlov
2004-02-10  9:09               ` Michael Shigorin
2004-02-10  9:09                 ` Michael Shigorin
2004-02-10  9:20                 ` Egor S. Orlov
2004-02-10  9:21                   ` Egor S. Orlov
2004-02-10  9:51                   ` Michael Shigorin
2004-02-10  9:51                     ` Michael Shigorin
2004-02-10 10:21                     ` Egor S. Orlov
2004-02-10 10:22                       ` Egor S. Orlov
2004-02-10 10:23                     ` Yuri N. Sedunov
2004-02-10 10:23                       ` Yuri N. Sedunov
2004-02-09 21:28           ` Yuri N. Sedunov
2004-02-09 21:28             ` Yuri N. Sedunov
2004-02-10 14:14         ` Egor S. Orlov
2004-02-10 14:15           ` Egor S. Orlov
2004-02-10 20:40           ` Andrey Orlov
2004-02-10 20:39             ` Andrey Orlov
2004-02-09 15:09       ` Alexey Morozov
2004-02-09 15:10         ` Alexey Morozov
2004-02-09 15:21         ` Alex Murygin
2004-02-09 15:22           ` Alex Murygin
2004-02-09 15:53           ` Alexey Morozov
2004-02-09 15:53             ` Alexey Morozov
2004-02-09 15:39         ` Алексей Любимов
2004-02-09 15:43           ` Алексей Любимов
2004-02-09 16:09           ` Alexey Morozov
2004-02-09 16:09             ` Alexey Morozov
2004-02-09 17:32             ` [devel] " Денис Смирнов
2004-02-09 18:09         ` [devel] " Andrey Orlov
2004-02-09 18:08           ` Andrey Orlov
2004-02-09 18:29           ` Michael Shigorin
2004-02-09 18:29             ` Michael Shigorin
2004-02-09 19:04             ` Alexey Lubimov
2004-02-09 19:04               ` Alexey Lubimov
2004-02-09 19:13             ` Andrey Orlov
2004-02-09 19:12               ` Andrey Orlov
2004-02-09 19:37               ` Michael Shigorin
2004-02-09 19:37                 ` Michael Shigorin
2004-02-09 21:18                 ` Andrey Orlov
2004-02-09 21:24                   ` Andrey Orlov
2004-02-09 20:23               ` Alexey Lubimov
2004-02-09 20:23                 ` Alexey Lubimov
2004-02-09 20:54                 ` Andrey Orlov
2004-02-09 20:53                   ` Andrey Orlov
2004-02-09 22:26                   ` Alexey Lubimov
2004-02-09 22:27                     ` Alexey Lubimov
2004-02-09 23:43                     ` Andrey Orlov
2004-02-10  0:02                       ` Andrey Orlov
2004-02-09 21:25                 ` Andrey Orlov
2004-02-09 21:24                   ` Andrey Orlov
2004-02-09 22:31                   ` Alexey Lubimov
2004-02-09 22:31                     ` Alexey Lubimov
2004-02-10  0:01                     ` Andrey Orlov
2004-02-10  0:02                       ` Andrey Orlov
2004-02-10  7:43                       ` Алексей Любимов
2004-02-10  7:46                         ` Алексей Любимов
2004-02-10  8:04                         ` Alexey Morozov
2004-02-10  8:04                           ` Alexey Morozov
2004-02-10  8:28                           ` Andrey Orlov
2004-02-10  8:27                             ` Andrey Orlov
2004-02-10  8:46                             ` [devel] [JT] " Alexey Morozov
2004-02-10  8:46                               ` Alexey Morozov
2004-02-10  9:05                               ` Andrey Orlov
2004-02-10  9:04                                 ` Andrey Orlov
2004-02-10 16:06                             ` [devel] " Anton Farygin
2004-02-10 16:06                               ` Anton Farygin
2004-02-10  9:19                           ` Алексей Любимов
2004-02-10  9:22                             ` Алексей Любимов
2004-02-10 10:15                             ` [devel] Python Modules Policy: (was: alternatives && postfix) Alexey Morozov
2004-02-10 10:15                               ` Alexey Morozov
2004-02-10 15:51                               ` [devel] Python Modules Policy: Алексей Любимов
2004-02-10 15:54                                 ` Алексей Любимов
2004-02-10 17:44                                 ` Andrey Orlov
2004-02-10 17:53                                   ` Andrey Orlov
2004-02-10 18:28                                   ` Алексей Любимов
2004-02-10 19:27                                     ` Алексей Любимов
2004-02-11  6:04                                     ` Andrey Orlov
2004-02-11  6:03                                       ` Andrey Orlov
2004-02-11  9:50                                 ` Alexey Morozov
2004-02-11 13:46                                   ` [devel] " Andrey Khavryuchenko
2004-02-16  8:07                                     ` Andrey Orlov
2004-02-16 10:07                                       ` Алексей Любимов
2004-02-16 21:36                                         ` Andrey Orlov
2004-02-17 10:15                                           ` Алексей Любимов
2004-02-16 10:20                                       ` Alexey Morozov
2004-02-16 13:06                                         ` Andrey Orlov
2004-02-12  8:29                                   ` [devel] " Алексей Любимов
2004-02-12 10:03                                     ` Alexey Morozov
2004-02-12 15:22                                       ` Алексей Любимов
2004-02-12 16:15                                         ` Alexey Morozov
2004-02-12 17:10                                           ` Алексей Любимов
2004-02-12 17:44                                             ` Alexey Morozov
2004-02-13 11:21                                             ` [devel] [JT] " Michael Shigorin
2004-02-16  8:46                               ` [devel] Python Modules Policy: (was: alternatives && postfix) Andrey Orlov
2004-02-16  9:00                                 ` [devel] (was: Python Modules Policy) Andrey Orlov
2004-02-16 11:03                                   ` Alexey Morozov
2004-02-16 13:02                                     ` Andrey Orlov
2004-02-16 13:48                                       ` Alexey Morozov
2004-02-16 13:24                                     ` Andrey Orlov
2004-02-16 13:51                                       ` Alexey Morozov
2004-02-17  8:01                                         ` Andrey Orlov
2004-02-21 18:52                                           ` Dmitry V. Levin
2004-02-23 12:11                                             ` Alexey I. Froloff
2004-02-16  9:10                                 ` Andrey Orlov [this message]
2004-02-10  8:17                         ` [devel] Re: alternatives && postfix Andrey Orlov
2004-02-10  8:16                           ` Andrey Orlov
2004-02-10  8:20                         ` Andrey Orlov
2004-02-10  8:19                           ` Andrey Orlov
2004-02-10  1:27               ` Alexey Tourbin
2004-02-10  1:28                 ` Alexey Tourbin
2004-02-10  6:52                 ` Andrey Orlov
2004-02-10  6:51                   ` Andrey Orlov
2004-02-10  7:45                   ` Alexey Morozov
2004-02-10  7:45                     ` Alexey Morozov
2004-02-10  8:11                     ` Andrey Orlov
2004-02-10  8:10                       ` Andrey Orlov
2004-02-10  8:30                       ` Alexey Morozov
2004-02-10  8:30                         ` Alexey Morozov
2004-02-10  8:37                         ` Andrey Orlov
2004-02-10  8:36                           ` Andrey Orlov
2004-02-10  8:46                       ` Vitaly Ostanin
2004-02-10  8:46                         ` Vitaly Ostanin
2004-02-10  9:06                         ` Andrey Orlov
2004-02-10  9:05                           ` Andrey Orlov
2004-02-10  7:42               ` Alexey Morozov
2004-02-10  7:42                 ` Alexey Morozov
2004-02-10  7:55                 ` Andrey Khavryuchenko
2004-02-10  7:56                   ` Andrey Khavryuchenko
2004-02-10  8:25                   ` Alexey Morozov
2004-02-10  8:25                     ` Alexey Morozov
2004-02-10  8:11                 ` Andrey Orlov
2004-02-10  8:10                   ` Andrey Orlov
2004-02-10  8:42                   ` Alexey Morozov
2004-02-10  8:42                     ` Alexey Morozov
2004-02-10  9:04                     ` Andrey Orlov
2004-02-10  9:03                       ` Andrey Orlov
2004-02-10  7:24             ` Alexey Morozov
2004-02-10  7:24               ` Alexey Morozov
2004-02-10 21:19     ` [devel] Administrativia Dmitry V. Levin
2004-02-10 21:19       ` Dmitry V. Levin
2004-02-11 15:58       ` [devel] Muchos gracios Michael Shigorin
2004-02-09 15:36   ` [devel] alternatives && postfix Grigory Milev
2004-02-09 15:36     ` Grigory Milev
2004-02-09 17:05 ` Денис Смирнов
2004-02-09 20:07   ` Re[2]: " Volkov Serge
2004-02-09 19:45     ` Valery V. Inozemtsev
2004-02-09 20:46       ` Valery V. Inozemtsev
2004-02-10 10:04       ` Grigory Milev
2004-02-10 10:04         ` Grigory Milev
2004-02-09 20:34     ` Re[2]: " Volkov Serge
2004-02-10 10:00   ` Grigory Milev
2004-02-10 10:01     ` Grigory Milev
2004-02-10 21:22 ` Dmitry V. Levin
2004-02-10 21:22   ` Dmitry V. Levin
2004-02-11  8:48   ` Grigory Milev
2004-02-11  8:42     ` Grigory Milev
2004-02-11 12:28     ` Alexei Takaseev
2004-02-11 12:44       ` Grigory Milev
2004-02-11 12:38         ` Grigory Milev
2004-02-11 12:48         ` Alexei Takaseev
2004-02-11 13:04           ` Grigory Milev
2004-02-11 12:58             ` Grigory Milev
2004-02-11 13:14             ` Alexei Takaseev
2004-02-11 13:54               ` Grigory Milev
2004-02-11 14:03                 ` vserge
2004-02-11 17:58                 ` Денис Смирнов

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=200402161210.14350.cray@neural.ru \
    --to=cray@neural.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