ALT Linux Team development discussions
 help / color / mirror / Atom feed
* [devel] Обновление numpy и matplotlib
@ 2017-04-13 14:00 Антон Мидюков
  2017-04-14 10:00 ` Ivan Zakharyaschev
  2017-04-14 15:13 ` Michael Shigorin
  0 siblings, 2 replies; 28+ messages in thread
From: Антон Мидюков @ 2017-04-13 14:00 UTC (permalink / raw)
  To: ALT Devel discussion list, sisyphus

Здравствуйте!

В задании 181544 обновил пакеты python-module-numpy и 
python-module-matplotlib до актуальных версий. В пакетах были косяки, 
которые постарался исправить. matplotlib был не доупакован, из-за этого 
у меня не запускался Beremiz - свободный софт для программирования ПЛК. 
Ну, а раз взялся чинить заодно и обновил :-) Надеюсь никому ничего этим 
заданием не сломаю. Раньше среды отправлять в Сизиф не буду. Так что 
пока жду замечания и предложения.

-- 
С уважением Антон Мидюков <antohami@altlinux.org>



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

* Re: [devel] Обновление numpy и matplotlib
  2017-04-13 14:00 [devel] Обновление numpy и matplotlib Антон Мидюков
@ 2017-04-14 10:00 ` Ivan Zakharyaschev
  2017-04-16  1:58   ` Антон Мидюков
  2017-04-14 15:13 ` Michael Shigorin
  1 sibling, 1 reply; 28+ messages in thread
From: Ivan Zakharyaschev @ 2017-04-14 10:00 UTC (permalink / raw)
  To: ALT Linux Team development discussions

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

Здравствуйте!

On Thu, 13 Apr 2017, Антон Мидюков wrote:

> В задании 181544 обновил пакеты python-module-numpy и 
> python-module-matplotlib до актуальных версий. В пакетах были косяки, которые 
> постарался исправить. matplotlib был не доупакован, из-за этого у меня не 
> запускался Beremiz - свободный софт для программирования ПЛК. Ну, а раз 
> взялся чинить заодно и обновил :-) Надеюсь никому ничего этим заданием не 
> сломаю. Раньше среды отправлять в Сизиф не буду. Так что пока жду замечания и 
> предложения.

Я озвучивал пожелание (в связи с проверкой, которую хочется внести и в 
policy) -- 
https://lists.altlinux.org/pipermail/devel/2017-April/202544.html .

Замечание сводится к тому, что вещи объявленные в Provides, не 
импортируются без ошибок. Возмножно, из-за того, что не хватает 
зависимостей (Requires). Возможно, есть смысл отпилить это в подпакет, 
если не хочется добвалять зависимсоти в главный пакет. Вот пример для двух 
объявленных модулей, когда пакет python3-module-matplotlib установлен:

[builder@localhost .in]$ python3 -c 'import 
matplotlib.backends.backend_cairo'
Traceback (most recent call last):
   File 
"/usr/lib64/python3/site-packages/matplotlib/backends/backend_cairo.py", 
line 33, in <module>
     import cairocffi as cairo
ImportError: No module named 'cairocffi'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
   File 
"/usr/lib64/python3/site-packages/matplotlib/backends/backend_cairo.py", 
line 36, in <module>
     import cairo
ImportError: No module named 'cairo'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
   File "<string>", line 1, in <module>
   File 
"/usr/lib64/python3/site-packages/matplotlib/backends/backend_cairo.py", 
line 38, in <module>
     raise ImportError("Cairo backend requires that cairocffi or pycairo is 
installed.")
ImportError: Cairo backend requires that cairocffi or pycairo is 
installed.
[builder@localhost .in]$ python3 -c 'import matplotlib.tri'
Traceback (most recent call last):
   File "<string>", line 1, in <module>
   File "/usr/lib64/python3/site-packages/matplotlib/tri/__init__.py", line 
10, in <module>
     from .tricontour import *
   File "/usr/lib64/python3/site-packages/matplotlib/tri/tricontour.py", 
line 6, in <module>
     from matplotlib.contour import ContourSet
   File "/usr/lib64/python3/site-packages/matplotlib/contour.py", line 23, 
in <module>
     import matplotlib.text as text
   File "/usr/lib64/python3/site-packages/matplotlib/text.py", line 33, in 
<module>
     from matplotlib.backend_bases import RendererBase
   File "/usr/lib64/python3/site-packages/matplotlib/backend_bases.py", 
line 63, in <module>
     import matplotlib.textpath as textpath
   File "/usr/lib64/python3/site-packages/matplotlib/textpath.py", line 20, 
in <module>
     from matplotlib.mathtext import MathTextParser
   File "/usr/lib64/python3/site-packages/matplotlib/mathtext.py", line 23, 
in <module>
     from six import chr
ImportError: cannot import name 'chr'
[builder@localhost .in]$

Как я делал проверку:

$ apt-repo --hsh-apt-config=/home/imz/.hasher/sisyphus/apt.conf
rpm [alt] file:/ALT/Sisyphus x86_64 classic
rpm [alt] file:/ALT/Sisyphus noarch classic
rpm http://git.altlinux.org repo/181255/x86_64 task
$ apt-repo --hsh-apt-config=/home/imz/.hasher/sisyphus/apt.conf test 181544 rpm-build-python3 python3-module-matplotlib

$ hsh-shell --mount=/proc,/dev/pts
[builder@localhost .in]$ rpm -q python3-module-matplotlib --lastchange
* Wed Apr 12 2017 Anton Midyukov <antohami@altlinux.org> 2.0.0-alt1
- New version 2.0.0
[builder@localhost .in]$ /usr/lib/rpm/check-python3-provs-importable.sh 
python3-module-matplotlib; echo $?
backend_agg
backend_cairo
matplotlib.externals.six.moves
matplotlib.externals.six.moves.urllib.parse
matplotlib.externals.six.moves.urllib.request
matplotlib.axes
matplotlib.axes._axes
matplotlib.axes._base
matplotlib.axes._subplots
matplotlib.axis
matplotlib.backend_bases
matplotlib.backends.backend_agg
matplotlib.backends.backend_cairo
matplotlib.backends.backend_mixed
matplotlib.backends.backend_nbagg
matplotlib.backends.backend_pdf
matplotlib.backends.backend_pgf
matplotlib.backends.backend_ps
matplotlib.backends.backend_svg
matplotlib.backends.backend_template
matplotlib.backends.backend_webagg
matplotlib.backends.backend_webagg_core
matplotlib.colorbar
matplotlib.contour
matplotlib.figure
matplotlib.legend
matplotlib.mathtext
matplotlib.offsetbox
matplotlib.patheffects
matplotlib.projections
matplotlib.projections.geo
matplotlib.projections.polar
matplotlib.pylab
matplotlib.pyplot
matplotlib.quiver
matplotlib.table
matplotlib.text
matplotlib.textpath
matplotlib.tri
matplotlib.tri.triangulation
matplotlib.tri.tricontour
matplotlib.tri.trifinder
matplotlib.tri.triinterpolate
matplotlib.tri.tripcolor
matplotlib.tri.triplot
matplotlib.tri.trirefine
matplotlib.tri.tritools
matplotlib.type1font
pylab
123
[builder@localhost .in]$


-- 
Best regards,
Ivan

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

* Re: [devel] Обновление numpy и matplotlib
  2017-04-13 14:00 [devel] Обновление numpy и matplotlib Антон Мидюков
  2017-04-14 10:00 ` Ivan Zakharyaschev
@ 2017-04-14 15:13 ` Michael Shigorin
  2017-04-14 16:32   ` Ivan Zakharyaschev
  1 sibling, 1 reply; 28+ messages in thread
From: Michael Shigorin @ 2017-04-14 15:13 UTC (permalink / raw)
  To: devel, sisyphus

On Thu, Apr 13, 2017 at 09:00:56PM +0700, Антон Мидюков wrote:
> В задании 181544 обновил пакеты python-module-numpy
> и python-module-matplotlib до актуальных версий.

Здорово!

Ещё хорошо бы посмотреть повнимательней на то, что у нас 
чуть что в систему прилетает numpy, который тянет за собой
половину кластерного сизифа.  Пока этим всем пользовался
real@, был смысл смириться, а так мне BLAS на localhost
не упёрся ни в какой реализации на данный момент...

-- 
 ---- WBR, Michael Shigorin / http://altlinux.org
  ------ http://opennet.ru / http://anna-news.info


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

* Re: [devel] Обновление numpy и matplotlib
  2017-04-14 15:13 ` Michael Shigorin
@ 2017-04-14 16:32   ` Ivan Zakharyaschev
  2017-04-14 17:03     ` Michael Shigorin
  0 siblings, 1 reply; 28+ messages in thread
From: Ivan Zakharyaschev @ 2017-04-14 16:32 UTC (permalink / raw)
  To: ALT Linux Team development discussions; +Cc: sisyphus

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

On Fri, 14 Apr 2017, Michael Shigorin wrote:

> Ещё хорошо бы посмотреть повнимательней на то, что у нас 
> чуть что в систему прилетает numpy, который тянет за собой
> половину кластерного сизифа.  Пока этим всем пользовался

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

> real@, был смысл смириться, а так мне BLAS на localhost
> не упёрся ни в какой реализации на данный момент...


-- 
Best regards,
Ivan

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

* Re: [devel] Обновление numpy и  matplotlib
  2017-04-14 16:32   ` Ivan Zakharyaschev
@ 2017-04-14 17:03     ` Michael Shigorin
  2017-04-14 17:23       ` Ivan Zakharyaschev
  0 siblings, 1 reply; 28+ messages in thread
From: Michael Shigorin @ 2017-04-14 17:03 UTC (permalink / raw)
  To: ALT Linux Team development discussions

On Fri, Apr 14, 2017 at 07:32:05PM +0300, Ivan Zakharyaschev wrote:
> > Ещё хорошо бы посмотреть повнимательней на то, что у нас 
> > чуть что в систему прилетает numpy, который тянет за собой
> > половину кластерного сизифа.  Пока этим всем пользовался
> Так кто в этом скорее виноват: тот пакет, который вытягивает
> numpy у тебя, или numpy, который слишком много вытягивает? От
> этого зависит, куда начинать смотреть.

apt> remove python-module-numpy
Чтобы выполнить эту операцию необходимы изменения, которые не были запрошены.
Следующие пакеты будут УДАЛЕНЫ:
  fslint gimp metromap metromap-map-Moscow metromap-map-Petersburg
  python-module-notify python-module-numpy python-module-numpy-testing
  python-module-pygtk python-module-pygtk-libglade python-module-wx sK1
  solfege system-config-printer wammu

$ rpm -qR python-module-wx | grep numpy
python2.7(numpy)

А gimp -- через python2.7(gtk).

-- 
 ---- WBR, Michael Shigorin / http://altlinux.org
  ------ http://opennet.ru / http://anna-news.info


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

* Re: [devel] Обновление numpy и  matplotlib
  2017-04-14 17:03     ` Michael Shigorin
@ 2017-04-14 17:23       ` Ivan Zakharyaschev
  2017-04-14 20:31         ` Ivan Zakharyaschev
  0 siblings, 1 reply; 28+ messages in thread
From: Ivan Zakharyaschev @ 2017-04-14 17:23 UTC (permalink / raw)
  To: ALT Linux Team development discussions

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

On Fri, 14 Apr 2017, Michael Shigorin wrote:

> On Fri, Apr 14, 2017 at 07:32:05PM +0300, Ivan Zakharyaschev wrote:
>> > Ещё хорошо бы посмотреть повнимательней на то, что у нас 
>> > чуть что в систему прилетает numpy, который тянет за собой
>> > половину кластерного сизифа.  Пока этим всем пользовался
>> Так кто в этом скорее виноват: тот пакет, который вытягивает
>> numpy у тебя, или numpy, который слишком много вытягивает? От
>> этого зависит, куда начинать смотреть.
>
> apt> remove python-module-numpy
> Чтобы выполнить эту операцию необходимы изменения, которые не были запрошены.
> Следующие пакеты будут УДАЛЕНЫ:
>  fslint gimp metromap metromap-map-Moscow metromap-map-Petersburg
>  python-module-notify python-module-numpy python-module-numpy-testing
>  python-module-pygtk python-module-pygtk-libglade python-module-wx sK1
>  solfege system-config-printer wammu

system-config-printer-1.5.9-alt1 больше не использует python2.

> $ rpm -qR python-module-wx | grep numpy
> python2.7(numpy)
>
> А gimp -- через python2.7(gtk).

Может быть, это старьё. Потом они переедут на такое (и проблемы с pygtk 
решать не придётся, можно будет выкинуть):

Filename: python3-module-pygobject3-pygtkcompat-3.22.0-alt1.x86_64.rpm
Description: PyGTK compatibility layer for PyGObject
  PyGTK compatibility layer.
  It is recommended to not depend on this layer, but only use it as an
  intermediate step when porting your application to PyGI. Compatibility
  might never be 100%, but the aim is to make it possible to run a well
  behaved PyGTK application mostly unmodified on top of PyGI.

-- 
Best regards,
Ivan

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

* Re: [devel] Обновление numpy и  matplotlib
  2017-04-14 17:23       ` Ivan Zakharyaschev
@ 2017-04-14 20:31         ` Ivan Zakharyaschev
  0 siblings, 0 replies; 28+ messages in thread
From: Ivan Zakharyaschev @ 2017-04-14 20:31 UTC (permalink / raw)
  To: ALT Linux Team development discussions

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

On Fri, 14 Apr 2017, Ivan Zakharyaschev wrote:

> On Fri, 14 Apr 2017, Michael Shigorin wrote:
>
>>  On Fri, Apr 14, 2017 at 07:32:05PM +0300, Ivan Zakharyaschev wrote:
>> > >  Ещё хорошо бы посмотреть повнимательней на то, что у нас чуть что в 
>> > >  систему прилетает numpy, который тянет за собой
>> > >  половину кластерного сизифа.  Пока этим всем пользовался
>> >  Так кто в этом скорее виноват: тот пакет, который вытягивает
>> >  numpy у тебя, или numpy, который слишком много вытягивает? От
>> >  этого зависит, куда начинать смотреть.
>> 
>> apt>  remove python-module-numpy
>>  Чтобы выполнить эту операцию необходимы изменения, которые не были
>>  запрошены.
>>  Следующие пакеты будут УДАЛЕНЫ:
>>   fslint gimp metromap metromap-map-Moscow metromap-map-Petersburg
>>   python-module-notify python-module-numpy python-module-numpy-testing
>>   python-module-pygtk python-module-pygtk-libglade python-module-wx sK1
>>   solfege system-config-printer wammu
>
> system-config-printer-1.5.9-alt1 больше не использует python2.

и не вытаскивает никакого numpy (проверил с hsh-install 
system-config-printer).

-- 
Best regards,
Ivan

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

* Re: [devel] Обновление numpy и matplotlib
  2017-04-14 10:00 ` Ivan Zakharyaschev
@ 2017-04-16  1:58   ` Антон Мидюков
  2017-04-16  7:01     ` Ivan Zakharyaschev
  0 siblings, 1 reply; 28+ messages in thread
From: Антон Мидюков @ 2017-04-16  1:58 UTC (permalink / raw)
  To: devel

