Skip to content

Tags: pencilerazzer/GenSON

Tags

v1.2.1

Toggle v1.2.1's commit message
* expose `SchemaStrategy.__eq__()` for extension

* add support for Python 3.8
* update Trove classifiers
* Bugfix: `SchemaBuilder.__eq__()` wasn't matching the `$schema` keyword correctly
* Bugfix: only activate empty `required` option when `required` is actualy empty

v1.2.0

Toggle v1.2.0's commit message
* `SchemaStrategies` are now extendable, enabling custom `SchemaBuild…

…er` classes.

* optimize `__eq__` logic

v1.1.0

Toggle v1.1.0's commit message
* add support for Python 3.7

* drop support for Python 3.3
* drop support for JSON-Schema Draft 4 (because it doesn't allow empty `required` arrays)
* Bugfix: preserve empty `required` arrays (fixes wolverdude#25)
* Bugfix: handle nested `anyOf` keywords (fixes wolverdude#35)

v1.0.2

Toggle v1.0.2's commit message
* add support for long integers in Python 2.7.

* updated test-skipping decorator to use standard version requirement strings.

v1.0.1

Toggle v1.0.1's commit message
* Bugfix: seeding an object schema with a "required" keyword caused a…

…n error.

* Docs: fix mislabeled method

v1.0.0

Toggle v1.0.0's commit message
* split Schema class into 3 separate classes:

  1. SchemaNode to manage the tree structure
  2. SchemaGenerator for the schema generation logic
  3. SchemaBuilder to manage the public API
* rename to_dict() => to_schema()
* include backwards compatibility layer
* deprecate merge_arrays option
* add support for patternProperties
* include ``"$schema"`` keyword
* accept schemas without ``"type"`` keyword
* use ``"anyOf"`` keyword to help combine schemas
* add ``SchemaGenerationError`` for better error handling
* empty ``"properties"`` and ``"items"`` are not included in generated schemas
* ``genson`` executable
  * new ``--schema-uri`` option
  * auto-detect object boundaries by default

v0.2.3

Toggle v0.2.3's commit message
add installation instructions

v0.2.2

Toggle v0.2.2's commit message
Docs: Python 3.6 is now explicitly tested and listed as compatible.

v0.2.1

Toggle v0.2.1's commit message
Bugfix: add_schema failed when adding list-style array schemas.

Bugfix: typo in readme

v0.2.0

Toggle v0.2.0's commit message
Bugfixes and Improvements

Bugfix: Options were not propagated down to subschemas.
Bugfix: Empty arrays resulted in invalid schemas because it still
  included an items property.
Bugfix: items was being set to a list even when merge_arrays was set to
  True. This resulted in overly permissive schemas because items are
  matched optionally by default.
Improvement: Positional Array Matching - In order to be more consistent
  with the way JSON Schema works, the alternate to merge_arrays is no
  longer never to merge list items, but instead to merge them based on
  their position in the list.
Improvement: Schema Incompatibility Warning - A schema incompatibility
  used to cause a fatal error with a nondescript warning. The message
  has been improved and it has been reduced to a warning.