Skip to content

Commit

Permalink
Update to greenlet 0.4.14. Fixes #1260.
Browse files Browse the repository at this point in the history
  • Loading branch information
jamadden committed Jul 18, 2018
1 parent 84ef1f9 commit 6c26ac1
Show file tree
Hide file tree
Showing 4 changed files with 18 additions and 5 deletions.
5 changes: 4 additions & 1 deletion CHANGES.rst
Expand Up @@ -7,7 +7,10 @@
1.3.6 (unreleased)
==================

This comment has been minimized.

Copy link
@hit9

hit9 Jul 28, 2018

Date to release?

Waiting, hopefully

This comment has been minimized.

Copy link
@wwqgtxx

wwqgtxx Aug 8, 2018

Waiting for release too.
the greenlet 0.4.13 will crash sometimes by python-greenlet/greenlet#131
hope can soon upgrade to 0.4.14


- Nothing changed yet.
- gevent now depends on greenlet 0.4.14 or above. gevent binary wheels
for 1.3.5 and below must have greenlet 0.4.13 installed on Python
3.7 or they will crash. Reported by Alexey Stepanov in :issue:`1260`
and pkittenis in :issue:`1261`.


1.3.5 (2018-07-16)
Expand Down
4 changes: 2 additions & 2 deletions ci-requirements.txt
Expand Up @@ -7,8 +7,8 @@ wheel
# at the same time.
Cython >= 0.28.1

# Python 3.7b1 requires this.
greenlet>=0.4.13 ; platform_python_implementation == "CPython"
# Python 3.7 requires at least 0.4.14, which is ABI incompatible with earlier
greenlet>=0.4.14 ; platform_python_implementation == "CPython"
pylint>=1.8.0 ; python_version < "3.4"
pylint >= 2.0.0.dev2 ; python_version >= "3.4"
# pylint 2 needs astroid 2; unfortunately, it uses `typed_ast`
Expand Down
11 changes: 10 additions & 1 deletion deps/greenlet/greenlet.h
Expand Up @@ -11,7 +11,11 @@
extern "C" {
#endif

#define GREENLET_VERSION "0.4.13"
#define GREENLET_VERSION "0.4.14"

#if PY_VERSION_HEX >= 0x030700A3
# define GREENLET_USE_EXC_INFO
#endif

typedef struct _greenlet {
PyObject_HEAD
Expand All @@ -25,9 +29,14 @@ typedef struct _greenlet {
struct _frame* top_frame;
int recursion_depth;
PyObject* weakreflist;
#ifdef GREENLET_USE_EXC_INFO
_PyErr_StackItem* exc_info;
_PyErr_StackItem exc_state;
#else
PyObject* exc_type;
PyObject* exc_value;
PyObject* exc_traceback;
#endif
PyObject* dict;
} PyGreenlet;

Expand Down
3 changes: 2 additions & 1 deletion setup.py
Expand Up @@ -193,7 +193,8 @@
# We need to watch our greenlet version fairly carefully,
# since we compile cython code that extends the greenlet object.
# Binary compatibility would break if the greenlet struct changes.
'greenlet >= 0.4.13; platform_python_implementation=="CPython"',
# (Which it did in 0.4.14 for Python 3.7)
'greenlet >= 0.4.14; platform_python_implementation=="CPython"',
]

# Note that we don't add cffi to install_requires, it's
Expand Down

0 comments on commit 6c26ac1

Please sign in to comment.