firehose 1.2.13 → 1.2.20

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 6723069a09f7ecb056624cf408070f4376da2096
4
+ data.tar.gz: ee09bbe10757695dfd662a8252cd1acdfcb55f59
5
+ SHA512:
6
+ metadata.gz: d2717778ef3c3b3a7f172f3bd124b0bee58291a0597267c6ef820988530abd72800f14814b0b437b288b39f17f0bdc2d7baf0f2118d583181fe535438b1ea887
7
+ data.tar.gz: d9a9f73db80996bddfa9187b71a8fa21ee9a6186770a34f7ae2fa32dfec8b9ee9b411ef3211c3f8198c8ab805629b1fcf51cae55151ec25badeb674ea2368fbc
data/.rbenv-version CHANGED
@@ -1 +1 @@
1
- 1.9.3-p484
1
+ 2.1.2
@@ -1 +1,4 @@
1
- window.Firehose = {}
1
+ if module?.exports?
2
+ global.Firehose ||= {}
3
+ else
4
+ window.Firehose ||= {}
@@ -22,6 +22,8 @@ class Firehose.Consumer
22
22
  this
23
23
 
24
24
  connect: (delay=0) =>
25
+ promise = @_connectPromise()
26
+
25
27
  @config.connectionVerified = @_upgradeTransport
26
28
  if Firehose.WebSocket.supported()
27
29
  @upgradeTimeout = setTimeout =>
@@ -30,7 +32,8 @@ class Firehose.Consumer
30
32
  , 500
31
33
  @transport = new Firehose.LongPoll @config
32
34
  @transport.connect delay
33
- return
35
+
36
+ promise
34
37
 
35
38
  stop: =>
36
39
  if @upgradeTimeout?
@@ -44,3 +47,24 @@ class Firehose.Consumer
44
47
  ws.sendStartingMessageSequence @transport.getLastMessageSequence()
45
48
  @transport = ws
46
49
  return
50
+
51
+ # Return a promise that will succeed/fail depending on whether or not the
52
+ # initial connection succeeds.
53
+ _connectPromise: =>
54
+ deferred = $.Deferred()
55
+
56
+ origConnected = @config.connected
57
+ @config.connected = =>
58
+ deferred.resolve()
59
+ if origConnected
60
+ @config.connected = origConnected
61
+ origConnected()
62
+
63
+ # origDisconnected = @config.disconnected
64
+ # @config.disconnected = =>
65
+ # deferred.reject()
66
+ # if origDisconnected
67
+ # @config.disconnected = origDisconnected
68
+ # origDisconnected()
69
+
70
+ deferred.promise()
@@ -119,16 +119,29 @@ if $?.browser?.msie and parseInt($.browser.version, 10) in [8, 9]
119
119
  xdr.onload = xdr.onerror = xdr.ontimeout = jQuery.noop
120
120
  xdr = undefined
121
121
  complete status, statusText, responses, responseHeaders
122
+
122
123
  xdr = new XDomainRequest()
124
+
123
125
  xdr.open s.type, s.url
126
+
124
127
  xdr.onload = ->
125
128
  headers = "Content-Type: #{xdr.contentType}"
126
129
  callback 200, "OK", {text: xdr.responseText}, headers
130
+
127
131
  xdr.onerror = -> callback 404, "Not Found"
132
+
133
+ # This is critical for long poll to work in IE9.
134
+ # Without it, the initial request will work but
135
+ # subsequent requests will fail silently.
136
+ # http://social.msdn.microsoft.com/Forums/ie/en-US/30ef3add-767c-4436-b8a9-f1ca19b4812e/ie9-rtm-xdomainrequest-issued-requests-may-abort-if-all-event-handlers-not-specified?forum=iewebdevelopment
137
+ xdr.onprogress = -> {}
138
+
128
139
  if s.xdrTimeout?
129
140
  xdr.ontimeout = -> callback 0, "timeout"
130
141
  xdr.timeout = s.xdrTimeout
142
+
131
143
  xdr.send (s.hasContent and s.data) or null
144
+
132
145
  abort: ->
133
146
  if xdr?
134
147
  xdr.onerror = jQuery.noop()
@@ -5,7 +5,7 @@ class Firehose.WebSocket extends Firehose.Transport
5
5
  name: -> 'WebSocket'
6
6
 
7
7
  @ieSupported:-> (document.documentMode || 10) > 9
8
- @supported :-> window.WebSocket? # Check if WebSocket is an object in the window.
8
+ @supported :-> (if module?.exports? then global else window).WebSocket? # Check if WebSocket is an object in the window.
9
9
 
10
10
  constructor: (args) ->
11
11
  super args
@@ -17,7 +17,7 @@ class Firehose.WebSocket extends Firehose.Transport
17
17
  # Run this is a try/catch block because IE10 inside of a .NET control
18
18
  # complains about security zones.
19
19
  try
20
- @socket = new window.WebSocket "#{@_protocol()}:#{@config.uri}?#{$.param @config.params}"
20
+ @socket = new (if module?.exports? then global else window).WebSocket "#{@_protocol()}:#{@config.uri}?#{$.param @config.params}"
21
21
  @socket.onopen = @_open
22
22
  @socket.onclose = @_close
23
23
  @socket.onerror = @_error
data/lib/firehose.rb CHANGED
@@ -17,6 +17,3 @@ module Firehose
17
17
  # Default URI for the Firehose server. Consider the port "well-known" and bindable from other apps.
18
18
  URI = URI.parse("//0.0.0.0:7474").freeze
19
19
  end
20
-
21
- # Detect if Sprockets is loaded. If it is, lets configure Firehose to use it!
22
- Firehose::Assets::Sprockets.auto_detect
@@ -36,7 +36,7 @@ module Firehose
36
36
  ::Sprockets::Manifest.new(environment, directory)
37
37
  end
38
38
 
39
- # Try to automatically configure Sprockets if its detected in the project.
39
+ # Try to automatically configure Sprockets if it's detected in the project.
40
40
  def self.auto_detect
41
41
  if defined? ::Sprockets and ::Sprockets.respond_to? :append_path
42
42
  Firehose::Assets::Sprockets.configure ::Sprockets
@@ -51,3 +51,6 @@ module Firehose
51
51
  end
52
52
  end
53
53
  end
54
+
55
+ # Detect if Sprockets is loaded. If it is, lets configure Firehose to use it!
56
+ Firehose::Assets::Sprockets.auto_detect
@@ -9,7 +9,7 @@ module Firehose
9
9
  # Exception gets raised when a 202 is _not_ received from the server after a message is published.
10
10
  PublishError = Class.new(RuntimeError)
11
11
  TimeoutError = Class.new(Faraday::Error::TimeoutError)
12
- Timeout = 1 # How many seconds should we wait for a publish to take?
12
+ DEFAULT_TIMEOUT = 1 # How many seconds should we wait for a publish to take?
13
13
 
14
14
  # A DSL for publishing requests. This doesn't so much, but lets us call
15
15
  # Firehose::Client::Producer::Http#publish('message').to('channel'). Slick eh? If you don't like it,
@@ -26,11 +26,12 @@ module Firehose
26
26
  end
27
27
 
28
28
  # URI for the Firehose server. This URI does not include the path of the channel.
29
- attr_reader :uri
29
+ attr_reader :uri, :timeout
30
30
 
31
- def initialize(uri = Firehose::URI)
31
+ def initialize(uri = Firehose::URI, timeout=DEFAULT_TIMEOUT)
32
32
  @uri = ::URI.parse(uri.to_s)
33
33
  @uri.scheme ||= 'http'
34
+ @timeout = timeout
34
35
  end
35
36
 
36
37
  # A DSL for publishing messages.
@@ -41,7 +42,7 @@ module Firehose
41
42
  # Publish the message via HTTP.
42
43
  def put(message, channel, opts, &block)
43
44
  ttl = opts[:ttl]
44
- timeout = opts[:timeout] || Timeout
45
+ timeout = opts[:timeout] || @timeout || DEFAULT_TIMEOUT
45
46
 
46
47
  response = conn.put do |req|
47
48
  req.options[:timeout] = timeout
@@ -32,7 +32,7 @@ module Firehose
32
32
  end
33
33
 
