210 Commits
Author SHA1 Message Date
James Coglan 93dd655d6d Implement EventEmitter#on as a method that calls #add_listener instead of being an alias, so that overriding the latter affects the former. 0.1.0 2013-05-04 18:02:40 +01:00
James Coglan c9388b7627 Add a listener_count method to EventEmitter. 2013-05-04 18:00:17 +01:00
James Coglan c5526b1c09 Return false from websocket? unless the request method is GET. 2013-05-04 17:46:35 +01:00
James Coglan be1f1cdc35 Rename the module to websocket-driver. 2013-05-04 16:43:25 +01:00
James Coglan e274a521ef Convert doc files to Markdown. 2013-05-04 13:55:37 +01:00
James Coglan 9a28b3f90d Various bits of housekeeping. 2013-05-03 09:04:14 +01:00
James Coglan 86b3235e82 499 and 4999 are not the same number, James. 2013-05-02 01:25:12 +01:00
James Coglan f61a5e60f2 Add more robust error handling for Hybi and Client and emit error events when the protocol goes wrong. 2013-05-02 00:09:34 +01:00
James Coglan 38f0d2dca7 Remove the UTF-8 validation tests, let Autobahn deal with that. 2013-04-30 23:37:19 +01:00
James Coglan 7b0daf6f3c Implement the EventEmitter interface. 2013-04-30 08:53:33 +01:00
James Coglan 8855a0e720 Refer to the draft-76 request body as 'body' rather than 'head'. 2013-04-29 22:02:19 +01:00
James Coglan 8b975a0031 Return the protocol version from the Client handler. 2013-04-29 21:37:35 +01:00
James Coglan 38b19487c5 A few corrections I made while porting to Node. 2013-04-29 20:28:47 +01:00
James Coglan 080b5e3481 Refer to blocks as callbacks in the docs. 2013-04-29 07:34:09 +01:00
James Coglan 2662d43b08 Some small refactorings I spotted while porting this to Node. 2013-04-29 00:14:45 +01:00
James Coglan 1b6e521390 Replace old CHANGELOG. 0.0.0 2013-04-22 10:08:11 +02:00
James Coglan fff700d0b0 Change the gem description. 2013-04-22 10:07:03 +02:00
James Coglan b4d55643aa Set version to 0.0.0. 2013-04-22 10:05:29 +02:00
James Coglan 22e81d5303 Don't put test files in the gem. 2013-04-22 10:05:02 +02:00
James Coglan 24d3e2ec85 Change the server() method to rack(). 2013-04-21 18:25:41 +02:00
James Coglan 10da09afbd Always emit the empty string instead of nil as the closure reason in Hybi. 2013-04-20 22:04:24 +01:00
James Coglan 996afee493 Fix a couple of typos in the feature list. 2013-04-20 20:59:04 +01:00
James Coglan 12d8d8491b s/all/most/ 2013-04-20 19:51:12 +01:00
James Coglan 0997acd9f9 Document the handler.version and handler.protocol methods. 2013-04-20 19:50:20 +01:00
James Coglan 53e2d20877 Typo. 2013-04-20 19:47:26 +01:00
James Coglan bf148cda91 Rdoc doesn't like using + for code-ifying multi-word blocks. 2013-04-20 19:45:56 +01:00
James Coglan 5af19e1f1e Get wss: and ws: the right way round in the example. 2013-04-20 19:44:30 +01:00
James Coglan 9cfac60925 Documentation that's up to date. 2013-04-20 19:35:31 +01:00
James Coglan 787697dc59 Some more large renaming, this time putting everything inside the WebSocket::Protocol namespace. 2013-04-20 18:22:09 +01:00
James Coglan 948e6fb2e2 Switch to using event objects. 2013-04-20 15:17:21 +01:00
James Coglan eee225441e Empty the buffer once the whole handshake response has been received by the client, else HTTP headers are published as messages. 2013-04-20 14:56:44 +01:00
James Coglan 56dd161ee1 Add text() and binary() methods as sugar over frame(). 2013-04-20 13:59:16 +01:00
James Coglan 520fb66bf5 Fix a weird encoding-related test problem on MRI 2.0.0. 2013-04-20 13:04:36 +01:00
James Coglan 1be1a33eb1 Rename all of the things: Faye::WebSocket is now WebSocket::Protocol. 2013-04-20 13:00:25 +01:00
James Coglan 6c10dcf9b2 A big old refactoring with loads of new tests. API has been greatly simplified to remove knowledge of the protocol from the I/O adapter. 2013-04-20 12:17:08 +01:00
James Coglan 8cbcfa2026 Parser should actually use the options variable that's passed in. 2013-04-19 09:00:14 +01:00
James Coglan 87c934fd5a Make handshake_response private and provide a more abstrct start() method to tell the parser to begin responding. 2013-04-19 08:47:19 +01:00
James Coglan 18eb3e96f2 Refactor to reduce the coupling between the parser and the socket I/O object. 2013-04-15 09:05:52 +01:00
James Coglan 7fbb02335c Test on Rubinius on Travis CI. 2013-04-08 00:45:37 +01:00
James Coglan 653cf4f5c7 Treat the Connection and Upgrade headers case-insensitively, and fail gracefully when they are absent. 2013-04-07 23:31:37 +01:00
James Coglan 28a98755e0 List headers in alphabetical order. 2013-04-06 08:15:52 +01:00
James Coglan ece1c0f59d Document the server- and client- side setup process. 2013-04-06 08:13:51 +01:00
James Coglan 30f9802c1c Make the hybi parser able to accept arrays of bytes for parsing. 2013-04-06 08:13:35 +01:00
James Coglan 0fa5ed8d48 Move root library file so it doesn't conflict with faye-websocket. 2013-04-06 07:10:10 +01:00
James Coglan d72fa37dbc Remove links to API specs. 2013-04-05 09:16:55 +01:00
James Coglan 6d241a2421 Remove the examples directory, those require the I/O stack. 2013-04-05 09:15:39 +01:00
James Coglan 35e032aca4 Remove Faye::WebSocket docs. 2013-04-05 09:11:05 +01:00
James Coglan 6fd2c32b60 Strip the project down to just the parser classes. 2013-04-05 09:06:44 +01:00
James Coglan 1ac1bf27a9 Test on Ruby 2.0.0 on Travis. 2013-03-14 10:45:07 +00:00
James Coglan 2c9d2763d3 Make the Connection header case-insensitive. 2013-03-14 10:44:40 +00:00