Dmitry Dygalo
abeae1eb25
refactor: Clarify lifetime naming in `Validate::validate`
2021-12-07 12:28:47 +01:00
Dmitry Dygalo
64792f39c4
perf: Remove the `schema` argument from all methods of the `Validate` trait
2021-12-07 11:43:48 +01:00
Dmitry Dygalo
e2b77fc705
perf: Add special cases for arrays with 2 and 3 items in the `uniqueItems` keyword implementation
2021-12-06 21:50:22 +01:00
Dmitry Dygalo
87bce86efe
perf: Optimize the `multipleOf` implementation
2021-12-06 18:25:23 +01:00
Dmitry Dygalo
691ec3e2ac
perf: Remove unused private field in `JSONSchema`
2021-12-06 18:07:18 +01:00
Dmitry Dygalo
0aaff827b5
chore(python): Release 0.13.1
...
Signed-off-by: Dmitry Dygalo <dmitry@dygalo.dev>
2021-11-10 16:01:18 +01:00
Blayne Chard
0515c955a4
feat: convert python enum into raw values before validating ( #317 )
...
* feat: convert python enum into raw values before validating
* refactor: apply pull request comments
2021-11-09 20:49:04 +01:00
Dmitry Dygalo
527cf797cf
docs(python): Update benchmarks
2021-11-04 13:11:17 +01:00
Dmitry Dygalo
88156ada20
chore(python): Release 0.13.0
...
Signed-off-by: Dmitry Dygalo <dmitry@dygalo.dev>
2021-11-04 12:35:37 +01:00
Dmitry Dygalo
2ea835a442
chore(rust): Release 0.13.2
...
Signed-off-by: Dmitry Dygalo <dmitry@dygalo.dev>
2021-11-04 12:32:57 +01:00
Dmitry Dygalo
aa7b277933
docs: Add missing changelog entry
...
Signed-off-by: Dmitry Dygalo <dmitry@dygalo.dev>
2021-11-04 12:29:55 +01:00
Blayne Chard
9867b383a6
refactor: split list and tuple serialization
2021-11-04 12:29:45 +01:00
Blayne Chard
b88262bb14
test: validate that named tuples error
2021-11-04 12:29:45 +01:00
Blayne Chard
a4dc339635
refactor: expand tests around arrays and tuples
2021-11-04 12:29:45 +01:00
Blayne Chard
3ae1db54de
refactor: convert tuple size to 0
2021-11-04 12:29:45 +01:00
Blayne Chard
045d4aaab5
refactor: avoid serialization logic duplication
2021-11-04 12:29:45 +01:00
Blayne Chard
734445856b
fix: convert tuples into lists
2021-11-04 12:29:45 +01:00
Alex Good
0f050b860e
feat: expose methods to examine OutputUnits
...
The `Output::basic` method returns a BasicOutput. Prior to this patch the
only way to examine the contents of this data structure was to serialize
it to JSON. This patch adds methods to examine the outputs from Rust, as
well as documentation on how to do so.
Signed-off-by: Alex Good <alex@memoryandthought.me>
2021-11-03 18:50:50 +01:00
Dmitry Dygalo
80c5af90c4
docs: Update support notes
...
Signed-off-by: Dmitry Dygalo <dmitry@dygalo.dev>
2021-10-29 17:53:44 +02:00
Dmitry Dygalo
a95a754496
feat(python): A way to compile schemas from a string
...
Signed-off-by: Dmitry Dygalo <dmitry@dygalo.dev>
2021-10-29 17:50:43 +02:00
Rafael Caricio
0e150641e1
feat: Implement `prefixItems` keyword
2021-10-29 14:54:13 +02:00
Dmitry Dygalo
f8b8ec0d6c
docs: Update README
...
Signed-off-by: Dmitry Dygalo <dmitry@dygalo.dev>
2021-10-28 11:48:18 +02:00
Dmitry Dygalo
8de1cb3400
fix(python): Wrong path to schemas in benchmarks
...
Signed-off-by: Dmitry Dygalo <dmitry@dygalo.dev>
2021-10-28 11:46:24 +02:00
Dmitry Dygalo
2ce396b29b
chore(rust): Release 0.13.1
...
Signed-off-by: Dmitry Dygalo <dmitry@dygalo.dev>
2021-10-28 11:17:27 +02:00
Dmitry Dygalo
14cb8994ae
chore: Replace manual Default impl for JSONPointer with a derived one
...
Signed-off-by: Dmitry Dygalo <dmitry@dygalo.dev>
2021-10-28 11:12:52 +02:00
Dmitry Dygalo
4f419af154
docs: Missing changelog entry
...
Signed-off-by: Dmitry Dygalo <dmitry@dygalo.dev>
2021-10-28 11:12:00 +02:00
Dmitry Dygalo
41aece9324
fix: Missing derive from serde
...
Signed-off-by: Dmitry Dygalo <dmitry@dygalo.dev>
2021-10-28 11:05:42 +02:00
Dmitry Dygalo
617fd21406
docs(rust): Update benchmark data
...
Signed-off-by: Dmitry Dygalo <dmitry@dygalo.dev>
2021-10-28 10:26:03 +02:00
Dmitry Dygalo
63cdb32485
chore(rust): Release 0.13.0
...
Signed-off-by: Dmitry Dygalo <dmitry@dygalo.dev>
2021-10-28 09:41:27 +02:00
Dmitry Dygalo
fe4ce6703b
docs: Update readme
...
Signed-off-by: Dmitry Dygalo <dmitry@dygalo.dev>
2021-10-28 09:36:49 +02:00
Dmitry Dygalo
c44528d090
docs: Update changelog
...
Signed-off-by: Dmitry Dygalo <dmitry@dygalo.dev>
2021-10-28 09:26:30 +02:00
LongYinan
a8c42bca1c
feat(jsonschema): forward reqwest features
2021-10-28 09:22:00 +02:00
Dmitry Dygalo
c5dd4f3a47
chore(python): Set proper __module__ attribute to JSONSchema
...
Signed-off-by: Dmitry Dygalo <dmitry@dygalo.dev>
2021-10-27 21:09:49 +02:00
Dmitry Dygalo
1388a74e74
docs: Adjust changelogs
...
Signed-off-by: Dmitry Dygalo <dmitry@dygalo.dev>
2021-10-27 20:49:17 +02:00
Dmitry Dygalo
cd96cc82c1
perf: Use bytecount for some validators
...
Signed-off-by: Dmitry Dygalo <dmitry@dygalo.dev>
2021-10-27 17:49:21 +02:00
Dmitry Dygalo
8179513802
chore: Remove unnecessary closures
2021-10-22 17:21:25 +02:00
Dmitry Dygalo
b981e589f4
chore: Make tests compile without the draft201909 feature
...
Signed-off-by: Dmitry Dygalo <dmitry@dygalo.dev>
2021-10-22 09:29:23 +02:00
Blayne Chard
0430432957
feat(python): support iterating all errors with `iter_errors` ( #296 )
...
* feat(python): support iterating all errors with iter_errors
* docs: move changelog into the python changelog
* test: parameterise tests to validate both iter_errors functions
* refactor: fixup pr comments
* docs: remove excess line
2021-10-22 08:50:20 +02:00
Dmitry Dygalo
1fb8f3c4c7
docs: Add a missing changelog entry
...
Signed-off-by: Dmitry Dygalo <dmitry@dygalo.dev>
2021-10-21 11:47:52 +02:00
Dmitry Dygalo
4992676eb5
chore: Update dependencies
...
Signed-off-by: Dmitry Dygalo <dmitry@dygalo.dev>
2021-10-21 11:45:28 +02:00
plaxi0s
d633ba773d
feat: implemented dependentRequired and dependentSchemas keywords
2021-10-21 10:34:17 +02:00
Dmitry Dygalo
b0d0af1f0b
docs: Add a missing changelog entry
...
Signed-off-by: Dmitry Dygalo <dmitry@dygalo.dev>
2021-10-21 10:06:55 +02:00
Dmitry Dygalo
b57debf7fc
chore: Unify benchmark names
...
Signed-off-by: Dmitry Dygalo <dmitry@dygalo.dev>
2021-10-21 10:03:35 +02:00
Alex Good
625c66ee25
fix: Switch from chrono to time 0.3.3
...
Due to a CVE in chrono[0] we switch to time 0.3.3. Chrono actually
depends on an older, similarly vulnerable version of `time` but newer
versions of `time` seem to offer everything we need to validate dates
and times anyway.
[0] https://github.com/rustsec/advisory-db/pull/1082
Signed-off-by: Alex Good <alex@memoryandthought.me>
2021-10-20 17:40:03 +02:00
Dmitry Dygalo
8d1d598413
docs: Add a missing changelog entry
...
Signed-off-by: Dmitry Dygalo <dadygalo@gmail.com>
2021-10-09 09:59:56 +02:00
plaxi0s
70e4d6103d
perf: Reduce the size of PrimitiveTypesBitMapIterator
2021-10-09 09:52:17 +02:00
Dmitry Dygalo
6da868dd31
chore: Code simplification
...
Signed-off-by: Dmitry Dygalo <dadygalo@gmail.com>
2021-10-06 09:49:02 +02:00
Maxim Zhiburt
57c9bca007
chore: Replace `ValidationError::schema` with custom errors
...
* Replace ValidationError::schema with custom errors
* Fix cargo fmt
* Remove ValidationError::schema function
* Update changelog
* Fix ErrorValidation arguments
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
* Fix more ValidationError calls
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
* Fix issues found in PR
Co-authored-by: dmitry.dygalo <dadygalo@gmail.com>
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
* Fix issues found
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
Co-Authored-by: dmitry.dygalo <dadygalo@gmail.com>
Co-authored-by: dmitry.dygalo <dadygalo@gmail.com>
2021-10-06 08:59:54 +02:00
Jacob Mischka
aaadd99b2c
feat: Add option to disable processing the `format` keyword
...
Prior to draft versions 2019-09, format validation is enabled by default
(though should be able to be disabled), and vice versa afterword.
This patch adds `should_validate_formats` to CompilationOptions to force
the option one way or another.
If not specified, it will fallback to a default based on the draft
version (enabled by default before draft 2019-09).
Closes #261
2021-10-02 20:46:46 +02:00
Jacob Mischka
86bb87fa66
docs: Fix typo in jsonschema-test-suite README
2021-10-02 20:46:46 +02:00