me-redis 0.1.5 → 0.1.6

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: 37a1a053c17bc56cc94b551e09527cd6d3a92a88c785988ac503d6241c803b3e
4
- data.tar.gz: 588df3069e17bfaf4e017d013d9d76f74359f5768a667ee1e3821d8f5b310e69
3
+ metadata.gz: fcb807ddbff3ae63c2c4ae0a1bdd2bee8e37202ca0477fc3c86d6b7c58feaa3d
4
+ data.tar.gz: 9d60ce417f2b0dfbf5e7fdf56ab6057e1a4f3bdb2ecc6793f8a952dc6fa9ed82
5
5
  SHA512:
6
- metadata.gz: 47e07cc98cf7b884cb5ee2bb68379d2cc98dd5c4635f9c31d4b382ef856f836e7dc0a524a36f72120ab91caad089481cd2a7912dca7c61bad89147c188da0aaa
7
- data.tar.gz: 5b3754b0aa7f4e74a233b241f057cb7d17ebf3836a01faeef72e4d137e58a7f19e7c1ee719d91d71b5a67ce63538bc4932030d685ca78c03c0ddaf1ce730a304
6
+ metadata.gz: 644bb9d176681ad580f7d268e6a3d51e4c06632d2269d00521a318544ed34a5fa50e9cc9035d94a6d823c3bd1e7b1d481406c4d3c82681343cfbb64c464e77b0
7
+ data.tar.gz: 4440092927b370e803e9d52eeb67477e9304734b178f4d013b4dec13af4d7ff44d9870190316e89f1fd515130cf0b838ab5401534ef089981cf16f6b2f31c41d
data/CHANGELOG.md CHANGED
@@ -1,3 +1,6 @@
1
+ # 0.1.6
2
+ * adapted for ruby 3.1
3
+
1
4
  # 0.1.5
2
5
  * keys will return keys after applying me_key transformation to a given pattern
3
6
  * config now is an OpenStruct, not a Struct
data/Dockerfile CHANGED
@@ -1,4 +1,4 @@
1
- FROM ruby:2.5
1
+ FROM ruby:2.7
2
2
 
3
3
  WORKDIR me-redis
4
4
 
data/docker-compose.yml CHANGED
@@ -9,6 +9,19 @@ services:
9
9
  build: .
10
10
  image: me-redis-test
11
11
  command: bundle exec rake test
12
+ volumes:
13
+ - '.:/me-redis'
14
+ depends_on:
15
+ - redis
16
+ environment:
17
+ REDIS_URL: redis://redis:6379
18
+
19
+ test3:
20
+ build:
21
+ context: .
22
+ dockerfile: ruby3.Dockerfile
23
+ image: me-redis-test-3
24
+ command: bundle exec rake test
12
25
  volumes:
13
26
  - '.:/me-redis'
14
27
  depends_on:
@@ -9,17 +9,17 @@ module MeRedisHotMigrator
9
9
 
10
10
  base.class_eval do
11
11
  ZK_FALLBACK_METHODS.each do |method|
12
- alias_method "_#{method}", method
12
+ alias_method "___#{method}", method
13
13
  end
14
14
 
15
15
  include(MeRedis)
16
16
 
17
17
  def me_get( key )
18
- prev_future = _get( key ) unless @client.is_a?(self.class::Client)
18
+ prev_future = ___get( key ) unless @client.is_a?(self.class::Client)
19
19
  newvl = super(key)
20
20
 
21
21
  newvl.prev_future = prev_future if newvl.is_a?(self.class::Future)
22
- newvl || _get( key )
22
+ newvl || ___get( key )
23
23
  end
24
24
 
25
25
  def me_mget(*keys)
@@ -36,15 +36,15 @@ module MeRedisHotMigrator
36
36
  module PrependMethods
37
37
  ZK_FALLBACK_METHODS.each do |method|
38
38
  define_method(method) do |*args|
39
- prev_future = send("_#{method}", *args) unless @client.is_a?(self.class::Client)
39
+ prev_future = send("___#{method}", *args) unless @client.is_a?(self.class::Client)
40
40
  newvl = super(*args)
41
41
 
42
42
  newvl.prev_future = prev_future if newvl.is_a?(self.class::Future)
43
43
 
44
44
  if method != :mget
45
- newvl || send("_#{method}", *args)
45
+ newvl || send("___#{method}", *args)
46
46
  else
47
- newvl.is_a?(Array) ? newvl.zip( send("_#{method}", *args) ).map!{|nvl, oldv| nvl || oldv } : newvl
47
+ newvl.is_a?(Array) ? newvl.zip( send("___#{method}", *args) ).map!{|nvl, oldv| nvl || oldv } : newvl
48
48
  end
49
49
 
50
50
  end
@@ -1,3 +1,3 @@
1
1
  module MeRedis
2
- VERSION = "0.1.5"
2
+ VERSION = "0.1.6"
3
3
  end
@@ -42,7 +42,7 @@ module MeRedis
42
42
  def persist(key); super(zip_key(key)) end
43
43
 
44
44
  def decrby( key, decrement ); super(zip_key(key), decrement) end
