diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 3d032a6..7c672da 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -13,19 +13,19 @@ java = "21" # Build / quality -spotless = "8.8.0" +spotless = "8.10.0" errorprone-plugin = "5.1.0" errorprone-core = "2.50.0" google-java-format = "1.25.2" -jspecify = "1.0.0" +jspecify = "1.0.1" # Runtime — core / serialization / observability (pinned to pk-auth) # Jackson 3 ("tools.jackson") — java.time and JDK 8 datatype support is built into databind 3, # so we do not pull jackson-datatype-jdk8 / jackson-datatype-jsr310 separately. -jackson = "3.2.1" +jackson = "3.2.2" jackson-annotations = "2.22" caffeine = "3.2.4" -micrometer = "1.17.0" +micrometer = "1.17.1" slf4j = "2.0.18" # Dagger 2 — compile-time DI for the Dropwizard tier (NFR-2, no Spring). Pinned to pk-auth. @@ -43,20 +43,20 @@ hikaricp = "7.1.0" # Persistence — Redis backend (phase 2, sliding/hot-path reference). Lettuce is the async Redis # client; velocity-only, so it tracks the current latest 6.x. -lettuce = "7.6.0.RELEASE" +lettuce = "7.7.0.RELEASE" # Testing — Testcontainers for the backend integration tests (Postgres now; Redis/LocalStack later). testcontainers = "1.21.4" # OpenAPI parsing — validates the committed velocity-api spec is well-formed OpenAPI 3.1 in a test # (velocity-api OpenApiSpecTest). velocity-only; tracks the current latest 2.1.x. -swagger-parser = "2.1.22" +swagger-parser = "2.1.47" # Test bundle (wired in the test convention plugin). Pinned to pk-auth. -junit-jupiter = "6.1.2" +junit-jupiter = "6.1.3" assertj = "3.27.7" mockito = "5.23.0" -logback = "1.5.38" +logback = "1.6.3" # Security floors for transitive dependencies (see the "Transitive security floors" block in # velocity.java-conventions). None of these are direct dependencies of ours — they arrive @@ -64,11 +64,11 @@ logback = "1.5.38" # Testcontainers, rhino via swagger-parser). Each value is the first patched release for the # corresponding Dependabot advisory; it is applied as a *floor*, not a pin, so a higher version # on any resolution path still wins. Dependabot keeps these current on its weekly gradle run. -netty = "4.2.15.Final" # netty-handler / netty-resolver-dns advisories (GHSA, high) -jackson2 = "2.21.5" # jackson-databind 2.x case-insensitive @JsonIgnoreProperties bypass -commons-compress = "1.26.0" # Pack200 OOM + corrupted-DUMP infinite-loop DoS -commons-lang3 = "3.18.0" # uncontrolled recursion on long inputs -rhino = "1.7.14.1" # toFixed() high-CPU DoS +netty = "4.2.17.Final" # netty-handler / netty-resolver-dns advisories (GHSA, high) +jackson2 = "2.22.2" # jackson-databind 2.x case-insensitive @JsonIgnoreProperties bypass +commons-compress = "1.28.0" # Pack200 OOM + corrupted-DUMP infinite-loop DoS +commons-lang3 = "3.20.0" # uncontrolled recursion on long inputs +rhino = "1.9.1" # toFixed() high-CPU DoS [libraries] jspecify = { module = "org.jspecify:jspecify", version.ref = "jspecify" } diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar index b1b8ef5..eddabd2 100644 Binary files a/gradle/wrapper/gradle-wrapper.jar and b/gradle/wrapper/gradle-wrapper.jar differ diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index dbe66e1..760c459 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,7 +1,7 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionSha256Sum=9c0f7faeeb306cb14e4279a3e084ca6b596894089a0638e68a07c945a32c9e14 -distributionUrl=https\://services.gradle.org/distributions/gradle-9.6.1-bin.zip +distributionSha256Sum=acd53f1edaf02f1a8ff99879f8a34b302661a057d9b063ae9e35b552f804d20a +distributionUrl=https\://services.gradle.org/distributions/gradle-9.7.1-bin.zip networkTimeout=10000 retries=0 retryBackOffMs=500