34
34
  # Subscribe the client to the channel on the server. Asks for
35
- # the last sequence for clients that reconnect.
35
+ # the last sequence for clients that reconnect.
36
36
  def subscribe(last_sequence)
37
37
  @subscribed = true
38
38
  @channel = Server::Channel.new @req.path
@@ -62,7 +62,7 @@ module Firehose
62
62
  end
63
63
  end
64
64
 
65
- # Log a message that the client has connected.
65
+ # Log a message that the client has connected.
66
66
  def open(event)
67
67
  Firehose.logger.debug "WebSocket subscribed to `#{@req.path}`. Waiting for message_sequence..."
68
68
  end
@@ -80,10 +80,10 @@ module Firehose
80
80
  # Log errors if a socket fails. `close` will fire after this to clean up any
81
81
  # remaining connectons.
82
82
  def error(event)
83
- Firehose.logger.error "WS connection `#{@req.path}` error. Message: `#{event.message.inspect}`; Data: `#{event.data.inspect}`"
83
+ Firehose.logger.error "WS connection `#{@req.path}` error. Message: `#{event.message.inspect}`"
84
84
  end
85
85
 
86
- # Wrap a message in a sequence so that the client can record this and give us
86
+ # Wrap a message in a sequence so that the client can record this and give us
87
87
  # the sequence when it reconnects.
88
88
  def self.wrap_frame(message, last_sequence)
89
89
  JSON.generate :message => message, :last_sequence => last_sequence
@@ -92,4 +92,4 @@ module Firehose
92
92
  end
93
93
  end
94
94
  end
95
- end
95
+ end
@@ -1,4 +1,4 @@
1
1
  module Firehose
2
- VERSION = "1.2.13"
3
- CODENAME = "Larger Sprocket"
2
+ VERSION = "1.2.20"
3
+ CODENAME = "Onprogress of Doom"
4
4
  end
data/package.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
2
  "name": "firehose",
3
- "version": "1.2.12",
3
+ "version": "1.2.20",
4
4
  "main": "lib/assets/javascripts/firehose.js.coffee"
5
- }
5
+ }
@@ -21,14 +21,15 @@ describe Firehose::Assets do
21
21
 
22
22
  describe "Sprockets.javascript" do
23
23
  let(:js_spot_checks) do
