750f711
# Use a git commit with fixes
807d553
%global commit 827b609e61c5821347ad06e865c86722c11fe9f3
750f711
%global shortcommit %(c=%{commit}; echo ${c:0:7})
750f711
750f711
# Multiple tests fail on i386
750f711
# https://github.com/nipy/nitime/issues/136
750f711
# https://github.com/nipy/nitime/issues/137
807d553
%bcond_with tests
750f711
807d553
# Docs are broken, need to be reported upstream
807d553
# Currently disabled
807d553
%bcond_with docs
750f711
750f711
750f711
%global srcname nitime
750f711
807d553
%global _description %{expand:
750f711
Nitime is library of tools and algorithms for the analysis of time-series data
750f711
from neuroscience experiments. It contains a implementation of numerical
750f711
algorithms for time-series analysis both in the time and spectral domains, a
750f711
set of container objects to represent time-series, and auxiliary objects that
750f711
expose a high level interface to the numerical machinery and make common
750f711
analysis tasks easy to express with compact and semantically clear code.
750f711
750f711
Current information can always be found at the nitime website. Questions and
750f711
comments can be directed to the mailing list:
750f711
http://mail.scipy.org/mailman/listinfo/nipy-devel.
750f711
750f711
Documentation is available at http://nipy.org/nitime/documentation.html
750f711
}
750f711
750f711
750f711
Name:           python-%{srcname}
807d553
Version:        0.8.1
807d553
Release:        1%{?dist}
750f711
Summary:        Timeseries analysis for neuroscience data
750f711
750f711
License:        BSD
750f711
URL:            http://nipy.org/%{srcname}
750f711
Source0:        https://github.com/nipy/nitime/archive/%{commit}/%{srcname}-%{shortcommit}.tar.gz
807d553
Patch0:         0001-Remove-six.patch
750f711
750f711
BuildRequires:  python3-devel
750f711
750f711
BuildRequires:  %{py3_dist networkx}
750f711
BuildRequires:  %{py3_dist nibabel}
750f711
BuildRequires:  %{py3_dist cython}
750f711
BuildRequires:  %{py3_dist pytest}
750f711
BuildRequires:  %{py3_dist nose}
750f711
BuildRequires:  %{py3_dist matplotlib}
807d553
BuildRequires:  %{py3_dist scipy}
750f711
BuildRequires:  gcc
807d553
BuildRequires:  git-core
750f711
750f711
Requires:       %{py3_dist numpy}
750f711
Requires:       %{py3_dist scipy}
750f711
Requires:       %{py3_dist matplotlib}
750f711
Requires:       %{py3_dist networkx}
750f711
Requires:       %{py3_dist nibabel}
750f711
Requires:       %{py3_dist cython}
750f711
Requires:       %{py3_dist six}
750f711
807d553
%description %_description
750f711
750f711
%package -n python3-%{srcname}
750f711
Summary:        %{summary}
750f711
%{?python_provide:%python_provide python3-%{srcname}}
750f711
807d553
%description -n python3-%{srcname} %_description
750f711
807d553
%if %{with docs}
750f711
%package doc
750f711
Summary:    Documentation for %{name}
750f711
BuildArch:  noarch
750f711
807d553
# Bundles a few sphinxexts but they don't seem to be easy to find
807d553
BuildRequires:  %{py3_dist sphinx}
807d553
BuildRequires:  %{py3_dist numpydoc}
807d553
BuildRequires:  texlive-latex
807d553
BuildRequires:  texlive-ucs
807d553
BuildRequires:  tex(amsthm.sty)
807d553
750f711
%description doc
750f711
Documentation files for %{name}.
750f711
%endif
750f711
750f711
%prep
807d553
%autosetup -n %{srcname}-%{commit} -S git
750f711
rm -rvf %{srcname}.egg-info
750f711
rm -f nitime/six.py
807d553
750f711
find . -name "*.so" -exec rm -fv '{}' \;
750f711
750f711
# Correct shebangs to python3
750f711
sed -i 's|^#!/usr/bin/env python|#!/usr/bin/python3|' setup.py
750f711
sed -i 's|python|python3|' doc/Makefile
807d553
807d553
# This example doesn't seem to be correct, so we remove it for the time being and let upstream know.
807d553
rm -fv doc/examples/filtering_fmri.py
807d553
750f711
pushd tools
750f711
    for f in *; do
750f711
        sed -E -i 's|^#!/usr/bin/env python|#!/usr/bin/python3|' "$f"
750f711
    done
750f711
popd
750f711
750f711
%build
750f711
%py3_build
750f711
807d553
%if %{with docs}
750f711
pushd doc &&
750f711
    PYTHONPATH=../ make html &&
750f711
    rm -fv _build/html/.buildinfo
750f711
popd
750f711
%endif
750f711
750f711
750f711
%install
750f711
%py3_install
750f711
750f711
%check
807d553
%if %{with tests}
750f711
# From https://github.com/neurodebian/nitime/blob/3ca5a131ba1ea839e047a7a2e008b754be9fe4bb/debian/rules#L47
750f711
PYTHONPATH=$RPM_BUILD_ROOT/%{python3_sitearch} nosetests-3 '--exclude=test_(coherence_linear_dependence|lazy_reload)' nitime
750f711
%endif
750f711
750f711
%files -n python3-%{srcname}
750f711
%license LICENSE
750f711
%doc README.txt THANKS
807d553
%{python3_sitearch}/%{srcname}-%{version}-py%{python3_version}.egg-info
750f711
%{python3_sitearch}/%{srcname}
750f711
807d553
%if %{with docs}
750f711
%files doc
750f711
%license LICENSE
750f711
%doc doc/_build/html
750f711
%endif
750f711
750f711
%changelog
807d553
* Thu Aug 01 2019 Ankur Sinha <ankursinha AT fedoraproject DOT org> - 0.8.1-1
807d553
- Update to new version
807d553
- Fix build
807d553
- Use conditionals
807d553
- Drop Python 2
807d553
- Disable broken doc build
807d553
32bf1fa
* Fri Jul 26 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0.8-0.4.git1fab571
32bf1fa
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
32bf1fa
e2f7db3
* Sat Feb 02 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0.8-0.3.git1fab571
e2f7db3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
e2f7db3
750f711
* Tue Nov 06 2018 Ankur Sinha <ankursinha AT fedoraproject DOT org> - 0.8-0.2.git1fab571
750f711
- Enable documentation on rawhide where build succeeds (F30)
750f711
- Remove extra buildinfo file
750f711
- Make doc package noarch
750f711
- Move THANKS file to correct bits
750f711
750f711
* Sun Nov 04 2018 Ankur Sinha <ankursinha AT fedoraproject DOT org> - 0.8-0.1.git1fab571
750f711
- Initial build