stronger_parameters 2.12.0 → 2.14.1.1

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: eb8d8fbb1ffc6da37f90b976befa11fc1bd1b6efc95c66ac60cb05258531edd8
4
- data.tar.gz: 336da945ec7950b2ca422527d7c00347bc9ac12ce45aa4197a2f8daf15645a3d
3
+ metadata.gz: b46da603fbf2eea58729ba1ab609e51618d524efb6af3ad546c69e20879c028b
4
+ data.tar.gz: 0e883bb3d3afabf74f75c50736f25dc3fa02585557e2c614e2551c127348d9ee
5
5
  SHA512:
6
- metadata.gz: 2f14ec3db2cf2b83ff60152057909d236a921ab83d5dd6bf2d7a6d32d95dec905c2502b3ca1055094d7c254a62702a0f4cd94bf7b7b40268658a8fb52a80a740
7
- data.tar.gz: 3b83496ec4aed8fe614c7e06dc4e9b8babb5ed96c86462ca28c58a8fc80a1e6bd492119e78b6efa6827c9c5e0f5372c5fc9db022ce160ba869806926788e3458
6
+ metadata.gz: 1e98cdfe68b6ff34e19af7fe35eda5849a96a60da40f597197cf514fe753d3f90c14a8220d7c01c43b54ddb17782c05b26862a6ffff8f429301527f4d0c71199
7
+ data.tar.gz: 1fcc52847c062a99038b05fee5070c591f94c1d7d0f6aa77e5c7b4010595130ef65aede0bc140be73b3a61f9314ed9a029fca6bfee77ca8b5ed77784c9bdb27a
data/README.md CHANGED
@@ -1,5 +1,5 @@
1
1
  # stronger_parameters
