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