dependabot[bot] opened a new pull request, #17678: URL: https://github.com/apache/camel/pull/17678
Bumps [com.graphql-java:graphql-java](https://github.com/graphql-java/graphql-java) from 22.3 to 23.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>23.0</h2> <p>Thanks to everyone for contributing to this release, through pull requests, issues, and discussions!</p> <p>This is a major release which contains breaking changes.</p> <h2>Key changes</h2> <ul> <li> <p>Enable batching on Mutations <a href="https://redirect.github.com/graphql-java/graphql-java/pull/3737">graphql-java/graphql-java#3737</a></p> </li> <li> <p>Support for draft error handling directive <code>@experimental_disableErrorPropagation</code> <a href="https://redirect.github.com/graphql-java/graphql-java/pull/3772">graphql-java/graphql-java#3772</a></p> </li> <li> <p>DataFetchers can now return reactive-streams Publisher objects from them and they will be turned into a CompleteableFuture value. Note only a single value will be retrieved from the Publisher <a href="https://redirect.github.com/graphql-java/graphql-java/pull/3731">graphql-java/graphql-java#3731</a></p> </li> <li> <p>We changed from JetBrains nullability annotations to JSpecify annotations <a href="https://redirect.github.com/graphql-java/graphql-java/pull/3851">graphql-java/graphql-java#3851</a>. JSpecify is a new industry consortium effort, which has been adopted by Spring. See more in the documentation: <a href="https://jspecify.dev/docs/start-here/">https://jspecify.dev/docs/start-here/</a></p> </li> <li> <p>A new experimental callback is available to track the execution state of GraphQL Java: it allows for being notified when GraphQL Java is running actively code vs waiting/finished. See <a href="https://github.com/graphql-java/graphql-java/blob/master/src/test/groovy/graphql/EngineRunningTest.groovy#L174">https://github.com/graphql-java/graphql-java/blob/master/src/test/groovy/graphql/EngineRunningTest.groovy#L174</a> for how to use it</p> </li> <li> <p>We have also released DataLoader 4.0.0 and made graphql-java dependent on it. See the release notes: <a href="https://github.com/graphql-java/java-dataloader/releases">https://github.com/graphql-java/java-dataloader/releases</a></p> </li> <li> <p><code>@defer</code> directive is now included in the schema by default <a href="https://redirect.github.com/graphql-java/graphql-java/pull/3839">graphql-java/graphql-java#3839</a></p> </li> </ul> <h2>Performance improvements</h2> <ul> <li> <p>Only call overlapping validation once during validation, which will significantly reduce validation time, with more savings for larger operations. We found ~150% improvement in benchmarks. <a href="https://redirect.github.com/graphql-java/graphql-java/pull/3835">graphql-java/graphql-java#3835</a></p> </li> <li> <p>Reducing object allocations and overhead from stream, thanks <a href="https://github.com/kilink"><code>@kilink</code></a> for contributing many improvements <a href="https://redirect.github.com/graphql-java/graphql-java/pull/3804">graphql-java/graphql-java#3804</a> <a href="https://redirect.github.com/graphql-java/graphql-java/pull/3803">graphql-java/graphql-java#3803</a> <a href="https://redirect.github.com/graphql-java/graphql-java/pull/3801">graphql-java/graphql-java#3801</a> <a href="https://redirect.github.com/graphql-java/graphql-java/pull/3798">graphql-java/graphql-java#3798</a> <a href="https://redirect.github.com/graphql-java/graphql-java/pull/3797">graphql-java/graphql-java#3797</a> <a href="https://redirect.github.com/graphql-java/graphql-java/pull/3710">graphql-java/graphql-java#3710</a></p> </li> <li> <p>Reducing object allocations for <code>PropertyDataFetcher</code> and <code>SchemaGeneratorHelper</code> <a href="https://redirect.github.com/graphql-java/graphql-java/pull/3755">graphql-java/graphql-java#3755</a> <a href="https://redirect.github.com/graphql-java/graphql-java/pull/3754">graphql-java/graphql-java#3754</a></p> </li> <li> <p>Improvement on <code>DataFetchingSelectionSet.getImmediateFields()</code>, if descendant traversal is not required this saves considerable time. Thanks <a href="https://github.com/timward60"><code>@timward60</code></a> <a href="https://redirect.github.com/graphql-java/graphql-java/pull/3855">graphql-java/graphql-java#3855</a></p> </li> <li> <p>Comparing performance improvements. We run performance benchmarks on all changes, and you can view these results inside the GitHub repo. You can then use this JMH visualisation tool to compare benchmarks from different commits, for example these before and after results from the DataFetcherSelectionSet optimisation: <a href="https://jmh.morethan.io/?sources=https://raw.githubusercontent.com/graphql-java/graphql-java/refs/heads/master/performance-results/2025-03-18T23%3A42%3A07Z-3d7dce5e49dfbe92d656629ae4fdbab979bba8be-jdk17.json,https://raw.githubusercontent.com/graphql-java/graphql-java/refs/heads/master/performance-results/2025-03-20T04%3A24%3A26Z-9a931ba6ad8e2ee49ea48c98ca86c2901f2343b1-jdk17.json">https://jmh.morethan.io/?sources=https://raw.githubusercontent.com/graphql-java/graphql-java/refs/heads/master/performance-results/2025-03-18T23%3A42%3A07Z-3d7dce5e49dfbe92d656629ae4fdbab979bba8be-jdk17.json,https://raw.githubusercontent.com/graphql-java/graphql-java/refs/heads/ma ster/performance-results/2025-03-20T04%3A24%3A26Z-9a931ba6ad8e2ee49ea48c98ca86c2901f2343b1-jdk17.json</a></p> </li> </ul> <p>See all performance improvements on GitHub: <a href="https://github.com/graphql-java/graphql-java/issues?q=is%3Amerged%20label%3A%22performance%22%20milestone%3A%2223.0%20breaking%20changes%22%20">https://github.com/graphql-java/graphql-java/issues?q=is%3Amerged%20label%3A%22performance%22%20milestone%3A%2223.0%20breaking%20changes%22%20</a></p> <h2>Breaking changes</h2> <ul> <li> <p>Strict runtime wiring redefinition checks now on by default. We now have stricter runtime wiring redefinition checks by default to catch invalid cases. For example, a field that already had a DataFetcher registered must not have a second DataFetcher registered. This can be toggled off. <a href="https://redirect.github.com/graphql-java/graphql-java/pull/3824">graphql-java/graphql-java#3824</a></p> </li> <li> <p>Removed an unused protected method in ExecutionStrategy. <a href="https://redirect.github.com/graphql-java/graphql-java/pull/3881">graphql-java/graphql-java#3881</a></p> </li> <li> <p>A small breaking change to <code>AstPrinter</code> to enable re-use of StringBuilders <a href="https://redirect.github.com/graphql-java/graphql-java/pull/3853">graphql-java/graphql-java#3853</a></p> </li> <li> <p>Improvement in a few directive and applied directive builders to address a bug where all elements were cleared. <a href="https://redirect.github.com/graphql-java/graphql-java/pull/3825">graphql-java/graphql-java#3825</a></p> </li> <li> <p>Breaking change for a new specification requirement, to prevent <code>@include</code> and <code>@skip</code> directives on subscription root fields <a href="https://redirect.github.com/graphql-java/graphql-java/pull/3871">graphql-java/graphql-java#3871</a></p> </li> </ul> <p>See all breaking changes on GitHub: <a href="https://github.com/graphql-java/graphql-java/issues?q=is%3Amerged%20label%3A%22breaking%20change%22%20milestone%3A%2223.0%20breaking%20changes%22">https://github.com/graphql-java/graphql-java/issues?q=is%3Amerged%20label%3A%22breaking%20change%22%20milestone%3A%2223.0%20breaking%20changes%22</a></p> <h2>Security</h2> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/graphql-java/graphql-java/commit/27b9defd98c4d044b6142c18773188f0dc9113c2"><code>27b9def</code></a> Merge pull request <a href="https://redirect.github.com/graphql-java/graphql-java/issues/3858">#3858</a> from graphql-java/java-dataloader-update</li> <li><a href="https://github.com/graphql-java/graphql-java/commit/d2c45ea3b56d01ad2d64b2d46eeb3e47f41592e7"><code>d2c45ea</code></a> Add performance results for commit 154bb89d14e9701d1b9f0764cbf813ba3a3c050a</li> <li><a href="https://github.com/graphql-java/graphql-java/commit/35562f14c02728a7d91dedd75cb1c18c74735b80"><code>35562f1</code></a> Merge branch 'master' into java-dataloader-update</li> <li><a href="https://github.com/graphql-java/graphql-java/commit/154bb89d14e9701d1b9f0764cbf813ba3a3c050a"><code>154bb89</code></a> Merge pull request <a href="https://redirect.github.com/graphql-java/graphql-java/issues/3893">#3893</a> from graphql-java/tracking-refactor</li> <li><a href="https://github.com/graphql-java/graphql-java/commit/59195c1099ee18f8600c1b1afc51f454ca519746"><code>59195c1</code></a> cleanup</li> <li><a href="https://github.com/graphql-java/graphql-java/commit/b3e94f4d12584557b62e210a35c3f6419588e344"><code>b3e94f4</code></a> Add performance results for commit 14c9136a6a33103f69f86f39bcd486bcae2ff525</li> <li><a href="https://github.com/graphql-java/graphql-java/commit/14c9136a6a33103f69f86f39bcd486bcae2ff525"><code>14c9136</code></a> Merge pull request <a href="https://redirect.github.com/graphql-java/graphql-java/issues/3900">#3900</a> from graphql-java/updgrade-gradle-8.13</li> <li><a href="https://github.com/graphql-java/graphql-java/commit/69f8230b61f21193f2f8895aa4c48964c9efd6ce"><code>69f8230</code></a> upgrade to gradle 8.13</li> <li><a href="https://github.com/graphql-java/graphql-java/commit/4ae08974c1f855e8431eb82864fcf0283778db8d"><code>4ae0897</code></a> Merge branch 'master' into tracking-refactor</li> <li><a href="https://github.com/graphql-java/graphql-java/commit/6054e56caa9bb2c50a1793131d94bb3891eb0e17"><code>6054e56</code></a> Add performance results for commit 31b5f1b83c785c1acaff247c88aca6763328b754</li> <li>Additional commits viewable in <a href="https://github.com/graphql-java/graphql-java/compare/v22.3...v23.0">compare view</a></li> </ul> </details> <br /> [](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 merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@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]