14.04.2017 17:00, Ivan Zakharyaschev пишет:
> Здравствуйте!
>
> On Thu, 13 Apr 2017, Антон Мидюков wrote:
>
>> В задании 181544 обновил пакеты python-module-numpy и 
>> python-module-matplotlib до актуальных версий. В пакетах были косяки, 
>> которые постарался исправить. matplotlib был не доупакован, из-за 
>> этого у меня не запускался Beremiz - свободный софт для 
>> программирования ПЛК. Ну, а раз взялся чинить заодно и обновил :-) 
>> Надеюсь никому ничего этим заданием не сломаю. Раньше среды 
>> отправлять в Сизиф не буду. Так что пока жду замечания и предложения.
>
> Я озвучивал пожелание (в связи с проверкой, которую хочется внести и в 
> policy) -- 
> https://lists.altlinux.org/pipermail/devel/2017-April/202544.html .
>
> Замечание сводится к тому, что вещи объявленные в Provides, не 
> импортируются без ошибок. Возмножно, из-за того, что не хватает 
> зависимостей (Requires). Возможно, есть смысл отпилить это в подпакет, 
> если не хочется добвалять зависимсоти в главный пакет. Вот пример для 
> двух объявленных модулей, когда пакет python3-module-matplotlib 
> установлен:
>
> [builder@localhost .in]$ python3 -c 'import 
> matplotlib.backends.backend_cairo'
> Traceback (most recent call last):
>   File 
> "/usr/lib64/python3/site-packages/matplotlib/backends/backend_cairo.py", 
> line 33, in <module>
>     import cairocffi as cairo
> ImportError: No module named 'cairocffi'
>
> During handling of the above exception, another exception occurred:
>
> Traceback (most recent call last):
>   File 
> "/usr/lib64/python3/site-packages/matplotlib/backends/backend_cairo.py", 
> line 36, in <module>
>     import cairo
> ImportError: No module named 'cairo'
>
> During handling of the above exception, another exception occurred:
>
> Traceback (most recent call last):
>   File "<string>", line 1, in <module>
>   File 
> "/usr/lib64/python3/site-packages/matplotlib/backends/backend_cairo.py", 
> line 38, in <module>
>     raise ImportError("Cairo backend requires that cairocffi or 
> pycairo is installed.")
> ImportError: Cairo backend requires that cairocffi or pycairo is 
> installed.
> [builder@localhost .in]$ python3 -c 'import matplotlib.tri'
> Traceback (most recent call last):
>   File "<string>", line 1, in <module>
>   File "/usr/lib64/python3/site-packages/matplotlib/tri/__init__.py", 
> line 10, in <module>
>     from .tricontour import *
>   File 
> "/usr/lib64/python3/site-packages/matplotlib/tri/tricontour.py", line 
> 6, in <module>
>     from matplotlib.contour import ContourSet
>   File "/usr/lib64/python3/site-packages/matplotlib/contour.py", line 
> 23, in <module>
>     import matplotlib.text as text
>   File "/usr/lib64/python3/site-packages/matplotlib/text.py", line 33, 
> in <module>
>     from matplotlib.backend_bases import RendererBase
>   File "/usr/lib64/python3/site-packages/matplotlib/backend_bases.py", 
> line 63, in <module>
>     import matplotlib.textpath as textpath
>   File "/usr/lib64/python3/site-packages/matplotlib/textpath.py", line 
> 20, in <module>
>     from matplotlib.mathtext import MathTextParser
>   File "/usr/lib64/python3/site-packages/matplotlib/mathtext.py", line 
> 23, in <module>
>     from six import chr
> ImportError: cannot import name 'chr'
> [builder@localhost .in]$
ImportError: cannot import name 'chr' у меня воспроизвелась. В исходнике 
/usr/lib64/python3/site-packages/matplotlib/mathtext.py 23 строчка 
выглядит так:
from six import unichr
А в итоговом python3-module:
from six import chr
А виноват в этом скрипт конвертации исходников на python2 в python3 в спеке:
find ./ -type f -name '*.py' -exec 2to3 -w -n '{}' + ||:
Получается, надо либо отключать эту строку в спеке, либо вводить такую 
же строчку в спеке python-module-six. Как мне кажется, первое решение 
правильное, так как в других дистрах скрипты пакета matplotlib не 
конвертируют.

Спасибо, что обратили на эту проблему моё внимание, проверю все 
провайдесы пакетов в задании.

Но у меня есть вопрос по пакету python-module-six. Alexey Shabalin уже 
добавлял этому пакеты провайдесы. Я обнаружил, что добавил он не все 
провайдесы, которые предоставляет этот пакет, и соответственно их 
добавил. Так вот, у меня вопрос, почему эти провайдесы у пакета не 
находятся? Я так понял, только потому, что все эти python субмодули 
предоставляются одним файлом six.py. Все эти субмодули объявляются 
внутри этого скрипта. Т.е. скрипт поиска провайдесов такого рода 
провайдесы не приспособлен находить?
>
> Как я делал проверку:
>
> $ apt-repo --hsh-apt-config=/home/imz/.hasher/sisyphus/apt.conf
> rpm [alt] file:/ALT/Sisyphus x86_64 classic
> rpm [alt] file:/ALT/Sisyphus noarch classic
> rpm http://git.altlinux.org repo/181255/x86_64 task
> $ apt-repo --hsh-apt-config=/home/imz/.hasher/sisyphus/apt.conf test 
> 181544 rpm-build-python3 python3-module-matplotlib
>
> $ hsh-shell --mount=/proc,/dev/pts
> [builder@localhost .in]$ rpm -q python3-module-matplotlib --lastchange
> * Wed Apr 12 2017 Anton Midyukov <antohami@altlinux.org> 2.0.0-alt1
> - New version 2.0.0
> [builder@localhost .in]$ 
> /usr/lib/rpm/check-python3-provs-importable.sh 
> python3-module-matplotlib; echo $?
> backend_agg
> backend_cairo
> matplotlib.externals.six.moves
> matplotlib.externals.six.moves.urllib.parse
> matplotlib.externals.six.moves.urllib.request
> matplotlib.axes
> matplotlib.axes._axes
> matplotlib.axes._base
> matplotlib.axes._subplots
> matplotlib.axis
> matplotlib.backend_bases
> matplotlib.backends.backend_agg
> matplotlib.backends.backend_cairo
> matplotlib.backends.backend_mixed
> matplotlib.backends.backend_nbagg
> matplotlib.backends.backend_pdf
> matplotlib.backends.backend_pgf
> matplotlib.backends.backend_ps
> matplotlib.backends.backend_svg
> matplotlib.backends.backend_template
> matplotlib.backends.backend_webagg
> matplotlib.backends.backend_webagg_core
> matplotlib.colorbar
> matplotlib.contour
> matplotlib.figure
> matplotlib.legend
> matplotlib.mathtext
> matplotlib.offsetbox
> matplotlib.patheffects
> matplotlib.projections
> matplotlib.projections.geo
> matplotlib.projections.polar
> matplotlib.pylab
> matplotlib.pyplot
> matplotlib.quiver
> matplotlib.table
> matplotlib.text
> matplotlib.textpath
> matplotlib.tri
> matplotlib.tri.triangulation
> matplotlib.tri.tricontour
> matplotlib.tri.trifinder
> matplotlib.tri.triinterpolate
> matplotlib.tri.tripcolor
> matplotlib.tri.triplot
> matplotlib.tri.trirefine
> matplotlib.tri.tritools
> matplotlib.type1font
> pylab
> 123
> [builder@localhost .in]$
>
>
>
>
> _______________________________________________
> Devel mailing list
> Devel@lists.altlinux.org
> https://lists.altlinux.org/mailman/listinfo/devel

-- 
С уважением Антон Мидюков <antohami@altlinux.org>



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

* Re: [devel] Обновление numpy и matplotlib
  2017-04-16  1:58   ` Антон Мидюков
@ 2017-04-16  7:01     ` Ivan Zakharyaschev
  2017-04-16  7:48       ` Антон Мидюков
  0 siblings, 1 reply; 28+ messages in thread
From: Ivan Zakharyaschev @ 2017-04-16  7:01 UTC (permalink / raw)
  To: ALT Linux Team development discussions

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


On Sun, 16 Apr 2017, Антон Мидюков wrote:

> 14.04.2017 17:00, Ivan Zakharyaschev пишет:
>>  Здравствуйте!
>>
>>  On Thu, 13 Apr 2017, Антон Мидюков wrote:
>> 
>> >  В задании 181544 обновил пакеты python-module-numpy и 
>> >  python-module-matplotlib до актуальных версий. В пакетах были косяки, 
>> >  которые постарался исправить. matplotlib был не доупакован, из-за этого 
>> >  у меня не запускался Beremiz - свободный софт для программирования ПЛК. 
>> >  Ну, а раз взялся чинить заодно и обновил :-) Надеюсь никому ничего этим 
>> >  заданием не сломаю. Раньше среды отправлять в Сизиф не буду. Так что 
>> >  пока жду замечания и предложения.
>>
>>  Я озвучивал пожелание (в связи с проверкой, которую хочется внести и в
>>  policy) --
>>  https://lists.altlinux.org/pipermail/devel/2017-April/202544.html .

>>  [builder@localhost .in]$ python3 -c 'import matplotlib.tri'
>>  Traceback (most recent call last):
>>    File "<string>", line 1, in <module>
>>    File "/usr/lib64/python3/site-packages/matplotlib/tri/__init__.py",
>>  line 10, in <module>
>>      from .tricontour import *
>>    File "/usr/lib64/python3/site-packages/matplotlib/tri/tricontour.py",
>>  line 6, in <module>
>>      from matplotlib.contour import ContourSet
>>    File "/usr/lib64/python3/site-packages/matplotlib/contour.py", line 23,
>>  in <module>
>>      import matplotlib.text as text
>>    File "/usr/lib64/python3/site-packages/matplotlib/text.py", line 33, in
>>  <module>
>>      from matplotlib.backend_bases import RendererBase
>>    File "/usr/lib64/python3/site-packages/matplotlib/backend_bases.py",
>>  line 63, in <module>
>>      import matplotlib.textpath as textpath
>>    File "/usr/lib64/python3/site-packages/matplotlib/textpath.py", line 20,
>>  in <module>
>>      from matplotlib.mathtext import MathTextParser
>>    File "/usr/lib64/python3/site-packages/matplotlib/mathtext.py", line 23,
>>  in <module>
>>      from six import chr
>>  ImportError: cannot import name 'chr'
>>  [builder@localhost .in]$
> ImportError: cannot import name 'chr' у меня воспроизвелась. В исходнике 
> /usr/lib64/python3/site-packages/matplotlib/mathtext.py 23 строчка выглядит 
> так:
> from six import unichr
> А в итоговом python3-module:
> from six import chr
> А виноват в этом скрипт конвертации исходников на python2 в python3 в спеке:
> find ./ -type f -name '*.py' -exec 2to3 -w -n '{}' + ||:
> Получается, надо либо отключать эту строку в спеке, либо вводить такую же 
> строчку в спеке python-module-six. Как мне кажется, первое решение 
> правильное, так как в других дистрах скрипты пакета matplotlib не 
> конвертируют.

Да, не применять больше 2to3 -- конечно, желательное решение. Скорее 
всего, большинство проектов уже в upstream адаптировались к Python3 и 2to3 
ненужное насилие над их кодом.

А применять его к six было бы совсем странно, потому что six -- это 
специальный API для совместимости между разными версиями, насколько я 
понял, и, возможно, для удобства программирования. Там и так всё уже 
должно быть предусмотрено в коде.

> Спасибо, что обратили на эту проблему моё внимание, проверю все провайдесы 
> пакетов в задании.
>
> Но у меня есть вопрос по пакету python-module-six. Alexey Shabalin уже 
> добавлял этому пакеты провайдесы. Я обнаружил, что добавил он не все 
> провайдесы, которые предоставляет этот пакет, и соответственно их добавил.

Да, это только пойдёт пакету и репозиторию Sisyphus на пользу. (Но после 
добавления Provides нужно себя автоматически проверять на импортируемость 
их таким образом, как в моём скрипте.)

> Так вот, у меня вопрос, почему эти провайдесы у пакета не находятся? Я так 
> понял, только потому, что все эти python субмодули предоставляются одним 
> файлом six.py. Все эти субмодули объявляются внутри этого скрипта. Т.е. 
> скрипт поиска провайдесов такого рода провайдесы не приспособлен находить?

Именно так, да. При желании можно написать автоматический генератор 
Provides специально для six. В каком-то смысле, это удобнее, чем 
выписывать их вручную, но в это надо вложить свой труд, и неизвестно, 
сколько времени это займёт. Это только приветствуется. Тут я бы ещё 
обратил внимание на то, что аналогичные Provides как-то должны ещё 
появляться в пакете с matplotlib, можно было бы покрыть и эти случаи 
автоматическим генератором тоже:

matplotlib.externals.six.moves
matplotlib.externals.six.moves.urllib.parse
matplotlib.externals.six.moves.urllib.request

А ещё потом можно будет отправить на повторную сборку обновлённые пакеты, 
которым их не хватило -- 
https://www.altlinux.org/Python3/UNMETS#six..2A_.2814.29 .

>>  Как я делал проверку:
>>
>>  $ apt-repo --hsh-apt-config=/home/imz/.hasher/sisyphus/apt.conf
>>  rpm [alt] file:/ALT/Sisyphus x86_64 classic
>>  rpm [alt] file:/ALT/Sisyphus noarch classic
>>  rpm http://git.altlinux.org repo/181255/x86_64 task
>>  $ apt-repo --hsh-apt-config=/home/imz/.hasher/sisyphus/apt.conf test
>>  181544 rpm-build-python3 python3-module-matplotlib
>>
>>  $ hsh-shell --mount=/proc,/dev/pts
>>  [builder@localhost .in]$ rpm -q python3-module-matplotlib --lastchange
>>  * Wed Apr 12 2017 Anton Midyukov <antohami@altlinux.org> 2.0.0-alt1
>>  - New version 2.0.0
>>  [builder@localhost .in]$ /usr/lib/rpm/check-python3-provs-importable.sh
>>  python3-module-matplotlib; echo $?
>>  backend_agg
>>  backend_cairo
>>  matplotlib.externals.six.moves
>>  matplotlib.externals.six.moves.urllib.parse
>>  matplotlib.externals.six.moves.urllib.request
>>  matplotlib.axes
>>  matplotlib.axes._axes
>>  matplotlib.axes._base
>>  matplotlib.axes._subplots
>>  matplotlib.axis
>>  matplotlib.backend_bases
>>  matplotlib.backends.backend_agg
>>  matplotlib.backends.backend_cairo
>>  matplotlib.backends.backend_mixed
>>  matplotlib.backends.backend_nbagg
>>  matplotlib.backends.backend_pdf
>>  matplotlib.backends.backend_pgf
>>  matplotlib.backends.backend_ps
>>  matplotlib.backends.backend_svg
>>  matplotlib.backends.backend_template
>>  matplotlib.backends.backend_webagg
>>  matplotlib.backends.backend_webagg_core
>>  matplotlib.colorbar
>>  matplotlib.contour
>>  matplotlib.figure
>>  matplotlib.legend
>>  matplotlib.mathtext
>>  matplotlib.offsetbox
>>  matplotlib.patheffects
>>  matplotlib.projections
>>  matplotlib.projections.geo
>>  matplotlib.projections.polar
>>  matplotlib.pylab
>>  matplotlib.pyplot
>>  matplotlib.quiver
>>  matplotlib.table
>>  matplotlib.text
>>  matplotlib.textpath
>>  matplotlib.tri
>>  matplotlib.tri.triangulation
>>  matplotlib.tri.tricontour
>>  matplotlib.tri.trifinder
>>  matplotlib.tri.triinterpolate
>>  matplotlib.tri.tripcolor
>>  matplotlib.tri.triplot
>>  matplotlib.tri.trirefine
>>  matplotlib.tri.tritools
>>  matplotlib.type1font
>>  pylab
>>  123
>>  [builder@localhost .in]$

-- 
Best regards,
Ivan

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

* Re: [devel] Обновление numpy и matplotlib
  2017-04-16  7:01     ` Ivan Zakharyaschev
@ 2017-04-16  7:48       ` Антон Мидюков
  2017-04-16  8:30         ` Ivan Zakharyaschev
  2017-04-16  8:43         ` Ivan Zakharyaschev
  0 siblings, 2 replies; 28+ messages in thread
From: Антон Мидюков @ 2017-04-16  7:48 UTC (permalink / raw)
  To: devel

16.04.2017 14:01, Ivan Zakharyaschev пишет:
>
> On Sun, 16 Apr 2017, Антон Мидюков wrote:
>
>> 14.04.2017 17:00, Ivan Zakharyaschev пишет:
>>>  Здравствуйте!
>>>
>>>  On Thu, 13 Apr 2017, Антон Мидюков wrote:
>>>
>>> >  В задании 181544 обновил пакеты python-module-numpy и >  
>>> python-module-matplotlib до актуальных версий. В пакетах были 
>>> косяки, >  которые постарался исправить. matplotlib был не 
>>> доупакован, из-за этого >  у меня не запускался Beremiz - свободный 
>>> софт для программирования ПЛК. >  Ну, а раз взялся чинить заодно и 
>>> обновил :-) Надеюсь никому ничего этим >  заданием не сломаю. Раньше 
>>> среды отправлять в Сизиф не буду. Так что >  пока жду замечания и 
>>> предложения.
>>>
>>>  Я озвучивал пожелание (в связи с проверкой, которую хочется внести и в
>>>  policy) --
>>>  https://lists.altlinux.org/pipermail/devel/2017-April/202544.html .
>
>>>  [builder@localhost .in]$ python3 -c 'import matplotlib.tri'
>>>  Traceback (most recent call last):
>>>    File "<string>", line 1, in <module>
>>>    File "/usr/lib64/python3/site-packages/matplotlib/tri/__init__.py",
>>>  line 10, in <module>
>>>      from .tricontour import *
>>>    File 
>>> "/usr/lib64/python3/site-packages/matplotlib/tri/tricontour.py",
>>>  line 6, in <module>
>>>      from matplotlib.contour import ContourSet
>>>    File "/usr/lib64/python3/site-packages/matplotlib/contour.py", 
>>> line 23,
>>>  in <module>
>>>      import matplotlib.text as text
>>>    File "/usr/lib64/python3/site-packages/matplotlib/text.py", line 
>>> 33, in
>>>  <module>
>>>      from matplotlib.backend_bases import RendererBase
>>>    File "/usr/lib64/python3/site-packages/matplotlib/backend_bases.py",
>>>  line 63, in <module>
>>>      import matplotlib.textpath as textpath
>>>    File "/usr/lib64/python3/site-packages/matplotlib/textpath.py", 
>>> line 20,
>>>  in <module>
>>>      from matplotlib.mathtext import MathTextParser
>>>    File "/usr/lib64/python3/site-packages/matplotlib/mathtext.py", 
>>> line 23,
>>>  in <module>
>>>      from six import chr
>>>  ImportError: cannot import name 'chr'
>>>  [builder@localhost .in]$
>> ImportError: cannot import name 'chr' у меня воспроизвелась. В 
>> исходнике /usr/lib64/python3/site-packages/matplotlib/mathtext.py 23 
>> строчка выглядит так:
>> from six import unichr
>> А в итоговом python3-module:
>> from six import chr
>> А виноват в этом скрипт конвертации исходников на python2 в python3 в 
>> спеке:
>> find ./ -type f -name '*.py' -exec 2to3 -w -n '{}' + ||:
>> Получается, надо либо отключать эту строку в спеке, либо вводить 
>> такую же строчку в спеке python-module-six. Как мне кажется, первое 
>> решение правильное, так как в других дистрах скрипты пакета 
>> matplotlib не конвертируют.
>
> Да, не применять больше 2to3 -- конечно, желательное решение. Скорее 
> всего, большинство проектов уже в upstream адаптировались к Python3 и 
> 2to3 ненужное насилие над их кодом.
>
> А применять его к six было бы совсем странно, потому что six -- это 
> специальный API для совместимости между разными версиями, насколько я 
> понял, и, возможно, для удобства программирования. Там и так всё уже 
> должно быть предусмотрено в коде.
>
>> Спасибо, что обратили на эту проблему моё внимание, проверю все 
>> провайдесы пакетов в задании.
>>
>> Но у меня есть вопрос по пакету python-module-six. Alexey Shabalin 
>> уже добавлял этому пакеты провайдесы. Я обнаружил, что добавил он не 
>> все провайдесы, которые предоставляет этот пакет, и соответственно их 
>> добавил.
>
> Да, это только пойдёт пакету и репозиторию Sisyphus на пользу. (Но 
> после добавления Provides нужно себя автоматически проверять на 
> импортируемость их таким образом, как в моём скрипте.)
>
>> Так вот, у меня вопрос, почему эти провайдесы у пакета не находятся? 
>> Я так понял, только потому, что все эти python субмодули 
>> предоставляются одним файлом six.py. Все эти субмодули объявляются 
>> внутри этого скрипта. Т.е. скрипт поиска провайдесов такого рода 
>> провайдесы не приспособлен находить?
>
> Именно так, да. При желании можно написать автоматический генератор 
> Provides специально для six. В каком-то смысле, это удобнее, чем 
> выписывать их вручную, но в это надо вложить свой труд, и неизвестно, 
> сколько времени это займёт. Это только приветствуется. Тут я бы ещё 
> обратил внимание на то, что аналогичные Provides как-то должны ещё 
> появляться в пакете с matplotlib, можно было бы покрыть и эти случаи 
> автоматическим генератором тоже:
>
> matplotlib.externals.six.moves
> matplotlib.externals.six.moves.urllib.parse
> matplotlib.externals.six.moves.urllib.request
>
Я не нашёл, какие пакеты зависят от этих провайдесов, потому собрал без 
них сегодня. И эти модули к тому же не импортируются никак, по крайней 
мере в новой версии. Я думаю, что они уже устарели. Если это не так, 
поправьте.

> А ещё потом можно будет отправить на повторную сборку обновлённые 
> пакеты, которым их не хватило -- 
> https://www.altlinux.org/Python3/UNMETS#six..2A_.2814.29 .
>
Ужас. Получается весь этот six состоит из одних провайдесов. Мне 
кажется, проще переделать скрипт поиска зависимостей, чтобы зависимости 
типа python3(six.чего-то_там) преобразовывались в зависимость на 
провайдес python3(six). Или есть прецеденты, когда зависимости вида 
python3(six.чего-то_там) принадлежали не пакету python3-module-six?
>>>  Как я делал проверку:
>>>
>>>  $ apt-repo --hsh-apt-config=/home/imz/.hasher/sisyphus/apt.conf
>>>  rpm [alt] file:/ALT/Sisyphus x86_64 classic
>>>  rpm [alt] file:/ALT/Sisyphus noarch classic
>>>  rpm http://git.altlinux.org repo/181255/x86_64 task
>>>  $ apt-repo --hsh-apt-config=/home/imz/.hasher/sisyphus/apt.conf test
>>>  181544 rpm-build-python3 python3-module-matplotlib
>>>
>>>  $ hsh-shell --mount=/proc,/dev/pts
>>>  [builder@localhost .in]$ rpm -q python3-module-matplotlib --lastchange
>>>  * Wed Apr 12 2017 Anton Midyukov <antohami@altlinux.org> 2.0.0-alt1
>>>  - New version 2.0.0
>>>  [builder@localhost .in]$ 
>>> /usr/lib/rpm/check-python3-provs-importable.sh
>>>  python3-module-matplotlib; echo $?
>>>  backend_agg
>>>  backend_cairo
>>>  matplotlib.externals.six.moves
>>>  matplotlib.externals.six.moves.urllib.parse
>>>  matplotlib.externals.six.moves.urllib.request
>>>  matplotlib.axes
>>>  matplotlib.axes._axes
>>>  matplotlib.axes._base
>>>  matplotlib.axes._subplots
>>>  matplotlib.axis
>>>  matplotlib.backend_bases
>>>  matplotlib.backends.backend_agg
>>>  matplotlib.backends.backend_cairo
>>>  matplotlib.backends.backend_mixed
>>>  matplotlib.backends.backend_nbagg
>>>  matplotlib.backends.backend_pdf
>>>  matplotlib.backends.backend_pgf
>>>  matplotlib.backends.backend_ps
>>>  matplotlib.backends.backend_svg
>>>  matplotlib.backends.backend_template
>>>  matplotlib.backends.backend_webagg
>>>  matplotlib.backends.backend_webagg_core
>>>  matplotlib.colorbar
>>>  matplotlib.contour
>>>  matplotlib.figure
>>>  matplotlib.legend
>>>  matplotlib.mathtext
>>>  matplotlib.offsetbox
>>>  matplotlib.patheffects
>>>  matplotlib.projections
>>>  matplotlib.projections.geo
>>>  matplotlib.projections.polar
>>>  matplotlib.pylab
>>>  matplotlib.pyplot
>>>  matplotlib.quiver
>>>  matplotlib.table
>>>  matplotlib.text
>>>  matplotlib.textpath
>>>  matplotlib.tri
>>>  matplotlib.tri.triangulation
>>>  matplotlib.tri.tricontour
>>>  matplotlib.tri.trifinder
>>>  matplotlib.tri.triinterpolate
>>>  matplotlib.tri.tripcolor
>>>  matplotlib.tri.triplot
>>>  matplotlib.tri.trirefine
>>>  matplotlib.tri.tritools
>>>  matplotlib.type1font
>>>  pylab
>>>  123
>>>  [builder@localhost .in]$
>
>
>
> _______________________________________________
> Devel mailing list
> Devel@lists.altlinux.org
> https://lists.altlinux.org/mailman/listinfo/devel

-- 
С уважением Антон Мидюков <antohami@altlinux.org>



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

* Re: [devel] Обновление numpy и matplotlib
  2017-04-16  7:48       ` Антон Мидюков
@ 2017-04-16  8:30         ` Ivan Zakharyaschev
  2017-04-16  8:43         ` Ivan Zakharyaschev
  1 sibling, 0 replies; 28+ messages in thread
From: Ivan Zakharyaschev @ 2017-04-16  8:30 UTC (permalink / raw)
  To: ALT Linux Team development discussions

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

On Sun, 16 Apr 2017, Антон Мидюков wrote:

>> >  Так вот, у меня вопрос, почему эти провайдесы у пакета не находятся? Я 
>> >  так понял, только потому, что все эти python субмодули предоставляются 
>> >  одним файлом six.py. Все эти субмодули объявляются внутри этого скрипта. 
>> >  Т.е. скрипт поиска провайдесов такого рода провайдесы не приспособлен 
>> >  находить?
>>
>>  Именно так, да. При желании можно написать автоматический генератор
>>  Provides специально для six. В каком-то смысле, это удобнее, чем
>>  выписывать их вручную, но в это надо вложить свой труд, и неизвестно,
>>  сколько времени это займёт. Это только приветствуется. Тут я бы ещё
>>  обратил внимание на то, что аналогичные Provides как-то должны ещё
>>  появляться в пакете с matplotlib, можно было бы покрыть и эти случаи
>>  автоматическим генератором тоже:
>>
>>  matplotlib.externals.six.moves
>>  matplotlib.externals.six.moves.urllib.parse
>>  matplotlib.externals.six.moves.urllib.request
>> 
> Я не нашёл, какие пакеты зависят от этих провайдесов, потому собрал без них 
> сегодня. И эти модули к тому же не импортируются никак, по крайней мере в 
> новой версии. Я думаю, что они уже устарели. Если это не так, поправьте.

Вот и хорошо. Это была какая-то устаревшая некрасивая штука, и теперь мы 
выяснили, что от неё можно избавиться.

>>  А ещё потом можно будет отправить на повторную сборку обновлённые пакеты,
>>  которым их не хватило --
>>  https://www.altlinux.org/Python3/UNMETS#six..2A_.2814.29 .
>> 
> Ужас. Получается весь этот six состоит из одних провайдесов. Мне кажется, 
> проще переделать скрипт поиска зависимостей, чтобы зависимости типа 
> python3(six.чего-то_там) преобразовывались в зависимость на провайдес 
> python3(six). Или есть прецеденты, когда зависимости вида 
> python3(six.чего-то_там) принадлежали не пакету python3-module-six?

Скорее, таких прецедентов нет. Но есть такое соображение:

вдруг кто-то импортирует python3(six.чего-то_там), а в версии пакета six, 
собранной в Sisyphus этого нет. Тогда у пользователя, установившего этот 
пакет, может неожиданно возникнуть ошибка во время работы. Не хочется 
реагировать на такие bug-и в ручном режиме. А дописывание Provides в 
сочетании с проверкой импортируемости (как в скрипте, который я предложил 
использовать для проверки) сразу после подготовки пакета six заранее даст 
уверенность, что этих ошибок не будет. И при точечном обновлении одного 
или другого пакета у пользователя это будет отслеживаться благодаря 
Requires у пакета-клиента.

Я предлагаю дописывать не такое уж большое количество Provides сразу и 
переложить заботу о работоспособности помещённых в Sisyphus пакетов на 
автоматические проверки (в тех объёмах и с той приблизительностью, которые 
реализованы), а не сталкиваться с этим при использовании. В том списке, 
который у меня записан на wiki, их совсем не много разных (10). Я этой 
простой вещи не сделал сразу, потому что хотел и автоматическую проверку 
импортируемости при сборке включить заодно (на уровне policy в 
rpm-build-python3), но был занят другими делами.

Случай, который послужил началом этого обсуждения, мог бы быть тоже 
автоматически выловлен как UNMET на six.chr (или что там в точности было), 
но по-видимому этого не произошло, потому что поиск Requires не смотрит во 
вложенные блоки (например, внутри условных конструкций), т.е. его 
результат -- этот толкьо приближение, а не полный список необходимых 
всегда модулей (что-то пропущено).

-- 
Best regards,
Ivan

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

* Re: [devel] Обновление numpy и matplotlib
  2017-04-16  7:48       ` Антон Мидюков
  2017-04-16  8:30         ` Ivan Zakharyaschev
@ 2017-04-16  8:43         ` Ivan Zakharyaschev
  2017-04-16 13:32           ` Vladimir D. Seleznev
                             ` (2 more replies)
  1 sibling, 3 replies; 28+ messages in thread
From: Ivan Zakharyaschev @ 2017-04-16  8:43 UTC (permalink / raw)
  To: ALT Linux Team development discussions

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

On Sun, 16 Apr 2017, Антон Мидюков wrote:

> Я не нашёл, какие пакеты зависят от этих провайдесов, потому собрал без них 
> сегодня. И эти модули к тому же не импортируются никак, по крайней мере в

В новой сборке благодаря Вашим улучшениям список Provides, не проходящих 
проверку, значительно сократился!

$ apt-repo --hsh-apt-config=/home/imz/.hasher/sisyphus/apt.conf test 181544 rpm-build-python3 python3-module-matplotlib
$ hsh-shell --mount=/proc,/dev/pts

[builder@localhost .in]$ /usr/lib/rpm/check-python3-provs-importable.sh python3-module-matplotlib; echo $?
matplotlib.backends.backend_cairo
matplotlib.pylab
matplotlib.pyplot
pylab
123
[builder@localhost python3 -c 'import matplotlib.pylab'
Traceback (most recent call last):
   File 
"/usr/lib64/python3/site-packages/matplotlib/backends/backend_gtk3.py", 
line 15, in <module>
     gi.require_version("Gtk", "3.0")
   File "/usr/lib64/python3/site-packages/gi/__init__.py", line 122, in 
require_version
     (namespace, version))
ValueError: Namespace Gtk not available for version 3.0

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
   File "<string>", line 1, in <module>
   File "/usr/lib64/python3/site-packages/matplotlib/pylab.py", line 257, 
in <module>
     from matplotlib import cbook, mlab, pyplot as plt
   File "/usr/lib64/python3/site-packages/matplotlib/pyplot.py", line 115, 
in <module>
     _backend_mod, new_figure_manager, draw_if_interactive, _show = 
pylab_setup()
   File "/usr/lib64/python3/site-packages/matplotlib/backends/__init__.py", 
line 32, in pylab_setup
     globals(),locals(),[backend_name],0)
   File 
"/usr/lib64/python3/site-packages/matplotlib/backends/backend_gtk3cairo.py", 
line 6, in <module>
     from . import backend_gtk3
   File 
"/usr/lib64/python3/site-packages/matplotlib/backends/backend_gtk3.py", 
line 21, in <module>
     "Gtk3 backend requires the GObject introspection bindings for Gtk 3 "
ImportError: Gtk3 backend requires the GObject introspection bindings for 
Gtk 3 to be installed.
[builder@localhost .in]$ python3 -c 'import matplotlib.pyplot'
Traceback (most recent call last):
   File 
"/usr/lib64/python3/site-packages/matplotlib/backends/backend_gtk3.py", 
line 15, in <module>
     gi.require_version("Gtk", "3.0")
   File "/usr/lib64/python3/site-packages/gi/__init__.py", line 122, in 
require_version
     (namespace, version))
ValueError: Namespace Gtk not available for version 3.0

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
   File "<string>", line 1, in <module>
   File "/usr/lib64/python3/site-packages/matplotlib/pyplot.py", line 115, 
in <module>
     _backend_mod, new_figure_manager, draw_if_interactive, _show = 
pylab_setup()
   File "/usr/lib64/python3/site-packages/matplotlib/backends/__init__.py", 
line 32, in pylab_setup
     globals(),locals(),[backend_name],0)
   File 
"/usr/lib64/python3/site-packages/matplotlib/backends/backend_gtk3cairo.py", 
line 6, in <module>
     from . import backend_gtk3
   File 
"/usr/lib64/python3/site-packages/matplotlib/backends/backend_gtk3.py", 
line 21, in <module>
     "Gtk3 backend requires the GObject introspection bindings for Gtk 3 "
ImportError: Gtk3 backend requires the GObject introspection bindings for 
Gtk 3 to be installed.
[builder@localhost .in]$ python3 -c 'import 
matplotlib.backends.backend_cairo'
Traceback (most recent call last):
   File 
"/usr/lib64/python3/site-packages/matplotlib/backends/backend_cairo.py", 
line 33, in <module>
     import cairocffi as cairo
ImportError: No module named 'cairocffi'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
   File 
"/usr/lib64/python3/site-packages/matplotlib/backends/backend_cairo.py", 
line 36, in <module>
     import cairo
ImportError: No module named 'cairo'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
   File "<string>", line 1, in <module>
   File 
"/usr/lib64/python3/site-packages/matplotlib/backends/backend_cairo.py", 
line 38, in <module>
     raise ImportError("Cairo backend requires that cairocffi or pycairo is 
installed.")
ImportError: Cairo backend requires that cairocffi or pycairo is 
installed.
[builder@localhost .in]$

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

* Re: [devel] Обновление numpy и matplotlib
  2017-04-16  8:43         ` Ivan Zakharyaschev
@ 2017-04-16 13:32           ` Vladimir D. Seleznev
  2017-04-16 14:49             ` Ivan Zakharyaschev
  2017-04-16 15:26           ` Антон Мидюков
  2017-04-16 16:55           ` Ivan Zakharyaschev
  2 siblings, 1 reply; 28+ messages in thread
From: Vladimir D. Seleznev @ 2017-04-16 13:32 UTC (permalink / raw)
  To: ALT Linux Team development discussions

On Sun, Apr 16, 2017 at 11:43:28AM +0300, Ivan Zakharyaschev wrote:
> On Sun, 16 Apr 2017, Антон Мидюков wrote:
> 
> > Я не нашёл, какие пакеты зависят от этих провайдесов, потому собрал без них 
> > сегодня. И эти модули к тому же не импортируются никак, по крайней мере в
> 
> В новой сборке благодаря Вашим улучшениям список Provides, не проходящих 
> проверку, значительно сократился!
> 
> $ apt-repo --hsh-apt-config=/home/imz/.hasher/sisyphus/apt.conf test 181544 rpm-build-python3 python3-module-matplotlib
> $ hsh-shell --mount=/proc,/dev/pts

Это — одни из тех пакетов, в которых из одного спека собираются модули
сразу для двух версий питона. Лучше поправить спек так, чтобы из одного
спека для одного git-тэга собирать модули для одной версии питона, а для
выбора для какой из версий собирать, например, механизм specsusbt, чтобы
сопровождать один спек-файл.

-- 
   С уважением,
   Владимир Селезнев


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

* Re: [devel] Обновление numpy и matplotlib
  2017-04-16 13:32           ` Vladimir D. Seleznev
@ 2017-04-16 14:49             ` Ivan Zakharyaschev
  0 siblings, 0 replies; 28+ messages in thread
From: Ivan Zakharyaschev @ 2017-04-16 14:49 UTC (permalink / raw)
  To: ALT Linux Team development discussions

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

On Sun, 16 Apr 2017, Vladimir D. Seleznev wrote:

>> $ apt-repo --hsh-apt-config=/home/imz/.hasher/sisyphus/apt.conf test 181544 rpm-build-python3 python3-module-matplotlib

> Это — одни из тех пакетов, в которых из одного спека собираются модули
> сразу для двух версий питона. Лучше поправить спек так, чтобы из одного
> спека для одного git-тэга собирать модули для одной версии питона, а для
> выбора для какой из версий собирать, например, механизм specsusbt, чтобы
> сопровождать один спек-файл.

Можно, конечно, и это хорошо для сопровождения пакета, по-моему. И это 
так же относится ко многим другим пакетам в Sisyphus.

Но изменение схемы само по себе на качество пакетов, которые попадут в 
Sisyphus, не влияет. Так что можно с этим не очень спешить. К тому же, 
широко используемые скрипты для автоматического обновления-пересборки 
girar-nmu не умеют пока ещё такую схему со specsubst, насколько я помню.

-- 
Best regards,
Ivan

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

* Re: [devel] Обновление numpy и matplotlib
  2017-04-16  8:43         ` Ivan Zakharyaschev
  2017-04-16 13:32           ` Vladimir D. Seleznev
@ 2017-04-16 15:26           ` Антон Мидюков
  2017-04-16 16:42             ` Yuri Sedunov
                               ` (2 more replies)
  2017-04-16 16:55           ` Ivan Zakharyaschev
  2 siblings, 3 replies; 28+ messages in thread
From: Антон Мидюков @ 2017-04-16 15:26 UTC (permalink / raw)
  To: devel

16.04.2017 15:43, Ivan Zakharyaschev пишет:
> On Sun, 16 Apr 2017, Антон Мидюков wrote:
>
>> Я не нашёл, какие пакеты зависят от этих провайдесов, потому собрал 
>> без них сегодня. И эти модули к тому же не импортируются никак, по 
>> крайней мере в
>
> В новой сборке благодаря Вашим улучшениям список Provides, не 
> проходящих проверку, значительно сократился!
>
> $ apt-repo --hsh-apt-config=/home/imz/.hasher/sisyphus/apt.conf test 
> 181544 rpm-build-python3 python3-module-matplotlib
> $ hsh-shell --mount=/proc,/dev/pts
>
> [builder@localhost .in]$ 
> /usr/lib/rpm/check-python3-provs-importable.sh 
> python3-module-matplotlib; echo $?
> matplotlib.backends.backend_cairo
> matplotlib.pylab
> matplotlib.pyplot
> pylab
> 123
>
Причины нашёл.

Для matplotlib.backends.backend_cairo требуется пакет 
python3-module-pycairo, а зависимость у него на провайдес libcairo.so.2
Но этот же провайдес предоставляет python-module-pycairo Из-за этого в 
чистом хэшере ставится python-module-pycairo для удовлетворения 
зависимости пакета python3-module-matplotlib Получается, что это косяк 
пакета python-module-pycairo

Для matplotlib.pylab, matplotlib.pyplot и pylab ситуация аналогичная. Им 
нужна провайдес typelib(Gtk), которую предоставляют два пакета 
libgtk+3-gir и libgtk+2-gir. Но здесь уже косяк rpm-build-gir, который 
определяет зависимость без указания версии. Эту тему я с месяц назад 
пытался поднять, но никто не откликнулся.

Итак, что лучше исправить всё в спеке пострадавшего пакета или в 
косячных пакетах, из-за которых он пострадал, и вероятно страдают и 
будут страдать другие пакеты?

-- 
С уважением Антон Мидюков <antohami@altlinux.org>



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

* Re: [devel] Обновление numpy и matplotlib
  2017-04-16 15:26           ` Антон Мидюков
@ 2017-04-16 16:42             ` Yuri Sedunov
  2017-04-16 16:46             ` Ivan Zakharyaschev
  2017-04-16 16:50             ` Dmitry V. Levin
  2 siblings, 0 replies; 28+ messages in thread
From: Yuri Sedunov @ 2017-04-16 16:42 UTC (permalink / raw)
  To: devel

В Вс, 16/04/2017 в 22:26 +0700, Антон Мидюков пишет:
> 16.04.2017 15:43, Ivan Zakharyaschev пишет:
...
> Но здесь уже косяк rpm-build-gir, который 
> определяет зависимость без указания версии. Эту тему я с месяц назад 
> пытался поднять, но никто не откликнулся.

Из питоньих скриптов версию не извлечь, -- как правило,
gi.require_version не используется.


-- 
Yuri N. Sedunov



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

* Re: [devel] Обновление numpy и matplotlib
  2017-04-16 15:26           ` Антон Мидюков
  2017-04-16 16:42             ` Yuri Sedunov
@ 2017-04-16 16:46             ` Ivan Zakharyaschev
  2017-04-16 16:50             ` Dmitry V. Levin
  2 siblings, 0 replies; 28+ messages in thread
From: Ivan Zakharyaschev @ 2017-04-16 16:46 UTC (permalink / raw)
  To: ALT Linux Team development discussions

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

On Sun, 16 Apr 2017, Антон Мидюков wrote:

> 16.04.2017 15:43, Ivan Zakharyaschev пишет:
>>  On Sun, 16 Apr 2017, Антон Мидюков wrote:
>> 
>> >  Я не нашёл, какие пакеты зависят от этих провайдесов, потому собрал без 
>> >  них сегодня. И эти модули к тому же не импортируются никак, по крайней 
>> >  мере в
>>
>>  В новой сборке благодаря Вашим улучшениям список Provides, не проходящих
>>  проверку, значительно сократился!
>>
>>  $ apt-repo --hsh-apt-config=/home/imz/.hasher/sisyphus/apt.conf test
>>  181544 rpm-build-python3 python3-module-matplotlib
>>  $ hsh-shell --mount=/proc,/dev/pts
>>
>>  [builder@localhost .in]$ /usr/lib/rpm/check-python3-provs-importable.sh
>>  python3-module-matplotlib; echo $?
>>  matplotlib.backends.backend_cairo
>>  matplotlib.pylab
>>  matplotlib.pyplot
>>  pylab
>>  123
>> 
> Причины нашёл.

> Для matplotlib.pylab, matplotlib.pyplot и pylab ситуация аналогичная. Им 
> нужна провайдес typelib(Gtk), которую предоставляют два пакета libgtk+3-gir и 
> libgtk+2-gir. Но здесь уже косяк rpm-build-gir, который определяет 
> зависимость без указания версии. Эту тему я с месяц назад пытался поднять, но 
> никто не откликнулся.
>
> Итак, что лучше исправить всё в спеке пострадавшего пакета или в косячных 
> пакетах, из-за которых он пострадал, и вероятно страдают и будут страдать 
> другие пакеты?

Лучше, конечно, в косячных пакетов, если удалось с этим разобраться.

> Для matplotlib.backends.backend_cairo требуется пакет python3-module-pycairo, 
> а зависимость у него на провайдес libcairo.so.2
> Но этот же провайдес предоставляет python-module-pycairo Из-за этого в чистом 
> хэшере ставится python-module-pycairo для удовлетворения зависимости пакета 
> python3-module-matplotlib Получается, что это косяк пакета 
> python-module-pycairo

По-моему, там проще. python3-module-matplotlib содержит модуль 
matplotlib.backends.backend_cairo, для работы которого нужна какая-то 
реализация работы с cairo. Но никакого формального Requires на cairo и 
питоньий cairo-модуль у пакета matplotlib.backends.backend_cairo нет.

У меня в хешере поставилось только это:

[imz@basalt ~]$ hsh-shell --mount=/proc,/dev/pts
[builder@localhost .in]$ rpm -qa '*cairo*'
libcairo-gobject-1.14.4-alt1.x86_64
libcairo-1.14.4-alt1.x86_64
[builder@localhost .in]$ rpm -e libcairo
error: Failed dependencies:
 	libcairo.so.2()(64bit) >= 
set:mftjiSDpqFHAVc36cHM5cYYiadA6gsOohUuyDdcHca4Lr183bLNevUeaZ1VjZkuLKx4jWY9X5HMvSz2EkppmVxDyLeycKEaMYIs6bdclqVgCDjycEXZgTHQYGP1JOJhSQawzEqigwWlvTy3A0gSLs0B5V0GcbbOofFRxluXxoVoljmrUDOY1uxZLIJjtKcZEBrzq2y9OEq3O34np87 
is needed by (installed) libpango-1.40.5-alt1.x86_64
 	libcairo.so.2()(64bit) >= 
set:metjiSz8j4Eq2wswsKE1ysyq1cMMjiOpfWWvr2eVLkZsW6XMCDx01ffxtQol75Pq1M1FROohj5xtZgDVyuIYcU89uGCGEgl4scNlK93Mu2DPJdsBTOxTb2sFSgvPzF8EHwGByAZnQL5ZFC7T0X7ZGeZafpUB06KDnpl2MpAe7YU1aqfg2F8IQ3leriMcTx7mw7neGNdFjyv0t68lmMr1wxFDnwsguIpqdOOczt4y9X5vGaENc5AzdYR2Z9WWfyMd9ljogW6p9h290yZ14OB3MUUY67fyeM82W9Z3FIijp15GYWxsREevgXmE3ZtgLynFOZEvGHYiAlE55cW8GhPN5YAkVjM5pw6nQVwX4WGv2cX0 
is needed by (installed) libgtk+4-3.90.0-alt1.x86_64
 	libcairo.so.2()(64bit) >= set:mjQZ8JL9Iqnj3IVExlKJyDe is needed by 
(installed) python3-module-pygobject3-3.24.1-alt1.x86_64
 	libcairo = 1:1.14.4-alt1 is needed by (installed) 
libcairo-gobject-1:1.14.4-alt1.x86_64
[builder@localhost .in]$

т.е. версия про то, что вытягивается не тот python*-module-pycairo не 
проходит, потому что ни одного такого вообще не вытянулось. А у них с 
зависимостями вроде всё более-менее в порядке, ошибок нет:

$ rpm -qp /ALT/Sisyphus/x86_64/RPMS.classic/python3-module-pycairo-1.10.1-alt3.git20121222.1.1.x86_64.rpm --requires
/usr/lib64/python3/site-packages
libc.so.6(GLIBC_2.14)(64bit)
libc.so.6(GLIBC_2.2.5)(64bit)
libc.so.6(GLIBC_2.4)(64bit)
libcairo.so.2()(64bit) >= 
set:mekW4hu5c38Fq0pNZjg0jZ1dgA3wFYQFV0RP9DVv59KiEs9gPMldUdmHhxNlaf312upFNGeOebZvoe8mQkNJOGA8T75CbWNO3mEK7ZhU8V9lZFOrzDGFaak517jsB7Wcvb0wVe9IQ3t1PZyaksXgeiBYltDlZtHgqsliuZkalWZl1lb599aR5qTpG9moZEV7vahOu0C44MttXxWZ9uA7xOyIpYPD4cLCPw1j9fMzEe7YU1aqfgA4OhreriMcTxDKKQwZFlUkYcKskDPIQglmOkCT3r6Sfwe3AaTenJn0EuKPNmhm6kaxkBAJ2wP3i7RqtNo7xoOuNDG2qCO3ToXTnSMnbQDaIvrO8wFCE5ZaQrABApIqIhpfFkt0YU0dIlMV0abGxv5WkDTUUhQNI0DjbOH6NrIAABf0EDIMZmRf2jp15GYWxsRA9MnQJMkPOUr85cOZEvG8HRRlE55rqDc6f5REVUjWdoxriGY9UOjWOJNBYZixkvrgqCmfWXRjwp7
rpmlib(SetVersions)
python3.5-ABI(64bit)
rtld(GNU_HASH)
rpmlib(PayloadIsLzma)
$

Кажется, можно просто дописать

%py3_requires cairo

если нет потребности отпиливать эту зависимость в отдельный подпакет. 
(Если есть альтернативные провайдеры, можно было бы при желании отпилить 
два подпакета, каждый со своим Requires :) )

