ably-rest 1.2.2 → 1.2.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +1 -0
- data/ably-rest.gemspec +1 -1
- data/lib/submodules/ably-ruby/.ably/capabilities.yaml +112 -0
- data/lib/submodules/ably-ruby/.github/workflows/check.yml +13 -3
- data/lib/submodules/ably-ruby/.github/workflows/docs.yml +36 -0
- data/lib/submodules/ably-ruby/.github/workflows/features.yml +14 -0
- data/lib/submodules/ably-ruby/.rspec_parallel +3 -0
- data/lib/submodules/ably-ruby/CHANGELOG.md +26 -0
- data/lib/submodules/ably-ruby/INTRO.md +14 -0
- data/lib/submodules/ably-ruby/README.md +2 -0
- data/lib/submodules/ably-ruby/lib/ably/auth.rb +26 -23
- data/lib/submodules/ably-ruby/lib/ably/models/auth_details.rb +9 -6
- data/lib/submodules/ably-ruby/lib/ably/models/channel_details.rb +15 -5
- data/lib/submodules/ably-ruby/lib/ably/models/channel_metrics.rb +31 -8
- data/lib/submodules/ably-ruby/lib/ably/models/channel_occupancy.rb +10 -3
- data/lib/submodules/ably-ruby/lib/ably/models/channel_options.rb +26 -3
- data/lib/submodules/ably-ruby/lib/ably/models/channel_state_change.rb +45 -15
- data/lib/submodules/ably-ruby/lib/ably/models/channel_status.rb +14 -4
- data/lib/submodules/ably-ruby/lib/ably/models/cipher_params.rb +36 -13
- data/lib/submodules/ably-ruby/lib/ably/models/connection_details.rb +91 -10
- data/lib/submodules/ably-ruby/lib/ably/models/connection_state_change.rb +54 -15
- data/lib/submodules/ably-ruby/lib/ably/models/delta_extras.rb +6 -7
- data/lib/submodules/ably-ruby/lib/ably/models/device_details.rb +60 -21
- data/lib/submodules/ably-ruby/lib/ably/models/device_push_details.rb +27 -19
- data/lib/submodules/ably-ruby/lib/ably/models/error_info.rb +59 -17
- data/lib/submodules/ably-ruby/lib/ably/models/http_paginated_response.rb +27 -5
- data/lib/submodules/ably-ruby/lib/ably/models/idiomatic_ruby_wrapper.rb +3 -2
- data/lib/submodules/ably-ruby/lib/ably/models/message.rb +64 -24
- data/lib/submodules/ably-ruby/lib/ably/models/message_encoders/base.rb +6 -0
- data/lib/submodules/ably-ruby/lib/ably/models/paginated_result.rb +29 -14
- data/lib/submodules/ably-ruby/lib/ably/models/presence_message.rb +72 -22
- data/lib/submodules/ably-ruby/lib/ably/models/protocol_message.rb +0 -4
- data/lib/submodules/ably-ruby/lib/ably/models/push_channel_subscription.rb +40 -15
- data/lib/submodules/ably-ruby/lib/ably/models/stats.rb +76 -40
- data/lib/submodules/ably-ruby/lib/ably/models/stats_types.rb +16 -40
- data/lib/submodules/ably-ruby/lib/ably/models/token_details.rb +34 -12
- data/lib/submodules/ably-ruby/lib/ably/models/token_request.rb +63 -2
- data/lib/submodules/ably-ruby/lib/ably/modules/async_wrapper.rb +1 -0
- data/lib/submodules/ably-ruby/lib/ably/modules/enum.rb +2 -0
- data/lib/submodules/ably-ruby/lib/ably/modules/event_emitter.rb +14 -1
- data/lib/submodules/ably-ruby/lib/ably/modules/model_common.rb +5 -0
- data/lib/submodules/ably-ruby/lib/ably/modules/state_emitter.rb +2 -0
- data/lib/submodules/ably-ruby/lib/ably/modules/state_machine.rb +4 -0
- data/lib/submodules/ably-ruby/lib/ably/realtime/channel/channel_properties.rb +9 -2
- data/lib/submodules/ably-ruby/lib/ably/realtime/channel/publisher.rb +2 -0
- data/lib/submodules/ably-ruby/lib/ably/realtime/channel/push_channel.rb +17 -10
- data/lib/submodules/ably-ruby/lib/ably/realtime/channel.rb +79 -42
- data/lib/submodules/ably-ruby/lib/ably/realtime/channels.rb +4 -3
- data/lib/submodules/ably-ruby/lib/ably/realtime/client/incoming_message_dispatcher.rb +6 -14
- data/lib/submodules/ably-ruby/lib/ably/realtime/client.rb +53 -32
- data/lib/submodules/ably-ruby/lib/ably/realtime/connection/connection_manager.rb +4 -0
- data/lib/submodules/ably-ruby/lib/ably/realtime/connection/websocket_transport.rb +4 -2
- data/lib/submodules/ably-ruby/lib/ably/realtime/connection.rb +94 -55
- data/lib/submodules/ably-ruby/lib/ably/realtime/presence.rb +61 -36
- data/lib/submodules/ably-ruby/lib/ably/realtime/push/admin.rb +16 -2
- data/lib/submodules/ably-ruby/lib/ably/realtime/push.rb +15 -3
- data/lib/submodules/ably-ruby/lib/ably/rest/channel/push_channel.rb +0 -3
- data/lib/submodules/ably-ruby/lib/ably/rest/channel.rb +29 -21
- data/lib/submodules/ably-ruby/lib/ably/rest/channels.rb +6 -3
- data/lib/submodules/ably-ruby/lib/ably/rest/client.rb +41 -35
- data/lib/submodules/ably-ruby/lib/ably/rest/presence.rb +27 -12
- data/lib/submodules/ably-ruby/lib/ably/rest/push/admin.rb +4 -0
- data/lib/submodules/ably-ruby/lib/ably/rest/push/device_registrations.rb +13 -2
- data/lib/submodules/ably-ruby/lib/ably/rest/push.rb +2 -0
- data/lib/submodules/ably-ruby/lib/ably/util/crypto.rb +14 -10
- data/lib/submodules/ably-ruby/lib/ably/version.rb +1 -1
- data/lib/submodules/ably-ruby/spec/acceptance/realtime/connection_spec.rb +0 -15
- data/lib/submodules/ably-ruby/spec/acceptance/realtime/message_spec.rb +3 -3
- data/lib/submodules/ably-ruby/spec/unit/models/protocol_message_spec.rb +0 -26
- data/lib/submodules/ably-ruby/spec/unit/realtime/incoming_message_dispatcher_spec.rb +0 -38
- metadata +16 -19
@@ -400,32 +400,6 @@ describe Ably::Models::ProtocolMessage do
|
|
400
400
|
end
|
401
401
|
end
|
402
402
|
|
403
|
-
context '#has_correct_message_size? (#TO3l8)' do
|
404
|
-
context 'on presence' do
|
405
|
-
it 'should return true when a message has correct size' do
|
406
|
-
protocol_message = new_protocol_message(presence: [{ action: 1, data: 'x' * 100 }])
|
407
|
-
expect(protocol_message.has_correct_message_size?).to eq(true)
|
408
|
-
end
|
409
|
-
|
410
|
-
it 'should return false when a message has not correct size' do
|
411
|
-
protocol_message = new_protocol_message(presence: [{ action: 1, data: 'x' * 65537 }])
|
412
|
-
expect(protocol_message.has_correct_message_size?).to eq(false)
|
413
|
-
end
|
414
|
-
end
|
415
|
-
|
416
|
-
context 'on message' do
|
417
|
-
it 'should return true when a message has correct size' do
|
418
|
-
protocol_message = new_protocol_message(messages: [{ name: 'x' * 100 }])
|
419
|
-
expect(protocol_message.has_correct_message_size?).to eq(true)
|
420
|
-
end
|
421
|
-
|
422
|
-
it 'should return false when a message has not correct size' do
|
423
|
-
protocol_message = new_protocol_message(messages: [{ name: 'x' * 65537 }])
|
424
|
-
expect(protocol_message.has_correct_message_size?).to eq(false)
|
425
|
-
end
|
426
|
-
end
|
427
|
-
end
|
428
|
-
|
429
403
|
context '#connection_details (#TR4o)' do
|
430
404
|
let(:connection_details) { protocol_message.connection_details }
|
431
405
|
|
@@ -32,43 +32,5 @@ describe Ably::Realtime::Client::IncomingMessageDispatcher, :api_private do
|
|
32
32
|
expect(subject).to receive_message_chain(:logger, :warn)
|
33
33
|
msgbus.publish :protocol_message, Ably::Models::ProtocolMessage.new(:action => :attached, channel: 'unknown')
|
34
34
|
end
|
35
|
-
|
36
|
-
context 'TO3l8' do
|
37
|
-
context 'on action presence' do
|
38
|
-
let(:presence) { 101.times.map { { data: 'x' * 655 } } }
|
39
|
-
|
40
|
-
let(:protocol_message) do
|
41
|
-
Ably::Models::ProtocolMessage.new(action: :presence, channel: 'default', presence: presence, connection_serial: 123123123)
|
42
|
-
end
|
43
|
-
|
44
|
-
it 'should raise a protocol error when message size exceeded 65536 bytes' do
|
45
|
-
allow(connection).to receive(:serial).and_return(12312312)
|
46
|
-
allow(subject).to receive(:update_connection_recovery_info)
|
47
|
-
allow(subject).to receive_message_chain(:logger, :debug)
|
48
|
-
allow(subject).to receive_message_chain(:logger, :warn)
|
49
|
-
expect(subject).to receive_message_chain(:logger, :fatal)
|
50
|
-
|
51
|
-
msgbus.publish :protocol_message, protocol_message
|
52
|
-
end
|
53
|
-
end
|
54
|
-
|
55
|
-
context 'on action message' do
|
56
|
-
let(:messages) { 101.times.map { { data: 'x' * 655 } } }
|
57
|
-
|
58
|
-
let(:protocol_message) do
|
59
|
-
Ably::Models::ProtocolMessage.new(action: :message, channel: 'default', messages: messages, connection_serial: 123123123)
|
60
|
-
end
|
61
|
-
|
62
|
-
it 'should raise a protocol error when message size exceeded 65536 bytes' do
|
63
|
-
allow(connection).to receive(:serial).and_return(12312312)
|
64
|
-
allow(subject).to receive(:update_connection_recovery_info)
|
65
|
-
allow(subject).to receive_message_chain(:logger, :debug)
|
66
|
-
allow(subject).to receive_message_chain(:logger, :warn)
|
67
|
-
expect(subject).to receive_message_chain(:logger, :fatal)
|
68
|
-
|
69
|
-
msgbus.publish :protocol_message, protocol_message
|
70
|
-
end
|
71
|
-
end
|
72
|
-
end
|
73
35
|
end
|
74
36
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ably-rest
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.2.
|
4
|
+
version: 1.2.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Matthew O'Riordan
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2023-06-29 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: faraday
|
@@ -84,16 +84,22 @@ dependencies:
|
|
84
84
|
name: msgpack
|
85
85
|
requirement: !ruby/object:Gem::Requirement
|
86
86
|
requirements:
|
87
|
-
- -
|
87
|
+
- - ">="
|
88
88
|
- !ruby/object:Gem::Version
|
89
89
|
version: 1.5.2
|
90
|
+
- - "<"
|
91
|
+
- !ruby/object:Gem::Version
|
92
|
+
version: '2.0'
|
90
93
|
type: :runtime
|
91
94
|
prerelease: false
|
92
95
|
version_requirements: !ruby/object:Gem::Requirement
|
93
96
|
requirements:
|
94
|
-
- -
|
97
|
+
- - ">="
|
95
98
|
- !ruby/object:Gem::Version
|
96
99
|
version: 1.5.2
|
100
|
+
- - "<"
|
101
|
+
- !ruby/object:Gem::Version
|
102
|
+
version: '2.0'
|
97
103
|
- !ruby/object:Gem::Dependency
|
98
104
|
name: addressable
|
99
105
|
requirement: !ruby/object:Gem::Requirement
|
@@ -248,20 +254,6 @@ dependencies:
|
|
248
254
|
- - ">="
|
249
255
|
- !ruby/object:Gem::Version
|
250
256
|
version: '0'
|
251
|
-
- !ruby/object:Gem::Dependency
|
252
|
-
name: webrick
|
253
|
-
requirement: !ruby/object:Gem::Requirement
|
254
|
-
requirements:
|
255
|
-
- - "~>"
|
256
|
-
- !ruby/object:Gem::Version
|
257
|
-
version: 1.7.0
|
258
|
-
type: :development
|
259
|
-
prerelease: false
|
260
|
-
version_requirements: !ruby/object:Gem::Requirement
|
261
|
-
requirements:
|
262
|
-
- - "~>"
|
263
|
-
- !ruby/object:Gem::Version
|
264
|
-
version: 1.7.0
|
265
257
|
description: A Ruby REST only client library for ably.io realtime messaging
|
266
258
|
email:
|
267
259
|
- matt@ably.io
|
@@ -284,14 +276,19 @@ files:
|
|
284
276
|
- ably-rest.gemspec
|
285
277
|
- lib/ably-rest.rb
|
286
278
|
- lib/ably-rest/modules/eventmachine_deferrable.rb
|
279
|
+
- lib/submodules/ably-ruby/.ably/capabilities.yaml
|
287
280
|
- lib/submodules/ably-ruby/.editorconfig
|
288
281
|
- lib/submodules/ably-ruby/.github/workflows/check.yml
|
282
|
+
- lib/submodules/ably-ruby/.github/workflows/docs.yml
|
283
|
+
- lib/submodules/ably-ruby/.github/workflows/features.yml
|
289
284
|
- lib/submodules/ably-ruby/.gitignore
|
290
285
|
- lib/submodules/ably-ruby/.gitmodules
|
291
286
|
- lib/submodules/ably-ruby/.rspec
|
287
|
+
- lib/submodules/ably-ruby/.rspec_parallel
|
292
288
|
- lib/submodules/ably-ruby/CHANGELOG.md
|
293
289
|
- lib/submodules/ably-ruby/COPYRIGHT
|
294
290
|
- lib/submodules/ably-ruby/Gemfile
|
291
|
+
- lib/submodules/ably-ruby/INTRO.md
|
295
292
|
- lib/submodules/ably-ruby/LICENSE
|
296
293
|
- lib/submodules/ably-ruby/MAINTAINERS.md
|
297
294
|
- lib/submodules/ably-ruby/README.md
|
@@ -524,7 +521,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
524
521
|
- !ruby/object:Gem::Version
|
525
522
|
version: '0'
|
526
523
|
requirements: []
|
527
|
-
rubygems_version: 3.
|
524
|
+
rubygems_version: 3.1.6
|
528
525
|
signing_key:
|
529
526
|
specification_version: 4
|
530
527
|
summary: A Ruby REST only client library for ably.io realtime messaging
|