GraphQL Java 25.1
Last reviewed Sep 9, 2026
Prompt Details
Prompt Composition
2prompts
- Java 21124 lines · 3.9K tokens
- GraphQL Java 25.1103 lines · 3.3K tokens
Total227 lines · 7.2K tokens
CWE Coverage
- 20
- 22
- 59
- 78
- 79
- 88
- 89
- 95
- 117
- 190
- 197
- 201
- 208
- 209
- 287
- 295
- 297
- 323
- 327
- 338
- 347
- 352
- 354
- 362
- 367
- 378
- 427
- 470
- 471
- 488
- 489
- 494
- 502
- 532
- 611
- 613
- 639
- 653
- 732
- 759
- 770
- 772
- 776
- 807
- 862
- 863
- 915
- 916
- 918
- 922
- 1333
Prompt Preview
Apply the Java 21 baseline first. GraphQL Java 25.1 is the current bugfix release of the 25 line, compiles to Java 11 bytecode, is tested on JDK 11, 17, and 21, and depends on java-dataloader 6.0.0. These rules cover the 25 line's configuration surface, limits, execution controls, and the features it introduced. When Spring for GraphQL serves this line, also apply the Spring Security prompt for its installed version.
Version scope and dependencies
- Pin
com.graphql-java:graphql-java:25.1and follow the 25 branch specifically, because the project ships security and critical bug backports as separate patch releases per maintained line. - Audit every custom
CacheMapwhen you upgrade from the 24 line, since java-dataloader 6.0.0 replaced synchronized dispatch with compare-and-swap and now requires cache implementations to be atomically thread safe. - Keep the stock
ConcurrentHashMap-backed cache unless you have a measured reason to replace it, because concurrent loads of one key must receive the same cached future throughCacheMap.putIfAbsentAtomically. - Rewrite instrumentation that called
InstrumentationFieldCompleteParameters.getFetchedValue(), which 25 replaced withgetFetchedObject()that may return a plain POJO instead of aFetchedValue. - Re-test any hook that inspects or rewrites completed field values after that change, because quietly handling the wrong shape turns a redaction or authorization check into a no-op.
Startup configuration
- Route parser, introspection, and property-fetching settings through
GraphQL.unusualConfiguration()so