activeadmin_settings_cached 2.2.0 → 3.0.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.
metadata CHANGED
@@ -1,14 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: activeadmin_settings_cached
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.2.0
4
+ version: 3.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Semyon Pupkov
8
- autorequire:
9
8
  bindir: bin
10
9
  cert_chain: []
11
- date: 2017-12-22 00:00:00.000000000 Z
10
+ date: 2026-10-31 00:00:00.000000000 Z
12
11
  dependencies:
13
12
  - !ruby/object:Gem::Dependency
14
13
  name: activeadmin
@@ -16,48 +15,40 @@ dependencies:
16
15
  requirements:
17
16
  - - ">="
18
17
  - !ruby/object:Gem::Version
19
- version: '0'
20
- type: :runtime
21
- prerelease: false
22
- version_requirements: !ruby/object:Gem::Requirement
23
- requirements:
24
- - - ">="
25
- - !ruby/object:Gem::Version
26
- version: '0'
27
- - !ruby/object:Gem::Dependency
28
- name: dry-types
29
- requirement: !ruby/object:Gem::Requirement
30
- requirements:
31
- - - ">="
18
+ version: '1.0'
19
+ - - "<"
32
20
  - !ruby/object:Gem::Version
33
- version: 0.8.1
21
+ version: '4'
34
22
  type: :runtime
35
23
  prerelease: false
36
24
  version_requirements: !ruby/object:Gem::Requirement
37
25
  requirements:
38
26
  - - ">="
39
27
  - !ruby/object:Gem::Version
40
- version: 0.8.1
28
+ version: '1.0'
29
+ - - "<"
30
+ - !ruby/object:Gem::Version
31
+ version: '4'
41
32
  - !ruby/object:Gem::Dependency
42
33
  name: rails-settings-cached
43
34
  requirement: !ruby/object:Gem::Requirement
44
35
  requirements:
45
- - - ">="
36
+ - - "~>"
46
37
  - !ruby/object:Gem::Version
47
- version: 0.5.3
48
- - - "<"
38
+ version: '2.8'
39
+ - - ">="
49
40
  - !ruby/object:Gem::Version
50
- version: 0.6.7
41
+ version: 2.8.2
51
42
  type: :runtime
52
43
  prerelease: false
53
44
  version_requirements: !ruby/object:Gem::Requirement
54
45
  requirements:
55
- - - ">="
46
+ - - "~>"
56
47
  - !ruby/object:Gem::Version
57
- version: 0.5.3
58
- - - "<"
48
+ version: '2.8'
49
+ - - ">="
59
50
  - !ruby/object:Gem::Version
60
- version: 0.6.7
51
+ version: 2.8.2
61
52
  - !ruby/object:Gem::Dependency
62
53
  name: appraisal
63
54
  requirement: !ruby/object:Gem::Requirement
@@ -101,35 +92,7 @@ dependencies:
101
92
  - !ruby/object:Gem::Version
102
93
  version: '0'
103
94
  - !ruby/object:Gem::Dependency
104
- name: coveralls
105
- requirement: !ruby/object:Gem::Requirement
106
- requirements:
107
- - - ">="
108
- - !ruby/object:Gem::Version
109
- version: '0'
110
- type: :development
111
- prerelease: false
112
- version_requirements: !ruby/object:Gem::Requirement
113
- requirements:
114
- - - ">="
115
- - !ruby/object:Gem::Version
116
- version: '0'
117
- - !ruby/object:Gem::Dependency
118
- name: database_cleaner
119
- requirement: !ruby/object:Gem::Requirement
120
- requirements:
121
- - - ">="
122
- - !ruby/object:Gem::Version
123
- version: '0'
124
- type: :development
125
- prerelease: false
126
- version_requirements: !ruby/object:Gem::Requirement
127
- requirements:
128
- - - ">="
129
- - !ruby/object:Gem::Version
130
- version: '0'
131
- - !ruby/object:Gem::Dependency
132
- name: poltergeist
95
+ name: database_cleaner-active_record
133
96
  requirement: !ruby/object:Gem::Requirement
134
97
  requirements:
135
98
  - - ">="
@@ -170,20 +133,6 @@ dependencies:
170
133
  - - ">="
171
134
  - !ruby/object:Gem::Version
172
135
  version: '0'
