any_cache 0.6.0 → 0.7.0

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 4171018152b2cd50926bb30af5a32abd1f73badf63513b7c10c435f6085ae432
4
- data.tar.gz: 060a28461d9e19153f0aa916e4c8dd28b5fa3da5957446058c05d1e1cf650062
3
+ metadata.gz: 1f252f53d23e774f32bbc39bba3accdcd66866977a23eb6eb67785a7fad30fca
4
+ data.tar.gz: e49a1edf054da288f5bf31b9c3be480b57948a046a42d13a6737395cfdf0e05c
5
5
  SHA512:
6
- metadata.gz: a66eb019a8465c933e53f2a5573b1ac88a53f310f5bb738cec9c8874534e9027e37b366e2a8cc866fa182e6f54324b976229358e99dfc41f0f413ac150204464
7
- data.tar.gz: 343a60a141a5a95063e2e2fe96918bc20780ea1556787dca91b462582311325a459ccd464a619fae8eb4bf0c61d52375ec2c654620c0cf6fab39428eb159782c
6
+ metadata.gz: 87d7e0824c99ba3968b88d649e1402618fd1be28e3a7cb9199b188b85222025190fb9643a7025a2a4d3f0881a117f880781d476f2cdb4feabd61346265325706
7
+ data.tar.gz: 93866e6e804b5471e42fcea5951732592eaaaf0457274cc615d6abf68b89372d2dc9bbc0449b4a8e5cb899d500f1e2fa27f93ed468eceeddc9bd9d1d58c2e3cf
@@ -2,10 +2,11 @@ inherit_gem:
2
2
  armitage-rubocop:
3
3
  - lib/rubocop.general.yml
4
4
  - lib/rubocop.rspec.yml
5
+ - lib/rubocop.rake.yml
5
6
 
6
7
  AllCops:
7
8
  UseCache: true
8
- TargetRubyVersion: 2.6.4
9
+ TargetRubyVersion: 2.7.1
9
10
  Include:
10
11
  - bin/console
11
12
  - lib/**/*.rb
@@ -1,25 +1,26 @@
1
1
  language: ruby
2
- sudo: false
2
+ os: linux
3
+ dist: xenial
3
4
  before_install: gem install bundler
4
5
  cache: bundler
5
6
  script:
6
7
  - bundle exec rspec
7
8
  services:
8
- - redis-server
9
+ - redis
9
10
  - memcached
10
- matrix:
11
+ jobs:
11
12
  fast_finish: true
12
13
  include:
13
14
  - rvm: 2.3.8
14
15
  gemfile: gemfiles/active_support.gemfile
15
16
  env: TEST_AS_MEMORY_STORE_CACHE=true
16
- - rvm: 2.4.7
17
+ - rvm: 2.4.10
17
18
  gemfile: gemfiles/active_support.gemfile
18
19
  env: TEST_AS_MEMORY_STORE_CACHE=true
19
- - rvm: 2.5.6
20
+ - rvm: 2.5.8
20
21
  gemfile: gemfiles/active_support.gemfile
21
22
  env: TEST_AS_MEMORY_STORE_CACHE=true
22
- - rvm: 2.6.4
23
+ - rvm: 2.6.6
23
24
  gemfile: gemfiles/active_support.gemfile
24
25
  env: TEST_AS_MEMORY_STORE_CACHE=true
25
26
  - rvm: ruby-head
@@ -28,13 +29,16 @@ matrix:
28
29
  - rvm: 2.3.8
29
30
  gemfile: gemfiles/active_support.gemfile
30
31
  env: TEST_AS_FILE_STORE_CACHE=true
31
- - rvm: 2.4.7
32
+ - rvm: 2.4.10
32
33
  gemfile: gemfiles/active_support.gemfile
33
34
  env: TEST_AS_FILE_STORE_CACHE=true
34
- - rvm: 2.5.6
35
+ - rvm: 2.5.8
35
36
  gemfile: gemfiles/active_support.gemfile
36
37
  env: TEST_AS_FILE_STORE_CACHE=true
37
- - rvm: 2.6.4
38
+ - rvm: 2.6.6
39
+ gemfile: gemfiles/active_support.gemfile
40
+ env: TEST_AS_FILE_STORE_CACHE=true
41
+ - rvm: 2.7.1
38
42
  gemfile: gemfiles/active_support.gemfile
39
43
  env: TEST_AS_FILE_STORE_CACHE=true
40
44
  - rvm: ruby-head
@@ -43,13 +47,16 @@ matrix:
43
47
  - rvm: 2.3.8
