diff --git a/less-flaky.patch b/less-flaky.patch deleted file mode 100644 index 23fcbcd..0000000 --- a/less-flaky.patch +++ /dev/null @@ -1,27 +0,0 @@ ---- - zmq/tests/test_poll.py | 2 +- - zmq/tests/test_retry_eintr.py | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - ---- a/zmq/tests/test_poll.py -+++ b/zmq/tests/test_poll.py -@@ -192,7 +192,7 @@ class TestSelect(PollZMQTestCase): - self.assertTrue(s1 not in rlist) - self.assertTrue(s2 not in rlist) - -- @mark.flaky(reruns=3) -+ @mark.flaky() - def test_timeout(self): - """make sure select timeout has the right units (seconds).""" - s1, s2 = self.create_bound_pair(zmq.PAIR, zmq.PAIR) ---- a/zmq/tests/test_retry_eintr.py -+++ b/zmq/tests/test_retry_eintr.py -@@ -60,7 +60,7 @@ class TestEINTRSysCall(BaseZMQTestCase): - self.assertRaises(zmq.Again, push.send, b('buf')) - assert self.timer_fired - -- @mark.flaky(reruns=3) -+ @mark.flaky() - def test_retry_poll(self): - x, y = self.create_bound_pair() - poller = zmq.Poller() diff --git a/pytest.ini b/pytest.ini new file mode 100644 index 0000000..734facf --- /dev/null +++ b/pytest.ini @@ -0,0 +1,7 @@ +[pytest] +markers = + large: these tests use a lot of memory + new_console: these tests create a new console + wheel: these tests are for installs from a wheel, not dev-installs +testpaths = + zmq/tests diff --git a/python-pyzmq-rpmlintrc b/python-pyzmq-rpmlintrc deleted file mode 100644 index f06a01f..0000000 --- a/python-pyzmq-rpmlintrc +++ /dev/null @@ -1,2 +0,0 @@ -# The devel package only contains C headers files: -addFilter("pyzmq-devel.*: W: no-dependency-on python\(abi\)") diff --git a/python-pyzmq.changes b/python-pyzmq.changes index 7e146ca..41261cf 100644 --- a/python-pyzmq.changes +++ b/python-pyzmq.changes @@ -1,3 +1,45 @@ +------------------------------------------------------------------- +Tue Jun 28 19:16:08 UTC 2022 - Ben Greiner + +- Update to 23.2.0 + * Use zmq.Event enums in parse_monitor_message for nicer reprs + * Fix building bundled libzmq with ZMQ_DRAFT_API=1 + * Fix subclassing zmq.Context with additional arguments in the + constructor. Subclasses may now have full control over the + signature, rather than purely adding keyword-only arguments + * Typos and other small fixes +- Release 23.1.0 + * Fix global name of zmq.EVENT_HANDSHAKE_* constants + * Fix constants missing when using import zmq.green as zmq + * {func}zmq.utils.monitor.recv_monitor_msg now supports async + Sockets. +- Release 23.0.0 + * all zmq constants are now available as Python enums (e.g. + zmq.SocketType.PULL, zmq.SocketOption.IDENTITY), generated + statically from zmq.h instead of at compile-time. This means + that checks for the presence of a constant (hasattr(zmq, + 'RADIO')) is not a valid check for the presence of a feature. + This practice has never been robust, but it may have worked + sometimes. Use direct checks via e.g. {func}zmq.has or + {func}zmq.zmq_version_info. + * A bit more type coverage of Context.term and Context.socket + * Remove all use of deprecated stdlib distutils + * Update to Cython 0.29.30 (required for Python 3.11 + compatibility) + * Compatibility with Python 3.11.0b1 + * Switch to myst for docs + * Deprecate zmq.utils.strtypes, now unused + * Updates to autoformatting, linting +- Drop less-flaky.patch: pytest-rerunfailures without the flaky + package can handle it. +- Fix rpmlint errors + * no-dependency-on python-base 3.X: depend on python(abi) = 3.X + * unused-rpmlintrc-filter: Was unflavored, not required with the + above -- drop rpmlintc + * spurious-executable-perm: fix by chmod -x + * obsolete-suse-version-check 1000. This package is not branched + into any project for the maintenance of other distributions + ------------------------------------------------------------------- Wed Jan 5 23:03:59 UTC 2022 - Ben Greiner diff --git a/python-pyzmq.spec b/python-pyzmq.spec index 3193b61..3733dd1 100644 --- a/python-pyzmq.spec +++ b/python-pyzmq.spec @@ -16,41 +16,43 @@ # +%{?!python_module:%define python_module() python3-%{**}} %define skip_python2 1 -%{?!python_module:%define python_module() python-%{**} python3-%{**}} -# Disable tests, they are very slow/halt on many arch +%define plainpython python %ifarch x86_64 %bcond_without tests %else +# Disable tests, they are very slow/halt on many arch %bcond_with tests %endif Name: python-pyzmq -Version: 22.3.0 +Version: 23.2.0 Release: 0 Summary: Python bindings for 0MQ License: BSD-3-Clause AND LGPL-3.0-or-later URL: https://github.com/zeromq/pyzmq Source: https://files.pythonhosted.org/packages/source/p/pyzmq/pyzmq-%{version}.tar.gz -Source1: python-pyzmq-rpmlintrc -# PATCH-FIX-UPSTREAM less-flaky.patch bsc#[0-9]+ mcepl@suse.com -# Make test suite less flaky -Patch0: less-flaky.patch +# For test markers +Source1: https://raw.githubusercontent.com/zeromq/pyzmq/v%{version}/pytest.ini BuildRequires: %{python_module Cython} BuildRequires: %{python_module devel >= 3.6} +BuildRequires: %{python_module packaging} BuildRequires: %{python_module setuptools} BuildRequires: fdupes BuildRequires: python-rpm-macros BuildRequires: zeromq-devel # SECTION Test requirements -BuildRequires: %{python_module gevent} -BuildRequires: %{python_module flaky} +%if 0%{?suse_version} >= 1550 +# SLE/Leap <= 15.4 has incompatible gevent API # https://www.gevent.org/api/gevent.timeout.html#gevent.Timeout.close +BuildRequires: %{python_module gevent >= 1.3a1} +%endif +BuildRequires: %{python_module numpy} BuildRequires: %{python_module paramiko} BuildRequires: %{python_module pytest-rerunfailures} BuildRequires: %{python_module pytest-timeout} BuildRequires: %{python_module pytest} BuildRequires: %{python_module simplejson} BuildRequires: %{python_module tornado} -BuildRequires: %{python_module numpy if (%python-base without python36-base)} # /SECTION # SECTION pypy3 is not in openSUSE at the moment, it would use the cffi backend BuildRequires: %{python_module cffi if (%python with pypy3)} @@ -60,14 +62,12 @@ Requires: python-cffi Requires: python-py %endif # /SECTION -%if 0%{?suse_version} >= 1000 || 0%{?fedora_version} >= 24 Recommends: python-gevent Recommends: python-numpy Recommends: python-pexpect Recommends: python-simplejson Recommends: python-tornado Suggests: python-paramiko -%endif %python_subpackages %description @@ -77,20 +77,21 @@ the ZeroMQ library (http://www.zeromq.org). %package devel Summary: Development files for %{name} Requires: %{name} = %{version} -Requires: python-base Requires: python-devel Requires: zeromq-devel +Requires: %plainpython(abi) = %{python_version} %description devel Development libraries and headers needed to build software using %{name}. %prep %autosetup -n pyzmq-%{version} -p1 +cp %{SOURCE1} ./ # Fix non-executable script rpmlint warning: find examples zmq -name "*.py" -exec sed -i "s|#\!\/usr\/bin\/env python||" {} \; +chmod -x examples/pubsub/topics_pub.py examples/pubsub/topics_sub.py -%build # See https://github.com/zeromq/pyzmq/blob/master/setup.cfg.template echo ' [global] @@ -98,6 +99,8 @@ skip_check_zmq = False zmq_prefix = %{_prefix} no_libzmq_extension = True '>> setup.cfg + +%build export CFLAGS="%{optflags}" %python_build @@ -115,7 +118,7 @@ SKIPPED_TESTS+=" or test_cython" SKIPPED_TESTS+=" or test_log" %if 0%{?suse_version} < 1550 # tries to open a network connection on older distributions -SKIPPED_TESTS+=" or test_null" +SKIPPED_TESTS+=" or test_null or test_int_sockopts" %endif mkdir cleantest pushd cleantest diff --git a/pyzmq-22.3.0.tar.gz b/pyzmq-22.3.0.tar.gz deleted file mode 100644 index 4877459..0000000 --- a/pyzmq-22.3.0.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:8eddc033e716f8c91c6a2112f0a8ebc5e00532b4a6ae1eb0ccc48e027f9c671c -size 1243520 diff --git a/pyzmq-23.2.0.tar.gz b/pyzmq-23.2.0.tar.gz new file mode 100644 index 0000000..df70942 --- /dev/null +++ b/pyzmq-23.2.0.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a51f12a8719aad9dcfb55d456022f16b90abc8dde7d3ca93ce3120b40e3fa169 +size 1216729