Upgrade library dependencies (#9547)

* Upgrade minor version

* Update jersey-bom version

* Update dropwizard version

* Revert dropwizard and update jackson

* Upgrade to Dropwizard 2.1.4 switch default GrizzlyConnector to HttpUrlConnector

* Upgrade next set of dependencies

* Upgrade next set of dependencies - part 2

* Upgrade next set of dependencies - part 3
This commit is contained in:
Suresh Srinivas 2022-12-30 15:20:44 -08:00 committed by GitHub
parent cb78343898
commit 1eb7ed95dc
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 51 additions and 39 deletions

View File

@ -15,6 +15,7 @@
<maven.compiler.source>${java.version}</maven.compiler.source> <maven.compiler.source>${java.version}</maven.compiler.source>
<maven.compiler.target>${java.version}</maven.compiler.target> <maven.compiler.target>${java.version}</maven.compiler.target>
<springfox-version>2.7.0</springfox-version> <springfox-version>2.7.0</springfox-version>
<!-- Upgrading this causes issues -->
<feign-version>9.7.0</feign-version> <feign-version>9.7.0</feign-version>
</properties> </properties>
<dependencies> <dependencies>
@ -37,11 +38,12 @@
<dependency> <dependency>
<groupId>org.slf4j</groupId> <groupId>org.slf4j</groupId>
<artifactId>slf4j-ext</artifactId> <artifactId>slf4j-ext</artifactId>
<version>2.0.3</version> <version>2.0.6</version>
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.github.joschi.jackson</groupId> <groupId>com.github.joschi.jackson</groupId>
<artifactId>jackson-datatype-threetenbp</artifactId> <artifactId>jackson-datatype-threetenbp</artifactId>
<!-- Upgrading this causes failure-->
<version>2.6.4</version> <version>2.6.4</version>
</dependency> </dependency>
<dependency> <dependency>
@ -77,22 +79,22 @@
<dependency> <dependency>
<groupId>io.github.openfeign.form</groupId> <groupId>io.github.openfeign.form</groupId>
<artifactId>feign-form</artifactId> <artifactId>feign-form</artifactId>
<version>2.0.2</version> <version>3.8.0</version>
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.google.auth</groupId> <groupId>com.google.auth</groupId>
<artifactId>google-auth-library-oauth2-http</artifactId> <artifactId>google-auth-library-oauth2-http</artifactId>
<version>1.11.0</version> <version>1.14.0</version>
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.microsoft.azure</groupId> <groupId>com.microsoft.azure</groupId>
<artifactId>msal4j</artifactId> <artifactId>msal4j</artifactId>
<version>1.13.1</version> <version>1.13.3</version>
</dependency> </dependency>
<dependency> <dependency>
<groupId>io.github.openfeign</groupId> <groupId>io.github.openfeign</groupId>
<artifactId>feign-okhttp</artifactId> <artifactId>feign-okhttp</artifactId>
<version>11.10</version> <version>12.1</version>
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.projectlombok</groupId> <groupId>org.projectlombok</groupId>
@ -175,7 +177,7 @@
<dependency> <dependency>
<groupId>com.github.jknack</groupId> <groupId>com.github.jknack</groupId>
<artifactId>handlebars</artifactId> <artifactId>handlebars</artifactId>
<version>4.3.0</version> <version>4.3.1</version>
</dependency> </dependency>
</dependencies> </dependencies>
<executions> <executions>

View File

@ -16,8 +16,8 @@
<sonar.coverage.jacoco.xmlReportPaths>${project.basedir}/target/site/jacoco-aggregate/jacoco.xml</sonar.coverage.jacoco.xmlReportPaths> <sonar.coverage.jacoco.xmlReportPaths>${project.basedir}/target/site/jacoco-aggregate/jacoco.xml</sonar.coverage.jacoco.xmlReportPaths>
<sonar.tests>${project.basedir}/src/test/java</sonar.tests> <sonar.tests>${project.basedir}/src/test/java</sonar.tests>
<sonar.tests>${project.basedir}/src/test/java</sonar.tests> <sonar.tests>${project.basedir}/src/test/java</sonar.tests>
<org.testcontainers.version>1.17.4</org.testcontainers.version> <org.testcontainers.version>1.17.6</org.testcontainers.version>
<awssdk.version>2.18.1</awssdk.version> <awssdk.version>2.19.7</awssdk.version>
<expiring.map.version>0.5.10</expiring.map.version> <expiring.map.version>0.5.10</expiring.map.version>
</properties> </properties>
@ -367,7 +367,7 @@
<dependency> <dependency>
<groupId>org.eclipse.jetty.websocket</groupId> <groupId>org.eclipse.jetty.websocket</groupId>
<artifactId>websocket-server</artifactId> <artifactId>websocket-server</artifactId>
<version>9.4.49.v20220914</version> <version>9.4.50.v20221201</version>
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.springframework</groupId> <groupId>org.springframework</groupId>

View File

@ -41,7 +41,9 @@ public class CatalogGenericExceptionMapper implements ExceptionMapper<Throwable>
@Override @Override
public Response toResponse(Throwable ex) { public Response toResponse(Throwable ex) {
LOG.debug(ex.getMessage()); LOG.debug(ex.getMessage());
if (ex instanceof ProcessingException || ex instanceof IllegalArgumentException) { if (ex instanceof ProcessingException
|| ex instanceof IllegalArgumentException
|| ex instanceof javax.ws.rs.BadRequestException) {
final Response response = BadRequestException.of().getResponse(); final Response response = BadRequestException.of().getResponse();
return Response.fromResponse(response) return Response.fromResponse(response)
.type(MediaType.APPLICATION_JSON_TYPE) .type(MediaType.APPLICATION_JSON_TYPE)

View File

@ -15,6 +15,7 @@ package org.openmetadata.service;
import static java.lang.String.format; import static java.lang.String.format;
import io.dropwizard.jersey.jackson.JacksonFeature;
import io.dropwizard.testing.ConfigOverride; import io.dropwizard.testing.ConfigOverride;
import io.dropwizard.testing.ResourceHelpers; import io.dropwizard.testing.ResourceHelpers;
import io.dropwizard.testing.junit5.DropwizardAppExtension; import io.dropwizard.testing.junit5.DropwizardAppExtension;
@ -24,6 +25,7 @@ import lombok.extern.slf4j.Slf4j;
import org.flywaydb.core.Flyway; import org.flywaydb.core.Flyway;
import org.glassfish.jersey.client.ClientProperties; import org.glassfish.jersey.client.ClientProperties;
import org.glassfish.jersey.client.HttpUrlConnectorProvider; import org.glassfish.jersey.client.HttpUrlConnectorProvider;
import org.glassfish.jersey.client.JerseyClientBuilder;
import org.junit.jupiter.api.AfterAll; import org.junit.jupiter.api.AfterAll;
import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.BeforeAll;
import org.openmetadata.service.fernet.Fernet; import org.openmetadata.service.fernet.Fernet;
@ -69,6 +71,7 @@ public abstract class OpenMetadataApplicationTest {
.table("DATABASE_CHANGE_LOG") .table("DATABASE_CHANGE_LOG")
.locations("filesystem:" + migrationScripsLocation) .locations("filesystem:" + migrationScripsLocation)
.sqlMigrationPrefix("v") .sqlMigrationPrefix("v")
.cleanDisabled(false)
.load(); .load();
flyway.clean(); flyway.clean();
flyway.migrate(); flyway.migrate();
@ -102,10 +105,12 @@ public abstract class OpenMetadataApplicationTest {
} }
public static Client getClient() { public static Client getClient() {
return APP.client() return new JerseyClientBuilder()
.register(new JacksonFeature(APP.getObjectMapper()))
.property(ClientProperties.CONNECT_TIMEOUT, 0) .property(ClientProperties.CONNECT_TIMEOUT, 0)
.property(ClientProperties.READ_TIMEOUT, 0) .property(ClientProperties.READ_TIMEOUT, 0)
.property(HttpUrlConnectorProvider.SET_METHOD_WORKAROUND, true); .property(HttpUrlConnectorProvider.SET_METHOD_WORKAROUND, true)
.build();
} }
public static WebTarget getResource(String collection) { public static WebTarget getResource(String collection) {

57
pom.xml
View File

@ -73,14 +73,14 @@
<properties> <properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<mockito.version>4.8.0</mockito.version> <mockito.version>4.11.0</mockito.version>
<!-- Upgrading slf4j causes dropwizard issues -->
<slf4j.version>1.7.36</slf4j.version> <slf4j.version>1.7.36</slf4j.version>
<jackson.version>2.13.4</jackson.version> <jackson.version>2.14.1</jackson.version>
<jackson-databind.version>2.13.4.1</jackson-databind.version> <jackson-databind.version>2.14.1</jackson-databind.version>
<dropwizard.version>2.0.34</dropwizard.version> <dropwizard.version>2.1.4</dropwizard.version>
<diffMatch.version>1.0</diffMatch.version> <diffMatch.version>1.0</diffMatch.version>
<dropwizard-jdbi3.version>2.0.34</dropwizard-jdbi3.version> <jersey-bom.version>2.38</jersey-bom.version>
<jersey-bom.version>2.35</jersey-bom.version>
<javax.ws.rs-api.version>2.1.1</javax.ws.rs-api.version> <javax.ws.rs-api.version>2.1.1</javax.ws.rs-api.version>
<!-- update from here --> <!-- update from here -->
<javax.servlet-api.version>3.1.0</javax.servlet-api.version> <javax.servlet-api.version>3.1.0</javax.servlet-api.version>
@ -93,27 +93,28 @@
<jaxb.version>3.0.2</jaxb.version> <jaxb.version>3.0.2</jaxb.version>
<wiremock-standalone.version>2.15.0</wiremock-standalone.version> <wiremock-standalone.version>2.15.0</wiremock-standalone.version>
<jacoco-plugin.version>0.8.8</jacoco-plugin.version> <jacoco-plugin.version>0.8.8</jacoco-plugin.version>
<jdbi3.version>3.34.0</jdbi3.version> <jdbi3.version>3.35.0</jdbi3.version>
<commons-cli.version>1.5.0</commons-cli.version> <commons-cli.version>1.5.0</commons-cli.version>
<commons-io.version>2.11.0</commons-io.version> <commons-io.version>2.11.0</commons-io.version>
<flyway.version>8.5.11</flyway.version> <flyway.version>9.10.2</flyway.version>
<redshift-jdbc.version>2.1.0.9</redshift-jdbc.version> <redshift-jdbc.version>2.1.0.10</redshift-jdbc.version>
<gson.version>2.9.1</gson.version> <gson.version>2.10</gson.version>
<mysql.connector.version>8.0.30</mysql.connector.version> <mysql.connector.version>8.0.31</mysql.connector.version>
<postgres.connector.version>42.5.1</postgres.connector.version> <postgres.connector.version>42.5.1</postgres.connector.version>
<jsonschema2pojo.version>1.1.2</jsonschema2pojo.version> <jsonschema2pojo.version>1.1.2</jsonschema2pojo.version>
<commons-lang.version>2.6</commons-lang.version> <commons-lang.version>2.6</commons-lang.version>
<lombok.version>1.18.24</lombok.version> <lombok.version>1.18.24</lombok.version>
<tomcat-jdbc.version>10.1.1</tomcat-jdbc.version> <tomcat-jdbc.version>10.1.4</tomcat-jdbc.version>
<!-- We need ElasticSearch client to be compatible with both ElasticSearch and AWS OpenSearch <!-- We need ElasticSearch client to be compatible with both ElasticSearch and AWS OpenSearch
This compatibility broken in 7.14, so lets keep this version pinned to 7.13.x This compatibility broken in 7.14, so lets keep this version pinned to 7.13.x
--> -->
<elasticsearch.version>7.13.4</elasticsearch.version> <elasticsearch.version>7.13.4</elasticsearch.version>
<httpasyncclient.version>4.1.5</httpasyncclient.version> <httpasyncclient.version>4.1.5</httpasyncclient.version>
<openapiswagger.version>2.2.3</openapiswagger.version> <openapiswagger.version>2.2.7</openapiswagger.version>
<spring-security-kerberos-core.version>1.0.1.RELEASE</spring-security-kerberos-core.version> <spring-security-kerberos-core.version>1.0.1.RELEASE</spring-security-kerberos-core.version>
<httpclient.version>4.5.13</httpclient.version> <httpclient.version>4.5.14</httpclient.version>
<spring.version>5.3.23</spring.version> <!-- Upgrading to spring version 6.x requires Java 17 -->
<spring.version>5.3.24</spring.version>
<log4j.version>2.19.0</log4j.version> <log4j.version>2.19.0</log4j.version>
<org.junit.jupiter.version>5.9.1</org.junit.jupiter.version> <org.junit.jupiter.version>5.9.1</org.junit.jupiter.version>
<dropwizard-health.version>1.7.2</dropwizard-health.version> <dropwizard-health.version>1.7.2</dropwizard-health.version>
@ -133,19 +134,20 @@
<sonar.skip>false</sonar.skip> <sonar.skip>false</sonar.skip>
<sonar.dynamicAnalysis>reuseReports</sonar.dynamicAnalysis> <sonar.dynamicAnalysis>reuseReports</sonar.dynamicAnalysis>
<testng.version>7.6.1</testng.version> <testng.version>7.6.1</testng.version>
<dropwizard-micrometer.version>2.0.5</dropwizard-micrometer.version> <!-- Micrometer upgrade to 3.x requires Dropwizard > 3.x -->
<json-schema-validator.version>1.0.73</json-schema-validator.version> <dropwizard-micrometer.version>2.0.9</dropwizard-micrometer.version>
<java-jwt.version>3.19.2</java-jwt.version> <json-schema-validator.version>1.0.76</json-schema-validator.version>
<java-jwt.version>3.19.3</java-jwt.version>
<jwks-rsa.version>0.21.2</jwks-rsa.version> <jwks-rsa.version>0.21.2</jwks-rsa.version>
<jjwt.version>0.9.1</jjwt.version> <jjwt.version>0.9.1</jjwt.version>
<rerunner-jupiter.version>2.1.6</rerunner-jupiter.version> <rerunner-jupiter.version>2.1.6</rerunner-jupiter.version>
<freemarker.version>2.3.31</freemarker.version> <freemarker.version>2.3.31</freemarker.version>
<passay.version>1.6.2</passay.version> <passay.version>1.6.2</passay.version>
<bcrypt.version>0.9.0</bcrypt.version> <bcrypt.version>0.9.0</bcrypt.version>
<simplejavamail.version>7.5.0</simplejavamail.version> <simplejavamail.version>7.5.2</simplejavamail.version>
<dropwizardkafka.version>1.8.0</dropwizardkafka.version> <dropwizardkafka.version>1.8.0</dropwizardkafka.version>
<maven-release-plugin.version>2.5.3</maven-release-plugin.version> <maven-release-plugin.version>2.5.3</maven-release-plugin.version>
<unboundsdk.version>6.0.6</unboundsdk.version> <unboundsdk.version>6.0.7</unboundsdk.version>
</properties> </properties>
<dependencyManagement> <dependencyManagement>
<dependencies> <dependencies>
@ -223,7 +225,7 @@
<dependency> <dependency>
<groupId>io.dropwizard</groupId> <groupId>io.dropwizard</groupId>
<artifactId>dropwizard-jdbi3</artifactId> <artifactId>dropwizard-jdbi3</artifactId>
<version>${dropwizard-jdbi3.version}</version> <version>${dropwizard.version}</version>
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.jdbi</groupId> <groupId>org.jdbi</groupId>
@ -265,7 +267,7 @@
<dependency> <dependency>
<groupId>org.flywaydb</groupId> <groupId>org.flywaydb</groupId>
<artifactId>flyway-mysql</artifactId> <artifactId>flyway-mysql</artifactId>
<version>9.0.1</version> <version>${flyway.version}</version>
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.postgresql</groupId> <groupId>org.postgresql</groupId>
@ -370,7 +372,7 @@
<dependency> <dependency>
<groupId>jakarta.xml.bind</groupId> <groupId>jakarta.xml.bind</groupId>
<artifactId>jakarta.xml.bind-api</artifactId> <artifactId>jakarta.xml.bind-api</artifactId>
<version>3.0.1</version> <version>4.0.0</version>
</dependency> </dependency>
<!-- Runtime, com.sun.xml.bind module --> <!-- Runtime, com.sun.xml.bind module -->
@ -491,7 +493,8 @@
<dependency> <dependency>
<groupId>org.eclipse.jetty</groupId> <groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-io</artifactId> <artifactId>jetty-io</artifactId>
<version>9.4.40.v20210413</version> <!-- 9.x required for Dropwizard 2.1.x -->
<version>9.4.50.v20221201</version>
</dependency> </dependency>
<!-- avoid security issue https://security.snyk.io/vuln/SNYK-JAVA-ORGGLASSFISH-1297098 --> <!-- avoid security issue https://security.snyk.io/vuln/SNYK-JAVA-ORGGLASSFISH-1297098 -->
@ -505,14 +508,14 @@
<dependency> <dependency>
<groupId>com.fasterxml.jackson.dataformat</groupId> <groupId>com.fasterxml.jackson.dataformat</groupId>
<artifactId>jackson-dataformat-cbor</artifactId> <artifactId>jackson-dataformat-cbor</artifactId>
<version>2.13.3</version> <version>2.14.1</version>
</dependency> </dependency>
<!-- avoid security issue https://security.snyk.io/vuln/SNYK-JAVA-ORGYAML-2806360 --> <!-- avoid security issue https://security.snyk.io/vuln/SNYK-JAVA-ORGYAML-2806360 -->
<dependency> <dependency>
<groupId>org.yaml</groupId> <groupId>org.yaml</groupId>
<artifactId>snakeyaml</artifactId> <artifactId>snakeyaml</artifactId>
<version>1.32</version> <version>1.33</version>
</dependency> </dependency>
</dependencies> </dependencies>
</dependencyManagement> </dependencyManagement>
@ -882,4 +885,4 @@
</plugin> </plugin>
</plugins> </plugins>
</build> </build>
</project> </project>