- Fix a bug when using RECURSIVE_REFERENCE_CONSTANT under a scope caused infinite recursion (issue #14).
- Introduce
inheritance modes <inheritance>
.
- Add a
name
parameter to.BaseField
which makes it possible to create documents with fields whose names contain symbols that are not allowed in Python variable names (such as hyphen); - Introduce
.RefField
.
- Allow specifying a null default value for fields (see
.Null
value) by Nathan Hoad.
- Fix
.Document.resolve_field
method; - Allow specifying a resolvable as a
definition_id
(seedocument options <.Options>
).
- Introduce
roles <roles>
,variables <.Var>
andscopes <.Scope>
; .NullField
by Igor Davydenko;- Almost completely rewritten documentation;
- Various minor fixes.
- Fix spelling of
exclusiveMinimum
by Keith T. Star.
- Introduce the
ordered
argument for~jsl.document.Document.get_schema
that adds the ability to create more readable JSON schemas with ordered parameters.
- Add the ability to specify an id for documents and fields.
- More subclassing-friendly
~jsl.document.DocumentMeta
which allows to override methods for collecting document fields and options and choose a container class for storing options; - Various minor bugfixes.
- Python 3 support by Igor Davydenko.