-- 
Best regards,
Ivan

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

* Re: [devel] Обновление numpy и  matplotlib
  2017-04-16 15:26           ` Антон Мидюков
  2017-04-16 16:42             ` Yuri Sedunov
  2017-04-16 16:46             ` Ivan Zakharyaschev
@ 2017-04-16 16:50             ` Dmitry V. Levin
  2017-04-17  1:35               ` Антон Мидюков
  2 siblings, 1 reply; 28+ messages in thread
From: Dmitry V. Levin @ 2017-04-16 16:50 UTC (permalink / raw)
  To: ALT Devel discussion list

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

On Sun, Apr 16, 2017 at 10:26:31PM +0700, Антон Мидюков wrote:
[...]
> Причины нашёл.
> 
> Для matplotlib.backends.backend_cairo требуется пакет 
> python3-module-pycairo, а зависимость у него на провайдес libcairo.so.2
> Но этот же провайдес предоставляет python-module-pycairo Из-за этого в 
> чистом хэшере ставится python-module-pycairo для удовлетворения 
> зависимости пакета python3-module-matplotlib Получается, что это косяк 
> пакета python-module-pycairo

$ rpmquery --provides -p Sisyphus/files/x86_64/RPMS/python3-module-pycairo-1.10.1-alt3.git20121222.1.1.x86_64.rpm 
python3(cairo)  
python3.3(cairo)  
python3(cairo._cairo)  
python3.3(cairo._cairo)  
python3-module-pycairo = 1.10.1-alt3.git20121222.1.1

$ rpmquery --provides -p Sisyphus/files/x86_64/RPMS/python-module-pycairo-1.10.1-alt2.git20120522.1.x86_64.rpm 
python2.7-module-cairo = 1.10.1-alt2.git20120522.1
python2.7(cairo)  
python2.7(cairo._cairo)  
python-module-pycairo = 1.10.1-alt2.git20120522.1

Вы утверждаете, что у пакетов python3-module-pycairo и python-module-pycairo
в Сизифе есть общие provides, однако вывод rpmquery демонстрирует, что их нет.


-- 
ldv

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 801 bytes --]

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

* Re: [devel] Обновление numpy и matplotlib
  2017-04-16  8:43         ` Ivan Zakharyaschev
  2017-04-16 13:32           ` Vladimir D. Seleznev
  2017-04-16 15:26           ` Антон Мидюков
