Files | Admin

Notes:

Release Name: 2.7.4

Notes:
kgio 2.7.4 - small fixes and cleanups

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 (that run on Unix-like platforms).

* http://bogomips.org/kgio/
* kgio@librelist.org
* git://bogomips.org/kgio.git
* http://bogomips.org/kgio/NEWS.atom.xml

Changes:

Fix build for platforms lacking both TCP_CORK _and_ TCP_NOPUSH
There are many test case fixes and cleanups, too.



Changes: GIT-VERSION-GEN | 2 +- ext/kgio/read_write.c | 3 --- test/lib_read_write.rb | 27 ++++++++++++++------------- test/test_accept_class.rb | 10 +++++----- test/test_autopush.rb | 22 +++++++++------------- test/test_connect_fd_leak.rb | 10 ++++------ test/test_poll.rb | 4 +--- test/test_singleton_read_write.rb | 2 +- test/test_tcp_connect.rb | 1 + test/test_tryopen.rb | 6 +++--- 10 files changed, 39 insertions(+), 48 deletions(-) commit ab3fa8e85c02227985c56261d4898339f85d2b20 Author: Eric Wong Date: Fri Mar 23 21:10:22 2012 +0000 kgio 2.7.4 - small fixes and cleanups Fix build for platforms lacking both TCP_CORK _and_ TCP_NOPUSH There are many test case fixes and cleanups, too. commit 49f28a5257d20a7f4b0aa790424ca207287aa7b6 Author: Eric Wong Date: Sat Mar 24 00:13:40 2012 +0000 test: more workaround for FreeBSD 9.0 Followup-to: e26358413c9d87e1ce8f6cda5cf0b8dd53979ed2 commit e26358413c9d87e1ce8f6cda5cf0b8dd53979ed2 Author: Eric Wong Date: Tue Mar 20 22:00:47 2012 +0000 test/lib_read_write: test workarounds for TCP in FreeBSD 9.0 Under load, TCP sockets may not register as readable right away after the writer finishes. This can be expected for implementations where loopback TCP is a closer simulation of non-local TCP traffic. These test failures were noticed under FreeBSD 9.0. commit 2cab4f2fa642241dbcaf8881d39bd275a59dc67b Author: Eric Wong Date: Fri Mar 23 11:56:04 2012 -0700 test_tryopen: fix horribly-named test for EACCES We can't actually test for EPERM without changing permissions/ownership, and we can't do that without root... commit ce62ddbef053ad31af2f3ec6fcb7d2488859383d Author: Eric Wong Date: Thu Mar 22 06:18:41 2012 +0000 test/lib_read_write: increase test reliability IO#readpartial may not drain the socket buffers enough for kgio_write to succeed on some platforms. So use IO#read for read-in-full behavior. commit 74b9f78e11b915439555290dc3bdd4331303561c Author: Eric Wong Date: Mon Mar 19 06:05:06 2012 +0000 test/*: remove assert_nothing_raised It makes test failures hard to track down, tests will already fail if exceptions are thrown and we'll get nice backtraces. commit 85ae255f73b9b81ae3d17e6420dbb95a29dbe8b7 Author: Eric Wong Date: Mon Mar 19 05:53:03 2012 +0000 fix for non-Linux, non-TCP_NOPUSH platforms We don't need to care for TCP_NOPUSH in read_write.c, it's entirely in autopush.c and no-op on platforms without TCP_CORK/TCP_NOPUSH. TCP_CORK/TCP_NOPUSH are non-POSIX, so it's entirely possible some Free systems will lack them. Reported-by: Edho Arief