Skip to content

Commit 8a671dd

Browse files
authored
Update Jackson, Netty, Reactor, and Vert.x dependencies (#48636)
* Update Jackson, Netty, Reactor, and Vert.x dependencies * Update POM validation versions * Try to fix failing Batch tests * Clean up linting
1 parent 6aec1a3 commit 8a671dd

47 files changed

Lines changed: 248 additions & 246 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

common/perf-test-core/pom.xml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -55,8 +55,8 @@
5555
<includes combine.children="append">
5656
<!-- Special allowance for performance libraries as they aren't shipped. -->
5757
<include>com.beust:jcommander:[1.82]</include> <!-- {x-include-update;com.beust:jcommander;external_dependency} -->
58-
<include>io.vertx:vertx-codegen:[4.5.23]</include> <!-- {x-include-update;io.vertx:vertx-codegen;external_dependency} -->
59-
<include>io.projectreactor:reactor-core:[3.7.14]</include> <!-- {x-include-update;io.projectreactor:reactor-core;external_dependency} -->
58+
<include>io.vertx:vertx-codegen:[4.5.26]</include> <!-- {x-include-update;io.vertx:vertx-codegen;external_dependency} -->
59+
<include>io.projectreactor:reactor-core:[3.7.17]</include> <!-- {x-include-update;io.projectreactor:reactor-core;external_dependency} -->
6060
</includes>
6161
</bannedDependencies>
6262
</rules>
@@ -94,7 +94,7 @@
9494
<dependency>
9595
<groupId>io.vertx</groupId>
9696
<artifactId>vertx-codegen</artifactId>
97-
<version>4.5.23</version> <!-- {x-version-update;io.vertx:vertx-codegen;external_dependency} -->
97+
<version>4.5.26</version> <!-- {x-version-update;io.vertx:vertx-codegen;external_dependency} -->
9898
<scope>provided</scope>
9999
</dependency>
100100
<dependency>

eng/bomgenerator/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@
3838
<dependency>
3939
<groupId>com.fasterxml.jackson.dataformat</groupId>
4040
<artifactId>jackson-dataformat-xml</artifactId>
41-
<version>2.18.4</version> <!-- {x-version-update;com.fasterxml.jackson.dataformat:jackson-dataformat-xml;external_dependency} -->
41+
<version>2.18.6</version> <!-- {x-version-update;com.fasterxml.jackson.dataformat:jackson-dataformat-xml;external_dependency} -->
4242
</dependency>
4343
</dependencies>
4444
<build>

eng/versioning/external_dependencies.txt

Lines changed: 29 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -11,16 +11,16 @@ ch.qos.logback:logback-classic;1.3.14
1111
com.azure:azure-servicebus-jms;2.1.0
1212
com.azure.tools:azure-autorest-customization;1.0.0-beta.11
1313
com.fasterxml:aalto-xml;1.3.3
14-
com.fasterxml.jackson.core:jackson-annotations;2.18.4
15-
com.fasterxml.jackson.core:jackson-core;2.18.4.1
16-
com.fasterxml.jackson.core:jackson-databind;2.18.4
17-
com.fasterxml.jackson.dataformat:jackson-dataformat-xml;2.18.4
18-
com.fasterxml.jackson.dataformat:jackson-dataformat-smile;2.18.4
19-
com.fasterxml.jackson.datatype:jackson-datatype-jsr310;2.18.4
20-
com.fasterxml.jackson.module:jackson-module-afterburner;2.18.4
21-
com.fasterxml.jackson.module:jackson-module-blackbird;2.18.4
22-
com.fasterxml.jackson.module:jackson-module-scala_2.12;2.18.4
23-
com.fasterxml.jackson.module:jackson-module-scala_2.13;2.18.4
14+
com.fasterxml.jackson.core:jackson-annotations;2.18.6
15+
com.fasterxml.jackson.core:jackson-core;2.18.6
16+
com.fasterxml.jackson.core:jackson-databind;2.18.6
17+
com.fasterxml.jackson.dataformat:jackson-dataformat-xml;2.18.6
18+
com.fasterxml.jackson.dataformat:jackson-dataformat-smile;2.18.6
19+
com.fasterxml.jackson.datatype:jackson-datatype-jsr310;2.18.6
20+
com.fasterxml.jackson.module:jackson-module-afterburner;2.18.6
21+
com.fasterxml.jackson.module:jackson-module-blackbird;2.18.6
22+
com.fasterxml.jackson.module:jackson-module-scala_2.12;2.18.6
23+
com.fasterxml.jackson.module:jackson-module-scala_2.13;2.18.6
2424
com.github.spotbugs:spotbugs;4.8.3
2525
com.github.spotbugs:spotbugs-annotations;4.8.3
2626
com.github.spotbugs:spotbugs-maven-plugin;4.8.3.1
@@ -43,24 +43,24 @@ commons-net:commons-net;3.9.0
4343
io.cloudevents:cloudevents-api;2.2.0
4444
io.cloudevents:cloudevents-core;2.2.0
4545
io.fabric8:kubernetes-client;6.12.1
46-
io.netty:netty-buffer;4.1.130.Final
47-
io.netty:netty-common;4.1.130.Final
48-
io.netty:netty-codec;4.1.130.Final
49-
io.netty:netty-codec-http;4.1.130.Final
50-
io.netty:netty-codec-http2;4.1.130.Final
51-
io.netty:netty-handler;4.1.130.Final
52-
io.netty:netty-handler-proxy;4.1.130.Final
53-
io.netty:netty-resolver;4.1.130.Final
54-
io.netty:netty-resolver-dns;4.1.130.Final
55-
io.netty:netty-tcnative-boringssl-static;2.0.74.Final
56-
io.netty:netty-transport;4.1.130.Final
57-
io.netty:netty-transport-native-epoll;4.1.130.Final
58-
io.netty:netty-transport-native-unix-common;4.1.130.Final
59-
io.netty:netty-transport-native-kqueue;4.1.130.Final
60-
io.projectreactor.netty:reactor-netty-http;1.2.13
61-
io.projectreactor:reactor-core;3.7.14
62-
io.vertx:vertx-codegen;4.5.23
63-
io.vertx:vertx-core;4.5.23
46+
io.netty:netty-buffer;4.1.132.Final
47+
io.netty:netty-common;4.1.132.Final
48+
io.netty:netty-codec;4.1.132.Final
49+
io.netty:netty-codec-http;4.1.132.Final
50+
io.netty:netty-codec-http2;4.1.132.Final
51+
io.netty:netty-handler;4.1.132.Final
52+
io.netty:netty-handler-proxy;4.1.132.Final
53+
io.netty:netty-resolver;4.1.132.Final
54+
io.netty:netty-resolver-dns;4.1.132.Final
55+
io.netty:netty-tcnative-boringssl-static;2.0.75.Final
56+
io.netty:netty-transport;4.1.132.Final
57+
io.netty:netty-transport-native-epoll;4.1.132.Final
58+
io.netty:netty-transport-native-unix-common;4.1.132.Final
59+
io.netty:netty-transport-native-kqueue;4.1.132.Final
60+
io.projectreactor.netty:reactor-netty-http;1.2.16
61+
io.projectreactor:reactor-core;3.7.17
62+
io.vertx:vertx-codegen;4.5.26
63+
io.vertx:vertx-core;4.5.26
6464
javax.websocket:javax.websocket-api;1.1
6565
org.apache.ant:ant;1.10.15
6666
org.apache.avro:avro;1.11.4
@@ -124,7 +124,7 @@ io.opentelemetry:opentelemetry-bom;1.58.0
124124
io.opentelemetry.instrumentation:opentelemetry-runtime-telemetry-java8;2.24.0-alpha
125125
io.opentelemetry.instrumentation:opentelemetry-spring-boot-starter;2.24.0
126126
io.opentelemetry.instrumentation:opentelemetry-logback-appender-1.0;2.24.0-alpha
127-
io.projectreactor:reactor-test;3.7.11
127+
io.projectreactor:reactor-test;3.7.17
128128
io.github.hakky54:logcaptor;2.9.3
129129
com.squareup.okio:okio;3.16.0
130130
com.squareup.okio:okio-jvm;3.16.0

sdk/batch/azure-compute-batch/src/test/java/com/azure/compute/batch/BatchClientTestBase.java

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,13 +9,12 @@
99
import com.azure.compute.batch.models.BatchPoolCreateParameters;
1010
import com.azure.compute.batch.models.BatchTask;
1111
import com.azure.compute.batch.models.BatchTaskState;
12-
import com.azure.compute.batch.models.ElevationLevel;
1312
import com.azure.compute.batch.models.BatchTasksListOptions;
1413
import com.azure.compute.batch.models.BatchVmImageReference;
14+
import com.azure.compute.batch.models.ElevationLevel;
1515
import com.azure.compute.batch.models.NetworkConfiguration;
1616
import com.azure.compute.batch.models.UserAccount;
1717
import com.azure.compute.batch.models.VirtualMachineConfiguration;
18-
import com.azure.core.credential.AccessToken;
1918
import com.azure.core.credential.AzureNamedKeyCredential;
2019
import com.azure.core.credential.TokenCredential;
2120
import com.azure.core.http.policy.HttpLogDetailLevel;
@@ -30,6 +29,7 @@
3029
import com.azure.core.test.models.TestProxyRequestMatcher;
3130
import com.azure.core.test.models.TestProxySanitizer;
3231
import com.azure.core.test.models.TestProxySanitizerType;
32+
import com.azure.core.test.utils.MockTokenCredential;
3333
import com.azure.core.util.Configuration;
3434
import com.azure.identity.DefaultAzureCredentialBuilder;
3535
import com.azure.resourcemanager.network.NetworkManager;
@@ -75,8 +75,7 @@ protected void beforeTest() {
7575
.httpClient(getHttpClientOrUsePlayback(getHttpClients().findFirst().orElse(null)))
7676
.httpLogOptions(new HttpLogOptions().setLogLevel(HttpLogDetailLevel.BASIC));
7777
if (getTestMode() == TestMode.PLAYBACK) {
78-
batchClientBuilder.httpClient(interceptorManager.getPlaybackClient())
79-
.credential(request -> Mono.just(new AccessToken("this_is_a_token", OffsetDateTime.MAX)));
78+
batchClientBuilder.httpClient(interceptorManager.getPlaybackClient()).credential(new MockTokenCredential());
8079

8180
addTestRulesOnPlayback(interceptorManager);
8281
} else if (getTestMode() == TestMode.RECORD) {

sdk/batch/azure-compute-batch/src/test/java/com/azure/compute/batch/TaskTests.java

Lines changed: 49 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -36,26 +36,24 @@
3636
import com.azure.json.JsonProviders;
3737
import com.azure.json.JsonReader;
3838
import com.azure.storage.blob.BlobContainerClient;
39-
40-
import reactor.core.publisher.Mono;
41-
4239
import org.junit.jupiter.api.Assertions;
43-
import org.junit.jupiter.api.Assumptions;
4440
import org.junit.jupiter.api.Test;
41+
import org.junit.jupiter.api.condition.DisabledIf;
4542
import org.junit.jupiter.api.parallel.Execution;
4643
import org.junit.jupiter.api.parallel.ExecutionMode;
4744
import org.junit.jupiter.api.parallel.Isolated;
45+
import reactor.core.publisher.Mono;
4846

4947
import java.io.BufferedWriter;
5048
import java.io.File;
5149
import java.io.FileWriter;
5250
import java.io.IOException;
53-
import java.io.StringReader;
5451
import java.nio.charset.StandardCharsets;
5552
import java.time.Duration;
5653
import java.time.OffsetDateTime;
5754
import java.util.ArrayList;
5855
import java.util.List;
56+
import java.util.Locale;
5957

6058
@Execution(ExecutionMode.SAME_THREAD)
6159
@Isolated
@@ -76,9 +74,7 @@ protected void beforeTest() {
7674
}
7775
}
7876

79-
/*
80-
* Test TypeSpec Shared model among GET-PUT Roundtrip operation
81-
* */
77+
// Test TypeSpec Shared model among GET-PUT Roundtrip operation
8278
@SyncAsyncTest
8379
public void testTaskUnifiedModel() {
8480
String testModeSuffix = SyncAsyncExtension.execute(() -> "sync", () -> Mono.just("async"));
@@ -429,16 +425,15 @@ public void testAddMultiTasksWithError() {
429425

430426
Assertions.assertTrue(true, "Should not here");
431427
} catch (RuntimeException ex) {
432-
System.out.printf("Expect exception %s", ex.toString());
428+
System.out.printf("Expect exception %s", ex);
433429
}
434430
}
435431

432+
// This test will temporarily only run in Live/Record mode. It runs fine in Playback mode too on Mac and Windows machines.
433+
// Linux machines are causing issues. This issue is under investigation.
434+
@DisabledIf(value = "skipInPlayback")
436435
@Test
437-
public void failIfPoisonTaskTooLargeSync() throws Exception {
438-
//This test will temporarily only run in Live/Record mode. It runs fine in Playback mode too on Mac and Windows machines.
439-
// Linux machines are causing issues. This issue is under investigation.
440-
Assumptions.assumeFalse(getTestMode() == TestMode.PLAYBACK, "This Test only runs in Live/Record mode");
441-
436+
public void failIfPoisonTaskTooLargeSync() {
442437
String jobId = getStringIdWithUserNamePrefix("-failIfPoisonTaskTooLarge-sync");
443438
String taskId = "mytask-sync";
444439

@@ -447,9 +442,9 @@ public void failIfPoisonTaskTooLargeSync() throws Exception {
447442
BatchJobCreateParameters parameters = new BatchJobCreateParameters(jobId, poolInfo);
448443
batchClient.createJob(parameters);
449444

450-
List<BatchTaskCreateParameters> tasksToAdd = new ArrayList<BatchTaskCreateParameters>();
445+
List<BatchTaskCreateParameters> tasksToAdd = new ArrayList<>();
451446
BatchTaskCreateParameters taskToAdd = new BatchTaskCreateParameters(taskId, "sleep 1");
452-
List<ResourceFile> resourceFiles = new ArrayList<ResourceFile>();
447+
List<ResourceFile> resourceFiles = new ArrayList<>();
453448
ResourceFile resourceFile;
454449

455450
// If this test fails try increasing the size of the Task in case maximum size increase
@@ -501,12 +496,11 @@ public void failIfPoisonTaskTooLargeSync() throws Exception {
501496
}
502497
}
503498

499+
// This test will temporarily only run in Live/Record mode. It runs fine in Playback mode too on Mac and Windows machines.
500+
// Linux machines are causing issues. This issue is under investigation.
501+
@DisabledIf(value = "skipInPlayback")
504502
@Test
505-
public void failIfPoisonTaskTooLargeAsync() throws Exception {
506-
//This test will temporarily only run in Live/Record mode. It runs fine in Playback mode too on Mac and Windows machines.
507-
// Linux machines are causing issues. This issue is under investigation.
508-
Assumptions.assumeFalse(getTestMode() == TestMode.PLAYBACK, "This Test only runs in Live/Record mode");
509-
503+
public void failIfPoisonTaskTooLargeAsync() {
510504
String jobId = getStringIdWithUserNamePrefix("-failIfPoisonTaskTooLarge-async");
511505
String taskId = "mytask-async";
512506

@@ -515,9 +509,9 @@ public void failIfPoisonTaskTooLargeAsync() throws Exception {
515509
BatchJobCreateParameters parameters = new BatchJobCreateParameters(jobId, poolInfo);
516510
batchAsyncClient.createJob(parameters).block();
517511

518-
List<BatchTaskCreateParameters> tasksToAdd = new ArrayList<BatchTaskCreateParameters>();
512+
List<BatchTaskCreateParameters> tasksToAdd = new ArrayList<>();
519513
BatchTaskCreateParameters taskToAdd = new BatchTaskCreateParameters(taskId, "sleep 1");
520-
List<ResourceFile> resourceFiles = new ArrayList<ResourceFile>();
514+
List<ResourceFile> resourceFiles = new ArrayList<>();
521515
ResourceFile resourceFile;
522516

523517
// If this test fails try increasing the size of the Task in case maximum size increase
@@ -560,13 +554,12 @@ public void failIfPoisonTaskTooLargeAsync() throws Exception {
560554
}
561555
}
562556

557+
// This test does not run in Playback mode. It only runs in Record/Live mode.
558+
// This test uses multi threading. Playing back the test doesn't match its recorded sequence always.
559+
// Hence Playback of this test is disabled.
560+
@DisabledIf(value = "skipInPlayback")
563561
@Test
564562
public void succeedWithRetrySync() {
565-
//This test does not run in Playback mode. It only runs in Record/Live mode.
566-
// This test uses multi threading. Playing back the test doesn't match its recorded sequence always.
567-
// Hence Playback of this test is disabled.
568-
Assumptions.assumeFalse(getTestMode() == TestMode.PLAYBACK, "This Test only runs in Live/Record mode");
569-
570563
String jobId = getStringIdWithUserNamePrefix("-succeedWithRetry-sync");
571564
String taskId = "mytask-sync";
572565

@@ -575,9 +568,9 @@ public void succeedWithRetrySync() {
575568
BatchJobCreateParameters jobToCreate = new BatchJobCreateParameters(jobId, poolInfo);
576569
batchClient.createJob(jobToCreate);
577570

578-
List<BatchTaskCreateParameters> tasksToAdd = new ArrayList<BatchTaskCreateParameters>();
571+
List<BatchTaskCreateParameters> tasksToAdd = new ArrayList<>();
579572
BatchTaskCreateParameters taskToAdd;
580-
List<ResourceFile> resourceFiles = new ArrayList<ResourceFile>();
573+
List<ResourceFile> resourceFiles = new ArrayList<>();
581574
ResourceFile resourceFile;
582575

583576
BatchTaskBulkCreateOptions option = new BatchTaskBulkCreateOptions();
@@ -612,13 +605,12 @@ public void succeedWithRetrySync() {
612605
}
613606
}
614607

608+
// This test does not run in Playback mode. It only runs in Record/Live mode.
609+
// This test uses multi threading. Playing back the test doesn't match its recorded sequence always.
610+
// Hence Playback of this test is disabled.
611+
@DisabledIf(value = "skipInPlayback")
615612
@Test
616613
public void succeedWithRetryAsync() {
617-
//This test does not run in Playback mode. It only runs in Record/Live mode.
618-
// This test uses multi threading. Playing back the test doesn't match its recorded sequence always.
619-
// Hence Playback of this test is disabled.
620-
Assumptions.assumeFalse(getTestMode() == TestMode.PLAYBACK, "This Test only runs in Live/Record mode");
621-
622614
String jobId = getStringIdWithUserNamePrefix("-succeedWithRetry-async");
623615
String taskId = "mytask-async";
624616

@@ -627,9 +619,9 @@ public void succeedWithRetryAsync() {
627619
BatchJobCreateParameters jobToCreate = new BatchJobCreateParameters(jobId, poolInfo);
628620
batchAsyncClient.createJob(jobToCreate).block();
629621

630-
List<BatchTaskCreateParameters> tasksToAdd = new ArrayList<BatchTaskCreateParameters>();
622+
List<BatchTaskCreateParameters> tasksToAdd = new ArrayList<>();
631623
BatchTaskCreateParameters taskToAdd;
632-
List<ResourceFile> resourceFiles = new ArrayList<ResourceFile>();
624+
List<ResourceFile> resourceFiles = new ArrayList<>();
633625
ResourceFile resourceFile;
634626

635627
BatchTaskBulkCreateOptions option = new BatchTaskBulkCreateOptions();
@@ -879,16 +871,15 @@ public void testCreateTasks() {
879871
}
880872

881873
@Test
882-
public void testDeserializationOfBatchTaskStatistics() {
874+
public void testDeserializationOfBatchTaskStatistics() throws IOException {
883875
// Simulated JSON response with numbers as strings
884-
String jsonResponse = "{" + "\"url\":\"http://example.com/statistics\","
885-
+ "\"startTime\":\"2022-01-01T00:00:00Z\"," + "\"lastUpdateTime\":\"2022-01-01T01:00:00Z\","
886-
+ "\"userCPUTime\":\"PT1H\"," + "\"kernelCPUTime\":\"PT2H\"," + "\"wallClockTime\":\"PT3H\","
887-
+ "\"readIOps\":\"1000\"," + "\"writeIOps\":\"500\"," + "\"readIOGiB\":0.5," + "\"writeIOGiB\":0.25,"
888-
+ "\"waitTime\":\"PT30M\"" + "}";
876+
String jsonResponse = "{\"url\":\"http://example.com/statistics\",\"startTime\":\"2022-01-01T00:00:00Z\","
877+
+ "\"lastUpdateTime\":\"2022-01-01T01:00:00Z\",\"userCPUTime\":\"PT1H\",\"kernelCPUTime\":\"PT2H\","
878+
+ "\"wallClockTime\":\"PT3H\",\"readIOps\":\"1000\",\"writeIOps\":\"500\",\"readIOGiB\":0.5,"
879+
+ "\"writeIOGiB\":0.25,\"waitTime\":\"PT30M\"}";
889880

890881
// Deserialize JSON response using JsonReader from JsonProviders
891-
try (JsonReader jsonReader = JsonProviders.createReader(new StringReader(jsonResponse))) {
882+
try (JsonReader jsonReader = JsonProviders.createReader(jsonResponse)) {
892883
BatchTaskStatistics stats = BatchTaskStatistics.fromJson(jsonReader);
893884

894885
// Assertions
@@ -904,8 +895,20 @@ public void testDeserializationOfBatchTaskStatistics() {
904895
Assertions.assertEquals(0.5, stats.getReadIoGiB());
905896
Assertions.assertEquals(0.25, stats.getWriteIoGiB());
906897
Assertions.assertEquals(Duration.parse("PT30M"), stats.getWaitTime());
907-
} catch (IOException e) {
908-
throw new RuntimeException(e);
909898
}
910899
}
900+
901+
private static boolean skipInPlayback() {
902+
final String azureTestMode = Configuration.getGlobalConfiguration().get("AZURE_TEST_MODE");
903+
904+
if (azureTestMode != null) {
905+
try {
906+
return TestMode.valueOf(azureTestMode.toUpperCase(Locale.US)) == TestMode.PLAYBACK;
907+
} catch (IllegalArgumentException e) {
908+
return true; // TestMode unknown, default is PLAYBACK.
909+
}
910+
}
911+
912+
return true; // TestMode unknown, default is PLAYBACK.
913+
}
911914
}

sdk/batch/microsoft-azure-batch/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@
7171
<dependency>
7272
<groupId>com.fasterxml.jackson.core</groupId>
7373
<artifactId>jackson-core</artifactId>
74-
<version>2.18.4.1</version> <!-- {x-version-update;com.fasterxml.jackson.core:jackson-core;external_dependency} -->
74+
<version>2.18.6</version> <!-- {x-version-update;com.fasterxml.jackson.core:jackson-core;external_dependency} -->
7575
<scope>test</scope>
7676
</dependency>
7777

0 commit comments

Comments
 (0)