44
48
  gemfile: gemfiles/active_support_with_redis.gemfile
45
49
  env: TEST_AS_REDIS_CACHE_STORE_CACHE=true
46
- - rvm: 2.4.7
50
+ - rvm: 2.4.10
51
+ gemfile: gemfiles/active_support_with_redis.gemfile
52
+ env: TEST_AS_REDIS_CACHE_STORE_CACHE=true
53
+ - rvm: 2.5.8
47
54
  gemfile: gemfiles/active_support_with_redis.gemfile
48
55
  env: TEST_AS_REDIS_CACHE_STORE_CACHE=true
49
- - rvm: 2.5.6
56
+ - rvm: 2.6.6
50
57
  gemfile: gemfiles/active_support_with_redis.gemfile
51
58
  env: TEST_AS_REDIS_CACHE_STORE_CACHE=true
52
- - rvm: 2.6.4
59
+ - rvm: 2.7.1
53
60
  gemfile: gemfiles/active_support_with_redis.gemfile
54
61
  env: TEST_AS_REDIS_CACHE_STORE_CACHE=true
55
62
  - rvm: ruby-head
@@ -58,13 +65,16 @@ matrix:
58
65
  - rvm: 2.3.8
59
66
  gemfile: gemfiles/dalli.gemfile
60
67
  env: TEST_DALLI_CACHE=true
61
- - rvm: 2.4.7
68
+ - rvm: 2.4.10
62
69
  gemfile: gemfiles/dalli.gemfile
63
70
  env: TEST_DALLI_CACHE=true
64
- - rvm: 2.5.6
71
+ - rvm: 2.5.8
65
72
  gemfile: gemfiles/dalli.gemfile
66
73
  env: TEST_DALLI_CACHE=true
67
- - rvm: 2.6.4
74
+ - rvm: 2.6.6
75
+ gemfile: gemfiles/dalli.gemfile
76
+ env: TEST_DALLI_CACHE=true
77
+ - rvm: 2.7.1
68
78
  gemfile: gemfiles/dalli.gemfile
69
79
  env: TEST_DALLI_CACHE=true
70
80
  - rvm: ruby-head
@@ -73,13 +83,16 @@ matrix:
73
83
  - rvm: 2.3.8
74
84
  gemfile: gemfiles/redis_store.gemfile
75
85
  env: TEST_REDIS_STORE_CACHE=true
76
- - rvm: 2.4.7
86
+ - rvm: 2.4.10
87
+ gemfile: gemfiles/redis_store.gemfile
88
+ env: TEST_REDIS_STORE_CACHE=true
89
+ - rvm: 2.5.8
77
90
  gemfile: gemfiles/redis_store.gemfile
78
91
  env: TEST_REDIS_STORE_CACHE=true
79
- - rvm: 2.5.6
92
+ - rvm: 2.6.6
80
93
  gemfile: gemfiles/redis_store.gemfile
81
94
  env: TEST_REDIS_STORE_CACHE=true
82
- - rvm: 2.6.4
95
+ - rvm: 2.7.1
83
96
  gemfile: gemfiles/redis_store.gemfile
84
97
  env: TEST_REDIS_STORE_CACHE=true
85
98
  - rvm: ruby-head
@@ -88,13 +101,16 @@ matrix:
88
101
  - rvm: 2.3.8
89
102
  gemfile: gemfiles/active_support_with_dalli.gemfile
90
103
  env: TEST_AS_DALLI_STORE=true
91
- - rvm: 2.4.7
104
+ - rvm: 2.4.10
105
+ gemfile: gemfiles/active_support_with_dalli.gemfile
106
+ env: TEST_AS_DALLI_STORE=true
107
+ - rvm: 2.5.8
92
108
  gemfile: gemfiles/active_support_with_dalli.gemfile
93
109
  env: TEST_AS_DALLI_STORE=true
94
- - rvm: 2.5.6
110
+ - rvm: 2.6.6
95
111
  gemfile: gemfiles/active_support_with_dalli.gemfile
96
112
  env: TEST_AS_DALLI_STORE=true
97
- - rvm: 2.6.4
113
+ - rvm: 2.7.1
98
114
  gemfile: gemfiles/active_support_with_dalli.gemfile
99
115
  env: TEST_AS_DALLI_STORE=true
100
116
  - rvm: ruby-head
@@ -103,13 +119,16 @@ matrix:
103
119
  - rvm: 2.3.8
104
120
  gemfile: gemfiles/redis_store.gemfile
