Compare commits
30 commits
| Author | SHA1 | Date | |
|---|---|---|---|
| fdec20e3ec | |||
|
|
9776b812b1 | ||
|
|
ca4069738b | ||
|
|
b46368e094 | ||
| 8bacc1b4ca | |||
|
|
29687cb716 | ||
|
|
cdda167e27 | ||
| b4a904db8d | |||
|
|
68f41e8917 | ||
|
|
d1d2833eb9 | ||
|
|
a5bd047a99 | ||
|
|
06c90b3a90 | ||
|
|
a10bffa1db | ||
|
|
b9b30dac33 | ||
|
|
25d0d2fcf6 | ||
|
|
e7ce3959d9 | ||
|
|
8e0113b937 | ||
|
|
b23d186d0f | ||
|
|
fe180eb9e7 | ||
|
|
2061eebcdb | ||
|
|
2ddfb8eb10 | ||
|
|
b7f0a326ef | ||
|
|
9e372d44b3 | ||
|
|
1a0d0d0852 | ||
|
|
105fb59789 | ||
|
|
609d2e91be | ||
|
|
3d835c996d | ||
|
|
e14374a2e5 | ||
|
|
26ea9cf11c | ||
|
|
325397682d |
4 changed files with 34 additions and 524 deletions
9
.gitignore
vendored
9
.gitignore
vendored
|
|
@ -26,3 +26,12 @@ gevent-0.13.0.tar.gz
|
||||||
/gevent-20.9.0.tar.gz
|
/gevent-20.9.0.tar.gz
|
||||||
/gevent-21.1.2.tar.gz
|
/gevent-21.1.2.tar.gz
|
||||||
/gevent-21.12.0.tar.gz
|
/gevent-21.12.0.tar.gz
|
||||||
|
/gevent-22.10.2.tar.gz
|
||||||
|
/gevent-23.7.0.tar.gz
|
||||||
|
/gevent-23.9.1.tar.gz
|
||||||
|
/gevent-24.2.1.tar.gz
|
||||||
|
/gevent-24.10.1.tar.gz
|
||||||
|
/gevent-24.10.2.tar.gz
|
||||||
|
/gevent-24.11.1.tar.gz
|
||||||
|
/gevent-25.9.1.tar.gz
|
||||||
|
/gevent-26.7.0.tar.gz
|
||||||
|
|
|
||||||
|
|
@ -1,267 +0,0 @@
|
||||||
From af14567992dfc709a6732ec8830e6840cb83f609 Mon Sep 17 00:00:00 2001
|
|
||||||
From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= <miro@hroncok.cz>
|
|
||||||
Date: Wed, 8 Jun 2022 15:09:35 +0200
|
|
||||||
Subject: [PATCH 1/3] Update greenlet for Python 3.11
|
|
||||||
|
|
||||||
From https://github.com/python-greenlet/greenlet/pull/306
|
|
||||||
|
|
||||||
Co-Authored-By: Victor Stinner <vstinner@python.org>
|
|
||||||
---
|
|
||||||
deps/greenlet/greenlet.h | 17 ++++++++++++++++-
|
|
||||||
1 file changed, 16 insertions(+), 1 deletion(-)
|
|
||||||
|
|
||||||
diff --git a/deps/greenlet/greenlet.h b/deps/greenlet/greenlet.h
|
|
||||||
index 830bef8dd..4a26ace78 100644
|
|
||||||
--- a/deps/greenlet/greenlet.h
|
|
||||||
+++ b/deps/greenlet/greenlet.h
|
|
||||||
@@ -14,6 +14,15 @@ extern "C" {
|
|
||||||
/* This is deprecated and undocumented. It does not change. */
|
|
||||||
#define GREENLET_VERSION "1.0.0"
|
|
||||||
|
|
||||||
+#if PY_VERSION_HEX >= 0x30B00A6
|
|
||||||
+# define GREENLET_PY311 1
|
|
||||||
+/* We need this for _PyInterpreterFrame apparently */
|
|
||||||
+#include <internal/pycore_frame.h>
|
|
||||||
+#else
|
|
||||||
+#define GREENLET_PY311 0
|
|
||||||
+#define _PyCFrame CFrame
|
|
||||||
+#endif
|
|
||||||
+
|
|
||||||
typedef struct _greenlet {
|
|
||||||
PyObject_HEAD
|
|
||||||
char* stack_start;
|
|
||||||
@@ -25,6 +34,12 @@ typedef struct _greenlet {
|
|
||||||
PyObject* run_info;
|
|
||||||
struct _frame* top_frame;
|
|
||||||
int recursion_depth;
|
|
||||||
+#if GREENLET_PY311
|
|
||||||
+ _PyInterpreterFrame *current_frame;
|
|
||||||
+ _PyStackChunk *datastack_chunk;
|
|
||||||
+ PyObject **datastack_top;
|
|
||||||
+ PyObject **datastack_limit;
|
|
||||||
+#endif
|
|
||||||
PyObject* weakreflist;
|
|
||||||
#if PY_VERSION_HEX >= 0x030700A3
|
|
||||||
_PyErr_StackItem* exc_info;
|
|
||||||
@@ -39,7 +54,7 @@ typedef struct _greenlet {
|
|
||||||
PyObject* context;
|
|
||||||
#endif
|
|
||||||
#if PY_VERSION_HEX >= 0x30A00B1
|
|
||||||
- CFrame* cframe;
|
|
||||||
+ _PyCFrame* cframe;
|
|
||||||
#endif
|
|
||||||
} PyGreenlet;
|
|
||||||
|
|
||||||
|
|
||||||
From 4c3c5842bfb2982bf8560821db723b354eeede66 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Victor Stinner <vstinner@python.org>
|
|
||||||
Date: Tue, 1 Mar 2022 22:28:40 +0100
|
|
||||||
Subject: [PATCH 2/3] Add Python 3.11 beta 3 support
|
|
||||||
|
|
||||||
Co-Authored-By: Petr Viktorin <encukou@gmail.com>
|
|
||||||
---
|
|
||||||
_setuputils.py | 3 ++
|
|
||||||
src/gevent/_gevent_cgreenlet.pxd | 47 ++++++++++++++++++++------------
|
|
||||||
src/gevent/greenlet.py | 3 +-
|
|
||||||
3 files changed, 35 insertions(+), 18 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/_setuputils.py b/_setuputils.py
|
|
||||||
index 7257b3eea..62748571e 100644
|
|
||||||
--- a/_setuputils.py
|
|
||||||
+++ b/_setuputils.py
|
|
||||||
@@ -244,6 +244,9 @@ def cythonize1(ext):
|
|
||||||
'infer_types': True,
|
|
||||||
'nonecheck': False,
|
|
||||||
},
|
|
||||||
+ compile_time_env={
|
|
||||||
+ 'PY39B1': sys.hexversion >= 0x030900B1,
|
|
||||||
+ },
|
|
||||||
# The common_utility_include_dir (not well documented)
|
|
||||||
# causes Cython to emit separate files for much of the
|
|
||||||
# static support code. Each of the modules then includes
|
|
||||||
diff --git a/src/gevent/_gevent_cgreenlet.pxd b/src/gevent/_gevent_cgreenlet.pxd
|
|
||||||
index cbb81a638..06ca25e5c 100644
|
|
||||||
--- a/src/gevent/_gevent_cgreenlet.pxd
|
|
||||||
+++ b/src/gevent/_gevent_cgreenlet.pxd
|
|
||||||
@@ -52,35 +52,48 @@ cdef inline void greenlet_init():
|
|
||||||
PyGreenlet_Import()
|
|
||||||
_greenlet_imported = True
|
|
||||||
|
|
||||||
-cdef extern from "Python.h":
|
|
||||||
+ctypedef object CodeType
|
|
||||||
|
|
||||||
- ctypedef class types.CodeType [object PyCodeObject]:
|
|
||||||
- pass
|
|
||||||
+IF PY39B1:
|
|
||||||
+ ctypedef object FrameType
|
|
||||||
|
|
||||||
-cdef extern from "frameobject.h":
|
|
||||||
+ cdef extern from "Python.h":
|
|
||||||
+ CodeType PyFrame_GetCode(FrameType frame)
|
|
||||||
+ void* PyFrame_GetBack(FrameType frame)
|
|
||||||
+
|
|
||||||
+ELSE:
|
|
||||||
+ cdef extern from "frameobject.h":
|
|
||||||
+ ctypedef class types.FrameType [object PyFrameObject]:
|
|
||||||
+ # We don't have PyFrame_GetCode, need to use the pointer directly
|
|
||||||
+ cdef CodeType f_code
|
|
||||||
|
|
||||||
- ctypedef class types.FrameType [object PyFrameObject]:
|
|
||||||
- cdef CodeType f_code
|
|
||||||
- # Accessing the f_lineno directly doesn't work. There is an accessor
|
|
||||||
- # function, PyFrame_GetLineNumber that is needed to turn the raw line number
|
|
||||||
- # into the executing line number.
|
|
||||||
- # cdef int f_lineno
|
|
||||||
- # We can't declare this in the object as an object, because it's
|
|
||||||
- # allowed to be NULL, and Cython can't handle that.
|
|
||||||
- # We have to go through the python machinery to get a
|
|
||||||
- # proper None instead, or use an inline function.
|
|
||||||
- cdef void* f_back
|
|
||||||
+ # We can't declare this in the object as an object, because it's
|
|
||||||
+ # allowed to be NULL, and Cython can't handle that.
|
|
||||||
+ # We have to go through the python machinery to get a
|
|
||||||
+ # proper None instead, or use a function.
|
|
||||||
+ cdef void* f_back
|
|
||||||
|
|
||||||
+cdef extern from "frameobject.h":
|
|
||||||
int PyFrame_GetLineNumber(FrameType frame)
|
|
||||||
|
|
||||||
@cython.nonecheck(False)
|
|
||||||
cdef inline FrameType get_f_back(FrameType frame):
|
|
||||||
- if frame.f_back != NULL:
|
|
||||||
- return <FrameType>frame.f_back
|
|
||||||
+ IF PY39B1:
|
|
||||||
+ f_back = PyFrame_GetBack(frame)
|
|
||||||
+ ELSE:
|
|
||||||
+ f_back = frame.f_back
|
|
||||||
+ if f_back != NULL:
|
|
||||||
+ return <FrameType>f_back
|
|
||||||
|
|
||||||
cdef inline int get_f_lineno(FrameType frame):
|
|
||||||
return PyFrame_GetLineNumber(frame)
|
|
||||||
|
|
||||||
+cdef inline CodeType get_f_code(FrameType frame):
|
|
||||||
+ IF PY39B1:
|
|
||||||
+ return PyFrame_GetCode(frame)
|
|
||||||
+ ELSE:
|
|
||||||
+ return frame.f_code
|
|
||||||
+
|
|
||||||
cdef void _init()
|
|
||||||
|
|
||||||
cdef class SpawnedLink:
|
|
||||||
diff --git a/src/gevent/greenlet.py b/src/gevent/greenlet.py
|
|
||||||
index bed12ed44..612a8fd3a 100644
|
|
||||||
--- a/src/gevent/greenlet.py
|
|
||||||
+++ b/src/gevent/greenlet.py
|
|
||||||
@@ -58,6 +58,7 @@
|
|
||||||
# Frame access
|
|
||||||
locals()['get_f_back'] = lambda frame: frame.f_back
|
|
||||||
locals()['get_f_lineno'] = lambda frame: frame.f_lineno
|
|
||||||
+locals()['get_f_code'] = lambda frame: frame.f_code
|
|
||||||
|
|
||||||
if _PYPY:
|
|
||||||
import _continuation # pylint:disable=import-error
|
|
||||||
@@ -157,7 +158,7 @@ def _extract_stack(limit):
|
|
||||||
# Arguments are always passed to the constructor as Python objects,
|
|
||||||
# meaning we wind up boxing the f_lineno just to unbox it if we pass it.
|
|
||||||
# It's faster to simply assign once the object is created.
|
|
||||||
- older_Frame.f_code = frame.f_code
|
|
||||||
+ older_Frame.f_code = get_f_code(frame)
|
|
||||||
older_Frame.f_lineno = get_f_lineno(frame) # pylint:disable=undefined-variable
|
|
||||||
if newer_Frame is not None:
|
|
||||||
newer_Frame.f_back = older_Frame
|
|
||||||
|
|
||||||
From 70ad874dc8d17da81b356d02b9772bee68898f1c Mon Sep 17 00:00:00 2001
|
|
||||||
From: Petr Viktorin <encukou@gmail.com>
|
|
||||||
Date: Wed, 8 Jun 2022 15:08:45 +0200
|
|
||||||
Subject: [PATCH 3/3] Amend tests for Python 3.11: No more U file mode, no more
|
|
||||||
inspect.getargspec()
|
|
||||||
|
|
||||||
---
|
|
||||||
src/gevent/testing/testcase.py | 15 ++++++++++-----
|
|
||||||
src/gevent/tests/test__fileobject.py | 16 +++++++++++++---
|
|
||||||
2 files changed, 23 insertions(+), 8 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/src/gevent/testing/testcase.py b/src/gevent/testing/testcase.py
|
|
||||||
index cd5db8033..e3a9775fc 100644
|
|
||||||
--- a/src/gevent/testing/testcase.py
|
|
||||||
+++ b/src/gevent/testing/testcase.py
|
|
||||||
@@ -383,6 +383,7 @@ def assert_error(self, kind=None, value=None, error=None, where_type=None):
|
|
||||||
return error
|
|
||||||
|
|
||||||
def assertMonkeyPatchedFuncSignatures(self, mod_name, func_names=(), exclude=()):
|
|
||||||
+ # If inspect.getfullargspec is not available,
|
|
||||||
# We use inspect.getargspec because it's the only thing available
|
|
||||||
# in Python 2.7, but it is deprecated
|
|
||||||
# pylint:disable=deprecated-method,too-many-locals
|
|
||||||
@@ -409,9 +410,13 @@ def assertMonkeyPatchedFuncSignatures(self, mod_name, func_names=(), exclude=())
|
|
||||||
|
|
||||||
try:
|
|
||||||
with warnings.catch_warnings():
|
|
||||||
- warnings.simplefilter("ignore")
|
|
||||||
- gevent_sig = inspect.getargspec(gevent_func)
|
|
||||||
- sig = inspect.getargspec(func)
|
|
||||||
+ try:
|
|
||||||
+ getfullargspec = inspect.getfullargspec
|
|
||||||
+ except AttributeError:
|
|
||||||
+ warnings.simplefilter("ignore")
|
|
||||||
+ getfullargspec = inspect.getargspec
|
|
||||||
+ gevent_sig = getfullargspec(gevent_func)
|
|
||||||
+ sig = getfullargspec(func)
|
|
||||||
except TypeError:
|
|
||||||
if funcs_given:
|
|
||||||
raise
|
|
||||||
@@ -420,10 +425,10 @@ def assertMonkeyPatchedFuncSignatures(self, mod_name, func_names=(), exclude=())
|
|
||||||
# Python 3 can check a lot more than Python 2 can.
|
|
||||||
continue
|
|
||||||
self.assertEqual(sig.args, gevent_sig.args, func_name)
|
|
||||||
- # The next three might not actually matter?
|
|
||||||
+ # The next two might not actually matter?
|
|
||||||
self.assertEqual(sig.varargs, gevent_sig.varargs, func_name)
|
|
||||||
- self.assertEqual(sig.keywords, gevent_sig.keywords, func_name)
|
|
||||||
self.assertEqual(sig.defaults, gevent_sig.defaults, func_name)
|
|
||||||
+ # Should deal with others: https://docs.python.org/3/library/inspect.html#inspect.getfullargspec
|
|
||||||
|
|
||||||
def assertEqualFlakyRaceCondition(self, a, b):
|
|
||||||
try:
|
|
||||||
diff --git a/src/gevent/tests/test__fileobject.py b/src/gevent/tests/test__fileobject.py
|
|
||||||
index afe8d7479..1f4e664a0 100644
|
|
||||||
--- a/src/gevent/tests/test__fileobject.py
|
|
||||||
+++ b/src/gevent/tests/test__fileobject.py
|
|
||||||
@@ -200,6 +200,8 @@ def test_does_not_leak_on_exception(self):
|
|
||||||
|
|
||||||
@skipUnlessWorksWithRegularFiles
|
|
||||||
def test_rbU_produces_bytes_readline(self):
|
|
||||||
+ if sys.version_info > (3, 11):
|
|
||||||
+ self.skipTest("U file mode was removed in 3.11")
|
|
||||||
# Including U in rb still produces bytes.
|
|
||||||
# Note that the universal newline behaviour is
|
|
||||||
# essentially ignored in explicit bytes mode.
|
|
||||||
@@ -213,6 +215,8 @@ def test_rbU_produces_bytes_readline(self):
|
|
||||||
|
|
||||||
@skipUnlessWorksWithRegularFiles
|
|
||||||
def test_rU_produces_native(self):
|
|
||||||
+ if sys.version_info > (3, 11):
|
|
||||||
+ self.skipTest("U file mode was removed in 3.11")
|
|
||||||
gevent_data = self.__check_native_matches(
|
|
||||||
b'line1\nline2\r\nline3\rlastline\n\n',
|
|
||||||
'rU',
|
|
||||||
@@ -362,9 +366,15 @@ def test_newlines(self):
|
|
||||||
|
|
||||||
try:
|
|
||||||
with warnings.catch_warnings():
|
|
||||||
- warnings.simplefilter('ignore', DeprecationWarning)
|
|
||||||
- # U is deprecated in Python 3, shows up on FileObjectThread
|
|
||||||
- fobj = self._makeOne(r, 'rU')
|
|
||||||
+ if sys.version_info > (3, 11):
|
|
||||||
+ # U is removed in Python 3.11
|
|
||||||
+ mode = 'r'
|
|
||||||
+ self.skipTest("U file mode was removed in 3.11")
|
|
||||||
+ else:
|
|
||||||
+ # U is deprecated in Python 3, shows up on FileObjectThread
|
|
||||||
+ warnings.simplefilter('ignore', DeprecationWarning)
|
|
||||||
+ mode = 'rU'
|
|
||||||
+ fobj = self._makeOne(r, mode)
|
|
||||||
result = fobj.read()
|
|
||||||
fobj.close()
|
|
||||||
self.assertEqual('line1\nline2\nline3\nline4\nline5\nline6', result)
|
|
||||||
|
|
@ -3,27 +3,20 @@
|
||||||
%global optflags %(echo %{optflags} -I%{_includedir}/libev)
|
%global optflags %(echo %{optflags} -I%{_includedir}/libev)
|
||||||
|
|
||||||
Name: python-%{modname}
|
Name: python-%{modname}
|
||||||
Version: 21.12.0
|
Version: 26.7.0
|
||||||
Release: 4%{?dist}
|
Release: %autorelease
|
||||||
Summary: A coroutine-based Python networking library
|
Summary: A coroutine-based Python networking library
|
||||||
|
|
||||||
License: MIT
|
License: MIT
|
||||||
URL: http://www.gevent.org/
|
URL: http://www.gevent.org/
|
||||||
Source0: %{pypi_source %{modname} %{version} tar.gz}
|
Source0: %{pypi_source %{modname} %{version} tar.gz}
|
||||||
|
|
||||||
# Support Python 3.11
|
|
||||||
# Discussion in https://github.com/gevent/gevent/pull/1872.patch
|
|
||||||
Patch: https://github.com/gevent/gevent/compare/master...hroncok:py311b3.patch
|
|
||||||
|
|
||||||
BuildRequires: gcc
|
BuildRequires: gcc
|
||||||
BuildRequires: c-ares-devel
|
BuildRequires: c-ares-devel
|
||||||
BuildRequires: libev-devel
|
BuildRequires: libev-devel
|
||||||
BuildRequires: libuv-devel
|
BuildRequires: libuv-devel
|
||||||
|
|
||||||
%description
|
%description
|
||||||
gevent is a coroutine-based Python networking library that uses greenlet to
|
gevent is a coroutine-based Python networking library that uses greenlet to
|
||||||
provide a high-level synchronous API on top of libevent event loop.
|
provide a high-level synchronous API on top of libevent event loop.
|
||||||
|
|
||||||
Features include:
|
Features include:
|
||||||
|
|
||||||
* convenient API around greenlets
|
* convenient API around greenlets
|
||||||
|
|
@ -35,21 +28,12 @@ Features include:
|
||||||
|
|
||||||
%package -n python3-%{modname}
|
%package -n python3-%{modname}
|
||||||
Summary: %{summary}
|
Summary: %{summary}
|
||||||
%{?python_provide:%python_provide python3-%{modname}}
|
|
||||||
BuildRequires: python3-devel
|
BuildRequires: python3-devel
|
||||||
BuildRequires: python3-Cython
|
BuildRequires: python3-greenlet-devel >= 3.2.2
|
||||||
BuildRequires: python3-greenlet-devel >= 1.1.0
|
|
||||||
BuildRequires: python3-setuptools
|
|
||||||
# For tests
|
|
||||||
BuildRequires: python3-dns
|
|
||||||
BuildRequires: python3-psutil
|
|
||||||
BuildRequires: python3-zope-event
|
BuildRequires: python3-zope-event
|
||||||
BuildRequires: python3-zope-interface
|
|
||||||
|
|
||||||
%description -n python3-%{modname}
|
%description -n python3-%{modname}
|
||||||
gevent is a coroutine-based Python networking library that uses greenlet to
|
gevent is a coroutine-based Python networking library that uses greenlet to
|
||||||
provide a high-level synchronous API on top of libevent event loop.
|
provide a high-level synchronous API on top of libevent event loop.
|
||||||
|
|
||||||
Features include:
|
Features include:
|
||||||
|
|
||||||
* convenient API around greenlets
|
* convenient API around greenlets
|
||||||
|
|
@ -59,264 +43,48 @@ Features include:
|
||||||
* DNS requests done through libevent-dns
|
* DNS requests done through libevent-dns
|
||||||
* monkey patching utility to get pure Python modules to cooperate
|
* monkey patching utility to get pure Python modules to cooperate
|
||||||
|
|
||||||
Python 3 version.
|
|
||||||
|
|
||||||
%prep
|
%prep
|
||||||
%autosetup -p1 -n %{modname}-%{version}
|
%autosetup -n %{modname}-%{version}
|
||||||
# Remove bundled libraries
|
# Remove bundled libraries
|
||||||
rm -r deps
|
rm -r deps
|
||||||
# Upstream intentionally includes C extension sources in the built package,
|
# Upstream intentionally includes C extension sources in the built package,
|
||||||
# because... reasons (PyPy I think?) however we do not want that. Sources will
|
# because... reasons (PyPy I think?) however we do not want that. Sources will
|
||||||
# go into debuginfo as normal.
|
# go into debuginfo as normal.
|
||||||
sed -i -e 's/include_package_data=True/include_package_data=False/' setup.py
|
sed -i -e 's/include_package_data=True/include_package_data=False/' setup.py
|
||||||
|
# No linters
|
||||||
|
sed -i -e '/coverage/d' -e '/objgraph/d' setup.py
|
||||||
|
|
||||||
# Force re-cythonizing the sources
|
# Force re-cythonizing the sources - missing with github tarballs
|
||||||
rm $(grep -rl '/\* Generated by Cython')
|
rm -f $(grep -rl '/\* Generated by Cython')
|
||||||
rm src/gevent/_generated_include/*
|
rm -f src/gevent/_generated_include/*
|
||||||
|
|
||||||
|
# Test requires network, fails in mock/koji
|
||||||
|
mv src/gevent/tests/test__resolver_dnspython.py{,.needsnetwork}
|
||||||
|
|
||||||
|
%generate_buildrequires
|
||||||
|
%pyproject_buildrequires -t
|
||||||
|
|
||||||
%build
|
%build
|
||||||
export GEVENTSETUP_EMBED=0
|
export GEVENTSETUP_EMBED=0
|
||||||
# Build Python 3 first to use Python 3 Cython
|
%pyproject_wheel
|
||||||
%py3_build
|
|
||||||
|
|
||||||
%install
|
%install
|
||||||
export GEVENTSETUP_EMBED=0
|
export GEVENTSETUP_EMBED=0
|
||||||
%py3_install
|
%pyproject_install
|
||||||
rm %{buildroot}%{python3_sitearch}/%{modname}/_*2.py
|
|
||||||
rm %{buildroot}%{python3_sitearch}/%{modname}/__pycache__/_*2.*
|
|
||||||
find %{buildroot} -name '.buildinfo' -delete
|
find %{buildroot} -name '.buildinfo' -delete
|
||||||
# Correct the permissions.
|
# Correct the permissions.
|
||||||
find %{buildroot} -name '*.so' -exec chmod 755 {} ';'
|
find %{buildroot} -name '*.so' -exec chmod 755 {} ';'
|
||||||
|
%pyproject_save_files -l %{modname}
|
||||||
|
|
||||||
%check
|
%check
|
||||||
|
%pyproject_check_import -t
|
||||||
export PYTHONPATH=%{buildroot}%{python3_sitearch}
|
export PYTHONPATH=%{buildroot}%{python3_sitearch}
|
||||||
%__python3 -m gevent.tests || :
|
# test_resolution is failing - https://github.com/gevent/gevent/issues/2064
|
||||||
cd src/gevent/tests && GEVENT_FILE=thread %__python3 -mgevent.tests test__*subprocess*.py
|
%{py3_test_envvars} %{python3} -m gevent.tests --verbose || :
|
||||||
|
cd src/gevent/tests && GEVENT_FILE=thread %{python3} -mgevent.tests test__*subprocess*.py
|
||||||
|
|
||||||
%files -n python3-%{modname}
|
%files -n python3-%{modname} -f %{pyproject_files}
|
||||||
%license LICENSE
|
|
||||||
%doc README.rst
|
%doc README.rst
|
||||||
%{python3_sitearch}/%{modname}*
|
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
* Fri Jul 22 2022 Fedora Release Engineering <releng@fedoraproject.org> - 21.12.0-4
|
%autochangelog
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
|
|
||||||
|
|
||||||
* Tue Jun 14 2022 Python Maint <python-maint@redhat.com> - 21.12.0-3
|
|
||||||
- Rebuilt for Python 3.11
|
|
||||||
|
|
||||||
* Wed Jun 01 2022 Miro Hrončok <mhroncok@redhat.com> - 21.12.0-2
|
|
||||||
- Support Python 3.11
|
|
||||||
|
|
||||||
* Sun Mar 06 2022 Orion Poplawski <orion@nwra.com> - 21.12.0-1
|
|
||||||
- Update to 21.12.0
|
|
||||||
|
|
||||||
* Fri Jan 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 21.1.2-4
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
|
|
||||||
|
|
||||||
* Fri Jul 23 2021 Fedora Release Engineering <releng@fedoraproject.org> - 21.1.2-3
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
|
|
||||||
|
|
||||||
* Fri Jun 04 2021 Python Maint <python-maint@redhat.com> - 21.1.2-2
|
|
||||||
- Rebuilt for Python 3.10
|
|
||||||
|
|
||||||
* Mon Apr 26 2021 Dan Callaghan <djc@djc.id.au> - 21.1.2-1
|
|
||||||
- new upstream bug fix release 21.1.2
|
|
||||||
|
|
||||||
* Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 20.9.0-2
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
|
|
||||||
|
|
||||||
* Mon Nov 16 2020 Fabien Boucher <fboucher@redhat.com> - 20.9.0-1
|
|
||||||
- new upstream release 20.9.0
|
|
||||||
|
|
||||||
* Mon Oct 05 2020 Orion Poplawski <orion@nwra.com> - 20.6.1-3
|
|
||||||
- BR python3-setuptools
|
|
||||||
|
|
||||||
* Wed Jul 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 20.6.1-2
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
|
|
||||||
|
|
||||||
* Sat Jun 13 2020 Dan Callaghan <djc@djc.id.au> - 20.6.1-1
|
|
||||||
- new upstream release 20.6.1
|
|
||||||
|
|
||||||
* Sat Jun 06 2020 Orion Poplawski <orion@nwra.com> - 20.6.0-1
|
|
||||||
- Update to 20.6.0 (bz#1840109)
|
|
||||||
- Resolve Python 3.9 issue (bz#1838696)
|
|
||||||
- Only remove Cython generated .c files
|
|
||||||
- Add BR on libuv-devel
|
|
||||||
- Use updated build variables
|
|
||||||
- Run tests, but do not fail on them for now
|
|
||||||
|
|
||||||
* Sun May 24 2020 Miro Hrončok <mhroncok@redhat.com> - 20.5.0-2
|
|
||||||
- Rebuilt for Python 3.9
|
|
||||||
|
|
||||||
* Sun May 17 2020 Dan Callaghan <djc@djc.id.au> - 20.5.0-1
|
|
||||||
- new upstream release 20.5.0:
|
|
||||||
https://github.com/gevent/gevent/blob/20.5.0/CHANGES.rst
|
|
||||||
|
|
||||||
* Thu Jan 30 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.5-0.2.a3
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
|
|
||||||
|
|
||||||
* Wed Jan 08 2020 Robert-André Mauchin <zebob.m@gmail.com> - 1.5-0.1.a3
|
|
||||||
- Update to 1.5a3 (#1705661)
|
|
||||||
|
|
||||||
* Thu Oct 03 2019 Miro Hrončok <mhroncok@redhat.com> - 1.3.6-7
|
|
||||||
- Rebuilt for Python 3.8.0rc1 (#1748018)
|
|
||||||
|
|
||||||
* Sat Aug 17 2019 Miro Hrončok <mhroncok@redhat.com> - 1.3.6-6
|
|
||||||
- Rebuilt for Python 3.8
|
|
||||||
|
|
||||||
* Mon Aug 12 2019 Miro Hrončok <mhroncok@redhat.com> - 1.3.6-5
|
|
||||||
- Subpackage python2-gevent has been removed
|
|
||||||
See https://fedoraproject.org/wiki/Changes/Mass_Python_2_Package_Removal
|
|
||||||
|
|
||||||
* Fri Jul 26 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.3.6-4
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
|
|
||||||
|
|
||||||
* Tue Jun 11 2019 Victor Stinner <vstinner@redhat.com> - 1.3.6-3
|
|
||||||
- Add Python 3.8 support, backport upstream change to use CodeType.replace() if
|
|
||||||
available (rhbz#1716342)
|
|
||||||
|
|
||||||
* Sat Feb 02 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.3.6-2
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
|
|
||||||
|
|
||||||
* Mon Sep 17 2018 Dan Callaghan <dcallagh@redhat.com> - 1.3.6-1
|
|
||||||
- Upstream bug fix release 1.3.6: http://www.gevent.org/changelog.html
|
|
||||||
|
|
||||||
* Sat Jul 14 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.3.4-3
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
|
|
||||||
|
|
||||||
* Mon Jul 02 2018 Miro Hrončok <mhroncok@redhat.com> - 1.3.4-2
|
|
||||||
- Rebuilt for Python 3.7
|
|
||||||
|
|
||||||
* Tue Jun 26 2018 Dan Callaghan <dcallagh@redhat.com> - 1.3.4-1
|
|
||||||
- Update to 1.3.4 (RHBZ#1593266)
|
|
||||||
|
|
||||||
* Mon Jun 18 2018 Miro Hrončok <mhroncok@redhat.com> - 1.3.3-2
|
|
||||||
- Rebuilt for Python 3.7
|
|
||||||
|
|
||||||
* Wed Jun 13 2018 Dan Callaghan <dcallagh@redhat.com> - 1.3.3-1
|
|
||||||
- Update to 1.3.3 (RHBZ#1589102)
|
|
||||||
|
|
||||||
* Mon Jun 04 2018 Dan Callaghan <dcallagh@redhat.com> - 1.3.2-1
|
|
||||||
- Update to 1.3.2 (RHBZ#1583647)
|
|
||||||
|
|
||||||
* Tue May 29 2018 Dan Callaghan <dcallagh@redhat.com> - 1.3.1-1
|
|
||||||
- Update to 1.3.1 (RHBZ#1552352)
|
|
||||||
http://www.gevent.org/whatsnew_1_3.html
|
|
||||||
|
|
||||||
* Fri Feb 09 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.2.2-2
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
|
|
||||||
|
|
||||||
* Wed Aug 09 2017 Dan Callaghan <dcallagh@redhat.com> - 1.2.2-1
|
|
||||||
- Update to 1.2.2 (RHBZ#1389634)
|
|
||||||
|
|
||||||
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.1.2-5
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
|
|
||||||
|
|
||||||
* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.1.2-4
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
|
|
||||||
|
|
||||||
* Sat Feb 11 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.1.2-3
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
|
|
||||||
|
|
||||||
* Mon Dec 19 2016 Miro Hrončok <mhroncok@redhat.com> - 1.1.2-2
|
|
||||||
- Rebuild for Python 3.6
|
|
||||||
|
|
||||||
* Sun Jul 24 2016 Igor Gnatenko <ignatenko@redhat.com> - 1.1.2-1
|
|
||||||
- Update to 1.1.2 (RHBZ #1359455)
|
|
||||||
|
|
||||||
* Tue Jul 19 2016 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.1.1-2
|
|
||||||
- https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages
|
|
||||||
|
|
||||||
* Tue Apr 05 2016 Igor Gnatenko <ignatenko@redhat.com> - 1.1.1-1
|
|
||||||
- Update to 1.1.1 (RHBZ #1323855)
|
|
||||||
|
|
||||||
* Tue Mar 15 2016 Dan Callaghan <dcallagh@redhat.com> - 1.1.0-1
|
|
||||||
- Update to 1.1.0 final release
|
|
||||||
|
|
||||||
* Wed Feb 17 2016 Igor Gnatenko <i.gnatenko.brain@gmail.com> - 1.1-0.8.rc4
|
|
||||||
- Update to 1.1rc4 (RHBZ #1309141)
|
|
||||||
|
|
||||||
* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 1.1-0.7.rc3
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
|
|
||||||
|
|
||||||
* Wed Jan 20 2016 Dan Callaghan <dcallagh@redhat.com> - 1.1-0.6.rc3
|
|
||||||
- Update to 1.1rc3
|
|
||||||
|
|
||||||
* Tue Nov 10 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.1-0.5.b6
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Changes/python3.5
|
|
||||||
|
|
||||||
* Sat Oct 24 2015 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 1.1-0.4.b6
|
|
||||||
- Fix description in spec
|
|
||||||
|
|
||||||
* Sun Oct 18 2015 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 1.1-0.3.b6
|
|
||||||
- Update to 1.1b6 (RHBZ #1272717)
|
|
||||||
|
|
||||||
* Tue Oct 06 2015 Orion Poplawski <orion@cora.nwra.com> - 1.1-0.2.b5
|
|
||||||
- Drop use of unneeded %%{py3dir}
|
|
||||||
|
|
||||||
* Mon Oct 05 2015 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 1.1-0.1.b5
|
|
||||||
- Update to 1.1b5 (RHBZ #1244452)
|
|
||||||
- Add python3 support
|
|
||||||
- Follow modern RPM packaging guidelines
|
|
||||||
|
|
||||||
* Fri Jun 26 2015 Dan Callaghan <dcallagh@redhat.com> - 1.0.2-2
|
|
||||||
- removed version requirement for greenlet
|
|
||||||
|
|
||||||
* Mon Jun 22 2015 Dan Callaghan <dcallagh@redhat.com> - 1.0.2-1
|
|
||||||
- bug fix release 1.0.2:
|
|
||||||
https://github.com/gevent/gevent/blob/v1.0.2/changelog.rst#release-102-may-23-2015
|
|
||||||
|
|
||||||
* Thu Jun 18 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0.1-3
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
|
|
||||||
|
|
||||||
* Sun Aug 17 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0.1-2
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
|
|
||||||
|
|
||||||
* Fri Aug 15 2014 Orion Poplawski <orion@cora.nwra.com> - 1.0.1-1
|
|
||||||
- Update to 1.0.1
|
|
||||||
|
|
||||||
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0-2
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
|
|
||||||
|
|
||||||
* Wed Jan 22 2014 Orion Poplawski <orion@cora.nwra.com> - 1.0-1
|
|
||||||
- Update to 1.0
|
|
||||||
|
|
||||||
* Sun Aug 04 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.13.8-3
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
|
|
||||||
|
|
||||||
* Thu Feb 14 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.13.8-2
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
|
|
||||||
|
|
||||||
* Thu Dec 27 2012 Silas Sewell <silas@sewell.org> - 0.13.8-1
|
|
||||||
- Update to 0.13.8
|
|
||||||
|
|
||||||
* Sat Jul 21 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.13.6-3
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
|
|
||||||
|
|
||||||
* Sat Jan 14 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.13.6-2
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
|
|
||||||
|
|
||||||
* Sun Jul 24 2011 Silas Sewell <silas@sewell.org> - 0.13.6-1
|
|
||||||
- Update to 0.13.6
|
|
||||||
|
|
||||||
* Wed Feb 16 2011 Silas Sewell <silas@sewell.ch> - 0.13.3-1
|
|
||||||
- Update to 0.13.3
|
|
||||||
|
|
||||||
* Tue Feb 08 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.13.1-2
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
|
|
||||||
|
|
||||||
* Sat Oct 09 2010 Silas Sewell <silas@sewell.ch> - 0.13.1-1
|
|
||||||
- Update to 0.13.1
|
|
||||||
|
|
||||||
* Tue Jul 27 2010 David Malcolm <dmalcolm@redhat.com> - 0.13.0-2
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Features/Python_2.7/MassRebuild
|
|
||||||
|
|
||||||
* Wed Jul 14 2010 Silas Sewell <silas@sewell.ch> - 0.13.0-1
|
|
||||||
- Update to 0.13.0
|
|
||||||
|
|
||||||
* Fri Apr 23 2010 Silas Sewell <silas@sewell.ch> - 0.12.2-2
|
|
||||||
- Remove setuptools requirement
|
|
||||||
|
|
||||||
* Wed Mar 17 2010 Silas Sewell <silas@sewell.ch> - 0.12.2-1
|
|
||||||
- Initial build
|
|
||||||
|
|
|
||||||
2
sources
2
sources
|
|
@ -1 +1 @@
|
||||||
SHA512 (gevent-21.12.0.tar.gz) = 805ddb475281b6c4c46cdf5a714915b6612512745121e7b153f3d33f3460135efa4994e0ff1601402d4f7b80d285cbfdc0d5d93799fbeb8ddbf2a52888cd91ad
|
SHA512 (gevent-26.7.0.tar.gz) = 70e7a21874c77990884e46a5e849ee4e065c4b918544bf8a11f665412d101a94c81bae713c7202ebbe81fd5439e57248b23f098aec7b16b6f05d99ce1a6ec4a8
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue