Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(ls): provide OpenAPI 3.1.0 completion for Server Variable object #2193

Merged
merged 1 commit into from
Oct 26, 2022

Conversation

tim-lai
Copy link
Contributor

@tim-lai tim-lai commented Oct 25, 2022

Description

provide OpenAPI 3.1.0 completion for Server Variable object

Motivation and Context

Ref: #2062

How Has This Been Tested?

Screenshots (if appropriate):

Checklist

My PR contains...

  • No code changes (src/ is unmodified: changes to documentation, CI, metadata, etc.)
  • Dependency changes (any modification to dependencies in package.json)
  • Bug fixes (non-breaking change which fixes an issue)
  • Improvements (misc. changes to existing features)
  • Features (non-breaking change which adds functionality)

My changes...

  • are breaking changes to a public API (config options, System API, major UI change, etc).
  • are breaking changes to a private API (Redux, component props, utility functions, etc.).
  • are breaking changes to a developer API (npm script behavior changes, new dev system dependencies, etc).
  • are not breaking changes.

Documentation

  • My changes do not require a change to the project documentation.
  • My changes require a change to the project documentation.
  • If yes to above: I have updated the documentation accordingly.

Automated tests

  • My changes can not or do not need to be tested.
  • My changes can and should be tested by unit and/or integration tests.
  • If yes to above: I have added tests to cover my changes.
  • If yes to above: I have taken care to cover edge cases in my tests.
  • All new and existing tests passed.

@tim-lai
Copy link
Contributor Author

tim-lai commented Oct 25, 2022

@char0n on the lint side of things, do we have a way to lint/validate that a default value is present within the enum list? e.g. per: If the [enum](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#serverVariableEnum) is defined, the value MUST exist in the enum's values.

@tim-lai tim-lai requested a review from char0n October 25, 2022 21:55
@char0n
Copy link
Member

char0n commented Oct 26, 2022

@char0n on the lint side of things, do we have a way to lint/validate that a default value is present within the enum list? e.g. per: If the [enum](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#serverVariableEnum) is defined, the value MUST exist in the enum's values.

We don't. We'll have to create one. The closer we have is apilintKeysIncluded function. This new one is going to be apilintValuesIncluded. But don't deal with it now. The goal here is to have some consistent OpenAPI 3.1.0 linting as soon as possible. For complex cases like this please create a new issue under OpenAPI 3.1.0 language server rules epic and we will deal with those complex rules at the end of the epic effort.

Note: I've also assigned #2061 and #2062 under the same epic.

For more info have a look at OpenAPI 3.0.x language server rules epic.

@tim-lai tim-lai merged commit ba5afdd into main Oct 26, 2022
@tim-lai tim-lai deleted the feat/oas31-completion-server-variable branch October 26, 2022 17:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants