Skip to content

Conversation

okotsopoulos
Copy link
Contributor

@okotsopoulos okotsopoulos commented Aug 7, 2024

Jira ticket: https://broadworkbench.atlassian.net/browse/DCJ-400

Addresses

Minor and patch dependency updates, which should take care of most of the updates proposed in #1763 (TDR's first grouped Dependabot PR) and triangulate on remaining troublesome ones.

I broke up my changes into logical commits for easier review.

Summary of changes

Package From To
com.google.cloud:libraries-bom 26.30.0 26.43.0
org.liquibase:liquibase-core 4.26.0 4.29.1
org.antlr:ST4 4.3 4.3.4
net.javacrumbs.shedlock:shedlock-provider-jdbc-template 5.2.0 5.14.0
net.javacrumbs.shedlock:shedlock-spring 5.2.0 5.14.0
bio.terra:terra-policy-client 1.0.11-SNAPSHOT 1.0.15-SNAPSHOT
bio.terra:externalcreds-client-resttemplate 1.3.0-SNAPSHOT 1.45.0-SNAPSHOT
com.fasterxml.jackson.core:jackson-core 2.15.3 2.17.2 (now versioned by Spring dependency manager)
com.fasterxml.jackson.core:jackson-annotations 2.15.3 2.17.2 (now versioned by Spring dependency manager)
com.fasterxml.jackson.core:jackson-databind 2.15.3 2.17.2 (now versioned by Spring dependency manager)
com.azure:azure-identity 1.11.1 1.13.2
com.azure.resourcemanager:azure-resourcemanager 2.34.0 2.41.0
com.azure:azure-storage-common 12.24.1 12.26.0
com.azure:azure-storage-file-datalake 12.18.1 12.20.0
com.azure:azure-data-tables 12.3.18 12.4.3
io.opentelemetry.instrumentation:opentelemetry-instrumentation-annotations 2.2.0 2.6.0
org.apache.parquet:parquet-common 1.12.0 1.14.1
org.apache.parquet:parquet-hadoop 1.12.0 1.14.1
org.apache.parquet:parquet-hadoop-bundle 1.12.0 1.14.1
org.apache.parquet:parquet-encoding 1.12.0 1.14.1
org.apache.parquet:parquet-column 1.12.0 1.14.1
org.apache.hadoop:hadoop-common 3.3.1 3.4.0
org.apache.hadoop:hadoop-azure 3.3.1 Removed (unused)
org.apache.hadoop:hadoop-mapreduce-client-core 3.3.1 3.4.0
au.com.dius.pact.provider:junit5 4.3.19 4.6.12
au.com.dius.pact.provider:junit5spring 4.3.19 4.6.12
org.antlr:antlr4 4.8 4.13.2
org.codehaus.groovy:groovy 3.0.7 Removed (unused)
info.picocli:picocli 4.7.5 4.7.6
io.zonky.test:embedded-database-spring-test 2.5.0 2.5.1
io.zonky.test:embedded-postgres 2.0.6 2.0.7
com.google.cloud.tools.jib 3.2.0 3.4.3
org.gradle.test-retry 1.5.8 1.5.10
org.springframework.boot 3.2.4 3.3.2
io.spring.dependency-management 1.1.4 1.1.6
com.gorylenko.gradle-git-properties 2.4.1 2.4.2

Testing Strategy

And Spring Dependency Manager 1.1.4 -> 1.1.6.

Removed Spring Boot dependency overrides for transitive dependency vulnerabilities that are no longer needed.
Removed dependency version specifications that can be derived from Spring Dependency Manager.
Fix breaking change: TableResult class is now abstract, we now use its builder to instantiate.
Was one patch version short previously.
@okotsopoulos okotsopoulos added dependency Pull requests that update a dependency file gradle Pull request that updates a Gradle file labels Aug 7, 2024
org.antlr:ST4 4.3 -> 4.3.4
org.antlr:antlr4 4.8 -> 4.13.2
Both 5.2.0 -> 5.14.0:
net.javacrumbs.shedlock:shedlock-provider-jdbc-template
net.javacrumbs.shedlock:shedlock-spring
Address breaking change.
getPao method now takes an additional argument:
includeDeleted - Include deleted policy attribute objects in the response. Defaults to false.
… 1.45.0-SNAPSHOT

Fix breaking change and make unit test stubs more precise.
Dependabot will try to do it anyway!
Removed unused org.apache.hadoop dependencies hadoop-azure and hadoop-mapreduce-client-core.

Needed to exclude the competing logback implementation for unit tests to pass.
Otherwise they were failing with the following error:
Caused by: java.lang.IllegalArgumentException: LoggerFactory is not a Logback LoggerContext but Logback is on the classpath. Either remove Logback or the competing implementation (class org.slf4j.reload4j.Reload4jLoggerFactory loaded from file:/Users/okotsopo/.gradle/caches/modules-2/files-2.1/org.slf4j/slf4j-reload4j/2.0.13/e8de9f981349fee84f8d708cd0ed2337d193faed/slf4j-reload4j-2.0.13.jar). If you are using WebLogic you will need to add 'org.slf4j' to prefer-application-packages in WEB-INF/weblogic.xml: org.slf4j.reload4j.Reload4jLoggerFactory
It was previously needed for logback, but we use XML now (logback hasn't supported groovy since 2021: https://logback.qos.ch/news.html#1.2.9)
@okotsopoulos okotsopoulos changed the title [DCJ-400] Upgrade Spring Boot 3.2.4 -> 3.3.2 [DCJ-400] Minor and patch dependency updates, inc. Spring Boot 3.2.4 -> 3.3.2 Aug 7, 2024
@@ -162,19 +162,13 @@ configurations {
runtimeClasspath
}

// Spring Boot 3.2.4 pulls in opentelemetry-bom 1.31.0.
// It must have version >= 1.34.1 for compatibility with terra-common-lib 1.1.10:
ext['opentelemetry.version'] = '1.36.0'
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Now 1.37.0.

// It must have version >= 1.34.1 for compatibility with terra-common-lib 1.1.10:
ext['opentelemetry.version'] = '1.36.0'
// Spring Boot 3.2.4 pulls in io.netty:netty-bom 4.1.107.Final which is impacted by CVE-2024-29025.
ext['netty.version'] = '4.1.108.Final'
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.


// Need groovy on the class path for the logback config. Could use XML and skip this dependency,
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We use XML now, and logback hasn't supported groovy since 2021: https://logback.qos.ch/news.html#1.2.9

… test

SnapshotExportIntegrationTest.snapshotGsPathExportTest failed without it.
Copy link

sonarqubecloud bot commented Aug 8, 2024

@okotsopoulos okotsopoulos marked this pull request as ready for review August 8, 2024 15:12
@okotsopoulos okotsopoulos requested review from a team as code owners August 8, 2024 15:12
@okotsopoulos okotsopoulos requested review from rushtong and fboulnois and removed request for a team August 8, 2024 15:12
Copy link
Contributor

@rushtong rushtong left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍🏽

@okotsopoulos okotsopoulos merged commit 9e75afb into develop Aug 8, 2024
14 checks passed
@okotsopoulos okotsopoulos deleted the okotsopo-DCJ-400-minor-patch-deps branch August 8, 2024 15:34
testImplementation ('org.apache.hadoop:hadoop-common:3.3.1') {
implementation 'io.opentelemetry.instrumentation:opentelemetry-instrumentation-annotations:2.6.0'

testImplementation 'org.apache.parquet:parquet-common:1.14.1'
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For repeated values like this we could use a variable

dependencies {
  ext {
    parquet = '1.14.1'
  }
  testImplementation "org.apache.parquet:parquet-common:${parquet}"
}

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependency Pull requests that update a dependency file gradle Pull request that updates a Gradle file
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants