dry-schema 1.4.3 → 1.5.0
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 +4 -4
- data/CHANGELOG.md +170 -97
- data/config/errors.yml +4 -0
- data/dry-schema.gemspec +46 -0
- data/lib/dry-schema.rb +1 -1
- data/lib/dry/schema.rb +19 -6
- data/lib/dry/schema/compiler.rb +4 -4
- data/lib/dry/schema/config.rb +15 -6
- data/lib/dry/schema/constants.rb +16 -7
- data/lib/dry/schema/dsl.rb +88 -27
- data/lib/dry/schema/extensions.rb +10 -2
- data/lib/dry/schema/extensions/hints.rb +15 -8
- data/lib/dry/schema/extensions/hints/message_compiler_methods.rb +1 -1
- data/lib/dry/schema/extensions/hints/message_set_methods.rb +0 -47
- data/lib/dry/schema/extensions/info.rb +27 -0
- data/lib/dry/schema/extensions/info/schema_compiler.rb +105 -0
- data/lib/dry/schema/extensions/monads.rb +1 -1
- data/lib/dry/schema/extensions/struct.rb +32 -0
- data/lib/dry/schema/json.rb +1 -1
- data/lib/dry/schema/key.rb +16 -1
- data/lib/dry/schema/key_coercer.rb +4 -4
- data/lib/dry/schema/key_map.rb +9 -4
- data/lib/dry/schema/key_validator.rb +66 -0
- data/lib/dry/schema/macros.rb +8 -8
- data/lib/dry/schema/macros/array.rb +17 -4
- data/lib/dry/schema/macros/core.rb +9 -4
- data/lib/dry/schema/macros/dsl.rb +34 -19
- data/lib/dry/schema/macros/each.rb +4 -4
- data/lib/dry/schema/macros/filled.rb +5 -5
- data/lib/dry/schema/macros/hash.rb +21 -3
- data/lib/dry/schema/macros/key.rb +9 -9
- data/lib/dry/schema/macros/maybe.rb +3 -3
- data/lib/dry/schema/macros/optional.rb +1 -1
- data/lib/dry/schema/macros/required.rb +1 -1
- data/lib/dry/schema/macros/schema.rb +23 -2
- data/lib/dry/schema/macros/value.rb +32 -10
- data/lib/dry/schema/message.rb +35 -9
- data/lib/dry/schema/message/or.rb +18 -39
- data/lib/dry/schema/message/or/abstract.rb +28 -0
- data/lib/dry/schema/message/or/multi_path.rb +37 -0
- data/lib/dry/schema/message/or/single_path.rb +64 -0
- data/lib/dry/schema/message_compiler.rb +37 -17
- data/lib/dry/schema/message_compiler/visitor_opts.rb +2 -2
- data/lib/dry/schema/message_set.rb +25 -36
- data/lib/dry/schema/messages.rb +6 -6
- data/lib/dry/schema/messages/abstract.rb +54 -56
- data/lib/dry/schema/messages/i18n.rb +29 -27
- data/lib/dry/schema/messages/namespaced.rb +12 -2
- data/lib/dry/schema/messages/template.rb +19 -44
- data/lib/dry/schema/messages/yaml.rb +60 -13
- data/lib/dry/schema/params.rb +1 -1
- data/lib/dry/schema/path.rb +44 -5
- data/lib/dry/schema/predicate.rb +2 -2
- data/lib/dry/schema/predicate_inferrer.rb +4 -184
- data/lib/dry/schema/predicate_registry.rb +2 -2
- data/lib/dry/schema/primitive_inferrer.rb +16 -0
- data/lib/dry/schema/processor.rb +49 -28
- data/lib/dry/schema/processor_steps.rb +50 -27
- data/lib/dry/schema/result.rb +43 -5
- data/lib/dry/schema/rule_applier.rb +8 -7
- data/lib/dry/schema/step.rb +79 -0
- data/lib/dry/schema/trace.rb +5 -4
- data/lib/dry/schema/type_container.rb +3 -3
- data/lib/dry/schema/type_registry.rb +2 -2
- data/lib/dry/schema/types.rb +1 -1
- data/lib/dry/schema/value_coercer.rb +2 -2
- data/lib/dry/schema/version.rb +1 -1
- metadata +22 -8
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 45a3441f7099ddd2ea6c0af6345f1fdcff20cf0629953dfc1eedcce5f8f54995
|
4
|
+
data.tar.gz: 841584478740cfc72a653e50445b9e3a16c01a6ce49b2c8c8375da76811ca50d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 368b80c79f2598dd4cf215c8223dbd704b75909857acf9fa51e60abed19ba3bdc2904ce5d7227ef7259b45593017131ce6ab5434ee3d713fe6b97eed643eecd8
|
7
|
+
data.tar.gz: 4f5ac8469feb749ed6ca95c022f99b822204d1b1cdde05969795571cabd43cd573111c86cfb4322413a22b5e99958156ba061a598c381989510ecf700fbfc7f0
|
data/CHANGELOG.md
CHANGED
@@ -1,62 +1,111 @@
|
|
1
|
-
|
1
|
+
## 1.5.0 2020-03-11
|
2
|
+
|
2
3
|
|
3
4
|
### Added
|
4
5
|
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
6
|
+
- Support for complex sum types ie `value([:integer, array[:integer])` (issue #214) (@solnic)
|
7
|
+
- You can now set global config via `Dry::Schema.config` (issue #205) (@robhanlon22)
|
8
|
+
- Default error message for `:uuid_v4?` predicate (isssue #230) (@solnic)
|
9
|
+
- [experimental] you can compose schemas in the DSL using the standard logic operators (issue #231 closed via #245) (@solnic)
|
10
|
+
- Hash schema type can now be used with proper keys and predicates inferring. Constructor
|
11
|
+
and default types are explicitly not supported (@flash-gordon)
|
12
|
+
```ruby
|
13
|
+
UserType = Dry::Types['hash'].schema(
|
14
|
+
name: 'string',
|
15
|
+
email: 'string'
|
16
|
+
)
|
17
|
+
|
18
|
+
Dry::Schema.define do
|
19
|
+
require(:user).hash(UserType)
|
20
|
+
end
|
21
|
+
```
|
22
|
+
- `:struct` extension which allows using dry-struct classes as source for hash schemas. Note that output will still be presented as plain hashes, returning structs from schemas will require more work, it's planned for next versions (@flash-gordon)
|
23
|
+
- `:info` extension which adds #info method to your schemas which produces a simple hash providing information about keys and types (issue #36 closed via #262) (@solnic)
|
22
24
|
|
23
25
|
### Fixed
|
24
26
|
|
25
|
-
|
27
|
+
- `maybe` macro in JSON schemas no longer converts empty strings to `nil`.
|
28
|
+
This was a bug in dry-types but your code may rely on this behavior. If you still
|
29
|
+
require this behavior, we recommend using a custom type (see Advanced -> Custom types in the docs) (@flash-gordon)
|
30
|
+
- YAML message backend no longer crashes when load_paths are empty (@robhanlon22)
|
31
|
+
- Callbacks can now be inherited from multiple parents (@skryukov)
|
32
|
+
- Callbacks work with nested schemas (issue #209) (@solnic)
|
33
|
+
- Custom type is respected when defining nested schemas (issue #174 closed via 263) (@solnic)
|
34
|
+
- Key map is properly inferred for maybe-hashes (issue #266 fixed via #269) (@solnic)
|
35
|
+
|
36
|
+
### Changed
|
37
|
+
|
38
|
+
- `:i18n` message backend delegates interpolation and caching to `I18n` (issue #211) (@robhanlon22)
|
39
|
+
- Raise ArgumentError in DSL if parent DSL configs differ (@robhanlon22)
|
40
|
+
- (internal) `PredicateInferrer` was removed. `Dry::Types::PredicateInferrer` is a drop-in replacement (@flash-gordon)
|
41
|
+
|
42
|
+
[Compare v1.4.3...v1.5.0](https://github.com/dry-rb/dry-schema/compare/v1.4.3...v1.5.0)
|
43
|
+
|
44
|
+
## 1.4.3 2020-01-08
|
45
|
+
|
46
|
+
|
47
|
+
### Added
|
48
|
+
|
49
|
+
- Pattern matching for `Dry::Schema::Result` objects (@flash-gordon)
|
50
|
+
```ruby
|
51
|
+
schema = Dry::Schema::Params { required(:name).filled }
|
52
|
+
case schema.('name' => 'John')
|
53
|
+
in name:
|
54
|
+
name # => 'John'
|
55
|
+
end
|
56
|
+
```
|
57
|
+
Try it with monads!
|
58
|
+
- Shortcut for nested schemas in `value` and `maybe` macros (@waiting-for-dev)
|
59
|
+
```ruby
|
60
|
+
Dry::Schema.Params do
|
61
|
+
required(:address).value(:hash) do
|
62
|
+
required(:city).filled
|
63
|
+
end
|
64
|
+
end
|
65
|
+
```
|
66
|
+
|
67
|
+
### Fixed
|
68
|
+
|
69
|
+
- Some keyword warnings that slipped into the previous release (@flash-gordon)
|
70
|
+
|
26
71
|
|
27
72
|
[Compare v1.4.2...v1.4.3](https://github.com/dry-rb/dry-schema/compare/v1.4.2...v1.4.3)
|
28
73
|
|
29
|
-
|
74
|
+
## 1.4.2 2019-12-19
|
75
|
+
|
30
76
|
|
31
77
|
### Fixed
|
32
78
|
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
79
|
+
- `I18n` messages backend supports procs as text properly (issue #208) (@robhanlon22)
|
80
|
+
- `I18n` messages backend supports message meta-data (issue #210) (@robhanlon22)
|
81
|
+
- Fixed keyword warnings from MRI 2.7.0 (@flash-gordon)
|
82
|
+
- Array with a member works correctly with `maybe` (issue #206) (@solnic)
|
83
|
+
|
37
84
|
|
38
85
|
[Compare v1.4.1...v1.4.2](https://github.com/dry-rb/dry-schema/compare/v1.4.1...v1.4.2)
|
39
86
|
|
40
|
-
|
87
|
+
## 1.4.1 2019-10-08
|
88
|
+
|
41
89
|
|
42
90
|
### Fixed
|
43
91
|
|
44
92
|
- Child schemas no longer mutate processing steps of their parent classes (@skryukov)
|
45
93
|
|
94
|
+
|
46
95
|
[Compare v1.4.0...v1.4.1](https://github.com/dry-rb/dry-schema/compare/v1.4.0...v1.4.1)
|
47
96
|
|
48
|
-
|
97
|
+
## 1.4.0 2019-10-08
|
98
|
+
|
49
99
|
|
50
100
|
### Added
|
51
101
|
|
52
102
|
- Support for passing multiple parent schemas. They are inherited from left to right (@ianwhite)
|
53
103
|
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
104
|
+
```ruby
|
105
|
+
Dry::Schema.define(parent: [parent_a, parent_b, parent_c]) do
|
106
|
+
...
|
107
|
+
end
|
108
|
+
```
|
60
109
|
- Improved error messages about missing translations (@skryukov)
|
61
110
|
- [experimental] before/after callbacks for schema steps (@skryukov)
|
62
111
|
|
@@ -75,17 +124,21 @@
|
|
75
124
|
|
76
125
|
- Added/fixed support for custom optional types (@flash-gordon)
|
77
126
|
|
127
|
+
|
78
128
|
[Compare v1.3.4...v1.4.0](https://github.com/dry-rb/dry-schema/compare/v1.3.4...v1.4.0)
|
79
129
|
|
80
|
-
|
130
|
+
## 1.3.4 2019-09-11
|
131
|
+
|
81
132
|
|
82
133
|
### Fixed
|
83
134
|
|
84
135
|
- Fixed regression where using `array?` predicate within a block would crach (issue #186) (@skryukov)
|
85
136
|
|
137
|
+
|
86
138
|
[Compare v1.3.3...v1.3.4](https://github.com/dry-rb/dry-schema/compare/v1.3.3...v1.3.4)
|
87
139
|
|
88
|
-
|
140
|
+
## 1.3.3 2019-08-14
|
141
|
+
|
89
142
|
|
90
143
|
### Fixed
|
91
144
|
|
@@ -94,68 +147,75 @@
|
|
94
147
|
- Default processor uses strict types by default, which fixes various cases when `maybe` is used with a constructor type (@flash-gordon)
|
95
148
|
- Namespaced messages no longer causes a crash when used with nested schemas (fixed #176) (@solnic)
|
96
149
|
|
150
|
+
|
97
151
|
[Compare v1.3.2...v1.3.3](https://github.com/dry-rb/dry-schema/compare/v1.3.2...v1.3.3)
|
98
152
|
|
99
|
-
|
153
|
+
## 1.3.2 2019-08-01
|
154
|
+
|
100
155
|
|
101
156
|
### Added
|
102
157
|
|
103
158
|
- Support for new predicates: `bytesize?`, `min_bytesize?` and `max_bytesize?` (@bmalinconico)
|
104
159
|
|
160
|
+
|
105
161
|
[Compare v1.3.1...v1.3.2](https://github.com/dry-rb/dry-schema/compare/v1.3.1...v1.3.2)
|
106
162
|
|
107
|
-
|
163
|
+
## 1.3.1 2019-07-08
|
164
|
+
|
108
165
|
|
109
166
|
### Fixed
|
110
167
|
|
111
168
|
- `Result#error?` works correctly with nested hashes and arrays (@solnic)
|
112
169
|
- `:hints` extension no longer causes a crash where base messages are generated too (issue #165) (@solnic)
|
113
170
|
|
171
|
+
|
114
172
|
[Compare v1.3.0...v1.3.1](https://github.com/dry-rb/dry-schema/compare/v1.3.0...v1.3.1)
|
115
173
|
|
116
|
-
|
174
|
+
## 1.3.0 2019-07-06
|
175
|
+
|
117
176
|
|
118
177
|
### Added
|
119
178
|
|
120
179
|
- Automatic predicate inferring for constrained types! (@flash-gordon)
|
121
180
|
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
schema = Dry::Schema.define do
|
126
|
-
required(:name).value(Types::Name)
|
127
|
-
end
|
181
|
+
```ruby
|
182
|
+
Types::Name = Types::String.constrained(min_size: 1)
|
128
183
|
|
129
|
-
|
130
|
-
|
184
|
+
schema = Dry::Schema.define do
|
185
|
+
required(:name).value(Types::Name)
|
186
|
+
end
|
131
187
|
|
188
|
+
schema.(name: '').errors.to_h # => { name: ["size cannot be less than 1"] }
|
189
|
+
```
|
132
190
|
- Support for redefining re-used schemas (issue #43) (@skryukov)
|
133
191
|
|
134
192
|
### Fixed
|
135
193
|
|
136
194
|
- Type container is passed down to nested schemas (@flash-gordon)
|
137
195
|
|
196
|
+
|
138
197
|
[Compare v1.2.0...v1.3.0](https://github.com/dry-rb/dry-schema/compare/v1.2.0...v1.3.0)
|
139
198
|
|
140
|
-
|
199
|
+
## 1.2.0 2019-06-13
|
200
|
+
|
141
201
|
|
142
202
|
### Added
|
143
203
|
|
144
204
|
- Ability to configure your own type container (@Morozzzko)
|
145
205
|
|
146
|
-
|
147
|
-
|
148
|
-
|
149
|
-
|
150
|
-
|
151
|
-
|
206
|
+
```ruby
|
207
|
+
types = Dry::Schema::TypeContainer.new
|
208
|
+
types.register(
|
209
|
+
'params.trimmed_string',
|
210
|
+
Types::String.constructor(&:strip).constructor(&:downcase)
|
211
|
+
)
|
152
212
|
|
153
|
-
|
154
|
-
|
213
|
+
Dry::Schema.Params do
|
214
|
+
config.types = types
|
155
215
|
|
156
|
-
|
157
|
-
|
158
|
-
|
216
|
+
require(:name).value(:trimmed_string)
|
217
|
+
end
|
218
|
+
```
|
159
219
|
|
160
220
|
### Fixed
|
161
221
|
|
@@ -173,7 +233,8 @@
|
|
173
233
|
|
174
234
|
[Compare v1.1.0...v1.2.0](https://github.com/dry-rb/dry-schema/compare/v1.1.0...v1.2.0)
|
175
235
|
|
176
|
-
|
236
|
+
## 1.1.0 2019-05-30
|
237
|
+
|
177
238
|
|
178
239
|
### Added
|
179
240
|
|
@@ -190,9 +251,11 @@
|
|
190
251
|
- `Config#eql?` works as expected (@solnic)
|
191
252
|
- Predicates are properly inferred from array with a member type spec, ie `array[:integer]` results in `array? + each(:integer?)` (issue #140) (@solnic)
|
192
253
|
|
254
|
+
|
193
255
|
[Compare v1.0.3...v1.1.0](https://github.com/dry-rb/dry-schema/compare/v1.0.3...v1.1.0)
|
194
256
|
|
195
|
-
|
257
|
+
## 1.0.3 2019-05-21
|
258
|
+
|
196
259
|
|
197
260
|
### Fixed
|
198
261
|
|
@@ -200,38 +263,45 @@
|
|
200
263
|
- Predicate arguments are used again for template cache keys (@solnic)
|
201
264
|
- `I18n` messages backend no longer evaluates templates twice (@solnic)
|
202
265
|
|
266
|
+
|
203
267
|
[Compare v1.0.2...v1.0.3](https://github.com/dry-rb/dry-schema/compare/v1.0.2...v1.0.3)
|
204
268
|
|
205
|
-
|
269
|
+
## 1.0.2 2019-05-12
|
270
|
+
|
206
271
|
|
207
272
|
### Fixed
|
208
273
|
|
209
274
|
- Caching message templates uses restricted set of known keys to calculate cache keys (issue #132) (@solnic)
|
210
275
|
|
276
|
+
|
211
277
|
[Compare v1.0.1...v1.0.2](https://github.com/dry-rb/dry-schema/compare/v1.0.1...v1.0.2)
|
212
278
|
|
213
|
-
|
279
|
+
## 1.0.1 2019-05-08
|
280
|
+
|
214
281
|
|
215
282
|
### Fixed
|
216
283
|
|
217
284
|
- Applying `key?` predicate no longer causes recursive calls to `Result#errors` (issue #130) (@solnic)
|
218
285
|
|
286
|
+
|
219
287
|
[Compare v1.0.0...v1.0.1](https://github.com/dry-rb/dry-schema/compare/v1.0.0...v1.0.1)
|
220
288
|
|
221
|
-
|
289
|
+
## 1.0.0 2019-05-03
|
222
290
|
|
223
|
-
### Changed
|
224
|
-
|
225
|
-
- [BREAKING] `Result#to_hash` was removed (@solnic)
|
226
291
|
|
227
292
|
### Fixed
|
228
293
|
|
229
294
|
- Setting `:any` as the type spec no longer crashes (@solnic)
|
230
295
|
- `Result#error?` handles paths to array elements correctly (@solnic)
|
231
296
|
|
297
|
+
### Changed
|
298
|
+
|
299
|
+
- [BREAKING] `Result#to_hash` was removed (@solnic)
|
300
|
+
|
232
301
|
[Compare v0.6.0...v1.0.0](https://github.com/dry-rb/dry-schema/compare/v0.6.0...v1.0.0)
|
233
302
|
|
234
|
-
|
303
|
+
## 0.6.0 2019-04-24
|
304
|
+
|
235
305
|
|
236
306
|
### Changed
|
237
307
|
|
@@ -241,42 +311,44 @@
|
|
241
311
|
|
242
312
|
[Compare v0.5.1...v0.6.0](https://github.com/dry-rb/dry-schema/compare/v0.5.1...v0.6.0)
|
243
313
|
|
244
|
-
|
314
|
+
## 0.5.1 2019-04-17
|
315
|
+
|
245
316
|
|
246
317
|
### Fixed
|
247
318
|
|
248
319
|
- Key map no longer crashes on unexpected input (issue #118) (@solnic)
|
249
320
|
|
321
|
+
|
250
322
|
[Compare v0.5.0...v0.5.1](https://github.com/dry-rb/dry-schema/compare/v0.5.0...v0.5.1)
|
251
323
|
|
252
|
-
|
324
|
+
## 0.5.0 2019-04-04
|
325
|
+
|
253
326
|
|
254
327
|
### Added
|
255
328
|
|
256
329
|
- Support for arbitrary meta-data in messages, ie:
|
257
330
|
|
258
|
-
|
259
|
-
|
260
|
-
|
261
|
-
|
262
|
-
|
263
|
-
|
264
|
-
|
265
|
-
|
266
|
-
|
267
|
-
Now your error hash will include `{ foo: [{ text: 'cannot be blank', code: 123 }] }` (@solnic + @flash-gordon)
|
331
|
+
```yaml
|
332
|
+
en:
|
333
|
+
dry_schema:
|
334
|
+
errors:
|
335
|
+
filled?:
|
336
|
+
text: "cannot be blank"
|
337
|
+
code: 123
|
338
|
+
```
|
268
339
|
|
340
|
+
Now your error hash will include `{ foo: [{ text: 'cannot be blank', code: 123 }] }` (@solnic + @flash-gordon)
|
269
341
|
- Support for type specs in `array` macro, ie `required(:tags).array(:integer)` (@solnic)
|
270
342
|
- Support for type specs in `each` macro, ie `required(:tags).each(:integer)` (@solnic)
|
271
343
|
- Shortcut for defining an array with hash as its member, ie:
|
272
344
|
|
273
|
-
|
274
|
-
|
275
|
-
|
276
|
-
|
277
|
-
|
278
|
-
|
279
|
-
|
345
|
+
```ruby
|
346
|
+
Dry::Schema.Params do
|
347
|
+
required(:tags).array(:hash) do
|
348
|
+
required(:name).filled(:string)
|
349
|
+
end
|
350
|
+
end
|
351
|
+
```
|
280
352
|
|
281
353
|
### Fixed
|
282
354
|
|
@@ -290,7 +362,8 @@
|
|
290
362
|
|
291
363
|
[Compare v0.4.0...v0.5.0](https://github.com/dry-rb/dry-schema/compare/v0.4.0...v0.5.0)
|
292
364
|
|
293
|
-
|
365
|
+
## 0.4.0 2019-03-26
|
366
|
+
|
294
367
|
|
295
368
|
### Added
|
296
369
|
|
@@ -312,16 +385,17 @@
|
|
312
385
|
- [BREAKING] `Messages` backend classes no longer use global configuration (@solnic)
|
313
386
|
- [BREAKING] Passing a non-symbol key name in the DSL will raise `ArgumentError` (issue #29) (@solnic)
|
314
387
|
- [BREAKING] Configuration for message backends is now nested under `messages` key with following settings:
|
315
|
-
|
316
|
-
|
317
|
-
|
318
|
-
|
388
|
+
- `messages.backend` - previously `messages`
|
389
|
+
- `messages.load_paths` - previously `messages_path`
|
390
|
+
- `messages.namespace` - previously `namespace`
|
391
|
+
- `messages.top_namespace` - **new setting** see above
|
319
392
|
- [BREAKING] `Messages::I18n` uses `I18.store_translations` instead of messing with `I18n.load_path` (@solnic)
|
320
393
|
- Schemas (`Params` and `JSON`) have nicer inspect (@solnic)
|
321
394
|
|
322
395
|
[Compare v0.3.0...v0.4.0](https://github.com/dry-rb/dry-schema/compare/v0.3.0...v0.4.0)
|
323
396
|
|
324
|
-
|
397
|
+
## 0.3.0 2018-03-04
|
398
|
+
|
325
399
|
|
326
400
|
### Fixed
|
327
401
|
|
@@ -338,7 +412,8 @@
|
|
338
412
|
|
339
413
|
[Compare v0.2.0...v0.3.0](https://github.com/dry-rb/dry-schema/compare/v0.2.0...v0.3.0)
|
340
414
|
|
341
|
-
|
415
|
+
## 0.2.0 2019-02-26
|
416
|
+
|
342
417
|
|
343
418
|
### Added
|
344
419
|
|
@@ -367,7 +442,8 @@
|
|
367
442
|
|
368
443
|
[Compare v0.1.1...v0.2.0](https://github.com/dry-rb/dry-schema/compare/v0.1.1...v0.2.0)
|
369
444
|
|
370
|
-
|
445
|
+
## 0.1.1 2019-02-17
|
446
|
+
|
371
447
|
|
372
448
|
### Added
|
373
449
|
|
@@ -378,12 +454,9 @@
|
|
378
454
|
- Fix issues with templates and invalid tokens (issue #27) (@solnic)
|
379
455
|
- Fix Ruby warnings (@flash-gordon)
|
380
456
|
|
381
|
-
### Internal
|
382
|
-
|
383
|
-
- Key and value coercers are now equalizable (@flash-gordon)
|
384
457
|
|
385
458
|
[Compare v0.1.0...v0.1.1](https://github.com/dry-rb/dry-schema/compare/v0.1.0...v0.1.1)
|
386
459
|
|
387
|
-
|
460
|
+
## 0.1.0 2019-01-30
|
388
461
|
|
389
462
|
Initial release.
|