105
121
  env: TEST_REDIS_CACHE=true
106
- - rvm: 2.4.7
122
+ - rvm: 2.4.10
107
123
  gemfile: gemfiles/redis_store.gemfile
108
124
  env: TEST_REDIS_CACHE=true
109
- - rvm: 2.5.6
125
+ - rvm: 2.5.8
110
126
  gemfile: gemfiles/redis_store.gemfile
111
127
  env: TEST_REDIS_CACHE=true
112
- - rvm: 2.6.4
128
+ - rvm: 2.6.6
129
+ gemfile: gemfiles/redis_store.gemfile
130
+ env: TEST_REDIS_CACHE=true
131
+ - rvm: 2.7.1
113
132
  gemfile: gemfiles/redis_store.gemfile
114
133
  env: TEST_REDIS_CACHE=true
115
134
  - rvm: ruby-head
@@ -118,18 +137,18 @@ matrix:
118
137
  - rvm: 2.3.8
119
138
  gemfile: gemfiles/active_support_with_dalli.gemfile
120
139
  env: TEST_AS_MEM_CACHE_STORE_CACHE=true
121
- - rvm: 2.4.7
140
+ - rvm: 2.4.10
141
+ gemfile: gemfiles/active_support_with_dalli.gemfile
142
+ env: TEST_AS_MEM_CACHE_STORE_CACHE=true
143
+ - rvm: 2.5.8
122
144
  gemfile: gemfiles/active_support_with_dalli.gemfile
123
145
  env: TEST_AS_MEM_CACHE_STORE_CACHE=true
124
- - rvm: 2.5.6
146
+ - rvm: 2.6.6
125
147
  gemfile: gemfiles/active_support_with_dalli.gemfile
126
148
  env: TEST_AS_MEM_CACHE_STORE_CACHE=true
127
- - rvm: 2.6.4
149
+ - rvm: 2.7.1
128
150
  gemfile: gemfiles/active_support_with_dalli.gemfile
129
151
  env: TEST_AS_MEM_CACHE_STORE_CACHE=true
130
152
  - rvm: ruby-head
131
153
  gemfile: gemfiles/active_support_with_dalli.gemfile
132
154
  env: TEST_AS_MEM_CACHE_STORE_CACHE=true
133
- notifications:
134
- slack:
135
- secure: CRYB00OjJTaAYDPM7VgzdU6kBu0WcgwxyzXR6UTrTklrz3jI8ZRKUxrIqNJXvvYbmQPmnRClCeb1/K865RaH+r6Lc+Fob9mBJrjX2eH8CRtBpn542MgKQcJrJR1rrZnxSq7hAfjzYddtbF/vlzkW5yIRLvtihzY9pP+o9XEJF4mhMZWZw8qeqfK16uDzInYpS7ocw7TjDobKPSpG7SXpm+tVMV+0Wmq/58GZDiHq/vEIPiEegnXEEA6lJao/isZtUGn0YFY+ibQA0MrjnBouIdm4MMkK62ybS8dV/EKT6z0ZuG81VhS8Jb6h8H5j9td8xzjYsHpb1FZE0Rwr8ClWmo2vPRekPxpwqJMBM9lBKJ4Ez7lNWsJP0YkleKfmDEN1KIaMMH4g2YXeTfDagVHc803ooNjCbS1EMA1fZgF77gdlG10sdbyexHkxYxw1rozSa1G6OdDBbKehdaCbqbiqx0unI6gQtENa6ouUiIndZjE/ehcHnP4Y8lFTIbwmvGqborkhsI/0/8X0/Xh6GDypOml3mvKT5u7m0UYBy5lSQpTpmZVz9TV3pId12DM1eObIeWxYRkz+L+7stQBfVAVy8mZFLxm2pmey/Vn5pwAnEwgOBZ5qFPrIEHrjgH91rpdvYVPYswYdGm7WrKPpta4pQhSqDMlKhW1zfk+AMmZ4Yz0=
@@ -1,6 +1,14 @@
1
1
  # Changelog
2
2
  All notable changes to this project will be documented in this file.
3
3
 
4
+ ## [0.7.0] - 2020-04-13
5
+ ### Added
6
+ - Support for ruby@2.7.1, ruby@2.5.8, ruby@2.6.6, ruby@2.4.10;
7
+
8
+ ### Changed
9
+ - Actualized dependnecies;
10
+ - Actualized development dependencies;
11
+
4
12
  ## [0.6.0] - 2019-09-13
5
13
  ### Changed
