identity_cache 1.0.1 → 1.1.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
  module IdentityCache
3
- VERSION = "1.0.1"
3
+ VERSION = "1.1.0"
4
4
  CACHE_VERSION = 8
5
5
  end
@@ -107,28 +107,6 @@ module DeletedRunner
107
107
  end
108
108
  end
109
109
 
110
- module ConflictRunner
111
- def prepare
112
- super
113
- records = (1..@count).map { |id| ::Item.find(id) }
114
- orig_resolve_cache_miss = ::Item.method(:resolve_cache_miss)
115
-
116
- ::Item.define_singleton_method(:resolve_cache_miss) do |id|
117
- records[id - 1].expire_cache
118
- orig_resolve_cache_miss.call(id)
119
- end
120
- IdentityCache.cache.clear
121
- end
122
- end
123
-
124
- module DeletedConflictRunner
125
- include ConflictRunner
126
- def prepare
127
- super
128
- (1..@count).each { |i| ::Item.find(i).expire_cache }
129
- end
130
- end
131
-
132
110
  class EmbedRunner < CacheRunner
133
111
  def setup_models
134
112
  super
@@ -161,16 +139,6 @@ class FetchEmbedDeletedRunner < EmbedRunner
161
139
  end
162
140
  CACHE_RUNNERS << FetchEmbedDeletedRunner
163
141
 
164
- class FetchEmbedConflictRunner < EmbedRunner
165
- include ConflictRunner
166
- end
167
- CACHE_RUNNERS << FetchEmbedConflictRunner
168
-
169
- class FetchEmbedDeletedConflictRunner < EmbedRunner
170
- include DeletedConflictRunner
171
- end
172
- CACHE_RUNNERS << FetchEmbedDeletedConflictRunner
173
-
174
142
  class NormalizedRunner < CacheRunner
175
143
  def setup_models
176
144
  super
@@ -204,13 +172,3 @@ class FetchNormalizedDeletedRunner < NormalizedRunner
204
172
  include DeletedRunner
205
173
  end
206
174
  CACHE_RUNNERS << FetchNormalizedDeletedRunner
207
-
208
- class FetchNormalizedConflictRunner < EmbedRunner
209
- include ConflictRunner
210
- end
211
- CACHE_RUNNERS << FetchNormalizedConflictRunner
212
-
213
- class FetchNormalizedDeletedConflictRunner < EmbedRunner
214
- include DeletedConflictRunner
215
- end
216
- CACHE_RUNNERS << FetchNormalizedDeletedConflictRunner
@@ -23,7 +23,7 @@ end
23
23
  def benchmark(runners, label_width = 0)
24
24
  IdentityCache.cache.clear
25
25
  runners.each do |runner|
26
- print "#{runner.name}: ".ljust(label_width)
26
+ print("#{runner.name}: ".ljust(label_width))
27
27
  puts run(runner.new(RUNS))
28
28
  end
29
29
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: identity_cache
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.1
4
+ version: 1.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Camilo Lopez
@@ -14,7 +14,7 @@ authors:
14
14
  autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
- date: 2020-02-14 00:00:00.000000000 Z
17
+ date: 2021-01-08 00:00:00.000000000 Z
18
18
  dependencies:
19
19
  - !ruby/object:Gem::Dependency
20
20
  name: ar_transaction_changes
@@ -22,14 +22,14 @@ dependencies:
22
22
  requirements:
23
23
  - - "~>"
24
24
  - !ruby/object:Gem::Version
25
- version: '1.0'
25
+ version: '1.1'
26
26
  type: :runtime
27
27
  prerelease: false
28
28
  version_requirements: !ruby/object:Gem::Requirement
29
29
  requirements:
30
30
  - - "~>"
31
31
  - !ruby/object:Gem::Version
32
- version: '1.0'
32
+ version: '1.1'
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: activerecord
35
35
  requirement: !ruby/object:Gem::Requirement
@@ -72,6 +72,20 @@ dependencies:
72
72
  - - "~>"
73
73
  - !ruby/object:Gem::Version
74
74
  version: 1.0.0
75
+ - !ruby/object:Gem::Dependency
76
+ name: dalli
77
+ requirement: !ruby/object:Gem::Requirement
78
+ requirements:
79
+ - - ">="
80
+ - !ruby/object:Gem::Version
81
+ version: '0'
82
+ type: :development
83
+ prerelease: false
84
+ version_requirements: !ruby/object:Gem::Requirement
85
+ requirements:
86
+ - - ">="
87
+ - !ruby/object:Gem::Version
88
+ version: '0'
75
89
  - !ruby/object:Gem::Dependency
