Releases: pb33f/libopenapi
v0.8.3
v0.8.2
Provides some lookup logic that prevents a simple circular loop when looking for relative references that call back around in a circle from one another. No new features.
Reported in vacuum: daveshanley/vacuum#268
v0.8.1 Bugfixes
Mostly schema fixes and some low level work that resolves glitches found by deeper implementation into vacuum and taking more dependency for validation.
No new features, no breaking changes.
v0.8.0 libopenapi-validator release
There is no real new functionality, except a couple of helper methods added to some of the parameters, as well as the foundations for rendering schemas inline, a few new methods on schemas for rendering inline, but no top level document support just. yet.
No breaking changes.
v0.7.0
A significant update, with a few minor breaking changes on the model. However, this version adds support for
A mutable high-level model
#89 describes a mutable high-level model that allows an OpenAPI specification to be modified once read, or created from scratch programmatically.
Now The high-level model can be modified and then re-rendered
, which will update all the shifted line numbers to accommodate the changes. libopenapi
does its very best to honor all original ordering of the specification. However, some values can't be guaranteed, elements that have no type (like examples that contain complex untyped objects).
All low-level models now support IsReference
and GetReference
This feature is to address #41. Now it's easy to determine which objects were created from references and quickly grab those references.
v0.6.4
v0.6.3
This release closes off the last few known race conditions in the index. Hard to trigger, but lurking there.
Non-breaking change.
v0.6.2
v0.6.1
Minor bug fixes and updates, tuned up the index a little: no breaking changes, no new features.
v0.6.0
v0.6.0
Addresses issue #73 by introducing some enhancements to the index, allowing for relative file handling, and providing a fix to auto-allowing remote and local files to be followed.
A new configuration option is available to document creation for an Index. It's defined as index.SpecIndexConfig
and provides three properties:
BaseURL
of type*url.URL
AllowRemoteLookup
of typebool
AllowFileLookup
of typebool
This can be used to configure an index to know where to look when encountering relative paths and if to allow them at all.
Full documentation can be found here.
When creating a new Document
, there is also a new datamodel.DocumentConfigutation
, which looks almost identical, except
for the Lookup postfix has been replaced with References
config := datamodel.DocumentConfiguration{
AllowFileReferences: true,
AllowRemoteReferences: true,
BaseURL: baseURL,
}
This new config can be used with a new function called NewDocumentWithConfiguration()
that is the same as NewDocument()
except it has a second argument for accepting the config.
doc, err := NewDocumentWithConfiguration(digitalOcean, &config)
Full documentation can be found here.
The index has been refactored a little to help make it easier to navigate and tuned up to run faster when indexing references.
The digital ocean spec has been added for testing purposes.