dependabot[bot] opened a new pull request, #2573:
URL: https://github.com/apache/karaf/pull/2573

   Bumps 
[com.graphql-java:graphql-java](https://github.com/graphql-java/graphql-java) 
from 22.3 to 26.0.
   <details>
   <summary>Release notes</summary>
   <p><em>Sourced from <a 
href="https://github.com/graphql-java/graphql-java/releases";>com.graphql-java:graphql-java's
 releases</a>.</em></p>
   <blockquote>
   <h2>26.0</h2>
   <p>This is the 26.0 release of graphql-java. Highlights are summarized 
below; the full list of merged PRs is at the end.</p>
   <h2>⚠️ Breaking Changes</h2>
   <h3>Query complexity limits are now enforced by default</h3>
   <p>New <code>QueryComplexityLimits</code> validation checks 
<code>maxDepth</code> (default <strong>100</strong>) and 
<code>maxFieldsCount</code> (default <strong>100,000</strong>) as part of 
standard validation. Queries exceeding these limits will now fail with new 
<code>MaxQueryDepthExceeded</code> / <code>MaxQueryFieldsExceeded</code> 
validation errors.</p>
   <ul>
   <li>Set custom limits via <code>GraphQLContext</code> using 
<code>QueryComplexityLimits.KEY</code>.</li>
   <li>Disable entirely with <code>QueryComplexityLimits.NONE</code>.</li>
   </ul>
   <p>Introduced in <a 
href="https://redirect.github.com/graphql-java/graphql-java/issues/4256";>#4256</a>.</p>
   <h3>Validation rule filtering API changed</h3>
   <p>In <a 
href="https://redirect.github.com/graphql-java/graphql-java/issues/4228";>#4228</a>
 the rule-filter predicate changed from 
<code>Predicate&lt;Class&lt;?&gt;&gt;</code> to 
<code>Predicate&lt;OperationValidationRule&gt;</code> in 
<code>Validator.validateDocument(...)</code> and 
<code>ParseAndValidate.parseAndValidate(...)</code>. Callers that filtered by 
class (e.g. <code>rule -&gt; rule != NoUnusedFragments.class</code>) must 
migrate to the enum (<code>rule -&gt; rule != 
OperationValidationRule.NO_UNUSED_FRAGMENTS</code>). The <code>@Internal</code> 
classes <code>AbstractRule</code> and <code>RulesVisitor</code> were 
removed.</p>
   <h3>Built-in directive handling consolidated (<a 
href="https://redirect.github.com/graphql-java/graphql-java/issues/4229";>#4229</a>)</h3>
   <ul>
   <li><code>DirectiveInfo</code> was removed. Replace usages:
   <ul>
   <li><code>DirectiveInfo.isGraphqlSpecifiedDirective(...)</code> → 
<code>Directives.isBuiltInDirective(...)</code></li>
   <li><code>DirectiveInfo.GRAPHQL_SPECIFICATION_DIRECTIVES</code> → 
<code>Directives.BUILT_IN_DIRECTIVES</code></li>
   <li><code>DirectiveInfo.GRAPHQL_SPECIFICATION_DIRECTIVE_MAP</code> → 
<code>Directives.BUILT_IN_DIRECTIVES_MAP</code></li>
   </ul>
   </li>
   <li>Directive ordering is now consistent: all 7 built-in directives appear 
first, followed by user-defined directives.</li>
   <li><code>GraphQLSchema.Builder.clearDirectives()</code> was initially 
removed then re-added in <a 
href="https://redirect.github.com/graphql-java/graphql-java/issues/4276";>#4276</a>
 with new semantics — it clears all <code>additionalDirectives</code>, but 
built-in directives are always re-added automatically at build time.</li>
   </ul>
   <h3>OneOf inhabitability validation (<a 
href="https://redirect.github.com/graphql-java/graphql-java/issues/4248";>#4248</a>)</h3>
   <p>New validator rejects OneOf input types that cannot be populated with a 
finite value (e.g. <code>input A @oneOf { a: A }</code>). Schemas that 
previously validated may now be rejected.</p>
   <h3>Non-null field validation for code-built schemas (<a 
href="https://redirect.github.com/graphql-java/graphql-java/issues/4194";>#4194</a>)</h3>
   <p>Code-built schemas now perform the same deprecated-on-non-null field 
validation as SDL-built ones. Schemas relying on the gap may now fail 
validation.</p>
   <h3><code>GraphQLSchema.getCodeRegistry()</code> is no longer 
<code>@Nullable</code> (<a 
href="https://redirect.github.com/graphql-java/graphql-java/issues/4247";>#4247</a>)</h3>
   <p>The return type was incorrectly annotated nullable. Callers may now drop 
redundant null checks; downstream nullness tooling will reflect the change.</p>
   <h3>JSpecify nullability annotations rolled out broadly</h3>
   <p>Waves 2 and 3 (<a 
href="https://redirect.github.com/graphql-java/graphql-java/issues/4184";>#4184</a>,
 <a 
href="https://redirect.github.com/graphql-java/graphql-java/issues/4274";>#4274</a>)
 plus many individual PRs annotated hundreds of classes across 
<code>graphql.analysis</code>, <code>graphql.execution</code>, 
<code>graphql.language</code>, <code>graphql.schema</code> and others with 
<code>@NullMarked</code>/<code>@NullUnmarked</code>/<code>@Nullable</code>. 
Kotlin and other null-aware callers will now see stricter nullability 
contracts; code that relied on previously-permissive signatures may need 
adjustment.</p>
   <h2>✨ New Features</h2>
   <ul>
   <li><strong><code>GraphQLSchema.FastBuilder</code></strong> (<a 
href="https://redirect.github.com/graphql-java/graphql-java/issues/4197";>#4197</a>)
 — a more restrictive but <strong>~5× faster</strong> schema builder that 
reduces both time and memory for large schemas.</li>
   <li><strong>Query complexity limits</strong> (<a 
href="https://redirect.github.com/graphql-java/graphql-java/issues/4256";>#4256</a>)
 — depth/field-count guardrails baked into validation (see breaking changes 
above for the enforcement side).</li>
   <li><strong><code>QueryAppliedDirective</code> on operations and 
documents</strong> (<a 
href="https://redirect.github.com/graphql-java/graphql-java/issues/4297";>#4297</a>)
 — directives applied at the operation/document level are now exposed as 
<code>QueryAppliedDirective</code>s.</li>
   <li><strong>New instrumentation hook for post-exception-handling 
results</strong> (<a 
href="https://redirect.github.com/graphql-java/graphql-java/issues/4206";>#4206</a>,
 <a 
href="https://redirect.github.com/graphql-java/graphql-java/issues/4207";>#4207</a>)
 — observe the <code>DataFetcherResult</code> after 
<code>DataFetcherExceptionHandler</code> has mapped exceptions to errors. 
<code>ChainedInstrumentation</code> delegates the new hook correctly.</li>
   <li><strong>Generic <code>DataFetcherResult.newBuilder(T 
data)</code></strong> (<a 
href="https://redirect.github.com/graphql-java/graphql-java/issues/4254";>#4254</a>)
 — removes the need for explicit type witnesses on the common 
<code>DataFetcherResult.&lt;T&gt;newResult().data(x)...</code> pattern.</li>
   <li><strong>Re-added 
<code>GraphQLSchema.Builder.clearDirectives()</code></strong> (<a 
href="https://redirect.github.com/graphql-java/graphql-java/issues/4276";>#4276</a>)
 — useful with <code>GraphQLSchema.transform</code> to rewrite non-built-in 
directives; built-ins are always re-added.</li>
   <li><strong><code>toString()</code> on AST directives holders</strong> (<a 
href="https://redirect.github.com/graphql-java/graphql-java/issues/4195";>#4195</a>).</li>
   </ul>
   <h2>⚡ Performance</h2>
   <ul>
   <li><strong>Incremental <code>@defer</code> execution starts 
earlier</strong> (<a 
href="https://redirect.github.com/graphql-java/graphql-java/issues/4174";>#4174</a>)
 — begins processing deferred payloads as soon as the first incremental call is 
detected instead of waiting for the initial result to complete.</li>
   <li><strong>Validation consolidation</strong> (<a 
href="https://redirect.github.com/graphql-java/graphql-java/issues/4228";>#4228</a>)
 — all operation validation rules run in a single 
<code>OperationValidator</code> pass, significantly cutting validation 
overhead.</li>
   </ul>
   <!-- raw HTML omitted -->
   </blockquote>
   <p>... (truncated)</p>
   </details>
   <details>
   <summary>Commits</summary>
   <ul>
   <li>See full diff in <a 
href="https://github.com/graphql-java/graphql-java/commits";>compare 
view</a></li>
   </ul>
   </details>
   <br />
   
   
   [![Dependabot compatibility 
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=com.graphql-java:graphql-java&package-manager=maven&previous-version=22.3&new-version=26.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
   
   Dependabot will resolve any conflicts with this PR as long as you don't 
alter it yourself. You can also trigger a rebase manually by commenting 
`@dependabot rebase`.
   
   [//]: # (dependabot-automerge-start)
   [//]: # (dependabot-automerge-end)
   
   ---
   
   <details>
   <summary>Dependabot commands and options</summary>
   <br />
   
   You can trigger Dependabot actions by commenting on this PR:
   - `@dependabot rebase` will rebase this PR
   - `@dependabot recreate` will recreate this PR, overwriting any edits that 
have been made to it
   - `@dependabot show <dependency name> ignore conditions` will show all of 
the ignore conditions of the specified dependency
   - `@dependabot ignore this major version` will close this PR and stop 
Dependabot creating any more for this major version (unless you reopen the PR 
or upgrade to it yourself)
   - `@dependabot ignore this minor version` will close this PR and stop 
Dependabot creating any more for this minor version (unless you reopen the PR 
or upgrade to it yourself)
   - `@dependabot ignore this dependency` will close this PR and stop 
Dependabot creating any more for this dependency (unless you reopen the PR or 
upgrade to it yourself)
   
   
   </details>


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to