Notes:
I am happy to announce the release of eventmachine 0.12.8. Gems (including
binary builds for win32 and jruby) have been uploaded to rubyforge and should
be available via `gem install` shortly.
This release contains almost 100 patches with numerous bug fixes, improvements
and several new features. Highlights include:
- Major code cleanups
- converted all tabs to spaces in ruby source files
- better documentation for all methods and classes
- moved all protocol implementations to em/protocols/
- split out eventmachine.rb to em/{connection,version,timers}.rb
- removed several deprecated methods and classes
- rake java:gem task to generate a binary jruby gem
- Reactor fixes and improvements
- worked around a kqueue bug in OSX causing nbytes>0 assertion failures
- reduced the stack size of the epoll/kqueue reactors (this fixes a
long-standing issue causing performance issues with ruby threads)
- platforms that support it will use writev() to write data to the
network, resulting in fewer memcpy()s
- explicitly set non-blocking mode on attached sockets
- allow read/write pipes to be watched using EM.attach
- gettimeofday() is called only once per tick and used for timers,
heartbeats and gCurrentLoopTime
- Protocol improvements
- added a simple DRb style ObjectProtocol, for communication using ruby
objects (i.e. simple rpc server/clients: http://gist.github.com/96699)
module RubyServer
include EM::P::ObjectProtocol
def receive_object obj
send_object({'received object' => obj})
end
end
- HttpClient2 callbacks are now passed in the response object
- cleaner Postgres protocol
- New APIs
- EM.kqueue= and EM.epoll= can be used to toggle kqueue/epoll
- EM.threadpool_size= sets the size of the EM.defer threadpool
- EM.ssl? will check if the reactor was built with ssl support
- EM.schedule{} helper runs a block in the main reactor thread
- EM.reactor_thread? checks if the current thread is the reactor thread
- EM.system now returns the new process' pid and can take multiple args
pid = EM.system('sleep', 1000){ |out, status|
# pid == status.pid
# 15 == status.termsig
p [pid, out, status]
}
Process.kill 15, pid
- EM::Channel allows for in-reactor publish/subscribe
chan = EM::Channel.new
sid = chan.subscribe{ |msg|
p [:got, msg]
}
chan.push('hello')
chan.push('world')
chan.unsubscribe(sid)
- EM::Queue provides a simple queue with asynchronous pops
q = EM::Queue.new
q.push(1, 2)
3.times do
q.pop{ |num| p [:got, num] }
end
q.push(3)
- EM.watch_file uses kqueue on OSX or inotify on linux to watch a file,
triggering events when the file is modified, moved or deleted
module EtcPasswd
def file_modified
STDERR.puts 'WARNING /etc/passwd WAS MODIFIED'
end
end
EM.run{
EM.watch_file '/etc/passwd', EtcPasswd
}
- EM.watch_process will watch a pid, triggering events when the process
forks or dies (note this currently only works with kqueue)
module DaemonWatcher
def process_exited
STDERR.puts 'WARNING your daemon has died'
end
end
EM.kqueue = true
EM.run{
EM.watch_process(some_daemon_pid, DaemonWatcher)
}
- EM.enable_proxy will natively proxy data between two connections, without
the overhead of converting incoming data to ruby strings
- EM::Connection#comm_inactivity_timeout= now takes a float
- EM.heartbeat_interval= changes how often sockets are checked
for inactivity
- EM.bind_connect binds an outgoing socket to a specific local ip/port
- EM::Connection#ssl_verify_peer callback allows servers to verify client
ssl certificates (use start_tls(:verify_peer => true))
- Ruby API fixes
- EM.add_timer() can take a number of seconds as a string
- EM.open_datagram_socket() correctly handles string ports
- EM::Connection#send_data will now call .to_s on its argument
- the EM.next_tick{} queue is cleaned up on reactor shutdown (this fixes an
issue in AMQP when connecting and disconnecting multiple times)
- fixed potential memory leak in EM.cancel_timer
At this time, there are a few known issues which will be fixed for 0.12.10,
along with a couple new features that are in the works:
- EM.current_time is broken
EM.current_time returns random time objects due to a change to
gCurrentLoopTime in the reactor. This has been fixed in the latest
git master branch.
- ruby 1.9 win32 support
EM works with 1.9 on linux, but still fails to build on win32. The
next release will include an official win32 ruby 1.9 binary gem.
- EM::Iterator
Looping over large arrays blocks the reactor and introduces latency.
0.12.10 will include EM::Iterator to spread out iterations over multiple
reactor ticks.
- jruby patches
Interest in the jruby reactor has been increasing, and there are several
patches in the works by Hemant 'gnufied' Kumar. 0.12.8 works with jruby,
but is missing several features that are available in the c++ reactor.
- require 'openssl' issues
Custom ruby builds on OSX will segfault if you require 'openssl' after
eventmachine. To work around this issue, simply:
require 'openssl'
require 'eventmachine'
- async dns lookups
There are currently a few ways of doing async dns lookups with EM,
using either em-dns, em-asyncns or dnsruby. The next release will
include an async dns implementation which will be used by default.
- exceptions in post_init/initialize are silently swallowed
Exceptions raised in your handler's post_init or initialize methods
are silently swallowed and cause an ConnectionUnbound error to surface
later on with a confusing error message. If you're experiencing issues,
use an error handler to catch the original exception:
EM.error_handler{ |e|
puts e
puts e.backtrace.join("\n ")
}
- process watching on linux using netlink
EM.watch_process is currently only implemented for kqueue. The next
release will add support for linux using the netlink code from God.
- better, more stable test suite
The current test suite is very unstable and does not test the pure ruby,
jruby, kqueue or epoll reactors. We plan on overhauling the suite to
provide better test coverage and ensure stability of the different
reactors and platforms.
Special thanks to the following people for making this release possible:
- Bob Potter
- Eugene Pimenov
- Jake 'yakischloba' Douglas
- Joern Barthel
- James 'raggi' Tucker
- coderrr
The rdoc has been updated and is available at http://eventmachine.rubyforge.org
Aman
Changes:
commit b55e18c891d43dcfd91e10bdcf5558efd83b5e25
Author: Aman Gupta <aman@tmm1.net>
Date: Fri May 22 17:01:13 2009 -0700
Bump to version 0.12.8
commit 7601ac0b37c79ead6947289d5c324e1547fa9e08
Author: Aman Gupta <aman@tmm1.net>
Date: Fri May 22 16:42:40 2009 -0700
disable failing tests
commit 65b9c003d5836b50e17235312175840c0cad3a7c
Author: Aman Gupta <aman@tmm1.net>
Date: Fri May 22 23:30:30 2009 +0100
Fixes for VC6, long long is not supported
commit 8d39aecf71219ad39439a156960200b634a4c0b1
Author: Jake Douglas <jakecdouglas@gmail.com>
Date: Fri May 22 10:57:31 2009 -0700
Added getter/setter for HeartbeatInterval
commit ff171e7e592720b5272145c32c9fc952ad5a5041
Author: Aman Gupta <aman@tmm1.net>
Date: Fri May 15 15:18:11 2009 -0700
Use RFLOAT_VALUE for ruby 1.9 compat in Connection#comm_inactivity_timeout=
commit 391b730d61c403dd1550f1ecc9df86b79ac4509f
Author: Aman Gupta <aman@tmm1.net>
Date: Mon May 11 22:40:06 2009 -0700
Add EM::Channel#pop to receive one message from a channel
commit eb70e077ac91fd6cd7ace2a8e5ca56bbd54f895e
Author: Jake Douglas <jakecdouglas@gmail.com>
Date: Fri May 8 14:35:51 2009 -0700
Added direct proxying feature EM.enable_proxy
commit 91d5dc38887c5ec501439f794583c7f2f3cbdea4
Author: Jake Douglas <jakecdouglas@gmail.com>
Date: Wed May 6 15:24:40 2009 -0700
Changed to usec loop time on supported platforms. Cleaned up some unused variables.
commit c4581c6c2ccfd18982a62cb2b1f84e4ae3826e19
Author: Aman Gupta <aman@tmm1.net>
Date: Tue May 5 18:49:03 2009 -0700
Fix kqueue/epoll for attached read/write pipes
commit eae390a123fb55650e1831acebf79eea7d758ea3
Author: Aman Gupta <aman@tmm1.net>
Date: Tue May 5 14:06:31 2009 -0700
Add port.to_i in EM::open_datagram_socket
commit feb534f11784a04b090e293fd7c7d919a09b4bed
Author: Aman Gupta <aman@tmm1.net>
Date: Tue May 5 13:58:49 2009 -0700
Revert "Correctly handle string ports in EM.start_server and EM.connect"
This reverts commit 123ed20a43e82edfde1c8300429c87bcfb7daa52.
commit e7983baa3bd0fc810e64e591e74b02dd263d8a59
Author: Aman Gupta <aman@tmm1.net>
Date: Tue May 5 11:57:30 2009 -0700
Hack around kqueue bugs on OSX responsible for nbytes>0 assertion failures
commit 6cf5b59a508ead9dacec6dca09be06e6876302ec
Author: Aman Gupta <aman@tmm1.net>
Date: Tue May 5 11:57:06 2009 -0700
Add EventMachine_t::UsingKqueue/Epoll getters for bKqueue and bEpoll
commit f89dd20666fdbc66fbde0c349251af088c5342b0
Author: Aman Gupta <aman@tmm1.net>
Date: Tue May 5 10:15:56 2009 -0700
Heap allocate struct kevent array for the Kqueue reactor
commit 123ed20a43e82edfde1c8300429c87bcfb7daa52
Author: Aman Gupta <aman@tmm1.net>
Date: Tue May 5 09:56:24 2009 -0700
Correctly handle string ports in EM.start_server and EM.connect
commit e1a04d95f50afb948771f39c50ea4a770b8d4214
Author: Aman Gupta <aman@tmm1.net>
Date: Thu Apr 30 16:31:10 2009 -0700
Fix weirdness when calling EM::add_timer with a string
commit 1f6a4c912256b8110af94e270f7dde486f3c9d75
Author: Aman Gupta <aman@tmm1.net>
Date: Tue Apr 28 18:08:26 2009 -0700
Reduce the size of the RunEpollOnce stack frame by 800kb. This fixes the long-standing epoll+threads issue (#84)
commit 6626063809557c64e1ff434540b6921914422d02
Author: steve <coderrr.contact@gmail.com>
Date: Mon Apr 27 13:13:32 2009 +0700
remove ifconfig dependency for bind_connect test; now should work on all OSs
commit bde79f99322edb5d02025bca38f619e151fb3c01
Author: Jake Douglas <jakecdouglas@gmail.com>
Date: Sun Apr 26 21:41:07 2009 -0700
Fixed aggregated event handling for kqueue and notify, fixed path for ifconfig.
Signed-off-by: Aman Gupta <aman@tmm1.net>
commit 4e42455160cfb1e947b33afc541f644a4b257446
Author: Aman Gupta <aman@tmm1.net>
Date: Sat Apr 25 02:08:58 2009 -0700
Clean up next_tick_queue on reactor shutdown
commit fca487d0c35d39bfe67fa9892ad77aad25650259
Author: Jake Douglas <jakecdouglas@gmail.com>
Date: Sun Apr 19 13:38:58 2009 -0700
change EV_ONESHOT + re-register to EV_CLEAR in Kqueue file watching feature
Signed-off-by: Aman Gupta <aman@tmm1.net>
commit 168b8d678a100bd123a890bf4e45c6c1197d4846
Author: steve <coderrr.contact@gmail.com>
Date: Sat Apr 18 06:13:30 2009 +0700
call to_s on object before sending data
Signed-off-by: Aman Gupta <aman@tmm1.net>
commit e3c02c92e3d17ce07ef4ef0b1f08af2db6953236
Author: Aman Gupta <aman@tmm1.net>
Date: Wed Apr 15 02:40:14 2009 -0700
EM.system can take multiple arguments for the command
commit 9b7a76dc361ae737caf6fc554a8973d161f1ed4c
Author: Joern Barthel <joern.barthel@acm.org>
Date: Tue Apr 14 23:02:22 2009 +0200
EM.system returns the process pid now
Signed-off-by: Aman Gupta <aman@tmm1.net>
commit 1b85ffdeb526c8ed4f09e0fcad09832ab0a2558a
Author: Aman Gupta <aman@tmm1.net>
Date: Sat Apr 4 21:32:48 2009 -0700
More win32 fixes
commit c085613ec52d44e35336dce26d74929595cfa370
Author: Aman Gupta <aman@tmm1.net>
Date: Sat Apr 4 21:28:48 2009 -0700
Fix compile issues on win32
commit 59aa01702633e2a91ddf654c3c044e7d870b5e65
Author: Aman Gupta <aman@tmm1.net>
Date: Sat Apr 4 20:39:24 2009 -0700
Some rake task descriptions
commit 9324f20a82593b0d7bb753465082dd7f9ed17ca6
Author: Aman Gupta <aman@tmm1.net>
Date: Sat Apr 4 20:35:37 2009 -0700
JRuby gem platform is java, not jruby
commit a8f39607769456ccb449e811af7a6d7d91731ee9
Author: Aman Gupta <aman@tmm1.net>
Date: Sat Apr 4 17:37:18 2009 -0700
Convert tabs to spaces in tests/test_*
commit e40aa641c6e401cb1e64d50084f4d28ca8486c07
Author: Aman Gupta <aman@tmm1.net>
Date: Sat Apr 4 17:29:52 2009 -0700
Remove test_eventables
commit 3354a3e2d2c848061d61209f9d7df11b4f2d183e
Author: Aman Gupta <aman@tmm1.net>
Date: Sat Apr 4 17:28:24 2009 -0700
Remove requires for em/eventable and em/messages
commit 3c6738526ae85cab969fffba5f754b1737d7914e
Author: Aman Gupta <aman@tmm1.net>
Date: Sat Apr 4 17:12:09 2009 -0700
Updated gemspec
commit 4604f3bbf8ac68951cd0b79f70cd4f9d5904b323
Author: Aman Gupta <aman@tmm1.net>
Date: Sat Apr 4 17:11:54 2009 -0700
Remove old EM::Eventable stub
commit ec0fae1a2e873cde3fca12d06db082471a3d0495
Author: Aman Gupta <aman@tmm1.net>
Date: Sat Apr 4 17:11:38 2009 -0700
Add nodoc to some EM::DeferrableChildProcess internals
commit f7c9b2dd6327b816b2001c40dde886ab12a56a12
Author: Aman Gupta <aman@tmm1.net>
Date: Sat Apr 4 17:11:19 2009 -0700
Convert tabs to spaces in protocol implementations
commit 25eb21d90dc83eaa9faf4d81b73e123f5f1d8e01
Author: Aman Gupta <aman@tmm1.net>
Date: Sat Apr 4 16:35:57 2009 -0700
Pass through block to bind_connect
commit 8309448a88ced57e1fd82930bef3be830b14f7d7
Author: Aman Gupta <aman@tmm1.net>
Date: Sat Apr 4 16:23:26 2009 -0700
Add some simple RDoc examples for EM.Callback, EM::Channel and EM::Queue
commit 3f7e2f3c38628ee5a9c9d60da6fa73e27303b09e
Author: steve <coderrr.contact@gmail.com>
Date: Thu Apr 2 14:28:43 2009 +0700
added bind_connect method to c++, pr, and jruby implementations which
supports binding to a specific local address/port before connecting
Signed-off-by: Aman Gupta <aman@tmm1.net>
commit b8ab7862bdb580f06405aa5095f32f2bbf5a3cea
Author: Aman Gupta <aman@tmm1.net>
Date: Mon Mar 30 21:14:08 2009 -0700
Wrap ssl_handshake_completed and ssl_verify_peer events in #ifdef WITH_SSL
commit 36af28c4bd4ca2737ce1fad6f6c8b49caa8ac9f6
Author: Jake Douglas <jakecdouglas@gmail.com>
Date: Sun Mar 29 18:43:07 2009 -0700
Fixed connection_count and test_connection_count
Signed-off-by: Aman Gupta <aman@tmm1.net>
commit f27e862479b086795674629f12141c6df544e747
Author: Jake Douglas <jakecdouglas@gmail.com>
Date: Sun Mar 29 16:12:07 2009 -0700
Added :verify_peer support for requesting and verifying an X509 certificate from a remote SSL peer.
Signed-off-by: Aman Gupta <aman@tmm1.net>
commit 691fbfaf257124710ac32b48de96acb80018690f
Author: raggi <jftucker@gmail.com>
Date: Sun Mar 29 18:06:53 2009 +0100
Added test for reactor_thread? and fixed up EM.schedule for pre-reactor schedules
commit 2db07fe374582d7e3270a57466a77ef94bcc34d5
Author: Aman Gupta <aman@tmm1.net>
Date: Sat Mar 28 00:04:00 2009 -0700
Fix gemspec for top-level README
commit e69229293c3e6f0dd0135f2dc001367dc0beb354
Author: Aman Gupta <aman@tmm1.net>
Date: Fri Mar 27 23:41:42 2009 -0700
Update gemspec
commit 10e03b9782859cdbaf00db8917ead7a4d0e279e8
Author: Aman Gupta <aman@tmm1.net>
Date: Fri Mar 27 21:31:46 2009 -0700
Use writev in ConnectionDescriptor::_WriteOutboundData if possible
commit 4f5db645146594679ec362e5d066b19d3628547f
Merge: 5a7234e... 52853a2...
Author: raggi <jftucker@gmail.com>
Date: Fri Mar 27 00:10:30 2009 +0000
Merge branch 'master' of git@github.com:eventmachine/eventmachine
* 'master' of git@github.com:eventmachine/eventmachine:
Use write() instead of send() in ConnectionDescriptor::_WriteOutboundData
Use read instead of recv in ConnectionDescriptor::Read (fixes EM.attach issues with pipes)
Updated gemspec
commit 5a7234e5ea3cef7dd3df4fa30de9e901b705663c
Merge: 953cf4a... 986e88b...
Author: raggi <jftucker@gmail.com>
Date: Fri Mar 27 00:07:33 2009 +0000
Merge branch 'master' into worker
* master:
Add initialize for deferrable child process, saves error for silent subprocesses
Add example for Socket.unpack_sockaddr_in usage with get_peername
Use false to indicated a cancelled timer instead of using an empty proc. Reduces mem usage in certain situations.
move README to top level (for gihtub)
Updated gemspec
rake java:gem to build a binary jruby gem
Simple kqueue based process watching
Few more references to EM.watch
Ignore EM::FileWatch constants in rdoc
Rename various file watching apis and variables: EM.watch_file -> EM.watch_filename -> evma_watch_filename -> EventMachine_t::WatchFile -> EventMachine_t::Files[]
Conflicts:
lib/eventmachine.rb
commit 953cf4a8f062a5a7c63671cf17cb37662258ee5c
Author: raggi <jftucker@gmail.com>
Date: Thu Mar 19 02:05:55 2009 +0000
Added EM.schedule, EM::Channel and EM::Queue
commit 52853a241c3522356327a0dfe39efbc5dce94cfe
Author: Aman Gupta <aman@tmm1.net>
Date: Thu Mar 26 16:44:46 2009 -0700
Use write() instead of send() in ConnectionDescriptor::_WriteOutboundData
commit f3c1a1160f490068bbd4bf9fe2b1794c858548af
Author: Aman Gupta <aman@tmm1.net>
Date: Thu Mar 26 14:54:49 2009 -0700
Use read instead of recv in ConnectionDescriptor::Read (fixes EM.attach issues with pipes)
commit 5b0eec7543ef8b4811d4d307dff2729b9e9208cb
Author: Aman Gupta <aman@tmm1.net>
Date: Thu Mar 26 11:11:04 2009 -0700
Updated gemspec
commit 986e88bd3bafd51791ddfbde792459b6b58369ec
Author: raggi <jftucker@gmail.com>
Date: Thu Mar 26 15:30:02 2009 +0000
Add initialize for deferrable child process, saves error for silent subprocesses
commit 397c2eef75b2160099c8ba25eb07229f7e536c54
Author: Aman Gupta <aman@tmm1.net>
Date: Tue Mar 24 19:24:26 2009 -0700
Add example for Socket.unpack_sockaddr_in usage with get_peername
commit 18f5a4d72443de346fec92c5e08ff682d4383b1b
Author: Bob Potter <bobby.potter@gmail.com>
Date: Sun Mar 22 18:26:32 2009 -0500
Use false to indicated a cancelled timer instead of using an empty proc. Reduces mem usage in certain situations.
(The proc/closure could prevent objects in the enclosed environment from being GC'ed until timer is triggered)
Signed-off-by: Aman Gupta <aman@tmm1.net>
commit 5947ebd22aff1f8bc5a786707a6b3c8d26e5ca8b
Author: Aman Gupta <aman@tmm1.net>
Date: Sun Mar 22 02:18:04 2009 -0700
move README to top level (for gihtub)
commit 008bc7e0efe99aa5c4c015d1d1b2e6556653ccf0
Author: Aman Gupta <aman@tmm1.net>
Date: Thu Mar 19 00:43:44 2009 -0700
Updated gemspec
commit ff9b3d0c3a89de0db7ba0b09dfd4fe55d0dea30f
Author: Aman Gupta <aman@tmm1.net>
Date: Thu Mar 19 00:41:04 2009 -0700
rake java:gem to build a binary jruby gem
commit ad5ab5ae0fc38b08abd0456cbc1954fc68dbc4df
Author: Aman Gupta <aman@tmm1.net>
Date: Wed Mar 18 18:47:47 2009 -0700
Simple kqueue based process watching
commit 821bc57e7b0696b1c5aba416a64583cdfce99389
Author: Aman Gupta <aman@tmm1.net>
Date: Wed Mar 18 15:48:20 2009 -0700
Few more references to EM.watch
commit a2a3f00444a89b9d5912a797f339d59316af40ae
Author: Aman Gupta <aman@tmm1.net>
Date: Wed Mar 18 15:27:26 2009 -0700
Ignore EM::FileWatch constants in rdoc
commit 9baa105ef6955349854722b46b5a0d2ec8bdc75c
Author: Aman Gupta <aman@tmm1.net>
Date: Wed Mar 18 15:22:18 2009 -0700
Rename various file watching apis and variables: EM.watch_file -> EM.watch_filename -> evma_watch_filename -> EventMachine_t::WatchFile -> EventMachine_t::Files[]
commit faab3434af2fb3bc7166425e7da61851c46c70bc
Author: Eugene Pimenov <libc@mac.com>
Date: Sat Mar 7 17:19:37 2009 +0300
EventMachine#ssl? method, and skipping ssl tests if it's not available.
Signed-off-by: Aman Gupta <aman@tmm1.net>
commit dbe45be9be63e6e128b1df6a4c180805a31aa0ff
Author: raggi <jftucker@gmail.com>
Date: Tue Mar 17 02:43:26 2009 +0000
Update gemspec
commit 4058fe910a6a621f2e1071dde06df4c9b6c8aa3a
Author: Aman Gupta <aman@tmm1.net>
Date: Mon Mar 16 19:41:54 2009 -0700
Inotify fixes: file_delete only fires after fds have been closed, use syscall hackery for older linux distributions (*cough* debian)
commit 25d61be84ee9ef485035bb230724eb191c1ec48d
Merge: c89ce8c... 0259ee1...
Author: raggi <jftucker@gmail.com>
Date: Tue Mar 17 02:05:56 2009 +0000
Merge branch 'master' of git@github.com:eventmachine/eventmachine
* 'master' of git@github.com:eventmachine/eventmachine:
Added support for monitoring of individual files using inotify and kqueue.
commit c89ce8c7508a16b54d02e187976af61d5b24d684
Author: raggi <jftucker@gmail.com>
Date: Tue Mar 17 02:01:19 2009 +0000
Fix for my PostgresPR version
commit 0259ee1b8673364158f76db1437d5fadcc48d1b6
Author: Jake Douglas <jakecdouglas@gmail.com>
Date: Mon Mar 16 18:15:14 2009 -0700
Added support for monitoring of individual files using inotify and kqueue.
Signed-off-by: Aman Gupta <aman@tmm1.net>
commit 424a1c7a58f2a1274876be4189040281fe12cffa
Author: raggi <jftucker@gmail.com>
Date: Tue Mar 17 00:57:25 2009 +0000
Don't splash PostgresPR over Object
commit 8d2c887b017b51360afcc95f4dfdc4cbdecf77c7
Author: raggi <jftucker@gmail.com>
Date: Tue Mar 17 00:37:59 2009 +0000
update gemspec
commit 50cfa50b75add5713e3689eaf9a935e4902a29f4
Author: raggi <jftucker@gmail.com>
Date: Tue Mar 17 00:36:07 2009 +0000
rename filename to line up with autoload, and follow convention
commit 28fdba42a2b4cc2279d4337aff339d1091064b7d
Author: Aman Gupta <aman@tmm1.net>
Date: Sun Mar 15 23:13:30 2009 -0700
Add EM.kqueue= and EM.epoll=
commit bb05a9c81907425b3e29a783a015afcbd05d2489
Author: Aman Gupta <aman@tmm1.net>
Date: Sun Mar 15 16:43:30 2009 -0700
Allow setting EM.threadpool_size
commit f042ecee6a4a7ad76e9173ebf4a3554bdcb428ba
Author: Aman Gupta <aman@tmm1.net>
Date: Sun Mar 15 16:36:00 2009 -0700
Move FileNotFoundException into em/connection.rb
commit 6a96d7e405a9603fa6cd953b81d79638c9087f3b
Author: Aman Gupta <aman@tmm1.net>
Date: Sun Mar 15 16:34:53 2009 -0700
Fix some more spacing issues, and remove deprecated EM.run_without_threads
commit 38533772d0ee5611d9e560c6915e709f41f3ee57
Author: Aman Gupta <aman@tmm1.net>
Date: Sun Mar 15 16:27:56 2009 -0700
Updated EchoServer example from README
commit db8763d434a2b09296264f0bf7e865e4dc653987
Author: Aman Gupta <aman@tmm1.net>
Date: Sun Mar 15 16:19:16 2009 -0700
Add IRC info to README
commit cafba2a3fe5235d3802120c32acf0bec693826ef
Author: Aman Gupta <aman@tmm1.net>
Date: Sun Mar 15 16:06:43 2009 -0700
Clean up deferrable.rb: fixed rdoc, alias method wrappers, remove unnecessary forwardable
commit 702f031904e981e2c5d3a5f142eae93b558d5c50
Author: Aman Gupta <aman@tmm1.net>
Date: Sun Mar 15 15:31:37 2009 -0700
Updated gemspec
commit 81b6cfa658a0369ec8261258e757500412ae013e
Author: Aman Gupta <aman@tmm1.net>
Date: Sun Mar 15 15:19:55 2009 -0700
RDoc for reconnect methods
commit 1a50af61cb0b103ca3d4b0ed3cbde77787b0e9d9
Author: Aman Gupta <aman@tmm1.net>
Date: Sun Mar 15 15:16:17 2009 -0700
Move eventmachine_version to em/version.rb
commit 91fdc2505ba84103beb10da1b16c26edea102937
Author: Aman Gupta <aman@tmm1.net>
Date: Sun Mar 15 15:11:11 2009 -0700
Split out EM::Connection into em/connection.rb
commit ae7cf7c37d6bb78eddb0d36b60d94436124460aa
Author: Aman Gupta <aman@tmm1.net>
Date: Sun Mar 15 14:52:06 2009 -0700
Add ObjectProtocol
commit 9ecc1876dcea1ac82600092dfeaee3307246b176
Author: Aman Gupta <aman@tmm1.net>
Date: Sun Mar 15 14:50:40 2009 -0700
Split out eventmachine.rb into em/protocols.rb and em/timers.rb
commit dc58c30bcfec79508ade1988c864b85a80360d3a
Author: Aman Gupta <aman@tmm1.net>
Date: Sun Mar 15 14:43:44 2009 -0700
Convert tabs in lib/em/*.rb
commit dac738fac6b8fffe4653b5ad27e30ff05a185724
Author: Aman Gupta <aman@tmm1.net>
Date: Sun Mar 15 14:42:28 2009 -0700
Standardize eventmachine.rb with 2 space tabs and def self.method()
commit 710ad93c6832819e4f5836c3a42aa71f84e6d545
Author: Aman Gupta <aman@tmm1.net>
Date: Sun Mar 15 14:35:10 2009 -0700
FileStreamer: add rdoc and convert tabs to spaces
commit 8c235ac9a1e9c631842bb1aeb394a96b2776a811
Author: Aman Gupta <aman@tmm1.net>
Date: Sun Mar 15 14:34:11 2009 -0700
stomp protocol: add rdoc and convert tabs to spaces
commit 3acc188d8067bce3066d73de4ff2d4635142990e
Author: Aman Gupta <aman@tmm1.net>
Date: Sat Mar 14 14:45:22 2009 -0600
Move protocols into em/protocols
commit 12ff7759dbca4c02b4163596d62690c4a8864d54
Author: Aman Gupta <aman@tmm1.net>
Date: Sat Mar 14 14:32:33 2009 -0600
Documentation overhaul
commit 5a736a350f767b201013de81391c64d64530642b
Author: Aman Gupta <aman@tmm1.net>
Date: Sat Mar 14 14:27:47 2009 -0600
Pass response back to HttpClient2 request callbacks
commit db371780b12353519f707a2e29360198724a1032
Author: Aman Gupta <aman@tmm1.net>
Date: Fri Mar 13 17:10:05 2009 -0600
Set non-blocking mode on attached sockets
commit de5e5a18885530db905935e1f57b3682752961a3
Author: Aman Gupta <aman@tmm1.net>
Date: Sun Mar 8 21:15:19 2009 -0700
Version bump, 0.12.7 for repo builds
|