cloud-sdk-java icon indicating copy to clipboard operation
cloud-sdk-java copied to clipboard

chore: [OpenAPI] Reduce Spring dependency

Open newtork opened this issue 10 months ago • 0 comments

Context

https://github.com/SAP/cloud-sdk-java-backlog/issues/464

We want to reduce the Spring dependency.

Currently:

  • Users require explicit org.springframework:spring-core::compile
  • Users require explicit org.springframework:spring-web::compile

Expected (1):

  • [x] Legacy users are not negatively affected by change
  • [x] Users do not require explicit org.springframework:spring-core::compile
  • [x] Users do not require explicit org.springframework:spring-web::compile

Expected (2):

  • [ ] Legacy users are not negatively affected by change
  • [ ] Users do not require transitive org.springframework:spring-core::compile
  • [ ] Users do not require transitive org.springframework:spring-web::compile

Feature scope:

  • [x] Update mustache file to reduce Spring types from public API (70%)

    • [x] Weaken openapi-core API contract to allow for non-Spring typed arguments
    • [x] Newly generated service API classes use non-Spring typed code.
    • [x] Sample project is updated to motivate changes.
  • [ ] Harden and improve openapi-core API contract

    • [ ] offer legacy weak API (for Spring and non-Spring typed arguments)
      • [ ] Spring classes are coming from optional-scoped dependencies.
    • [ ] offer new, improved and recommended API (for non-Spring-typed arguments)
  • [ ] Update mustache file to use recommended API

Definition of Done

  • [ ] Functionality scope stated & covered
  • [ ] Tests cover the scope above
  • [x] ~Error handling created / updated & covered by the tests above~
  • [x] ~Documentation updated~
  • [ ] Release notes updated

newtork avatar Mar 14 '25 13:03 newtork