Blob Blame History Raw
%define modname pywt
%define pkgname PyWavelets

Name:           python-%{modname}
Version:        0.5.2
Release:        9%{?dist}
Summary:        PyWavelets, wavelet transform module
License:        MIT
URL:            http://pywavelets.readthedocs.org/
Source0:        https://github.com/PyWavelets/pywt/archive/v%{version}/%{pkgname}-%{version}.tar.gz
# Tolerance error in tests  https://github.com/PyWavelets/pywt/issues/316
Patch0:         https://github.com/PyWavelets/pywt/commit/d28cc6ec5b7de373c18c982ef5877845ee380a11.patch

BuildRequires:  gcc
BuildRequires: xorg-x11-server-Xvfb

%description
PyWavelets is a Python wavelet transforms module that can do:

* 1D and 2D Forward and Inverse Discrete Wavelet Transform (DWT and IDWT)
* 1D and 2D Stationary Wavelet Transform (Undecimated Wavelet Transform)
* 1D and 2D Wavelet Packet decomposition and reconstruction
* Computing Approximations of wavelet and scaling functions
* Over seventy built-in wavelet filters and support for custom wavelets
* Single and double precision calculations
* Results compatibility with Matlab Wavelet Toolbox

%package doc
Summary:        Documentation for %{name}

%description doc
Documentation for %{name}

%package -n python2-%{modname}
Summary:        %{summary}
%{?python_provide:%python_provide python2-%{modname}}
BuildRequires:  python2-devel python2-Cython
BuildRequires:  python2-numpy
BuildRequires:  python2-nose
BuildRequires:  python2-sphinx
BuildRequires:  python2-numpydoc
Requires:       python2-numpy

%description -n python2-%{modname}
PyWavelets is a Python wavelet transforms module that can do:

* 1D and 2D Forward and Inverse Discrete Wavelet Transform (DWT and IDWT)
* 1D and 2D Stationary Wavelet Transform (Undecimated Wavelet Transform)
* 1D and 2D Wavelet Packet decomposition and reconstruction
* Computing Approximations of wavelet and scaling functions
* Over seventy built-in wavelet filters and support for custom wavelets
* Single and double precision calculations
* Results compatibility with Matlab Wavelet Toolbox

Python 2 version.

%package -n python3-%{modname}
Summary:        %{summary}
%{?python_provide:%python_provide python3-%{modname}}
BuildRequires:  python3-devel python3-Cython
BuildRequires:  python3-numpy
BuildRequires:  python3-nose
BuildRequires:  python3-sphinx
BuildRequires:  python3-numpydoc
Requires:       python3-numpy

%description -n python3-%{modname}
PyWavelets is a Python wavelet transforms module that can do:

* 1D and 2D Forward and Inverse Discrete Wavelet Transform (DWT and IDWT)
* 1D and 2D Stationary Wavelet Transform (Undecimated Wavelet Transform)
* 1D and 2D Wavelet Packet decomposition and reconstruction
* Computing Approximations of wavelet and scaling functions
* Over seventy built-in wavelet filters and support for custom wavelets
* Single and double precision calculations
* Results compatibility with Matlab Wavelet Toolbox

Python 3 version.

%prep
%autosetup -n %{modname}-%{version} -p1

sed -i '1{\@^#!/usr/bin/env python@d}' %{modname}/tests/*.py 

%build
%py2_build
%py3_build

pushd doc
  export PYTHONPATH=`readlink -f ../build/lib.*-%{python3_version}`
  make html SPHINXBUILD=sphinx-build-%{python3_version}
  find -name '.buildinfo' -delete
popd

%install
%py2_install
%py3_install

%check
# Ignoring error in some arches
mkdir -p matplotlib
touch matplotlib/matplotlibrc
export XDG_CONFIG_HOME=`pwd`
pushd %{buildroot}/%{python2_sitearch}
  xvfb-run -a nosetests-%{python2_version} pywt -verbose --no-byte-compile
popd
pushd %{buildroot}/%{python3_sitearch}
  xvfb-run -a nosetests-%{python3_version} pywt -verbose --no-byte-compile
popd

%files doc
%doc doc/build/html

%files -n python2-%{modname}
%license COPYING
%doc README.rst THANKS.txt
%{python2_sitearch}/%{modname}/
%{python2_sitearch}/%{pkgname}*.egg-info

%files -n python3-%{modname}
%license COPYING
%doc README.rst THANKS.txt
%{python3_sitearch}/%{modname}/
%{python3_sitearch}/%{pkgname}*.egg-info

%changelog
* Sat Jul 14 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.5.2-9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild

* Tue Jun 19 2018 Miro Hrončok <mhroncok@redhat.com> - 0.5.2-8
- Rebuilt for Python 3.7
- Invoke xvfb-run with -a to avoid random failures with the latter one

* Wed Feb 28 2018 Iryna Shcherbina <ishcherb@redhat.com> - 0.5.2-7
- Update Python 2 dependency declarations to new packaging standards
  (See https://fedoraproject.org/wiki/FinalizingFedoraSwitchtoPython3)

* Fri Feb 09 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.5.2-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild

* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.5.2-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild

* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.5.2-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild

* Tue Jun 20 2017 Sergio Pascual  <sergiopr@fedoraproject.org> - 0.5.2-3
- Tolerance error in tests fixed upstream github.com/PyWavelets/pywt/issues/316

* Wed May 31 2017 Sergio Pascual  <sergiopr@fedoraproject.org> - 0.5.2-2
- Skip tolerance error en tests (for ppc64le aarch64 ppc64 s390x)

* Wed May 31 2017 Sergio Pascual  <sergiopr@fedoraproject.org> - 0.5.2-1
- New upstream source (0.5.2)
- Run tests with matplotlib under xvfb-run

* Sat Feb 11 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.3.0-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild

* Mon Dec 19 2016 Miro Hrončok <mhroncok@redhat.com> - 0.3.0-5
- Rebuild for Python 3.6

* Tue Jul 19 2016 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.3.0-4
- https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages

* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 0.3.0-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild

* Sat Nov 28 2015 Igor Gnatenko <i.gnatenko.brain@gmail.com> - 0.3.0-2
- One doc subpkg
- Drop shebangs from tests

* Fri Nov 06 2015 Igor Gnatenko <i.gnatenko.brain@gmail.com> - 0.3.0-1
- Initial package