@ 2017-04-16 16:55           ` Ivan Zakharyaschev
  2017-04-17  1:39             ` Антон Мидюков
  2 siblings, 1 reply; 28+ messages in thread
From: Ivan Zakharyaschev @ 2017-04-16 16:55 UTC (permalink / raw)
  To: ALT Linux Team development discussions

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

On Sun, 16 Apr 2017, Ivan Zakharyaschev wrote:

Я тут не в курсе ситуации. Зато aris@ уже пояснил.


> [builder@localhost python3 -c 'import matplotlib.pylab'
> Traceback (most recent call last):
>  File 
> "/usr/lib64/python3/site-packages/matplotlib/backends/backend_gtk3.py", line 
> 15, in <module>
>     gi.require_version("Gtk", "3.0")
>  File "/usr/lib64/python3/site-packages/gi/__init__.py", line 122, in 
> require_version
>    (namespace, version))
> ValueError: Namespace Gtk not available for version 3.0

Можно было бы научить извлекать эту версию автоматически (единственное, 
что можно придумать из области исправления косячных пакетов) или...

> During handling of the above exception, another exception occurred:
>
> Traceback (most recent call last):
>   File "<string>", line 1, in <module>
>   File "/usr/lib64/python3/site-packages/matplotlib/pylab.py", line 257, 
> in <module>
>     from matplotlib import cbook, mlab, pyplot as plt
>  File "/usr/lib64/python3/site-packages/matplotlib/pyplot.py", line 115, in 
> <module>
>    _backend_mod, new_figure_manager, draw_if_interactive, _show = 
> pylab_setup()
>  File "/usr/lib64/python3/site-packages/matplotlib/backends/__init__.py", 
> line 32, in pylab_setup
>     globals(),locals(),[backend_name],0)
>  File 
> "/usr/lib64/python3/site-packages/matplotlib/backends/backend_gtk3cairo.py", 
> line 6, in <module>
>     from . import backend_gtk3
>  File 
> "/usr/lib64/python3/site-packages/matplotlib/backends/backend_gtk3.py", line 
> 21, in <module>
>    "Gtk3 backend requires the GObject introspection bindings for Gtk 3 "
> ImportError: Gtk3 backend requires the GObject introspection bindings for Gtk 
> 3 to be installed.

