Import spec v0.4 and add support for v0.4 Context #83
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Add the spec-v0.4 submodule
Add the new version of the spec and begin to address the various
issues encountered with mulitple versions.
In this commit, move all the schema definitions across specs
into a single schemas.go in the api package, and adapt the existing
events template to benefit from that.
The same DB of schema files is used by the generator to load all
schemas in the beginning and resolve references through a custom
resolver.
Move the example and factory tests into the spec specific
packages. The conformance tests do not pass yet as a few extra
fields need to be set which is not possible yet because changes to
the context (including links) have not been processed yet.
Support for v04 Context
Add a new context type for new fields in the context introduced
in v0.4. Create new interfaces to match the new fields as well
and update the templates to use the new context and implement
the new interfaces when the spec version is not 0.3.x.
Add a new version of the test type that is used to test the
generator code so that we can test generating for the new version.
Updated the logic to generate the schema in a golang file to
use it as a local schema database for the jsonschema library
to validate documents. The schemas are precompiled at init
time now, which simplifies the logic downstream in the code.