Revision 626, 5.6 kB (checked in by blackhedd, 11 months ago)

implemented kqueue support

1 # $Id$
2 #
3 #
5 #-------------------------------------------------------------
6 01Oct06: Replaced EventMachine#open_datagram_server with a version that can take
7 a Class or a Module, instead of just a Module. Thanks to Tobias Gustafsson for
8 pointing out the missing case.
10 04Oct06: Supported subsecond timer resolutions, per request by Jason Roelofs.
11 05Oct06: Added EventMachine#set_quantum, which sets the timer resolution.
12 15Nov06: Added Connection#set_comm_inactivity_timeout.
13 15Nov06: Checked in a Line-and-Text Protocol Handler.
14 18Nov06: Checked in a Header-and-Body Protocol Handler.
15 22Nov06: Changed EventMachine#reconnect: no longer excepts when called on an
16          already-connected handler.
17 28Nov06: Supported a binary-unix gem.
18 19Dec06: Added EventMachine#set_effective_user.
19 05Jan07: Upped max outstanding timers to 1000.
20 15May07: Applied Solaris patches from Brett Eisenberg
21 22May07: Cleaned up the license text in all the source files.
22 22May07: Released version 0.7.2
24 23May07: Per suggestion from Bill Kelly, fixed a bug with the initialization
25         of the network libraries under Windows. The goal is to enable EM to
26         be used without Ruby.
27 28May07: Applied patch from Bill Kelly, refactors the declarations of
28         event names to make EM easier to use from C programs without Ruby.
29 31May07: Added a preliminary implementation of EventMachine#popen.
30 01Jun07: Added EM, a "pseudo-alias" for EventMachine.
31 01Jun07: Added EM#next_tick.
32 01Jun07: Added EM::Connection#get_outbound_data_size
33 05Jun07: Removed the code which loads a pure-Ruby EM library in case the
34         compiled extension is unavailable. Suggested by Moshe Litvin.
35 06Jun07: Preliminary epoll implementation.
36 12Jun07: Added an evented popen implementation that, like Ruby's, is
37         full-duplex and makes the subprocess PID available to the caller.
38 06Jul07: Performance-tweaked the callback dispatcher in eventmachine.rb.
39 10Jul07: Released version 0.8.0.
40 12Jul07: Applied patches from Tim Pease to fix Solaris build problems.
41 15Jul07: Created a new provisional source branch, experiments/jruby-1.
42         This is a preliminary implementation of the EM reactor in Java,
43         suitable for use with JRuby.
44 17Jul07: Added EventMachine#stop_server, per request from Kirk Haines,
45         and associated unit tests.
46 22Jul07: Added EventMachine#stream_file_data. This is a very fast and scalable
47         way of sending data from static files over network connections. It
48         has separate implementations for small files and large file, and
49         has tunings to minimize memory consumption.
50 26Jul07: Added some patches by Kirk Haines to improve the behavior of
51         EM::Connection#send_file_data_to_connection.
52 26Jul07: Added a C++ module for directly integrating EM into C++ programs
53         with no Ruby dependencies. Needs example code.
54 29Jul07: Added EventMachine::Protocols::LineText2.
55 29Jul07: Added EventMachine::Protocols::Stomp.
56 30Jul07: Added sys/stat.h to project.h to fix compilation bug on Darwin.
57 13Aug07: Added EventMachine#reactor_running?
58 15Aug07: Added parameters for EventMachine::Connection:start_tls that can be
59         used to specify client-side private keys and certificates.
60 17Aug07: Added EventMachine#run_block, a sugaring for a common use case.
61 24Aug07: Added a preliminary keyboard handler. Needs docs and testing on
62         windows.
63 26Aug07: Created EventMachine::Spawnable, an implementation of Erlang-like
64         processes.
65 27Aug07: Silenced some -w warnings, requested by James Edward Gray II.
66 30Aug07: Added cookies to EM::HttpClient#request.
67 04Sep07: Added an initial implementation of an evented SMTP client.
68 04Sep07: Added an initial implementation of an evented SMTP server.
69 10Sep07: Changed EM#spawn to run spawned blocks in the context of the
70         SpawnedProcess object, not of whatever was the active object at the
71         time of the spawn.
72 14Sep07: Heartbeats weren't working with EPOLL. Noticed by Brian Candler.
73 15Sep07: Added some features, tests and documents to Deferrable.
74 16Sep07: Added [:content] parameter to EM::Protocols::SmtpClient#send.
75 16Sep07: Bumped version to 0.9.0 in anticipation of a release.
76 18Sep07: Released version 0.9.0.
77 19Sep07: Added #receive_reset to EM::Protocols::SmtpServer.
78 19Sep07: User overrides of EM::Protocols::SmtpServer#receive_recipient can now
79         return a Deferrable. Also fixed bug: SmtpClient now raises a protocol
80         error if none of its RCPT TO: commands are accepted by the server.
81 26Sep07: Fixed missing keyboard support for Windows.
82 03Oct07: Added a default handler for RuntimeErrors emitted from user-written
83         code. Suggested by Brian Candler.
84 19Oct07: Set the SO_BROADCAST option automatically on all UDP sockets.
85 10Nov07: Forced integer conversion of send_datagram's port parameter.
86 Suggested by Matthieu Riou.
87 12Nov07: Added saslauth.rb, a protocol module to replace the Cyrus SASL
88 daemons saslauthd and pwcheck.
89 15Nov07: Fixed bug reported by Mark Zvillius. We were failing to dispatch
90         zero-length datagrams under certain conditions.
91 19Nov07: Added EventMachine#set_max_timers. Requested by Matthieu Riou and
92         others.
93 19Nov07: Fixed bug with EM::Connection#start_tls. Was not working with server
94         connections. Reported by Michael S. Fischer.
95 26Nov07: Supported a hack for EventMachine#popen so it can return an exit
96         status from subprocesses. Requested by Michael S. Fischer.
97 30Nov07: Changed Pipe descriptors so that the child-side of the socketpair is
98         NOT set nonblocking. Suggested by Duane Johnson.
99 05Dec07: Re-enabled the pure-Ruby implementation.
100 06Dec07: Released Version 0.10.0.
101 13Dec07: Added EM::DeferrableChildProcess
102 24Dec07: Added a SASL client for simple password authentication.
103 27Dec07: Removed the hookable error handler. No one was using it and it significantly
104         degraded performance.
105 30Dec07: Implemented Kqueue support for OSX and BSD.
Note: See TracBrowser for help on using the browser.