|
|
Name: python-zmq
|
|
|
Version: 19.0.0
|
|
|
Release: %autorelease
|
|
|
Summary: Python bindings for zeromq
|
|
|
|
|
|
License: LGPLv3+ and ASL 2.0 and BSD
|
|
|
URL: https://zeromq.org/languages/python/
|
|
|
Source0: %{pypi_source pyzmq}
|
|
|
|
|
|
BuildRequires: gcc
|
|
|
BuildRequires: chrpath
|
|
|
BuildRequires: %{_bindir}/pathfix.py
|
|
|
|
|
|
BuildRequires: zeromq-devel
|
|
|
|
|
|
BuildRequires: python%{python3_pkgversion}-devel
|
|
|
BuildRequires: python%{python3_pkgversion}-setuptools
|
|
|
BuildRequires: python%{python3_pkgversion}-Cython
|
|
|
|
|
|
%global common_description %{expand:
|
|
|
This package contains Python bindings for ZeroMQ. ØMQ is a lightweight and fast
|
|
|
messaging implementation.}
|
|
|
|
|
|
%description %{common_description}
|
|
|
|
|
|
|
|
|
%package -n python%{python3_pkgversion}-zmq
|
|
|
Summary: %{summary}
|
|
|
License: LGPLv3+
|
|
|
%{?python_provide:%python_provide python%{python3_pkgversion}-zmq}
|
|
|
%{?python_provide:%python_provide python%{python3_pkgversion}-pyzmq}
|
|
|
Provides: python%{python3_pkgversion}-pyzmq = %{version}-%{release}
|
|
|
|
|
|
%description -n python%{python3_pkgversion}-zmq %{common_description}
|
|
|
|
|
|
|
|
|
%package -n python%{python3_pkgversion}-zmq-tests
|
|
|
Summary: %{summary}, testsuite
|
|
|
License: LGPLv3+
|
|
|
Requires: python%{python3_pkgversion}-zmq = %{version}-%{release}
|
|
|
%{?python_provide:%python_provide python%{python3_pkgversion}-zmq-tests}
|
|
|
%{?python_provide:%python_provide python%{python3_pkgversion}-pyzmq-tests}
|
|
|
Provides: python%{python3_pkgversion}-pyzmq-tests = %{version}-%{release}
|
|
|
|
|
|
BuildRequires: python%{python3_pkgversion}-pytest
|
|
|
Requires: python%{python3_pkgversion}-pytest
|
|
|
BuildRequires: python%{python3_pkgversion}-tornado
|
|
|
Requires: python%{python3_pkgversion}-tornado
|
|
|
# Some tests in zmq/tests/test_context.py and zmq/tests/test_socket.py require
|
|
|
# pyczmq, which is not packaged and has not been updated in a decade.
|
|
|
#
|
|
|
# Enable more tests in zmq/tests/test_message.py:
|
|
|
BuildRequires: python%{python3_pkgversion}-numpy
|
|
|
Requires: python%{python3_pkgversion}-numpy
|
|
|
|
|
|
%description -n python%{python3_pkgversion}-zmq-tests %{common_description}
|
|
|
|
|
|
This package contains the test suite for the Python bindings.
|
|
|
|
|
|
|
|
|
%prep
|
|
|
%setup -q -n pyzmq-%{version}
|
|
|
|
|
|
# remove bundled libraries
|
|
|
rm -rf bundled
|
|
|
|
|
|
# forcibly regenerate the Cython-generated .c files:
|
|
|
find zmq -name "*.c" -delete
|
|
|
%{__python3} setup.py cython
|
|
|
|
|
|
# remove shebangs
|
|
|
for lib in zmq/eventloop/*.py; do
|
|
|
sed '/\/usr\/bin\/env/d' $lib > $lib.new &&
|
|
|
touch -r $lib $lib.new &&
|
|
|
mv $lib.new $lib
|
|
|
done
|
|
|
|
|
|
# remove excecutable bits
|
|
|
chmod -x examples/pubsub/topics_pub.py
|
|
|
chmod -x examples/pubsub/topics_sub.py
|
|
|
|
|
|
# delete hidden files
|
|
|
#find examples -name '.*' | xargs rm -v
|
|
|
|
|
|
|
|
|
%build
|
|
|
%py3_build
|
|
|
|
|
|
|
|
|
%install
|
|
|
%global RPATH /zmq/{backend/cython,devices}
|
|
|
%py3_install
|
|
|
pathfix.py -pn -i %{__python3} %{buildroot}%{python3_sitearch}
|
|
|
|
|
|
|
|
|
%check
|
|
|
# to avoid partially initialized zmq module from cwd
|
|
|
mkdir -p _empty
|
|
|
cd _empty
|
|
|
ln -s %{buildroot}%{python3_sitearch}/zmq/ ../pytest.ini ./
|
|
|
|
|
|
# test_draft seems to get incorrectly run:
|
|
|
# https://github.com/zeromq/pyzmq/issues/1853
|
|
|
k="${k-}${k+ and }not test_draft"
|
|
|
|
|
|
# Whatever it takes to build the Cython extension tests/cython_ext.pyx that is
|
|
|
# *in the tests*, we aren’t doing it. This goes away in later releases, so we
|
|
|
# don’t put any effort into figuring out how to make it work.
|
|
|
k="${k-}${k+ and }not test_cython"
|
|
|
|
|
|
# These hang; TODO: why?
|
|
|
k="${k-}${k+ and }not (TestAsyncioAuthentication and test_blacklist)"
|
|
|
k="${k-}${k+ and }not (TestAsyncioAuthentication and test_curve)"
|
|
|
k="${k-}${k+ and }not (TestAsyncioAuthentication and test_plain)"
|
|
|
|
|
|
%pytest -k "${k-}" -v -rs zmq/tests
|
|
|
|
|
|
|
|
|
%files -n python%{python3_pkgversion}-zmq
|
|
|
%license COPYING.*
|
|
|
%doc README.md
|
|
|
# examples/
|
|
|
%{python3_sitearch}/pyzmq-%{version}-py%{python3_version}.egg-info
|
|
|
%{python3_sitearch}/zmq
|
|
|
%exclude %{python3_sitearch}/zmq/tests
|
|
|
|
|
|
%files -n python%{python3_pkgversion}-zmq-tests
|
|
|
%{python3_sitearch}/zmq/tests
|
|
|
|
|
|
|
|
|
%changelog
|
|
|
%autochangelog
|