ALT Linux Team development discussions
 help / color / mirror / Atom feed
* [devel] allow_python3_import_path Re: gis-weather unmets
  @ 2016-10-11 12:41 ` Ivan Zakharyaschev
    0 siblings, 1 reply; 2+ messages in thread
From: Ivan Zakharyaschev @ 2016-10-11 12:41 UTC (permalink / raw)
  To: drool; +Cc: devel

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


On Tue, 11 Oct 2016, Motsyo Gennadi wrote:

> 	Захотел обновить gis-weather, на локальном хашере p8 собирается, в 
> сизифе обломалось:
> http://git.altlinux.org/tasks/170722/logs/events.1.1.log
> 	 Есть возможность подсказать, чего ему не хватает?

Там:

 	x86_64: NEW unmet dependencies detected:
gis-weather#0.8.1-alt1  	python3(dialogs) < 0
gis-weather#0.8.1-alt1  	python3(services) < 0


Вижу, он сам их и предоставляет по своему особому пути (разбил на строки) 
-- и раньше так:

[imz@people 1010]$ fgrep 'python3(dialogs)' success/* error/*
success/gis-weather-0.8.0-alt1.1:/usr/src/tmp/gis-weather-buildroot/usr/share/gis-weather/dialogs/__init__.py 
provides python3(dialogs) (under non-std path /usr/share/gis-weather)

success/gis-weather-0.8.0-alt1.1:Provides: python3(dialogs) = set:ed6q, 
python3(dialogs.about_dialog) = set:ed6q, python3(dialogs.city_id_dialog) 
= set:ed6q, python3(dialogs.help_dialog) = set:ed6q, 
python3(dialogs.settings_dialog) = set:ed6q, 
python3(dialogs.update_dialog) = set:ed6q, python3(services) = set:ed6q, 
python3(services.accuweather) = set:ed6q, python3(services.data) = 
set:ed6q, python3(services.gismeteo) = set:ed6q, 
python3(services.openweathermap) = set:ed6q, python3(services.yr) = 
set:ed6q, python3(utils) = set:ed6q, python3(utils.autorun) = set:ed6q, 
python3(utils.convert) = set:ed6q, python3(utils.date_convert) = set:ed6q, 
python3(utils.desktop) = set:ed6q, python3(utils.diff_versions) = 
set:ed6q, python3(utils.gw_menu) = set:ed6q, python3(utils.gw_vars) = 
set:ed6q, python3(utils.instance) = set:ed6q, python3(utils.localization) 
= set:ed6q, python3(utils.opener) = set:ed6q, python3(utils.presets) = 
set:ed6q, python3(utils.weather_vars) = set:ed6q, 
python3(utils.wind_direct_convert) = set:ed6q

success/gis-weather-0.8.0-alt1.1:Requires: python3-module-pygobject3, 
python3-module-pycairo, /bin/bash, /usr/bin/env, python3, 
python3(__future__) < 0, python3(argparse) < 0, python3(cairo) < 0, 
python3(datetime) < 0, python3(dialogs) < 0, python3(gettext) < 0, 
python3(gi) < 0, python3(gzip) < 0, python3(json) < 0, python3(locale) < 
0, python3(math) < 0, python3(os) < 0, python3(re) < 0, python3(services) 
< 0, python3(shlex) < 0, python3(shutil) < 0, python3(subprocess) < 0, 
python3(urllib) < 0, python3(utils) < 0, typelib(GLib), typelib(GObject), 
typelib(Gdk), typelib(GdkPixbuf), typelib(Gtk), typelib(Pango), 
typelib(PangoCairo), typelib(Rsvg)

success/gis-weather-0.8.0-alt1.1:+Requires: python3(dialogs) < 0

success/gis-weather-0.8.0-alt1.1:+Provides: python3(dialogs) = set:ed6q

Надо дать указание про это в spec-е с помощью %allow_python3_import_path . 
См. пример в спеке poezio .

Не всегда удобно по умолчанию разрешать такие импорты, даже если у нас 
есть не стандратный python3_path.

(В частности, могут возникнуть проблемы из-за разных путей на разных 
архитектурах.)

Давайте посмотрим, что будет.

Best regards,
Ivan

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

* Re: [devel] allow_python3_import_path Re: gis-weather unmets
  @ 2016-10-11 17:31     ` Ivan Zakharyaschev
  0 siblings, 0 replies; 2+ messages in thread
From: Ivan Zakharyaschev @ 2016-10-11 17:31 UTC (permalink / raw)
  To: drool; +Cc: devel

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

On Tue, 11 Oct 2016, Motsyo Gennadi wrote:

> 11.10.2016 15:41, Ivan Zakharyaschev пишет:
>>  Надо дать указание про это в spec-е с помощью %allow_python3_import_path
>>  . См. пример в спеке poezio .
>>
>>  Давайте посмотрим, что будет.
>
> 	Есть возможность проверить это на сизифе? У меня только на p8 есть

Проверил, пересобрав в Sisyphus старую версию.

Оказалось, что достаточно просто использовать %add_python3_path для этого 
пакета; тогда зависимости самоудовлетворяются.

Но я ради эксперимента и подготовки к будущему добавил в спек 
пересобранной в Sisyphus старой версии и тот макрос, о котором говорил. Он 
пригождается, если есть подпакеты и между ними такие зависимости.

А ещё в будущем можно было бы из python3.req.py выкинуть код про 
самоудволетворение (ради простоты), потому что теперь эта фича дублируется 
в самом rpm (оптимизация зависимостей).

(И ещё %python3_req_hier, чтобы посмотреть, как пакет это переживёт. Тоже 
полезное усиление зависимостей, которое думаю включить в будущем по 
умолчанию. С помощью него обнаружил ошибки в пакетах, когда включал.

Например, в пакете python3 был неработоспособный код. И ещё какой-то был 
пустой пакет, который как бы удовлетворял простые зависимости дргуих 
пакетов, а кода на самом деле не было.

Взял себе за правило перед копированием в p8 включать %python3_req_hier, 
чтобы быть более уверенным в работоспособности того, что в p8.)

Best regards,
Ivan

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

end of thread, other threads:[~2016-10-11 17:31 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-10-11 12:41 ` [devel] allow_python3_import_path Re: gis-weather unmets Ivan Zakharyaschev
2016-10-11 17:31     ` Ivan Zakharyaschev

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