1- From d6276724f7f432af4693e9d786ecfcaddb73e505 Mon Sep 17 00:00:00 2001
2- From: Trask Stalnaker <trask.stalnaker@gmail.com>
3- Date: Sat, 20 Sep 2025 21:48:43 -0700
4- Subject: [PATCH] Update Caffeine
5-
6- ---
7- .../src/main/java/com/linecorp/armeria/common/Flags.java | 2 +-
8- .../armeria/internal/common/util/CertificateUtil.java | 9 ++++++---
9- .../linecorp/armeria/server/file/FileServiceConfig.java | 2 +-
10- dependencies.toml | 5 ++---
11- gradle.properties | 4 ++--
12- 5 files changed, 12 insertions(+), 10 deletions(-)
13-
141diff --git a/core/src/main/java/com/linecorp/armeria/common/Flags.java b/core/src/main/java/com/linecorp/armeria/common/Flags.java
15- index 57671a686..e1dd6eb3b 100644
2+ index 3fc9c0a..8149daf 100644
163--- a/core/src/main/java/com/linecorp/armeria/common/Flags.java
174+++ b/core/src/main/java/com/linecorp/armeria/common/Flags.java
18- @@ -1722 ,7 +1722 ,7 @@ public final class Flags {
5+ @@ -1680 ,7 +1680 ,7 @@ public final class Flags {
196 if ("off".equals(value)) {
207 return allowOff;
218 }
@@ -25,44 +12,39 @@ index 57671a686..e1dd6eb3b 100644
2512 } catch (Exception e) {
2613 return false;
2714diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/util/CertificateUtil.java b/core/src/main/java/com/linecorp/armeria/internal/common/util/CertificateUtil.java
28- index a343428a3..48698e3ea 100644
15+ index b90dce5..6e98ae9 100644
2916--- a/core/src/main/java/com/linecorp/armeria/internal/common/util/CertificateUtil.java
3017+++ b/core/src/main/java/com/linecorp/armeria/internal/common/util/CertificateUtil.java
31- @@ -57 ,6 +57 ,8 @@ public final class CertificateUtil {
18+ @@ -53 ,6 +53 ,8 @@ public final class CertificateUtil {
3219
3320 private static final Logger logger = LoggerFactory.getLogger(CertificateUtil.class);
3421
35- + private static final String NO_HOSTNAME_FOUND = "<NO_HOSTNAME_FOUND >";
22+ + private static final String NO_COMMON_NAME_FOUND = "<NO_COMMON_NAME_FOUND >";
3623+
37- private static final LoadingCache<X509Certificate, String> hostnameCache =
24+ private static final LoadingCache<X509Certificate, String> commonNameCache =
3825 Caffeine.newBuilder()
3926 .weakKeys()
40- @@ -73,11 +75,11 @@ public final class CertificateUtil {
41-
42- logger.warn("No common name or subject alternative name found " +
43- "in certificate: {}", cert);
44- - return null;
45- + return NO_HOSTNAME_FOUND;
27+ @@ -63,7 +65,7 @@ public final class CertificateUtil {
28+ return IETFUtils.valueToString(cn.getFirst().getValue());
4629 } catch (Exception e) {
47- logger.warn("Failed to get the common name or subject alternative name name " +
48- "from a certificate: {}", cert, e);
30+ logger.warn("Failed to get the common name from a certificate: {}", cert, e);
4931- return null;
50- + return NO_HOSTNAME_FOUND ;
32+ + return NO_COMMON_NAME_FOUND ;
5133 }
5234 });
5335
54- @@ -136 ,7 +138 ,8 @@ public final class CertificateUtil {
36+ @@ -81 ,7 +83 ,8 @@ public final class CertificateUtil {
5537 if (!(certificate instanceof X509Certificate)) {
5638 return null;
5739 }
58- - return hostnameCache .get((X509Certificate) certificate);
59- + final String hostname = hostnameCache .get((X509Certificate) certificate);
60- + return NO_HOSTNAME_FOUND .equals(hostname ) ? null : hostname ;
40+ - return commonNameCache .get((X509Certificate) certificate);
41+ + final String commonName = commonNameCache .get((X509Certificate) certificate);
42+ + return NO_COMMON_NAME_FOUND .equals(commonName ) ? null : commonName ;
6143 }
6244
6345 public static List<X509Certificate> toX509Certificates(File file) throws CertificateException {
6446diff --git a/core/src/main/java/com/linecorp/armeria/server/file/FileServiceConfig.java b/core/src/main/java/com/linecorp/armeria/server/file/FileServiceConfig.java
65- index 8766acd95..b6b8a1b62 100644
47+ index 8766acd..b6b8a1b 100644
6648--- a/core/src/main/java/com/linecorp/armeria/server/file/FileServiceConfig.java
6749+++ b/core/src/main/java/com/linecorp/armeria/server/file/FileServiceConfig.java
6850@@ -72,7 +72,7 @@ public final class FileServiceConfig {
@@ -75,20 +57,19 @@ index 8766acd95..b6b8a1b62 100644
7557 throw new IllegalArgumentException("invalid cache spec: " + entryCacheSpec, e);
7658 }
7759diff --git a/dependencies.toml b/dependencies.toml
78- index 22c366f47..bfd54bcce 100644
60+ index a0b8b74..0ca6134 100644
7961--- a/dependencies.toml
8062+++ b/dependencies.toml
81- @@ -15,8 +15,7 @@ brave6 = "6.3.0"
82- brotli4j = "1.18.0"
83- # Don"t upgrade bucket4j to 7.6.1 or 8.x that requires Java 11. The module name also has been changed to "com.bucket4j"
63+ @@ -15,7 +15,7 @@ brotli4j = "1.17.0"
64+ # Don"t upgrade bucket4j to 8.x that requires Java 11. The module name also has been changed to "com.bucket4j"
8465 bucket4j = "7.6.0"
85- - # Don"t upgrade Caffeine to 3.x that requires Java 11.
66+ # Don"t upgrade Caffeine to 3.x that requires Java 11.
8667- caffeine = "2.9.3"
8768+ caffeine = "3.2.2"
8869 cglib = "3.3.0"
8970 checkerframework = "2.5.6"
9071 checkstyle = "10.3.2"
91- @@ -325 ,7 +324 ,7 @@ javadocs = "https://javadoc.io/doc/com.github.vladimir-bukhtoyarov/bucket4j-core
72+ @@ -307 ,7 +307 ,7 @@ javadocs = "https://javadoc.io/doc/com.github.vladimir-bukhtoyarov/bucket4j-core
9273 module = "com.github.ben-manes.caffeine:caffeine"
9374 version.ref = "caffeine"
9475 exclusions = "com.google.errorprone:error_prone_annotations"
@@ -98,7 +79,7 @@ index 22c366f47..bfd54bcce 100644
9879
9980 [libraries.cglib]
10081diff --git a/gradle.properties b/gradle.properties
101- index de5b05013..5ab06b436 100644
82+ index 537f571..3d43848 100644
10283--- a/gradle.properties
10384+++ b/gradle.properties
10485@@ -12,8 +12,8 @@ licenseUrl=https://www.apache.org/license/LICENSE-2.0.txt
@@ -109,9 +90,6 @@ index de5b05013..5ab06b436 100644
10990- javaTargetCompatibility=1.8
11091+ javaSourceCompatibility=11
11192+ javaTargetCompatibility=11
112- publishUrlForRelease=https://ossrh-staging-api.central. sonatype.com /service/local/staging/deploy/maven2/
113- publishUrlForSnapshot=https://central .sonatype.com/repository/maven- snapshots/
93+ publishUrlForRelease=https://oss. sonatype.org /service/local/staging/deploy/maven2/
94+ publishUrlForSnapshot=https://oss .sonatype.org/content/repositories/ snapshots/
11495 publishUsernameProperty=ossrhUsername
115- - -
116- 2.51.0.windows.1
117-
0 commit comments