json_schemer 1.0.2 → 2.0.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.
Files changed (57) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/ci.yml +1 -6
  3. data/CHANGELOG.md +25 -0
  4. data/Gemfile.lock +2 -2
  5. data/README.md +137 -14
  6. data/json_schemer.gemspec +1 -1
  7. data/lib/json_schemer/draft201909/meta.rb +335 -0
  8. data/lib/json_schemer/draft201909/vocab/applicator.rb +104 -0
  9. data/lib/json_schemer/draft201909/vocab/core.rb +45 -0
  10. data/lib/json_schemer/draft201909/vocab.rb +31 -0
  11. data/lib/json_schemer/draft202012/meta.rb +361 -0
  12. data/lib/json_schemer/draft202012/vocab/applicator.rb +382 -0
  13. data/lib/json_schemer/draft202012/vocab/content.rb +44 -0
  14. data/lib/json_schemer/draft202012/vocab/core.rb +154 -0
  15. data/lib/json_schemer/draft202012/vocab/format_annotation.rb +31 -0
  16. data/lib/json_schemer/draft202012/vocab/format_assertion.rb +29 -0
  17. data/lib/json_schemer/draft202012/vocab/meta_data.rb +30 -0
  18. data/lib/json_schemer/draft202012/vocab/unevaluated.rb +94 -0
  19. data/lib/json_schemer/draft202012/vocab/validation.rb +286 -0
  20. data/lib/json_schemer/draft202012/vocab.rb +103 -0
  21. data/lib/json_schemer/draft4/meta.rb +155 -0
  22. data/lib/json_schemer/draft4/vocab/validation.rb +39 -0
  23. data/lib/json_schemer/draft4/vocab.rb +18 -0
  24. data/lib/json_schemer/draft6/meta.rb +161 -0
  25. data/lib/json_schemer/draft6/vocab.rb +16 -0
  26. data/lib/json_schemer/draft7/meta.rb +178 -0
  27. data/lib/json_schemer/draft7/vocab/validation.rb +69 -0
  28. data/lib/json_schemer/draft7/vocab.rb +30 -0
  29. data/lib/json_schemer/errors.rb +1 -0
  30. data/lib/json_schemer/format/duration.rb +23 -0
  31. data/lib/json_schemer/format/email.rb +56 -0
  32. data/lib/json_schemer/format/json_pointer.rb +18 -0
  33. data/lib/json_schemer/format.rb +53 -34
  34. data/lib/json_schemer/keyword.rb +41 -0
  35. data/lib/json_schemer/location.rb +25 -0
  36. data/lib/json_schemer/openapi.rb +40 -0
  37. data/lib/json_schemer/openapi30/document.rb +1673 -0
  38. data/lib/json_schemer/openapi30/meta.rb +26 -0
  39. data/lib/json_schemer/openapi30/vocab/base.rb +18 -0
  40. data/lib/json_schemer/openapi30/vocab.rb +12 -0
  41. data/lib/json_schemer/openapi31/document.rb +1559 -0
  42. data/lib/json_schemer/openapi31/meta.rb +128 -0
  43. data/lib/json_schemer/openapi31/vocab/base.rb +89 -0
  44. data/lib/json_schemer/openapi31/vocab.rb +18 -0
  45. data/lib/json_schemer/output.rb +55 -0
  46. data/lib/json_schemer/result.rb +168 -0
  47. data/lib/json_schemer/schema.rb +390 -0
  48. data/lib/json_schemer/version.rb +1 -1
  49. data/lib/json_schemer.rb +198 -24
  50. metadata +43 -10
  51. data/lib/json_schemer/schema/base.rb +0 -677
  52. data/lib/json_schemer/schema/draft4.json +0 -149
  53. data/lib/json_schemer/schema/draft4.rb +0 -44
  54. data/lib/json_schemer/schema/draft6.json +0 -155
  55. data/lib/json_schemer/schema/draft6.rb +0 -25
  56. data/lib/json_schemer/schema/draft7.json +0 -172
  57. data/lib/json_schemer/schema/draft7.rb +0 -32
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: json_schemer
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.2
4
+ version: 2.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - David Harsha
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2023-06-07 00:00:00.000000000 Z
11
+ date: 2023-08-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -132,18 +132,50 @@ files:
132
132
  - json_schemer.gemspec
