Update Caffeine to 3.2.4, Checkstyle to 10.26.1 and audience-annotations to 0.15.1 - #4949
Merged
Merged
Conversation
…ons to 0.15.1 These are the dependency updates that were blocked on Java 8 support and listed as follow-ups in JanusGraph#3547 (Mockito 5 was already done with the TinkerPop 3.8.2 upgrade): * Caffeine 2.9.3 -> 3.2.4. Caffeine 3 requires Java 11. JanusGraph only uses the builder API (maximumSize/maximumWeight, weigher, expireAfterWrite, removalListener, executor, recordStats) and Cache methods that are unchanged in 3.x; none of the removed APIs (CacheWriter, StatsCounter recordEviction variants, CacheStats constructors) are used. Caffeine 3.2 declares jspecify and error_prone_annotations instead of checker-qual, so the now pointless checker-qual exclusion in janusgraph-core is dropped and the managed error_prone_annotations is raised from 2.30.0 to 2.50.0 to satisfy the enforcer's upper bound rule. * Checkstyle 9.3 -> 10.26.1 with maven-checkstyle-plugin 3.4.0 -> 3.6.0. 10.26.1 is the last Checkstyle line that runs on Java 11 (Checkstyle 11+ requires Java 17, which the Java 11 build lanes cannot use). The inline rule set needs no changes and reports zero violations on all modules. * audience-annotations 0.13.0 -> 0.15.1 (only a managed version for the hbase-shaded-client transitive dependency). Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Signed-off-by: Oleksandr Porunov <alexandr.porunov@gmail.com>
porunov
force-pushed
the
java11-followup-deps
branch
from
September 16, 2026 12:50
692b7a7 to
8659010
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Follow-up to #4948 / #3547: the dependency updates that were blocked on Java 8 support.
com.github.ben-manes.caffeine:caffeinecom.google.errorprone:error_prone_annotations(managed)requireUpperBoundDeps)com.puppycrawl.tools:checkstylemaven-checkstyle-pluginorg.apache.yetus:audience-annotations(managed)hbase-shaded-clientCaffeine 3
JanusGraph's seven Caffeine call sites (
ExpirationKCVSCache,CaffeineVertexCache,CaffeineSubqueryCache,RelationQueryCache,StandardSchemaCache,StandardLockCleanerService,StandardTransactionLogProcessor) only use builder options andCachemethods that are unchanged in 3.x; none of the APIs removed in 3.0 (CacheWriter,StatsCounter.recordEvictionvariants,CacheStatsconstructors,UnsafeAccess) are used. Caffeine 3.2 switched its nullness annotations from the Checker Framework to JSpecify, so thechecker-qualexclusion on thejanusgraph-coredependency no longer excluded anything and is removed; the managederror_prone_annotationsis raised to the version Caffeine 3.2.4 declares.Checkstyle 10
Checkstyle 11 and newer require Java 17, so 10.26.1 is the ceiling while JanusGraph builds on Java 11. The inline rule set in the root POM works unchanged and reports 0 violations in all 32 modules (main and test sources).
Verification
mvn install -DskipTestson Java 11: enforcer (requireUpperBoundDeps) and Checkstyle pass on every module.janusgraph-core(82 tests),janusgraph-inmemory(572, exercises the Caffeine-based vertex, subquery, schema and KCVS caches throughJanusGraphTest) andjanusgraph-test(998) on Java 11, plusjanusgraph-coreandjanusgraph-inmemoryon Java 25 — all green.Thank you for contributing to JanusGraph!
In order to streamline the review of the contribution we ask you
to ensure the following steps have been taken:
For all changes:
master)?For code changes:
For documentation related changes:
🤖 Generated with Claude Code