Skip to content

Latest commit

 

History

History
45 lines (32 loc) · 2.15 KB

README.md

File metadata and controls

45 lines (32 loc) · 2.15 KB

OpenAPI v3.1 Specification

Code Analysis Go Reference codecov GitHub tag (latest SemVer)

The implementation of OpenAPI v3.1 Specification for Go using generics.

Supported Go versions:

  • v1.22
  • v1.21
  • v1.20

Versions:

  • v0 - Deprecated. The initial version with the full implementation of the v3.1 Specification using generics. See v0 branch.
  • v1 - The current version with the in-place validation of the specification. The minimal version of Go is v1.20 and the github.com/santhosh-tekuri/jsonschema/v5 package is not used anymore. See main branch.

Features

  • The spec folder contains full implementation of the v3.1 Specification using generics and errors.Join function, so the minimum supported version of Go is v1.20.
  • The spec.ValidateSpec function validates the specification without transforming it to map[string]any.
  • The official v3.0 and v3.1 examples are tested. In most cases v3.0 specification can be converted to v3.1 by changing the version's parameter only.
    @@ -1,4 +1,4 @@
    -openapi: "3.0.0"
    +openapi: "3.1.0"

NOTE: The descriptions of most structures and their fields are taken from the official documentations.

Links

License

MIT licensed. See the bundled LICENSE file for more details.