Skip to content

Swagger UI v5.0.0 Released!

Compare
Choose a tag to compare
@swagger-bot swagger-bot released this 12 Jun 18:50
· 656 commits to master since this release

5.0.0 (2023-06-12)

Release summary

v5.0.0 release brings support for OpenAPI 3.1.0 specification. Support for OpenAPI 3.1.0 has been introduced in fully backward compatible way.

Features

  • samples: add support for examples keyword (#8908) (4b0b285), closes #8577
  • samples: add support for const keyword (#8884) (bdad2fe), closes #8577
  • samples: add support for contains, minContains, maxContains keywords (#8896) (6549eff), closes #8577
  • samples: add support for contentEncoding keyword (#8899) (0483964), closes #8577
  • samples: add support for contentMediaType keyword (#8903) (1925622), closes #8577
  • samples: add support for contentSchema keyword (#8907) (6c622a8), closes #8577
  • samples: add support for custom formats, encoders and media types (#8905) (d72b72c), closes #8577
  • samples: add support for inferring schema type (#8909) (ce417d5), closes #8577
  • samples: add support for new values of format keyword (#8882) (28b1233), closes #8577
  • samples: add support for proper schema merging (#8910) (7bf0dd9), closes #8577
  • samples: add support for regex string format (#8891) (8a91492), closes #8577
  • samples: add support for type keyword defined as list of types (#8883) (3587696), closes #8577
  • samples: add support for uniqueItems keyword (#8893) (1114965), closes #8577
  • samples: support multipleOf keyword (#8890) (68cfe46), closes #8577
  • samples: support new semantics of exclusive number ranges (#8885) (836659d), closes #8577
  • introduce samples framework for JSON Schema 2020-12 (ac3b69f), closes #8577
  • oas31: enable overrides for samples plugin (#8731) (df9aadf), closes #8577
  • docker: add support for PORT_IPV6 environment variable (#8878)
  • docker: add support for multi platform images
  • auth: persist cookie based apiKey in document.cookie (#8689) (7ac9a8f), closes #8683
  • oas31: add support for includeReadOnly/WriteOnly options in new JSON Schema 2020-12 renderer (#8675) (75b41e0), closes #8513
  • oas31: prepare to render JSON Schema 2020-12 in Operations and Webhooks (#8670) (79e0c4e), closes #8513
  • oas31: render JSON Schema 2020-12 in Operations and Webhooks (#8673) (2f0282d), closes #8513
  • oas31: add support for Schema Object example keyword (#8652) (7d14577), closes #8513
  • oas31: add support for Schema Object discriminator keyword (#8658) (11bb4f9), closes #8513
  • oas31: add support for Schema Object externalDocs keyword (#8659) (01d2376), closes #8513
  • oas31: add support for Schema Object xml keyword (#8657) (9bb5a21), closes #8513
  • json-schema-2020-12: add support for contentEncoding keyword (#8644) (9208818), closes #8513
  • json-schema-2020-12: add support for contentMediaType keyword (#8640) (c15e69e), closes #8513
  • json-schema-2020-12: add support for contentSchema keyword (#8645) (f549a1d), closes #8513
  • json-schema-2020-12: add support for default keyword (#8647) (e6d5099), closes #8513
  • json-schema-2020-12: add support for deprecated keyword (#8648) (aed6bb3), closes #8513
  • json-schema-2020-12: add support for readOnly keyword (#8649) (964a11a), closes #8513
  • json-schema-2020-12: add support for writeOnly keyword (#8650) (d7b489c), closes #8513
  • json-schema-2020-12: add support for const keyword (#8622) (8e4fde5), closes #8513
  • json-schema-2020-12: add support for dependentRequired keyword (#8633) (ee868aa), closes #8513
  • json-schema-2020-12: add support for enum keyword (#8623) (3b940d0), closes #8513
  • json-schema-2020-12: add support for min/maxProperties keywords (#8627) (38ba00d), closes #8513
  • json-schema-2020-12: add support for required keyword (#8628) (03a561f), closes #8513
  • json-schema-2020-12: add support for string validation keywords (#8625) (facd5ac), closes #8513
  • json-schema-2020-12: add support for validation keywords for arrays (#8626) (7c33cb0), closes #8513
  • json-schema-2020-12: add support for validation keywords for numbers (#8624) (1a29662), closes #8513
  • json-schema-2020-12: introduce new UI + extendable behavior (9ed1c1b), closes #8513
  • json-schema-2020-12: add initial rendering engine (ab18420), closes #8513
  • json-schema-2020-12: add support for keyword (d6d3e9f), closes #8513
  • json-schema-2020-12: add support for additionalProperties (64ee5fa), closes #8513
  • json-schema-2020-12: add support for allOf keyword (4ea28a9), closes #8513
  • json-schema-2020-12: add support for anchor keyword (628f029), closes #8513
  • json-schema-2020-12: add support for anyOf keyword (ff2d4b2), closes #8513
  • json-schema-2020-12: add support for boolean JSON Schema (83ba76c), closes #8513
  • json-schema-2020-12: add support for comment keyword (2f08f64), closes #8513
  • json-schema-2020-12: add support for contains keyword (31a1fed), closes #8513
  • json-schema-2020-12: add support for deep expandable behavior (7cfc5e3), closes #8513
  • json-schema-2020-12: add support for defaultExpandedLevels opt (7c15f50), closes #8513
  • json-schema-2020-12: add support for defs deep extend (6bc26b9), closes #8513
  • json-schema-2020-12: add support for defs keyword (daa0506), closes #8513
  • json-schema-2020-12: add support for dependentSchemas keyword (a8e351f), closes #8513
  • json-schema-2020-12: add support for description keyword (a7efbf5), closes #8513
  • json-schema-2020-12: add support for dynamicAnchor keyword (06bb79d), closes #8513
  • json-schema-2020-12: add support for dynamicRef keyword (51a7f4e), closes #8513
  • json-schema-2020-12: add support for else keyword (503aa19), closes #8513
  • json-schema-2020-12: add support for expandable behavior (ddedb57), closes #8513
  • json-schema-2020-12: add support for format keyword (c4ec33b), closes #8513
  • json-schema-2020-12: add support for id keyword (19f58ef), closes #8513
  • json-schema-2020-12: add support for if keyword (dea5dbb), closes #8513
  • json-schema-2020-12: add support for items keyword (1f1f045), closes #8513
  • json-schema-2020-12: add support for not keyword (bf21a4c), closes #8513
  • json-schema-2020-12: add support for oneOf keyword (1583079), closes #8513
  • json-schema-2020-12: add support for patternProperties keyword (a9dc6b0), closes #8513
  • json-schema-2020-12: add support for prefixItems keyword (e27107a), closes #8513
  • json-schema-2020-12: add support for propertyNames (7f9ac83), closes #8513
  • json-schema-2020-12: add support for ref keyword (6c5a126), closes #8513
  • json-schema-2020-12: add support for then keyword (b7a4023), closes #8513
  • json-schema-2020-12: add support for title keyword (161c5af), closes #8513
  • json-schema-2020-12: add support for type keyword (f06c1ca), closes #8513
  • json-schema-2020-12: add support for unevaluatedItems keyword (aba7f98), closes #8513
  • json-schema-2020-12: add support for unevaluatedProperties (3a5a605), closes #8513
  • json-schema-2020-12: add support for vocabulary keyword (679698b), closes #8513
  • json-schema-2020-12: detect expandable behavior (fe181ed), closes #8513
  • json-schema-2020-12: handle cycles in rendering (7d5cad0), closes #8513
  • json-schema-2020-12: infer type of schema if not defined (e517397), closes #8513
  • oas31: resolve components.schemas field before rendering (fa829e3), closes #8513
  • oas31: add support for OpenAPI 3.1.0 badge (#8502) (1622426), closes #8501
  • oas31: add support for OpenAPI 3.1.0 in VersionPragmaFilter (#8495) (4810801), closes #8492
  • oas31: add support for rendering OpenAPI.jsonSchemaDialect field (#8496) (1868185), closes #8491
  • add support for rendering Info.summary field, closes #8486
  • add support for rendering License.identifier field, closes #8487
  • add support for rendering OpenAPI.webhooks below the paths, closes #8488, #8489
  • integrate swagger-client@3.19.1 (0d0e6d9)
  • add partial experimental rendering support for OpenAPI 3.1.0 (#8367) (4557b24)

Bug Fixes

  • export standalone preset from the npm package (#8906) (cdd0bdd), closes #8163
  • json-schema-2020-12: custom OAS 3.1 formats in type inferrence (#8912) (12c7493)
  • oas31: fix rendering of Schema Object inside Operation Object (#8887) (f30d89a)
  • json-schema-2020-12: fix predicate in hasKeyword function (#8692) (1931b45), closes #8686
  • oas31: avoid capitalizing first character of components.schemas (#8710) (4ad45f8), closes #8611
  • oas31: fix bug in detecting cycles for OpenAPI 3.1.0 (swagger-client@3.19.8)
  • json-schema-2020-12: fix rendering of items keywords (#8674) (67132cc), closes #8513
  • oas31: fix deep linking for Webhooks and Callbacks (#8680) (872e382), closes #8679
  • oas31: fix expansion margin in OpenAPI 3.1 base dialect keywords (#8664) (bd406ee), closes #8513
  • oas31: fix extendable behavior in OpenAPI 3.1 base dialect keywords (#8660) (36148cb), closes #8513
  • oas31: resolve schemas in 'Schemas section' only if expanded (#8616) (a8771e7), closes #8606
  • json-schema-2020-12: enable sub-tree expansion performance optimization (#8609) (37e8f00), closes #8606
  • json-schema-2020-12: fix in collapsible behavior (f41c6ba), closes #8513
  • json-schema-2020-12: handle boolean schemas properly (66d5503), closes #8513
  • response-body: remove download button when content is empty (#8579) (cdfc4de)
  • oas31: fix rendering Path Items containing schemas with cycles (#8547) (0fabcaf), closes #8537
  • oas31: add relative reference support for baseDoc option (#8533) (7132e16), closes #8525
  • oas31: fix resolver error about immutable Headers (#8536) (a21e843), closes #8532
  • oas31: render Callback operations only (#8507) (3d3fea0), closes #8504
  • oas3: expand Callback operation without browser error (#8509) (4dc83b9), closes #8508
  • oas31: detect user request body edits in OpenAPI.paths (#8500) (5c11bb5), closes #8498
  • oas31: fix recursive bug in hasUserEditedBody selector wrapper (#8499) (25edb23), closes #8498
  • decode model schema name on model component (#8400) (44e2700), closes #5626
  • render Info.summary field as text, not as markdown

Enhancements

  • docker: use templating to handle environment variables (#8878)
  • docker: update Dockerfile base image to nginx:1.25.0-alpine (#8712) (4f2fb10)
  • add oas31 plugin where all OpenAPI 3.1.0 related features are concentrated (#8474). oas31 plugin creates clear internal/public API around SwaggerUI OpenAPI 3.1.0 features.