From 1977974129e56bb58052dfecf753f36fcc74c579 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sun, 8 Feb 2026 00:13:15 +0000 Subject: [PATCH 1/4] Update all dependencies to latest versions MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Gradle: 7.4 → 8.14.4 - gRPC: 1.59.0 → 1.78.0 - Protobuf: 3.12.0 → 3.25.8 - Jackson: 2.15.3 → 2.18.3 - OpenTelemetry: 1.25.0 → 1.58.0 - Azure Core: 1.45.0 → 1.57.1 - Azure Identity: 1.11.1 → 1.18.1 - JUnit: 5.7.2/5.10.0/5.6.2 → 5.14.2 - Mockito: 5.3.1 → 5.21.0 - REST Assured: 5.3.0 → 5.5.7 - SpotBugs plugin: 5.2.1 → 6.4.8 - SpotBugs tool: 4.9.2 → 4.9.8 - Protobuf plugin: 0.8.16 → 0.9.6 - Test-retry plugin: 1.4.1 → 1.6.4 - Azure Functions plugin: 1.11.1 → 1.16.1 - Azure Functions Java library: 3.0.0/3.1.0 → 3.2.3 - Azure Functions Java SPI: 1.0.0 → 1.1.0 - Spring Boot: 2.5.2 → 2.7.18 - Lombok: 1.18.22 → 1.18.42 Co-authored-by: torosent <17064840+torosent@users.noreply.github.com> --- azurefunctions/build.gradle | 14 ++++++------ azuremanaged/build.gradle | 27 ++++++++++++------------ client/build.gradle | 27 ++++++++++++------------ endtoendtests/build.gradle | 10 ++++----- gradle/wrapper/gradle-wrapper.properties | 2 +- samples-azure-functions/build.gradle | 10 ++++----- samples/build.gradle | 12 +++++------ 7 files changed, 52 insertions(+), 50 deletions(-) diff --git a/azurefunctions/build.gradle b/azurefunctions/build.gradle index e82a5e7c..080b0af2 100644 --- a/azurefunctions/build.gradle +++ b/azurefunctions/build.gradle @@ -2,14 +2,14 @@ plugins { id 'java-library' id 'maven-publish' id 'signing' - id 'com.github.spotbugs' version '5.2.1' + id 'com.github.spotbugs' version '6.4.8' } group 'com.microsoft' version = '1.6.3' archivesBaseName = 'durabletask-azure-functions' -def protocVersion = '3.12.0' +def protocVersion = '3.25.8' repositories { maven { @@ -19,9 +19,9 @@ repositories { dependencies { api project(':client') - implementation group: 'com.microsoft.azure.functions', name: 'azure-functions-java-library', version: '3.0.0' + implementation group: 'com.microsoft.azure.functions', name: 'azure-functions-java-library', version: '3.2.3' implementation "com.google.protobuf:protobuf-java:${protocVersion}" - compileOnly "com.microsoft.azure.functions:azure-functions-java-spi:1.0.0" + compileOnly "com.microsoft.azure.functions:azure-functions-java-spi:1.1.0" } sourceCompatibility = JavaVersion.VERSION_1_8 @@ -88,9 +88,9 @@ java { } spotbugs { - toolVersion = '4.9.2' - effort = 'max' - reportLevel = 'high' + toolVersion = '4.9.8' + effort = com.github.spotbugs.snom.Effort.valueOf('MAX') + reportLevel = com.github.spotbugs.snom.Confidence.valueOf('HIGH') ignoreFailures = true excludeFilter = file('spotbugs-exclude.xml') } diff --git a/azuremanaged/build.gradle b/azuremanaged/build.gradle index 53f986da..61d6aa16 100644 --- a/azuremanaged/build.gradle +++ b/azuremanaged/build.gradle @@ -8,20 +8,20 @@ plugins { id 'java' - id 'com.google.protobuf' version '0.8.16' + id 'com.google.protobuf' version '0.9.6' id 'idea' id 'maven-publish' id 'signing' - id 'com.github.spotbugs' version '5.2.1' + id 'com.github.spotbugs' version '6.4.8' } archivesBaseName = 'durabletask-azuremanaged' group 'com.microsoft' version = '1.6.3' -def grpcVersion = '1.59.0' -def azureCoreVersion = '1.45.0' -def azureIdentityVersion = '1.11.1' +def grpcVersion = '1.78.0' +def azureCoreVersion = '1.57.1' +def azureIdentityVersion = '1.18.1' // When build on local, you need to set this value to your local jdk11 directory. // Java11 is used to compile and run all the tests. def PATH_TO_TEST_JAVA_RUNTIME = System.env.JDK_11 ?: System.getProperty("java.home") @@ -40,12 +40,13 @@ dependencies { implementation "com.azure:azure-identity:${azureIdentityVersion}" // Test dependencies - testImplementation 'org.junit.jupiter:junit-jupiter-api:5.10.0' - testImplementation 'org.junit.jupiter:junit-jupiter-params:5.10.0' - testImplementation 'org.mockito:mockito-core:5.3.1' - testImplementation 'org.mockito:mockito-junit-jupiter:5.3.1' + testImplementation 'org.junit.jupiter:junit-jupiter-api:5.14.2' + testImplementation 'org.junit.jupiter:junit-jupiter-params:5.14.2' + testImplementation 'org.mockito:mockito-core:5.21.0' + testImplementation 'org.mockito:mockito-junit-jupiter:5.21.0' testImplementation "io.grpc:grpc-netty:${grpcVersion}" - testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.10.0' + testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.14.2' + testRuntimeOnly 'org.junit.platform:junit-platform-launcher' } compileJava { @@ -123,9 +124,9 @@ java { } spotbugs { - toolVersion = '4.9.2' - effort = 'max' - reportLevel = 'high' + toolVersion = '4.9.8' + effort = com.github.spotbugs.snom.Effort.valueOf('MAX') + reportLevel = com.github.spotbugs.snom.Confidence.valueOf('HIGH') ignoreFailures = true excludeFilter = file('spotbugs-exclude.xml') } diff --git a/client/build.gradle b/client/build.gradle index a39d855a..926d4124 100644 --- a/client/build.gradle +++ b/client/build.gradle @@ -1,24 +1,24 @@ plugins { id 'java-library' - id 'com.google.protobuf' version '0.8.16' + id 'com.google.protobuf' version '0.9.6' // Generate IntelliJ IDEA's .idea & .iml project files id 'idea' id 'maven-publish' id 'signing' - id 'com.github.spotbugs' version '5.2.1' - id 'org.gradle.test-retry' version '1.4.1' + id 'com.github.spotbugs' version '6.4.8' + id 'org.gradle.test-retry' version '1.6.4' } group 'com.microsoft' version = '1.6.3' archivesBaseName = 'durabletask-client' -def grpcVersion = '1.59.0' -def protocVersion = '3.12.0' -def jacksonVersion = '2.15.3' -def openTelemetryVersion = '1.25.0' -def azureCoreVersion = '1.45.0' -def azureIdentityVersion = '1.11.1' +def grpcVersion = '1.78.0' +def protocVersion = '3.25.8' +def jacksonVersion = '2.18.3' +def openTelemetryVersion = '1.58.0' +def azureCoreVersion = '1.57.1' +def azureIdentityVersion = '1.18.1' // When build on local, you need to set this value to your local jdk11 directory. // Java11 is used to compile and run all the tests. // Example for Windows: C:/Program Files/Java/openjdk-11.0.12_7/ @@ -41,8 +41,9 @@ dependencies { implementation "io.opentelemetry:opentelemetry-api:${openTelemetryVersion}" implementation "io.opentelemetry:opentelemetry-context:${openTelemetryVersion}" - testImplementation(platform('org.junit:junit-bom:5.7.2')) + testImplementation(platform('org.junit:junit-bom:5.14.2')) testImplementation('org.junit.jupiter:junit-jupiter') + testRuntimeOnly('org.junit.platform:junit-platform-launcher') testImplementation project(':azuremanaged') testImplementation "com.azure:azure-core:${azureCoreVersion}" testImplementation "com.azure:azure-identity:${azureIdentityVersion}" @@ -204,9 +205,9 @@ java { } spotbugs { - toolVersion = '4.9.2' - effort = 'max' - reportLevel = 'high' + toolVersion = '4.9.8' + effort = com.github.spotbugs.snom.Effort.valueOf('MAX') + reportLevel = com.github.spotbugs.snom.Confidence.valueOf('HIGH') ignoreFailures = true excludeFilter = file('spotbugs-exclude.xml') } diff --git a/endtoendtests/build.gradle b/endtoendtests/build.gradle index 9aad765b..9f63a880 100644 --- a/endtoendtests/build.gradle +++ b/endtoendtests/build.gradle @@ -1,6 +1,6 @@ plugins { id 'java' - id "com.microsoft.azure.azurefunctions" version "1.11.1" + id "com.microsoft.azure.azurefunctions" version "1.16.1" } group 'com.durabletask.endtoend' @@ -18,10 +18,10 @@ dependencies { implementation project(':client') implementation project(':azurefunctions') - implementation 'com.microsoft.azure.functions:azure-functions-java-library:3.1.0' - testImplementation 'org.junit.jupiter:junit-jupiter:5.6.2' - testImplementation 'io.rest-assured:rest-assured:5.3.0' - testImplementation 'io.rest-assured:json-path:5.3.0' + implementation 'com.microsoft.azure.functions:azure-functions-java-library:3.2.3' + testImplementation 'org.junit.jupiter:junit-jupiter:5.14.2' + testImplementation 'io.rest-assured:rest-assured:5.5.7' + testImplementation 'io.rest-assured:json-path:5.5.7' } diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 41dfb879..03b32a2e 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,5 +1,5 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-7.4-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.14.4-bin.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists diff --git a/samples-azure-functions/build.gradle b/samples-azure-functions/build.gradle index 4f283c57..7ee12735 100644 --- a/samples-azure-functions/build.gradle +++ b/samples-azure-functions/build.gradle @@ -1,6 +1,6 @@ plugins { id 'java' - id "com.microsoft.azure.azurefunctions" version "1.11.1" + id "com.microsoft.azure.azurefunctions" version "1.16.1" } group 'com.functions' @@ -18,10 +18,10 @@ dependencies { implementation project(':client') implementation project(':azurefunctions') - implementation 'com.microsoft.azure.functions:azure-functions-java-library:3.0.0' - testImplementation 'org.junit.jupiter:junit-jupiter:5.6.2' - testImplementation 'io.rest-assured:rest-assured:5.3.0' - testImplementation 'io.rest-assured:json-path:5.3.0' + implementation 'com.microsoft.azure.functions:azure-functions-java-library:3.2.3' + testImplementation 'org.junit.jupiter:junit-jupiter:5.14.2' + testImplementation 'io.rest-assured:rest-assured:5.5.7' + testImplementation 'io.rest-assured:json-path:5.5.7' } diff --git a/samples/build.gradle b/samples/build.gradle index 5cb638df..74f13f97 100644 --- a/samples/build.gradle +++ b/samples/build.gradle @@ -1,11 +1,11 @@ plugins { - id 'org.springframework.boot' version '2.5.2' + id 'org.springframework.boot' version '2.7.18' id 'java' } group 'io.durabletask' version = '0.1.0' -def grpcVersion = '1.59.0' +def grpcVersion = '1.78.0' archivesBaseName = 'durabletask-samples' bootJar { @@ -22,16 +22,16 @@ dependencies { implementation project(':azuremanaged') implementation 'org.springframework.boot:spring-boot-starter-web' - implementation platform("org.springframework.boot:spring-boot-dependencies:2.5.2") + implementation platform("org.springframework.boot:spring-boot-dependencies:2.7.18") implementation 'org.springframework.boot:spring-boot-starter' // https://github.com/grpc/grpc-java#download implementation "io.grpc:grpc-protobuf:${grpcVersion}" implementation "io.grpc:grpc-stub:${grpcVersion}" runtimeOnly "io.grpc:grpc-netty-shaded:${grpcVersion}" - implementation 'com.azure:azure-identity:1.15.0' + implementation 'com.azure:azure-identity:1.18.1' // install lombok - annotationProcessor 'org.projectlombok:lombok:1.18.22' - compileOnly 'org.projectlombok:lombok:1.18.22' + annotationProcessor 'org.projectlombok:lombok:1.18.42' + compileOnly 'org.projectlombok:lombok:1.18.42' } \ No newline at end of file From 20672937448af1e30d7b85a193442ee72d331c80 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sun, 8 Feb 2026 00:43:41 +0000 Subject: [PATCH 2/4] Add junit-platform-launcher to endtoendtests and samples-azure-functions JUnit 5.12+ requires junit-platform-launcher to be explicitly declared. This was already added to client and azuremanaged modules but was missing from endtoendtests and samples-azure-functions, causing the functions-e2e-tests and functions-sample-tests CI jobs to fail. Co-authored-by: torosent <17064840+torosent@users.noreply.github.com> --- endtoendtests/build.gradle | 1 + samples-azure-functions/build.gradle | 1 + 2 files changed, 2 insertions(+) diff --git a/endtoendtests/build.gradle b/endtoendtests/build.gradle index 9f63a880..e0c02e62 100644 --- a/endtoendtests/build.gradle +++ b/endtoendtests/build.gradle @@ -20,6 +20,7 @@ dependencies { implementation 'com.microsoft.azure.functions:azure-functions-java-library:3.2.3' testImplementation 'org.junit.jupiter:junit-jupiter:5.14.2' + testRuntimeOnly 'org.junit.platform:junit-platform-launcher' testImplementation 'io.rest-assured:rest-assured:5.5.7' testImplementation 'io.rest-assured:json-path:5.5.7' diff --git a/samples-azure-functions/build.gradle b/samples-azure-functions/build.gradle index 7ee12735..26b98853 100644 --- a/samples-azure-functions/build.gradle +++ b/samples-azure-functions/build.gradle @@ -20,6 +20,7 @@ dependencies { implementation 'com.microsoft.azure.functions:azure-functions-java-library:3.2.3' testImplementation 'org.junit.jupiter:junit-jupiter:5.14.2' + testRuntimeOnly 'org.junit.platform:junit-platform-launcher' testImplementation 'io.rest-assured:rest-assured:5.5.7' testImplementation 'io.rest-assured:json-path:5.5.7' From e30d0ebda64c0404d92e52acbef862f0e96b51be Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sun, 8 Feb 2026 01:30:33 +0000 Subject: [PATCH 3/4] Fix private @AfterEach method in IntegrationTestBase JUnit 5.12+ warns that @AfterEach methods should not be private, and this will be disallowed in a future release. Changed shutdown() from private to package-private visibility. Co-authored-by: torosent <17064840+torosent@users.noreply.github.com> --- .../java/com/microsoft/durabletask/IntegrationTestBase.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/client/src/test/java/com/microsoft/durabletask/IntegrationTestBase.java b/client/src/test/java/com/microsoft/durabletask/IntegrationTestBase.java index 09ba5016..01a485d9 100644 --- a/client/src/test/java/com/microsoft/durabletask/IntegrationTestBase.java +++ b/client/src/test/java/com/microsoft/durabletask/IntegrationTestBase.java @@ -22,7 +22,7 @@ public class IntegrationTestBase { private ManagedChannel clientChannel; @AfterEach - private void shutdown() { + void shutdown() { if (this.server != null) { this.server.stop(); this.server = null; From 93f15607d9f0f6ce781eb12a89a41ca56bcd8446 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sun, 8 Feb 2026 04:03:06 +0000 Subject: [PATCH 4/4] Fix versionless junit-platform-launcher in azuremanaged, endtoendtests, and samples-azure-functions - azuremanaged: Pin junit-platform-launcher to explicit version 1.14.2 - endtoendtests: Add JUnit BOM to resolve launcher version via platform - samples-azure-functions: Add JUnit BOM to resolve launcher version via platform Co-authored-by: torosent <17064840+torosent@users.noreply.github.com> --- azuremanaged/build.gradle | 2 +- endtoendtests/build.gradle | 3 ++- samples-azure-functions/build.gradle | 3 ++- 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/azuremanaged/build.gradle b/azuremanaged/build.gradle index 61d6aa16..1f92ea33 100644 --- a/azuremanaged/build.gradle +++ b/azuremanaged/build.gradle @@ -46,7 +46,7 @@ dependencies { testImplementation 'org.mockito:mockito-junit-jupiter:5.21.0' testImplementation "io.grpc:grpc-netty:${grpcVersion}" testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.14.2' - testRuntimeOnly 'org.junit.platform:junit-platform-launcher' + testRuntimeOnly 'org.junit.platform:junit-platform-launcher:1.14.2' } compileJava { diff --git a/endtoendtests/build.gradle b/endtoendtests/build.gradle index e0c02e62..da369c06 100644 --- a/endtoendtests/build.gradle +++ b/endtoendtests/build.gradle @@ -19,7 +19,8 @@ dependencies { implementation project(':azurefunctions') implementation 'com.microsoft.azure.functions:azure-functions-java-library:3.2.3' - testImplementation 'org.junit.jupiter:junit-jupiter:5.14.2' + testImplementation platform('org.junit:junit-bom:5.14.2') + testImplementation 'org.junit.jupiter:junit-jupiter' testRuntimeOnly 'org.junit.platform:junit-platform-launcher' testImplementation 'io.rest-assured:rest-assured:5.5.7' testImplementation 'io.rest-assured:json-path:5.5.7' diff --git a/samples-azure-functions/build.gradle b/samples-azure-functions/build.gradle index 26b98853..418805e0 100644 --- a/samples-azure-functions/build.gradle +++ b/samples-azure-functions/build.gradle @@ -19,7 +19,8 @@ dependencies { implementation project(':azurefunctions') implementation 'com.microsoft.azure.functions:azure-functions-java-library:3.2.3' - testImplementation 'org.junit.jupiter:junit-jupiter:5.14.2' + testImplementation platform('org.junit:junit-bom:5.14.2') + testImplementation 'org.junit.jupiter:junit-jupiter' testRuntimeOnly 'org.junit.platform:junit-platform-launcher' testImplementation 'io.rest-assured:rest-assured:5.5.7' testImplementation 'io.rest-assured:json-path:5.5.7'