ably 1.1.0 → 1.1.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (50) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/check.yml +27 -0
  3. data/CHANGELOG.md +68 -2
  4. data/COPYRIGHT +1 -0
  5. data/LICENSE +172 -11
  6. data/MAINTAINERS.md +1 -0
  7. data/README.md +3 -7
  8. data/SPEC.md +944 -914
  9. data/ably.gemspec +7 -7
  10. data/lib/ably/auth.rb +12 -2
  11. data/lib/ably/exceptions.rb +2 -2
  12. data/lib/ably/logger.rb +7 -1
  13. data/lib/ably/modules/state_machine.rb +1 -1
  14. data/lib/ably/realtime/channel.rb +7 -11
  15. data/lib/ably/realtime/channel/channel_manager.rb +2 -2
  16. data/lib/ably/realtime/channel/channel_properties.rb +24 -0
  17. data/lib/ably/realtime/client.rb +12 -3
  18. data/lib/ably/realtime/connection.rb +31 -19
  19. data/lib/ably/realtime/connection/connection_manager.rb +19 -3
  20. data/lib/ably/realtime/connection/websocket_transport.rb +67 -1
  21. data/lib/ably/realtime/presence.rb +0 -14
  22. data/lib/ably/rest/channel.rb +25 -17
  23. data/lib/ably/rest/client.rb +22 -11
  24. data/lib/ably/version.rb +1 -1
  25. data/spec/acceptance/realtime/auth_spec.rb +16 -13
  26. data/spec/acceptance/realtime/channel_history_spec.rb +26 -20
  27. data/spec/acceptance/realtime/channel_spec.rb +21 -8
  28. data/spec/acceptance/realtime/client_spec.rb +80 -20
  29. data/spec/acceptance/realtime/connection_failures_spec.rb +71 -5
  30. data/spec/acceptance/realtime/connection_spec.rb +153 -26
  31. data/spec/acceptance/realtime/message_spec.rb +17 -17
  32. data/spec/acceptance/realtime/presence_history_spec.rb +0 -58
  33. data/spec/acceptance/realtime/presence_spec.rb +250 -162
  34. data/spec/acceptance/realtime/push_admin_spec.rb +49 -25
  35. data/spec/acceptance/rest/auth_spec.rb +6 -75
  36. data/spec/acceptance/rest/channel_spec.rb +79 -4
  37. data/spec/acceptance/rest/channels_spec.rb +6 -0
  38. data/spec/acceptance/rest/client_spec.rb +72 -12
  39. data/spec/acceptance/rest/message_spec.rb +8 -27
  40. data/spec/acceptance/rest/push_admin_spec.rb +67 -27
  41. data/spec/shared/client_initializer_behaviour.rb +0 -8
  42. data/spec/spec_helper.rb +2 -1
  43. data/spec/support/debug_failure_helper.rb +9 -5
  44. data/spec/support/serialization_helper.rb +21 -0
  45. data/spec/support/test_app.rb +2 -2
  46. data/spec/unit/modules/enum_spec.rb +1 -1
  47. data/spec/unit/realtime/client_spec.rb +20 -7
  48. data/spec/unit/realtime/connection_spec.rb +1 -1
  49. metadata +40 -29
  50. data/.travis.yml +0 -16
@@ -2,7 +2,7 @@ require 'spec_helper'
2
2
  require 'shared/protocol_msgbus_behaviour'
3
3
 
4
4
  describe Ably::Realtime::Connection do
5
- let(:client) { instance_double('Ably::Realtime::Client', logger: double('logger').as_null_object) }
5
+ let(:client) { instance_double('Ably::Realtime::Client', logger: double('logger').as_null_object, recover: nil, endpoint: double('endpoint', host: 'realtime.ably.io')) }
6
6
 
7
7
  subject do
8
8
  Ably::Realtime::Connection.new(client, {}).tap do |connection|
metadata CHANGED
@@ -1,15 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ably
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.0
4
+ version: 1.1.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Lewis Marshall
8
8
  - Matthew O'Riordan