173
- - !ruby/object:Gem::Dependency
174
- name: selenium-webdriver
175
- requirement: !ruby/object:Gem::Requirement
176
- requirements:
177
- - - ">="
178
- - !ruby/object:Gem::Version
179
- version: '0'
180
- type: :development
181
- prerelease: false
182
- version_requirements: !ruby/object:Gem::Requirement
183
- requirements:
184
- - - ">="
185
- - !ruby/object:Gem::Version
186
- version: '0'
187
136
  - !ruby/object:Gem::Dependency
188
137
  name: sqlite3
189
138
  requirement: !ruby/object:Gem::Requirement
@@ -205,9 +154,10 @@ executables: []
205
154
  extensions: []
206
155
  extra_rdoc_files: []
207
156
  files:
157
+ - ".github/stale.yml"
158
+ - ".github/workflows/ci.yml"
208
159
  - ".gitignore"
209
160
  - ".rspec"
210
- - ".travis.yml"
211
161
  - Appraisals
212
162
  - CHANGELOG.md
213
163
  - Dockerfile
@@ -222,11 +172,9 @@ files:
222
172
  - config/locales/en.yml
223
173
  - config/locales/ru.yml
224
174
  - docker-compose.yml
225
- - gemfiles/rails4.2.gemfile
226
- - gemfiles/rails5.0.gemfile
227
- - gemfiles/rails5.1.gemfile
175
+ - gemfiles/rails7.2.gemfile
176
+ - gemfiles/rails8.0.gemfile
228
177
  - lib/activeadmin_settings_cached.rb
229
- - lib/activeadmin_settings_cached/coercions.rb
230
178
  - lib/activeadmin_settings_cached/dsl.rb
231
179
  - lib/activeadmin_settings_cached/engine.rb
232
180
  - lib/activeadmin_settings_cached/model.rb
@@ -235,7 +183,6 @@ files:
235
183
  - lib/generators/active_admin/USAGE
236
184
  - lib/generators/active_admin/settings_generator.rb
237
185
  - lib/generators/active_admin/templates/settings.rb
238
- - spec/coercions_spec.rb
239
186
  - spec/model_spec.rb
240
187
  - spec/settings_spec.rb
241
188
  - spec/spec_helper.rb
@@ -246,7 +193,6 @@ homepage: https://github.com/artofhuman/activeadmin_settings_cached
246
193
  licenses:
247
194
  - MIT
248
195
  metadata: {}
249
- post_install_message:
250
196
  rdoc_options: []
251
197
  require_paths:
252
198
  - lib
@@ -261,13 +207,10 @@ required_rubygems_version: !ruby/object:Gem::Requirement
261
207
  - !ruby/object:Gem::Version
262
208
  version: '0'
263
209
  requirements: []
264
- rubyforge_project:
265
- rubygems_version: 2.6.13
266
- signing_key:
210
+ rubygems_version: 3.6.2
267
211
  specification_version: 4
268
212
  summary: UI interface for rails-settings-cached in active admin
269
213
  test_files:
270
- - spec/coercions_spec.rb
271
214
  - spec/model_spec.rb
272
215
  - spec/settings_spec.rb
273
216
  - spec/spec_helper.rb
