reform 2.0.5 → 2.1.0.rc1

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.
Files changed (51) hide show
  1. checksums.yaml +4 -4
  2. data/.travis.yml +3 -1
  3. data/CHANGES.md +12 -0
  4. data/Gemfile +12 -2
  5. data/README.md +9 -14
  6. data/Rakefile +1 -1
  7. data/database.sqlite3 +0 -0
  8. data/lib/reform.rb +1 -0
  9. data/lib/reform/contract.rb +13 -20
  10. data/lib/reform/contract/validate.rb +9 -7
  11. data/lib/reform/form.rb +45 -31
  12. data/lib/reform/form/active_model.rb +10 -10
  13. data/lib/reform/form/active_model/form_builder_methods.rb +5 -4
  14. data/lib/reform/form/active_model/model_reflections.rb +2 -2
  15. data/lib/reform/form/active_model/model_validations.rb +3 -3
  16. data/lib/reform/form/active_model/validations.rb +49 -32
  17. data/lib/reform/form/dry.rb +55 -0
  18. data/lib/reform/form/lotus.rb +4 -1
  19. data/lib/reform/form/module.rb +3 -17
  20. data/lib/reform/form/multi_parameter_attributes.rb +0 -9
  21. data/lib/reform/form/populator.rb +72 -30
  22. data/lib/reform/form/validate.rb +19 -43
  23. data/lib/reform/form/validation/unique_validator.rb +39 -6
  24. data/lib/reform/validation.rb +40 -0
  25. data/lib/reform/validation/groups.rb +73 -0
  26. data/lib/reform/version.rb +1 -1
  27. data/reform.gemspec +3 -1
  28. data/test/active_record_test.rb +2 -0
  29. data/test/contract_test.rb +2 -2
  30. data/test/deprecation_test.rb +27 -0
  31. data/test/deserialize_test.rb +29 -8
  32. data/test/dummy/config/locales/en.yml +4 -1
  33. data/test/errors_test.rb +4 -4
  34. data/test/feature_test.rb +2 -2
  35. data/test/fixtures/dry_error_messages.yml +43 -0
  36. data/test/form_builder_test.rb +10 -8
  37. data/test/form_test.rb +1 -36
  38. data/test/inherit_test.rb +20 -8
  39. data/test/module_test.rb +2 -30
  40. data/test/parse_pipeline_test.rb +15 -0
  41. data/test/populate_test.rb +41 -12
  42. data/test/populator_skip_test.rb +28 -0
  43. data/test/reform_test.rb +1 -1
  44. data/test/skip_if_test.rb +10 -3
  45. data/test/test_helper.rb +11 -2
  46. data/test/unique_test.rb +72 -1
  47. data/test/validate_test.rb +6 -7
  48. data/test/validation/activemodel_validation_test.rb +252 -0
  49. data/test/validation/dry_validation_test.rb +330 -0
  50. metadata +63 -10
  51. data/lib/reform/schema.rb +0 -13
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: reform
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.5
4
+ version: 2.1.0.rc1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Nick Sutterer
@@ -9,22 +9,28 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2015-09-14 00:00:00.000000000 Z
12
+ date: 2015-12-21 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: disposable
16
16
  requirement: !ruby/object:Gem::Requirement
17
17
  requirements:
18
- - - "~>"
18
+ - - ">="
19
+ - !ruby/object:Gem::Version
20
+ version: 0.2.1
21
+ - - "<"
19
22
  - !ruby/object:Gem::Version
20
- version: 0.1.11
23
+ version: 0.3.0
21
24
  type: :runtime
22
25
  prerelease: false
23
26
  version_requirements: !ruby/object:Gem::Requirement
24
27
  requirements:
25
- - - "~>"
28
+ - - ">="
26
29
  - !ruby/object:Gem::Version
27
- version: 0.1.11
30
+ version: 0.2.1
31
+ - - "<"
32
+ - !ruby/object:Gem::Version
33
+ version: 0.3.0
28
34
  - !ruby/object:Gem::Dependency
29
35
  name: uber
30
36
  requirement: !ruby/object:Gem::Requirement
@@ -39,6 +45,26 @@ dependencies:
39
45
  - - "~>"
40
46
  - !ruby/object:Gem::Version
41
47
  version: 0.0.11
48
+ - !ruby/object:Gem::Dependency
49
+ name: representable
50
+ requirement: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: 2.4.0
55
+ - - "<"
56
+ - !ruby/object:Gem::Version
57
+ version: 3.1.0
58
+ type: :runtime
59
+ prerelease: false
60
+ version_requirements: !ruby/object:Gem::Requirement
61
+ requirements:
62
+ - - ">="
63
+ - !ruby/object:Gem::Version
64
+ version: 2.4.0
65
+ - - "<"
66
+ - !ruby/object:Gem::Version
67
+ version: 3.1.0
42
68
  - !ruby/object:Gem::Dependency
43
69
  name: bundler
44
70
  requirement: !ruby/object:Gem::Requirement
@@ -179,6 +205,20 @@ dependencies:
179
205
  - - ">="
180
206
  - !ruby/object:Gem::Version
181
207
  version: '0'
