Releases: brettviren/moo
The "better handle missing or old dependencies" release.
This adds protection against missing gojsonnet
and if the jsonschema
module is too old to support the "format checker".
If gojsonnet
is missing we fall back to the C library which is dramatically slower.
If the old jsonschema
is found then any string format constraints will be ignored.
What's Changed
Full Changelog: 0.6.6...0.6.7
The "build-time Python codegen" release.
-
Adds Python codegen method that generates code at build time (actual
.py
files). This is a good alternative to the existing method which interprets moo schema and does metaprogramming codegen at Python runtime. Thanks @plasorak. -
Change dependency from
jsonnet
togojsonnet
for the speed increas.
The "valid validation version" release.
Fixes version string.
The "valid validation" release.
Validation of data against schema greatly improved to allow moo oschema or JSON Schema to be used and with more command line and Python level flexibility and cleanups. The documentation was "fixed" (it was empty).
The "accept feedback from others" release.
- Add MessagePack serialization template from Phil Rodrigues.
- Add high level otypes functions from ddrepl / Alessandro Thea.
- Fix support for cross-schema referencing (Ale reports).
- Enrich template environment with some functions and filters.
- Support more of JSON Schema classes (xxxOf).
- Simplifiy "omodel" (breaking any existing users).
- Move shell-level testing to run under BATS.
- Flesh out otypes documentation.
- Improve validation command interface.
- Various other bug fixes, documentation improvements.
The "bag of bugs" release
This is mostly a bug fix release.
One bug in particular requires a slight change for any uses of "oschema" paradigm. The schema file should now provide all types, not just types considered in the schema. This is needed in order to resolve references to types that are defined in other schema. The "omodel" will provide the entire array of types as the all_types
attribute while types
remains those that are targeted for whatever defining the template expresses. The "path" based filtering that is needed to distinguish these two sets was previously in place.
The "actually install stuff" release
The jsonnet model and template files were not actually getting installed.
This also fixes the nljs template for the ers-znc package.
The "build stuff" release
Since the last one, this release brings
- A
moo.cmake
example CMake integration (proper installation of this file is t.b.d., for now, just copy it!). Details are in the updated: https://brettviren.github.io/moo/buildsys.html#cmake - Use a special output format with
moo imports
when the output file ends in.cmake
to supportmoo.cmake
. It will emit a CMakeset()
function instead of a simple list of files. - Some Python build and version string related cleanups
The "sorta works now" release.
Many updates to support DUNE DAQ and DUNE US ND PDR.
Some of the changes since 0.0.1
- Add Python type generation from
moo.oschema
instances withmoo.otypes
. - Set up and use a special, more appropriate Jinja markup syntax for latex templates.
- Jsonnet TLA values can now be provided from more file formats than just Jsonnet files. Any format that
moo
supports as a main input may be used. - Add xls/xlsx format support for providing input data.
- Clarify protocol for providing default values in schema.
- Update documentation and examples, add
pytest
unit tests, bug and lint fixes.