hashie-model 1.3.8 → 1.3.9

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 ADDED
@@ -0,0 +1,15 @@
1
+ ---
2
+ !binary "U0hBMQ==":
3
+ metadata.gz: !binary |-
4
+ MmRhNTY5YmRmZTg3Mjg4OWQ3YWQxN2EyZjVjNjRlM2MyYmIyZTg0NA==
5
+ data.tar.gz: !binary |-
6
+ YjM3NTE0MzEyMTE0MGM3YjQzNjQ1MzEyYzg0NmMwYWVjZDVmNGM5Yw==
7
+ !binary "U0hBNTEy":
8
+ metadata.gz: !binary |-
9
+ MzlhMzRiYmVhOTUyN2FjZTVlZTdiOTZmMDZiNzc4ZDkxMjRhZTg0NjJlNjg0
10
+ NDczZDFiODBlZDUxNWY2MTc5Y2ZjMzhkZWQwNzUyYTIzZDFiNzhiZjZhNTlj
11
+ ZjUwOGMyNzYwYjUxYjllNGU2YWM2YTUwZjE4NTI3ZDAwMTY0ZmQ=
12
+ data.tar.gz: !binary |-
13
+ ZTljOWY1NDFmMzUyZWJiYTgyYWExMGY3NzdhZGRiMDFjMzg2MGVlNTIyOGZl
14
+ MzIxOTI5MmE0NjZjOTFjMzY3ZjFhMzI3MDdlMmJlNTEzYTQ4N2ZkNGI3YWJj
15
+ NTlhMjBmODhiZWZhYzUxM2M2MmFhMzgzZTU1ODBhOTQwMjRmODI=
data/hashie-model.gemspec CHANGED
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "hashie-model"
8
- s.version = "1.3.8"
8
+ s.version = "1.3.9"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["ZenCash.com"]
12
- s.date = "2012-07-20"
12
+ s.date = "2013-11-15"
13
13
  s.description = "Hashie2 + ActiveModel 3, offering declared properties, validations, JSON serialization/deserialization"
14
14
  s.email = "istvan@zencash.com"