76
90
  name: rake
77
91
  requirement: !ruby/object:Gem::Requirement
@@ -160,16 +174,16 @@ dependencies:
160
174
  name: pg
161
175
  requirement: !ruby/object:Gem::Requirement
162
176
  requirements:
163
- - - "~>"
177
+ - - ">="
164
178
  - !ruby/object:Gem::Version
165
- version: '0.18'
179
+ version: '0'
166
180
  type: :development
167
181
  prerelease: false
168
182
  version_requirements: !ruby/object:Gem::Requirement
169
183
  requirements:
170
- - - "~>"
184
+ - - ">="
171
185
  - !ruby/object:Gem::Version
172
- version: '0.18'
186
+ version: '0'
173
187
  - !ruby/object:Gem::Dependency
174
188
  name: stackprof
175
189
  requirement: !ruby/object:Gem::Requirement
@@ -195,7 +209,7 @@ files:
195
209
  - ".github/workflows/ci.yml"
196
210
  - ".gitignore"
197
211
  - ".rubocop.yml"
198
- - ".travis.yml"
212
+ - CAVEATS.md
199
213
  - CHANGELOG.md
200
214
  - CONTRIBUTING.md
201
215
  - Gemfile
@@ -204,8 +218,8 @@ files:
204
218
  - Rakefile
205
219
  - dev.yml
206
220
  - gemfiles/Gemfile.latest-release
221
+ - gemfiles/Gemfile.min-supported
207
222
  - gemfiles/Gemfile.rails-edge
208
- - gemfiles/Gemfile.rails52
209
223
  - identity_cache.gemspec
210
224
  - lib/identity_cache.rb
211
225
  - lib/identity_cache/belongs_to_caching.rb
@@ -237,6 +251,7 @@ files:
237
251
  - lib/identity_cache/load_strategy/lazy.rb
238
252
  - lib/identity_cache/load_strategy/load_request.rb
239
253
  - lib/identity_cache/load_strategy/multi_load_request.rb
254
+ - lib/identity_cache/mem_cache_store_cas.rb
240
255
  - lib/identity_cache/memoized_cache_proxy.rb
241
256
  - lib/identity_cache/parent_model_expiration.rb
242
257
  - lib/identity_cache/query_api.rb
@@ -254,7 +269,8 @@ files:
254
269
  - shipit.rubygems.yml
255
270
  homepage: https://github.com/Shopify/identity_cache
256
271
  licenses: []
257
- metadata: {}
272
+ metadata:
273
+ allowed_push_host: https://rubygems.org
258
274
  post_install_message:
259
275
  rdoc_options: []
260
276
  require_paths:
@@ -263,7 +279,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
263
279
  requirements:
264
280
  - - ">="
265
281
  - !ruby/object:Gem::Version
266
- version: 2.4.0
282
+ version: 2.5.0
267
283
  required_rubygems_version: !ruby/object:Gem::Requirement
268
284
  requirements:
269
285
  - - ">="
@@ -1,45 +0,0 @@
1
- language: ruby
2
-
3
- rvm:
4
- - 2.4
5
- - 2.6
6
-
7
- gemfile:
8
- - gemfiles/Gemfile.rails52
9
- - gemfiles/Gemfile.latest-release
10
- - gemfiles/Gemfile.rails-edge
11
-
12
- env:
13
- - DB=mysql2
14
- - DB=postgresql
15
-
16
- jobs:
17
- exclude:
18
- - rvm: 2.4
19
- gemfile: gemfiles/Gemfile.rails-edge
20
- - rvm: 2.4
21
- gemfile: gemfiles/Gemfile.latest-release
22
-
23
- services:
24
- - memcache
25
- - mysql
26
- - postgresql
27
-
28
- sudo: false
29
-
30
- before_script:
31
- - mysql -e 'create database identity_cache_test'
32
- - psql -c 'create database identity_cache_test;' -U postgres
33
-
34
- script:
35
- - bundle exec rake test
36
-
37
- cache: bundler
38
-
39
- matrix:
40
- exclude:
41
- - rvm: 2.2.6
42
- gemfile: gemfiles/Gemfile.rails-edge
43
-
44
- notifications:
45
- email: false
@@ -1,6 +0,0 @@
1
- source 'https://rubygems.org'
2
- gemspec path: '..'
3
-
4
- gem 'activerecord', '~> 5.2'
5
- gem 'activesupport', '~> 5.2'
6
- gem 'mysql2', '>= 0.4.4', '< 0.6.0'