[packages/python-sympy] - updated to 1.4 - removed obsolete docs-build patch - added nodisplay patch (blacklist tests requir
qboosh
qboosh at pld-linux.org
Sat Sep 14 06:07:46 CEST 2019
commit cd938da9543d028dc8b61b78eb983b88b1a73434
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date: Sat Sep 14 06:10:40 2019 +0200
- updated to 1.4
- removed obsolete docs-build patch
- added nodisplay patch (blacklist tests requiring DISPLAY when it's missing)
docs-build.patch | 32 -----------------
python-sympy-nodisplay.patch | 24 +++++++++++++
python-sympy.spec | 85 ++++++++++++++++++++++++++++++++------------
3 files changed, 87 insertions(+), 54 deletions(-)
---
diff --git a/python-sympy.spec b/python-sympy.spec
index de6ef49..d5aec65 100644
--- a/python-sympy.spec
+++ b/python-sympy.spec
@@ -1,41 +1,53 @@
#
# Conditional build:
-%bcond_without tests # do not perform "make test"
+%bcond_without doc # HTML and PDF documentation
+%bcond_without tests # unit tests
%bcond_without python2 # CPython 2.x module
%bcond_without python3 # CPython 3.x module
-Summary: A Python library for symbolic mathematics
+Summary: Python 2 library for symbolic mathematics
+Summary(pl.UTF-8): Biblioteka Pythona 2 do matematyki symbolicznej
Name: python-sympy
-Version: 1.1.1
+Version: 1.4
Release: 1
License: BSD
Group: Libraries/Python
+#Source0Download: https://github.com/sympy/sympy/releases
Source0: https://github.com/sympy/sympy/releases/download/sympy-%{version}/sympy-%{version}.tar.gz
-# Source0-md5: c410a9c2346878716d16ec873d72e72a
-Patch0: docs-build.patch
-URL: http://sympy.org/
-BuildRequires: rpmbuild(macros) >= 1.710
+# Source0-md5: 478072d75b564c9356990e3027d464e6
+Patch0: %{name}-nodisplay.patch
+URL: https://www.sympy.org/
BuildRequires: gettext
BuildRequires: graphviz
+BuildRequires: rpmbuild(macros) >= 1.714
+BuildRequires: sed >= 4.0
%if %{with python2}
-BuildRequires: python-Sphinx
-BuildRequires: python-devel
-BuildRequires: python-mpmath
+BuildRequires: python-devel >= 1:2.7
+BuildRequires: python-setuptools
+%if %{with tests}
+BuildRequires: python-devel-tools
+BuildRequires: python-mpmath >= 0.19
BuildRequires: python-numpy
%endif
+%endif
%if %{with python3}
-BuildRequires: python3-Sphinx
-BuildRequires: python3-devel
+BuildRequires: python3-devel >= 1:3.4
+BuildRequires: python3-setuptools
+%if %{with tests}
BuildRequires: python3-devel-tools
-BuildRequires: python3-mpmath
+BuildRequires: python3-mpmath >= 0.19
BuildRequires: python3-numpy
%endif
+%endif
+%if %{with doc}
BuildRequires: pydoc3
BuildRequires: sphinx-pdg
BuildRequires: texlive-format-pdflatex
BuildRequires: texlive-latex
BuildRequires: texlive-latex-pgf
+%endif
Requires: python-matplotlib
+Requires: python-modules >= 1:2.7
Requires: python-mpmath
Requires: python-pyglet
BuildArch: noarch
@@ -47,10 +59,18 @@ while keeping the code as simple as possible in order to be
comprehensible and easily extensible. SymPy is written entirely in
Python and does not require any external libraries.
+%description -l pl.UTF-8
+SymPy ma być w pełni funkcjonalnym systemem algebry komputerowej
+(CAS), a jednocześnie mieć jak najprostszy, czytelny i łatwo
+rozszerzalny kod. Jest pisany całkowicie w Pythonie i nie wymaga
+żadnych zewnętrznych bibliotek.
+
%package -n python3-sympy
-Summary: A Python3 library for symbolic mathematics
+Summary: Python 3 library for symbolic mathematics
+Summary(pl.UTF-8): Biblioteka Pythona 3 do matematyki symbolicznej
Group: Libraries/Python
Requires: python3-matplotlib
+Requires: python3-modules >= 1:3.4
Requires: python3-mpmath
Requires: python3-pyglet
@@ -60,13 +80,22 @@ while keeping the code as simple as possible in order to be
comprehensible and easily extensible. SymPy is written entirely in
Python and does not require any external libraries.
+%description -n python3-sympy -l pl.UTF-8
+SymPy ma być w pełni funkcjonalnym systemem algebry komputerowej
+(CAS), a jednocześnie mieć jak najprostszy, czytelny i łatwo
+rozszerzalny kod. Jest pisany całkowicie w Pythonie i nie wymaga
+żadnych zewnętrznych bibliotek.
+
%package doc
-Summary: Documentation for sympy
-Group: Libraries/Python
-Requires: %{name} = %{version}-%{release}
+Summary: Documentation for SymPy module
+Summary(pl.UTF-8): Dokumentacja do SymPy
+Group: Documentation
%description doc
-HTML documentation for sympy.
+HTML documentation for SymPy.
+
+%description doc -l pl.UTF-8
+Dokumentacja do SymPy w formacie HTML.
%prep
%setup -q -n sympy-%{version}
@@ -81,10 +110,11 @@ HTML documentation for sympy.
%py3_build %{?with_tests:test}
%endif
-# Build the documentation
+%if %{with doc}
cd doc
%{__make} html
%{__make} cheatsheet
+%endif
%install
rm -rf $RPM_BUILD_ROOT
@@ -107,28 +137,39 @@ find $RPM_BUILD_ROOT%{_examplesdir}/python3-sympy-%{version} -name '*.py' \
install -d $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
cp -a examples/* $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
+find $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version} -name '*.py' \
+ | xargs sed -i '1s|^#!.*python\b|#!%{__python}|'
%endif
%clean
rm -rf $RPM_BUILD_ROOT
+%if %{with python2}
%files
%defattr(644,root,root,755)
-%doc AUTHORS LICENSE PKG-INFO doc/_build/cheatsheet/cheatsheet.pdf
+%doc AUTHORS LICENSE README.rst
%attr(755,root,root) %{_bindir}/isympy
+%{py_sitescriptdir}/isympy.py[co]
%{py_sitescriptdir}/sympy
%{py_sitescriptdir}/sympy-%{version}-*.egg-info
%{_mandir}/man1/isympy.1*
%{_examplesdir}/%{name}-%{version}
+%endif
+%if %{with python3}
%files -n python3-sympy
%defattr(644,root,root,755)
-%doc AUTHORS LICENSE PKG-INFO doc/_build/cheatsheet/cheatsheet.pdf
+%doc AUTHORS LICENSE README.rst
%attr(755,root,root) %{_bindir}/isympy3
+%{py3_sitescriptdir}/isympy.py
+%{py3_sitescriptdir}/__pycache__/isympy.cpython-*.py[co]
%{py3_sitescriptdir}/sympy
%{py3_sitescriptdir}/sympy-%{version}-*.egg-info
%{_examplesdir}/python3-sympy-%{version}
+%endif
+%if %{with doc}
%files doc
%defattr(644,root,root,755)
-%doc doc/_build/html/*
+%doc doc/_build/html/* doc/_build/cheatsheet/cheatsheet.pdf
+%endif
diff --git a/docs-build.patch b/docs-build.patch
deleted file mode 100644
index f9e3a92..0000000
--- a/docs-build.patch
+++ /dev/null
@@ -1,32 +0,0 @@
---- sympy-1.0/doc/Makefile~ 2016-03-08 19:38:39.000000000 +0100
-+++ sympy-1.0/doc/Makefile 2016-05-10 08:10:27.649406764 +0200
-@@ -117,7 +117,7 @@
- pdflatex -output-directory=_build/cheatsheet cheatsheet/cheatsheet.tex
- pdflatex -output-directory=_build/cheatsheet cheatsheet/cheatsheet.tex
-
--_build/cheatsheet/cheatsheet.pdf: cheatsheet/combinatoric_cheatsheet.tex
-+_build/cheatsheet/combinatoric_cheatsheet.pdf: cheatsheet/combinatoric_cheatsheet.tex
- mkdir -p _build/cheatsheet
- pdflatex -output-directory=_build/cheatsheet cheatsheet/combinatoric_cheatsheet.tex
- pdflatex -output-directory=_build/cheatsheet cheatsheet/combinatoric_cheatsheet.tex
-diff -ur sympy-1.1.1.org/doc/api/conf.py sympy-1.1.1/doc/api/conf.py
---- sympy-1.1.1.org/doc/api/conf.py 2017-07-22 00:17:42.000000000 +0200
-+++ sympy-1.1.1/doc/api/conf.py 2018-07-04 21:04:02.333475214 +0200
-@@ -131,4 +131,4 @@
- #latex_appendices = []
-
- # If false, no module index is generated.
--#latex_use_modindex = True
-+#latex_domain_indices = True
-diff -ur sympy-1.1.1.org/doc/src/conf.py sympy-1.1.1/doc/src/conf.py
---- sympy-1.1.1.org/doc/src/conf.py 2017-07-27 00:46:51.000000000 +0200
-+++ sympy-1.1.1/doc/src/conf.py 2018-07-04 21:03:49.133014108 +0200
-@@ -178,7 +178,7 @@
- latex_show_pagerefs = True
-
- # We use False otherwise the module index gets generated twice.
--latex_use_modindex = False
-+latex_domain_indices = False
-
- default_role = 'math'
- pngmath_divpng_args = ['-gamma 1.5', '-D 110']
diff --git a/python-sympy-nodisplay.patch b/python-sympy-nodisplay.patch
new file mode 100644
index 0000000..4c7324b
--- /dev/null
+++ b/python-sympy-nodisplay.patch
@@ -0,0 +1,24 @@
+--- sympy-1.4/sympy/utilities/runtests.py.orig 2019-04-10 02:31:59.000000000 +0200
++++ sympy-1.4/sympy/utilities/runtests.py 2019-09-13 16:13:57.588571573 +0200
+@@ -521,7 +521,9 @@
+ split = kwargs.get('split', None)
+ time_balance = kwargs.get('time_balance', True)
+ blacklist = kwargs.get('blacklist', ['sympy/integrals/rubi/rubi_tests/tests'])
+- if ON_TRAVIS:
++ if ON_TRAVIS or os.getenv('DISPLAY', '') == '':
+ # pyglet does not work on Travis
++ blacklist.extend('sympy/categories/tests/test_drawing.py')
++ blacklist.extend('sympy/printing/tests/test_preview.py')
+ blacklist.extend('sympy/plotting/pygletplot/tests')
+ blacklist = convert_to_native_paths(blacklist)
+@@ -698,7 +698,9 @@
+ import matplotlib
+ matplotlib.use('Agg')
+
+- if ON_TRAVIS or import_module('pyglet') is None:
++ if ON_TRAVIS or os.getenv('DISPLAY', '') == '' or import_module('pyglet') is None:
++ blacklist.extend(["sympy/categories/diagram_drawing.py"])
++ blacklist.extend(["sympy/printing/preview.py"])
+ blacklist.extend(["sympy/plotting/pygletplot"])
+
+ if import_module('theano') is None:
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/python-sympy.git/commitdiff/cd938da9543d028dc8b61b78eb983b88b1a73434
More information about the pld-cvs-commit
mailing list