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

fix: instantiate Ajv2020 for OAS 3.1 #1009

Merged

Conversation

luisfidelis
Copy link
Contributor

@luisfidelis luisfidelis commented Nov 8, 2024

hey, i was testing the version 6.0.0 alpha compliant with OAS 3.1 but i couldn't get this working fine with unevaluatedProperties constraint. I checked the code and it was missing the Ajv2020 in request validator.

I changed a bit the structure by creating factories for the Ajv instance and also for the schema, both based on the openapi version. Let me know if it's not standard in the project.

Note: i don't know what's going on with codacy check, it's complaining about missing eslint config for some examples but i didn't change them.

@luisfidelis luisfidelis mentioned this pull request Nov 8, 2024
@cdimascio cdimascio merged commit ef8e7ba into cdimascio:oas3.1 Nov 10, 2024
4 of 5 checks passed
@cdimascio
Copy link
Owner

Thanks will look to roll this into a new alpha release

@cdimascio
Copy link
Owner

cdimascio commented Nov 11, 2024

current latest alpha is [email protected] and includes this change

npm install [email protected]

im very interested in feedeback regarding the validators oas3.1 support

cdimascio added a commit that referenced this pull request Dec 25, 2024
* feat(openapi): support version 3.1

* test(openapi_3.1): ensure that an API with webhooks and no routes is supported

* feat(openapi_3.1): adds open api 3.1 type

* chore(test-scripts): run mocha with --extension instead of glob to pick up subdirectories

Mocha was not picking up the tests in subdirectories with the provided glob. Adding --extension with
the tests extension and setting the root test folder in tests fixed it

* test(openapi-3.1): adds test to ensure an API with only components is considered valid

* test(openapi-3.1): remove unnecessary import

* test(openapi-3.1): add support for summary in info object

* test(openapi-3.1): add support for identifier in license

* test(openapi_3.1): ensure API with type set to null works correctly

* test(open_api3.1): ensure that methods with non-explicit semantics allow request body

* test(open_api3.1): ensure 500 is returned when server variable has no default

* feat(openapi_3.1): ensure API supports an endpoint without response

* feat(openapi_3.1): add full type support for open api 3.1

* test(openapi_3.1): adds test for path item support in components

* fix(openapi_3.1_schema): update schema to fix bug

* feat(openapi_3.1): support reusable path items

* style(linting): fix linting issues

* style(openapi): improve readability of version validation

* docs(schema-validator): clearly state why media-range attribute is not defined

