Login
[x]
Log in using an account from:
Fedora Account System
Red Hat Associate
Red Hat Customer
Or login using a Red Hat Bugzilla account
Forgot Password
Login:
Hide Forgot
Create an Account
Red Hat Bugzilla – Attachment 856342 Details for
Bug 1047559
fails to install stix fonts
[?]
New
Simple Search
Advanced Search
My Links
Browse
Requests
Reports
Current State
Search
Tabular reports
Graphical reports
Duplicates
Other Reports
User Changes
Plotly Reports
Bug Status
Bug Severity
Non-Defaults
|
Product Dashboard
Help
Page Help!
Bug Writing Guidelines
What's new
Browser Support Policy
5.0.4.rh83 Release notes
FAQ
Guides index
User guide
Web Services
Contact
Legal
This site requires JavaScript to be enabled to function correctly, please enable it.
[patch]
matplotlib.patch
matplotlib.patch (text/plain), 16.51 KB, created by
Paulo Andrade
on 2014-01-28 02:18:56 UTC
(
hide
)
Description:
matplotlib.patch
Filename:
MIME Type:
Creator:
Paulo Andrade
Created:
2014-01-28 02:18:56 UTC
Size:
16.51 KB
patch
obsolete
>commit f5296308eee9d2ea2dfaa4571b045abcd66e9bd5 >Author: pcpa <paulo.cesar.pereira.de.andrade@gmail.com> >Date: Tue Jan 28 00:01:28 2014 -0200 > > Cconditionally to bundle fonts (#1047559) > >diff --git a/20_matplotlibrc_path_search_fix.patch b/20_matplotlibrc_path_search_fix.patch >new file mode 100644 >index 0000000..ecb0b2f >--- /dev/null >+++ b/20_matplotlibrc_path_search_fix.patch >@@ -0,0 +1,29 @@ >+Description: Fixes the path to search for matplotlibrc file >+Forwarded: not-needed >+Author: Sandro Tosi <morph@debian.org> >+ >+--- a/lib/matplotlib/__init__.py >++++ b/lib/matplotlib/__init__.py >+@@ -607,10 +607,12 @@ def _get_data_path(): >+ raise RuntimeError('Path in environment MATPLOTLIBDATA not a directory') >+ return path >+ >+- path = os.sep.join([os.path.dirname(__file__), 'mpl-data']) >++ path = '/usr/share/matplotlib/mpl-data' >+ if os.path.isdir(path): >+ return path >+ >++ raise RuntimeError('Could not find the matplotlib data files') >++ >+ # setuptools' namespace_packages may highjack this init file >+ # so need to try something known to be in matplotlib, not basemap >+ import matplotlib.afm >+@@ -727,7 +729,7 @@ def matplotlib_fname(): >+ _get_xdg_config_dir()) >+ return fname >+ >+- path = get_data_path() # guaranteed to exist or raise >++ path = '/etc' # guaranteed to exist or raise >+ fname = os.path.join(path, 'matplotlibrc') >+ if not os.path.exists(fname): >+ warnings.warn('Could not find matplotlibrc; using defaults') >diff --git a/40_bts608939_draw_markers_description.patch b/40_bts608939_draw_markers_description.patch >new file mode 100644 >index 0000000..e093ac7 >--- /dev/null >+++ b/40_bts608939_draw_markers_description.patch >@@ -0,0 +1,14 @@ >+Description: minor glitch in draw_markers() description >+Author: Jakub Wilk <jwilk@debian.org> >+ >+--- a/doc/api/api_changes.rst >++++ b/doc/api/api_changes.rst >+@@ -919,7 +919,7 @@ New methods: >+ >+ * :meth:`draw_markers(self, gc, marker_path, marker_trans, path, >+ trans, rgbFace) >+- <matplotlib.backend_bases.RendererBase.draw_markers` >++ <matplotlib.backend_bases.RendererBase.draw_markers>` >+ >+ * :meth:`draw_path_collection(self, master_transform, cliprect, >+ clippath, clippath_trans, paths, all_transforms, offsets, >diff --git a/50_bts608942_spaces_in_param_args.patch b/50_bts608942_spaces_in_param_args.patch >new file mode 100644 >index 0000000..af50e15 >--- /dev/null >+++ b/50_bts608942_spaces_in_param_args.patch >@@ -0,0 +1,49 @@ >+Description: don't separate param and its argument with a space >+ >+--- a/lib/mpl_toolkits/axes_grid1/axes_divider.py >++++ b/lib/mpl_toolkits/axes_grid1/axes_divider.py >+@@ -201,12 +201,12 @@ class Divider(object): >+ def locate(self, nx, ny, nx1=None, ny1=None, axes=None, renderer=None): >+ """ >+ >+- :param nx, nx1: Integers specifying the column-position of the >++ :param nx,nx1: Integers specifying the column-position of the >+ cell. When nx1 is None, a single nx-th column is >+ specified. Otherwise location of columns spanning between nx >+ to nx1 (but excluding nx1-th column) is specified. >+ >+- :param ny, ny1: same as nx and nx1, but for row positions. >++ :param ny,ny1: same as nx and nx1, but for row positions. >+ """ >+ >+ >+@@ -253,12 +253,12 @@ class Divider(object): >+ (:class:`mpl_toolkits.axes_grid.axes_divider.AxesLocator`) for >+ specified cell. >+ >+- :param nx, nx1: Integers specifying the column-position of the >++ :param nx,nx1: Integers specifying the column-position of the >+ cell. When nx1 is None, a single nx-th column is >+ specified. Otherwise location of columns spanning between nx >+ to nx1 (but excluding nx1-th column) is specified. >+ >+- :param ny, ny1: same as nx and nx1, but for row positions. >++ :param ny,ny1: same as nx and nx1, but for row positions. >+ """ >+ return AxesLocator(self, nx, ny, nx1, ny1) >+ >+@@ -299,12 +299,12 @@ class AxesLocator(object): >+ """ >+ :param axes_divider: An instance of AxesDivider class. >+ >+- :param nx, nx1: Integers specifying the column-position of the >++ :param nx,nx1: Integers specifying the column-position of the >+ cell. When nx1 is None, a single nx-th column is >+ specified. Otherwise location of columns spanning between nx >+ to nx1 (but excluding nx1-th column) is is specified. >+ >+- :param ny, ny1: same as nx and nx1, but for row positions. >++ :param ny,ny1: same as nx and nx1, but for row positions. >+ """ >+ self._axes_divider = axes_divider >+ >diff --git a/60_deal_with_no_writable_dirs.patch b/60_deal_with_no_writable_dirs.patch >new file mode 100644 >index 0000000..2ef1ab4 >--- /dev/null >+++ b/60_deal_with_no_writable_dirs.patch >@@ -0,0 +1,111 @@ >+Description: deal with the case where there are no writable directories. >+Author: Michael Droettboom <mdboom@gmail.com> >+Bug-Debian: http://bugs.debian.org/719384 >+Origin: https://github.com/mdboom/matplotlib/commit/1e8d592ed0439ac6fe8fc08d5efe522799acf4fe >+Reviewed-By: Anton Gladky <gladk@debian.org> >+Last-Update: 2013-09-29 >+ >+--- matplotlib-1.3.0.orig/lib/matplotlib/font_manager.py >++++ matplotlib-1.3.0/lib/matplotlib/font_manager.py >+@@ -1324,6 +1324,8 @@ if USE_FONTCONFIG and sys.platform != 'w >+ return result >+ >+ else: >++ _fmcache = None >++ >+ if not 'TRAVIS' in os.environ: >+ cachedir = get_cachedir() >+ if cachedir is not None: >+@@ -1331,8 +1333,6 @@ else: >+ _fmcache = os.path.join(cachedir, 'fontList.py3k.cache') >+ else: >+ _fmcache = os.path.join(cachedir, 'fontList.cache') >+- else: >+- _fmcache = None >+ >+ fontManager = None >+ >+--- matplotlib-1.3.0.orig/lib/matplotlib/__init__.py >++++ matplotlib-1.3.0/lib/matplotlib/__init__.py >+@@ -518,7 +518,11 @@ def _get_xdg_config_dir(): >+ base directory spec >+ <http://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html>`_. >+ """ >+- return os.environ.get('XDG_CONFIG_HOME', os.path.join(get_home(), '.config')) >++ home = get_home() >++ if home is None: >++ return None >++ else: >++ return os.environ.get('XDG_CONFIG_HOME', os.path.join(home, '.config')) >+ >+ >+ def _get_xdg_cache_dir(): >+@@ -527,7 +531,11 @@ def _get_xdg_cache_dir(): >+ base directory spec >+ <http://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html>`_. >+ """ >+- return os.environ.get('XDG_CACHE_HOME', os.path.join(get_home(), '.cache')) >++ home = get_home() >++ if home is None: >++ return None >++ else: >++ return os.environ.get('XDG_CACHE_HOME', os.path.join(home, '.cache')) >+ >+ >+ def _get_config_or_cache_dir(xdg_base): >+@@ -543,22 +551,28 @@ def _get_config_or_cache_dir(xdg_base): >+ return _create_tmp_config_dir() >+ return configdir >+ >++ p = None >+ h = get_home() >+- p = os.path.join(h, '.matplotlib') >+- if (sys.platform.startswith('linux') and >+- not os.path.exists(p)): >+- p = os.path.join(xdg_base, 'matplotlib') >+- >+- if os.path.exists(p): >+- if not _is_writable_dir(p): >+- return _create_tmp_config_dir() >+- else: >+- try: >+- mkdirs(p) >+- except OSError: >+- return _create_tmp_config_dir() >++ if h is not None: >++ p = os.path.join(h, '.matplotlib') >++ if (sys.platform.startswith('linux') and >++ not os.path.exists(p) and >++ xdg_base is not None): >++ p = os.path.join(xdg_base, 'matplotlib') >++ >++ if p is not None: >++ if os.path.exists(p): >++ if _is_writable_dir(p): >++ return p >++ else: >++ try: >++ mkdirs(p) >++ except OSError: >++ pass >++ else: >++ return p >+ >+- return p >++ return _create_tmp_config_dir() >+ >+ >+ def _get_configdir(): >+@@ -716,9 +730,11 @@ def matplotlib_fname(): >+ if configdir is not None: >+ fname = os.path.join(configdir, 'matplotlibrc') >+ if os.path.exists(fname): >++ home = get_home() >+ if (sys.platform.startswith('linux') and >++ home is not None and >+ fname == os.path.join( >+- get_home(), '.matplotlib', 'matplotlibrc')): >++ home, '.matplotlib', 'matplotlibrc')): >+ warnings.warn( >+ "Found matplotlib configuration in ~/.matplotlib/. " >+ "To conform with the XDG base directory standard, " >diff --git a/70_bts720549_try_StayPuft_for_xkcd.patch b/70_bts720549_try_StayPuft_for_xkcd.patch >new file mode 100644 >index 0000000..04a4797 >--- /dev/null >+++ b/70_bts720549_try_StayPuft_for_xkcd.patch >@@ -0,0 +1,19 @@ >+Description: Try to use also StayPuft (a free font) for xkcd >+Author: Sandro Tosi <morph@debian.org> >+Origin: vendor >+Bug: http://bugs.debian.org/720549 >+Forwarded: not-needed >+Last-Update: 2013-10-06 >+--- >+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ >+--- a/lib/matplotlib/pyplot.py >++++ b/lib/matplotlib/pyplot.py >+@@ -289,7 +289,7 @@ def xkcd(scale=1, length=100, randomness >+ from matplotlib import patheffects >+ context = rc_context() >+ try: >+- rcParams['font.family'] = ['Humor Sans', 'Comic Sans MS'] >++ rcParams['font.family'] = ['Humor Sans', 'Comic Sans MS', 'StayPuft'] >+ rcParams['font.size'] = 14.0 >+ rcParams['path.sketch'] = (scale, length, randomness) >+ rcParams['path.effects'] = [ >diff --git a/python-matplotlib.spec b/python-matplotlib.spec >index 11b1f66..8af9c87 100644 >--- a/python-matplotlib.spec >+++ b/python-matplotlib.spec >@@ -6,7 +6,7 @@ > %endif > %global __provides_exclude_from .*/site-packages/.*\\.so$ > %global with_html 1 >-%global run_tests 0 >+%global run_tests 1 > > # On RHEL 7 onwards, don't build with wx: > %if 0%{?rhel} >= 7 >@@ -15,10 +15,12 @@ > %global with_wx 1 > %endif > >+# https://fedorahosted.org/fpc/ticket/381 >+%global with_bundled_fonts 1 > > Name: python-matplotlib > Version: 1.3.1 >-Release: 1%{?dist} >+Release: 2%{?dist} > Summary: Python 2D plotting library > Group: Development/Libraries > # qt4_editor backend is MIT >@@ -33,6 +35,11 @@ Source1: setup.cfg > > Patch0: %{name}-noagg.patch > Patch1: %{name}-system-cxx.patch >+Patch2: 20_matplotlibrc_path_search_fix.patch >+Patch3: 40_bts608939_draw_markers_description.patch >+Patch4: 50_bts608942_spaces_in_param_args.patch >+Patch5: 60_deal_with_no_writable_dirs.patch >+Patch6: 70_bts720549_try_StayPuft_for_xkcd.patch > > BuildRequires: agg-devel > BuildRequires: freetype-devel >@@ -48,6 +55,12 @@ BuildRequires: python-setuptools > %if %{with_html} > BuildRequires: python-numpydoc > %endif >+%if %{run_tests} >+BuildRequires: python-nose >+%if %{with_python3} >+BuildRequires: python3-nose >+%endif >+%endif > BuildRequires: python2-devel > BuildRequires: pytz > BuildRequires: xorg-x11-server-Xvfb >@@ -65,6 +78,7 @@ Requires: stix-math-fonts > %else > Requires: stix-fonts > %endif >+Requires: %{name}-data > > %description > Matplotlib is a python 2D plotting library which produces publication >@@ -124,6 +138,24 @@ BuildRequires: dvipng > %description doc > %{summary} > >+%package data >+Summary: Data used by python-matplotlib >+Requires: %{name} = %{version}-%{release} >+BuildArch: noarch >+ >+%description data >+%{summary} >+ >+%if %{with_bundled_fonts} >+%package data-fonts >+Summary: Fonts used by python-matplotlib >+Requires: %{name}-data = %{version}-%{release} >+BuildArch: noarch >+ >+%description data-fonts >+%{summary} >+%endif >+ > %if %{with_python3} > %package -n python3-matplotlib > Summary: Python 2D plotting library >@@ -148,6 +180,7 @@ Requires: stix-math-fonts > %else > Requires: stix-fonts > %endif >+Requires: %{name}-data > > %description -n python3-matplotlib > Matplotlib is a python 2D plotting library which produces publication >@@ -187,8 +220,10 @@ Requires: python3-tkinter > # Copy setup.cfg to the builddir > cp %{SOURCE1} . > >+%if !%{with_bundled_fonts} > # Use fontconfig by default > sed -i 's/\(USE_FONTCONFIG = \)False/\1True/' lib/matplotlib/font_manager.py >+%endif > > # Remove bundled libraries > rm -r agg24 CXX >@@ -196,6 +231,11 @@ rm -r agg24 CXX > # Remove references to bundled libraries > %patch0 -b .noagg > %patch1 -b .cxx >+%patch2 -p1 >+%patch3 -p1 >+%patch4 -p1 >+%patch5 -p1 >+%patch6 -p1 > > chmod -x lib/matplotlib/mpl-data/images/*.svg > >@@ -205,12 +245,16 @@ cp -a . %{py3dir} > %endif > > %build >-xvfb-run %{__python2} setup.py build >+MPLCONFIGDIR=$PWD \ >+MATPLOTLIBDATA=$PWD/lib/matplotlib/mpl-data \ >+ xvfb-run %{__python2} setup.py build > %if %{with_html} > # Need to make built matplotlib libs available for the sphinx extensions: > pushd doc >- export PYTHONPATH=`realpath ../build/lib.linux*` >- %{__python2} make.py html >+ MPLCONFIGDIR=$PWD/.. \ >+ MATPLOTLIBDATA=$PWD/../lib/matplotlib/mpl-data \ >+ PYTHONPATH=`realpath ../build/lib.linux*` \ >+ %{__python2} make.py html > popd > %endif > # Ensure all example files are non-executable so that the -doc >@@ -219,34 +263,52 @@ find examples -name '*.py' -exec chmod a-x '{}' \; > > %if %{with_python3} > pushd %{py3dir} >- xvfb-run %{__python3} setup.py build >+ MPLCONFIGDIR=$PWD \ >+ MATPLOTLIBDATA=$PWD/lib/matplotlib/mpl-data \ >+ xvfb-run %{__python3} setup.py build > # documentation cannot be built with python3 due to syntax errors > # and building with python 2 exits with cryptic error messages > popd > %endif > > %install >-%{__python} setup.py install -O1 --skip-build --root=$RPM_BUILD_ROOT >+MPLCONFIGDIR=$PWD \ >+MATPLOTLIBDATA=$PWD/lib/matplotlib/mpl-data/ \ >+ %{__python} setup.py install -O1 --skip-build --root=$RPM_BUILD_ROOT > chmod +x $RPM_BUILD_ROOT%{python_sitearch}/matplotlib/dates.py >-rm -rf $RPM_BUILD_ROOT%{python_sitearch}/matplotlib/mpl-data/fonts >+mkdir -p $RPM_BUILD_ROOT%{_sysconfdir} $RPM_BUILD_ROOT%{_datadir}/matplotlib >+mv $RPM_BUILD_ROOT%{python_sitearch}/matplotlib/mpl-data/matplotlibrc \ >+ $RPM_BUILD_ROOT%{_sysconfdir} >+mv $RPM_BUILD_ROOT%{python_sitearch}/matplotlib/mpl-data \ >+ $RPM_BUILD_ROOT%{_datadir}/matplotlib >+%if !%{with_bundled_fonts} >+rm -rf $RPM_BUILD_ROOT%{_datadir}/matplotlib/mpl-data/fonts >+%endif > > %if %{with_python3} > pushd %{py3dir} >- %{__python3} setup.py install -O1 --skip-build --root=$RPM_BUILD_ROOT >+ MPLCONFIGDIR=$PWD/.. \ >+ MATPLOTLIBDATA=$PWD/../lib/matplotlib/mpl-data/ \ >+ %{__python3} setup.py install -O1 --skip-build --root=$RPM_BUILD_ROOT > chmod +x $RPM_BUILD_ROOT%{python3_sitearch}/matplotlib/dates.py >- rm -rf $RPM_BUILD_ROOT%{python3_sitearch}/matplotlib/mpl-data/fonts >+ rm -fr $RPM_BUILD_ROOT%{python3_sitearch}/matplotlib/mpl-data > rm -f $RPM_BUILD_ROOT%{python3_sitearch}/six.py > popd > %endif > > %if %{run_tests} > %check >-PYTHON_PATH=$RPM_BUILD_ROOT%{python_sitearch} \ >- %{__python} -c "import matplotlib; matplotlib.test()" >+echo "backend : TkAgg" > matplotlibrc >+MPLCONFIGDIR=$PWD \ >+MATPLOTLIBDATA=$RPM_BUILD_ROOT%{_datadir}/matplotlib/mpl-data \ >+PYTHONPATH=$RPM_BUILD_ROOT%{python_sitearch} \ >+ xvfb-run %{__python} -c "import matplotlib; matplotlib.test()" > > %if %{with_python3} >-PYTHON_PATH=$RPM_BUILD_ROOT%{python3_sitearch} \ >- %{__python3} -c "import matplotlib; matplotlib.test()" >+MPLCONFIGDIR=$PWD \ >+MATPLOTLIBDATA=$RPM_BUILD_ROOT%{_datadir}/matplotlib/mpl-data \ >+PYTHONPATH=$RPM_BUILD_ROOT%{python3_sitearch} \ >+ xvfb-run %{__python3} -c "import matplotlib; matplotlib.test()" > %endif > %endif # run_tests > >@@ -291,6 +353,18 @@ PYTHON_PATH=$RPM_BUILD_ROOT%{python3_sitearch} \ > %doc doc/build/html/* > %endif > >+%files data >+%{_sysconfdir}/matplotlibrc >+%{_datadir}/matplotlib/mpl-data/ >+%if %{with_bundled_fonts} >+%exclude %{_datadir}/matplotlib/mpl-data/fonts/ >+%endif >+ >+%if %{with_bundled_fonts} >+%files data-fonts >+%{_datadir}/matplotlib/mpl-data/fonts/ >+%endif >+ > %if %{with_python3} > %files -n python3-matplotlib > %doc %{basepy3dir}/README.rst >@@ -331,6 +405,12 @@ PYTHON_PATH=$RPM_BUILD_ROOT%{python3_sitearch} \ > %endif > > %changelog >+* Mon Jan 27 2014 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - 1.3.1-2 >+- Correct environment for and enable %%check >+- Install system wide matplotlibrc under /etc >+- Do not duplicate mpl-data for python2 and python3 packages >+- Conditionally bundle data fonts (https://fedorahosted.org/fpc/ticket/381) >+ > * Sat Jan 25 2014 Thomas Spura <tomspur@fedoraproject.org> - 1.3.1-1 > - update to 1.3.1 > - use GTKAgg as backend (#1030396, #982793, #1049624)
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 1047559
:
846735
| 856342