Blob Blame History Raw
# what it's called on pypi
%global srcname parso
# what it's imported as
%global libname %{srcname}
# name of egg info directory
%global eggname %{srcname}
# package name fragment
%global pkgname %{srcname}

%global common_description %{expand:
Parso is a Python parser that supports error recovery and round-trip parsing
for different Python versions (in multiple Python versions). Parso is also able
to list multiple syntax errors in your python file.  Parso has been
battle-tested by jedi. It was pulled out of jedi to be useful for other
projects as well.  Parso consists of a small API to parse Python and analyse
the syntax tree.}

# Use common documentation directory
%global _docdir_fmt %{name}

# test suite fixtures use yield statements, only available in pytest 3
%if 0%{?fedora} >= 26
%bcond_without tests
%endif

Name:           python-%{pkgname}
Version:        0.3.1
Release:        2%{?dist}
Summary:        Parser that supports error recovery and round-trip parsing
License:        MIT and Python
URL:            https://parso.readthedocs.io
Source0:        %pypi_source
BuildArch:      noarch


%description %{common_description}


%package -n python2-%{pkgname}
Summary:        %{summary}
BuildRequires:  python2-devel
BuildRequires:  python2-setuptools
%if %{with tests}
BuildRequires:  %{?fedora:python2-}pytest >= 3.0.0
%endif
%{?python_provide:%python_provide python2-%{pkgname}}


%description -n python2-%{pkgname} %{common_description}


%package -n python%{python3_pkgversion}-%{pkgname}
Summary:        %{summary}
BuildRequires:  python%{python3_pkgversion}-devel
BuildRequires:  python%{python3_pkgversion}-setuptools
%if %{with tests}
BuildRequires:  python%{python3_pkgversion}-pytest >= 3.0.0
%endif
%{?python_provide:%python_provide python%{python3_pkgversion}-%{pkgname}}


%description -n python%{python3_pkgversion}-%{pkgname} %{common_description}


%if %{defined python3_other_pkgversion}
%package -n python%{python3_other_pkgversion}-%{pkgname}
Summary:        %{summary}
BuildRequires:  python%{python3_other_pkgversion}-devel
BuildRequires:  python%{python3_other_pkgversion}-setuptools
%if %{with tests}
BuildRequires:  python%{python3_other_pkgversion}-pytest >= 3.0.0
%endif


%description -n python%{python3_other_pkgversion}-%{pkgname} %{common_description}
%endif


%prep
%autosetup -n %{srcname}-%{version}


%build
%py2_build
%py3_build
%if %{defined python3_other_pkgversion}
%py3_other_build
%endif


%install
%if %{defined python3_other_pkgversion}
%py3_other_install
%endif
%py3_install
%py2_install


%if %{with tests}
%check
py.test-%{python2_version} --verbose
py.test-%{python3_version} --verbose
%if %{defined python3_other_pkgversion}
py.test-%{python3_other_version} --verbose
%endif
%endif


%files -n python2-%{pkgname}
%license LICENSE.txt
%doc README.rst
%{python2_sitelib}/%{libname}
%{python2_sitelib}/%{eggname}-%{version}-py%{python2_version}.egg-info


%files -n python%{python3_pkgversion}-%{pkgname}
%license LICENSE.txt
%doc README.rst
%{python3_sitelib}/%{libname}
%{python3_sitelib}/%{eggname}-%{version}-py%{python3_version}.egg-info


%if %{defined python3_other_pkgversion}
%files -n python%{python3_other_pkgversion}-%{pkgname}
%license LICENSE.txt
%doc README.rst
%{python3_other_sitelib}/%{libname}
%{python3_other_sitelib}/%{eggname}-%{version}-py%{python3_other_version}.egg-info
%endif


%changelog
* Sat Feb 02 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0.3.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild

* Wed Aug 08 2018 Carl George <carl@george.computer> - 0.3.1-1
- Latest upstream
- Use common documentation directory
- Enable python36 subpackage for EPEL

* Sat Jul 14 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.2.1-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild

* Fri Jun 15 2018 Miro HronĨok <mhroncok@redhat.com> - 0.2.1-2
- Rebuilt for Python 3.7

* Mon May 21 2018 Carl George <carl@george.computer> - 0.2.1-1
- Latest upstream

* Mon Apr 16 2018 Carl George <carl@george.computer> - 0.2.0-1
- Latest upstream

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

* Sat Dec 30 2017 Carl George <carl@george.computer> - 0.1.1-2
- Be more explicit with the files in site-packages

* Tue Dec 26 2017 Carl George <carl@george.computer> - 0.1.1-1
- Initial package