...дописать требуемую версию в python3-module-matplotlib-gtk3 явно руками, 
если она и в коде явно прописана и требуется.

-- 
Best regards,
Ivan

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

* Re: [devel] Обновление numpy и matplotlib
  2017-04-16 16:50             ` Dmitry V. Levin
@ 2017-04-17  1:35               ` Антон Мидюков
  0 siblings, 0 replies; 28+ messages in thread
From: Антон Мидюков @ 2017-04-17  1:35 UTC (permalink / raw)
  To: devel

16.04.2017 23:50, Dmitry V. Levin пишет:
> On Sun, Apr 16, 2017 at 10:26:31PM +0700, Антон Мидюков wrote:
> [...]
>> Причины нашёл.
>>
>> Для matplotlib.backends.backend_cairo требуется пакет
>> python3-module-pycairo, а зависимость у него на провайдес libcairo.so.2
>> Но этот же провайдес предоставляет python-module-pycairo Из-за этого в
>> чистом хэшере ставится python-module-pycairo для удовлетворения
>> зависимости пакета python3-module-matplotlib Получается, что это косяк
>> пакета python-module-pycairo
> $ rpmquery --provides -p Sisyphus/files/x86_64/RPMS/python3-module-pycairo-1.10.1-alt3.git20121222.1.1.x86_64.rpm
> python3(cairo)
> python3.3(cairo)
> python3(cairo._cairo)
> python3.3(cairo._cairo)
> python3-module-pycairo = 1.10.1-alt3.git20121222.1.1
>
> $ rpmquery --provides -p Sisyphus/files/x86_64/RPMS/python-module-pycairo-1.10.1-alt2.git20120522.1.x86_64.rpm
> python2.7-module-cairo = 1.10.1-alt2.git20120522.1
> python2.7(cairo)
> python2.7(cairo._cairo)
> python-module-pycairo = 1.10.1-alt2.git20120522.1
>
> Вы утверждаете, что у пакетов python3-module-pycairo и python-module-pycairo
> в Сизифе есть общие provides, однако вывод rpmquery демонстрирует, что их нет.
Извиняюсь. Я через pkgs.org смотрел.