2
- [![Build Status](https://travis-ci.org/zendesk/stronger_parameters.svg?branch=master)](https://travis-ci.org/zendesk/stronger_parameters)
2
+ ![CI](https://github.com/zendesk/stronger_parameters/workflows/CI/badge.svg)
3
3
 
4
4
  This is an extension of `strong_parameters` with added type checking and conversion.
5
5
 
@@ -7,6 +7,8 @@ module StrongerParameters
7
7
  FALSE_VALUES = [false, 'false', '0', 0].freeze
8
8
 
9
9
  def value(v)
10
+ v = v.downcase if v.is_a? String
11
+
10
12
  return true if TRUE_VALUES.include?(v)
11
13
 
12
14
  return false if FALSE_VALUES.include?(v)
@@ -6,7 +6,7 @@ module StrongerParameters
6
6
  def value(v)
7
7
  if v.is_a?(Integer)
8
8
  return v
9
- elsif v.is_a?(String) && v =~ /\A-?\d+\Z/
9
+ elsif v.is_a?(String) && v.strip =~ /\A-?\d+\Z/
10
10
  return v.to_i
11
11
  end
12
12
 
@@ -15,9 +15,7 @@ module StrongerParameters
15
15
  when Array
16
16
  ActionController::Parameters.array(*value.map { |v| sugar(v) })
17
17
  when Hash
18
- constraints = value.each_with_object({}) do |(key, v), memo|
19
- memo[key] = sugar(v)
20
- end
18
+ constraints = value.transform_values { |v| sugar(v) }
21
19
  ActionController::Parameters.map(constraints)
22
20
  else
23
21
  value
@@ -63,8 +61,7 @@ module StrongerParameters
63
61
  return :skip if for_action == :skip
64
62
 
65
63
  # FYI: we should be able to call sugar on the result of deep_merge, but it breaks tests
66
- permit_parameters[:all].deep_merge(for_action).
67
- each_with_object({}) { |(k, v), a| a[k] = PermittedParameters.sugar(v) }
64
+ permit_parameters[:all].deep_merge(for_action).transform_values { |v| PermittedParameters.sugar(v) }
68
65
  end
69
66
 
70
67
  private
@@ -1,12 +1,8 @@
1
1
  # frozen_string_literal: true
2
2
  require 'action_pack'
3
3
 
4
- if ActionPack::VERSION::MAJOR == 3
5
- require 'action_controller/parameters'
6
- else
7
- require 'action_controller/base'
8
- require 'action_controller/metal/strong_parameters'
9
- end
4
+ require 'action_controller/base'
5
+ require 'action_controller/metal/strong_parameters'
10
6
 
11
7
  require 'stronger_parameters/constraints'
12
8
  require 'stronger_parameters/errors'
@@ -143,12 +139,11 @@ module StrongerParameters
143
139
 
144
140
  hash_filter_without_stronger_parameters(params, other_filter)
145
141
 
146
- stronger_filter.keys.each do |key|
142
+ stronger_filter.each_key do |key|
147
143
  value = fetch(key, nil)
148
- result = nil
149
144
 
150
145
  if value.nil? && self.class.allow_nil_for_everything
151
- params[key] = nil
146
+ params[key] = nil if key?(key)
152
147
  next
153
148
  end
154
149
 
@@ -202,5 +197,5 @@ module StrongerParameters
202
197
  end
203
198
  end
204
199
 
205
- ActionController::Parameters.send :include, StrongerParameters::Parameters
206
- ActionController::Base.send :include, StrongerParameters::ControllerSupport
200
+ ActionController::Parameters.include StrongerParameters::Parameters
201
+ ActionController::Base.include StrongerParameters::ControllerSupport
@@ -1,4 +1,4 @@
1
1
  # frozen_string_literal: true
2
2
  module StrongerParameters
3
- VERSION = '2.12.0'
3
+ VERSION = '2.14.1.1'
4
4
  end
@@ -1,7 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
  require 'stronger_parameters/version'
3
3
  require 'action_pack'
4
- require 'strong_parameters' if ActionPack::VERSION::MAJOR == 3
5
4
  require 'stronger_parameters/parameters'
6
5
  require 'stronger_parameters/constraints'
7
6
  require 'stronger_parameters/controller_support/permitted_parameters'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: stronger_parameters
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.12.0
4
+ version: 2.14.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mick Staugaard
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-06-11 00:00:00.000000000 Z
11
+ date: 2021-12-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -38,20 +38,6 @@ dependencies:
38
38
  - - ">="
39
39
  - !ruby/object:Gem::Version
40
40
  version: '0'
41
- - !ruby/object:Gem::Dependency
42
- name: minitest
43
- requirement: !ruby/object:Gem::Requirement
44
- requirements:
45
- - - ">="
46
- - !ruby/object:Gem::Version
47
- version: '0'
48
- type: :development
49
- prerelease: false
50
- version_requirements: !ruby/object:Gem::Requirement
51
- requirements:
52
- - - ">="
53
- - !ruby/object:Gem::Version
54
- version: '0'
55
41
  - !ruby/object:Gem::Dependency
56
42
  name: minitest-rails
57
43
  requirement: !ruby/object:Gem::Requirement
@@ -67,21 +53,7 @@ dependencies:
67
53
  - !ruby/object:Gem::Version
68
54
  version: '0'
69
55
  - !ruby/object:Gem::Dependency
70
- name: minitest-around
71
- requirement: !ruby/object:Gem::Requirement
72
- requirements:
73
- - - ">="
74
- - !ruby/object:Gem::Version
75
- version: '0'
76
- type: :development
77
- prerelease: false
78
- version_requirements: !ruby/object:Gem::Requirement
79
- requirements:
80
- - - ">="
81
- - !ruby/object:Gem::Version
82
- version: '0'
83
- - !ruby/object:Gem::Dependency
84
- name: minitest-rg
56
+ name: maxitest
85
57
  requirement: !ruby/object:Gem::Requirement
86
58
  requirements:
87
59
  - - ">="
@@ -95,7 +67,7 @@ dependencies:
95
67
  - !ruby/object:Gem::Version
96
68
  version: '0'
97
69
  - !ruby/object:Gem::Dependency
98
- name: wwtd
70
+ name: bump
99
71
  requirement: !ruby/object:Gem::Requirement
100
72
  requirements:
101
73
  - - ">="
@@ -109,7 +81,7 @@ dependencies:
109
81
  - !ruby/object:Gem::Version
110
82
  version: '0'
111
83
  - !ruby/object:Gem::Dependency
112
- name: bump
84
+ name: single_cov
113
85
  requirement: !ruby/object:Gem::Requirement
114
86
  requirements:
115
87
  - - ">="
@@ -123,7 +95,7 @@ dependencies:
123
95
  - !ruby/object:Gem::Version
124
96
  version: '0'
125
97
  - !ruby/object:Gem::Dependency
126
- name: single_cov
98
+ name: rubocop
127
99
  requirement: !ruby/object:Gem::Requirement
128
100
  requirements:
129
101
  - - ">="
@@ -137,7 +109,7 @@ dependencies:
137
109
  - !ruby/object:Gem::Version
138
110
  version: '0'
139
111
  - !ruby/object:Gem::Dependency
140
- name: rubocop
112
+ name: mocha
141
113
  requirement: !ruby/object:Gem::Requirement
142
114
  requirements:
143
115
  - - ">="
@@ -151,7 +123,7 @@ dependencies:
151
123
  - !ruby/object:Gem::Version
152
124
  version: '0'
153
125
  - !ruby/object:Gem::Dependency
154
- name: mocha
126
+ name: forking_test_runner
155
127
  requirement: !ruby/object:Gem::Requirement
156
128
  requirements:
157
129
  - - ">="
@@ -170,20 +142,20 @@ dependencies:
170
142
  requirements:
171
143
  - - ">="
172
144
  - !ruby/object:Gem::Version
173
- version: '3.2'
145
+ version: '4.2'
174
146
  - - "<"
175
147
  - !ruby/object:Gem::Version
176
- version: '6.1'
148
+ version: '6.2'
177
149
  type: :runtime
178
150
  prerelease: false
179
151
  version_requirements: !ruby/object:Gem::Requirement
180
152
  requirements:
181
153
  - - ">="
182
154
  - !ruby/object:Gem::Version
183
- version: '3.2'
155
+ version: '4.2'
184
156
  - - "<"
185
157
  - !ruby/object:Gem::Version
186
- version: '6.1'
158
+ version: '6.2'
187
159
  description:
188
160
  email:
189
161
  - mick@zendesk.com
@@ -227,14 +199,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
227
199
  requirements:
228
200
  - - ">="
229
201
  - !ruby/object:Gem::Version
230
- version: 2.4.0
202
+ version: 2.5.0
231
203
  required_rubygems_version: !ruby/object:Gem::Requirement
232
204
  requirements:
233
205
  - - ">="
234
206
  - !ruby/object:Gem::Version
235
207
  version: '0'
236
208
  requirements: []
237
- rubygems_version: 3.0.3
209
+ rubygems_version: 3.0.3.1
238
210
  signing_key:
239
211
  specification_version: 4
240
212
  summary: Type checking and type casting of parameters for Action Pack