24
- %w[
25
- Firehose.Transport
26
- Firehose.version
27
- window.Firehose
24
+ [
25
+ "Firehose.Transport",
26
+ "Firehose.version",
27
+ "global.Firehose || (global.Firehose = {})",
28
+ "window.Firehose || (window.Firehose = {})"
28
29
  ]
29
30
  end
30
31
  it "should compile javascript" do
31
32
  Firehose::Assets::Sprockets.javascript.should include(*js_spot_checks)
32
33
  end
33
34
  end
34
- end
35
+ end
metadata CHANGED
@@ -1,8 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: firehose
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.13
5
- prerelease:
4
+ version: 1.2.20
6
5
  platform: ruby
7
6
  authors:
8
7
  - Brad Gessler
@@ -12,406 +11,356 @@ authors:
12
11
  autorequire:
13
12
  bindir: bin
14
13
  cert_chain: []
15
- date: 2014-07-10 00:00:00.000000000 Z
14
+ date: 2014-09-24 00:00:00.000000000 Z
16
15
  dependencies:
17
16
  - !ruby/object:Gem::Dependency
18
17
  name: eventmachine
19
18
  requirement: !ruby/object:Gem::Requirement
20
- none: false
21
19
  requirements:
22
- - - ! '>='
20
+ - - ">="
23
21
  - !ruby/object:Gem::Version
24
22
  version: 1.0.0
25
23
  type: :runtime
26
24
  prerelease: false
27
25
  version_requirements: !ruby/object:Gem::Requirement
28
- none: false
29
26
  requirements:
30
- - - ! '>='
27
+ - - ">="
31
28
  - !ruby/object:Gem::Version
32
29
  version: 1.0.0
33
30
  - !ruby/object:Gem::Dependency
34
31
  name: em-hiredis
35
32
  requirement: !ruby/object:Gem::Requirement
36
- none: false
37
33
  requirements:
38
- - - ! '>='
34
+ - - ">="
39
35
  - !ruby/object:Gem::Version
40
36
  version: 0.2.0
41
37
  type: :runtime
42
38
  prerelease: false
43
39
  version_requirements: !ruby/object:Gem::Requirement
44
- none: false
45
40
  requirements:
46
- - - ! '>='
41
+ - - ">="
47
42
  - !ruby/object:Gem::Version
48
43
  version: 0.2.0
49
44
  - !ruby/object:Gem::Dependency
50
45
  name: thor
51
46
  requirement: !ruby/object:Gem::Requirement
52
- none: false
53
47
  requirements:
54
- - - ! '>='
48
+ - - ">="
55
49
  - !ruby/object:Gem::Version
56
50
  version: '0'
57
51
  type: :runtime
58
52
  prerelease: false
59
53
  version_requirements: !ruby/object:Gem::Requirement
60
- none: false
61
54
  requirements:
62
- - - ! '>='
55
+ - - ">="
63
56
  - !ruby/object:Gem::Version
64
57
  version: '0'
65
58
  - !ruby/object:Gem::Dependency
66
59
  name: faraday
67
60
  requirement: !ruby/object:Gem::Requirement
68
- none: false
69
61
  requirements:
70
- - - ! '>='
62
+ - - ">="
71
63
  - !ruby/object:Gem::Version
72
64
  version: '0'
73
65
  type: :runtime
74
66
  prerelease: false
75
67
  version_requirements: !ruby/object:Gem::Requirement
76
- none: false
77
68
  requirements:
78
- - - ! '>='
69
+ - - ">="
79
70
  - !ruby/object:Gem::Version
80
71
  version: '0'
81
72
  - !ruby/object:Gem::Dependency
82
73
  name: faye-websocket
83
74
  requirement: !ruby/object:Gem::Requirement
84
- none: false
85
75
  requirements:
86
- - - ! '>='
76
+ - - ">="
87
77
  - !ruby/object:Gem::Version
88
78
  version: '0'
89
79
  type: :runtime
90
80
  prerelease: false
91
81
  version_requirements: !ruby/object:Gem::Requirement
92
- none: false
93
82
  requirements:
94
- - - ! '>='
83
+ - - ">="
95
84
  - !ruby/object:Gem::Version
96
85
  version: '0'
97
86
  - !ruby/object:Gem::Dependency
98
87
  name: em-http-request
99
88
  requirement: !ruby/object:Gem::Requirement
100
- none: false
101
89
  requirements:
102
- - - ! '>='
90
+ - - ">="
103
91
  - !ruby/object:Gem::Version
104
92
  version: 1.0.0
105
93
  type: :runtime
106
94
  prerelease: false
107
95
  version_requirements: !ruby/object:Gem::Requirement
108
- none: false
109
96
  requirements:
110
- - - ! '>='
97
+ - - ">="
111
98
  - !ruby/object:Gem::Version
112
99
  version: 1.0.0
113
100
  - !ruby/object:Gem::Dependency
114
101
  name: json
115
102
  requirement: !ruby/object:Gem::Requirement
116
- none: false
117
103
  requirements:
118
- - - ! '>='
104
+ - - ">="
119
105
  - !ruby/object:Gem::Version
120
106
  version: '0'
121
107
  type: :runtime
122
108
  prerelease: false
123
109
  version_requirements: !ruby/object:Gem::Requirement
124
- none: false
125
110
  requirements:
126
- - - ! '>='
111
+ - - ">="
127
112
  - !ruby/object:Gem::Version
128
113
  version: '0'
129
114
  - !ruby/object:Gem::Dependency
130
115
  name: rack
131
116
  requirement: !ruby/object:Gem::Requirement
132
- none: false
133
117
  requirements:
134
- - - ! '>='
118
+ - - ">="
135
119
  - !ruby/object:Gem::Version
136
120
  version: '0'
137
121
  type: :runtime
138
122
  prerelease: false
139
123
  version_requirements: !ruby/object:Gem::Requirement
140
- none: false
141
124
  requirements:
142
- - - ! '>='
125
+ - - ">="
143
126
  - !ruby/object:Gem::Version
144
127
  version: '0'
145
128
  - !ruby/object:Gem::Dependency
146
129
  name: rspec
147
130
  requirement: !ruby/object:Gem::Requirement
148
- none: false
149
131
  requirements:
150
- - - ~>
132
+ - - "~>"
151
133
  - !ruby/object:Gem::Version
152
134
  version: '2'
153
135
  type: :development
154
136
  prerelease: false
155
137
  version_requirements: !ruby/object:Gem::Requirement
156
- none: false
157
138
  requirements:
158
- - - ~>
139
+ - - "~>"
159
140
  - !ruby/object:Gem::Version
160
141
  version: '2'
161
142
  - !ruby/object:Gem::Dependency
162
143
  name: webmock
163
144
  requirement: !ruby/object:Gem::Requirement
164
- none: false
165
145
  requirements:
166
- - - ! '>='
146
+ - - ">="
167
147
  - !ruby/object:Gem::Version
168
148
  version: '0'
169
149
  type: :development
170
150
  prerelease: false
171
151
  version_requirements: !ruby/object:Gem::Requirement
172
- none: false
173
152
  requirements:
174
- - - ! '>='
153
+ - - ">="
175
154
  - !ruby/object:Gem::Version
176
155
  version: '0'
177
156
  - !ruby/object:Gem::Dependency
178
157
  name: coffee-script
179
158
  requirement: !ruby/object:Gem::Requirement
180
- none: false
181
159
  requirements:
182
- - - ! '>='
160
+ - - ">="
183
161
  - !ruby/object:Gem::Version
184
162
  version: '0'
185
163
  type: :development
186
164
  prerelease: false
187
165
  version_requirements: !ruby/object:Gem::Requirement
188
- none: false
189
166
  requirements:
190
- - - ! '>='
167
+ - - ">="
191
168
  - !ruby/object:Gem::Version
192
169
  version: '0'
193
170
  - !ruby/object:Gem::Dependency
194
171
  name: guard-rspec
195
172
  requirement: !ruby/object:Gem::Requirement
196
- none: false
197
173
  requirements:
198
- - - ! '>='
174
+ - - ">="
199
175
  - !ruby/object:Gem::Version
200
176
  version: '0'
201
177
  type: :development
202
178
  prerelease: false
203
179
  version_requirements: !ruby/object:Gem::Requirement
204
- none: false
205
180
  requirements:
206
- - - ! '>='
181
+ - - ">="
207
182
  - !ruby/object:Gem::Version
208
183
  version: '0'
209
184
  - !ruby/object:Gem::Dependency
210
185
  name: guard-bundler
211
186
  requirement: !ruby/object:Gem::Requirement
212
- none: false
213
187
  requirements:
214
- - - ! '>='
188
+ - - ">="
215
189
  - !ruby/object:Gem::Version
216
190
  version: '0'
217
191
  type: :development
218
192
  prerelease: false
219
193
  version_requirements: !ruby/object:Gem::Requirement
220
- none: false
221
194
  requirements:
222
- - - ! '>='
195
+ - - ">="
223
196
  - !ruby/object:Gem::Version
224
197
  version: '0'
225
198
  - !ruby/object:Gem::Dependency
226
199
  name: guard-coffeescript
227
200
  requirement: !ruby/object:Gem::Requirement
228
- none: false
229
201
  requirements:
230
- - - ! '>='
202
+ - - ">="
231
203
  - !ruby/object:Gem::Version
232
204
  version: '0'
233
205
  type: :development
234
206
  prerelease: false
235
207
  version_requirements: !ruby/object:Gem::Requirement
236
- none: false
237
208
  requirements:
238
- - - ! '>='
209
+ - - ">="
239
210
  - !ruby/object:Gem::Version
240
211
  version: '0'
241
212
  - !ruby/object:Gem::Dependency
242
213
  name: guard-copy
243
214
  requirement: !ruby/object:Gem::Requirement
244
- none: false
245
215
  requirements:
246
- - - ! '>='
216
+ - - ">="
247
217
  - !ruby/object:Gem::Version
248
218
  version: '0'
249
219
  type: :development
250
220
  prerelease: false
251
221
  version_requirements: !ruby/object:Gem::Requirement
252
- none: false
253
222
  requirements:
254
- - - ! '>='
223
+ - - ">="
255
224
  - !ruby/object:Gem::Version
256
225
  version: '0'
257
226
  - !ruby/object:Gem::Dependency
258
227
  name: rainbows
259
228
  requirement: !ruby/object:Gem::Requirement
260
- none: false
261
229
  requirements:
262
- - - ~>
230
+ - - "~>"
263
231
  - !ruby/object:Gem::Version
264
232
  version: 4.4.3
265
233
  type: :development
266
234
  prerelease: false
267
235
  version_requirements: !ruby/object:Gem::Requirement
268
- none: false
269
236
  requirements:
270
- - - ~>
237
+ - - "~>"
271
238
  - !ruby/object:Gem::Version
272
239
  version: 4.4.3
273
240
  - !ruby/object:Gem::Dependency
274
241
  name: thin
275
242
  requirement: !ruby/object:Gem::Requirement
276
- none: false
277
243
  requirements:
278
- - - ! '>='
244
+ - - ">="
279
245
  - !ruby/object:Gem::Version
280
246
  version: '0'
281
247
  type: :development
282
248
  prerelease: false
283
249
  version_requirements: !ruby/object:Gem::Requirement
284
- none: false
285
250
  requirements:
286
- - - ! '>='
251
+ - - ">="
287
252
  - !ruby/object:Gem::Version
288
253
  version: '0'
289
254
  - !ruby/object:Gem::Dependency
290
255
  name: rack-test
291
256
  requirement: !ruby/object:Gem::Requirement
292
- none: false
293
257
  requirements:
294
- - - ! '>='
258
+ - - ">="
295
259
  - !ruby/object:Gem::Version
296
260
  version: '0'
297
261
  type: :development
298
262
  prerelease: false
299
263
  version_requirements: !ruby/object:Gem::Requirement
300
- none: false
301
264
  requirements:
302
- - - ! '>='
265
+ - - ">="
303
266
  - !ruby/object:Gem::Version
304
267
  version: '0'
305
268
  - !ruby/object:Gem::Dependency
306
269
  name: async_rack_test
307
270
  requirement: !ruby/object:Gem::Requirement
308
- none: false
309
271
  requirements:
310
- - - ! '>='
272
+ - - ">="
311
273
  - !ruby/object:Gem::Version
312
274
  version: '0'
313
275
  type: :development
314
276
  prerelease: false
315
277
  version_requirements: !ruby/object:Gem::Requirement
316
- none: false
317
278
  requirements:
318
- - - ! '>='
279
+ - - ">="
319
280
  - !ruby/object:Gem::Version
320
281
  version: '0'
321
282
  - !ruby/object:Gem::Dependency
322
283
  name: foreman
323
284
  requirement: !ruby/object:Gem::Requirement
324
- none: false
325
285
  requirements:
326
- - - ! '>='
286
+ - - ">="
327
287
  - !ruby/object:Gem::Version
328
288
  version: '0'
329
289
  type: :development
330
290
  prerelease: false
331
291
  version_requirements: !ruby/object:Gem::Requirement
332
- none: false
333
292
  requirements:
334
- - - ! '>='
293
+ - - ">="
335
294
  - !ruby/object:Gem::Version
336
295
  version: '0'
337
296
  - !ruby/object:Gem::Dependency
338
297
  name: sprockets
339
298
  requirement: !ruby/object:Gem::Requirement
340
- none: false
341
299
  requirements:
342
- - - ! '>='
300
+ - - ">="
343
301
  - !ruby/object:Gem::Version
344
302
  version: '0'
345
303
  type: :development
346
304
  prerelease: false
347
305
  version_requirements: !ruby/object:Gem::Requirement
348
- none: false
349
306
  requirements:
350
- - - ! '>='
307
+ - - ">="
351
308
  - !ruby/object:Gem::Version
352
309
  version: '0'
353
310
  - !ruby/object:Gem::Dependency
354
311
  name: rake
355
312
  requirement: !ruby/object:Gem::Requirement
356
- none: false
357
313
  requirements:
358
- - - ! '>='
314
+ - - ">="
359
315
  - !ruby/object:Gem::Version
360
316
  version: '0'
361
317
  type: :development
362
318
  prerelease: false
363
319
  version_requirements: !ruby/object:Gem::Requirement
364
- none: false
365
320
  requirements:
366
- - - ! '>='
321
+ - - ">="
367
322
  - !ruby/object:Gem::Version
368
323
  version: '0'
369
324
  - !ruby/object:Gem::Dependency
370
325
  name: evergreen
371
326
  requirement: !ruby/object:Gem::Requirement
372
- none: false
373
327
  requirements:
374
- - - ! '>='
328
+ - - ">="
375
329
  - !ruby/object:Gem::Version
376
330
  version: '0'
377
331
  type: :development
378
332
  prerelease: false
379
333
  version_requirements: !ruby/object:Gem::Requirement
380
- none: false
381
334
  requirements:
382
- - - ! '>='
335
+ - - ">="
383
336
  - !ruby/object:Gem::Version
384
337
  version: '0'
385
338
  - !ruby/object:Gem::Dependency
386
339
  name: capybara-webkit
387
340
  requirement: !ruby/object:Gem::Requirement
388
- none: false
389
341
  requirements:
390
- - - ! '>='
342
+ - - ">="
391
343
  - !ruby/object:Gem::Version
392
344
  version: '0'
393
345
  type: :development
394
346
  prerelease: false
395
347
  version_requirements: !ruby/object:Gem::Requirement
396
- none: false
397
348
  requirements:
398
- - - ! '>='
349
+ - - ">="
399
350
  - !ruby/object:Gem::Version
400
351
  version: '0'
401
352
  - !ruby/object:Gem::Dependency
402
353
  name: therubyracer
403
354
  requirement: !ruby/object:Gem::Requirement
404
- none: false
405
355
  requirements:
406
- - - ! '>='
356
+ - - ">="
407
357
  - !ruby/object:Gem::Version
408
358
  version: '0'
409
359
  type: :development
410
360
  prerelease: false
411
361
  version_requirements: !ruby/object:Gem::Requirement
412
- none: false
413
362
  requirements:
414
- - - ! '>='
363
+ - - ">="
415
364
  - !ruby/object:Gem::Version
416
365
  version: '0'
417
366
  description: Firehose is a realtime web application toolkit for building realtime
@@ -426,11 +375,11 @@ executables:
426
375
  extensions: []
427
376
  extra_rdoc_files: []
428
377
  files:
429
- - .env.sample
430
- - .gitignore
431
- - .rbenv-version
432
- - .rspec
433
- - .travis.yml
378
+ - ".env.sample"
379
+ - ".gitignore"
380
+ - ".rbenv-version"
381
+ - ".rspec"
382
+ - ".travis.yml"
434
383
  - Gemfile
435
384
  - Guardfile
436
385
  - LICENSE.txt
@@ -500,33 +449,26 @@ files:
500
449
  homepage: http://firehose.io/
501
450
  licenses:
502
451
  - MIT
452
+ metadata: {}
503
453
  post_install_message:
504
454
  rdoc_options: []
505
455
  require_paths:
506
456
  - lib
507
457
  required_ruby_version: !ruby/object:Gem::Requirement
508
- none: false
509
458
  requirements:
510
- - - ! '>='
459
+ - - ">="
511
460
  - !ruby/object:Gem::Version
512
461
  version: '0'
513
- segments:
514
- - 0
515
- hash: -2325790275030245619
516
462
  required_rubygems_version: !ruby/object:Gem::Requirement
517
- none: false
518
463
  requirements:
519
- - - ! '>='
464
+ - - ">="
520
465
  - !ruby/object:Gem::Version
521
466
  version: '0'
522
- segments:
523
- - 0
524
- hash: -2325790275030245619
525
467
  requirements: []
526
468
  rubyforge_project: firehose
527
- rubygems_version: 1.8.23
469
+ rubygems_version: 2.2.2
528
470
  signing_key:
529
- specification_version: 3
471
+ specification_version: 4
530
472
  summary: Build realtime Ruby web applications
531
473
  test_files:
532
474
  - spec/integrations/integration_test_helper.rb