9
- autorequire:
9
+ autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2019-02-06 00:00:00.000000000 Z
12
+ date: 2021-04-16 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: eventmachine
@@ -45,28 +45,34 @@ dependencies:
45
45
  requirements:
46
46
  - - "~>"
47
47
  - !ruby/object:Gem::Version
48
- version: 1.0.0
48
+ version: '7.4'
49
49
  type: :runtime
50
50
  prerelease: false
51
51
  version_requirements: !ruby/object:Gem::Requirement
52
52
  requirements:
53
53
  - - "~>"
54
54
  - !ruby/object:Gem::Version
55
- version: 1.0.0
55
+ version: '7.4'
56
56
  - !ruby/object:Gem::Dependency
57
57
  name: faraday
58
58
  requirement: !ruby/object:Gem::Requirement
59
59
  requirements:
60
- - - "~>"
60
+ - - ">="
61
61
  - !ruby/object:Gem::Version
62
62
  version: '0.12'
63
+ - - "<"
64
+ - !ruby/object:Gem::Version
65
+ version: 2.0.0
63
66
  type: :runtime
64
67
  prerelease: false
65
68
  version_requirements: !ruby/object:Gem::Requirement
66
69
  requirements:
67
- - - "~>"
70
+ - - ">="
68
71
  - !ruby/object:Gem::Version
69
72
  version: '0.12'
73
+ - - "<"
74
+ - !ruby/object:Gem::Version
75
+ version: 2.0.0
70
76
  - !ruby/object:Gem::Dependency
71
77
  name: excon
72
78
  requirement: !ruby/object:Gem::Requirement
@@ -115,14 +121,14 @@ dependencies:
115
121
  requirements:
116
122
  - - ">="
117
123
  - !ruby/object:Gem::Version
118
- version: 0.6.2
124
+ version: 1.3.0
119
125
  type: :runtime
120
126
  prerelease: false
121
127
  version_requirements: !ruby/object:Gem::Requirement
122
128
  requirements:
123
129
  - - ">="
124
130
  - !ruby/object:Gem::Version
125
- version: 0.6.2
131
+ version: 1.3.0
126
132
  - !ruby/object:Gem::Dependency
127
133
  name: addressable
128
134
  requirement: !ruby/object:Gem::Requirement
@@ -137,20 +143,6 @@ dependencies:
137
143
  - - ">="
138
144
  - !ruby/object:Gem::Version
139
145
  version: 2.0.0
140
- - !ruby/object:Gem::Dependency
141
- name: bundler
142
- requirement: !ruby/object:Gem::Requirement
143
- requirements:
144
- - - "~>"
145
- - !ruby/object:Gem::Version
146
- version: '1.3'
147
- type: :development
148
- prerelease: false
149
- version_requirements: !ruby/object:Gem::Requirement
150
- requirements:
151
- - - "~>"
152
- - !ruby/object:Gem::Version
153
- version: '1.3'
154
146
  - !ruby/object:Gem::Dependency
155
147
  name: rake
156
148
  requirement: !ruby/object:Gem::Requirement
@@ -235,20 +227,34 @@ dependencies:
235
227
  - - "~>"
236
228
  - !ruby/object:Gem::Version
237
229
  version: '1.0'
230
+ - !ruby/object:Gem::Dependency
231
+ name: bundler
232
+ requirement: !ruby/object:Gem::Requirement
233
+ requirements:
234
+ - - ">="
235
+ - !ruby/object:Gem::Version
236
+ version: 1.3.0
237
+ type: :development
238
+ prerelease: false
239
+ version_requirements: !ruby/object:Gem::Requirement
240
+ requirements:
241
+ - - ">="
242
+ - !ruby/object:Gem::Version
243
+ version: 1.3.0
238
244
  - !ruby/object:Gem::Dependency
239
245
  name: webmock
240
246
  requirement: !ruby/object:Gem::Requirement
241
247
  requirements:
242
248
  - - "~>"
243
249
  - !ruby/object:Gem::Version
244
- version: '2.2'
250
+ version: '3.11'
245
251
  type: :development
246
252
  prerelease: false
247
253
  version_requirements: !ruby/object:Gem::Requirement
