paramore 3.6.0 → 3.6.4

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: 0e3e663f7752add2ed7c167643bdc789c5aec5421455440f094942b06ca49c57
4
- data.tar.gz: 9ccdaec01fdd4e5ce1b337d3e8ca7a84c812acd38b817d015b980d279b0d43c9
3
+ metadata.gz: f25798a2596838cff8c3355c05286e6c8c6c0493226fed24f93d6d27271a10a5
4
+ data.tar.gz: 9a1bff5d5e92b3fab7045b2ad8904d97b7de7c814f37e9d0535028648db46bc1
5
5
  SHA512:
6
- metadata.gz: a571718b5125d6d7f6078b85cb0ef4d201c33731ad8a4eb4255550746562bdd6824a5207a11ec6a3a58a044e0cc5c5a78f0acd33246f7e419e1be1049f3c4eee
7
- data.tar.gz: 3966ac01cadb45e454b001fbd0044778794dc437af95a6c3faeefe0663a9412a910ffa4fdede25b7508c4f029185ace67af5975630bde5d970b55311df7e1a38
6
+ metadata.gz: 2a21bf0e45a727fa73473d6d011f6650e0894843962d0c9b493e01093792fd87add7ba1462e66440155b8269ff03d2d49780453f220d847ccafaf22e2a642a03
7
+ data.tar.gz: 9b6d06d90120343be0cd44665c4642c461f02e76a053e694f87e51447e0285eb741d32caa53d888d39ad4000e5fd9bc9e83400f9f07066f6fa78cc77ea8ccc1f
@@ -54,9 +54,11 @@ module Paramore
54
54
  def typecast_array(field, array, name)
55
55
  raise Paramore::ArrayExpected.new(name, array) unless array.is_a?(Array)
56
56
 
57
- array
57
+ result = array
58
58
  .reject { |unit| unit.to_s == '' && field.compact? }
59
59
  .map { |unit| cast(Paramore.field(field.type.first, null: true), unit) }
60
+
61
+ field.compact? ? result.compact : result
60
62
  end
61
63
 
62
64
  def typecast_value(type, value, name)
@@ -6,7 +6,7 @@ module Paramore
6
6
  null: false,
7
7
  compact: false,
8
8
  default: nil,
9
- empty: true,
9
+ empty: false,
10
10
  required: true,
11
11
  }.freeze
12
12
 
@@ -13,11 +13,15 @@ module Paramore
13
13
  parse_type(type.first)
14
14
  when Hash
15
15
  type.map do |name, field|
16
- case field.type
17
- when Array, Hash
18
- { name => parse_type(field.type) }
16
+ if field.wildly_keyed_hash?
17
+ { name => {} }
19
18
  else
20
- name
19
+ case field.type
20
+ when Array, Hash
21
+ { name => parse_type(field.type) }
22
+ else
23
+ name
24
+ end
21
25
  end
22
26
  end
23
27
  else
@@ -53,7 +53,7 @@ module Paramore
53
53
  module Date
54
54
  module_function
55
55
  def [](input)
56
- input.to_date
56
+ ::Date.parse(input)
57
57
  end
58
58
  end
59
59
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: paramore
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.6.0
4
+ version: 3.6.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Lukas Kairevičius
@@ -115,7 +115,7 @@ licenses:
115
115
  - MIT
116
116
  metadata: {}
117
117
  post_install_message: |
118
- Thank you for installing Paramore 3.6.0 !
118
+ Thank you for installing Paramore 3.6.4 !
119
119
  From the command line you can run `paramore` to generate a configuration file
120
120
 
121
121
  More details here : https://github.com/lumzdas/paramore/blob/master/README.md
@@ -134,7 +134,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
134
134
  - !ruby/object:Gem::Version
135
135
  version: '0'
136
136
  requirements: []
137
- rubygems_version: 3.2.3
137
+ rubygems_version: 3.0.8
138
138
  signing_key:
139
139
  specification_version: 4
140
140
  summary: A declarative approach to Rails' strong parameter typing and sanitizing