2020-05-24 21:01:17 +00:00
# Changelog
## [Unreleased]
2021-03-25 22:06:55 +00:00
### Fixed
- Incorrect handling of `\w` and `\W` character groups in `pattern` keywords. [#180 ](https://github.com/Stranger6667/jsonschema-rs/issues/180 )
2021-03-26 08:38:09 +00:00
- Incorrect handling of strings that contain escaped character groups (like `\\w` ) in `pattern` keywords.
2021-03-25 22:06:55 +00:00
2021-02-03 13:50:18 +00:00
## [0.6.0] - 2021-02-03
2021-02-03 10:25:37 +00:00
### Fixed
- Missing validation errors after the 1st one in `additionalProperties` validators.
2021-02-01 14:04:45 +00:00
### Performance
- Do not use `rayon` in `items` keyword as it gives significant overhead for a general case.
2021-02-03 10:25:37 +00:00
- Avoid partially overlapping work in `additionalProperties` / `properties` / `patternProperties` validators. [#173 ](https://github.com/Stranger6667/jsonschema-rs/issues/173 )
2021-02-01 14:04:45 +00:00
2021-01-29 18:05:02 +00:00
## [0.5.0] - 2021-01-29
2021-01-27 19:43:49 +00:00
### Added
- Cache for documents loaded via the `$ref` keyword. [#75 ](https://github.com/Stranger6667/jsonschema-rs/issues/75 )
2021-01-29 17:24:53 +00:00
- Meta schemas for JSON Schema drafts 4, 6, and 7. [#28 ](https://github.com/Stranger6667/jsonschema-rs/issues/28 )
2021-01-27 19:43:49 +00:00
2021-01-28 14:15:54 +00:00
### Fixed
- Not necessary network requests for schemas with `$id` values with trailing `#` symbol. [#163 ](https://github.com/Stranger6667/jsonschema-rs/issues/163 )
2020-12-16 12:03:59 +00:00
### Performance
- Enum validation for input values that have a type that is not present among the enum variants. [#80 ](https://github.com/Stranger6667/jsonschema-rs/issues/80 )
2021-01-28 09:28:56 +00:00
### Removed
- `-V` /`--validator` options from the CLI. They were no-op and never worked.
2020-12-11 09:47:51 +00:00
## [0.4.3] - 2020-12-11
2020-12-11 09:46:31 +00:00
### Documentation
- Make examples in README.md runnable.
2020-12-11 07:53:58 +00:00
## [0.4.2] - 2020-12-11
2020-12-11 07:45:26 +00:00
### Changed
- Move `paste` to dev dependencies.
2020-12-10 16:13:31 +00:00
### Fixed
- Number comparison for `enum` and `const` keywords. [#149 ](https://github.com/Stranger6667/jsonschema-rs/issues/149 )
2020-12-10 19:31:04 +00:00
- Do not accept `date` strings with single-digit month and day values. [#151 ](https://github.com/Stranger6667/jsonschema-rs/issues/151 )
2020-12-10 16:13:31 +00:00
2020-12-10 14:48:31 +00:00
### Performance
- Some performance related changes were rolled back, due to increased complexity.
2020-12-09 15:22:51 +00:00
## [0.4.1] - 2020-12-09
2020-12-08 16:46:26 +00:00
### Fixed
- Integers not recognized as numbers when the `type` keyword is a list of multiple values. [#147 ](https://github.com/Stranger6667/jsonschema-rs/issues/147 )
2020-11-09 19:39:55 +00:00
## [0.4.0] - 2020-11-09
2020-06-24 12:23:52 +00:00
### Added
2020-10-09 16:28:37 +00:00
- Command Line Interface. [#102 ](https://github.com/Stranger6667/jsonschema-rs/issues/102 )
2020-06-24 12:23:52 +00:00
- `ToString` trait implementation for validators.
2020-07-03 19:56:31 +00:00
- Define `JSONSchema::options` to customise `JSONSchema` compilation [#131 ](https://github.com/Stranger6667/jsonschema-rs/issues/131 )
2020-07-03 20:17:03 +00:00
- Allow user-defined `contentEncoding` and `contentMediaType` keywords
2020-06-24 12:23:52 +00:00
2020-06-22 10:42:34 +00:00
### Fixed
- ECMAScript regex support
2020-06-21 23:30:11 +00:00
- Formats should be associated to Draft versions (ie. `idn-hostname` is not defined on draft 4 and draft 6)
2020-06-22 10:42:34 +00:00
2020-06-21 20:45:24 +00:00
## [0.3.1] - 2020-06-21
2020-06-10 22:02:53 +00:00
### Changed
- Enable Link-Time Optimizations and set `codegen-units` to 1. [#104 ](https://github.com/Stranger6667/jsonschema-rs/issues/104 )
2020-06-21 20:45:24 +00:00
### Fixed
- `items` allows the presence of boolean schemas. [#115 ](https://github.com/Stranger6667/jsonschema-rs/pull/115 )
2020-06-10 22:02:53 +00:00
2020-06-07 22:01:56 +00:00
## [0.3.0] - 2020-06-08
2020-05-24 21:01:17 +00:00
### Added
- JSONSchema Draft 4 support (except one optional case). [#34 ](https://github.com/Stranger6667/jsonschema-rs/pull/34 )
- CI builds. [#35 ](https://github.com/Stranger6667/jsonschema-rs/pull/35 ) and [#36 ](https://github.com/Stranger6667/jsonschema-rs/pull/36 )
- Implement specialized `is_valid` methods for all keywords.
- Use `rayon` in `items` keyword validation.
- Various `clippy` lints. [#66 ](https://github.com/Stranger6667/jsonschema-rs/pull/66 )
2020-05-26 17:09:20 +00:00
- `Debug` implementation for `JSONSchema` and `Resolver` . [#97 ](https://github.com/Stranger6667/jsonschema-rs/pull/97 )
2020-06-05 14:09:24 +00:00
- `Default` implementation for `Draft` .
2020-05-24 21:01:17 +00:00
### Changed
- Do not pin dependencies. [#90 ](https://github.com/Stranger6667/jsonschema-rs/pull/90 )
- Use `to_string` instead of `format!` . [#85 ](https://github.com/Stranger6667/jsonschema-rs/pull/85 )
- Cache compiled validators in `$ref` keyword. [#83 ](https://github.com/Stranger6667/jsonschema-rs/pull/83 )
- Use bitmap for validation of multiple types in `type` keyword implementation. [#78 ](https://github.com/Stranger6667/jsonschema-rs/pull/78 )
- Return errors instead of unwrap in various locations. [#73 ](https://github.com/Stranger6667/jsonschema-rs/pull/73 )
- Improve debug representation of validators. [#70 ](https://github.com/Stranger6667/jsonschema-rs/pull/70 )
- Reduce the number of `match` statements during compilation functions resolving.
- Use `expect` instead of `unwrap` for known cases when it is known that the code won't panic.
- Add specialized validators for all `format` cases.
- Reuse `DEFAULT_SCOPE` during reference resolving.
- Replace some `Value::as_*` calls with `if let` .
- Inline all `compile` functions.
- Optimize `format` keyword compilation by using static strings.
- Optimize compilation of `true` , `false` and `$ref` validators.
- Reuse parsed `DEFAULT_ROOT_URL` in `JSONSchema::compile` .
- Avoid string allocation during `scope` parsing in `JSONSchema::compile` .
- Refactor benchmark suite
2020-05-24 12:27:56 +00:00
- Use `BTreeSet` in `additionalProperties` keyword during compilation to reduce the amount of copied data. [#91 ](https://github.com/Stranger6667/jsonschema-rs/pull/91 )
2020-05-24 21:01:17 +00:00
2020-06-10 21:21:17 +00:00
### Fixed
2020-05-24 21:01:17 +00:00
- Wrong implementation of `is_valid` for `additionalProperties: false` keyword case. [#61 ](https://github.com/Stranger6667/jsonschema-rs/pull/61 )
- Possible panic due to type conversion in some numeric validators. [#72 ](https://github.com/Stranger6667/jsonschema-rs/pull/72 )
2020-05-27 12:11:14 +00:00
- Precision loss in `minimum` , `maximum` , `exclusiveMinimum` and `exclusiveMaximum` validators. [#84 ](https://github.com/Stranger6667/jsonschema-rs/issues/84 )
2020-05-24 21:01:17 +00:00
## [0.2.0] - 2020-03-30
2020-06-10 21:21:17 +00:00
### Added
2020-05-24 21:01:17 +00:00
- Implement `is_valid` for various validators.
- Implement `Error` and `Display` for `CompilationError`
2020-06-10 21:21:17 +00:00
### Changed
2020-05-24 21:01:17 +00:00
- Debug representation & error messages in various validators.
- Make `ErrorIterator` `Sync` and `Send` .
2020-06-10 21:21:17 +00:00
### Fixed
2020-05-24 21:01:17 +00:00
- Return `CompilationError` on invalid input schemas instead of panic.
2020-05-26 05:38:17 +00:00
## 0.1.0 - 2020-03-29
2020-05-24 21:01:17 +00:00
- Initial public release
2021-02-03 13:50:18 +00:00
[Unreleased]: https://github.com/Stranger6667/jsonschema-rs/compare/rust-v0.6.0...HEAD
[0.6.0]: https://github.com/Stranger6667/jsonschema-rs/compare/rust-v0.5.0...rust-v0.6.0
2021-01-29 18:05:02 +00:00
[0.5.0]: https://github.com/Stranger6667/jsonschema-rs/compare/rust-v0.4.3...rust-v0.5.0
2020-12-11 09:47:51 +00:00
[0.4.3]: https://github.com/Stranger6667/jsonschema-rs/compare/rust-v0.4.2...rust-v0.4.3
2020-12-11 07:53:58 +00:00
[0.4.2]: https://github.com/Stranger6667/jsonschema-rs/compare/rust-v0.4.1...rust-v0.4.2
2020-12-09 15:22:51 +00:00
[0.4.1]: https://github.com/Stranger6667/jsonschema-rs/compare/rust-v0.4.0...rust-v0.4.1
2020-11-09 19:39:55 +00:00
[0.4.0]: https://github.com/Stranger6667/jsonschema-rs/compare/v0.3.1...rust-v0.4.0
2020-06-21 20:45:24 +00:00
[0.3.1]: https://github.com/Stranger6667/jsonschema-rs/compare/v0.3.0...v0.3.1
2020-06-07 22:01:56 +00:00
[0.3.0]: https://github.com/Stranger6667/jsonschema-rs/compare/v0.2.0...v0.3.0
2020-05-17 15:35:11 +00:00
[0.2.0]: https://github.com/Stranger6667/jsonschema-rs/compare/v0.1.0...v0.2.0