Not possible to upgrade core-common in parent pom without migration from springfox to springdoc-openapi
Currently, in Indexer root pom core-common dependency is quite outdated and furthermore points to release candidate versions which could be easily erased during the repository clean-up routine:
https://community.opengroup.org/osdu/platform/system/indexer-service/-/blob/master/pom.xml#L16
This core-common version propagates old spring-boot dependencies to provider modules:
[INFO] --- maven-dependency-plugin:2.8:tree (default-cli) @ indexer-service ---
[INFO] org.opengroup.osdu.indexer:indexer-service:pom:0.17.0-SNAPSHOT
[INFO] +- org.opengroup.osdu:os-core-common:jar:0.14.0-rc8:compile
[INFO] | +- org.springframework.boot:spring-boot-starter-web:jar:2.4.12:compile
[INFO] | | +- org.springframework.boot:spring-boot-starter:jar:2.4.12:compile
[INFO] | | | +- org.springframework.boot:spring-boot:jar:2.4.12:compile
But if we upgrade it to the latest release version 16.01
it will bring new spring dependencies:
[INFO] --- maven-dependency-plugin:2.8:tree (default-cli) @ indexer-service ---
[INFO] org.opengroup.osdu.indexer:indexer-service:pom:0.17.0-SNAPSHOT
[INFO] +- org.opengroup.osdu:os-core-common:jar:0.16.1:compile
[INFO] | +- org.springframework.boot:spring-boot-starter-web:jar:2.7.2:compile
[INFO] | | +- org.springframework.boot:spring-boot-starter:jar:2.7.2:compile
[INFO] | | | +- org.springframework.boot:spring-boot:jar:2.7.2:compile
And they are not compatible with spring-fox that used for API documentation by Indexer service:
https://community.opengroup.org/osdu/platform/system/indexer-service/-/blob/master/pom.xml#L150
Since spring-fox does not get updates anymore and is not compatible with new versions of spring-boot, it will block us in further dependency upgrades:
https://github.com/springfox/springfox/issues/3462
Upgrade will cause runtime errors and the Indexer service will not be able to start up:
org.springframework.context.ApplicationContextException: Failed to start bean 'documentationPluginsBootstrapper'; nested exception is java.lang.NullPointerException
at org.springframework.context.support.DefaultLifecycleProcessor.doStart(DefaultLifecycleProcessor.java:181)
at org.springframework.context.support.DefaultLifecycleProcessor.access$200(DefaultLifecycleProcessor.java:54)
at org.springframework.context.support.DefaultLifecycleProcessor$LifecycleGroup.start(DefaultLifecycleProcessor.java:356)
at java.lang.Iterable.forEach(Iterable.java:75)
at org.springframework.context.support.DefaultLifecycleProcessor.startBeans(DefaultLifecycleProcessor.java:155)
at org.springframework.context.support.DefaultLifecycleProcessor.onRefresh(DefaultLifecycleProcessor.java:123)
at org.springframework.context.support.AbstractApplicationContext.finishRefresh(AbstractApplicationContext.java:935)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:586)
at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:147)
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:734)
at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:408)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:308)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1306)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1295)
at org.opengroup.osdu.indexer.IndexerGcpApplication.main(IndexerGcpApplication.java:33)
Caused by: java.lang.NullPointerException: null
at springfox.documentation.spring.web.WebMvcPatternsRequestConditionWrapper.getPatterns(WebMvcPatternsRequestConditionWrapper.java:56)