second preview of gevent 0.12.0

7 views
Skip to first unread message

Denis Bilenko

unread,
Jan 29, 2010, 8:32:23 AM1/29/10
to gev...@googlegroups.com
Hi!

Second preview of 0.12.0 release is ready.

Please try it out http://www.gevent.org/dist/gevent-0.12.0-preview-2.tar.gz
I plan to release the final version a week from now, next Friday.

The major addition, compared to the first preview, is gevent.ssl
module, fully compatible
with Python2.6's ssl module. It also works on Python <= 2.5 if
http://pypi.python.org/pypi/ssl
is installed. The old way of doing ssl via PyOpenSSL is still
available and is enabled when
ssl package is not present.

The monkey patcher fixes the stdlib's ssl if patch_all() or
patch_ssl() is called. (patch_socket only affects socket module).

Other changes, compared to the 0.12.0-preview

- Fixed bug in socket.accept. It could return unwrapped socket
instance if socket's timeout was 0.
- Fixed socket.sendall implementation never to call underlying socket's sendall.
- Made core.event.cancel not to raise if event_del reports an error.
instead, it passes the return value to the caller.
- Fixed select() to clean up properly if event creation fails; It also
raises select.error instead of IOError now.
- Fixed Greenlet.spawn_link* and GreenletSet.spawn_link* classmethods
not to assume anything
about their arguments. (Thanks to Marcus Cavanaugh for pointing that out).
- Removed 'is_secure' attribute from sockets and ssl objects
- Fixed Greenlet to avoid printing a traceback when a not-yet-started
greenlet is killed.
- Added BackdoorServer class to backdoor module. Removed backdoor()
function and deprecated backdoor_server() function
- Removed __getattr__ from socket class
- Made a number of improvements and fixes to testrunner.py
- Fixed monkey.patch_socket() not to fail if 'ssl' is not present in
gevent.socket
- Added 'sslerror' to socket.__all__
- Removed GreenSocket alias for socket object
- Tests from stdlib no longer included in greentest package. Instead,
there are number of stubs
that import those tests from test package directly and run them in
monkey patched environment.
- Added 'aggressive' option to :monkey.patch_all. It not only patches
the module but removes
what it cannot patch. Currently that only affects select module.
- Added examples/process.py by Marcus Cavanaugh.

For the full changelog, refer to http://www.gevent.org/changelog.html

Cheers,
Denis.

Reply all
Reply to author
Forward
0 new messages