15
15
  s.extra_rdoc_files = [
@@ -46,52 +46,52 @@ Gem::Specification.new do |s|
46
46
  s.homepage = "http://github.com/doublewide/hashie-model"
47
47
  s.licenses = ["MIT"]
48
48
  s.require_paths = ["lib"]
49
- s.rubygems_version = "1.8.24"
49
+ s.rubygems_version = "2.0.6"
50
50
  s.summary = "Hashie2 + ActiveModel 3.x"
51
51
 
52
52
  if s.respond_to? :specification_version then
53
- s.specification_version = 3
53
+ s.specification_version = 4
54
54
 
55
55
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
56
56
  s.add_runtime_dependency(%q<yajl-ruby>, [">= 0.8.0"])
57
57
  s.add_runtime_dependency(%q<activesupport>, [">= 3.2.5"])
58
58
  s.add_runtime_dependency(%q<activemodel>, [">= 3.2.5"])
59
59
  s.add_runtime_dependency(%q<money>, [">= 3.7.1"])
60
- s.add_development_dependency(%q<debugger>, ["~> 1.1.3"])
60
+ s.add_development_dependency(%q<debugger>, [">= 0"])
61
+ s.add_development_dependency(%q<pry>, [">= 0"])
61
62
  s.add_development_dependency(%q<rspec>, ["~> 2.11.0"])
62
63
  s.add_development_dependency(%q<shoulda-matchers>, ["~> 1.0.0.beta3"])
63
64
  s.add_development_dependency(%q<yard>, [">= 0.7.0"])
64
65
  s.add_development_dependency(%q<bundler>, [">= 1.0.0"])
65
- s.add_development_dependency(%q<jeweler>, ["~> 1.6.4"])
66
+ s.add_development_dependency(%q<jeweler>, ["~> 1.8.8"])
66
67
  s.add_development_dependency(%q<rcov>, [">= 0"])
67
- s.add_development_dependency(%q<pry>, [">= 0"])
68
68
  else
69
69
  s.add_dependency(%q<yajl-ruby>, [">= 0.8.0"])
70
70
  s.add_dependency(%q<activesupport>, [">= 3.2.5"])
71
71
  s.add_dependency(%q<activemodel>, [">= 3.2.5"])
72
72
  s.add_dependency(%q<money>, [">= 3.7.1"])
73
- s.add_dependency(%q<debugger>, ["~> 1.1.3"])
73
+ s.add_dependency(%q<debugger>, [">= 0"])
74
+ s.add_dependency(%q<pry>, [">= 0"])
74
75
  s.add_dependency(%q<rspec>, ["~> 2.11.0"])
75
76
  s.add_dependency(%q<shoulda-matchers>, ["~> 1.0.0.beta3"])
76
77
  s.add_dependency(%q<yard>, [">= 0.7.0"])
77
78
  s.add_dependency(%q<bundler>, [">= 1.0.0"])
78
- s.add_dependency(%q<jeweler>, ["~> 1.6.4"])
79
+ s.add_dependency(%q<jeweler>, ["~> 1.8.8"])
79
80
  s.add_dependency(%q<rcov>, [">= 0"])
80
- s.add_dependency(%q<pry>, [">= 0"])
81
81
  end
82
82
  else
83
83
  s.add_dependency(%q<yajl-ruby>, [">= 0.8.0"])
84
84
  s.add_dependency(%q<activesupport>, [">= 3.2.5"])
85
85
  s.add_dependency(%q<activemodel>, [">= 3.2.5"])
86
86
  s.add_dependency(%q<money>, [">= 3.7.1"])
87
- s.add_dependency(%q<debugger>, ["~> 1.1.3"])
87
+ s.add_dependency(%q<debugger>, [">= 0"])
88
+ s.add_dependency(%q<pry>, [">= 0"])
88
89
  s.add_dependency(%q<rspec>, ["~> 2.11.0"])
89
90
  s.add_dependency(%q<shoulda-matchers>, ["~> 1.0.0.beta3"])
90
91
  s.add_dependency(%q<yard>, [">= 0.7.0"])
91
92
  s.add_dependency(%q<bundler>, [">= 1.0.0"])
92
- s.add_dependency(%q<jeweler>, ["~> 1.6.4"])
93
+ s.add_dependency(%q<jeweler>, ["~> 1.8.8"])
93
94
  s.add_dependency(%q<rcov>, [">= 0"])
94
- s.add_dependency(%q<pry>, [">= 0"])
95
95
  end
96
96
  end
97
97
 
@@ -1,9 +1,12 @@
1
1
  module HashieModel
2
2
  class AssociatedValidator < ActiveModel::EachValidator
3
3
  def validate_each(record, attribute, value)
4
- return if (value.is_a?(Array) ? value : [value]).collect{ |r| r.nil? || r.valid? }.all?
5
- errors = value.is_a?(Array) ? value.map(&:errors).first : value.errors
6
- record.errors.add(attribute, errors, options.merge(:value => value))
4
+ collection = value.is_a?(Array) ? value : [value]
5
+ invalid_elements = collection.select { |e| e && !e.valid? }
6
+ if invalid_elements.present?
7
+ first_error = invalid_elements.first.errors
8
+ record.errors.add(attribute, first_error, options.merge(value: value))
9
+ end
7
10
  end
8
11
  end
9
12
  end
@@ -2,7 +2,7 @@ module HashieModel
2
2
  module Version
3
3
  MAJOR = 1
4
4
  MINOR = 3
5
- PATCH = 8
5
+ PATCH = 9
6
6
  BUILD = nil
7
7
 
8
8
  STRING = [MAJOR, MINOR, PATCH, BUILD].compact.join('.')
metadata CHANGED
@@ -1,208 +1,183 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hashie-model
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3.8
5
- prerelease:
4
+ version: 1.3.9
6
5
  platform: ruby
7
6
  authors:
8
7
  - ZenCash.com
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2012-07-20 00:00:00.000000000 Z
11
+ date: 2013-11-15 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
- name: yajl-ruby
16
14
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
15
  requirements:
19
16
  - - ! '>='
20
17
  - !ruby/object:Gem::Version
21
18
  version: 0.8.0
22
- type: :runtime
23
- prerelease: false
24
19
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
20
  requirements:
27
21
  - - ! '>='
28
22
  - !ruby/object:Gem::Version
29
23
  version: 0.8.0
24
+ type: :runtime
25
+ prerelease: false
26
+ name: yajl-ruby
30
27
  - !ruby/object:Gem::Dependency
31
- name: activesupport
32
28
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
29
  requirements:
35
30
  - - ! '>='
36
31
  - !ruby/object:Gem::Version
37
32
  version: 3.2.5
38
- type: :runtime
39
- prerelease: false
40
33
  version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
34
  requirements:
43
35
  - - ! '>='
44
36
  - !ruby/object:Gem::Version
45
37
  version: 3.2.5
38
+ type: :runtime
39
+ prerelease: false
40
+ name: activesupport
46
41
  - !ruby/object:Gem::Dependency
47
- name: activemodel
48
42
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
43
  requirements:
51
44
  - - ! '>='
52
45
  - !ruby/object:Gem::Version
53
46
  version: 3.2.5
54
- type: :runtime
55
- prerelease: false
56
47
  version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
48
  requirements:
59
49
  - - ! '>='
60
50
  - !ruby/object:Gem::Version
61
51
  version: 3.2.5
52
+ type: :runtime
53
+ prerelease: false
54
+ name: activemodel
62
55
  - !ruby/object:Gem::Dependency
63
- name: money
64
56
  requirement: !ruby/object:Gem::Requirement
65
- none: false
66
57
  requirements:
67
58
  - - ! '>='
68
59
  - !ruby/object:Gem::Version
69
60
  version: 3.7.1
70
- type: :runtime
71
- prerelease: false
72
61
  version_requirements: !ruby/object:Gem::Requirement
73
- none: false
74
62
  requirements:
75
63
  - - ! '>='
76
64
  - !ruby/object:Gem::Version
77
65
  version: 3.7.1
66
+ type: :runtime
67
+ prerelease: false
68
+ name: money
78
69
  - !ruby/object:Gem::Dependency
79
- name: debugger
80
70
  requirement: !ruby/object:Gem::Requirement
81
- none: false
82
71
  requirements:
83
- - - ~>
72
+ - - ! '>='
73
+ - !ruby/object:Gem::Version
74
+ version: '0'
75
+ version_requirements: !ruby/object:Gem::Requirement
76
+ requirements:
77
+ - - ! '>='
84
78
  - !ruby/object:Gem::Version
85
- version: 1.1.3
79
+ version: '0'
86
80
  type: :development
87
81
  prerelease: false
82
+ name: debugger
83
+ - !ruby/object:Gem::Dependency
84
+ requirement: !ruby/object:Gem::Requirement
85
+ requirements:
86
+ - - ! '>='
87
+ - !ruby/object:Gem::Version
88
+ version: '0'
88
89
  version_requirements: !ruby/object:Gem::Requirement
89
- none: false
90
90
  requirements:
91
- - - ~>
91
+ - - ! '>='
92
92
  - !ruby/object:Gem::Version
93
- version: 1.1.3
93
+ version: '0'
94
+ type: :development
95
+ prerelease: false
96
+ name: pry
94
97
  - !ruby/object:Gem::Dependency
95
- name: rspec
96
98
  requirement: !ruby/object:Gem::Requirement
97
- none: false
98
99
  requirements:
99
100
  - - ~>
100
101
  - !ruby/object:Gem::Version
101
102
  version: 2.11.0
102
- type: :development
103
- prerelease: false
104
103
  version_requirements: !ruby/object:Gem::Requirement
105
- none: false
106
104
  requirements:
107
105
  - - ~>
108
106
  - !ruby/object:Gem::Version
109
107
  version: 2.11.0
108
+ type: :development
109
+ prerelease: false
110
+ name: rspec
110
111
  - !ruby/object:Gem::Dependency
111
- name: shoulda-matchers
112
112
  requirement: !ruby/object:Gem::Requirement
113
- none: false
114
113
  requirements:
115
114
  - - ~>
116
115
  - !ruby/object:Gem::Version
117
116
  version: 1.0.0.beta3
118
- type: :development
119
- prerelease: false
120
117
  version_requirements: !ruby/object:Gem::Requirement
121
- none: false
122
118
  requirements:
123
119
  - - ~>
124
120
  - !ruby/object:Gem::Version
125
121
  version: 1.0.0.beta3
122
+ type: :development
123
+ prerelease: false
124
+ name: shoulda-matchers
126
125
  - !ruby/object:Gem::Dependency
127
- name: yard
128
126
  requirement: !ruby/object:Gem::Requirement
129
- none: false
130
127
  requirements:
131
128
  - - ! '>='
132
129
  - !ruby/object:Gem::Version
133
130
  version: 0.7.0
134
- type: :development
135
- prerelease: false
136
131
  version_requirements: !ruby/object:Gem::Requirement
137
- none: false
138
132
  requirements:
139
133
  - - ! '>='
140
134
  - !ruby/object:Gem::Version
141
135
  version: 0.7.0
136
+ type: :development
137
+ prerelease: false
138
+ name: yard
142
139
  - !ruby/object:Gem::Dependency
143
- name: bundler
144
140
  requirement: !ruby/object:Gem::Requirement
145
- none: false
146
141
  requirements:
147
142
  - - ! '>='
148
143
  - !ruby/object:Gem::Version
149
144
  version: 1.0.0
150
- type: :development
151
- prerelease: false
152
145
  version_requirements: !ruby/object:Gem::Requirement
153
- none: false
154
146
  requirements:
155
147
  - - ! '>='
156
148
  - !ruby/object:Gem::Version
157
149
  version: 1.0.0
150
+ type: :development
151
+ prerelease: false
152
+ name: bundler
158
153
  - !ruby/object:Gem::Dependency
159
- name: jeweler
160
154
  requirement: !ruby/object:Gem::Requirement
161
- none: false
162
155
  requirements:
163
156
  - - ~>
164
157
  - !ruby/object:Gem::Version
165
- version: 1.6.4
166
- type: :development
167
- prerelease: false
158
+ version: 1.8.8
168
159
  version_requirements: !ruby/object:Gem::Requirement
169
- none: false
170
160
  requirements:
171
161
  - - ~>
172
162
  - !ruby/object:Gem::Version
173
- version: 1.6.4
174
- - !ruby/object:Gem::Dependency
175
- name: rcov
176
- requirement: !ruby/object:Gem::Requirement
177
- none: false
178
- requirements:
179
- - - ! '>='
180
- - !ruby/object:Gem::Version
181
- version: '0'
163
+ version: 1.8.8
182
164
  type: :development
183
165
  prerelease: false
184
- version_requirements: !ruby/object:Gem::Requirement
185
- none: false
186
- requirements:
187
- - - ! '>='
188
- - !ruby/object:Gem::Version
189
- version: '0'
166
+ name: jeweler
190
167
  - !ruby/object:Gem::Dependency
191
- name: pry
192
168
  requirement: !ruby/object:Gem::Requirement
193
- none: false
194
169
  requirements:
195
170
  - - ! '>='
196
171
  - !ruby/object:Gem::Version
197
172
  version: '0'
198
- type: :development
199
- prerelease: false
200
173
  version_requirements: !ruby/object:Gem::Requirement
201
- none: false
202
174
  requirements:
203
175
  - - ! '>='
204
176
  - !ruby/object:Gem::Version
205
177
  version: '0'
178
+ type: :development
179
+ prerelease: false
180
+ name: rcov
206
181
  description: Hashie2 + ActiveModel 3, offering declared properties, validations, JSON
207
182
  serialization/deserialization
208
183
  email: istvan@zencash.com
@@ -240,29 +215,25 @@ files:
240
215
  homepage: http://github.com/doublewide/hashie-model
241
216
  licenses:
242
217
  - MIT
218
+ metadata: {}
243
219
  post_install_message:
244
220
  rdoc_options: []
245
221
  require_paths:
246
222
  - lib
247
223
  required_ruby_version: !ruby/object:Gem::Requirement
248
- none: false
249
224
  requirements:
250
225
  - - ! '>='
251
226
  - !ruby/object:Gem::Version
252
227
  version: '0'
253
- segments:
254
- - 0
255
- hash: -2316205961889475453
256
228
  required_rubygems_version: !ruby/object:Gem::Requirement
257
- none: false
258
229
  requirements:
259
230
  - - ! '>='
260
231
  - !ruby/object:Gem::Version
261
232
  version: '0'
262
233
  requirements: []
263
234
  rubyforge_project:
264
- rubygems_version: 1.8.24
235
+ rubygems_version: 2.0.6
265
236
  signing_key:
266
- specification_version: 3
237
+ specification_version: 4
267
238
  summary: Hashie2 + ActiveModel 3.x
268
239
  test_files: []