6
14
  - Actualized dependencies (`qonfig` - `~> 0.16.0`);
@@ -1,6 +1,6 @@
1
1
  The MIT License (MIT)
2
2
 
3
- Copyright (c) 2018-2019 Rustam Ibragimov
3
+ Copyright (c) 2018-2020 Rustam Ibragimov
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
data/README.md CHANGED
@@ -14,8 +14,11 @@ Supported clients:
14
14
  - `ActiveSupport::Cache::FileStore` ([gem activesupport](https://github.com/rails/rails/blob/master/activesupport/lib/active_support/cache/file_store.rb)) ([file storage](https://api.rubyonrails.org/classes/ActiveSupport/Cache/FileStore.html))
15
15
  - `ActiveSupport::Cache::MemoryStore` ([gem activesupport](https://github.com/rails/rails/blob/master/activesupport/lib/active_support/cache/memory_store.rb)) ([in memory storage](https://api.rubyonrails.org/classes/ActiveSupport/Cache/MemoryStore.html))
16
16
 
17
+ - [Coming Soon] File-based configuration;
17
18
  - [Coming Soon] Simple in-memory hash-based cache client
18
19
  - [Coming Soon] Simple key-value storage based on PostgreSQL
20
+ - [Coming Soon] Support for `ActiveSupport::Cache::NullStore`
21
+ - [Coming Soon] Naive `NullStore` implementation;
19
22
 
20
23
  ---
21
24
 
@@ -731,10 +734,12 @@ bin/rspec --test-as-memory-store # run specs with ActiveSupport::Cache::MemorySt
731
734
 
732
735
  ## Roadmap
733
736
 
734
- - instrumentation layer;
735
- - global and configurable default expiration time;
736
- - `#delete_matched` for memcached-based cache storages;
737
- - rails integration;
737
+ - centralized Logging API (core API);
738
+ - instrumentation layer (public API);
739
+ - more robust delegation API (core API);
740
+ - global and configurable default expiration time (public API);
741
+ - `#delete_matched` for memcached-based cache storages (core/public API);
742
+ - rails integration (public API);
738
743
 
739
744
  ---
740
745
 
data/Rakefile CHANGED
@@ -3,16 +3,18 @@
3
3
  require 'bundler/gem_tasks'
4
4
  require 'rspec/core/rake_task'
5
5
  require 'rubocop'
6
- require 'rubocop-rspec'
7
- require 'rubocop-performance'
8
6
  require 'rubocop/rake_task'
7
+ require 'rubocop-rails'
8
+ require 'rubocop-performance'
9
+ require 'rubocop-rspec'
10
+ require 'rubocop-rake'
9
11
 
10
12
  RuboCop::RakeTask.new(:rubocop) do |t|
11
13
  config_path = File.expand_path(File.join('.rubocop.yml'), __dir__)
12
-
13
14
  t.options = ['--config', config_path]
14
15
  t.requires << 'rubocop-rspec'
15
16
  t.requires << 'rubocop-performance'
17
+ t.requires << 'rubocop-rake'
16
18
  end
17
19
 
18
20
  RSpec::Core::RakeTask.new(:rspec)
@@ -27,13 +27,12 @@ Gem::Specification.new do |spec|
27
27
  `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(spec|features)/}) }
28
28
  end
29
29
 
30
- spec.add_dependency 'concurrent-ruby', '~> 1.0'
31
- spec.add_dependency 'qonfig', '~> 0.16'
30
+ spec.add_dependency 'concurrent-ruby', '~> 1.1'
31
+ spec.add_dependency 'qonfig', '>= 0.24'
32
32
 
33
- spec.add_development_dependency 'coveralls', '~> 0.8'
34
- spec.add_development_dependency 'simplecov', '~> 0.16'
35
- spec.add_development_dependency 'armitage-rubocop', '~> 0.74'
36
- spec.add_development_dependency 'rspec', '~> 3.8'
33
+ spec.add_development_dependency 'simplecov', '~> 0.18'
34
+ spec.add_development_dependency 'armitage-rubocop', '~> 0.81'
35
+ spec.add_development_dependency 'rspec', '~> 3.9'
37
36
 
38
37
  spec.add_development_dependency 'bundler'
39
38
  spec.add_development_dependency 'rake'
@@ -4,6 +4,7 @@ require 'logger'
4
4
  require 'qonfig'
5
5
  require 'securerandom'
6
6
  require 'concurrent/atomic/reentrant_read_write_lock'
7
+ require 'zlib'
7
8
 
8
9
  # @api public
9
10
  # @since 0.1.0
@@ -34,6 +34,7 @@ module AnyCache::Delegation
34
34
  # @api private
35
35
  # @since 0.3.0
36
36
  def def_loggable_delegator(receiver, delegat)
37
+ # TODO: move to Instrumentation API
37
38
  define_method(delegat) do |*args, **opts, &block|
38
39
  send(receiver).send(delegat, *args, **opts, &block).tap do
39
40
  shared_config[:logger].tap do |logger|
@@ -7,6 +7,6 @@ class AnyCache::Logging::Logger < ::Logger
7
7
  # @since 0.3.0
8
8
  def initialize(*, **)
9
9
  super
10
- self.level = ::Logger::INFO
10
+ self.level = ::Logger::INFO # TODO: use configuration from the adapter instance
11
11
  end
12
12
  end
@@ -5,5 +5,5 @@ class AnyCache
5
5
  #
6
6
  # @api public
7
7
  # @since 0.1.0
8
- VERSION = '0.6.0'
8
+ VERSION = '0.7.0'
9
9
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: any_cache
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.0
4
+ version: 0.7.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Rustam Ibragimov
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-09-13 00:00:00.000000000 Z
11
+ date: 2020-04-12 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: concurrent-ruby
@@ -16,84 +16,70 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '1.0'
19
+ version: '1.1'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '1.0'
26
+ version: '1.1'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: qonfig
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - "~>"
31
+ - - ">="
32
32
  - !ruby/object:Gem::Version
33
- version: '0.16'
33
+ version: '0.24'
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - "~>"
39
- - !ruby/object:Gem::Version
40
- version: '0.16'
41
- - !ruby/object:Gem::Dependency
42
- name: coveralls
43
- requirement: !ruby/object:Gem::Requirement
44
- requirements:
45
- - - "~>"
46
- - !ruby/object:Gem::Version
47
- version: '0.8'
48
- type: :development
49
- prerelease: false
50
- version_requirements: !ruby/object:Gem::Requirement
51
- requirements:
52
- - - "~>"
38
+ - - ">="
53
39
  - !ruby/object:Gem::Version
54
- version: '0.8'
40
+ version: '0.24'
55
41
  - !ruby/object:Gem::Dependency
56
42
  name: simplecov
57
43
  requirement: !ruby/object:Gem::Requirement
58
44
  requirements:
59
45
  - - "~>"
60
46
  - !ruby/object:Gem::Version
61
- version: '0.16'
47
+ version: '0.18'
62
48
  type: :development
63
49
  prerelease: false
64
50
  version_requirements: !ruby/object:Gem::Requirement
65
51
  requirements:
66
52
  - - "~>"
67
53
  - !ruby/object:Gem::Version
68
- version: '0.16'
54
+ version: '0.18'
69
55
  - !ruby/object:Gem::Dependency
70
56
  name: armitage-rubocop
71
57
  requirement: !ruby/object:Gem::Requirement
72
58
  requirements:
73
59
  - - "~>"
74
60
  - !ruby/object:Gem::Version
75
- version: '0.74'
61
+ version: '0.81'
76
62
  type: :development
77
63
  prerelease: false
78
64
  version_requirements: !ruby/object:Gem::Requirement
79
65
  requirements:
80
66
  - - "~>"
81
67
  - !ruby/object:Gem::Version
82
- version: '0.74'
68
+ version: '0.81'
83
69
  - !ruby/object:Gem::Dependency
84
70
  name: rspec
85
71
  requirement: !ruby/object:Gem::Requirement
86
72
  requirements:
87
73
  - - "~>"
88
74
  - !ruby/object:Gem::Version
89
- version: '3.8'
75
+ version: '3.9'
90
76
  type: :development
91
77
  prerelease: false
92
78
  version_requirements: !ruby/object:Gem::Requirement
93
79
  requirements:
94
80
  - - "~>"
95
81
  - !ruby/object:Gem::Version
96
- version: '3.8'
82
+ version: '3.9'
97
83
  - !ruby/object:Gem::Dependency
98
84
  name: bundler
99
85
  requirement: !ruby/object:Gem::Requirement
@@ -237,7 +223,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
237
223
  - !ruby/object:Gem::Version
238
224
  version: '0'
239
225
  requirements: []
240
- rubygems_version: 3.0.3
226
+ rubygems_version: 3.1.2
241
227
  signing_key:
242
228
  specification_version: 4
243
229
  summary: AnyCache - a simplest cache wrapper