0.9.3 out!

Please tell me what you think! And direct bug reports to http://bitbucket.org/which_linden/eventlet/issues/new/

How get it:

Here’s the changelog, which includes some stuff I forgot in my last email:

  • Moved primary api module to __init__ from api. It shouldn’t be necessary to import eventlet.api anymore; import eventlet should do the same job.
  • Proc module deprecated in favor of greenthread
  • New module greenthread, with new class GreenThread.
  • New GreenPool class that replaces pool.Pool.
  • Deprecated proc module (use greenthread module instead)
  • tpooled gethostbyname is configurable via environment variable EVENTLET_TPOOL_GETHOSTBYNAME
  • Removed greenio.Green_fileobject and refactored the code therein to be more efficient. Only call makefile() on sockets now; makeGreenFile() is deprecated. The main loss here is that of the readuntil method. Also, Green_fileobjects used to be auto-flushing; flush() must be called explicitly now.
  • Added epoll support
  • Improved documentation across the board.
  • New queue module, API-compatible with stdlib Queue
  • New debug module, used for enabling verbosity within Eventlet that can help debug applications or Eventlet itself.
  • Bugfixes in tpool, green.select, patcher
  • Deprecated coros.execute (use eventlet.spawn instead)
  • Deprecated coros.semaphore (use semaphore.Semaphore or semaphore.BoundedSemaphore instead)
  • Moved coros.BoundedSemaphore to semaphore.BoundedSemaphore
  • Moved coros.Semaphore to semaphore.Semaphore
  • Moved coros.event to event.Event
  • Deprecated api.tcp_listener, api.connect_tcp, api.ssl_listener
  • Moved get_hub, use_hub, get_default_hub from eventlet.api to eventlet.hubs
  • Renamed libevent hub to pyevent.
  • Removed previously-deprecated features tcp_server, GreenSSL, erpc, and trap_errors.
  • Removed saranwrap as an option for making db connections nonblocking in db_pool.

0.9.3 incoming

I’m just wrapping up the last details of Eventlet 0.9.3. I plan to release it later tonight. If you want to give it a go before then, you can check it out or download it here:

hg clone http://bitbucket.org/which_linden/eventlet/
http://bitbucket.org/which_linden/eventlet/get/tip.tar.gz

This is one of the biggest deltas ever applied to Eventlet. I’m really going nuts on cleaning up the interfaces, removing erroneous modules, and making it so that there’s only one right way to do anything. It is backwards-compatible, but there are a ton of deprecation warnings. This is converging on the final API, and I’m happy to say that I think it looks really good; please tell me what you think.

As a reminder, the broad strokes of all this have been up on the roadmap for a while: http://bitbucket.org/which_linden/eventlet/wiki/09_Roadmap

Here’s the changelog!

  • Moved primary api module to __init__ from api. It shouldn’t be necessary to import eventlet.api anymore; import eventlet should do the same job.
  • Proc module deprecated in favor of greenthread
  • New module greenthread, with new class GreenThread.
  • New GreenPool class that replaces pool.Pool.
  • Deprecated proc module (use greenthread module instead)
  • tpooled gethostbyname is configurable via environment variable EVENTLET_TPOOL_GETHOSTBYNAME
  • Removed greenio.Green_fileobject and refactored the code therein to be more efficient. Only call makefile() on sockets now; makeGreenFile() is deprecated. The main loss here is that of the readuntil method. Also, Green_fileobjects used to be auto-flushing; flush() must be called explicitly now.
  • Improved documentation across the board.
  • New debug module, used for enabling verbosity within Eventlet that can help debug applications or Eventlet itself.
  • Bugfixes in tpool, green.select, patcher
  • Deprecated coros.execute (use eventlet.spawn instead)
  • Deprecated coros.semaphore (use semaphore.Semaphore or semaphore.BoundedSemaphore instead)
  • Moved coros.BoundedSemaphore to semaphore.BoundedSemaphore
  • Moved coros.Semaphore to semaphore.Semaphore
  • Moved coros.event to event.Event
  • Deprecated api.tcp_listener, api.connect_tcp, api.ssl_listener
  • Moved get_hub, use_hub, get_default_hub from eventlet.api to eventlet.hubs
  • Renamed libevent hub to pyevent.
  • Removed previously-deprecated features tcp_server, GreenSSL, erpc, and trap_errors.
  • Removed saranwrap as an option for making db connections nonblocking in db_pool.
Follow

Get every new post delivered to your Inbox.