248
254
  requirements:
249
255
  - - "~>"
250
256
  - !ruby/object:Gem::Version
251
- version: '2.2'
257
+ version: '3.11'
252
258
  - !ruby/object:Gem::Dependency
253
259
  name: coveralls
254
260
  requirement: !ruby/object:Gem::Requirement
@@ -314,13 +320,15 @@ extensions: []
314
320
  extra_rdoc_files: []
315
321
  files:
316
322
  - ".editorconfig"
323
+ - ".github/workflows/check.yml"
317
324
  - ".gitignore"
318
325
  - ".gitmodules"
319
326
  - ".rspec"
320
- - ".travis.yml"
321
327
  - CHANGELOG.md
328
+ - COPYRIGHT
322
329
  - Gemfile
323
330
  - LICENSE
331
+ - MAINTAINERS.md
324
332
  - README.md
325
333
  - Rakefile
326
334
  - SPEC.md
@@ -377,6 +385,7 @@ files:
377
385
  - lib/ably/realtime/auth.rb
378
386
  - lib/ably/realtime/channel.rb
379
387
  - lib/ably/realtime/channel/channel_manager.rb
388
+ - lib/ably/realtime/channel/channel_properties.rb
380
389
  - lib/ably/realtime/channel/channel_state_machine.rb
381
390
  - lib/ably/realtime/channel/publisher.rb
382
391
  - lib/ably/realtime/channel/push_channel.rb
@@ -460,6 +469,7 @@ files:
460
469
  - spec/support/protocol_helper.rb
461
470
  - spec/support/random_helper.rb
462
471
  - spec/support/rest_testapp_before_retry.rb
472
+ - spec/support/serialization_helper.rb
463
473
  - spec/support/test_app.rb
464
474
  - spec/support/test_logger_helper.rb
465
475
  - spec/unit/auth_spec.rb
@@ -512,7 +522,7 @@ homepage: http://github.com/ably/ably-ruby
512
522
  licenses:
513
523
  - Apache-2.0
514
524
  metadata: {}
515
- post_install_message:
525
+ post_install_message:
516
526
  rdoc_options: []
517
527
  require_paths:
518
528
  - lib
@@ -527,8 +537,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
527
537
  - !ruby/object:Gem::Version
528
538
  version: '0'
529
539
  requirements: []
530
- rubygems_version: 3.0.2
531
- signing_key:
540
+ rubygems_version: 3.0.3
541
+ signing_key:
532
542
  specification_version: 4
533
543
  summary: A Ruby client library for ably.io realtime messaging implemented using EventMachine
534
544
  test_files:
@@ -574,6 +584,7 @@ test_files:
574
584
  - spec/support/protocol_helper.rb
575
585
  - spec/support/random_helper.rb
576
586
  - spec/support/rest_testapp_before_retry.rb
587
+ - spec/support/serialization_helper.rb
577
588
  - spec/support/test_app.rb
578
589
  - spec/support/test_logger_helper.rb
579
590
  - spec/unit/auth_spec.rb
data/.travis.yml DELETED
@@ -1,16 +0,0 @@
1
- sudo: false
2
- env:
3
- - RSPEC_RETRY=true PARALLEL_TEST_PROCESSORS=4 PROTOCOL=json
4
- - RSPEC_RETRY=true PARALLEL_TEST_PROCESSORS=4 PROTOCOL=msgpack
5
- language: ruby
6
- rvm:
7
- - 1.9.3
8
- - 2.0.0
9
- - 2.1.10
10
- - 2.2.0
11
- - 2.3.6
12
- - 2.4.4
13
- script: spec/run_parallel_tests
14
- notifications:
15
- slack:
16
- secure: Xe8MwDcV2C8XLGk6O6Co31LpQiRSxsmS7Toy5vM7rHds5fnVRBNn5iX6Q5mXMdLOlnsMhjKLt7zl4fsBOZv+siQ+Us0omZSIYpXCYSCIj8nofReF0Lj8M4oa6lFSL5OuygO7PH+wLKTRxQURGZ6Pi1nHU+RE5izRmsewQHkhtY0=