-- 
С уважением Антон Мидюков <antohami@altlinux.org>



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

* Re: [devel] Обновление numpy и matplotlib
  2017-04-16 16:55           ` Ivan Zakharyaschev
@ 2017-04-17  1:39             ` Антон Мидюков
  2017-04-17  8:13               ` Ivan Zakharyaschev
  0 siblings, 1 reply; 28+ messages in thread
From: Антон Мидюков @ 2017-04-17  1:39 UTC (permalink / raw)
  To: devel

16.04.2017 23:55, Ivan Zakharyaschev пишет:
> On Sun, 16 Apr 2017, Ivan Zakharyaschev wrote:
>
> Я тут не в курсе ситуации. Зато aris@ уже пояснил.
>
>
>> [builder@localhost python3 -c 'import matplotlib.pylab'
>> Traceback (most recent call last):
>>  File 
>> "/usr/lib64/python3/site-packages/matplotlib/backends/backend_gtk3.py", 
>> line 15, in <module>
>>     gi.require_version("Gtk", "3.0")
>>  File "/usr/lib64/python3/site-packages/gi/__init__.py", line 122, in 
>> require_version
>>    (namespace, version))
>> ValueError: Namespace Gtk not available for version 3.0
>
> Можно было бы научить извлекать эту версию автоматически 
> (единственное, что можно придумать из области исправления косячных 
> пакетов) или...
>
>> During handling of the above exception, another exception occurred:
>>
>> Traceback (most recent call last):
>>   File "<string>", line 1, in <module>
>>   File "/usr/lib64/python3/site-packages/matplotlib/pylab.py", line 
>> 257, in <module>
>>     from matplotlib import cbook, mlab, pyplot as plt
>>  File "/usr/lib64/python3/site-packages/matplotlib/pyplot.py", line 
>> 115, in <module>
>>    _backend_mod, new_figure_manager, draw_if_interactive, _show = 
>> pylab_setup()
>>  File 
>> "/usr/lib64/python3/site-packages/matplotlib/backends/__init__.py", 
>> line 32, in pylab_setup
>>     globals(),locals(),[backend_name],0)
>>  File 
>> "/usr/lib64/python3/site-packages/matplotlib/backends/backend_gtk3cairo.py", 
>> line 6, in <module>
>>     from . import backend_gtk3
>>  File 
>> "/usr/lib64/python3/site-packages/matplotlib/backends/backend_gtk3.py", 
>> line 21, in <module>
>>    "Gtk3 backend requires the GObject introspection bindings for Gtk 3 "
>> ImportError: Gtk3 backend requires the GObject introspection bindings 
>> for Gtk 3 to be installed.
>
> ...дописать требуемую версию в python3-module-matplotlib-gtk3 явно 
> руками, если она и в коде явно прописана и требуется.
Хорошо. Так и сделаю.

-- 
С уважением Антон Мидюков <antohami@altlinux.org>



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

* Re: [devel] Обновление numpy и matplotlib
  2017-04-17  1:39             ` Антон Мидюков
@ 2017-04-17  8:13               ` Ivan Zakharyaschev
  2017-04-17  8:14                 ` Ivan Zakharyaschev
  0 siblings, 1 reply; 28+ messages in thread
From: Ivan Zakharyaschev @ 2017-04-17  8:13 UTC (permalink / raw)
  To: ALT Linux Team development discussions

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


On Mon, 17 Apr 2017, Антон Мидюков wrote:

> 16.04.2017 23:55, Ivan Zakharyaschev пишет:

>> >  Traceback (most recent call last):
>> >    File "<string>", line 1, in <module>
>> >    File "/usr/lib64/python3/site-packages/matplotlib/pylab.py", line 
>> >  257, in <module>
>> >      from matplotlib import cbook, mlab, pyplot as plt
>> >  File "/usr/lib64/python3/site-packages/matplotlib/pyplot.py", line 115, 
>> >  in <module>
>> >     _backend_mod, new_figure_manager, draw_if_interactive, _show = 
>> >  pylab_setup()
>> >  File "/usr/lib64/python3/site-packages/matplotlib/backends/__init__.py", 
>> >  line 32, in pylab_setup
>> >      globals(),locals(),[backend_name],0)
>> >  File 
>> >  "/usr/lib64/python3/site-packages/matplotlib/backends/backend_gtk3cairo.py", 
>> >  line 6, in <module>
>> >      from . import backend_gtk3
>> >  File 
>> >  "/usr/lib64/python3/site-packages/matplotlib/backends/backend_gtk3.py", 
>> >  line 21, in <module>
>> >     "Gtk3 backend requires the GObject introspection bindings for Gtk 3 "
>> >  ImportError: Gtk3 backend requires the GObject introspection bindings 
>> >  for Gtk 3 to be installed.
>>
>>  ...дописать требуемую версию в python3-module-matplotlib-gtk3 явно руками,
>>  если она и в коде явно прописана и требуется.
> Хорошо. Так и сделаю.

С новой сборкой проверка не проходит немного с другой ошибкой. Возможно, 
дело в зависимости от того, что попало в другой подпакет:

[builder@localhost .in]$ /usr/lib/rpm/check-python3-provs-importable.sh 
python3-module-matplotlib; echo $?
matplotlib.pylab
matplotlib.pyplot
pylab
123
[builder@localhost .in]$ python3 -c 'import matplotlib.pyplot'
Traceback (most recent call last):
   File "<string>", line 1, in <module>
   File "/usr/lib64/python3/site-packages/matplotlib/pyplot.py", line 115, 
in <module>
     _backend_mod, new_figure_manager, draw_if_interactive, _show = 
pylab_setup()
   File "/usr/lib64/python3/site-packages/matplotlib/backends/__init__.py", 
line 32, in pylab_setup
     globals(),locals(),[backend_name],0)
ImportError: No module named 'matplotlib.backends.backend_gtk3cairo'
[builder@localhost .in]$ python3 -c 'import matplotlib.pylab'
Traceback (most recent call last):
   File "<string>", line 1, in <module>
   File "/usr/lib64/python3/site-packages/matplotlib/pylab.py", line 257, 
in <module>
     from matplotlib import cbook, mlab, pyplot as plt
   File "/usr/lib64/python3/site-packages/matplotlib/pyplot.py", line 115, 
in <module>
     _backend_mod, new_figure_manager, draw_if_interactive, _show = 
pylab_setup()
   File "/usr/lib64/python3/site-packages/matplotlib/backends/__init__.py", 
line 32, in pylab_setup
     globals(),locals(),[backend_name],0)
ImportError: No module named 'matplotlib.backends.backend_gtk3cairo'
[builder@localhost .in]$


-- 
Best regards,
Ivan

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

* Re: [devel] Обновление numpy и matplotlib
  2017-04-17  8:13               ` Ivan Zakharyaschev
@ 2017-04-17  8:14                 ` Ivan Zakharyaschev
  2017-04-17  8:49                   ` Антон Мидюков
  0 siblings, 1 reply; 28+ messages in thread
From: Ivan Zakharyaschev @ 2017-04-17  8:14 UTC (permalink / raw)
  To: ALT Linux Team development discussions

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

On Mon, 17 Apr 2017, Ivan Zakharyaschev wrote:

> С новой сборкой проверка не проходит немного с другой ошибкой. Возможно, дело 
> в зависимости от того, что попало в другой подпакет:
>
> [builder@localhost .in]$ /usr/lib/rpm/check-python3-provs-importable.sh 
> python3-module-matplotlib; echo $?
> matplotlib.pylab
> matplotlib.pyplot
> pylab
> 123
> [builder@localhost .in]$ python3 -c 'import matplotlib.pyplot'
> Traceback (most recent call last):
>   File "<string>", line 1, in <module>
>   File "/usr/lib64/python3/site-packages/matplotlib/pyplot.py", line 115, 
> in <module>
>    _backend_mod, new_figure_manager, draw_if_interactive, _show = 
> pylab_setup()
>  File "/usr/lib64/python3/site-packages/matplotlib/backends/__init__.py", 
> line 32, in pylab_setup
>    globals(),locals(),[backend_name],0)
> ImportError: No module named 'matplotlib.backends.backend_gtk3cairo'
> [builder@localhost .in]$ python3 -c 'import matplotlib.pylab'
> Traceback (most recent call last):
>   File "<string>", line 1, in <module>
>   File "/usr/lib64/python3/site-packages/matplotlib/pylab.py", line 257, 
> in <module>
>     from matplotlib import cbook, mlab, pyplot as plt
>  File "/usr/lib64/python3/site-packages/matplotlib/pyplot.py", line 115, in 
> <module>
>    _backend_mod, new_figure_manager, draw_if_interactive, _show = 
> pylab_setup()
>  File "/usr/lib64/python3/site-packages/matplotlib/backends/__init__.py", 
> line 32, in pylab_setup
>    globals(),locals(),[backend_name],0)
> ImportError: No module named 'matplotlib.backends.backend_gtk3cairo'
> [builder@localhost .in]$

[builder@localhost .in]$ rpm -qa '*gtk3*'
[builder@localhost .in]$ rpm -qa '*gtk*'
gtk+3-themes-incompatible-3.20-alt3.noarch
libgtk+4-3.90.0-alt1.x86_64
libgtk+4-gir-3.90.0-alt1.x86_64
gtk-update-icon-cache-2.24.31-alt1.x86_64
[builder@localhost .in]$

-- 
Best regards,
Ivan

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

* Re: [devel] Обновление numpy и matplotlib
  2017-04-17  8:14                 ` Ivan Zakharyaschev
