Hi all,

OpenAPI (https://github.com/zweidenker/OpenAPI) got the same treatment as 
JSONSchema recently: the baseline dropped its stale 2020-era JSONSchema pin and 
now tracks JSONSchema's master, and the library actually validates whole 
documents now instead of just parsing them.

What's new:

OADocumentValidator checks a full document against the official OAI 3.0 
meta-schema (bundled, Apache-2.0), with real error messages, not just 
true/false.
Verified against six real OpenAPI 3.0 documents from the official spec repo 
(petstore, petstore-expanded, api-with-examples, callback-example, 
link-example, uspto) - round-tripping them surfaced and fixed several real bugs 
that hand-written test documents never would have.
OpenAPI-Client was exercised against a real spec (Stripe's) end-to-end, which 
is what it took to find that request bodies were JSON-only when most real APIs 
use form-urlencoded bodies. That's fixed too.
Scope is still explicitly OpenAPI 3.0. 3.1/3.2 use a different schema dialect 
(JSON Schema 2020-12 + OAS vocabulary - $dynamicRef, $ref-with-siblings, 
unevaluated*), which needs machinery JSONSchema doesn't have yet. Not pursuing 
that for now is a deliberate decision, not an oversight.

Code and README (installation, quick start, what's not supported) are on 
GitHub: https://github.com/zweidenker/OpenAPI

Norbert

Reply via email to