Releases: mattpolzin/OpenAPIKit
Additional Header Schema support, additional JSON Schema support
- Finished adding Header Schema properties.
- Added
readOnly,writeOnly, anddeprecatedtoJSONSchema. - Improved test coverage.
Test coverage and a small bug fix
While writing tests, discovered a small bug where PathItem.Map was allowed to have references as values even though OpenAPI does not allow this and there is no entry for Path Items in the Components Object anyway.
- Fixed bug allowing JSON reference for value in
PathItem.Mapwhich is a breaking change for declarative initialization or accessing those values from code.
Better support for transformation use-cases.
Move to vars in a number of places and add some convenience mutating methods to PathItem.
Add public vendor extendable existentail support.
0.15.0 Merge pull request #10 from mattpolzin/feature/vendor-extendable-exis…
Add OAuthFlows Security Scheme support
0.14.0 update README table of contents
Add `OrderedDictionary`
Many of the Dictionary types have been replaced by a new OrderedDictionary. This means that encoding and decoding can retain the ordering of JSON/YAML objects. This ability is still contingent upon the specific encoder or decoder being used retaining that information in the course of its duties.
The Foundation library JSONEncoder retains ordering on OS X, but does not on Linux. The Foundation JSONDecoder does not retain ordering on any operating system. There is, however, currently an alternative that does retain ordering on all operating systems and seems worth trying: FineJSON.
The most popular YAML decoder/encoder, Yams, does retain ordering.
Additions and consistent `Either` specialization ordering
- Added XML Object
- Added security to Operations Object
- Swapped order of generic specializations on
Eithertypes in a few places so thatJSONReferenceis always the first specialization parameter when present.
Big schema generation changes
Big changes to the protocols and functions responsible for generating OpenAPI schemas from Swift types. NOTE this specifically refers to generating JSONSchemas.
Protocols were renamed or removed, functions were renamed, removed, and added. Bugs were fixed. It all functions in roughly the same way but things are much less thrown together now that I've had time to revisit the code.
Refinements
- Omit some things that are not required when they have their default values.
- Add some Content Types.
- Some file restructuring and test coverage.
Better OpenAPI node generation for arbitrary Sampleable types
Brought a generation function over from JSONAPI+OpenAPI that really belongs here; that function generates OpenAPI nodes from any type that conforms to Sampleable. This means many types of JSON data can get out of box documentation.
Renamed a few functions and similar small changes, did a lot of work on node generation that could break downstream stuff in JSONAPI+OpenAPI dependents.