All notable changes to this project will be documented in this file. This change log follows the conventions of keepachangelog.com.
- Update dependency
org.json/json
to newest - Update Clojure to
1.11.3
- When infer* receives a lazy seq, it acts as if it's individual documents. This
makes great sense when you want to generate a schema for eg. a folder
containing data files.
- Better error messages when finding
nil
values (suggest :nullable true
) - Update Java library
- Force update to
org.json/json
to version 20231013
, resolves CVE-2023-5072
- Force update to
org.json/json
to version 20230227
, resolves CVE-2022-45688
- Added Custom Format Validators (thanks to @ModestasPeciokas)
- Updated dependencies
For an example on how to use the Custom Format Validators, check the unit tests.
- Updated Clojure -> 1.11.1
- Updated other dependencies
- Fixed issue when EDN input to be validated contains lists
- Updated Java Library
- Eliminated reflective function calls
- Updated Java Library
Now relative $ref's are supported.
This release adds usage of $ref pointing to resources in the classpath.
- Significant speed-up when performing batch validation
- Infer: optional parameter
additional-props
allow additional properties for objects described by generated schema
- Bug when nested siblings had different optionality
- Optionality by nullability when inferring schemas
- Schemas can now be inferred on multiple input documents, thus supporting implicit optionality (while still supporting the explicit optionality from version 0.2.2).
- deprecated
infer-strict->json
- API to infer schema has been changed! Check README and
infer_test.clj
- Added
optional
parameter, for keys that should NOT be required by schema
- This doesn't support paths/nesting, only simple keys. Hence a key marked as optional will be optional everywhere in the schema
- Optional parameter to include original validation exception: :include-original-exception
- infer JSON Schema based on EDN data
- Original exception included when validation fails
- Updated depencies (clojure, cheshire)
- EDN based array (vector) in root failed validation (issue #3)
- API to prepare JSON Schema for reuse
(better performance when using same Schema to validate multiple JSON documents)
- Updated Java library
- Changed to Apache License, Version 2.0
- BREAKING: valid entries return the entries instead of
nil
, also to ease pipelining - Error messages now show error count
- BREAKING: re-ordered params for
validate
fn, to ease pipelining