anycable-core 1.2.4 → 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/CHANGELOG.md +5 -0
- data/lib/anycable/broadcast_adapters/http.rb +4 -1
- data/lib/anycable/config.rb +4 -1
- data/lib/anycable/version.rb +1 -1
- data/sig/anycable/config.rbs +3 -0
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 5e9ba8037b7cbd766d021b4e88d49101b6dc3e9a5a6b355929bf9aaa8494f33a
|
4
|
+
data.tar.gz: 71cd40b2380601f322a335d774cfb41e39f8de6ac29f4b5201a825119bff1031
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f1a372e6d70eb1db64054aeafcc3baccd674d679652309526fbcfe9329799383b671d532cd16a52dd53b00b4a1658100d000f4564f2cbaac00502e02da00b668
|
7
|
+
data.tar.gz: 5d9434268c8d7b3903544ab357caadcb69150be82d921c2de2916f4191b1280c0c3b981de285425d969bd1693b02974be4a844447576e3975ed0280c877be3c0
|
data/CHANGELOG.md
CHANGED
@@ -2,6 +2,10 @@
|
|
2
2
|
|
3
3
|
## master
|
4
4
|
|
5
|
+
## 1.2.5 (2022-12-01)
|
6
|
+
|
7
|
+
- Add `ANYCABLE_REDIS_TLS_VERIFY` setting to disable validation of Redis server TLS certificate. ([@Envek][])
|
8
|
+
|
5
9
|
## 1.2.4 (2022-08-10)
|
6
10
|
|
7
11
|
- Add NATS pub/sub adapter. ([@palkan][])
|
@@ -131,3 +135,4 @@ See [Changelog](https://github.com/anycable/anycable/blob/0-6-stable/CHANGELOG.m
|
|
131
135
|
[@sponomarev]: https://github.com/sponomarev
|
132
136
|
[@bibendi]: https://github.com/bibendi
|
133
137
|
[@smasry]: https://github.com/smasry
|
138
|
+
[@Envek]: https://github.com/Envek
|
@@ -118,7 +118,10 @@ module AnyCable
|
|
118
118
|
yield http
|
119
119
|
rescue Timeout::Error, *RECOVERABLE_EXCEPTIONS => e
|
120
120
|
retry_count += 1
|
121
|
-
|
121
|
+
if MAX_ATTEMPTS < retry_count
|
122
|
+
logger.error("Broadcast request failed: #{e.message}")
|
123
|
+
return
|
124
|
+
end
|
122
125
|
|
123
126
|
sleep((DELAY**retry_count).to_int * retry_count)
|
124
127
|
retry
|
data/lib/anycable/config.rb
CHANGED
@@ -28,6 +28,7 @@ module AnyCable
|
|
28
28
|
redis_url: ENV.fetch("REDIS_URL", "redis://localhost:6379/5"),
|
29
29
|
redis_sentinels: nil,
|
30
30
|
redis_channel: "__anycable__",
|
31
|
+
redis_tls_verify: false,
|
31
32
|
|
32
33
|
### NATS options
|
33
34
|
nats_servers: "nats://localhost:4222",
|
@@ -57,6 +58,7 @@ module AnyCable
|
|
57
58
|
coerce_types(
|
58
59
|
redis_sentinels: {type: nil, array: true},
|
59
60
|
nats_servers: {type: nil, array: true},
|
61
|
+
redis_tls_verify: :boolean,
|
60
62
|
nats_dont_randomize_servers: :boolean,
|
61
63
|
debug: :boolean,
|
62
64
|
version_check_enabled: :boolean
|
@@ -94,6 +96,7 @@ module AnyCable
|
|
94
96
|
--redis-url=url Redis URL for pub/sub, default: REDIS_URL or "redis://localhost:6379/5"
|
95
97
|
--redis-channel=name Redis channel for broadcasting, default: "__anycable__"
|
96
98
|
--redis-sentinels=<...hosts> Redis Sentinel followers addresses (as a comma-separated list), default: nil
|
99
|
+
--redis-tls-verify=yes|no Whether to perform server certificate check in case of rediss:// protocol. Default: yes
|
97
100
|
|
98
101
|
NATS PUB/SUB
|
99
102
|
--nats-servers=<...addresses> NATS servers for pub/sub, default: "nats://localhost:4222"
|
@@ -119,7 +122,7 @@ module AnyCable
|
|
119
122
|
|
120
123
|
params[:sentinels] = sentinels.map { |sentinel| parse_sentinel(sentinel) }
|
121
124
|
end.tap do |params|
|
122
|
-
next unless redis_url.match?(/rediss:\/\//)
|
125
|
+
next unless redis_url.match?(/rediss:\/\//) && !redis_tls_verify?
|
123
126
|
|
124
127
|
params[:ssl_params] = {verify_mode: OpenSSL::SSL::VERIFY_NONE}
|
125
128
|
end
|
data/lib/anycable/version.rb
CHANGED
data/sig/anycable/config.rbs
CHANGED
@@ -8,6 +8,9 @@ module AnyCable
|
|
8
8
|
def redis_sentinels=: (Array[String]) -> void
|
9
9
|
def redis_channel: () -> String
|
10
10
|
def redis_channel=: (String) -> void
|
11
|
+
def redis_tls_verify: () -> bool
|
12
|
+
def redis_tls_verify?: () -> bool
|
13
|
+
def redis_tls_verify=: (bool) -> void
|
11
14
|
def nats_servers: () -> Array[String]
|
12
15
|
def nats_servers=: (Array[String]) -> void
|
13
16
|
def nats_channel: () -> String
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: anycable-core
|
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
|
- palkan
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-
|
11
|
+
date: 2022-12-01 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: anyway_config
|