redlock 2.0.4 → 2.0.5

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: a0dee2cedbef9dc37a61a0708dc788287d3ab70b96bfd2561267ddd580e128f9
4
- data.tar.gz: 7e6292d1b22149c3c538c7f3bbd0285a9a7c51ef472d2ec22e99190927da5967
3
+ metadata.gz: 7672717848770741429fd13a59ea4b6a6f734ffd8b519a9c3e27c5562f553cec
4
+ data.tar.gz: 627314f12eaf57b1e44bde9cfe2388716705c93b27f95479aa5c70553b3c754b
5
5
  SHA512:
6
- metadata.gz: 4fccf4ff8a3c5647e828a71b6b982b67f5bc1cc702a88279752ce53fc88addc4f5ffaa657f4c7f5f5ca09bfb9ee27f2aee8f7551a9bfa655f176d99c98d76051
7
- data.tar.gz: ef9d3a5f10ec4b62b41ee890a69eb91ff16d92832ca75d82fb1387145330f979d8d01b614bf0893ad29669056f479a44f64278effcdbcc74150be2a4a2258f3d
6
+ metadata.gz: 31b8beb93afa3cd62e741637aa221b71522810a8df54d33ea54874eed7d8fac894da1622f97528704027b870dd7945bdb53dd7424fbfb47c47430f6f659d2a90
7
+ data.tar.gz: 3602f85cafd155cdaef70499231a0885f1df13f58abc1859c526d11f43ea303a2ee746928166002b5495e53b5ce8fa84700d76c583463bed3adef25da263c5d8
@@ -157,24 +157,19 @@ module Redlock
157
157
  private
158
158
 
159
159
  class RedisInstance
160
- module ConnectionPoolLike
161
- def with
162
- yield self
163
- end
164
- end
165
-
166
160
  def initialize(connection)
167
161
  @monitor = Monitor.new
168
162
 
169
- if connection.respond_to?(:with)
163
+ if connection.respond_to?(:call)
170
164
  @redis = connection
171
165
  else
172
166
  if connection.respond_to?(:client)
173
167
  @redis = connection
174
- else
168
+ elsif connection.respond_to?(:key?)
175
169
  @redis = initialize_client(connection)
170
+ else
171
+ @redis = connection
176
172
  end
177
- @redis.extend(ConnectionPoolLike)
178
173
  end
179
174
  end
180
175
 
@@ -202,7 +197,7 @@ module Redlock
202
197
  end
203
198
 
204
199
  def synchronize
205
- @monitor.synchronize { @redis.with { |connection| yield(connection) } }
200
+ @monitor.synchronize { @redis.then { |connection| yield(connection) } }
206
201
  end
207
202
 
208
203
  def lock(resource, val, ttl, allow_new_lock)
@@ -1,3 +1,3 @@
1
1
  module Redlock
2
- VERSION = '2.0.4'
2
+ VERSION = '2.0.5'
3
3
  end
data/spec/client_spec.rb CHANGED
@@ -30,11 +30,7 @@ RSpec.describe Redlock::Client do
30
30
  let(:redis3_host) { ENV["REDIS3_HOST"] || "127.0.0.1" }
31
31
  let(:redis3_port) { ENV["REDIS3_PORT"] || "6379" }
32
32
  let(:unreachable_redis) {
33
- redis = RedisClient.new(url: 'redis://localhost:46864')
34
- def redis.with
35
- yield self
36
- end
37
- redis
33
+ RedisClient.new(url: 'redis://localhost:46864')
38
34
  }
39
35
 
40
36
  describe 'initialize' do
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: redlock
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.4
4
+ version: 2.0.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Leandro Moreira
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-08-20 00:00:00.000000000 Z
11
+ date: 2023-10-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: redis-client