@ 2017-04-17  8:49                   ` Антон Мидюков
  2017-04-17  8:58                     ` Ivan Zakharyaschev
  2017-04-17  9:00                     ` Антон Мидюков
  0 siblings, 2 replies; 28+ messages in thread
From: Антон Мидюков @ 2017-04-17  8:49 UTC (permalink / raw)
  To: devel

17.04.2017 15:14, Ivan Zakharyaschev пишет:
> On Mon, 17 Apr 2017, Ivan Zakharyaschev wrote:
>
>> С новой сборкой проверка не проходит немного с другой ошибкой. 
>> Возможно, дело в зависимости от того, что попало в другой подпакет:
>>
>> [builder@localhost .in]$ 
>> /usr/lib/rpm/check-python3-provs-importable.sh 
>> python3-module-matplotlib; echo $?
>> matplotlib.pylab
>> matplotlib.pyplot
>> pylab
>> 123
>> [builder@localhost .in]$ python3 -c 'import matplotlib.pyplot'
>> Traceback (most recent call last):
>>   File "<string>", line 1, in <module>
>>   File "/usr/lib64/python3/site-packages/matplotlib/pyplot.py", line 
>> 115, in <module>
>>    _backend_mod, new_figure_manager, draw_if_interactive, _show = 
>> pylab_setup()
>>  File 
>> "/usr/lib64/python3/site-packages/matplotlib/backends/__init__.py", 
>> line 32, in pylab_setup
>>    globals(),locals(),[backend_name],0)
>> ImportError: No module named 'matplotlib.backends.backend_gtk3cairo'
>> [builder@localhost .in]$ python3 -c 'import matplotlib.pylab'
>> Traceback (most recent call last):
>>   File "<string>", line 1, in <module>
>>   File "/usr/lib64/python3/site-packages/matplotlib/pylab.py", line 
>> 257, in <module>
>>     from matplotlib import cbook, mlab, pyplot as plt
>>  File "/usr/lib64/python3/site-packages/matplotlib/pyplot.py", line 
>> 115, in <module>
>>    _backend_mod, new_figure_manager, draw_if_interactive, _show = 
>> pylab_setup()
>>  File 
>> "/usr/lib64/python3/site-packages/matplotlib/backends/__init__.py", 
>> line 32, in pylab_setup
>>    globals(),locals(),[backend_name],0)
>> ImportError: No module named 'matplotlib.backends.backend_gtk3cairo'
>> [builder@localhost .in]$
>
> [builder@localhost .in]$ rpm -qa '*gtk3*'
> [builder@localhost .in]$ rpm -qa '*gtk*'
> gtk+3-themes-incompatible-3.20-alt3.noarch
> libgtk+4-3.90.0-alt1.x86_64
> libgtk+4-gir-3.90.0-alt1.x86_64
> gtk-update-icon-cache-2.24.31-alt1.x86_64
> [builder@localhost .in]$
И почему зависимость:
Requires: typelib(Gtk) = 3.0
может не вытягивать libgtk+3-gir ?

-- 
С уважением Антон Мидюков <antohami@altlinux.org>



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

* Re: [devel] Обновление numpy и matplotlib
  2017-04-17  8:49                   ` Антон Мидюков
@ 2017-04-17  8:58                     ` Ivan Zakharyaschev
  2017-04-17  9:00                     ` Антон Мидюков
  1 sibling, 0 replies; 28+ messages in thread
From: Ivan Zakharyaschev @ 2017-04-17  8:58 UTC (permalink / raw)
  To: ALT Linux Team development discussions

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

On Mon, 17 Apr 2017, Антон Мидюков wrote:

> 17.04.2017 15:14, Ivan Zakharyaschev пишет:
>>  On Mon, 17 Apr 2017, Ivan Zakharyaschev wrote:
>> 
>> >  С новой сборкой проверка не проходит немного с другой ошибкой. Возможно, 
>> >  дело в зависимости от того, что попало в другой подпакет:
>> > 
>> >  [builder@localhost .in]$ /usr/lib/rpm/check-python3-provs-importable.sh 
>> >  python3-module-matplotlib; echo $?
>> >  matplotlib.pylab
>> >  matplotlib.pyplot
>> >  pylab
>> >  123
>> >  [builder@localhost .in]$ python3 -c 'import matplotlib.pyplot'
>> >  Traceback (most recent call last):
>> >    File "<string>", line 1, in <module>
>> >    File "/usr/lib64/python3/site-packages/matplotlib/pyplot.py", line 
>> >  115, in <module>
>> >     _backend_mod, new_figure_manager, draw_if_interactive, _show = 
>> >  pylab_setup()
>> >  File "/usr/lib64/python3/site-packages/matplotlib/backends/__init__.py", 
>> >  line 32, in pylab_setup
>> >     globals(),locals(),[backend_name],0)
>> >  ImportError: No module named 'matplotlib.backends.backend_gtk3cairo'
>> >  [builder@localhost .in]$ python3 -c 'import matplotlib.pylab'
>> >  Traceback (most recent call last):
>> >    File "<string>", line 1, in <module>
>> >    File "/usr/lib64/python3/site-packages/matplotlib/pylab.py", line 
>> >  257, in <module>
>> >      from matplotlib import cbook, mlab, pyplot as plt
>> >  File "/usr/lib64/python3/site-packages/matplotlib/pyplot.py", line 115, 
>> >  in <module>
>> >     _backend_mod, new_figure_manager, draw_if_interactive, _show = 
>> >  pylab_setup()
>> >  File "/usr/lib64/python3/site-packages/matplotlib/backends/__init__.py", 
>> >  line 32, in pylab_setup
>> >     globals(),locals(),[backend_name],0)
>> >  ImportError: No module named 'matplotlib.backends.backend_gtk3cairo'
>> >  [builder@localhost .in]$
>>
>>  [builder@localhost .in]$ rpm -qa '*gtk3*'
>>  [builder@localhost .in]$ rpm -qa '*gtk*'
>>  gtk+3-themes-incompatible-3.20-alt3.noarch
>>  libgtk+4-3.90.0-alt1.x86_64
>>  libgtk+4-gir-3.90.0-alt1.x86_64
>>  gtk-update-icon-cache-2.24.31-alt1.x86_64
>>  [builder@localhost .in]$
> И почему зависимость:
> Requires: typelib(Gtk) = 3.0
> может не вытягивать libgtk+3-gir ?

Дело не в этой зависимости. Я-то инсталлирую пакет 
python3-module-matplotlib . И когда импортирую модуль pylab или pyplot из 
него, он пытается загрузить backend, связанный с gtk, и не может.

По списку установленных пакетов с подстрокой gtk у меня в хешере (приводил 
выше) видно, что подпакета с backend-ом gtk не вытянулось.

Я не разбираюсь во всех внутренностях пакета. Что там для чего нужно. 
Нужны ли модули pylab и pyplot в главном пакете? Обязательно ли для них 
backend gtk? Можно ли поменять для них дефолтный backend на тот, который 
поставляется вместе с главным пакетом? Всех ли устроит, если у главного 
пакета будет зависимость на backend gtk3?

-- 
Best regards,
Ivan

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

* Re: [devel] Обновление numpy и matplotlib
  2017-04-17  8:49                   ` Антон Мидюков
  2017-04-17  8:58                     ` Ivan Zakharyaschev
@ 2017-04-17  9:00                     ` Антон Мидюков
  2017-04-17  9:12                       ` Ivan Zakharyaschev
  1 sibling, 1 reply; 28+ messages in thread
From: Антон Мидюков @ 2017-04-17  9:00 UTC (permalink / raw)
  To: devel

17.04.2017 15:49, Антон Мидюков пишет:
> И почему зависимость:
> Requires: typelib(Gtk) = 3.0
> может не вытягивать libgtk+3-gir ?
>
Всё, увидел. Зависимость на python3-module-%oname-gtk3 закомментирована 
в спеке у меня. А вообще надо в отдельный подпакет вынести pylab, и уже 
ему прописать зависимость на python3-module-matplotlib-gtk3.

-- 
С уважением Антон Мидюков <antohami@altlinux.org>



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

* Re: [devel] Обновление numpy и matplotlib
  2017-04-17  9:00                     ` Антон Мидюков
@ 2017-04-17  9:12                       ` Ivan Zakharyaschev
  2017-04-28 12:31                         ` Антон Мидюков
  0 siblings, 1 reply; 28+ messages in thread
From: Ivan Zakharyaschev @ 2017-04-17  9:12 UTC (permalink / raw)
  To: ALT Linux Team development discussions

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

On Mon, 17 Apr 2017, Антон Мидюков wrote:

> 17.04.2017 15:49, Антон Мидюков пишет:
>>  И почему зависимость:
>>  Requires: typelib(Gtk) = 3.0
>>  может не вытягивать libgtk+3-gir ?
>> 
> Всё, увидел. Зависимость на python3-module-%oname-gtk3 закомментирована в 
> спеке у меня. А вообще надо в отдельный подпакет вынести pylab, и уже ему 
> прописать зависимость на python3-module-matplotlib-gtk3.

Наверное, если это необязательная дополнительная штука.

-- 
Best regards,
Ivan

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

* Re: [devel] Обновление numpy и matplotlib
  2017-04-17  9:12                       ` Ivan Zakharyaschev
@ 2017-04-28 12:31                         ` Антон Мидюков
  0 siblings, 0 replies; 28+ messages in thread
From: Антон Мидюков @ 2017-04-28 12:31 UTC (permalink / raw)
  To: devel

Напоминаю, что в задании 181544 подготовлено обновление пакетов 
python-module-matplotlib и python-module-numpy.
На текущий момент решил следующие проблемы:
1. не импортируемые провайдесы, спасибо imz@ за скрипт проверки. Правда 
возникла другая проблема пакеты python-module-matplotlib-qt4 и 
python-module-matplotlib-qt5 зависят друг от друга, их python3 версии 
соответственно тоже.
2. зависимость python-module-matplotlib на ipython, выделил подпакет 
python-module-matplotlib-nbagg.
3. зависимость python-module-matplotlib на 
python-module-matplotlib-gtk3, выделил подпакет 
python-module-matplotlib-pylab
4. зависимость python-module-matplotlib на pycairo, выделил подпакет 
python-module-matplotlib-cairo.
Если ни у кого замечаний по работе не возникнет, я хотел бы завтра 
задание отправить.

-- 
С уважением Антон Мидюков <antohami@altlinux.org>



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

end of thread, other threads:[~2017-04-28 12:31 UTC | newest]

Thread overview: 28+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-04-13 14:00 [devel] Обновление numpy и matplotlib Антон Мидюков
2017-04-14 10:00 ` Ivan Zakharyaschev
2017-04-16  1:58   ` Антон Мидюков
2017-04-16  7:01     ` Ivan Zakharyaschev
2017-04-16  7:48       ` Антон Мидюков
2017-04-16  8:30         ` Ivan Zakharyaschev
2017-04-16  8:43         ` Ivan Zakharyaschev
2017-04-16 13:32           ` Vladimir D. Seleznev
2017-04-16 14:49             ` Ivan Zakharyaschev
2017-04-16 15:26           ` Антон Мидюков
2017-04-16 16:42             ` Yuri Sedunov
2017-04-16 16:46             ` Ivan Zakharyaschev
2017-04-16 16:50             ` Dmitry V. Levin
2017-04-17  1:35               ` Антон Мидюков
2017-04-16 16:55           ` Ivan Zakharyaschev
2017-04-17  1:39             ` Антон Мидюков
2017-04-17  8:13               ` Ivan Zakharyaschev
2017-04-17  8:14                 ` Ivan Zakharyaschev
2017-04-17  8:49                   ` Антон Мидюков
2017-04-17  8:58                     ` Ivan Zakharyaschev
2017-04-17  9:00                     ` Антон Мидюков
2017-04-17  9:12                       ` Ivan Zakharyaschev
2017-04-28 12:31                         ` Антон Мидюков
2017-04-14 15:13 ` Michael Shigorin
2017-04-14 16:32   ` Ivan Zakharyaschev
2017-04-14 17:03     ` Michael Shigorin
2017-04-14 17:23       ` Ivan Zakharyaschev
2017-04-14 20: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