dry-validation 1.4.1 → 1.5.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7da2738360b969decba415a2a6418b41ca8b55202d39dd6843871722b904164e
4
- data.tar.gz: 20cfc387c6ebe8ce8ffd9b6d9227d59393cf304ba70bdd01ace0ff13d67e99fe
3
+ metadata.gz: 335dfa8db4764cd1c86619371fea202bfeb0c80cf9a84a2069d7fe4c92a1f5af
4
+ data.tar.gz: 851e5d59e8c4a1c9ce338d5e3fb01b02159da120fb2a775bcec5168ac705c20e
5
5
  SHA512:
6
- metadata.gz: 5d86de3a87c58f51dabd171950a3d72398e3a93fde3ac521937c0e7b13518388519238127968eb330b991774a2d017b109e3ddc919e23d423771c2bee6361a63
7
- data.tar.gz: 86c6cc8cf5ea0ba31dda616f68cedd2481f9e1f8455d787d4575583af7ad7428cee4de45477bf454084adacd6778216f2867dc95ac0cbe1e9fad2889a07f124a
6
+ metadata.gz: 1da1b675edac12c4d7256cb15b770a87387ffc352330434db7a82f177c65ce21dcc8a4803fce2be1d85d29be8df26979fe6e91d43111cebe04c6875500523c29
7
+ data.tar.gz: 102cf75e197be20843af749584c2a6abd57ce8334d940bff7dd06dc4e37c54fd451bb244dc3365bca913334e3b0c3b3bd391c68b3f9c4e13c4da6efb9c69213f
@@ -1,4 +1,65 @@
1
- # v1.4.1 2020-01-08
1
+ ## 1.5.3 2020-07-27
2
+
3
+
4
+ ### Added
5
+
6
+ - You can now access current value's index via `rule(:foo).each do |index:|` (issue #606 done via #657) (@mrbongiolo)
7
+
8
+ ### Changed
9
+
10
+ - `Result#error?` is now a public API and it takes into consideration both schema and rule errors (issue #655 fixed via #656) (@PragTob)
11
+
12
+ [Compare v1.5.2...v1.5.3](https://github.com/dry-rb/dry-validation/compare/v1.5.2...v1.5.3)
13
+
14
+ ## 1.5.2 2020-07-14
15
+
16
+
17
+ ### Fixed
18
+
19
+ - `key?` predicate in rules no longer crashes when the rule path points to a non-existent array value (issue #653 fixed via #654) (@solnic)
20
+
21
+
22
+ [Compare v1.5.1...v1.5.2](https://github.com/dry-rb/dry-validation/compare/v1.5.1...v1.5.2)
23
+
24
+ ## 1.5.1 2020-06-18
25
+
26
+
27
+ ### Fixed
28
+
29
+ - dry-monads no longer required for the `:hints` extension (@schokomarie)
30
+ - Using `full: true` option works as expected with custom rule messages (issue #618 fixed via #651) (@sirfilip)
31
+ - Using `locale: ...` option works as expected with hints (issue #589 fixed via 652) (@sirfilip)
32
+
33
+
34
+ [Compare v1.5.0...v1.5.1](https://github.com/dry-rb/dry-validation/compare/v1.5.0...v1.5.1)
35
+
36
+ ## 1.5.0 2020-03-11
37
+
38
+
39
+ ### Added
40
+
41
+ - `schema_error?` rule helper (@waiting-for-dev)
42
+ - `rule_error?` rule helper (@waiting-for-dev)
43
+
44
+ ### Changed
45
+
46
+ - dry-schema dependency was bumped to `~> 1.5` (@solnic)
47
+ - [internal] `KeyMap` patches have been removed since dry-schema now provides required functionality (@solnic)
48
+
49
+ [Compare v1.4.2...v1.5.0](https://github.com/dry-rb/dry-validation/compare/v1.4.2...v1.5.0)
50
+
51
+ ## 1.4.2 2020-01-18
52
+
53
+
54
+ ### Fixed
55
+
56
+ - Macros using predicates that accept a range argument work as expected (no need to wrap the argument in an array) (@waiting-for-dev)
57
+
58
+
59
+ [Compare v1.4.1...v1.4.2](https://github.com/dry-rb/dry-validation/compare/v1.4.1...v1.4.2)
60
+
61
+ ## 1.4.1 2020-01-08
62
+
2
63
 
3
64
  ### Added
4
65
 
@@ -8,11 +69,12 @@
8
69
 
9
70
  - List tokens are correctly interpolated as a comma separated list in rule messages (see #611) (@waiting-for-dev)
10
71
  - Warnings about delegated keywords (@flash-gordon)
11
- - A few delegation warnings about keyword arguments (@flash-gordon)
72
+
12
73
 
13
74
  [Compare v1.4.0...v1.4.1](https://github.com/dry-rb/dry-validation/compare/v1.4.0...v1.4.1)
14
75
 
15
- # v1.4.0 2019-12-12
76
+ ## 1.4.0 2019-12-12
77
+
16
78
 
17
79
  ### Added
18
80
 
@@ -32,7 +94,8 @@
32
94
 
33
95
  [Compare v1.3.1...v1.4.0](https://github.com/dry-rb/dry-validation/compare/v1.3.1...v1.4.0)
34
96
 
35
- # v1.3.1 2019-08-16
97
+ ## 1.3.1 2019-08-16
98
+
36
99
 
37
100
  ### Changed
38
101
 
@@ -40,7 +103,8 @@
40
103
 
41
104
  [Compare v1.3.0...v1.3.1](https://github.com/dry-rb/dry-validation/compare/v1.3.0...v1.3.1)
42
105
 
43
- # v1.3.0 2019-08-14
106
+ ## 1.3.0 2019-08-14
107
+
44
108
 
45
109
  ### Added
46
110
 
@@ -56,7 +120,8 @@
56
120
 
57
121
  [Compare v1.2.1...v1.3.0](https://github.com/dry-rb/dry-validation/compare/v1.2.1...v1.3.0)
58
122
 
59
- # v1.2.1 2019-07-16
123
+ ## 1.2.1 2019-07-16
124
+
60
125
 
61
126
  ### Fixed
62
127
 
@@ -65,9 +130,11 @@
65
130
  - Fixed an issue where guarding a rule would crash when keys are missing in the input (issue #569) (@solnic)
66
131
  - Added missing "pathname" require (issue #570) (@solnic)
67
132
 
133
+
68
134
  [Compare v1.2.0...v1.2.1](https://github.com/dry-rb/dry-validation/compare/v1.2.0...v1.2.1)
69
135
 
70
- # v1.2.0 2019-07-08
136
+ ## 1.2.0 2019-07-08
137
+
71
138
 
72
139
  ### Added
73
140
 
@@ -83,15 +150,18 @@
83
150
 
84
151
  [Compare v1.1.1...v1.2.0](https://github.com/dry-rb/dry-validation/compare/v1.1.1...v1.2.0)
85
152
 
86
- # v1.1.1 2019-06-24
153
+ ## 1.1.1 2019-06-24
154
+
87
155
 
88
156
  ### Fixed
89
157
 
90
158
  - `Rule#each` works with array values from nested hashes (@mustardnoise)
91
159
 
160
+
92
161
  [Compare v1.1.0...v1.1.1](https://github.com/dry-rb/dry-validation/compare/v1.1.0...v1.1.1)
93
162
 
94
- # v1.1.0 2019-06-14
163
+ ## 1.1.0 2019-06-14
164
+
95
165
 
96
166
  ### Added
97
167
 
@@ -103,25 +173,18 @@
103
173
 
104
174
  - Passing multiple macro names to `validate` or `each` works correctly (fixed #538 #541) (@jandudulski)
105
175
 
106
- [Compare v1.0.0...v1.1.0](https://github.com/dry-rb/dry-validation/compare/v1.0.0...v1.1.0)
107
176
 
108
- # v1.0.0 2019-06-10
177
+ [Compare v1.0.0...v1.1.0](https://github.com/dry-rb/dry-validation/compare/v1.0.0...v1.1.0)
109
178
 
110
- This release is a complete rewrite on top of `dry-schema` that uses contract classes to define schema and validation rules. It's **not backward-compatible**. This release addressed over 150 known issues, including bugs and missing features.
179
+ ## 1.0.0 2019-06-10
111
180
 
112
181
  See [the list of all addressed issues](https://github.com/dry-rb/dry-validation/issues?utf8=✓&q=is%3Aissue+is%3Aclosed+closed%3A%3E%3D2019-01-01+) as well as issues that were moved to dry-schema and [addressed there](https://github.com/dry-rb/dry-schema/issues?q=is%3Aissue+is%3Aclosed+dry-validation+milestone%3A1.0.0).
113
182
 
114
- ### :sparkles: Release highlights :sparkles:
115
183
 
116
- - New `Dry::Validation::Contract` API for defining contract classes with schemas and validation rules
117
- - Improved message backends with support for `key` and `base` messages, and arbitrary meta-data (like error codes etc.)
118
- - Support for defining rules for array elements ie `rule(:items).each { ... }`
119
- - Support for macros that encapsulate common rule logic
120
- - Built-in `:acceptance` macro
184
+ [Compare v1.0.0...v1.0.0](https://github.com/dry-rb/dry-validation/compare/v1.0.0...v1.0.0)
121
185
 
122
- [Compare v0.13.3...v1.0.0](https://github.com/dry-rb/dry-validation/compare/v0.13.3...v1.0.0)
186
+ ## 1.0.0 2019-06-10
123
187
 
124
- # v1.0.0 2019-06-10 (compared to 1.0.0.rc3)
125
188
 
126
189
  ### Added
127
190
 
@@ -144,7 +207,8 @@ See [the list of all addressed issues](https://github.com/dry-rb/dry-validation/
144
207
 
145
208
  [Compare v1.0.0.rc3...v1.0.0](https://github.com/dry-rb/dry-validation/compare/v1.0.0.rc3...v1.0.0)
146
209
 
147
- # v1.0.0.rc3 2019-05-06
210
+ ## 1.0.0.rc3 2019-05-06
211
+
148
212
 
149
213
  ### Added
150
214
 
@@ -157,9 +221,10 @@ See [the list of all addressed issues](https://github.com/dry-rb/dry-validation/
157
221
 
158
222
  - `config/errors.yml` are now bundled with the gem, **`rc2` was broken because of this** (solnic)
159
223
 
224
+
160
225
  [Compare v1.0.0.rc2...v1.0.0.rc3](https://github.com/dry-rb/dry-validation/compare/v1.0.0.rc2...v1.0.0.rc3)
161
226
 
162
- # v1.0.0.rc2 2019-05-04
227
+ ## 1.0.0.rc2 2019-05-04
163
228
 
164
229
  This was **yanked** on rubygems.org because the bundled gem was missing `config` directory, thus it was not possible to require it. It was fixed in `rc3`.
165
230
 
@@ -179,7 +244,8 @@ This was **yanked** on rubygems.org because the bundled gem was missing `config`
179
244
 
180
245
  [Compare v1.0.0.rc1...v1.0.0.rc2](https://github.com/dry-rb/dry-validation/compare/v1.0.0.rc1...v1.0.0.rc2)
181
246
 
182
- # v1.0.0.rc1 2019-04-26
247
+ ## 1.0.0.rc1 2019-04-26
248
+
183
249
 
184
250
  ### Added
185
251
 
@@ -198,7 +264,8 @@ This was **yanked** on rubygems.org because the bundled gem was missing `config`
198
264
 
199
265
  [Compare v1.0.0.beta2...v1.0.0.rc1](https://github.com/dry-rb/dry-validation/compare/v1.0.0.beta2...v1.0.0.rc1)
200
266
 
201
- # v1.0.0.beta2 2019-04-04
267
+ ## 1.0.0.beta2 2019-04-04
268
+
202
269
 
203
270
  ### Added
204
271
 
@@ -226,7 +293,8 @@ This was **yanked** on rubygems.org because the bundled gem was missing `config`
226
293
 
227
294
  [Compare v1.0.0.beta1...v1.0.0.beta2](https://github.com/dry-rb/dry-validation/compare/v1.0.0.beta1...v1.0.0.beta2)
228
295
 
229
- # v1.0.0.beta1 2019-03-26
296
+ ## 1.0.0.beta1 2019-03-26
297
+
230
298
 
231
299
  ### Added
232
300
 
@@ -247,7 +315,7 @@ This was **yanked** on rubygems.org because the bundled gem was missing `config`
247
315
 
248
316
  [Compare v1.0.0.alpha2...v1.0.0.beta1](https://github.com/dry-rb/dry-validation/compare/v1.0.0.alpha2...v1.0.0.beta1)
249
317
 
250
- # v1.0.0.alpha2 2019-03-05
318
+ ## 1.0.0.alpha2 2019-03-05
251
319
 
252
320
  First round of bug fixes. Thanks for testing <3!
253
321
 
@@ -263,7 +331,7 @@ First round of bug fixes. Thanks for testing <3!
263
331
 
264
332
  [Compare v1.0.0.alpha1...v1.0.0.alpha2](https://github.com/dry-rb/dry-validation/compare/v1.0.0.alpha1...v1.0.0.alpha2)
265
333
 
266
- # v1.0.0.alpha1 2019-03-04
334
+ ## 1.0.0.alpha1 2019-03-04
267
335
 
268
336
  Complete rewrite on top of `dry-schema`.
269
337
 
@@ -272,22 +340,25 @@ Complete rewrite on top of `dry-schema`.
272
340
  - [BREAKING] `Dry::Validation::Contract` as a replacement for validation schemas (solnic)
273
341
  - [BREAKING] New `rule` DSL with an improved API for setting error messages (solnic)
274
342
 
275
- [Compare v0.13.0...v1.0.0.alpha1](https://github.com/dry-rb/dry-validation/compare/v0.13.0...v1.0.0.alpha1)
276
343
 
277
- # v0.13.0 2019-01-29
344
+ [Compare v0.13.0...v1.0.0.alpha1](https://github.com/dry-rb/dry-validation/compare/v0.13.0...v1.0.0.alpha1)
278
345
 
279
- ### Changed
346
+ ## 0.13.0 2019-01-29
280
347
 
281
- - `dry-logic` was bumped to `~> 0.5` (solnic)
282
- - `dry-types` was bumped to `~> 0.14` (solnic)
283
348
 
284
349
  ### Fixed
285
350
 
286
351
  - Warning about method redefined (amatsuda)
287
352
 
353
+ ### Changed
354
+
355
+ - `dry-logic` was bumped to `~> 0.5` (solnic)
356
+ - `dry-types` was bumped to `~> 0.14` (solnic)
357
+
288
358
  [Compare v0.12.3...v0.13.0](https://github.com/dry-rb/dry-validation/compare/v0.12.3...v0.13.0)
289
359
 
290
- # v0.12.3 2019-01-29
360
+ ## 0.12.3 2019-01-29
361
+
291
362
 
292
363
  ### Changed
293
364
 
@@ -295,23 +366,28 @@ Complete rewrite on top of `dry-schema`.
295
366
 
296
367
  [Compare v0.12.2...v0.12.3](https://github.com/dry-rb/dry-validation/compare/v0.12.2...v0.12.3)
297
368
 
298
- # v0.12.2 2018-08-29
369
+ ## 0.12.2 2018-08-29
370
+
299
371
 
300
372
  ### Fixed
301
373
 
302
374
  - Use correct key names for rule messages when using i18n (jozzi05)
303
375
 
376
+
304
377
  [Compare v0.12.1...v0.12.2](https://github.com/dry-rb/dry-validation/compare/v0.12.1...v0.12.2)
305
378
 
306
- # v0.12.1 2018-07-06
379
+ ## 0.12.1 2018-07-06
380
+
307
381
 
308
382
  ### Fixed
309
383
 
310
384
  - [internal] fixed deprecation warnings (flash-gordon)
311
385
 
386
+
312
387
  [Compare v0.12.0...v0.12.1](https://github.com/dry-rb/dry-validation/compare/v0.12.0...v0.12.1)
313
388
 
314
- # v0.12.0 2018-05-31
389
+ ## 0.12.0 2018-05-31
390
+
315
391
 
316
392
  ### Changed
317
393
 
@@ -320,7 +396,8 @@ Complete rewrite on top of `dry-schema`.
320
396
 
321
397
  [Compare v0.11.1...v0.12.0](https://github.com/dry-rb/dry-validation/compare/v0.11.1...v0.12.0)
322
398
 
323
- # v0.11.1 2017-09-15
399
+ ## 0.11.1 2017-09-15
400
+
324
401
 
325
402
  ### Changed
326
403
 
@@ -329,7 +406,8 @@ Complete rewrite on top of `dry-schema`.
329
406
 
330
407
  [Compare v0.11.0...v0.11.1](https://github.com/dry-rb/dry-validation/compare/v0.11.0...v0.11.1)
331
408
 
332
- # v0.11.0 2017-05-30
409
+ ## 0.11.0 2017-05-30
410
+
333
411
 
334
412
  ### Changed
335
413
 
@@ -337,32 +415,39 @@ Complete rewrite on top of `dry-schema`.
337
415
 
338
416
  [Compare v0.10.7...v0.11.0](https://github.com/dry-rb/dry-validation/compare/v0.10.7...v0.11.0)
339
417
 
340
- # v0.10.7 2017-05-15
418
+ ## 0.10.7 2017-05-15
419
+
341
420
 
342
421
  ### Fixed
343
422
 
344
423
  - `validate` can now be defined multiple times for the same key (kimquy)
345
424
  - Re-using rules between schemas no longer mutates original rule set (pabloh)
346
425
 
426
+
347
427
  [Compare v0.10.6...v0.10.7](https://github.com/dry-rb/dry-validation/compare/v0.10.6...v0.10.7)
348
428
 
349
- # v0.10.6 2017-04-26
429
+ ## 0.10.6 2017-04-26
430
+
350
431
 
351
432
  ### Fixed
352
433
 
353
434
  - Fixes issue with wrong localized error messages when namespaced messages are used (kbredemeier)
354
435
 
436
+
355
437
  [Compare v0.10.5...v0.10.6](https://github.com/dry-rb/dry-validation/compare/v0.10.5...v0.10.6)
356
438
 
357
- # v0.10.5 2017-01-12
439
+ ## 0.10.5 2017-01-12
440
+
358
441
 
359
442
  ### Fixed
360
443
 
361
444
  - Warnings under MRI 2.4.0 are gone (koic)
362
445
 
446
+
363
447
  [Compare v0.10.4...v0.10.5](https://github.com/dry-rb/dry-validation/compare/v0.10.4...v0.10.5)
364
448
 
365
- # v0.10.4 2016-12-03
449
+ ## 0.10.4 2016-12-03
450
+
366
451
 
367
452
  ### Fixed
368
453
 
@@ -375,31 +460,38 @@ Complete rewrite on top of `dry-schema`.
375
460
 
376
461
  [Compare v0.10.3...v0.10.4](https://github.com/dry-rb/dry-validation/compare/v0.10.3...v0.10.4)
377
462
 
378
- # v0.10.3 2016-09-27
463
+ ## 0.10.3 2016-09-27
464
+
379
465
 
380
466
  ### Fixed
381
467
 
382
468
  - Custom predicates work correctly with `each` macro (solnic)
383
469
 
470
+
384
471
  [Compare v0.10.2...v0.10.3](https://github.com/dry-rb/dry-validation/compare/v0.10.2...v0.10.3)
385
472
 
386
- # v0.10.2 2016-09-23
473
+ ## 0.10.2 2016-09-23
474
+
387
475
 
388
476
  ### Fixed
389
477
 
390
478
  - Constrained types + hints work again (solnic)
391
479
 
480
+
392
481
  [Compare v0.10.1...v0.10.2](https://github.com/dry-rb/dry-validation/compare/v0.10.1...v0.10.2)
393
482
 
394
- # v0.10.1 2016-09-22
483
+ ## 0.10.1 2016-09-22
484
+
395
485
 
396
486
  ### Fixed
397
487
 
398
488
  - Remove obsolete require of `dry/struct` which is now an optional extension (flash-gordon)
399
489
 
490
+
400
491
  [Compare v0.10.0...v0.10.1](https://github.com/dry-rb/dry-validation/compare/v0.10.0...v0.10.1)
401
492
 
402
- # v0.10.0 2016-09-21
493
+ ## 0.10.0 2016-09-21
494
+
403
495
 
404
496
  ### Added
405
497
 
@@ -422,34 +514,31 @@ Complete rewrite on top of `dry-schema`.
422
514
  - [BREAKING] `when` macro no longer supports multiple disconnected rules in its block, whatever the block returns will be used for the implication (solnic)
423
515
  - [BREAKING] `rule(some_name: %i(some keys))` will _always_ use `:some_name` as the key for failure messages (solnic)
424
516
 
425
- ### Internal
426
-
427
- - ~2 x performance boost (solnic)
428
- - Rule AST was updated to latest dry-logic (solnic)
429
- - `MessageCompiler` was drastically simplified based on the new result AST from dry-logic (solnic)
430
- - `HintCompiler` is gone as hints are now part of the result AST (solnic)
431
- - `maybe` macro creates an implication instead of a disjunction (`not(none?).then(*your-predicates)`) (solnic)
432
-
433
517
  [Compare v0.9.5...v0.10.0](https://github.com/dry-rb/dry-validation/compare/v0.9.5...v0.10.0)
434
518
 
435
- # v0.9.5 2016-08-16
519
+ ## 0.9.5 2016-08-16
520
+
436
521
 
437
522
  ### Fixed
438
523
 
439
524
  - Infering multiple predicates with options works as expected ie `value(:str?, min_size?: 3, max_size?: 6)` (solnic)
440
525
  - Default `locale` configured in `I18n` is now respected by the messages compiler (agustin + cavi21)
441
526
 
527
+
442
528
  [Compare v0.9.4...v0.9.5](https://github.com/dry-rb/dry-validation/compare/v0.9.4...v0.9.5)
443
529
 
444
- # v0.9.4 2016-08-11
530
+ ## 0.9.4 2016-08-11
531
+
445
532
 
446
533
  ### Fixed
447
534
 
448
535
  - Error messages for sibling deeply nested schemas are nested correctly (timriley)
449
536
 
537
+
450
538
  [Compare v0.9.3...v0.9.4](https://github.com/dry-rb/dry-validation/compare/v0.9.3...v0.9.4)
451
539
 
452
- # v0.9.3 2016-07-22
540
+ ## 0.9.3 2016-07-22
541
+
453
542
 
454
543
  ### Added
455
544
 
@@ -467,24 +556,29 @@ Complete rewrite on top of `dry-schema`.
467
556
 
468
557
  [Compare v0.9.2...v0.9.3](https://github.com/dry-rb/dry-validation/compare/v0.9.2...v0.9.3)
469
558
 
470
- # v0.9.2 2016-07-13
559
+ ## 0.9.2 2016-07-13
560
+
471
561
 
472
562
  ### Fixed
473
563
 
474
564
  - Constrained types now work with `each` macro (solnic)
475
565
  - Array coercion without member type works now ie `required(:arr).maybe(:array?)` (solnic)
476
566
 
567
+
477
568
  [Compare v0.9.1...v0.9.2](https://github.com/dry-rb/dry-validation/compare/v0.9.1...v0.9.2)
478
569
 
479
- # v0.9.1 2016-07-11
570
+ ## 0.9.1 2016-07-11
571
+
480
572
 
481
573
  ### Fixed
482
574
 
483
575
  - `I18n` backend is no longer required and set by default (solnic)
484
576
 
577
+
485
578
  [Compare v0.9.0...v0.9.1](https://github.com/dry-rb/dry-validation/compare/v0.9.0...v0.9.1)
486
579
 
487
- # v0.9.0 2016-07-08
580
+ ## 0.9.0 2016-07-08
581
+
488
582
 
489
583
  ### Added
490
584
 
@@ -497,10 +591,6 @@ Complete rewrite on top of `dry-schema`.
497
591
  - Support for message token transformations in custom predicates (fran-worley)
498
592
  - [EXPERIMENTAL] Ability to compose predicates that accept dynamic args provided by the schema (solnic)
499
593
 
500
- ### Changed
501
-
502
- - Tokens for `size?` were renamed `left` => `size_left` and `right` => `size_right` (fran-worley)
503
-
504
594
  ### Fixed
505
595
 
506
596
  - Duped key names in nested schemas no longer result in invalid error messages structure (solnic)
@@ -510,18 +600,14 @@ Complete rewrite on top of `dry-schema`.
510
600
  - Hints for elements are no longer provided for an array when the value is not an array (solnic)
511
601
  - `input` macro no longer messes up error messages for nested structures (solnic)
512
602
 
513
- ### Internal
603
+ ### Changed
514
604
 
515
- - Compiling messages is now ~5% faster (solnic + splattael)
516
- - Refactored Error and Hint compilers (solnic)
517
- - Refactored Schema to use an internal executor objects with steps (solnic)
518
- - Extracted root-rule into a separate validation step (solnic)
519
- - Added `MessageSet` that result objects now use (in 1.0.0 it'll be exposed via public API) (solnic)
520
- - We can now distinguish error messages from validation hints via `Message` and `Hint` objects (solnic)
605
+ - Tokens for `size?` were renamed `left` => `size_left` and `right` => `size_right` (fran-worley)
521
606
 
522
607
  [Compare v0.8.0...v0.9.0](https://github.com/dry-rb/dry-validation/compare/v0.8.0...v0.9.0)
523
608
 
524
- # v0.8.0 2016-07-01
609
+ ## 0.8.0 2016-07-01
610
+
525
611
 
526
612
  ### Added
527
613
 
@@ -567,19 +653,10 @@ Complete rewrite on top of `dry-schema`.
567
653
  - Deprecate key in favor of required (coop)
568
654
  - Remove nested key syntax (solnic)
569
655
 
570
- ### Internal
571
-
572
- - ~15% performance boost via various optimizations (solnic)
573
- - When using explicit type specs building a schema is ~80-85x faster (solnic)
574
- - No longer uses `Dry::Types::Predicates` as `:type?` predicate was moved to dry-logic (solnic)
575
- - Integration specs covering predicates with Form and Schema (jodosha)
576
- - Use latest ruby versions on travis (flash-gordon)
577
- - Make pry console optional with IRB as a default (flash-gordon)
578
- - Remove wrapping rules in :set nodes (solnic)
579
-
580
656
  [Compare v0.7.4...v0.8.0](https://github.com/dry-rb/dry-validation/compare/v0.7.4...v0.8.0)
581
657
 
582
- # v0.7.4 2016-04-06
658
+ ## 0.7.4 2016-04-06
659
+
583
660
 
584
661
  ### Added
585
662
 
@@ -590,9 +667,11 @@ Complete rewrite on top of `dry-schema`.
590
667
 
591
668
  - Depending on deeply nested values in high-level rules works now (solnic)
592
669
 
670
+
593
671
  [Compare v0.7.3...v0.7.4](https://github.com/dry-rb/dry-validation/compare/v0.7.3...v0.7.4)
594
672
 
595
- # v0.7.3 2016-03-30
673
+ ## 0.7.3 2016-03-30
674
+
596
675
 
597
676
  ### Added
598
677
 
@@ -605,22 +684,22 @@ Complete rewrite on top of `dry-schema`.
605
684
  - Creating a nested schema properly sets full path to nested data structure (solnic)
606
685
  - Error message for `empty?` predicate is now correct (jodosha)
607
686
 
608
- ### Internal
609
-
610
- - Switch from `thread_safe` to `concurrent` (joevandyk)
611
687
 
612
688
  [Compare v0.7.2...v0.7.3](https://github.com/dry-rb/dry-validation/compare/v0.7.2...v0.7.3)
613
689
 
614
- # v0.7.2 2016-03-28
690
+ ## 0.7.2 2016-03-28
691
+
615
692
 
616
693
  ### Added
617
694
 
618
695
  - Support for nested schemas inside high-level rules (solnic)
619
696
  - `Schema#to_proc` so that you can do `data.each(&schema)` (solnic)
620
697
 
698
+
621
699
  [Compare v0.7.1...v0.7.2](https://github.com/dry-rb/dry-validation/compare/v0.7.1...v0.7.2)
622
700
 
623
- # v0.7.1 2016-03-21
701
+ ## 0.7.1 2016-03-21
702
+
624
703
 
625
704
  ### Added
626
705
 
@@ -638,7 +717,8 @@ Complete rewrite on top of `dry-schema`.
638
717
 
639
718
  [Compare v0.7.0...v0.7.1](https://github.com/dry-rb/dry-validation/compare/v0.7.0...v0.7.1)
640
719
 
641
- # v0.7.0 2016-03-16
720
+ ## 0.7.0 2016-03-16
721
+
642
722
 
643
723
  ### Added
644
724
 
@@ -662,6 +742,12 @@ Complete rewrite on top of `dry-schema`.
662
742
  - `Validation::Result` responds to `#[]` and `#each` (delegating to its output)
663
743
  and it's an enumerable (solnic)
664
744
 
745
+ ### Fixed
746
+
747
+ - Qualified rule names properly use last node by default for error messages (solnic)
748
+ - Validation hints only include relevant messages (solnic)
749
+ - `:yaml` messages respect `:locale` option in `Result#messages` (solnic)
750
+
665
751
  ### Changed
666
752
 
667
753
  - `schema` was **removed** from the DSL, just use `key(:name).schema` instead (solnic)
@@ -672,15 +758,10 @@ Complete rewrite on top of `dry-schema`.
672
758
  - `Schema::Result` is now `Validation::Result` and it no longer has success and
673
759
  failure results, only error results are provided (solnic)
674
760
 
675
- ### Fixed
676
-
677
- - Qualified rule names properly use last node by default for error messages (solnic)
678
- - Validation hints only include relevant messages (solnic)
679
- - `:yaml` messages respect `:locale` option in `Result#messages` (solnic)
680
-
681
761
  [Compare v0.6.0...v0.7.0](https://github.com/dry-rb/dry-validation/compare/v0.6.0...v0.7.0)
682
762
 
683
- # v0.6.0 2016-01-20
763
+ ## 0.6.0 2016-01-20
764
+
684
765
 
685
766
  ### Added
686
767
 
@@ -691,38 +772,41 @@ Complete rewrite on top of `dry-schema`.
691
772
  - Support for `confirmation(:foo, some_predicate: some_argument)` shortcut syntax (solnic)
692
773
  - Support for error messages for grouped rules (like `confirmation`) (solnic)
693
774
  - Schemas support injecting rules from the outside (solnic)
694
-
695
- ## Changed
696
-
775
+ - ## Changed
697
776
  - `rule` uses objects that inherit from `BasicObject` to avoid conflicts with
698
777
  predicate names and built-in `Object` methods (solnic)
699
778
  - In `Schema::Form` both `key` and `optional` will apply `filled?` predicate by
700
779
  default when no block is passed (solnic)
701
780
 
702
- [Compare v0.5.0...v0.6.0](https://github.com/dry-rb/dry-validation/compare/v0.5.0...v0.6.0)
703
781
 
704
- # v0.5.0 2016-01-11
782
+ [Compare v0.5.0...v0.6.0](https://github.com/dry-rb/dry-validation/compare/v0.5.0...v0.6.0)
705
783
 
706
- ### Changed
784
+ ## 0.5.0 2016-01-11
707
785
 
708
- - Now depends on [dry-logic](https://github.com/dry-rb/dry-logic) for predicates and rules (solnic)
709
- - `dry/validation/schema/form` is now required by default (solnic)
710
786
 
711
787
  ### Fixed
712
788
 
713
789
  - `Schema::Form` uses safe `form.array` and `form.hash` types which fixes #42 (solnic)
714
790
 
791
+ ### Changed
792
+
793
+ - Now depends on [dry-logic](https://github.com/dry-rb/dry-logic) for predicates and rules (solnic)
794
+ - `dry/validation/schema/form` is now required by default (solnic)
795
+
715
796
  [Compare v0.4.1...v0.5.0](https://github.com/dry-rb/dry-validation/compare/v0.4.1...v0.5.0)
716
797
 
717
- # v0.4.1 2015-12-27
798
+ ## 0.4.1 2015-12-27
799
+
718
800
 
719
801
  ### Added
720
802
 
721
803
  - Support for `each` and type coercion inference in `Schema::Form` (solnic)
722
804
 
805
+
723
806
  [Compare v0.4.0...v0.4.1](https://github.com/dry-rb/dry-validation/compare/v0.4.0...v0.4.1)
724
807
 
725
- # v0.4.0 2015-12-21
808
+ ## 0.4.0 2015-12-21
809
+
726
810
 
727
811
  ### Added
728
812
 
@@ -736,9 +820,11 @@ Complete rewrite on top of `dry-schema`.
736
820
 
737
821
  - Error messages hash has now consistent structure `rule_name => [msgs_array, input_value]` (solnic)
738
822
 
823
+
739
824
  [Compare v0.3.1...v0.4.0](https://github.com/dry-rb/dry-validation/compare/v0.3.1...v0.4.0)
740
825
 
741
- # v0.3.1 2015-12-08
826
+ ## 0.3.1 2015-12-08
827
+
742
828
 
743
829
  ### Added
744
830
 
@@ -748,9 +834,11 @@ Complete rewrite on top of `dry-schema`.
748
834
 
749
835
  - Error compiler returns an empty hash rather than a nil when there are no errors (solnic)
750
836
 
837
+
751
838
  [Compare v0.3.0...v0.3.1](https://github.com/dry-rb/dry-validation/compare/v0.3.0...v0.3.1)
752
839
 
753
- # v0.3.0 2015-12-07
840
+ ## 0.3.0 2015-12-07
841
+
754
842
 
755
843
  ### Added
756
844
 
@@ -772,9 +860,10 @@ Complete rewrite on top of `dry-schema`.
772
860
  errors and messages
773
861
  - `Schema::Result#messages` returns a hash with rule names, messages and input values (solnic)
774
862
 
775
- [Compare v0.2.0...HEAD](https://github.com/dry-rb/dry-validation/compare/v0.2.0...HEAD)
863
+ [Compare v0.2.0...v0.3.0](https://github.com/dry-rb/dry-validation/compare/v0.2.0...v0.3.0)
864
+
865
+ ## 0.2.0 2015-11-30
776
866
 
777
- # v0.2.0 2015-11-30
778
867
 
779
868
  ### Added
780
869
 
@@ -795,8 +884,9 @@ Complete rewrite on top of `dry-schema`.
795
884
 
796
885
  - Added missing `and` / `or` interfaces to composite rules (solnic)
797
886
 
798
- [Compare v0.1.0...HEAD](https://github.com/dry-rb/dry-validation/compare/v0.1.0...HEAD)
799
887
 
800
- # v0.1.0 2015-11-25
888
+ [Compare v0.1.0...v0.2.0](https://github.com/dry-rb/dry-validation/compare/v0.1.0...v0.2.0)
889
+
890
+ ## 0.1.0 2015-11-25
801
891
 
802
892
  First public release