v2.2.0
tag674ef86d0d72fcb69f7e928c6085e10e694ed28e
object 75a7da2bd757617995f5492df1205e4a3459618b
authorEric Wong <normalperson@yhbt.net>
Fri, 4 Feb 2011 03:07:24 +0000 (3 19:07 -0800)
kgio 2.2.0 - kinder, gentler I/O for the Internets

* 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.