second_level_cache 2.4.4 → 2.5.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
- SHA1:
3
- metadata.gz: 53372ad4a8c4950dde0b32e9307ae5a104f23bc6
4
- data.tar.gz: 13065046314c304e6409c93fe7a10e92d597cece
2
+ SHA256:
3
+ metadata.gz: e3d60f7f52e3d34b0d49447bab88db697f929bf270435765ac8fed80d8d2da1c
4
+ data.tar.gz: 8f4cde5b59a3b37112d0471f2e0a5ccf1218745b7e63b07d125401f15203f693
5
5
  SHA512:
6
- metadata.gz: 422b464203cc111ad3ffa58fe36116ae4438988a0e0630f361bdec6db9c2b614feeb1b4d713b4b211c2b9646dfaf61ec673d7d5107189bdd582de12240691b48
7
- data.tar.gz: eaae2b651b0746200f05567a65450a1326ce4496d3120872de7b75b7d352011252236f1504ae03383922cc7bd477429a9252c60174f8724cecfc492f43035828
6
+ metadata.gz: cddaaae90ae703a7b9ec9febdc3471b9839417a63d75c55b88d622e6d016358467ff8cc19e0a292adacc3c4391c3b7d679e56c544369bfac877d6a2f85a12dfb
7
+ data.tar.gz: c5968feec18ad66efa1cee8f379330695276703b65d8a36f0f4943957cdcb107cb855fa2ae660a4e91d90f64abd39556e510b108cad728085fd191f08e502bc7
data/CHANGELOG.md CHANGED
@@ -1,3 +1,9 @@
1
+ 2.5.0
2
+ -------
3
+
4
+ - Rails 6 support.
5
+ - Fix cache expire for soft delete.
6
+
1
7
  2.4.3
2
8
  -------
3
9
 
data/Gemfile CHANGED
@@ -3,6 +3,6 @@
3
3
  source "https://rubygems.org"
4
4
 
5
5
  gemspec
6
- gem "paranoia", "~> 2.2"
6
+ gem "paranoia", "~> 2.4.2"
7
7
  gem "pry"
8
- gem "rails", "~> 5.2.0.rc"
8
+ gem "rails", "~> 6"
@@ -71,6 +71,9 @@ module SecondLevelCache
71
71
 
72
72
  def write_second_level_cache
73
73
  return unless klass.second_level_cache_enabled?
74
+ # Avoid rewrite cache again, when record has been soft deleted
75
+ return if respond_to?(:deleted?) && send(:deleted?)
76
+
74
77
  marshal = RecordMarshal.dump(self)
75
78
  expires_in = klass.second_level_cache_options[:expires_in]
76
79
  expire_changed_association_uniq_keys
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module SecondLevelCache
4
- VERSION = "2.4.4"
4
+ VERSION = "2.5.0"
5
5
  end
@@ -30,10 +30,10 @@ Gem::Specification.new do |gem|
30
30
  gem.require_paths = ['lib']
31
31
  gem.version = SecondLevelCache::VERSION
32
32
 
33
- gem.add_runtime_dependency 'activesupport', ['>= 5.2.0.rc', '< 6']
34
- gem.add_runtime_dependency 'activerecord', ['>= 5.2.0.rc', '< 6']
33
+ gem.add_runtime_dependency 'activesupport', ['>= 5.2', '< 7']
34
+ gem.add_runtime_dependency 'activerecord', ['>= 5.2', '< 7']
35
35
 
36
- gem.add_development_dependency 'sqlite3', '< 1.4'
36
+ gem.add_development_dependency 'sqlite3', '> 1.4'
37
37
  gem.add_development_dependency 'rake'
38
38
  gem.add_development_dependency 'pry'
39
39
  gem.add_development_dependency 'database_cleaner'
data/test/base_test.rb CHANGED
@@ -8,7 +8,7 @@ class BaseTest < ActiveSupport::TestCase
8
8
  end
9
9
 
10
10
  def test_should_update_cache_when_update_attributes
11
- @user.update_attributes name: "change"
11
+ @user.update! name: "change"
12
12
  assert_equal @user.name, User.read_second_level_cache(@user.id).name
13
13
  end
14
14
 
@@ -18,13 +18,16 @@ class BaseTest < ActiveSupport::TestCase
18
18
  end
19
19
 
20
20
  def test_should_expire_cache_when_destroy
21
+ @user = User.create name: "csdn", email: "test@csdn.com"
21
22
  @user.destroy
23
+ assert_nil User.find_by(id: @user.id)
24
+ assert_nil SecondLevelCache.cache_store.read(@user.second_level_cache_key)
22
25
  assert_nil User.read_second_level_cache(@user.id)
23
26
  end
24
27
 
25
28
  def test_should_expire_cache_when_update_counters
26
29
  assert_equal 0, @user.books_count
27
- @user.books.create
30
+ @user.books.create!
28
31
  assert_nil User.read_second_level_cache(@user.id)
29
32
  user = User.find(@user.id)
30
33
  assert_equal 1, user.books_count
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: second_level_cache
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.4.4
4
+ version: 2.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Hooopo
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-07-02 00:00:00.000000000 Z
11
+ date: 2019-08-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -16,52 +16,52 @@ dependencies:
16
16
  requirements:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: 5.2.0.rc
19
+ version: '5.2'
20
20
  - - "<"
21
21
  - !ruby/object:Gem::Version
22
- version: '6'
22
+ version: '7'
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
26
26
  requirements:
27
27
  - - ">="
28
28
  - !ruby/object:Gem::Version
29
- version: 5.2.0.rc
29
+ version: '5.2'
30
30
  - - "<"
31
31
  - !ruby/object:Gem::Version
32
- version: '6'
32
+ version: '7'
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: activerecord
35
35
  requirement: !ruby/object:Gem::Requirement
36
36
  requirements:
37
37
  - - ">="
38
38
  - !ruby/object:Gem::Version
39
- version: 5.2.0.rc
39
+ version: '5.2'
40
40
  - - "<"
41
41
  - !ruby/object:Gem::Version
42
- version: '6'
42
+ version: '7'
43
43
  type: :runtime
44
44
  prerelease: false
45
45
  version_requirements: !ruby/object:Gem::Requirement
46
46
  requirements:
47
47
  - - ">="
48
48
  - !ruby/object:Gem::Version
49
- version: 5.2.0.rc
49
+ version: '5.2'
50
50
  - - "<"
51
51
  - !ruby/object:Gem::Version
52
- version: '6'
52
+ version: '7'
53
53
  - !ruby/object:Gem::Dependency
54
54
  name: sqlite3
55
55
  requirement: !ruby/object:Gem::Requirement
56
56
  requirements:
57
- - - "<"
57
+ - - ">"
58
58
  - !ruby/object:Gem::Version
59
59
  version: '1.4'
60
60
  type: :development
61
61
  prerelease: false
62
62
  version_requirements: !ruby/object:Gem::Requirement
63
63
  requirements:
64
- - - "<"
64
+ - - ">"
65
65
  - !ruby/object:Gem::Version
66
66
  version: '1.4'
67
67
  - !ruby/object:Gem::Dependency
@@ -191,8 +191,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
191
191
  - !ruby/object:Gem::Version
192
192
  version: '0'
193
193
  requirements: []
194
- rubyforge_project:
195
- rubygems_version: 2.5.2.3
194
+ rubygems_version: 3.0.3
196
195
  signing_key:
197
196
  specification_version: 4
198
197
  summary: 'SecondLevelCache is a write-through and read-through caching library inspired