[ANN] kgio 2.2.0 - kinder, gentler I/O for the Internets

kgio provides non-blocking I/O methods for Ruby without raising
exceptions on EAGAIN and EINPROGRESS. It is intended for use with the
Unicorn and Rainbows! Rack servers, but may be used by other
applications.

* http://bogomips.org/kgio/
* kgio@librelist.org
* git://bogomips.org/kgio.git

Changes:

* sockets accept()ed by a TCP_NOPUSH/TCP_CORK listener
  automatically flush on kgio_*read calls if there is pending
  data. "Kgio.autopush = false" disables this globally,
  and Kgio::Socket also get "kgio_autopush=" to enable/disable
  on a per-object individual basis.

* ECONNRESET exceptions get empty backtraces for kgio_*read.
  There's nothing a programmer can do about these, so there's
  no point in going through the expensive backtrace generation
  process.

* Kgio.try* singleton methods added for working with non-Kgio
  enhanced objects. No more needing to use Object#extend
  and blowing away your method cache to make existing I/O
  objects kinder and gentler.

* IPv6 support should be complete, systems without a native
  getaddrinfo(3) are now unsupported (and will remain so
  unless somebody complains).

There should be no other backwards-incompatible changes other
than requiring getaddrinfo(3) and friends for IPv6 support.

Jr ungr #vsqrsf naq jvyy arire or xvaq abe tragyr gb gurz!

···

--
Eric Wong

Eric Wong wrote in post #979543:

Jr ungr #vsqrsf naq jvyy arire or xvaq abe tragyr gb gurz!

In case anyone is new to programming: the above is in ROT13.

···

--
Posted via http://www.ruby-forum.com/\.