Skip to content

Tags: wolverdude/GenSON

Tags

v1.3.0

Toggle v1.3.0's commit message
Modernization

* add support for Python versions up through 3.12
* remove support for old Python versions older than 3.7 since test dependencies no longer support them
* remove Python 2.7 support
  * remove tests & test commands only relevant to Python 2.7
  * remove backwards-compatibility from code
* enable running as a module (``python -m genson``)
* modernize package configuration (issue #68)
* Use a valid ``schema_uri`` in tests (issue #69)

v1.2.2

Toggle v1.2.2's commit message
* add `__version__` attr to module and `--version` option to CLI tool

* add `--encoding` option to CLI tool that overrides default file encoding (fixes #47)

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 #25)
* Bugfix: handle nested `anyOf` keywords (fixes #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.