ALT Linux Team development discussions
 help / color / mirror / Atom feed
* [devel] QA: Unmets в питоновских модулях , как с ними боротся
@ 2004-05-24  9:40 Andrey Orlov
  2004-06-18 13:54 ` Michael Shigorin
  2004-06-23  9:54 ` Igor Tertishny
  0 siblings, 2 replies; 8+ messages in thread
From: Andrey Orlov @ 2004-05-24  9:40 UTC (permalink / raw)
  To: ALT Devel discussion list

Hi!

Это письмо уже проходило по рассылке, но судя по тому, что цитаты из него
попрежнему помогают решать проблемы, его стоит запостить еще раз:

Должен заметить - данная инструкция позволяет быстро решить проблему.
== CUT ==
Q15: Unmets в питоновксих модулях, как с ними боротся?
    > The following packages have unmet dependencies:
    >   solfege: Depends: python2.3(gnome) but it is not installable
    >            Depends: python2.3(gobject) but it is not installable
    >            Depends: python2.3(gtk) but it is not installable
    >            Depends: python2.3(mpd) but it is not installable
    >            Depends: python2.3(pango) but it is not installable
    >            Depends: python2.3(soundcard) but it is not installable
    >            Depends: python2.3(src) but it is not installable

    A15:

    Надо разбиратся с конкретными пакетами, которые провайдят эти дела и 
    разбираться почему они не встают. Типовой вариант один: автоматический
    поиск зависимостей нашел  такие зависимости, которые не могут быть 
    удовлетворены в принципе - напремер, на модули для макоса.

    Методы борьбы зависят от причин возникновения:

    1. Зависимости порождаются файлами, которые не используются пакетом (встречается).

    Решение: прибить такие файлы

    2. Зависимости порождаются тестовыми модулями.

    Решение: вынести тестовые модули в отдельный подпакет (python-module-SOMETHAT-test)
    и поставить на нем AutoReqProv: nopython. Еще вариант - стереть.

    3. Зависимости порождаются конструкциями вида:

    if EXPR :
        import MACOSMODULE

    Большая часть таких проблем не возникает (я научился это отлавливать, подробности в доке),
    но если вдруг возникли - решений два: пропатчить модуль чбы исключить такой код или
    явно исключить зависимость указанием в спеке выражения:

    %add_python_req_skip <ИМЯ_МОДУЛЯ>

 4. Наверно, в поиске зависимостей и провайдес есть ошибки. В этом случае
    нужно удалять зависимости или проставлять провайдес вручную:

    %add_python_req_skip <ИМЯ_МОДУЛЯ>

    Provide: python%__python_version( <ИМЯ_МОДУЛЯ> )

    После этого подвесте баг на пакет rpm-build-python с указанием пакета и проблемной зависимости.

5. Наконец, есть плохой, неправильный, но очень быстрый способ решить проблему "временно": отключить
поиск зависимостей:

AutoReqProv: yes, nopython
Requires: python-strict

По зависимости python-strict вытянется "стандартная установка python", а поиск зависимостей
будет отключен. Помните, что в этом случае предполагается что все необходимые
зависимости вы проставите сами (скорее всего, они у вас уже стоят, только на сами пакеты, а не на 
автоматически найденные Provides, только обратите внимание еще и на то, что для подавляющегео большинства
пакетов-модулей изменилось  имя (например MySQL-python -> python-module-MySQLdb))).

Иными словами, вы возвращаетесь к ситуации, которая была до введения полиси. Разумеется, 
т.о., ваш пакет будет ее нарушать, но это даст вам время решить проблемы одним из более 
правильных способов, изложенных выше.
== CUT ==

-- 
WthBstRgrds -- Андрей Орлов --  
 --- http: www.neural.ru, mail: cray@neural.ru, jid: cray@altlinux.org ---
----------------------------------------


^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2004-06-23 14:21 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2004-05-24  9:40 [devel] QA: Unmets в питоновских модулях , как с ними боротся Andrey Orlov
2004-06-18 13:54 ` Michael Shigorin
2004-06-18 14:28   ` Andrey Orlov
2004-06-23  9:54 ` Igor Tertishny
2004-06-23 10:19   ` Andrey Orlov
2004-06-23 10:32     ` Igor Tertishny
2004-06-23 13:26       ` Andrey Orlov
2004-06-23 14:21       ` Andrey Orlov

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