diff --git a/fix-no-return-in-nonvoid-function.patch b/fix-no-return-in-nonvoid-function.patch index 95c0833..9db3207 100644 --- a/fix-no-return-in-nonvoid-function.patch +++ b/fix-no-return-in-nonvoid-function.patch @@ -1,8 +1,8 @@ -Index: b/deps/libev/ev_iouring.c +Index: gevent-21.1.2/deps/libev/ev_iouring.c =================================================================== ---- a/deps/libev/ev_iouring.c -+++ b/deps/libev/ev_iouring.c -@@ -213,6 +213,9 @@ iouring_sqe_get (EV_P) +--- gevent-21.1.2.orig/deps/libev/ev_iouring.c ++++ gevent-21.1.2/deps/libev/ev_iouring.c +@@ -286,6 +286,9 @@ iouring_sqe_get (EV_P) return EV_SQES + (tail & EV_SQ_VAR (ring_mask)); } @@ -12,8 +12,8 @@ Index: b/deps/libev/ev_iouring.c inline_size struct io_uring_sqe * iouring_sqe_submit (EV_P_ struct io_uring_sqe *sqe) -@@ -260,6 +263,8 @@ iouring_internal_destroy (EV_P) - if (ev_is_active (&iouring_tfd_w )) ev_ref (EV_A); ev_io_stop (EV_A_ &iouring_tfd_w ); +@@ -330,6 +333,8 @@ iouring_internal_destroy (EV_P) + } } +#pragma GCC diagnostic pop diff --git a/gevent-20.9.0.tar.gz b/gevent-20.9.0.tar.gz deleted file mode 100644 index 782e1b6..0000000 --- a/gevent-20.9.0.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:a43d6b8335eae4d1ebb3f9585bcb78c397c6f1f141eb2449838167cbb4a40ee3 -size 4237730 diff --git a/gevent-21.1.2.tar.gz b/gevent-21.1.2.tar.gz new file mode 100644 index 0000000..90b763d --- /dev/null +++ b/gevent-21.1.2.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1fc6579fee04c0bc348cb1dcbc10f822129e6af7dcf2c52c24f1497cea3bd45c +size 4296331 diff --git a/python-gevent.changes b/python-gevent.changes index 32d203f..e774192 100644 --- a/python-gevent.changes +++ b/python-gevent.changes @@ -1,3 +1,103 @@ +------------------------------------------------------------------- +Fri Feb 12 10:18:37 UTC 2021 - Pedro Monreal + +- Relax the crypto policies for the test-suite + +------------------------------------------------------------------- +Fri Feb 12 10:10:53 UTC 2021 - Pedro Monreal + +- Update to 21.1.2: + * Features: + - Update the embedded libev from 4.31 to 4.33. + - Update the embedded libuv from 1.38.0 to 1.40.0. +- Update to 21.1.1: + * Bugfixes: + - Fix a TypeError on startup on Python 2 with zope.schema + installed. +- Update to 21.1.0: + * Bugfixes: + - Make gevent FileObjects more closely match the semantics of + native file objects for the name attribute.: Objects opened + from a file descriptor integer have that integer as their + name. (Note that this is the Python 3 semantics; Python 2 + native file objects returned from os.fdopen() have the string + "" as their name , but here gevent always follows + Python 3.) The name remains accessible after the file object + is closed. + * Misc: + - Make gevent.event.AsyncResult print a warning when it detects + improper cross-thread usage instead of hanging. + - AsyncResult has never been safe to use from multiple threads. + It, like most gevent objects, is intended to work with greenlets + from a single thread. Using AsyncResult from multiple threads + has undefined semantics. The safest way to communicate between + threads is using an event loop async watcher. + - Those undefined semantics changed in recent gevent versions, + making it more likely that an abused AsyncResult would + misbehave in ways that could cause the program to hang. + - Now, when AsyncResult detects a situation that would hang, it + prints a warning to stderr. Note that this is best-effort, and + hangs are still possible, especially under PyPy 7.3.3. + - At the same time, AsyncResult is tuned to behave more like it + did in older versions, meaning that the hang is once again much + less likely. If you were getting lucky and using AsyncResult + successfully across threads, this may restore your luck. In + addition, cross-thread wakeups are faster. Note that the gevent + hub now uses an extra file descriptor to implement this. + - Similar changes apply to gevent.event.Event +- Update to 20.12.1: + * Features: + - Make :class:`gevent.Greenlet` objects function as context + managers. When the with suite finishes, execution doesn't + continue until the greenlet is finished. This can be a simpler + alternative to a :class:`gevent.pool.Group` when the lifetime + of greenlets can be lexically scoped. + * Bugfixes: + - Make gevent's Semaphore objects properly handle native thread + identifiers larger than can be stored in a C long on Python 3, + instead of raising an OverflowError. +- Rebase fix-no-return-in-nonvoid-function.patch + +------------------------------------------------------------------- +Tue Feb 9 21:32:04 UTC 2021 - Dirk Müller + +- update to 20.12.0: + * Make worker threads created by :class:`gevent.threadpool.ThreadPool` install + the :func:`threading.setprofile` and :func:`threading.settrace` hooks + while tasks are running. This provides visibility to profiling and + tracing tools like yappi. + * Incorrectly passing an exception *instance* instead of an exception + *type* to `gevent.Greenlet.kill` or `gevent.killall` no longer prints + an exception to stderr. + * Make destroying a hub try harder to more forcibly stop loop processing + when there are outstanding callbacks or IO operations scheduled. + * Improve the ability to use monkey-patched locks, and + `gevent.lock.BoundedSemaphore`, across threads, especially when the + various threads might not have a gevent hub or any other active + greenlets. In particular, this handles some cases that previously + raised ``LoopExit`` or would hang. Note that this may not be reliable + on PyPy on Windows; such an environment is not currently recommended. + * Make error reporting when a greenlet suffers a `RecursionError` more + reliable. + * gevent.pywsgi: Avoid printing an extra traceback ("TypeError: not + enough arguments for format string") to standard error on certain + invalid client requests. + * Add support for PyPy2 7.3.3. + * Python 2: Make ``gevent.subprocess.Popen.stdin`` objects have a + ``write`` method that guarantees to write the entire argument in + binary, unbuffered mode. This may require multiple trips around the + event loop, but more closely matches the behaviour of the Python 2 + standard library (and gevent prior to 1.5). The number of bytes + written is still returned (instead of ``None``). + See :issue:`1711`. + * Make `gevent.pywsgi` stop trying to enforce the rules for reading chunked input or + ``Content-Length`` terminated input when the connection is being + upgraded, for example to a websocket connection. Likewise, if the + protocol was switched by returning a ``101`` status, stop trying to + automatically chunk the responses. + * Remove the ``__dict__`` attribute from `gevent.socket.socket` objects. The + standard library socket do not have a ``__dict__``. + ------------------------------------------------------------------- Fri Dec 11 23:52:16 UTC 2020 - Matej Cepl diff --git a/python-gevent.spec b/python-gevent.spec index 4939baf..07b7738 100644 --- a/python-gevent.spec +++ b/python-gevent.spec @@ -1,7 +1,7 @@ # # spec file for package python-gevent # -# Copyright (c) 2020 SUSE LLC +# Copyright (c) 2021 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -24,10 +24,10 @@ %endif %{?!python_module:%define python_module() python-%{**} python3-%{**}} -%define modversion 20.9.0 +%define modversion 21.1.2 %define modname gevent Name: python-gevent -Version: 20.9.0 +Version: 21.1.2 Release: 0 Summary: Python network library that uses greenlet and libevent License: MIT @@ -147,6 +147,9 @@ export TRAVIS=1 # for Appveyor that we also need in obs for "wait_threads() failed to cleanup 1 threads" export APPVEYOR=1 export LANG=en_US.UTF-8 +# Relax the crypto policies for the test-suite +export OPENSSL_SYSTEM_CIPHERS_OVERRIDE=xyz_nonexistent_file +export OPENSSL_CONF='' # don't bother with python2 tests %{python_expand if [ "$python" != "python2" ]; then PYTHONPATH=%{buildroot}%{$python_sitearch} $python -m gevent.tests --ignore network_tests.txt