dry-schema 1.4.2 → 1.5.3
Sign up to get free protection for your applications and to get access to all the features.
- 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.
|