data/.travis.yml DELETED
@@ -1,17 +0,0 @@
1
- language: ruby
2
- cache: bundler
3
-
4
- gemfile:
5
- - gemfiles/rails4.2.gemfile
6
- - gemfiles/rails5.0.gemfile
7
- - gemfiles/rails5.1.gemfile
8
-
9
- before_script:
10
- - bundle exec rake setup
11
-
12
- script:
13
- - bundle exec rake
14
-
15
- rvm:
16
- - 2.2.6
17
- - 2.3.4
@@ -1,14 +0,0 @@
1
- # This file was generated by Appraisal
2
-
3
- source "https://rubygems.org"
4
-
5
- gem "rails", "~> 5.0.1"
6
- gem "inherited_resources", git: "https://github.com/activeadmin/inherited_resources.git"
7
- gem "listen"
8
-
9
- group :test do
10
- gem "pry-byebug"
11
- gem "therubyracer"
12
- end
13
-
14
- gemspec path: "../"
@@ -1,14 +0,0 @@
1
- # This file was generated by Appraisal
2
-
3
- source "https://rubygems.org"
4
-
5
- gem "rails", "~> 5.1.0"
6
- gem "inherited_resources", git: "https://github.com/activeadmin/inherited_resources.git"
7
- gem "listen"
8
-
9
- group :test do
10
- gem "pry-byebug"
11
- gem "therubyracer"
12
- end
13
-
14
- gemspec path: "../"
@@ -1,57 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'dry-types'
4
-
5
- module ActiveadminSettingsCached
6
- # Coerce user input values to defined types
7
- #
8
- # @api private
9
- class Coercions
10
- attr_reader :defaults, :display
11
-
12
- def initialize(defaults, display)
13
- @defaults = defaults
14
- @display = display
15
- end
16
-
17
- def cast_params(params)
18
- coerced_params = params.to_unsafe_h.map do |name, value|
19
- [name, cast_value(name, value)]
20
- end
21
-
22
- return coerced_params unless block_given?
23
-
24
- coerced_params.each do |name, value|
25
- yield(name, value.call) unless value.nil?
26
- end
27
- end
28
-
29
- private
30
-
31
- def cast_value(name, value)
32
- case defaults[name]
33
- when TrueClass, FalseClass
34
- -> { value_or_default('bool', value, false) }
35
- when Integer
36
- -> { value_or_default('int', value, 0) }
37
- when Float
38
- -> { value_or_default('float', value, 0.0) }
39
- when Hash, 'ActiveSupport::HashWithIndifferentAccess'
40
- nil
41
- when Symbol
42
- -> { value.to_sym }
43
- else
44
- -> { value }
45
- end
46
- end
47
-
48
- def value_or_default(type, value, default)
49
- result = Dry::Types["form.#{type}"].call(value)
50
- if Dry::Types[type].valid?(result)
51
- result
52
- else
53
- default
54
- end
55
- end
56
- end
57
- end
@@ -1,80 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- RSpec.describe ActiveadminSettingsCached::Coercions do
4
- let(:display) do
5
- Hash[
6
- 'base.first_setting' => 'string',
7
- 'base.second_setting' => 'boolean',
8
- 'base.third_setting' => 'number',
9
- 'base.four_setting' => 'number',
10
- 'second.first_setting' => 'boolean',
11
- 'second.second_setting' => 'string'
12
- ].with_indifferent_access
13
- end
14
-
15
- let(:defaults) do
16
- Hash[
17
- 'base.first_setting' => 'AAA',
18
- 'base.second_setting' => true,
19
- 'base.third_setting' => 5,
20
- 'base.four_setting' => 5.5,
21
- 'base.five_setting' => :aaa,
22
- 'second.first_setting' => false,
23
- 'second.second_setting' => 'BBB',
24
- 'some' => Hash.new
25
- ].with_indifferent_access
26
- end
27
-
28
- let(:right_params) do
29
- ActionController::Parameters.new(
30
- Hash[
31
- 'base.first_setting' => 'BBB',
32
- 'base.second_setting' => 'false',
33
- 'base.third_setting' => '155',
34
- 'base.four_setting' => '55.5',
35
- 'base.five_setting' => 'bbb',
36
- 'second.first_setting' => 'true',
37
- 'second.second_setting' => 'AAA'
38
- ]
39
- )
40
- end
41
-
42
- let(:wrong_params) do
43
- ActionController::Parameters.new(
44
- Hash['base.second_setting' => 'hjgj',
45
- 'base.third_setting' => 'fhfh',
46
- 'base.four_setting' => 'gjfhg',
47
- 'second.first_setting' => 'ggf',
48
- 'some' => Hash.new
49
- ])
50
- end
51
-
52
- let(:no_params) { ActionController::Parameters.new(Hash[]) }
53
-
54
- subject(:coercions) do
55
- ActiveadminSettingsCached::Coercions.new(defaults, display)
56
- end
57
-
58
- it 'when good params' do
59
- expect { |b| coercions.cast_params(right_params, &b) }
60
- .to yield_successive_args(['base.first_setting', 'BBB'],
61
- ['base.second_setting', false],
62
- ['base.third_setting', 155],
63
- ['base.four_setting', 55.5],
64
- ['base.five_setting', :bbb],
65
- ['second.first_setting', true],
66
- ['second.second_setting', 'AAA'])
67
- end
68
-
69
- it 'when wrong params' do
70
- expect { |b| coercions.cast_params(wrong_params, &b) }
71
- .to yield_successive_args(['base.second_setting', false],
72
- ['base.third_setting', 0],
73
- ['base.four_setting', 0.0],
74
- ['second.first_setting', false])
75
- end
76
-
77
- it 'when no params' do
78
- expect { |b| coercions.cast_params(no_params, &b) }.not_to yield_control
79
- end
80
- end