Releases: pb33f/libopenapi
v0.33.0
New hashing algorithm & OpenAPI Overlays 1.1.0 Support
The low-level models now have a unit32 return signature instead of [32]byte. This is a breaking change, but a worthwhile one as we now use maphash instead of SHA256 for hashing, which is much, much faster, 15x in most cases.
OpenAPI Overlays 1.1.0 is now supported, most importantly, the copy action.
v0.32.0
v0.31.2
Fixes daveshanley/vacuum#788
Added a new RenderingMode that is backwards compatible, allows for validation mode or bundling mode and only really affects discrimators and polymorphic schemas.
The rendering context is now available in the DynamicValue object.
v0.31.1
Adds support for the last remaining (and pretty obscure JSON Schema props that were not being collected and parsed by the lib.
$comment, contentSchema and $vocabulary All now supported correctly. This brings libopenapi into total compliance with JSON Schema 2020-12. All the things! we have all the things, finally.
Also the mock renderer now correctly listens for preferred names on examples. Fixed by @eridan-ltu
The bundler now has a StrictValidation field on BundleCompositionConfig that handles errors during a bundle composition.
#482 @tx3stn
v0.31.0
Support for overlays added.
Resolves issue #125
Docs and examples: https://pb33f.io/libopenapi/overlays/
Overlays specification: https://spec.openapis.org/overlay/v1.0.0.html
v0.30.5
Address #309
Address #471
Addresses: daveshanley/vacuum#485
v0.30.4
Addresses non-deterministic behavior in reference extraction and resolution by introducing deterministic ordering through map key sorting, using singleflight for deduplication of concurrent lookups, and upgrading to RWMutex for better concurrency control.
Implements deterministic ordering by sorting map keys before iteration across multiple index operations. Adds singleflight pattern to deduplicate concurrent reference lookups and reduce contention. Changes refLock from sync.Mutex to sync.RWMutex to allow concurrent reads
Fixed a bug where parameters were being dropped during YAML rendering. The skip flag wasn't being reset at the start of each slice iteration, causing newly created high-level objects (without low-level models) to be incorrectly skipped.
v0.30.3
Fixed a rogue import from an older yaml library. No breaking changes or new features.
v0.30.2
Adds a context aware version of RenderYAMLInline to all objects that support it in the high-level model. Now context is available to be passed down and is used to prevent cycles from being detected when running async builds.
No breaking changes.