Releases: mattpolzin/OpenAPIKit
Absolutely Resolute
What's Changed
- Add URI resolution helpers for base URI resolution by @ayushshrivastv in #489
- Support for multipart content for OpenAPI v3.0 (#499)
Full Changelog: 6.1.0...6.2.0
6.1.0
What's Changed
- Validations improvements (#497)
Details
You can now remove builtin validations one at a time using the Validator type's withoutValidating() function. This function and a new variant of the validating() function use key paths to refer to validations to enable them to take variadic arguments.
Full Changelog: 6.0.0...6.1.0
More is not always better
This major release raises the minimum Swift version to Swift 6.1. It also adds a new trait (ExternalLoading) that is on by default but can be turned off to reduce the amount of time it takes for the compiler to build the OpenAPIKit library. It was discovered that the Swift Concurrency features in the External Loading features cost approximately 50% of the compile time. There is no known runtime hit to having them enabled, just a compile time cost.
What's Changed
- Add
ExternalLoadingtrait to package by @mattpolzin in #495
Full Changelog: 5.3.0...6.0.0
Good fiends tell you...
... when your OpenAPI document is invalid in subtle ways.
What's Changed
- Add default validation for unique server names by @ayushshrivastv in #487
- Add builtin validations for querystring parameter location by @ayushshrivastv in #488
- Add patternProperties support to JSON Schema objects by @ayushshrivastv in #491
- Update iOS minimum deployment target to 13 by @VictorPuga in #494
New Contributors
- @VictorPuga made their first contribution in #494
Full Changelog: 5.2.1...5.3.0
A Key Detail
What's Changed
I've only fixed this bug (which comes up in very few situations) for the OpenAPIKit module. It could be ported to the OpenAPIKit30 module very easily if desired in the future.
- Support key validation for OrderedDictionary maps (#486)
Full Changelog: 5.2.0...5.2.1
Strictly Speaking
What's Changed
You can now replace the default reference validations (that references pointing at the Components Object can be found in the Components Object) with a stricter set of reference validations (that references all point at the Components Object (i.e. are not external or internal but not Components) and they can be found in the Components Object). You do this by calling validatingAllReferencesFoundInComponents() on a Validator. You can also skip references validations (including those on by default) by calling skippingReferenceValidations() on a Validator. These two can be used to run validations twice if desired, once with the strict flag set to true (generate errors) and a second time with strict set to false (generate warnings) and only running reference validations for one of those two passes if you want to be stricter about references than you are about other validations.
- support stricter reference validations (#485)
Full Changelog: 5.1.1...5.2.0
Look me up
In Reference to Your Referral
What's Changed
- switch to foundation-essentials imports (as much as possible for now) by @mattpolzin in #480
- Add some conveniences for working with references to JSON Schemas by @mattpolzin in #482
Full Changelog: 5.0.0...5.1.0
Small changes, big footprint
See the migration guide before updating to OpenAPIKit v5.0.0. There were a fair number of breaking changes (each one fairly small on its own) required to support the new standard version.
What's Changed
See the migration guide and individual Release Notes for the pre-releases of version 5 to get a full picture but here are some highlights:
- Support for OpenAPI Standard 3.2.0 features.
- The default version for new documents is 3.2.0 now.
- Component Object entries can now be references.
- Swift version 5.10+ is now required.
- The official YAML media type is now preferred over
application/x-yaml, though the old media type is still supported. - JSON Schema values now (finally) support the
xmlproperty.
New Contributors
Full Changelog: 4.3.1...5.0.0
I have a name, you know
NOTE: These release notes only describe the changes since the previous release candidate. See the migration guide as well if you are migrating from a 4.x release.
What's Changed
- OAS 3.2.0 Server Object changes (#473)
Full Changelog: 5.0.0-rc.1...5.0.0-rc.2