Skip to content

Commit

Permalink
Upgrade dependencies for 1.31.0 (#5967)
Browse files Browse the repository at this point in the history
### Dependencies

- Brotli4j 1.16.0 → 1.17.0
- java-control-plane 1.0.45 → 1.0.46
- Eureka 2.0.3 → 2.0.4
- fastutil 8.5.14 → 8.5.15
- GraphQL Kotlin 7.1.4 → 8.2.1
- Java gRPC 1.65.1 → 1.68.1
- Guava 33.2.1-jre → 33.3.1-jre
- Jackson 2.17.2 → 2.18.1
- Jetty
  - 11.0.22 → 11.0.24
  - 12.0.12 → 12.0.14
- Kotlin 3.8.0 → 3.8.1
- Kotlin coroutines 1.8.1 → 1.9.0
- Fabric8 Kubernetes Client 6.13.1 → 6.13.4
- Micrometer 1.13.2 → 1.13.6
- Micrometer Tracing 1.3.2 → 1.3.5
- Netty 4.1.112.Final → 4.1.114.Final
- prometheus 1.3.1 → 1.3.2
- Protobuf 3.25.1 → 3.25.5
- protobuf-jackson 2.5.0 → 2.6.0
- Reactor 3.6.8 → 3.6.11
- RXJava 3.1.8 → 3.1.9
- Sangria 4.1.1 → 4.2.2
- Scala
  - 2.12.19 → 2.12.20
  - 2.13.14 → 2.13.15
  - 3.4.2 → 3.6.1
- Spring 6.1.11 → 6.1.14
- Spring Boot 3.3.2 → 3.3.5
- Tomcat
  - 9.0.91 → 9.0.96
  - 10.1.26 → 10.1.31

### Dev dependencies
- apache-httpclient5 5.3.1 → 5.4.1
- asm 9.7 → 9.7.1
- awaitility 4.2.1 → 4.2.2
- blockhound 1.0.9.RELEASE → 1.0.10.RELEASE
- curator 5.7.0 → 5.7.1
- dagger 2.51.1 → 2.52
- dropwizard-metrics 4.2.26 → 4.2.28
- errorprone 2.29.2 → 2.35.1
- errorprone-gradle-plugin 4.0.1 → 4.1.0
- eureka 2.0.3 → 2.0.4
- fastutil 8.5.14 → 8.5.15
- gax-grpc 2.51.0 → 2.57.0
- hamcrest 2.2 → 3.0
- jkube 1.16.2 → 1.17.0
- junit5 5.10.3 → 5.11.3
- kafka 3.8.0 → 3.8.1
- munit 1.0.0 → 1.0.2
- node-gradle-plugin 7.0.2 → 7.1.0
- nullaway 0.11.1 → 0.12.1
- nullaway-gradle-plugin 2.0.0 → 2.0.1
- snappy 1.1.10.5 → 1.1.10.7
- slf4j2 2.0.13 → 2.0.16
- testcontainers 1.20.1 → 1.20.3

### Additional changes
- Added an integration test module `logback15` which runs tests in the
`logback14` module with `logback15` to ensure compatibility.
- `DropwizardExtensionsSupport` isn't compatible with recent JUnit
versions following the removal of
`ReflectionUtils#makeAccessible(AccessibleObject)`. The `before` method
is called manually.
- Minor breaking changes in the test classes for kubernetes client
- Scala upgrade enforces the usage of the `using` keyword
- Tomcat's `AbstractProcessor` has added a `earlyHints` method which
needs to be implemented
- Miscellaneous refactoring due to errorprone upgrade
  • Loading branch information
jrhee17 authored Nov 11, 2024
1 parent 0019bc7 commit 206872c
Show file tree
Hide file tree
Showing 24 changed files with 211 additions and 72 deletions.
2 changes: 1 addition & 1 deletion .scalafmt.conf
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
version = "3.3.2"
version = "3.8.3"

style = default

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -938,6 +938,12 @@ public final class HttpHeaderNames {
*/
public static final AsciiString CDN_LOOP = create("CDN-Loop");

/**
* The HTTP <a href="https://wicg.github.io/ua-client-hints/#sec-ch-ua-form-factors">{@code
* Sec-CH-UA-Form-Factors}</a> header field name.
*/
public static final AsciiString SEC_CH_UA_FORM_FACTORS = create("Sec-CH-UA-Form-Factors");

private static final Map<CharSequence, AsciiString> map;
private static final Map<AsciiString, String> inverseMap;

Expand Down
5 changes: 5 additions & 0 deletions core/src/main/java/com/linecorp/armeria/common/MediaType.java
Original file line number Diff line number Diff line change
Expand Up @@ -827,6 +827,11 @@ private static MediaType addKnownType(MediaType mediaType) {
public static final MediaType GRAPHQL_RESPONSE_JSON =
createConstant(APPLICATION_TYPE, "graphql-response+json");

/**
* <a href="https://www.rfc-editor.org/rfc/rfc7763.html">Markdown type</a>.
*/
public static final MediaType MD_UTF_8 = createConstantUtf8(TEXT_TYPE, "markdown");

private static final Charset NO_CHARSET = new Charset("NO_CHARSET", null) {
@Override
public boolean contains(Charset cs) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -630,5 +630,10 @@ public final class MediaTypeNames {
*/
public static final String GRAPHQL_RESPONSE_JSON = "application/graphql-response+json";

/**
* {@value #MD_UTF_8}.
*/
public static final String MD_UTF_8 = "text/markdown; charset=utf-8";

private MediaTypeNames() {}
}
Original file line number Diff line number Diff line change
Expand Up @@ -552,7 +552,7 @@ private static String get(Http2Headers headers, CharSequence name) {
private static void sendFrameHeaders(BufferedOutputStream bos,
HttpStatus status,
boolean endOfStream, int streamId) throws Exception {
final HPackEncoder encoder = new HPackEncoder(StandardCharsets.UTF_8);
final HPackEncoder encoder = new HPackEncoder(4096, StandardCharsets.UTF_8);
final ByteArrayBuffer buffer = new ByteArrayBuffer(1024);
encoder.encodeHeader(buffer, ":status", status.codeAsText(), false);
final byte[] headersPayload = buffer.toByteArray();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -136,7 +136,7 @@ void requestUriEncodedHttp2(String path, String expected) throws Exception {
}

private static byte[] headerBytes(String path) throws Exception {
final HPackEncoder encoder = new HPackEncoder(StandardCharsets.UTF_8);
final HPackEncoder encoder = new HPackEncoder(4096, StandardCharsets.UTF_8);
final ByteArrayBuffer buffer = new ByteArrayBuffer(1024);
encoder.encodeHeader(buffer, ":method", "GET", false);
encoder.encodeHeader(buffer, ":authority", server.httpUri().getAuthority(), false);
Expand Down
110 changes: 58 additions & 52 deletions dependencies.toml
Original file line number Diff line number Diff line change
Expand Up @@ -2,16 +2,16 @@
akka = "2.6.20"
akka-http-cors = "1.0.0"
akka-grpc-runtime = "1.0.3"
apache-httpclient5 = "5.3.1"
apache-httpclient5 = "5.4.1"
apache-httpclient4 = "4.5.14"
asm = "9.7"
asm = "9.7.1"
assertj = "3.26.3"
awaitility = "4.2.1"
blockhound = "1.0.9.RELEASE"
awaitility = "4.2.2"
blockhound = "1.0.10.RELEASE"
bouncycastle = "1.70"
brave5 = "5.18.1"
brave6 = "6.0.3"
brotli4j = "1.16.0"
brotli4j = "1.17.0"
# Don"t upgrade bucket4j to 8.x that requires Java 11. The module name also has been changed to "com.bucket4j"
bucket4j = "7.6.0"
# Don"t upgrade Caffeine to 3.x that requires Java 11.
Expand All @@ -20,35 +20,35 @@ cglib = "3.3.0"
checkerframework = "2.5.6"
checkstyle = "10.3.2"
context-propagation = "1.1.1"
controlplane = "1.0.45"
curator = "5.7.0"
dagger = "2.51.1"
controlplane = "1.0.46"
curator = "5.7.1"
dagger = "2.52"
# Don't upgrade DGS to 9.x that requires GraphQL-Java 22
dgs = "8.6.1"
dropwizard1 = "1.3.29"
dropwizard2 = "2.1.12"
dropwizard-metrics = "4.2.26"
errorprone = "2.29.2"
errorprone-gradle-plugin = "4.0.1"
eureka = "2.0.3"
fastutil = "8.5.14"
dropwizard-metrics = "4.2.28"
errorprone = "2.35.1"
errorprone-gradle-plugin = "4.1.0"
eureka = "2.0.4"
fastutil = "8.5.15"
finagle = "24.2.0"
findbugs = "3.0.2"
futures-completable = "0.3.6"
futures-extra = "4.3.3"
gax-grpc = "2.51.0"
gax-grpc = "2.57.0"
# Don"t upgrade graphql-java to 21.0 that requires Java 11
graphql-java = "20.4"
graphql-kotlin = "7.1.4"
grpc-java = "1.65.1"
graphql-kotlin = "8.2.1"
grpc-java = "1.68.1"
grpc-kotlin = "1.4.1"
guava = "33.2.1-jre"
hamcrest = "2.2"
guava = "33.3.1-jre"
hamcrest = "3.0"
hbase = "1.2.6"
hibernate-validator6 = "6.2.5.Final"
hibernate-validator8 = "8.0.1.Final"
j2objc = "3.0.0"
jackson = "2.17.2"
jackson = "2.18.1"
jakarta-inject = "2.0.1"
jakarta-validation = "3.1.0"
jakarta-websocket = "2.2.0"
Expand All @@ -61,47 +61,48 @@ jctools = "4.0.5"
# Find the latest version of the major 10 https://central.sonatype.com/artifact/org.eclipse.jetty/jetty-server/
jetty10 = "10.0.20"
# Find the latest version of the major 10 https://central.sonatype.com/artifact/org.eclipse.jetty/apache-jstl/
jetty10-jstl = "10.0.20"
jetty11 = "11.0.22"
jetty10-jstl = "10.0.24"
jetty11 = "11.0.24"
jetty11-jstl = "11.0.0"
jetty12 = "12.0.12"
jetty12 = "12.0.14"
jetty93 = "9.3.30.v20211001"
jetty94 = "9.4.55.v20240627"
jetty-alpn-api = "1.1.3.v20160715"
jkube = "1.16.2"
jkube = "1.17.0"
jmh-core = "1.37"
jmh-gradle-plugin = "0.7.2"
joor = "0.9.15"
# Don't upgrade json-unit to 3.0.0 that requires Java 17
json-unit = "2.38.0"
jsoup = "1.18.1"
junit4 = "4.13.2"
junit5 = "5.10.3"
junit5 = "5.11.3"
# Don't upgrade junit-pioneer to 2.x.x that requires Java 11
junit-pioneer = "1.9.1"
jwt = "4.4.0"
kafka = "3.8.0"
kotlin = "1.9.23"
kotlin-coroutine = "1.8.1"
kafka = "3.8.1"
kotlin = "1.9.25"
kotlin-coroutine = "1.9.0"
krotodc = "1.1.1"
ktlint-gradle-plugin = "12.1.1"
kubernetes-client = "6.13.1"
kubernetes-client = "6.13.4"
logback12 = "1.2.13"
logback13 = "1.3.14"
logback14 = "1.4.14"
micrometer = "1.13.2"
micrometer-tracing = "1.3.2"
logback15 = "1.5.12"
micrometer = "1.13.6"
micrometer-tracing = "1.3.5"
micrometer-docs-generator = "1.0.2"
# Don't uprade mockito to 5.x.x that requires Java 11
mockito = "4.11.0"
monix = "3.4.1"
munit = "1.0.0"
netty = "4.1.112.Final"
munit = "1.0.2"
netty = "4.1.114.Final"
netty-incubator-transport-native-io_uring = "0.0.25.Final"
nexus-publish = "2.0.0"
node-gradle-plugin = "7.0.2"
nullaway = "0.11.1"
nullaway-gradle-plugin = "2.0.0"
node-gradle-plugin = "7.1.0"
nullaway = "0.12.1"
nullaway-gradle-plugin = "2.1.0"
okhttp2 = "2.7.5" # For testing
okhttp3 = { strictly = "3.14.9" } # Not just for testing. Used in the Retrofit mudule.
okhttp4 = "4.12.0" # For testing
Expand All @@ -111,19 +112,19 @@ osdetector = "1.7.3"
# Used for kubernetes-chaos-tests
picocli = "4.7.6"
proguard = "7.5.0"
prometheus = "1.3.1"
prometheus = "1.3.2"
prometheus-legacy = "0.16.0"
# Ensure that we use the same Protobuf version as what gRPC depends on.
# See: https://github.com/grpc/grpc-java/blob/master/gradle/libs.versions.toml
# (Switch to the right tag and look for "protobuf".)
# e.g. https://github.com/grpc/grpc-java/blob/v1.48.0/gradle/libs.versions.toml
protobuf = "3.25.1"
protobuf = "3.25.5"
protobuf-gradle-plugin = "0.8.19"
protobuf-jackson = "2.5.0"
protobuf-jackson = "2.6.0"
reactive-grpc = "1.2.4"
reactive-streams = "1.0.4"
reactor = "3.6.8"
reactor-kotlin = "1.2.2"
reactor = "3.6.11"
reactor-kotlin = "1.2.3"
# Upgrade once https://github.com/ronmamo/reflections/issues/279 is fixed.
reflections = "0.9.11"
resilience4j = "2.2.0"
Expand All @@ -134,27 +135,27 @@ resteasy-jboss-logging = "3.4.3.Final"
resteasy-jboss-logging-annotations = "2.2.1.Final"
retrofit2 = "2.11.0"
rxjava2 = "2.2.21"
rxjava3 = "3.1.8"
sangria = "4.1.1"
rxjava3 = "3.1.9"
sangria = "4.2.2"
sangria-slowlog = "3.0.0"
scala-collection-compat = "2.12.0"
scala-java8-compat = "1.0.2"
scala212 = "2.12.19"
scala213 = "2.13.14"
scala3 = "3.4.2"
scala212 = "2.12.20"
scala213 = "2.13.15"
scala3 = "3.6.1"
scalafmt-gradle-plugin = "1.16.2"
scalapb = "0.11.17"
scalapb-json = "0.12.1"
shadow-gradle-plugin = "7.1.2"
# Don"t upgrade to 8.x that requires Java 11.
shibboleth-utilities = "7.5.2"
snappy = "1.1.10.5"
snappy = "1.1.10.7"
slf4j = "1.7.36"
slf4j2 = "2.0.13"
spring6 = "6.1.11"
slf4j2 = "2.0.16"
spring6 = "6.1.14"
spring-boot2 = "2.7.18"
spring-boot3 = "3.3.2"
testcontainers = "1.20.1"
spring-boot3 = "3.3.5"
testcontainers = "1.20.3"
thrift09 = { strictly = "0.9.3-1" }
thrift012 = { strictly = "0.12.0" }
thrift013 = { strictly = "0.13.0" }
Expand All @@ -166,8 +167,8 @@ thrift018 = { strictly = "0.18.1" }
thrift019 = { strictly = "0.19.0" }
thrift020 = { strictly = "0.20.0" }
tomcat8 = "8.5.100"
tomcat9 = "9.0.91"
tomcat10 = "10.1.26"
tomcat9 = "9.0.96"
tomcat10 = "10.1.31"
xml-apis = "1.4.01"
# Ensure that we use the same ZooKeeper version as what Curator depends on.
# See: https://github.com/apache/curator/blob/master/pom.xml
Expand Down Expand Up @@ -864,6 +865,11 @@ module = "ch.qos.logback:logback-classic"
version.ref = "logback14"
javadocs = "https://www.javadoc.io/doc/ch.qos.logback/logback-classic/1.4.7/"

[libraries.logback15]
module = "ch.qos.logback:logback-classic"
version.ref = "logback15"
javadocs = "https://www.javadoc.io/doc/ch.qos.logback/logback-classic/1.5.12/"

[libraries.micrometer-core]
module = "io.micrometer:micrometer-core"
version.ref = "micrometer"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,18 +18,21 @@
import static io.dropwizard.testing.ResourceHelpers.resourceFilePath;
import static org.assertj.core.api.Assertions.assertThat;

import org.junit.jupiter.api.BeforeAll;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.extension.ExtendWith;

import io.dropwizard.testing.junit5.DropwizardAppExtension;
import io.dropwizard.testing.junit5.DropwizardExtensionsSupport;

@ExtendWith(DropwizardExtensionsSupport.class)
class DropwizardArmeriaApplicationTest {
static final DropwizardAppExtension<TestConfiguration> appExtension =
new DropwizardAppExtension<>(TestApplication.class,
resourceFilePath("dropwizard-armeria-app.yaml"));

@BeforeAll
static void beforeAll() throws Exception {
appExtension.before();
}

@Test
void helloWorld() {
final String content = appExtension
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,6 @@

import org.junit.jupiter.api.BeforeAll;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.extension.ExtendWith;

import com.codahale.metrics.health.HealthCheck;
import com.codahale.metrics.health.HealthCheck.Result;
Expand All @@ -19,10 +18,8 @@
import example.dropwizard.health.PingCheck;
import example.dropwizard.resources.JerseyResource;
import io.dropwizard.testing.junit5.DropwizardAppExtension;
import io.dropwizard.testing.junit5.DropwizardExtensionsSupport;
import io.dropwizard.testing.junit5.ResourceExtension;

@ExtendWith(DropwizardExtensionsSupport.class)
public class DropwizardArmeriaApplicationTest {
public static final ResourceExtension RESOURCES = ResourceExtension.builder()
.addResource(new JerseyResource())
Expand All @@ -35,7 +32,10 @@ public class DropwizardArmeriaApplicationTest {
private static String endpoint;

@BeforeAll
public static void setUp() {
public static void setUp() throws Throwable {
EXTENSION.before();
RESOURCES.before();

endpoint = "http://localhost:" + EXTENSION.getLocalPort();
client = EXTENSION.client().target(endpoint);
}
Expand Down
Binary file modified gradle/wrapper/gradle-wrapper.jar
Binary file not shown.
2 changes: 1 addition & 1 deletion gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.9-all.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-8.10.2-all.zip
networkTimeout=10000
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
Expand Down
7 changes: 5 additions & 2 deletions gradlew
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,8 @@
# See the License for the specific language governing permissions and
# limitations under the License.
#
# SPDX-License-Identifier: Apache-2.0
#

##############################################################################
#
Expand Down Expand Up @@ -55,7 +57,7 @@
# Darwin, MinGW, and NonStop.
#
# (3) This script is generated from the Groovy template
# https://github.com/gradle/gradle/blob/HEAD/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt
# https://github.com/gradle/gradle/blob/HEAD/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt
# within the Gradle project.
#
# You can find Gradle at https://github.com/gradle/gradle/.
Expand Down Expand Up @@ -84,7 +86,8 @@ done
# shellcheck disable=SC2034
APP_BASE_NAME=${0##*/}
# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036)
APP_HOME=$( cd "${APP_HOME:-./}" > /dev/null && pwd -P ) || exit
APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s
' "$PWD" ) || exit

# Use the maximum available, or set MAX_FD != -1 to use that value.
MAX_FD=maximum
Expand Down
2 changes: 2 additions & 0 deletions gradlew.bat
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,8 @@
@rem See the License for the specific language governing permissions and
@rem limitations under the License.
@rem
@rem SPDX-License-Identifier: Apache-2.0
@rem

@if "%DEBUG%"=="" @echo off
@rem ##########################################################################
Expand Down
Loading

0 comments on commit 206872c

Please sign in to comment.