Closed bkjohnson closed 8 months ago
@kgiszczak I'd be happy to add an example or two to the README once you're satisfied with the changes.
@bkjohnson it looks really great, and yes please add some examples to README.
Outstanding items to do:
Thank you, outstanding job.
Some more changes I forgot about:
## [1.1.0] - [unreleased]
5. Squash everything to a single commit
Test coverage shows 100% and there are no rubocop warnings for the lib/
or spec/
directories. I limited it this way because there are a number of rubocop warnings in the benchmarks/
directory and gemspec.
Also, did you know about GitHub's "Squash and Merge" feature? It's a repo setting, but it can let you squash a PR into a single commit for merging.
You'll see it in the merge button dropdown:
Here are some more details including how to change the default commit message for the squash commit.
Awesome job, thank you.
Closes #28
This PR implements most of the "validators" vocabulary for the 2020-12 draft of JSON Schema. Specifically it allows the following properties to be used on the following types:
Numeric (Integer and Float shale types)
multiple_of
=>multipleOf
maximum
=>maximum
exclusive_maximum
=>exclusiveMaximum
minimum
=>minimum
exclusive_minimum
=>exclusiveMinimum
String
max_length
=>maxLength
min_length
=>minLength
pattern
=>pattern
The
format
keyword from the Format Annotation vocabulary is also allowed.Array (Collection shale type)
max_items
=>maxItems
min_items
=>minItems
unique
=>uniqueItems
max_contains
=>maxContains
min_contains
=>minContains
Object
required
=>required
max_properties
=>maxProperties
min_properties
=>minProperties
dependent_required
=>dependentRequired
This PR doesn't add support for the remaining keywords for "any" type:
enum
const
Lastly, right now these don't receive any sort of validation other than making sure that the wrong keywords don't get added to the wrong types.