* version 6.0.0-alpha.1 with initial OAS-3.1 support (from PR #882)

* v6.0.0-alpha.2

* feat(openapi): support version 3.1

* test(openapi_3.1): ensure that an API with webhooks and no routes is supported

* feat(openapi_3.1): adds open api 3.1 type

* chore(test-scripts): run mocha with --extension instead of glob to pick up subdirectories

Mocha was not picking up the tests in subdirectories with the provided glob. Adding --extension with
the tests extension and setting the root test folder in tests fixed it

* test(openapi-3.1): adds test to ensure an API with only components is considered valid

* test(openapi-3.1): remove unnecessary import

* test(openapi-3.1): add support for summary in info object

* test(openapi-3.1): add support for identifier in license

* test(openapi_3.1): ensure API with type set to null works correctly

* test(open_api3.1): ensure that methods with non-explicit semantics allow request body

* test(open_api3.1): ensure 500 is returned when server variable has no default

* feat(openapi_3.1): ensure API supports an endpoint without response

* feat(openapi_3.1): add full type support for open api 3.1

* test(openapi_3.1): adds test for path item support in components

* fix(openapi_3.1_schema): update schema to fix bug

* feat(openapi_3.1): support reusable path items

* style(linting): fix linting issues

* style(openapi): improve readability of version validation

* docs(schema-validator): clearly state why media-range attribute is not defined

* version 6.0.0-alpha.1 with initial OAS-3.1 support (from PR #882)

* v6.0.0-alpha.2

* alpha.3

* feat(openapi): support version 3.1

* feat(openapi_3.1): adds open api 3.1 type

* fix(openapi_3.1_schema): update schema to fix bug

* style(linting): fix linting issues

* fix: instantiate Ajv2020 for OAS 3.1 (#1009)

* chore: create factories for ajvInstance and schema

* test: writing some tests

* chore: removing ts from editorconfig

* chore: add eslint

* update alpha 3.1 version

* fix: examples/4-eov-operations-babel/package.json & examples/4-eov-operations-babel/package-lock.json to reduce vulnerabilities (#1021)

The following vulnerabilities are fixed with an upgrade:
- https://snyk.io/vuln/SNYK-JS-PATHTOREGEXP-8482416

Co-authored-by: snyk-bot <[email protected]>

* fix: package.json & package-lock.json to reduce vulnerabilities (#1017)

The following vulnerabilities are fixed with an upgrade:
- https://snyk.io/vuln/SNYK-JS-PATHTOREGEXP-8482416

Co-authored-by: snyk-bot <[email protected]>

* chore(deps): bump path-to-regexp and express in /examples/1-standard (#1016)

Bumps [path-to-regexp](https://github.com/pillarjs/path-to-regexp) and [express](https://github.com/expressjs/express). These dependencies needed to be updated together.

Updates `path-to-regexp` from 0.1.10 to 0.1.12
- [Release notes](https://github.com/pillarjs/path-to-regexp/releases)
- [Changelog](https://github.com/pillarjs/path-to-regexp/blob/master/History.md)
- [Commits](pillarjs/path-to-regexp@v0.1.10...v0.1.12)

Updates `express` from 4.21.0 to 4.21.2
- [Release notes](https://github.com/expressjs/express/releases)
- [Changelog](https://github.com/expressjs/express/blob/4.21.2/History.md)
- [Commits](expressjs/express@4.21.0...4.21.2)

---
updated-dependencies:
- dependency-name: path-to-regexp
  dependency-type: indirect
- dependency-name: express
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix: upgrade express-openapi-validator from 5.3.7 to 5.3.8 (#1011)

Snyk has created this PR to upgrade express-openapi-validator from 5.3.7 to 5.3.8.

See this package in npm:
express-openapi-validator

See this project in Snyk:
https://app.snyk.io/org/cdimascio/project/53639b22-8ff0-4bd5-97c3-ae30b20a20f4?utm_source=github&utm_medium=referral&page=upgrade-pr

Co-authored-by: snyk-bot <[email protected]>

* fix: upgrade express-openapi-validator from 5.3.6 to 5.3.7 (#1008)

Snyk has created this PR to upgrade express-openapi-validator from 5.3.6 to 5.3.7.

See this package in npm:
express-openapi-validator

See this project in Snyk:
https://app.snyk.io/org/cdimascio/project/0ac9a5bd-9a7f-4c0e-bf8b-51d0bd4c4448?utm_source=github&utm_medium=referral&page=upgrade-pr

Co-authored-by: snyk-bot <[email protected]>

* fix: upgrade @apidevtools/json-schema-ref-parser from 11.7.0 to 11.7.2 (#1006)

Snyk has created this PR to upgrade @apidevtools/json-schema-ref-parser from 11.7.0 to 11.7.2.

See this package in npm:
@apidevtools/json-schema-ref-parser

See this project in Snyk:
https://app.snyk.io/org/cdimascio/project/f63fb44e-f154-45ba-b1f0-20d49ea578ce?utm_source=github&utm_medium=referral&page=upgrade-pr

Co-authored-by: snyk-bot <[email protected]>

* adds standard example for oas-3.1

* v6.0.0.alpha.6

* update oas3.1 example

* v5.4.0 - adds initial oas3.1 support

* updates readme for oas3.1

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: Sergio Ferreira <[email protected]>
Co-authored-by: carmine <[email protected]>
Co-authored-by: Luis Philipe Fidelis <[email protected]>
Co-authored-by: snyk-bot <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
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