Skip to content

Commit 77c5f99

Browse files
authored
Merge pull request #2475 from beyonnex-io/update-dependencies-2026-06
update dependencies 2026-06
2 parents 20c1c6f + 88a5025 commit 77c5f99

2 files changed

Lines changed: 36 additions & 25 deletions

File tree

bom/pom.xml

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -33,15 +33,15 @@
3333

3434
<!-- ### Compile dependencies versions -->
3535
<minimal-json.version>0.9.5</minimal-json.version>
36-
<jackson-bom.version>2.21.3</jackson-bom.version>
37-
<json-schema-validator.version>2.0.1</json-schema-validator.version>
38-
<typesafe-config.version>1.4.8</typesafe-config.version>
36+
<jackson-bom.version>2.22.0</jackson-bom.version>
37+
<json-schema-validator.version>2.0.3</json-schema-validator.version>
38+
<typesafe-config.version>1.4.9</typesafe-config.version>
3939
<ssl-config-core.version>0.7.1</ssl-config-core.version>
4040
<kafka-client.version>3.9.2</kafka-client.version>
41-
<hivemq-mqtt-client.version>1.3.13</hivemq-mqtt-client.version>
42-
<sshd.version>2.15.0</sshd.version>
41+
<hivemq-mqtt-client.version>1.3.15</hivemq-mqtt-client.version>
42+
<sshd.version>2.18.0</sshd.version>
4343
<eddsa.version>0.3.0</eddsa.version>
44-
<lz4-java.version>1.10.4</lz4-java.version>
44+
<lz4-java.version>1.11.0</lz4-java.version>
4545

4646
<pekko-bom.version>1.6.0</pekko-bom.version>
4747
<pekko-http-bom.version>1.3.0</pekko-http-bom.version>
@@ -58,26 +58,26 @@
5858
<mongo-java-driver.version>5.6.5</mongo-java-driver.version>
5959

6060
<!-- AWS SDK version needed for MongoDB AWS IAM authentication -->
61-
<awssdk.version>2.42.29</awssdk.version>
61+
<awssdk.version>2.46.15</awssdk.version>
6262

6363
<jjwt.version>0.13.0</jjwt.version>
64-
<asm.version>9.9.1</asm.version>
65-
<qpid-jms-client.version>1.14.0</qpid-jms-client.version>
64+
<asm.version>9.10.1</asm.version>
65+
<qpid-jms-client.version>1.16.0</qpid-jms-client.version>
6666
<pjfanning-pekko-rabbitmq.version>7.0.0</pjfanning-pekko-rabbitmq.version>
67-
<amqp-client.version>5.29.0</amqp-client.version>
67+
<amqp-client.version>5.32.0</amqp-client.version>
6868
<reactive-streams.version>1.0.4</reactive-streams.version>
69-
<netty-bom.version>4.2.12.Final</netty-bom.version>
69+
<netty-bom.version>4.2.15.Final</netty-bom.version>
7070
<cloudevents.version>2.5.0</cloudevents.version>
7171

72-
<slf4j.version>2.0.17</slf4j.version>
73-
<logback.version>1.5.32</logback.version>
72+
<slf4j.version>2.0.18</slf4j.version>
73+
<logback.version>1.5.34</logback.version>
7474
<logstash-logback-encoder.version>8.1</logstash-logback-encoder.version>
7575
<fluency.version>2.7.4</fluency.version>
7676
<janino.version>3.1.12</janino.version>
7777

7878
<!-- ### Metrics and Tracing -->
7979
<kamon.version>2.8.1</kamon.version>
80-
<oshi.version>6.11.0</oshi.version>
80+
<oshi.version>6.12.0</oshi.version>
8181

8282
<jsr305.version>3.0.2</jsr305.version>
8383

@@ -95,22 +95,22 @@
9595
-->
9696
<js.long.version>3.2.0</js.long.version>
9797

98-
<caffeine.version>3.2.3</caffeine.version>
98+
<caffeine.version>3.2.4</caffeine.version>
9999
<classindex.version>3.13</classindex.version>
100100

101101
<!-- ### Testing dependencies versions -->
102102
<junit.version>4.13.2</junit.version>
103-
<junit-jupiter.version>5.13.3</junit-jupiter.version>
103+
<junit-jupiter.version>5.14.4</junit-jupiter.version>
104104
<assertj.version>3.27.7</assertj.version>
105-
<equals-verifier.version>4.4.1</equals-verifier.version>
105+
<equals-verifier.version>4.5</equals-verifier.version>
106106
<byte-buddy.version>1.17.6</byte-buddy.version>
107107
<mockito.version>5.23.0</mockito.version>
108108
<jsonassert.version>1.5.3</jsonassert.version>
109109
<awaitility.version>4.3.0</awaitility.version>
110110

111111
<jmh.version>1.37</jmh.version>
112112

113-
<scalatest.version>3.2.19</scalatest.version>
113+
<scalatest.version>3.2.20</scalatest.version>
114114
<docker-java.version>3.7.1</docker-java.version>
115115
<system-rules.version>1.19.0</system-rules.version>
116116
</properties>

things/model/src/main/java/org/eclipse/ditto/things/model/ImmutableDefinitionIdentifier.java

Lines changed: 18 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,10 @@ final class ImmutableDefinitionIdentifier implements DefinitionIdentifier {
4343
private final String namespace;
4444
private final String name;
4545
private final String version;
46-
@Nullable private final URL url;
46+
// The URL is kept in its String form (not as java.net.URL) on purpose: URL.equals()/URL.hashCode() perform
47+
// blocking DNS resolution and are non-deterministic, so they must not be used for equality. getUrl() reconstructs
48+
// the java.net.URL on demand from this (always valid) string.
49+
@Nullable private final String urlString;
4750
private final String stringRepresentation;
4851

4952
private ImmutableDefinitionIdentifier(final CharSequence theNamespace, final CharSequence theName,
@@ -53,13 +56,13 @@ private ImmutableDefinitionIdentifier(final CharSequence theNamespace, final Cha
5356
namespace = "";
5457
name = "";
5558
version = "";
56-
url = theUrl;
57-
stringRepresentation = url.toString();
59+
urlString = theUrl.toString();
60+
stringRepresentation = urlString;
5861
} else {
5962
namespace = argumentNotEmpty(theNamespace, "namespace").toString();
6063
name = argumentNotEmpty(theName, "name").toString();
6164
version = argumentNotEmpty(theVersion, "version").toString();
62-
url = null;
65+
urlString = null;
6366
stringRepresentation = namespace + COLON + name + COLON + version;
6467
}
6568
}
@@ -160,7 +163,15 @@ public String getVersion() {
160163

161164
@Override
162165
public Optional<URL> getUrl() {
163-
return Optional.ofNullable(url);
166+
if (null == urlString) {
167+
return Optional.empty();
168+
}
169+
try {
170+
return Optional.of(new URL(urlString));
171+
} catch (final MalformedURLException e) {
172+
// cannot happen: urlString always originates from a previously valid java.net.URL
173+
return Optional.empty();
174+
}
164175
}
165176

166177
@Override
@@ -175,12 +186,12 @@ public boolean equals(final Object o) {
175186
return Objects.equals(namespace, that.namespace) &&
176187
Objects.equals(name, that.name) &&
177188
Objects.equals(version, that.version) &&
178-
Objects.equals(url, that.url);
189+
Objects.equals(urlString, that.urlString);
179190
}
180191

181192
@Override
182193
public int hashCode() {
183-
return Objects.hash(namespace, name, version, url);
194+
return Objects.hash(namespace, name, version, urlString);
184195
}
185196

186197
@Override

0 commit comments

Comments
 (0)