208
+ - !ruby/object:Gem::Dependency
209
+ name: dry-validation
210
+ requirement: !ruby/object:Gem::Requirement
211
+ requirements:
212
+ - - ">="
213
+ - !ruby/object:Gem::Version
214
+ version: '0'
215
+ type: :development
216
+ prerelease: false
217
+ version_requirements: !ruby/object:Gem::Requirement
218
+ requirements:
219
+ - - ">="
220
+ - !ruby/object:Gem::Version
221
+ version: '0'
182
222
  - !ruby/object:Gem::Dependency
183
223
  name: actionpack
184
224
  requirement: !ruby/object:Gem::Requirement
@@ -229,6 +269,7 @@ files:
229
269
  - lib/reform/form/active_record.rb
230
270
  - lib/reform/form/coercion.rb
231
271
  - lib/reform/form/composition.rb
272
+ - lib/reform/form/dry.rb
232
273
  - lib/reform/form/lotus.rb
233
274
  - lib/reform/form/module.rb
234
275
  - lib/reform/form/mongoid.rb
@@ -240,7 +281,8 @@ files:
240
281
  - lib/reform/form/validation/unique_validator.rb
241
282
  - lib/reform/mongoid.rb
242
283
  - lib/reform/rails.rb
243
- - lib/reform/schema.rb
284
+ - lib/reform/validation.rb
285
+ - lib/reform/validation/groups.rb
244
286
  - lib/reform/version.rb
245
287
  - reform.gemspec
246
288
  - test/active_model_custom_validation_translations_test.rb
@@ -255,6 +297,7 @@ files:
255
297
  - test/contract_test.rb
256
298
  - test/custom_validation_test.rb
257
299
  - test/default_test.rb
300
+ - test/deprecation_test.rb
258
301
  - test/deserialize_test.rb
259
302
  - test/dummy/Rakefile
260
303
  - test/dummy/app/controllers/albums_controller.rb
@@ -281,6 +324,7 @@ files:
281
324
  - test/dummy/log/server.log
282
325
  - test/errors_test.rb
283
326
  - test/feature_test.rb
327
+ - test/fixtures/dry_error_messages.yml
284
328
  - test/form_builder_test.rb
285
329
  - test/form_option_test.rb
286
330
  - test/form_test.rb
@@ -294,7 +338,9 @@ files:
294
338
  - test/module_test.rb
295
339
  - test/mongoid_test.rb
296
340
  - test/multi_parameter_attributes_test.rb
341
+ - test/parse_pipeline_test.rb
297
342
  - test/populate_test.rb
343
+ - test/populator_skip_test.rb
298
344
  - test/prepopulator_test.rb
299
345
  - test/rails/integration_test.rb
300
346
  - test/read_only_test.rb
@@ -308,6 +354,8 @@ files:
308
354
  - test/test_helper.rb
309
355
  - test/unique_test.rb
310
356
  - test/validate_test.rb
357
+ - test/validation/activemodel_validation_test.rb
358
+ - test/validation/dry_validation_test.rb
311
359
  - test/virtual_test.rb
312
360
  - test/writeable_test.rb
313
361
  homepage: https://github.com/apotonick/reform
@@ -325,9 +373,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
325
373
  version: '0'
326
374
  required_rubygems_version: !ruby/object:Gem::Requirement
327
375
  requirements:
328
- - - ">="
376
+ - - ">"
329
377
  - !ruby/object:Gem::Version
330
- version: '0'
378
+ version: 1.3.1
331
379
  requirements: []
332
380
  rubyforge_project:
333
381
  rubygems_version: 2.4.8
@@ -347,6 +395,7 @@ test_files:
347
395
  - test/contract_test.rb
348
396
  - test/custom_validation_test.rb
349
397
  - test/default_test.rb
398
+ - test/deprecation_test.rb
350
399
  - test/deserialize_test.rb
351
400
  - test/dummy/Rakefile
352
401
  - test/dummy/app/controllers/albums_controller.rb
@@ -373,6 +422,7 @@ test_files:
373
422
  - test/dummy/log/server.log
374
423
  - test/errors_test.rb
375
424
  - test/feature_test.rb
425
+ - test/fixtures/dry_error_messages.yml
376
426
  - test/form_builder_test.rb
377
427
  - test/form_option_test.rb
378
428
  - test/form_test.rb
@@ -386,7 +436,9 @@ test_files:
386
436
  - test/module_test.rb
387
437
  - test/mongoid_test.rb
388
438
  - test/multi_parameter_attributes_test.rb
439
+ - test/parse_pipeline_test.rb
389
440
  - test/populate_test.rb
441
+ - test/populator_skip_test.rb
390
442
  - test/prepopulator_test.rb
391
443
  - test/rails/integration_test.rb
392
444
  - test/read_only_test.rb
@@ -400,6 +452,7 @@ test_files:
400
452
  - test/test_helper.rb
401
453
  - test/unique_test.rb
402
454
  - test/validate_test.rb
455
+ - test/validation/activemodel_validation_test.rb
456
+ - test/validation/dry_validation_test.rb
403
457
  - test/virtual_test.rb
404
458
  - test/writeable_test.rb
405
- has_rdoc:
data/lib/reform/schema.rb DELETED
@@ -1,13 +0,0 @@
1
- module Reform
2
- module Schema
3
- def schema(options={})
4
- require "disposable/twin/schema"
5
- Disposable::Twin::Schema.from(self,
6
- {
7
- superclass: Representable::Decorator,
8
- representer_from: lambda { |nested| nested.representer_class }
9
- }.merge(options) # TODO: options not tested.
10
- )
11
- end
12
- end
13
- end