Files | Admin


Release Name: rev-0.1.2

This release consists of performance improvements
and bugfixes.  The most notable inclusion is new 
buffering code implemented as a native extension 
which replaces String#slice!, which is slow in 
Ruby 1.9.

A new API for quickly defining interfaces is also 
provided, using the instance_exec feature for Ruby 1.9.

Changes: Commit initial specs Improve RDoc for the library Eliminate "zero copy" writes as they bypass the event loop Added Rev::Buffer C extension to provide high speed buffered writes Implement Rev::TCPSocket#peeraddr to improve compatibility with Ruby sockets Added Rev::Listener.close for clean shutdown of a listener Rev::Loop.default used to call ev_loop_default() (in C). However, this registers signal handlers which conflict with Ruby's own. Now the behavior has been changed to return a thread-local singleton of Rev::Loop. Creating a new Rev::TCPListener will disable reverse lookups in BasicSocket Made backlog for Rev::TCPListener user-definable Rev::TCPSocket now implements an on_resolve_failed callback for failed DNS resolution. By default it's aliased to on_connect_failed. Changed event_callbacks to use instance_exec rather than passing the watcher object as an argument. Documented use of defining an event callback as a block Subsecond precision for Rev::TimerWatchers