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

[3.x] Prepare for SnakeYAML 2.0 #5792

Closed
tjquinno opened this issue Jan 6, 2023 · 0 comments · Fixed by #5793
Closed

[3.x] Prepare for SnakeYAML 2.0 #5792

tjquinno opened this issue Jan 6, 2023 · 0 comments · Fixed by #5793
Assignees
Labels
3.x Issues for 3.x version branch config open-api
Milestone

Comments

@tjquinno
Copy link
Member

tjquinno commented Jan 6, 2023

Environment Details

  • Helidon Version: 3.x
  • Helidon SE or Helidon MP
  • JDK version:
  • OS:
  • Docker version (if applicable):

Problem Description

SnakeYAML 2.0 (not yet released but coming) contains backward-incompatible changes we need to accommodate.

See also #5823 for an analysis of Helidon's usage of SnakeYAML.

Steps to reproduce

Try to build helidon-config-yaml, helidon-config-yaml-mp, or helidon-openapi.

@tjquinno tjquinno added config open-api 3.x Issues for 3.x version branch labels Jan 6, 2023
@tjquinno tjquinno self-assigned this Jan 6, 2023
@tjquinno tjquinno changed the title Prepare for SnakeYAML 2.0 [3.x] Prepare for SnakeYAML 2.0 Mar 6, 2023
@barchetta barchetta added this to the 3.1.3 milestone Mar 9, 2023
romain-grecourt added a commit to romain-grecourt/helidon that referenced this issue Sep 26, 2023
- Minimalistic SE OpenAPI support with SPI to implement the MicroProfile support and OpenAPI UI
- Make openapi a multi-module with two sub-modules: openapi and openapi-ui
- Add openapi/tests and move helidon-iogh-5792 from tests/integration
- Microprofile OpenAPI refactorings:
  - MPOpenAPIBuilder into FilteredIndexViewsBuilder as a utility to create List<FilteredIndexView>
  - MpOpenApiManager implements OpenApiManager using SmallRye OpenAPI (what was before in MpOpenApiFeature
  - Prefix utility classes with OpenApi:
    - ParserHelper -> OpenApiParser
    - Serializer -> OpenApiSerializer
  - Renamed HelidonAnnotationScannerExtension to JsonpAnnotationScannerExtension to remove 'Helidon' from the class name
  - Renamed tests to use Test as a suffix instead of prefix

Fixes helidon-io#7247 (SE OpenAPI static file support)
Fixes helidon-io#7240 (Fix helidon-iogh-5792 integration test)
Fixes helidon-io#6130 (Port OpenAPI UI integration to 4.x)
Fixes helidon-io#7643 (OpenAPI parsing fails to handle default in some cases)
Fixes helidon-io#7668 (Routing path with optional sequence not supported)
romain-grecourt added a commit to romain-grecourt/helidon that referenced this issue Sep 26, 2023
- Minimalistic SE OpenAPI support with SPI to implement the MicroProfile support and OpenAPI UI
- Make openapi a multi-module with two sub-modules: openapi and openapi-ui
- Add openapi/tests and move helidon-iogh-5792 from tests/integration
  - Re-enabled test,  make it strictly a test (not an app) and use version.lib.snakeyaml to override the SnakeYAML version
- Created OpenApiFormat to formalize what was before OpenApiFeature.OpenAPIMediaType
- Microprofile OpenAPI refactorings:
  - MPOpenAPIBuilder into FilteredIndexViewsBuilder as a utility to create List<FilteredIndexView>
  - MpOpenApiManager implements OpenApiManager using SmallRye OpenAPI (what was before in MpOpenApiFeature
  - Prefix utility classes with OpenApi:
    - ParserHelper -> OpenApiParser
    - Serializer -> OpenApiSerializer
  - Renamed HelidonAnnotationScannerExtension to JsonpAnnotationScannerExtension to remove 'Helidon' from the class name
  - Renamed tests to use Test as a suffix instead of prefix
- Updated examples/openapi to remove the in-memory model related features (i.e. reader, filter)
- Renamed examples/microprofile/openapi-basic to examples/microprofile/openapi (to be symetrical with SE)
- Updated tests to use new testing patterns (i.e. helidon-microprofile-testing-junit5 for MP and helidon-webserver-testing-junit5 for SE)

Fixes helidon-io#7247 (SE OpenAPI static file support)
Fixes helidon-io#7240 (Fix helidon-iogh-5792 integration test)
Fixes helidon-io#6130 (Port OpenAPI UI integration to 4.x)
Fixes helidon-io#7643 (OpenAPI parsing fails to handle default in some cases)
Fixes helidon-io#7668 (Routing path with optional sequence not supported)
romain-grecourt added a commit to romain-grecourt/helidon that referenced this issue Sep 26, 2023
- Minimalistic SE OpenAPI support with SPI to implement the MicroProfile support and OpenAPI UI
- Make openapi a multi-module with two sub-modules: openapi and openapi-ui
- Add openapi/tests and move helidon-iogh-5792 from tests/integration
  - Re-enabled test,  make it strictly a test (not an app) and use version.lib.snakeyaml to override the SnakeYAML version
- Created OpenApiFormat to formalize what was before OpenApiFeature.OpenAPIMediaType
- Microprofile OpenAPI refactorings:
  - MPOpenAPIBuilder into FilteredIndexViewsBuilder as a utility to create List<FilteredIndexView>
  - MpOpenApiManager implements OpenApiManager using SmallRye OpenAPI (what was before in MpOpenApiFeature
  - Prefix utility classes with OpenApi:
    - ParserHelper -> OpenApiParser
    - Serializer -> OpenApiSerializer
  - Renamed HelidonAnnotationScannerExtension to JsonpAnnotationScannerExtension to remove 'Helidon' from the class name
  - Renamed tests to use Test as a suffix instead of prefix
- Updated examples/openapi to remove the in-memory model related features (i.e. reader, filter)
- Renamed examples/microprofile/openapi-basic to examples/microprofile/openapi (to be symetrical with SE)
- Updated tests to use new testing patterns (i.e. helidon-microprofile-testing-junit5 for MP and helidon-webserver-testing-junit5 for SE)
- Generated config docs for openapi/openapi, openapi/openapi-ui, microprofile/openapi (Removed old files)

Fixes helidon-io#7247 (SE OpenAPI static file support)
Fixes helidon-io#7240 (Fix helidon-iogh-5792 integration test)
Fixes helidon-io#6130 (Port OpenAPI UI integration to 4.x)
Fixes helidon-io#7643 (OpenAPI parsing fails to handle default in some cases)
Fixes helidon-io#7668 (Routing path with optional sequence not supported)
romain-grecourt added a commit to romain-grecourt/helidon that referenced this issue Sep 26, 2023
- Minimalistic SE OpenAPI support with SPI to implement the MicroProfile support and OpenAPI UI
- Make openapi a multi-module with two sub-modules: openapi and openapi-ui
- Add openapi/tests and move helidon-iogh-5792 from tests/integration
  - Re-enabled test,  make it strictly a test (not an app) and use version.lib.snakeyaml to override the SnakeYAML version
- Created OpenApiFormat to formalize what was before OpenApiFeature.OpenAPIMediaType
- Microprofile OpenAPI refactorings:
  - MPOpenAPIBuilder into FilteredIndexViewsBuilder as a utility to create List<FilteredIndexView>
  - MpOpenApiManager implements OpenApiManager using SmallRye OpenAPI (what was before in MpOpenApiFeature
  - Prefix utility classes with OpenApi:
    - ParserHelper -> OpenApiParser
    - Serializer -> OpenApiSerializer
  - Renamed HelidonAnnotationScannerExtension to JsonpAnnotationScannerExtension to remove 'Helidon' from the class name
  - Renamed tests to use Test as a suffix instead of prefix
- Updated examples/openapi to remove the in-memory model related features (i.e. reader, filter)
- Renamed examples/microprofile/openapi-basic to examples/microprofile/openapi (to be symetrical with SE)
- Updated tests to use new testing patterns (i.e. helidon-microprofile-testing-junit5 for MP and helidon-webserver-testing-junit5 for SE)
- Generated config docs for openapi/openapi, openapi/openapi-ui, microprofile/openapi (Removed old files)

Fixes helidon-io#7247 (SE OpenAPI static file support)
Fixes helidon-io#7240 (Fix helidon-iogh-5792 integration test)
Fixes helidon-io#6130 (Port OpenAPI UI integration to 4.x)
Fixes helidon-io#7643 (OpenAPI parsing fails to handle default in some cases)
Fixes helidon-io#7668 (Routing path with optional sequence not supported)
romain-grecourt added a commit to romain-grecourt/helidon that referenced this issue Sep 26, 2023
- Minimalistic SE OpenAPI support with SPI to implement the MicroProfile support and OpenAPI UI
- Make openapi a multi-module with two sub-modules: openapi and openapi-ui
- Add openapi/tests and move helidon-iogh-5792 from tests/integration
  - Re-enabled test,  make it strictly a test (not an app) and use version.lib.snakeyaml to override the SnakeYAML version
- Created OpenApiFormat to formalize what was before OpenApiFeature.OpenAPIMediaType
- Microprofile OpenAPI refactorings:
  - MPOpenAPIBuilder into FilteredIndexViewsBuilder as a utility to create List<FilteredIndexView>
  - MpOpenApiManager implements OpenApiManager using SmallRye OpenAPI (what was before in MpOpenApiFeature
  - Prefix utility classes with OpenApi:
    - ParserHelper -> OpenApiParser
    - Serializer -> OpenApiSerializer
  - Renamed HelidonAnnotationScannerExtension to JsonpAnnotationScannerExtension to remove 'Helidon' from the class name
  - Renamed tests to use Test as a suffix instead of prefix
- Updated examples/openapi to remove the in-memory model related features (i.e. reader, filter)
- Renamed examples/microprofile/openapi-basic to examples/microprofile/openapi (to be symetrical with SE)
- Updated tests to use new testing patterns (i.e. helidon-microprofile-testing-junit5 for MP and helidon-webserver-testing-junit5 for SE)
- Generated config docs for openapi/openapi, openapi/openapi-ui, microprofile/openapi (Removed old files)

Fixes helidon-io#7247 (SE OpenAPI static file support)
Fixes helidon-io#7240 (Fix helidon-iogh-5792 integration test)
Fixes helidon-io#6130 (Port OpenAPI UI integration to 4.x)
Fixes helidon-io#7643 (OpenAPI parsing fails to handle default in some cases)
Fixes helidon-io#7668 (Routing path with optional sequence not supported)
romain-grecourt added a commit that referenced this issue Sep 27, 2023
* OpenAPI updates.

- Minimalistic SE OpenAPI support with SPI to implement the MicroProfile support and OpenAPI UI
- Make openapi a multi-module with two sub-modules: openapi and openapi-ui
- Add openapi/tests and move gh-5792 from tests/integration
  - Re-enabled test,  make it strictly a test (not an app) and use version.lib.snakeyaml to override the SnakeYAML version
- Created OpenApiFormat to formalize what was before OpenApiFeature.OpenAPIMediaType
- Microprofile OpenAPI refactorings:
  - MPOpenAPIBuilder into FilteredIndexViewsBuilder as a utility to create List<FilteredIndexView>
  - MpOpenApiManager implements OpenApiManager using SmallRye OpenAPI (what was before in MpOpenApiFeature
  - Prefix utility classes with OpenApi:
    - ParserHelper -> OpenApiParser
    - Serializer -> OpenApiSerializer
  - Renamed HelidonAnnotationScannerExtension to JsonpAnnotationScannerExtension to remove 'Helidon' from the class name
  - Renamed tests to use Test as a suffix instead of prefix
- Updated examples/openapi to remove the in-memory model related features (i.e. reader, filter)
- Renamed examples/microprofile/openapi-basic to examples/microprofile/openapi (to be symetrical with SE)
- Updated tests to use new testing patterns (i.e. helidon-microprofile-testing-junit5 for MP and helidon-webserver-testing-junit5 for SE)
- Generated config docs for openapi/openapi, openapi/openapi-ui, microprofile/openapi (Removed old files)

Fixes #7247 (SE OpenAPI static file support)
Fixes #7240 (Fix gh-5792 integration test)
Fixes #6130 (Port OpenAPI UI integration to 4.x)
Fixes #7643 (OpenAPI parsing fails to handle default in some cases)
Fixes #7668 (Routing path with optional sequence not supported)

* Update MapMatcher javadoc

* Incorporate review feedback:
- Use FQN the provide statement in openapi/openapi-ui/src/main/java/module-info.java
- Update META-INF/openapi.yml
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
3.x Issues for 3.x version branch config open-api
Projects
Archived in project
Development

Successfully merging a pull request may close this issue.

2 participants