arturo 2.5.4 → 2.7.0

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: ceaf568b4219c17d2daafbaf7221ab121e9cdf29d7d6189f81d99154e78e642b
4
- data.tar.gz: 2ed07d8ebba4efeddf7b35711aca46ed89f0caa7c043f6ac15b10a1803f0b716
3
+ metadata.gz: 43ea277890e8d8b263fb57f7208854a0381f07cd2fa2337654a51a8e57f197da
4
+ data.tar.gz: 8c7e1982c057130e4c3355b800544509950b9b59d9999a4e074def5090258149
5
5
  SHA512:
6
- metadata.gz: f89ce73cf2a3a3ccd4652c8e469ea1eb884da3d6c5d436ae9afc3dae828bad36cca805189784c082d09a56af1d3e642103e4cd0097f2a868238ff80d597d34f4
7
- data.tar.gz: 3384b7619074ad58df2232e1a210ecbe1008f68d11918a37bc6ed78156df2fc5065dceb73c624f9894f2bd7a90811107b4fd254bd7f09c6d1d8c89d8408699e3
6
+ metadata.gz: b4d9610fdb2f0d77c64242554efc5677966b3a8e5fa190a3aec1de71505a3ec139b66279bcce0afea0213600a985437111df374624fd1ac9efd9201a70395dc3
7
+ data.tar.gz: 95105335029a0af725059b8f0528e42e02737cf4f728b439e7ef1d35051fad6270d4053583d3919a5e29877633975a3cb9019f3f5c028f377054a8ee652287fa
data/CHANGELOG.md CHANGED
@@ -1,5 +1,19 @@
1
1
  ## Unreleased
2
2
 
3
+ ## v2.7.0
4
+
5
+ Adds ability to register cache update listeners with Arturo::FeatureCaching::AllStrategy that are called when the cache is updated
6
+
7
+ ## v2.6.0
8
+
9
+ Add support for Rails 7.0
10
+
11
+ Add support for Ruby 3.0 & 3.1
12
+
13
+ Drop support for Rails 4.2
14
+
15
+ Drop support for Ruby 2.4 & 2.5
16
+
3
17
  ## v2.5.4
4
18
 
5
19
  Bug fix: Explicitly require rails engine to avoid errors that ::Rails::Engine cannot be found.
@@ -14,7 +14,6 @@ module Arturo
14
14
  include Arturo::FeatureManagement
15
15
  include Arturo::FeatureParamsSupport
16
16
 
17
- unloadable
18
17
  respond_to :html, :json, :xml
19
18
 
20
19
  if respond_to?(:before_action)
@@ -14,7 +14,7 @@ module Arturo
14
14
  end
15
15
 
16
16
  def on_feature_disabled(feature_name)
17
- render (Rails::VERSION::MAJOR < 5 ? :text : :plain) => 'Forbidden', :status => 403
17
+ render :plain => 'Forbidden', :status => 403
18
18
  end
19
19
 
20
20
  module ClassMethods
@@ -85,8 +85,16 @@ module Arturo
85
85
  cache.delete("arturo.all")
86
86
  end
87
87
 
88
+ def register_cache_update_listener(&block)
89
+ cache_update_listeners << block
90
+ end
91
+
88
92
  private
89
93
 
94
+ def cache_update_listeners
95
+ @cache_update_listeners ||= []
96
+ end
97
+
90
98
  ##
91
99
  # @param fallback [Hash] features to use on database failure
92
100
  # @return [Hash] updated features from origin or fallback
@@ -166,6 +174,7 @@ module Arturo
166
174
  def update_and_extend_cache!(cache, features)
167
175
  mark_as_current!(cache)
168
176
  cache.write("arturo.all", features, expires_in: Arturo::Feature.cache_ttl * 10)
177
+ cache_update_listeners.each(&:call)
169
178
  end
170
179
  end
171
180
  end
@@ -1,4 +1,4 @@
1
1
  # frozen_string_literal: true
2
2
  module Arturo
3
- VERSION = '2.5.4'
3
+ VERSION = '2.7.0'
4
4
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: arturo
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.5.4
4
+ version: 2.7.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - James A. Rosen
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-05-16 00:00:00.000000000 Z
11
+ date: 2023-03-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activerecord
@@ -16,40 +16,40 @@ dependencies:
16
16
  requirements:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: '4.2'
19
+ version: '5.0'
20
20
  - - "<"
21
21
  - !ruby/object:Gem::Version
22
- version: '6.2'
22
+ version: '7.1'
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: '4.2'
29
+ version: '5.0'
30
30
  - - "<"
31
31
  - !ruby/object:Gem::Version
32
- version: '6.2'
32
+ version: '7.1'
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: rails
35
35
  requirement: !ruby/object:Gem::Requirement
36
36
  requirements:
37
37
  - - ">="
38
38
  - !ruby/object:Gem::Version
39
- version: '4.2'
39
+ version: '5.0'
40
40
  - - "<"
41
41
  - !ruby/object:Gem::Version
42
- version: '6.2'
42
+ version: '7.1'
43
43
  type: :development
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: '4.2'
49
+ version: '5.0'
50
50
  - - "<"
51
51
  - !ruby/object:Gem::Version
52
- version: '6.2'
52
+ version: '7.1'
53
53
  - !ruby/object:Gem::Dependency
54
54
  name: sqlite3
55
55
  requirement: !ruby/object:Gem::Requirement
@@ -177,14 +177,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
177
177
  requirements:
178
178
  - - ">="
179
179
  - !ruby/object:Gem::Version
180
- version: '2.1'
180
+ version: '2.6'
181
181
  required_rubygems_version: !ruby/object:Gem::Requirement
182
182
  requirements:
183
183
  - - ">="
184
184
  - !ruby/object:Gem::Version
185
185
  version: '0'
186
186
  requirements: []
187
- rubygems_version: 3.0.3
187
+ rubygems_version: 3.0.3.1
188
188
  signing_key:
189
189
  specification_version: 4
190
190
  summary: Feature sliders, wrapped up in an engine