45
- def set( key, value, options = {} ); super( zip_key(key), value, options ) end
45
+ def set( key, value, **options ); super( zip_key(key), value, **options ) end
46
46
  def ttl(key); super( zip_key(key) ) end
47
47
  def mset( *key_values ); super( *key_values.each_slice(2).map{ |k,v| [zip_key(k),v] }.flatten ) end
48
48
  def mget( *keys ); super( *keys.map!{ |k| zip_key(k) } ) end
@@ -3,8 +3,8 @@ module MeRedis
3
3
  module ZipToHash
4
4
 
5
5
  module PrependMethods
6
- def initialize(*args, &block)
7
- super(*args, &block)
6
+ def initialize(*args, **kwargs, &block)
7
+ super(*args,**kwargs, &block)
8
8
 
9
9
  # hash-max-ziplist-entries must be cashed, we can't ask Redis every time we need to zip keys,
10
10
  # cause it's less performant and impossible during pipelining.
@@ -98,7 +98,7 @@ module MeRedis
98
98
 
99
99
  # Redis prepended methods
100
100
  def get( key ); unzip_value( super( key ), key) end
101
- def set( key, value, options = {} ); super( key, zip_value(value, key), options ) end
101
+ def set( key, value, **options); super( key, zip_value(value, key), **options ) end
102
102
 
103
103
  def mget(*args); unzip_arr_or_future(super(*args), args ) end
104
104
  def mset(*args); super( *map_msets_arr(args) ) end
data/lib/me_redis.rb CHANGED
@@ -17,17 +17,16 @@ require 'zlib'
17
17
  module MeRedis
18
18
  module ClassMethods
19
19
 
20
- def configure( config = nil )
20
+ def configure( **config )
21
21
  # at start they are nils, but at subsequent calls they may not be nils
22
22
  me_config.key_zip_regxp = nil
23
23
  me_config.compress_ns_regexp = nil
24
24
  @zip_ns_finder = nil
25
25
 
26
- config.each{ |key,value| me_config.send( "#{key}=", value ) } if config
26
+ config.each { |key,value| me_config.send( "#{key}=", value ) } if config
27
27
 
28
28
  yield( me_config ) if block_given?
29
29
 
30
-
31
30
  prepare_zip_crumbs
32
31
  prepare_compressors
33
32
 
@@ -99,6 +98,7 @@ module MeRedis
99
98
 
100
99
  def zip_ns_finder
101
100
  return @zip_ns_finder if @zip_ns_finder
101
+
102
102
  regexps_compress_ns = me_config.compress_namespaces.keys.select{|key| key.is_a?(Regexp) }
103
103
  strs_compress_ns = me_config.compress_namespaces.keys.select{|key| !key.is_a?(Regexp) }
104
104
 
data/me-redis.gemspec CHANGED
@@ -27,7 +27,7 @@ Gem::Specification.new do |spec|
27
27
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
28
28
  spec.require_paths = ["lib"]
29
29
 
30
- spec.add_dependency 'redis', '>= 3.0'
30
+ spec.add_dependency 'redis', '>= 3.0', '<= 4.5.1'
31
31
  spec.add_dependency 'base62-rb'
32
32
  spec.add_dependency "awesome_print"
33
33
 
data/ruby3.Dockerfile ADDED
@@ -0,0 +1,7 @@
1
+ FROM ruby:3-bullseye
2
+
3
+ WORKDIR me-redis
4
+
5
+ ADD . /me-redis/
6
+ RUN gem install bundler
7
+ RUN bundle install
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: me-redis
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.5
4
+ version: 0.1.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - alekseyl
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-10-27 00:00:00.000000000 Z
11
+ date: 2022-07-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: redis
@@ -17,6 +17,9 @@ dependencies:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
19
  version: '3.0'
20
+ - - "<="
21
+ - !ruby/object:Gem::Version
22
+ version: 4.5.1
20
23
  type: :runtime
21
24
  prerelease: false
22
25
  version_requirements: !ruby/object:Gem::Requirement
@@ -24,6 +27,9 @@ dependencies:
24
27
  - - ">="
25
28
  - !ruby/object:Gem::Version
26
29
  version: '3.0'
30
+ - - "<="
31
+ - !ruby/object:Gem::Version
32
+ version: 4.5.1
27
33
  - !ruby/object:Gem::Dependency
28
34
  name: base62-rb
29
35
  requirement: !ruby/object:Gem::Requirement
@@ -137,6 +143,7 @@ files:
137
143
  - lib/me_redis/zip_to_hash.rb
138
144
  - lib/me_redis/zip_values.rb
139
145
  - me-redis.gemspec
146
+ - ruby3.Dockerfile
140
147
  homepage: https://github.com/alekseyl/me-redis
141
148
  licenses:
142
149
  - MIT
@@ -157,8 +164,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
157
164
  - !ruby/object:Gem::Version
158
165
  version: '0'
159
166
  requirements: []
160
- rubyforge_project:
161
- rubygems_version: 2.7.6
167
+ rubygems_version: 3.2.15
162
168
  signing_key:
163
169
  specification_version: 4
164
170
  summary: Memory efficient redis extention