Release Name: 2.3.0
Notes:
kgio 2.3.0 - MSG_PEEK and poll(2) support
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:
recv() with MSG_PEEK for sockets is added with the try*
interface. SocketMethods#kgio_trypeek and
SocketMethods#kgio_peek or Kgio.trypeek for non-Kgio-enabled
sockets.
For Ruby 1.9 only: poll(2) is exposed via the Kgio.poll
singleton method and should provide an alternative for IO.select
users.
Both of these new features should work well on modern Unix-like
operating systems.
Changes:
.document | 2 +
GIT-VERSION-GEN | 2 +-
README | 2 +-
ext/kgio/accept.c | 15 ++++-
ext/kgio/autopush.c | 45 ++++++++++++
ext/kgio/connect.c | 12 +++
ext/kgio/extconf.rb | 1 +
ext/kgio/kgio.h | 4 +
ext/kgio/kgio_ext.c | 1 +
ext/kgio/poll.c | 186 +++++++++++++++++++++++++++++++++++++++++++++++++
ext/kgio/read_write.c | 72 +++++++++++++++++++
lib/kgio.rb | 2 +
pkg.mk | 15 +++--
test/test_peek.rb | 35 +++++++++
test/test_poll.rb | 68 ++++++++++++++++++
15 files changed, 453 insertions(+), 9 deletions(-)
commit f74bcf37ed31611d14aba2d4b4518c6a3dea0f40
Author: Eric Wong
Date: Wed Feb 9 10:10:36 2011 +0000
kgio 2.3.0 - MSG_PEEK and poll(2) support
recv() with MSG_PEEK for sockets is added with the try*
interface. SocketMethods#kgio_trypeek and
SocketMethods#kgio_peek or Kgio.trypeek for non-Kgio-enabled
sockets.
For Ruby 1.9 only: poll(2) is exposed via the Kgio.poll
singleton method and should provide an alternative for IO.select
users.
Both of these new features should work well on modern Unix-like
operating systems.
commit 00d1bc89ed3811701195bf5ddb400a0a0067126f
Author: Eric Wong
Date: Tue Feb 8 14:11:45 2011 -0800
move poll support checks to kgio.h
We may use poll elsewhere...
commit 257b090af54e6a1cecd44325f8664c4c682a6740
Author: Eric Wong
Date: Tue Feb 8 13:56:39 2011 -0800
pkg.mk: update to the latest
* Fixes Ruby 1.9.3dev deprecation warnings
* Fixes some documentation dependency issues
* Allows RUBY_TEST_OPTS to be passed to unit tests
commit d8616b605ad4d83b69e2679e1c210e476cc18e00
Author: Eric Wong
Date: Tue Feb 8 13:50:55 2011 -0800
doc: fully RDoc all methods and classes
Whee!
commit 3f6bffb4c4297df48a69d146243fbe5ba8040cb5
Author: Eric Wong
Date: Tue Feb 8 13:50:01 2011 -0800
doc: fix accept -> tryaccept copy+paste error
Oops
commit 823e8978b38dcfb642e5059e879af4209ebba0f1
Author: Eric Wong
Date: Tue Feb 8 13:36:56 2011 -0800
README: fix download link/ref
commit 5c480aee3067006b5da6d45b7de41d8401b70848
Author: Eric Wong
Date: Tue Feb 8 10:41:51 2011 +0000
preliminary poll(2) support
It's a nice alternative to IO.select for higher-numbered
file descriptors, especially sparse ones. Our interface
also generates less garbage than IO.select does.
commit 47653194bf6ad53b9f5fca1b266c30855df5ebbd
Author: Eric Wong
Date: Sun Feb 6 21:56:35 2011 +0000
add support for recv() with MSG_PEEK
Kgio.trypeek, kgio_trypeek and kgio_peek methods are added
for using with sockets.
|