/
History.txt
141 lines (88 loc) · 4.7 KB
/
History.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
=== 0.6.1 / 2011-06-06
TestSwarm build: http://swarm.jcoglan.com/job/37/
* Fix cross-origin-long-polling support in RackAdapter
* Plug some potential memory leaks in Memory engine
=== 0.6.0 / 2011-05-21
TestSwarm build: http://swarm.jcoglan.com/job/27/
* Extract core logic into the Engine class to support swappable backends
* Introduce a Redis-backed engine to support clustered web front-ends
* Use CORS for cross-domain long-polling
* Make server more resilient against bad requests, including empty message lists
* Perform subscription validation on the server and use errbacks to signal errors
* Prohibit publishing to wildcard channels
* Unsubscribing from a channel is now O(1) instead of O(N)
* Much more thorough and consistent unit test coverage of both versions
* Automatic integration tests using Terminus and TestSwarm
=== 0.5.5 / 2011-01-16
* Open a real socket to check for WebSocket usability, not just object detection
* Catch server-side errors when handshaking with WebSockets
=== 0.5.4 / 2010-12-19
* Add a #callback method to Subscriptions to detect when they become active
* Add :extensions option to RackAdapter to make it easier to extend middleware
* Detect secure WebSocket requests through the HTTP_X_FORWARDED_PROTO header
* Handle socket errors when sending WebSocket messages from NodeAdapter
* Use exponential backoff to reconnect client-side WebSockets to reduce CPU load
=== 0.5.3 / 2010-10-21
* Improve detection of wss: requirement for secure WebSocket connections
* Correctly use default ports (80,443) for server-side HTTP connections
* Support legacy application/x-www-form-urlencoded POST requests
* Delete unused Channel objects that have all their subscribers removed
* Fix resend/reconnect logic in WebSocket transport
* Keep client script in memory rather than reading it from disk every time
* Prevent error-adding extensions from breaking the core protocol
=== 0.5.2 / 2010-08-12
* Support draft-76 of the WebSocket protocol (FF4, Chrome 6)
* Reduce Connection::MAX_DELAY to improve latency
=== 0.5.1 / 2010-07-21
* Fix a publishing problem in Ruby LocalTransport
=== 0.5.0 / 2010-07-17
* Handle multiple event listeners bound to a channel
* Add extension system for adding domain-specific logic to the protocol
* Improve handling of client reconnections if the server goes down
* Change default polling interval to 0 (immediate reconnect)
* Add support for WebSockets (draft75 only) as a network transport
* Remove support for Ruby servers other than Thin
* Make client and server compatible with CometD (1.x and 2.0) components
* Improve clean-up of unused server-side connections
* Change Node API for adding Faye service to an HTTP server
=== 0.3.4 / 2010-06-20
* Stop local clients going into an infinite loop if a subscription block causes a reconnect
=== 0.3.3 / 2010-06-07
* Bring Node APIs up to date with 0.1.97
* Catch ECONNREFUSED errors in Node clients to withstand server outages
* Refactor the Server internals
=== 0.3.2 / 2010-04-04
* Fix problems with JSON serialization when Prototype, MooTools present
* Make the client reconnect if it doesn't hear from the server after a timeout
* Stop JavaScript server returning NaN for advice.interval
* Make Ruby server return an integer for advice.interval
* Ensure EventMachine is running before handling messages
* Handle 'data' and 'end' events properly in Node HTTP API
* Switch to application/json for content types and stop using querystring format in POST bodies
* Respond to any URL path under the mount point, not just the exact match
=== 0.3.1 / 2010-03-09
* Pass client down through Rack stack as env['faye.client']
* Refactor some JavaScript internals to mirror Ruby codebase
=== 0.3.0 / 2010-03-01
* Add server-side clients for Node.js and Ruby environments
* Clients support both HTTP and in-process transports
* Fix ID generation in JavaScript version to 128-bit IDs
* Fix bug in interpretation of ** channel wildcard
* Users don't have to call #connect() on clients any more
* Fix timeout race conditions that were killing active connections
* Support new Node APIs from 0.1.29.
=== 0.2.2 / 2010-02-10
* Kick out requests with malformed JSON as 400s
=== 0.2.1 / 2010-02-04
* Fix server-side flushing of callback-polling connections
* Backend can be used cross-domain if running on Node or Thin
=== 0.2.0 / 2010-02-02
* Port server to JavaScript with an adapter for Node.js
* Support Thin's async responses in the Ruby version for complete non-blocking
* Fix some minor client-side bugs in transport choice
=== 0.1.1 / 2009-07-26
* Fix a broken client build
=== 0.1.0 / 2009-06-15
* Ruby Bayeux server and Rack adapter
* Internally evented using EventMachine, web frontend blocks
* JavaScript client with long-polling and callback-polling