ably 1.2.3 → 1.2.5
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.
- checksums.yaml +4 -4
- data/.ably/capabilities.yaml +112 -0
- data/.github/workflows/check.yml +2 -3
- data/.github/workflows/features.yml +14 -0
- data/CHANGELOG.md +18 -0
- data/README.md +2 -0
- data/ably.gemspec +1 -1
- data/lib/ably/realtime/connection.rb +1 -1
- data/lib/ably/version.rb +1 -1
- data/spec/acceptance/realtime/connection_spec.rb +5 -5
- metadata +9 -7
- /data/{.github/workflows/.rspec_parallel → .rspec_parallel} +0 -0
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 68b52bb2a88536595ffc25c954a5592281d13b6a3278851556da70355f009112
|
|
4
|
+
data.tar.gz: 14eb5c1912b5c70b50f261dca05a1f4abc04aaa990aced7e6af2e11f77c28738
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 875e862321b2be88fc635a8e3b93d86dff5508389814a5c1e0794b19dbf7568e93bc3a6f70749ae1c61a16d3c1b6a14cbb358dca24965fe4416408dd772ec85f
|
|
7
|
+
data.tar.gz: ada18acd3a5cd6a709fc363b9b58366482b737584c53e0638e4d825930558916edf19f7ea72f880f67612301a49eb4178af0b66c9ae7b6fe0301fd42ea150508
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
%YAML 1.2
|
|
2
|
+
---
|
|
3
|
+
common-version: 1.2.0
|
|
4
|
+
compliance:
|
|
5
|
+
Agent Identifier:
|
|
6
|
+
Agents:
|
|
7
|
+
Runtime:
|
|
8
|
+
Authentication:
|
|
9
|
+
API Key:
|
|
10
|
+
Token:
|
|
11
|
+
Callback:
|
|
12
|
+
Literal:
|
|
13
|
+
URL:
|
|
14
|
+
Query Time:
|
|
15
|
+
Debugging:
|
|
16
|
+
Error Information:
|
|
17
|
+
Logs:
|
|
18
|
+
Protocol:
|
|
19
|
+
JSON:
|
|
20
|
+
Maximum Message Size:
|
|
21
|
+
MessagePack:
|
|
22
|
+
Realtime:
|
|
23
|
+
Channel:
|
|
24
|
+
Attach:
|
|
25
|
+
|
|
26
|
+
# setOptions on existing channel instance is missing (i.e. it works but is inelegant, requiring soft-deprecated mechanism)
|
|
27
|
+
# see:
|
|
28
|
+
# - https://sdk.ably.com/builds/ably/specification/main/features/#RSN3c
|
|
29
|
+
# - https://sdk.ably.com/builds/ably/specification/main/features/#RTS3c
|
|
30
|
+
Encryption:
|
|
31
|
+
|
|
32
|
+
History:
|
|
33
|
+
Presence:
|
|
34
|
+
Enter:
|
|
35
|
+
Client:
|
|
36
|
+
Get:
|
|
37
|
+
History:
|
|
38
|
+
Subscribe:
|
|
39
|
+
Update:
|
|
40
|
+
Client:
|
|
41
|
+
Publish:
|
|
42
|
+
Retry Timeout:
|
|
43
|
+
State Events:
|
|
44
|
+
Subscribe:
|
|
45
|
+
Rewind:
|
|
46
|
+
Connection:
|
|
47
|
+
Disconnected Retry Timeout:
|
|
48
|
+
Get Identifier:
|
|
49
|
+
Lifecycle Control:
|
|
50
|
+
Ping:
|
|
51
|
+
Recovery:
|
|
52
|
+
State Events:
|
|
53
|
+
Suspended Retry Timeout:
|
|
54
|
+
Message Echoes:
|
|
55
|
+
Message Queuing:
|
|
56
|
+
Transport Parameters:
|
|
57
|
+
REST:
|
|
58
|
+
Authentication:
|
|
59
|
+
Authorize:
|
|
60
|
+
Create Token Request:
|
|
61
|
+
Get Client Identifier:
|
|
62
|
+
Request Token:
|
|
63
|
+
Channel:
|
|
64
|
+
Existence Check:
|
|
65
|
+
Get:
|
|
66
|
+
History:
|
|
67
|
+
Iterate:
|
|
68
|
+
Name:
|
|
69
|
+
Presence:
|
|
70
|
+
History:
|
|
71
|
+
Member List:
|
|
72
|
+
Publish:
|
|
73
|
+
Idempotence:
|
|
74
|
+
Release:
|
|
75
|
+
Status:
|
|
76
|
+
Channel Details: # https://github.com/ably/ably-ruby/pull/365
|
|
77
|
+
Opaque Request:
|
|
78
|
+
Push Notifications Administration:
|
|
79
|
+
Channel Subscription:
|
|
80
|
+
List:
|
|
81
|
+
List Channels:
|
|
82
|
+
Remove:
|
|
83
|
+
Save:
|
|
84
|
+
Device Registration:
|
|
85
|
+
Get:
|
|
86
|
+
List:
|
|
87
|
+
Remove:
|
|
88
|
+
Save:
|
|
89
|
+
Publish:
|
|
90
|
+
Request Identifiers:
|
|
91
|
+
Request Timeout:
|
|
92
|
+
Service:
|
|
93
|
+
Get Time:
|
|
94
|
+
Statistics:
|
|
95
|
+
Query:
|
|
96
|
+
Service:
|
|
97
|
+
Environment:
|
|
98
|
+
Fallbacks:
|
|
99
|
+
Hosts:
|
|
100
|
+
Internet Up Check:
|
|
101
|
+
Retry Count:
|
|
102
|
+
Retry Duration:
|
|
103
|
+
Retry Timeout:
|
|
104
|
+
Host:
|
|
105
|
+
Testing:
|
|
106
|
+
Disable TLS:
|
|
107
|
+
TCP Insecure Port:
|
|
108
|
+
TCP Secure Port:
|
|
109
|
+
Transport:
|
|
110
|
+
Connection Open Timeout:
|
|
111
|
+
HTTP/2: # https://github.com/ably/ably-ruby/pull/197
|
|
112
|
+
Maximum Frame Size:
|
data/.github/workflows/check.yml
CHANGED
|
@@ -7,8 +7,8 @@ on:
|
|
|
7
7
|
jobs:
|
|
8
8
|
check:
|
|
9
9
|
runs-on: ubuntu-latest
|
|
10
|
-
continue-on-error: true
|
|
11
10
|
strategy:
|
|
11
|
+
fail-fast: false
|
|
12
12
|
matrix:
|
|
13
13
|
ruby: [ '2.7', '3.0', '3.1' ]
|
|
14
14
|
protocol: [ 'json', 'msgpack' ]
|
|
@@ -29,7 +29,6 @@ jobs:
|
|
|
29
29
|
TEST_TYPE: ${{ matrix.type }}
|
|
30
30
|
RUBY_VERSION: ${{ matrix.ruby }}
|
|
31
31
|
run: |
|
|
32
|
-
cp .github/workflows/.rspec_parallel .rspec_parallel
|
|
33
32
|
mkdir junit
|
|
34
33
|
bundle exec parallel_rspec --prefix-output-with-test-env-number --first-is-1 -- spec/${{ matrix.type }}
|
|
35
34
|
- uses: actions/upload-artifact@v3
|
|
@@ -40,7 +39,7 @@ jobs:
|
|
|
40
39
|
retention-days: 7
|
|
41
40
|
- name: Upload test results
|
|
42
41
|
if: always()
|
|
43
|
-
uses: ably
|
|
42
|
+
uses: ably/test-observability-action@v1
|
|
44
43
|
with:
|
|
45
44
|
server-url: 'https://test-observability.herokuapp.com'
|
|
46
45
|
server-auth: ${{ secrets.TEST_OBSERVABILITY_SERVER_AUTH_KEY }}
|
data/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,23 @@
|
|
|
1
1
|
# Change Log
|
|
2
2
|
|
|
3
|
+
## [v1.2.5](https://github.com/ably/ably-ruby/tree/v1.2.5)
|
|
4
|
+
|
|
5
|
+
This contains an important fix for a TLS certificate validation bug which prevented the library from being able to use Realtime fallback hosts.
|
|
6
|
+
|
|
7
|
+
[Full changelog](https://github.com/ably/ably-ruby/compare/v1.2.4...v1.2.5)
|
|
8
|
+
|
|
9
|
+
**Fixed bugs:**
|
|
10
|
+
|
|
11
|
+
- Fix server certificate validation for HTTP in Realtime [\#397](https://github.com/ably/ably-ruby/pull/397)
|
|
12
|
+
|
|
13
|
+
## [v1.2.4](https://github.com/ably/ably-ruby/tree/v1.2.4)
|
|
14
|
+
|
|
15
|
+
[Full Changelog](https://github.com/ably/ably-ruby/compare/v1.2.3...v1.2.4)
|
|
16
|
+
|
|
17
|
+
**Merged pull requests:**
|
|
18
|
+
|
|
19
|
+
- fix: unpin msgpack dependency minor/patch version [\#382](https://github.com/ably/ably-ruby-rest/pull/29)
|
|
20
|
+
|
|
3
21
|
## [v1.2.3](https://github.com/ably/ably-ruby/tree/v1.2.3)
|
|
4
22
|
|
|
5
23
|
[Full Changelog](https://github.com/ably/ably-ruby/compare/v1.2.2...v1.2.3)
|
data/README.md
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
# [Ably](https://ably.com)
|
|
2
2
|
|
|
3
|
+
[](https://github.com/ably/ably-ruby/actions/workflows/features.yml)
|
|
4
|
+
|
|
3
5
|
[](https://img.shields.io/gem/v/ably?style=flat)
|
|
4
6
|
[](https://coveralls.io/r/ably/ably-ruby)
|
|
5
7
|
|
data/ably.gemspec
CHANGED
|
@@ -19,7 +19,7 @@ Gem::Specification.new do |spec|
|
|
|
19
19
|
spec.require_paths = ['lib']
|
|
20
20
|
|
|
21
21
|
spec.add_runtime_dependency 'eventmachine', '~> 1.2.6'
|
|
22
|
-
spec.add_runtime_dependency 'em-http-request', '~> 1.1'
|
|
22
|
+
spec.add_runtime_dependency 'ably-em-http-request', '~> 1.1.8'
|
|
23
23
|
spec.add_runtime_dependency 'statesman', '~> 9.0'
|
|
24
24
|
spec.add_runtime_dependency 'faraday', '~> 2.2'
|
|
25
25
|
spec.add_runtime_dependency 'faraday-typhoeus', '~> 0.2.0'
|
|
@@ -327,7 +327,7 @@ module Ably
|
|
|
327
327
|
def internet_up?
|
|
328
328
|
url = "http#{'s' if client.use_tls?}:#{Ably::INTERNET_CHECK.fetch(:url)}"
|
|
329
329
|
EventMachine::DefaultDeferrable.new.tap do |deferrable|
|
|
330
|
-
EventMachine::HttpRequest.new(url, tls: { verify_peer: true }).get.tap do |http|
|
|
330
|
+
EventMachine::AblyHttpRequest::HttpRequest.new(url, tls: { verify_peer: true }).get.tap do |http|
|
|
331
331
|
http.errback do
|
|
332
332
|
yield false if block_given?
|
|
333
333
|
deferrable.fail Ably::Exceptions::ConnectionFailed.new("Unable to connect to #{url}", nil, Ably::Exceptions::Codes::CONNECTION_FAILED)
|
data/lib/ably/version.rb
CHANGED
|
@@ -1702,13 +1702,13 @@ describe Ably::Realtime::Connection, :event_machine do
|
|
|
1702
1702
|
end
|
|
1703
1703
|
|
|
1704
1704
|
context 'internet up URL protocol' do
|
|
1705
|
-
let(:http_request) { double('EventMachine::HttpRequest', get: EventMachine::DefaultDeferrable.new) }
|
|
1705
|
+
let(:http_request) { double('EventMachine::AblyHttpRequest::HttpRequest', get: EventMachine::DefaultDeferrable.new) }
|
|
1706
1706
|
|
|
1707
1707
|
context 'when using TLS for the connection' do
|
|
1708
1708
|
let(:client_options) { default_options.merge(tls: true) }
|
|
1709
1709
|
|
|
1710
1710
|
it 'uses TLS for the Internet check to https://internet-up.ably-realtime.com/is-the-internet-up.txt' do
|
|
1711
|
-
expect(EventMachine::HttpRequest).to receive(:new).with('https://internet-up.ably-realtime.com/is-the-internet-up.txt', { tls: { verify_peer: true } }).and_return(http_request)
|
|
1711
|
+
expect(EventMachine::AblyHttpRequest::HttpRequest).to receive(:new).with('https://internet-up.ably-realtime.com/is-the-internet-up.txt', { tls: { verify_peer: true } }).and_return(http_request)
|
|
1712
1712
|
connection.internet_up?
|
|
1713
1713
|
stop_reactor
|
|
1714
1714
|
end
|
|
@@ -1718,7 +1718,7 @@ describe Ably::Realtime::Connection, :event_machine do
|
|
|
1718
1718
|
let(:client_options) { default_options.merge(tls: false, use_token_auth: true) }
|
|
1719
1719
|
|
|
1720
1720
|
it 'uses TLS for the Internet check to http://internet-up.ably-realtime.com/is-the-internet-up.txt' do
|
|
1721
|
-
expect(EventMachine::HttpRequest).to receive(:new).with('http://internet-up.ably-realtime.com/is-the-internet-up.txt', { tls: { verify_peer: true } }).and_return(http_request)
|
|
1721
|
+
expect(EventMachine::AblyHttpRequest::HttpRequest).to receive(:new).with('http://internet-up.ably-realtime.com/is-the-internet-up.txt', { tls: { verify_peer: true } }).and_return(http_request)
|
|
1722
1722
|
connection.internet_up?
|
|
1723
1723
|
stop_reactor
|
|
1724
1724
|
end
|
|
@@ -1732,7 +1732,7 @@ describe Ably::Realtime::Connection, :event_machine do
|
|
|
1732
1732
|
let(:client_options) { default_options.merge(tls: true) }
|
|
1733
1733
|
|
|
1734
1734
|
it 'checks the Internet up URL over TLS' do
|
|
1735
|
-
expect(EventMachine::HttpRequest).to receive(:new).with("https:#{Ably::INTERNET_CHECK.fetch(:url)}", { tls: { verify_peer: true } }).and_return(double('request', get: EventMachine::DefaultDeferrable.new))
|
|
1735
|
+
expect(EventMachine::AblyHttpRequest::HttpRequest).to receive(:new).with("https:#{Ably::INTERNET_CHECK.fetch(:url)}", { tls: { verify_peer: true } }).and_return(double('request', get: EventMachine::DefaultDeferrable.new))
|
|
1736
1736
|
connection.internet_up?
|
|
1737
1737
|
stop_reactor
|
|
1738
1738
|
end
|
|
@@ -1742,7 +1742,7 @@ describe Ably::Realtime::Connection, :event_machine do
|
|
|
1742
1742
|
let(:client_options) { default_options.merge(tls: false, use_token_auth: true) }
|
|
1743
1743
|
|
|
1744
1744
|
it 'checks the Internet up URL over TLS' do
|
|
1745
|
-
expect(EventMachine::HttpRequest).to receive(:new).with("http:#{Ably::INTERNET_CHECK.fetch(:url)}", { tls: { verify_peer: true } }).and_return(double('request', get: EventMachine::DefaultDeferrable.new))
|
|
1745
|
+
expect(EventMachine::AblyHttpRequest::HttpRequest).to receive(:new).with("http:#{Ably::INTERNET_CHECK.fetch(:url)}", { tls: { verify_peer: true } }).and_return(double('request', get: EventMachine::DefaultDeferrable.new))
|
|
1746
1746
|
connection.internet_up?
|
|
1747
1747
|
stop_reactor
|
|
1748
1748
|
end
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: ably
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 1.2.
|
|
4
|
+
version: 1.2.5
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Lewis Marshall
|
|
@@ -9,7 +9,7 @@ authors:
|
|
|
9
9
|
autorequire:
|
|
10
10
|
bindir: bin
|
|
11
11
|
cert_chain: []
|
|
12
|
-
date:
|
|
12
|
+
date: 2024-05-16 00:00:00.000000000 Z
|
|
13
13
|
dependencies:
|
|
14
14
|
- !ruby/object:Gem::Dependency
|
|
15
15
|
name: eventmachine
|
|
@@ -26,19 +26,19 @@ dependencies:
|
|
|
26
26
|
- !ruby/object:Gem::Version
|
|
27
27
|
version: 1.2.6
|
|
28
28
|
- !ruby/object:Gem::Dependency
|
|
29
|
-
name: em-http-request
|
|
29
|
+
name: ably-em-http-request
|
|
30
30
|
requirement: !ruby/object:Gem::Requirement
|
|
31
31
|
requirements:
|
|
32
32
|
- - "~>"
|
|
33
33
|
- !ruby/object:Gem::Version
|
|
34
|
-
version:
|
|
34
|
+
version: 1.1.8
|
|
35
35
|
type: :runtime
|
|
36
36
|
prerelease: false
|
|
37
37
|
version_requirements: !ruby/object:Gem::Requirement
|
|
38
38
|
requirements:
|
|
39
39
|
- - "~>"
|
|
40
40
|
- !ruby/object:Gem::Version
|
|
41
|
-
version:
|
|
41
|
+
version: 1.1.8
|
|
42
42
|
- !ruby/object:Gem::Dependency
|
|
43
43
|
name: statesman
|
|
44
44
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -369,13 +369,15 @@ executables: []
|
|
|
369
369
|
extensions: []
|
|
370
370
|
extra_rdoc_files: []
|
|
371
371
|
files:
|
|
372
|
+
- ".ably/capabilities.yaml"
|
|
372
373
|
- ".editorconfig"
|
|
373
|
-
- ".github/workflows/.rspec_parallel"
|
|
374
374
|
- ".github/workflows/check.yml"
|
|
375
375
|
- ".github/workflows/docs.yml"
|
|
376
|
+
- ".github/workflows/features.yml"
|
|
376
377
|
- ".gitignore"
|
|
377
378
|
- ".gitmodules"
|
|
378
379
|
- ".rspec"
|
|
380
|
+
- ".rspec_parallel"
|
|
379
381
|
- CHANGELOG.md
|
|
380
382
|
- COPYRIGHT
|
|
381
383
|
- Gemfile
|
|
@@ -604,7 +606,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
604
606
|
- !ruby/object:Gem::Version
|
|
605
607
|
version: '0'
|
|
606
608
|
requirements: []
|
|
607
|
-
rubygems_version: 3.
|
|
609
|
+
rubygems_version: 3.3.7
|
|
608
610
|
signing_key:
|
|
609
611
|
specification_version: 4
|
|
610
612
|
summary: A Ruby client library for ably.io realtime messaging implemented using EventMachine
|
|
File without changes
|