question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

OpenAPI Specification 3.1-RC0 Changelog

See original GitHub issue

This ticket gives everyone the opportunity to look at the changelog for the upcoming release. Please review the content and add anything you think might be missing.

The part about the JSON Schema draft is a bit lacking as we might push in some different changes before the release. Anyone who wants to add a summary for it is more than welcome.

Changelog

Additions

  • Introduced a new top-level field - webhooks. This allows describing out-of-band webhooks that are available as part of the API.
  • The Info Object has a new summary field.
  • The License Object now has a new identifier field for SPDX licenses.
  • Components Object now has a new entry pathItems, to allow for reusable Path Item Objects to be defined within a valid OpenAPI document.

Extended Functionality

  • Updated primitive types to be based on JSON Schema Specification Draft 2019-09. This now includes type null.
  • Lifted the restriction of allowing Request Body only in HTTP methods where the HTTP 1.1 specification RFC7231 has explicitly defined semantics for. While allowed in other methods, it is not recommended.
  • Added support to object type for spaceDelimited and pipeDelimited style values.
  • The Encoding Object now supports style, explode and allowReserved for multipart/form-data media type as well.
  • To enable better webhooks support, expressions in the Callback Object can now also referencePath Item Objects.
  • When using the Reference Object, summary and description fields can now be overridden.
  • The Schema Object is now fully compliant with JSON Schema draft 2019-09 (see JSON Schema Core and JSON Schema Validation).
  • The Discriminator Object can now be extended with Specification Extensions.
  • Added support for mutual TLS (mutualTLS) as a security scheme.
  • Used security requirements can now define an array of roles that are required for execution (and not only scopes for OAuth 2.0 security schemes).

Changes

  • An OpenAPI Document now requires at least one of paths, components or webhooks to exist at the top level. While previous versions required paths, now a valid OpenAPI Document can describe only webhooks, or even only reusable components. Thus, an OpenAPI Document no longer necessarily describes an API.
  • Anywhere in the 3.0.0 Specification that had a type of Schema Object | Reference Object has been replaced to be Schema Object only. With the move to full JSON Schema support, $ref is inherently part of the Schema Object and has its own defined behavior.
  • Extensions prefixed with x-oas- are now reserved for the OpenAPI Initiative.

Clarifications

  • Reworded the definition of OpenAPI Document to reflect that a document no longer must describe paths, but can describe either paths, webhooks, components or any combination of them.
  • Dropped the term RESTful APIs in favor of HTTP APIs
  • Resolution of relative references has been redefined and clarified. Note there’s a difference in resolution between Schema Object References and all others.
  • Modification of examples to improve them and provide context for new fields/objects.

Issue Analytics

  • State:closed
  • Created 3 years ago
  • Comments:7 (6 by maintainers)

github_iconTop GitHub Comments

1reaction
handrewscommented, May 12, 2020

@m-mohr there’s some question over whether this release should be 3.1 or 4.0. See #2219 for details.

0reactions
MikeRalphsoncommented, Jun 23, 2020

Closing as 3.1-rc0 has been released.

Read more comments on GitHub >

github_iconTop Results From Across the Web

Apache Kyuubi
You need to restart the Hue Service to activate the configuration changes, and then Spark SQL will available in editor list. 6.1. Quick...
Read more >
Diff - jetty/org.eclipse.jetty.project - Google Git
Merge remote-tracking branch 'origin/jetty-8' Conflicts: VERSION.txt aggregates/jetty-all/pom.xml examples/async-rest/async-rest-jar/pom.xml ...
Read more >
Are Game Engines Software Frameworks? A Three ... - Zenodo
fullname name owner license archived main_language main_lang... 1 0xcert_framework framework 0xcert MIT License False TypeScript 0.766057 2 1024jp_GzipSwift GzipSwift 1024jp MIT License False Swift 0.01599 3...
Read more >
ChangeLog · OpenHarmony/third_party_libffi - Gitee.com
Updating calls to ffi_closure_unix64_inner and ffi_closure_win64_inner to use PLT. Without this fix, statically linking libffi causes the linker error i.e. ...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found