[devel] Обновление numpy и matplotlib

Ivan Zakharyaschev imz на altlinux.org
Пт Апр 14 13:00:06 MSK 2017


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

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


Подробная информация о списке рассылки Devel