133
133
  - lib/json_schemer.rb
134
134
  - lib/json_schemer/cached_resolver.rb
135
+ - lib/json_schemer/draft201909/meta.rb
136
+ - lib/json_schemer/draft201909/vocab.rb
137
+ - lib/json_schemer/draft201909/vocab/applicator.rb
138
+ - lib/json_schemer/draft201909/vocab/core.rb
139
+ - lib/json_schemer/draft202012/meta.rb
140
+ - lib/json_schemer/draft202012/vocab.rb
141
+ - lib/json_schemer/draft202012/vocab/applicator.rb
142
+ - lib/json_schemer/draft202012/vocab/content.rb
143
+ - lib/json_schemer/draft202012/vocab/core.rb
144
+ - lib/json_schemer/draft202012/vocab/format_annotation.rb
145
+ - lib/json_schemer/draft202012/vocab/format_assertion.rb
146
+ - lib/json_schemer/draft202012/vocab/meta_data.rb
147
+ - lib/json_schemer/draft202012/vocab/unevaluated.rb
148
+ - lib/json_schemer/draft202012/vocab/validation.rb
149
+ - lib/json_schemer/draft4/meta.rb
150
+ - lib/json_schemer/draft4/vocab.rb
151
+ - lib/json_schemer/draft4/vocab/validation.rb
152
+ - lib/json_schemer/draft6/meta.rb
153
+ - lib/json_schemer/draft6/vocab.rb
154
+ - lib/json_schemer/draft7/meta.rb
155
+ - lib/json_schemer/draft7/vocab.rb
156
+ - lib/json_schemer/draft7/vocab/validation.rb
135
157
  - lib/json_schemer/ecma_regexp.rb
136
158
  - lib/json_schemer/errors.rb
137
159
  - lib/json_schemer/format.rb
160
+ - lib/json_schemer/format/duration.rb
161
+ - lib/json_schemer/format/email.rb
138
162
  - lib/json_schemer/format/hostname.rb
163
+ - lib/json_schemer/format/json_pointer.rb
139
164
  - lib/json_schemer/format/uri_template.rb
140
- - lib/json_schemer/schema/base.rb
141
- - lib/json_schemer/schema/draft4.json
142
- - lib/json_schemer/schema/draft4.rb
143
- - lib/json_schemer/schema/draft6.json
144
- - lib/json_schemer/schema/draft6.rb
145
- - lib/json_schemer/schema/draft7.json
146
- - lib/json_schemer/schema/draft7.rb
165
+ - lib/json_schemer/keyword.rb
166
+ - lib/json_schemer/location.rb
167
+ - lib/json_schemer/openapi.rb
168
+ - lib/json_schemer/openapi30/document.rb
169
+ - lib/json_schemer/openapi30/meta.rb
170
+ - lib/json_schemer/openapi30/vocab.rb
171
+ - lib/json_schemer/openapi30/vocab/base.rb
172
+ - lib/json_schemer/openapi31/document.rb
173
+ - lib/json_schemer/openapi31/meta.rb
174
+ - lib/json_schemer/openapi31/vocab.rb
175
+ - lib/json_schemer/openapi31/vocab/base.rb
176
+ - lib/json_schemer/output.rb
177
+ - lib/json_schemer/result.rb
178
+ - lib/json_schemer/schema.rb
147
179
  - lib/json_schemer/version.rb
148
180
  homepage: https://github.com/davishmcclurg/json_schemer
149
181
  licenses:
@@ -167,5 +199,6 @@ requirements: []
167
199
  rubygems_version: 3.4.10
168
200
  signing_key:
169
201
  specification_version: 4
170
- summary: JSON Schema validator. Supports drafts 4, 6, and 7.
202
+ summary: JSON Schema validator. Supports drafts 4, 6, 7, 2019-09, 2020-12, OpenAPI
203
+ 3.0, and OpenAPI 3.1.
171
204
  test_files: []