%if 0%{?fedora} > 12
%global with_python3 1
%endif
%global pypiname trollius
Name: python-trollius
Version: 2.1
Release: 10%{?dist}
Summary: A port of the Tulip asyncio module to Python 2
License: ASL 2.0
URL: https://github.com/haypo/trollius
Source0: https://files.pythonhosted.org/packages/source/t/%{pypiname}/%{pypiname}-%{version}.tar.gz
# async is a keyword in python 3.7, thus cannot be a function name
Patch0: %{name}-async.patch
BuildArch: noarch
BuildRequires: python2-devel
BuildRequires: python2-setuptools
BuildRequires: python2-mock
%if 0%{?with_python3}
BuildRequires: python3-devel
BuildRequires: python3-setuptools
%endif #python3
# see https://fedoraproject.org/wiki/Packaging:Python#Macros
%if 0%{?rhel} && 0%{?rhel} <= 6
%{!?__python2: %global __python2 /usr/bin/python2}
%{!?python2_sitelib: %global python2_sitelib %(%{__python2} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())")}
%{!?python2_sitearch: %global python2_sitearch %(%{__python2} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib(1))")}
%endif
# required for check
BuildRequires: python2-unittest2
BuildRequires: python2-futures
%global _description\
\
Trollius provides infrastructure for writing single-threaded\
concurrent code using coroutines, multiplexing I/O access over sockets\
and other resources, running network clients and servers, and other\
related primitives.\
\
Trollius is a portage of the asyncio project (PEP 3156) on Python\
2. Trollius works on Python 2.6-3.5. It has been tested on Windows,\
Linux, Mac OS X, FreeBSD and OpenIndiana.
%description %_description
%package -n python2-trollius
Summary: %summary
Requires: python2-futures
Requires: python2-six
%if 0%{?rhel}==6
# things required just by python2.6 on RHEL
Requires: python-ordereddict
%endif
%{?python_provide:%python_provide python2-trollius}
%description -n python2-trollius %_description
%if 0%{?with_python3}
%package -n python3-trollius
Summary: A port of the Tulip asyncio module
%description -n python3-trollius
Trollius provides infrastructure for writing single-threaded
concurrent code using coroutines, multiplexing I/O access over sockets
and other resources, running network clients and servers, and other
related primitives.
Trollius is a portage of the asyncio project (PEP 3156) on Python
2. Trollius works on Python 2.6-3.5. It has been tested on Windows,
Linux, Mac OS X, FreeBSD and OpenIndiana.
%endif #python3
%prep
%setup -q -n %{pypiname}-%{version}
%if 0%{?with_python3}
rm -rf %{py3dir}
cp -a . %{py3dir}
pushd %{py3dir}
%patch0
popd
%endif
%build
%if 0%{?with_python3}
pushd %{py3dir}
%{__python3} setup.py build
popd
%endif
%{__python2} setup.py build
%install
%if 0%{?with_python3}
pushd %{py3dir}
%{__python3} setup.py install -O1 --skip-build --root %{buildroot}
popd
%endif
%{__python2} setup.py install -O1 --skip-build --root %{buildroot}
%check
# these are currently causing koji builds to hang
#python runtests.py -v1 -x test_subprocess_kill
#%if 0%{?with_python3}
#pushd %{py3dir}
#%{__python3} runtests.py -v1 -x test_subprocess_kill
#popd
#%endif
%files -n python2-trollius
%defattr(-,root,root,-)
%doc README.rst
%{python2_sitelib}/trollius
%{python2_sitelib}/%{pypiname}-%{version}-py2.?.egg-info
%if 0%{?with_python3}
%files -n python3-trollius
%defattr(-,root,root,-)
%doc README.rst
%dir %{python3_sitelib}/trollius
%{python3_sitelib}/trollius/*.py
%{python3_sitelib}/trollius/__pycache__
%{python3_sitelib}/%{pypiname}-%{version}-py3.?.egg-info
%endif
%changelog
* Sat Feb 02 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2.1-10
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Sat Jul 21 2018 Jerry James <loganjerry@gmail.com> - 2.1-9
- Add -async patch to fix FTBFS (bz 1593133)
* Tue Jun 19 2018 Miro Hrončok <mhroncok@redhat.com> - 2.1-9
- Rebuilt for Python 3.7
* Wed Feb 28 2018 Iryna Shcherbina <ishcherb@redhat.com> - 2.1-8
- 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> - 2.1-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
* Sun Dec 17 2017 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 2.1-6
- Python 2 binary package renamed to python2-trollius
See https://fedoraproject.org/wiki/FinalizingFedoraSwitchtoPython3
* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.1-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
* Tue Feb 7 2017 Ian Wienand <iwienand@redhat.com> - 2.1-4
- Add python-six dependency (rhbz#1402775)
* Mon Dec 19 2016 Miro Hrončok <mhroncok@redhat.com> - 2.1-3
- Rebuild for Python 3.6
* Tue Jul 19 2016 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.1-2
- https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages
* Tue Jun 14 2016 Matthias Runge <mrunge@redhat.com> - 2.1-1
- update to 2.1 (rhbz#1101234)
* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 2.0-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
* Tue Nov 10 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.0-2
- Rebuilt for https://fedoraproject.org/wiki/Changes/python3.5
* Tue Jul 14 2015 Ian Wienand <iwienand@redhat.com> - 2.0-1
- update to 2.0 - rhbz#1101234
* Mon Jun 15 2015 Ian Wienand <iwienand@redhat.com> - 1.0.4-2
- add python3 - rhbz#1230868
* Wed Jan 7 2015 Ian Wienand <iwienand@redhat.com> - 1.0.4-1
- update to 1.0.4
- add python-mock as build dependency for tests
* Fri Aug 15 2014 Ian Wienand <iwienand@redhat.com> - 1.0.1-1
- update to 1.0.1
* Mon Jul 7 2014 Ian Wienand <iwienand@redhat.com> - 0.4-1
- update to 0.4
- 0.3 changed module name to trollius for python3.4 compatability
(issue #8; see README)
* Wed Apr 16 2014 Ian Wienand <iwienand@redhat.com> - 0.2-2
- fix python-ordereddict dependency typo
* Mon Mar 24 2014 Ian Wienand <iwienand@fedora19> - 0.2-1
- update to 0.2
* Tue Mar 4 2014 <iwienand@redhat.com> - 0.1.5-3
- add python-futures as build-dep
- add __python2* macros; convert to them
* Thu Feb 20 2014 <iwienand@redhat.com> - 0.1.5-2
- change license to ASL 2.0
- add defattr (from rpmlint)
- add group tag (from rpmlint)
* Tue Feb 18 2014 <iwienand@redhat.com> - 0.1.5-1
- Initial release