UNPKG

@graphql-hive/gateway-runtime

Version:
709 lines (468 loc) 183 kB
# @graphql-hive/gateway-runtime ## 2.4.0-alpha-69c4d19643f57268271203fbf82c3b8687f13723 ### Minor Changes - [#1738](https://github.com/graphql-hive/gateway/pull/1738) [`475ccdf`](https://github.com/graphql-hive/gateway/commit/475ccdfcc6961ea0cd7ea4755ea6696ff92f6b56) Thanks [@EmrysMyrddin](https://github.com/EmrysMyrddin)! - ## New Hive CDN mirror and circuit breaker Hive CDN introduced a new CDN mirror and circuit breaker to mitigate the risk related to Cloudflare services failures. You can now provide multiple endpoint in Hive Console related features, and configure the circuit breaker handling CDN failure and how it switches to the CDN mirror. ### Usage To enable this feature, please provide the mirror endpoint in `supergraph` and `persistedDocument` options: ```diff import { defineConfig } from '@graphql-hive/gateway' export const gatewayConfig = defineConfig({ supergraph: { type: 'hive', - endpoint: 'https://cdn.graphql-hive.com/artifacts/v1/...../supergraph', + endpoint: [ + 'https://cdn.graphql-hive.com/artifacts/v1/...../supergraph', + 'https://cdn-mirror.graphql-hive.com/artifacts/v1/...../supergraph' + ] }, persistedDocuments: { - endpoint: 'https://cdn.graphql-hive.com/artifacts/v1/...', + endpoint: [ + 'https://cdn.graphql-hive.com/artifacts/v1/...', + 'https://cdn-mirror.graphql-hive.com/artifacts/v1/...' + ] } }) ``` ### Configuration The circuit breaker has production ready default configuration, but you customize its behavior: ```ts import { defineConfig, CircuitBreakerConfiguration } from '@graphql-hive/gateway'; const circuitBreaker: CircuitBreakerConfiguration = { resetTimeout: 30_000; // 30s errorThresholdPercentage: 50; volumeThreshold: 5; } export const gatewayConfig = defineConfig({ supergraph: { type: 'hive', endpoint: [...], circuitBreaker, }, persistedDocuments: { type: 'hive', endpoint: [...], circuitBreaker, }, }); ``` ### Patch Changes - [#1725](https://github.com/graphql-hive/gateway/pull/1725) [`0ded04f`](https://github.com/graphql-hive/gateway/commit/0ded04f56d9d9dea8c412e2e320fb89815108362) Thanks [@dependabot](https://github.com/apps/dependabot)! - dependencies updates: - Updated dependency [`@graphql-hive/core@^0.15.1` ↗︎](https://www.npmjs.com/package/@graphql-hive/core/v/0.15.1) (from `^0.13.2`, in `dependencies`) - Updated dependency [`@graphql-hive/yoga@^0.43.1` ↗︎](https://www.npmjs.com/package/@graphql-hive/yoga/v/0.43.1) (from `^0.42.4`, in `dependencies`) - Updated dependencies [[`bc6cddd`](https://github.com/graphql-hive/gateway/commit/bc6cddd1c53a012dd02a1d8a7217a28e65cc6ae9), [`bc6cddd`](https://github.com/graphql-hive/gateway/commit/bc6cddd1c53a012dd02a1d8a7217a28e65cc6ae9), [`1dbc653`](https://github.com/graphql-hive/gateway/commit/1dbc6536cb992a705cac7894acca6fe5431b72de), [`bc6cddd`](https://github.com/graphql-hive/gateway/commit/bc6cddd1c53a012dd02a1d8a7217a28e65cc6ae9)]: - @graphql-mesh/fusion-runtime@1.6.0-alpha-69c4d19643f57268271203fbf82c3b8687f13723 - @graphql-tools/wrap@11.1.0-alpha-69c4d19643f57268271203fbf82c3b8687f13723 - @graphql-tools/delegate@12.0.0-alpha-69c4d19643f57268271203fbf82c3b8687f13723 - @graphql-tools/stitch@10.1.4-alpha-69c4d19643f57268271203fbf82c3b8687f13723 - @graphql-mesh/hmac-upstream-signature@2.0.8 - @graphql-tools/federation@4.2.4-alpha-69c4d19643f57268271203fbf82c3b8687f13723 - @graphql-tools/batch-delegate@10.0.6-alpha-69c4d19643f57268271203fbf82c3b8687f13723 ## 2.3.5 ### Patch Changes - [#1683](https://github.com/graphql-hive/gateway/pull/1683) [`4801627`](https://github.com/graphql-hive/gateway/commit/4801627ef16e963bed0052d0f071879004614a14) Thanks [@dependabot](https://github.com/apps/dependabot)! - dependencies updates: - Updated dependency [`@graphql-hive/core@^0.13.1` ↗︎](https://www.npmjs.com/package/@graphql-hive/core/v/0.13.1) (from `^0.13.0`, in `dependencies`) - Updated dependency [`@graphql-hive/yoga@^0.42.3` ↗︎](https://www.npmjs.com/package/@graphql-hive/yoga/v/0.42.3) (from `^0.42.2`, in `dependencies`) - [#1684](https://github.com/graphql-hive/gateway/pull/1684) [`478d7e2`](https://github.com/graphql-hive/gateway/commit/478d7e25ef47fb8fb6183010a8bb61ac31688c55) Thanks [@dependabot](https://github.com/apps/dependabot)! - dependencies updates: - Updated dependency [`@whatwg-node/server@^0.10.17` ↗︎](https://www.npmjs.com/package/@whatwg-node/server/v/0.10.17) (from `^0.10.15`, in `dependencies`) - [#1691](https://github.com/graphql-hive/gateway/pull/1691) [`7ecaf7e`](https://github.com/graphql-hive/gateway/commit/7ecaf7e8f658c4e4c1a91d1e8db3c1a8ceca51cb) Thanks [@dependabot](https://github.com/apps/dependabot)! - dependencies updates: - Updated dependency [`@graphql-hive/core@^0.13.2` ↗︎](https://www.npmjs.com/package/@graphql-hive/core/v/0.13.2) (from `^0.13.1`, in `dependencies`) - Updated dependency [`@graphql-hive/yoga@^0.42.4` ↗︎](https://www.npmjs.com/package/@graphql-hive/yoga/v/0.42.4) (from `^0.42.3`, in `dependencies`) - Updated dependency [`@graphql-tools/utils@^10.10.3` ↗︎](https://www.npmjs.com/package/@graphql-tools/utils/v/10.10.3) (from `^10.10.1`, in `dependencies`) - Updated dependency [`@types/node@^24.10.1` ↗︎](https://www.npmjs.com/package/@types/node/v/24.10.1) (from `^24.10.0`, in `dependencies`) - [#1692](https://github.com/graphql-hive/gateway/pull/1692) [`a81b8b2`](https://github.com/graphql-hive/gateway/commit/a81b8b20ecdfda53fb77ae5fae3cbd508ab08936) Thanks [@dependabot](https://github.com/apps/dependabot)! - dependencies updates: - Updated dependency [`@envelop/generic-auth@^11.0.0` ↗︎](https://www.npmjs.com/package/@envelop/generic-auth/v/11.0.0) (from `^10.0.1`, in `dependencies`) - [#1695](https://github.com/graphql-hive/gateway/pull/1695) [`ce83f35`](https://github.com/graphql-hive/gateway/commit/ce83f356cbeb2f8413689204275710e7d7a27822) Thanks [@dependabot](https://github.com/apps/dependabot)! - dependencies updates: - Updated dependency [`@envelop/disable-introspection@^9.0.0` ↗︎](https://www.npmjs.com/package/@envelop/disable-introspection/v/9.0.0) (from `^8.0.0`, in `dependencies`) - Updated dependencies [[`7ecaf7e`](https://github.com/graphql-hive/gateway/commit/7ecaf7e8f658c4e4c1a91d1e8db3c1a8ceca51cb), [`7ecaf7e`](https://github.com/graphql-hive/gateway/commit/7ecaf7e8f658c4e4c1a91d1e8db3c1a8ceca51cb), [`7ecaf7e`](https://github.com/graphql-hive/gateway/commit/7ecaf7e8f658c4e4c1a91d1e8db3c1a8ceca51cb), [`7ecaf7e`](https://github.com/graphql-hive/gateway/commit/7ecaf7e8f658c4e4c1a91d1e8db3c1a8ceca51cb), [`7ecaf7e`](https://github.com/graphql-hive/gateway/commit/7ecaf7e8f658c4e4c1a91d1e8db3c1a8ceca51cb), [`7ecaf7e`](https://github.com/graphql-hive/gateway/commit/7ecaf7e8f658c4e4c1a91d1e8db3c1a8ceca51cb), [`7ecaf7e`](https://github.com/graphql-hive/gateway/commit/7ecaf7e8f658c4e4c1a91d1e8db3c1a8ceca51cb), [`478d7e2`](https://github.com/graphql-hive/gateway/commit/478d7e25ef47fb8fb6183010a8bb61ac31688c55), [`7ecaf7e`](https://github.com/graphql-hive/gateway/commit/7ecaf7e8f658c4e4c1a91d1e8db3c1a8ceca51cb), [`478d7e2`](https://github.com/graphql-hive/gateway/commit/478d7e25ef47fb8fb6183010a8bb61ac31688c55), [`7ecaf7e`](https://github.com/graphql-hive/gateway/commit/7ecaf7e8f658c4e4c1a91d1e8db3c1a8ceca51cb), [`7ecaf7e`](https://github.com/graphql-hive/gateway/commit/7ecaf7e8f658c4e4c1a91d1e8db3c1a8ceca51cb), [`7ecaf7e`](https://github.com/graphql-hive/gateway/commit/7ecaf7e8f658c4e4c1a91d1e8db3c1a8ceca51cb), [`2993f24`](https://github.com/graphql-hive/gateway/commit/2993f24f8e46853c0d2667c0cd2bf96190f3a2b2)]: - @graphql-hive/logger@1.0.9 - @graphql-mesh/fusion-runtime@1.5.1 - @graphql-mesh/hmac-upstream-signature@2.0.8 - @graphql-mesh/transport-common@1.0.12 - @graphql-tools/batch-delegate@10.0.5 - @graphql-tools/delegate@11.1.3 - @graphql-tools/executor-common@1.0.5 - @graphql-tools/executor-http@3.0.7 - @graphql-tools/federation@4.2.3 - @graphql-tools/stitch@10.1.3 - @graphql-tools/wrap@11.0.5 ## 2.3.4 ### Patch Changes - Updated dependencies [[`073a078`](https://github.com/graphql-hive/gateway/commit/073a078c8cdbdd4ec33fdb9d3aeb4955fbcfb103)]: - @graphql-mesh/fusion-runtime@1.5.0 - @graphql-mesh/hmac-upstream-signature@2.0.7 ## 2.3.3 ### Patch Changes - [#1677](https://github.com/graphql-hive/gateway/pull/1677) [`3fbf360`](https://github.com/graphql-hive/gateway/commit/3fbf3602bedbc4c4bb1947fcdca60bc27789ceb7) Thanks [@dependabot](https://github.com/apps/dependabot)! - dependencies updates: - Updated dependency [`@graphql-mesh/plugin-response-cache@^0.104.18` ↗︎](https://www.npmjs.com/package/@graphql-mesh/plugin-response-cache/v/0.104.18) (from `^0.104.17`, in `dependencies`) - Updated dependency [`@graphql-mesh/types@^0.104.16` ↗︎](https://www.npmjs.com/package/@graphql-mesh/types/v/0.104.16) (from `^0.104.15`, in `dependencies`) - Updated dependency [`@graphql-mesh/utils@^0.104.16` ↗︎](https://www.npmjs.com/package/@graphql-mesh/utils/v/0.104.16) (from `^0.104.15`, in `dependencies`) - Updated dependencies [[`3fbf360`](https://github.com/graphql-hive/gateway/commit/3fbf3602bedbc4c4bb1947fcdca60bc27789ceb7), [`3fbf360`](https://github.com/graphql-hive/gateway/commit/3fbf3602bedbc4c4bb1947fcdca60bc27789ceb7), [`3fbf360`](https://github.com/graphql-hive/gateway/commit/3fbf3602bedbc4c4bb1947fcdca60bc27789ceb7)]: - @graphql-mesh/fusion-runtime@1.4.3 - @graphql-mesh/hmac-upstream-signature@2.0.7 - @graphql-mesh/transport-common@1.0.11 ## 2.3.2 ### Patch Changes - [#1608](https://github.com/graphql-hive/gateway/pull/1608) [`9c789fb`](https://github.com/graphql-hive/gateway/commit/9c789fb11f6de80e781ff056cb5b98c548938bea) Thanks [@ardatan](https://github.com/ardatan)! - dependencies updates: - Updated dependency [`@envelop/generic-auth@^10.0.1` ↗︎](https://www.npmjs.com/package/@envelop/generic-auth/v/10.0.1) (from `^10.0.0`, in `dependencies`) - Updated dependency [`@graphql-mesh/plugin-response-cache@^0.104.15` ↗︎](https://www.npmjs.com/package/@graphql-mesh/plugin-response-cache/v/0.104.15) (from `^0.104.14`, in `dependencies`) - Updated dependency [`@graphql-mesh/types@^0.104.14` ↗︎](https://www.npmjs.com/package/@graphql-mesh/types/v/0.104.14) (from `^0.104.13`, in `dependencies`) - Updated dependency [`@graphql-mesh/utils@^0.104.14` ↗︎](https://www.npmjs.com/package/@graphql-mesh/utils/v/0.104.14) (from `^0.104.13`, in `dependencies`) - Updated dependency [`@graphql-tools/utils@^10.10.1` ↗︎](https://www.npmjs.com/package/@graphql-tools/utils/v/10.10.1) (from `^10.9.1`, in `dependencies`) - Updated dependency [`@graphql-yoga/plugin-apollo-usage-report@^0.11.1` ↗︎](https://www.npmjs.com/package/@graphql-yoga/plugin-apollo-usage-report/v/0.11.1) (from `^0.11.0`, in `dependencies`) - Updated dependency [`@graphql-yoga/plugin-csrf-prevention@^3.16.1` ↗︎](https://www.npmjs.com/package/@graphql-yoga/plugin-csrf-prevention/v/3.16.1) (from `^3.16.0`, in `dependencies`) - Updated dependency [`@graphql-yoga/plugin-defer-stream@^3.16.1` ↗︎](https://www.npmjs.com/package/@graphql-yoga/plugin-defer-stream/v/3.16.1) (from `^3.16.0`, in `dependencies`) - Updated dependency [`@graphql-yoga/plugin-persisted-operations@^3.16.1` ↗︎](https://www.npmjs.com/package/@graphql-yoga/plugin-persisted-operations/v/3.16.1) (from `^3.16.0`, in `dependencies`) - Updated dependency [`@types/node@^24.10.0` ↗︎](https://www.npmjs.com/package/@types/node/v/24.10.0) (from `^24.7.2`, in `dependencies`) - Updated dependency [`graphql-yoga@^5.16.1` ↗︎](https://www.npmjs.com/package/graphql-yoga/v/5.16.1) (from `^5.16.0`, in `dependencies`) - [#1659](https://github.com/graphql-hive/gateway/pull/1659) [`810e12b`](https://github.com/graphql-hive/gateway/commit/810e12bd5d24f90ade73f3b257a16277d2731355) Thanks [@dependabot](https://github.com/apps/dependabot)! - dependencies updates: - Updated dependency [`@types/node@^24.10.0` ↗︎](https://www.npmjs.com/package/@types/node/v/24.10.0) (from `^24.9.2`, in `dependencies`) - [#1662](https://github.com/graphql-hive/gateway/pull/1662) [`27789de`](https://github.com/graphql-hive/gateway/commit/27789de7967cb5299d471c00434591f309b978ff) Thanks [@ardatan](https://github.com/ardatan)! - dependencies updates: - Updated dependency [`@graphql-tools/utils@^10.10.1` ↗︎](https://www.npmjs.com/package/@graphql-tools/utils/v/10.10.1) (from `^10.10.0`, in `dependencies`) - Updated dependency [`graphql-yoga@^5.16.1` ↗︎](https://www.npmjs.com/package/graphql-yoga/v/5.16.1) (from `^5.16.0`, in `dependencies`) - [#1663](https://github.com/graphql-hive/gateway/pull/1663) [`d678113`](https://github.com/graphql-hive/gateway/commit/d678113debfe28095ed6e09c2abba4451a42608a) Thanks [@dependabot](https://github.com/apps/dependabot)! - dependencies updates: - Updated dependency [`@graphql-yoga/plugin-apollo-usage-report@^0.11.1` ↗︎](https://www.npmjs.com/package/@graphql-yoga/plugin-apollo-usage-report/v/0.11.1) (from `^0.11.0`, in `dependencies`) - Updated dependency [`@graphql-yoga/plugin-csrf-prevention@^3.16.1` ↗︎](https://www.npmjs.com/package/@graphql-yoga/plugin-csrf-prevention/v/3.16.1) (from `^3.16.0`, in `dependencies`) - Updated dependency [`@graphql-yoga/plugin-defer-stream@^3.16.1` ↗︎](https://www.npmjs.com/package/@graphql-yoga/plugin-defer-stream/v/3.16.1) (from `^3.16.0`, in `dependencies`) - Updated dependency [`@graphql-yoga/plugin-persisted-operations@^3.16.1` ↗︎](https://www.npmjs.com/package/@graphql-yoga/plugin-persisted-operations/v/3.16.1) (from `^3.16.0`, in `dependencies`) - [#1669](https://github.com/graphql-hive/gateway/pull/1669) [`1bfac64`](https://github.com/graphql-hive/gateway/commit/1bfac649f00f1b5ac830813030cec64522fea29f) Thanks [@dependabot](https://github.com/apps/dependabot)! - dependencies updates: - Updated dependency [`@graphql-mesh/plugin-response-cache@^0.104.17` ↗︎](https://www.npmjs.com/package/@graphql-mesh/plugin-response-cache/v/0.104.17) (from `^0.104.15`, in `dependencies`) - Updated dependency [`@graphql-mesh/types@^0.104.15` ↗︎](https://www.npmjs.com/package/@graphql-mesh/types/v/0.104.15) (from `^0.104.14`, in `dependencies`) - Updated dependency [`@graphql-mesh/utils@^0.104.15` ↗︎](https://www.npmjs.com/package/@graphql-mesh/utils/v/0.104.15) (from `^0.104.14`, in `dependencies`) - [#1671](https://github.com/graphql-hive/gateway/pull/1671) [`17bbebd`](https://github.com/graphql-hive/gateway/commit/17bbebd241c4285068a6f7045427869d3ca1b1ec) Thanks [@dependabot](https://github.com/apps/dependabot)! - dependencies updates: - Updated dependency [`@whatwg-node/server@^0.10.15` ↗︎](https://www.npmjs.com/package/@whatwg-node/server/v/0.10.15) (from `^0.10.13`, in `dependencies`) - [#1672](https://github.com/graphql-hive/gateway/pull/1672) [`3f6b99d`](https://github.com/graphql-hive/gateway/commit/3f6b99d152cbcc17d4ec3c97bc48dae452982151) Thanks [@dependabot](https://github.com/apps/dependabot)! - dependencies updates: - Updated dependency [`@envelop/core@^5.4.0` ↗︎](https://www.npmjs.com/package/@envelop/core/v/5.4.0) (from `^5.3.2`, in `dependencies`) - Updated dependency [`@graphql-yoga/plugin-apollo-usage-report@^0.11.2` ↗︎](https://www.npmjs.com/package/@graphql-yoga/plugin-apollo-usage-report/v/0.11.2) (from `^0.11.1`, in `dependencies`) - Updated dependency [`@graphql-yoga/plugin-csrf-prevention@^3.16.2` ↗︎](https://www.npmjs.com/package/@graphql-yoga/plugin-csrf-prevention/v/3.16.2) (from `^3.16.1`, in `dependencies`) - Updated dependency [`@graphql-yoga/plugin-defer-stream@^3.16.2` ↗︎](https://www.npmjs.com/package/@graphql-yoga/plugin-defer-stream/v/3.16.2) (from `^3.16.1`, in `dependencies`) - Updated dependency [`@graphql-yoga/plugin-persisted-operations@^3.16.2` ↗︎](https://www.npmjs.com/package/@graphql-yoga/plugin-persisted-operations/v/3.16.2) (from `^3.16.1`, in `dependencies`) - Updated dependency [`graphql-yoga@^5.16.2` ↗︎](https://www.npmjs.com/package/graphql-yoga/v/5.16.2) (from `^5.16.1`, in `dependencies`) - [`c754a96`](https://github.com/graphql-hive/gateway/commit/c754a96d49ea69f54f57a8f1b01baf9d2fb947b6) Thanks [@ardatan](https://github.com/ardatan)! - Use more specific error codes; `GATEWAY_TIMEOUT` -> Server could not get a response from upstream in time `SUBREQUEST_HTTP_ERROR` -> An error occurred while making the HTTP request to the upstream `RESPONSE_VALIDATION_FAILED` -> The response from upstream did not conform to the expected GraphQL response format - Updated dependencies [[`1f58197`](https://github.com/graphql-hive/gateway/commit/1f58197a60882c79430e59638b9396071137a221), [`9c789fb`](https://github.com/graphql-hive/gateway/commit/9c789fb11f6de80e781ff056cb5b98c548938bea), [`9c789fb`](https://github.com/graphql-hive/gateway/commit/9c789fb11f6de80e781ff056cb5b98c548938bea), [`27789de`](https://github.com/graphql-hive/gateway/commit/27789de7967cb5299d471c00434591f309b978ff), [`d678113`](https://github.com/graphql-hive/gateway/commit/d678113debfe28095ed6e09c2abba4451a42608a), [`1bfac64`](https://github.com/graphql-hive/gateway/commit/1bfac649f00f1b5ac830813030cec64522fea29f), [`3f6b99d`](https://github.com/graphql-hive/gateway/commit/3f6b99d152cbcc17d4ec3c97bc48dae452982151), [`9c789fb`](https://github.com/graphql-hive/gateway/commit/9c789fb11f6de80e781ff056cb5b98c548938bea), [`27789de`](https://github.com/graphql-hive/gateway/commit/27789de7967cb5299d471c00434591f309b978ff), [`1bfac64`](https://github.com/graphql-hive/gateway/commit/1bfac649f00f1b5ac830813030cec64522fea29f), [`9c789fb`](https://github.com/graphql-hive/gateway/commit/9c789fb11f6de80e781ff056cb5b98c548938bea), [`27789de`](https://github.com/graphql-hive/gateway/commit/27789de7967cb5299d471c00434591f309b978ff), [`d678113`](https://github.com/graphql-hive/gateway/commit/d678113debfe28095ed6e09c2abba4451a42608a), [`1bfac64`](https://github.com/graphql-hive/gateway/commit/1bfac649f00f1b5ac830813030cec64522fea29f), [`3f6b99d`](https://github.com/graphql-hive/gateway/commit/3f6b99d152cbcc17d4ec3c97bc48dae452982151), [`9c789fb`](https://github.com/graphql-hive/gateway/commit/9c789fb11f6de80e781ff056cb5b98c548938bea), [`27789de`](https://github.com/graphql-hive/gateway/commit/27789de7967cb5299d471c00434591f309b978ff), [`9c789fb`](https://github.com/graphql-hive/gateway/commit/9c789fb11f6de80e781ff056cb5b98c548938bea), [`27789de`](https://github.com/graphql-hive/gateway/commit/27789de7967cb5299d471c00434591f309b978ff), [`d678113`](https://github.com/graphql-hive/gateway/commit/d678113debfe28095ed6e09c2abba4451a42608a), [`9c789fb`](https://github.com/graphql-hive/gateway/commit/9c789fb11f6de80e781ff056cb5b98c548938bea), [`27789de`](https://github.com/graphql-hive/gateway/commit/27789de7967cb5299d471c00434591f309b978ff), [`3f6b99d`](https://github.com/graphql-hive/gateway/commit/3f6b99d152cbcc17d4ec3c97bc48dae452982151), [`9c789fb`](https://github.com/graphql-hive/gateway/commit/9c789fb11f6de80e781ff056cb5b98c548938bea), [`27789de`](https://github.com/graphql-hive/gateway/commit/27789de7967cb5299d471c00434591f309b978ff), [`9c789fb`](https://github.com/graphql-hive/gateway/commit/9c789fb11f6de80e781ff056cb5b98c548938bea), [`27789de`](https://github.com/graphql-hive/gateway/commit/27789de7967cb5299d471c00434591f309b978ff), [`d678113`](https://github.com/graphql-hive/gateway/commit/d678113debfe28095ed6e09c2abba4451a42608a), [`9c789fb`](https://github.com/graphql-hive/gateway/commit/9c789fb11f6de80e781ff056cb5b98c548938bea), [`27789de`](https://github.com/graphql-hive/gateway/commit/27789de7967cb5299d471c00434591f309b978ff), [`d678113`](https://github.com/graphql-hive/gateway/commit/d678113debfe28095ed6e09c2abba4451a42608a), [`9c789fb`](https://github.com/graphql-hive/gateway/commit/9c789fb11f6de80e781ff056cb5b98c548938bea), [`27789de`](https://github.com/graphql-hive/gateway/commit/27789de7967cb5299d471c00434591f309b978ff), [`d678113`](https://github.com/graphql-hive/gateway/commit/d678113debfe28095ed6e09c2abba4451a42608a), [`c754a96`](https://github.com/graphql-hive/gateway/commit/c754a96d49ea69f54f57a8f1b01baf9d2fb947b6)]: - @graphql-hive/logger@1.0.8 - @graphql-mesh/fusion-runtime@1.4.2 - @graphql-mesh/hmac-upstream-signature@2.0.6 - @graphql-mesh/transport-common@1.0.10 - @graphql-tools/batch-delegate@10.0.4 - @graphql-tools/delegate@11.1.2 - @graphql-tools/executor-common@1.0.4 - @graphql-tools/executor-http@3.0.6 - @graphql-tools/federation@4.2.2 - @graphql-tools/stitch@10.1.2 - @graphql-tools/wrap@11.0.4 ## 2.3.1 ### Patch Changes - [#1654](https://github.com/graphql-hive/gateway/pull/1654) [`efed5e0`](https://github.com/graphql-hive/gateway/commit/efed5e0c257edcacb51dae7f670c2026a747a851) Thanks [@dependabot](https://github.com/apps/dependabot)! - dependencies updates: - Updated dependency [`@graphql-tools/utils@^10.10.0` ↗︎](https://www.npmjs.com/package/@graphql-tools/utils/v/10.10.0) (from `^10.9.1`, in `dependencies`) - Updated dependencies [[`efed5e0`](https://github.com/graphql-hive/gateway/commit/efed5e0c257edcacb51dae7f670c2026a747a851), [`efed5e0`](https://github.com/graphql-hive/gateway/commit/efed5e0c257edcacb51dae7f670c2026a747a851), [`efed5e0`](https://github.com/graphql-hive/gateway/commit/efed5e0c257edcacb51dae7f670c2026a747a851), [`efed5e0`](https://github.com/graphql-hive/gateway/commit/efed5e0c257edcacb51dae7f670c2026a747a851), [`efed5e0`](https://github.com/graphql-hive/gateway/commit/efed5e0c257edcacb51dae7f670c2026a747a851), [`efed5e0`](https://github.com/graphql-hive/gateway/commit/efed5e0c257edcacb51dae7f670c2026a747a851), [`efed5e0`](https://github.com/graphql-hive/gateway/commit/efed5e0c257edcacb51dae7f670c2026a747a851), [`efed5e0`](https://github.com/graphql-hive/gateway/commit/efed5e0c257edcacb51dae7f670c2026a747a851), [`efed5e0`](https://github.com/graphql-hive/gateway/commit/efed5e0c257edcacb51dae7f670c2026a747a851), [`efed5e0`](https://github.com/graphql-hive/gateway/commit/efed5e0c257edcacb51dae7f670c2026a747a851), [`3226919`](https://github.com/graphql-hive/gateway/commit/3226919d58930289491696fa3b56ed85c766e3f5)]: - @graphql-mesh/fusion-runtime@1.4.1 - @graphql-mesh/hmac-upstream-signature@2.0.5 - @graphql-mesh/transport-common@1.0.9 - @graphql-tools/batch-delegate@10.0.3 - @graphql-tools/delegate@11.1.1 - @graphql-tools/executor-common@1.0.3 - @graphql-tools/executor-http@3.0.5 - @graphql-tools/federation@4.2.1 - @graphql-tools/stitch@10.1.1 - @graphql-tools/wrap@11.0.3 ## 2.3.0 ### Minor Changes - [#1642](https://github.com/graphql-hive/gateway/pull/1642) [`af7a7de`](https://github.com/graphql-hive/gateway/commit/af7a7de0ebd81a5b41702052a3ddf466f5d84437) Thanks [@ardatan](https://github.com/ardatan)! - Support promises in `progressiveOverride` option ```ts import { defineConfig } from '@graphql-hive/gateway'; export const gatewayConfig = defineConfig({ async progressiveOverride(label: string, context: GatewayContext) { if (label === 'my_label') { const serviceResponse = await fetch('http://example.com/should_override', { headers: { 'x-some-header': context.headers['x-some-header'], } }); const result = await serviceResponse.json(); return result?.override; } return false; } }) ``` ### Patch Changes - [#1637](https://github.com/graphql-hive/gateway/pull/1637) [`aa1cb63`](https://github.com/graphql-hive/gateway/commit/aa1cb635583e41ed0f8ebe7ae4897feedec50a71) Thanks [@dependabot](https://github.com/apps/dependabot)! - dependencies updates: - Updated dependency [`@graphql-mesh/plugin-response-cache@^0.104.15` ↗︎](https://www.npmjs.com/package/@graphql-mesh/plugin-response-cache/v/0.104.15) (from `^0.104.14`, in `dependencies`) - Updated dependency [`@graphql-mesh/types@^0.104.14` ↗︎](https://www.npmjs.com/package/@graphql-mesh/types/v/0.104.14) (from `^0.104.13`, in `dependencies`) - Updated dependency [`@graphql-mesh/utils@^0.104.14` ↗︎](https://www.npmjs.com/package/@graphql-mesh/utils/v/0.104.14) (from `^0.104.13`, in `dependencies`) - [#1640](https://github.com/graphql-hive/gateway/pull/1640) [`4a5b67d`](https://github.com/graphql-hive/gateway/commit/4a5b67de55f3aabb775903fb41d935fd64c5296d) Thanks [@enisdenjo](https://github.com/enisdenjo)! - dependencies updates: - Updated dependency [`@envelop/generic-auth@^10.0.1` ↗︎](https://www.npmjs.com/package/@envelop/generic-auth/v/10.0.1) (from `^10.0.0`, in `dependencies`) - [#1645](https://github.com/graphql-hive/gateway/pull/1645) [`bcadf1c`](https://github.com/graphql-hive/gateway/commit/bcadf1cee54b62ed13fbcc02d3e6624eddea707b) Thanks [@dependabot](https://github.com/apps/dependabot)! - dependencies updates: - Updated dependency [`@types/node@^24.9.2` ↗︎](https://www.npmjs.com/package/@types/node/v/24.9.2) (from `^24.9.1`, in `dependencies`) - [#1640](https://github.com/graphql-hive/gateway/pull/1640) [`4a5b67d`](https://github.com/graphql-hive/gateway/commit/4a5b67de55f3aabb775903fb41d935fd64c5296d) Thanks [@enisdenjo](https://github.com/enisdenjo)! - Remove empty and unused nodes from redacted query after validation of generic-auth directives when issuing requests to subgraphs - Updated dependencies [[`aa1cb63`](https://github.com/graphql-hive/gateway/commit/aa1cb635583e41ed0f8ebe7ae4897feedec50a71), [`aa1cb63`](https://github.com/graphql-hive/gateway/commit/aa1cb635583e41ed0f8ebe7ae4897feedec50a71), [`aa1cb63`](https://github.com/graphql-hive/gateway/commit/aa1cb635583e41ed0f8ebe7ae4897feedec50a71), [`af7a7de`](https://github.com/graphql-hive/gateway/commit/af7a7de0ebd81a5b41702052a3ddf466f5d84437)]: - @graphql-mesh/fusion-runtime@1.4.0 - @graphql-mesh/hmac-upstream-signature@2.0.4 - @graphql-mesh/transport-common@1.0.8 - @graphql-tools/federation@4.2.0 ## 2.2.0 ### Minor Changes - [#1624](https://github.com/graphql-hive/gateway/pull/1624) [`a8458b2`](https://github.com/graphql-hive/gateway/commit/a8458b24e71fda37a515eaf9ac9af43a73e7823f) Thanks [@ardatan](https://github.com/ardatan)! - Progressive Override for Safer Field Migrations Introduces Progressive Override, allowing you to safely migrate fields between subgraphs using the `@override` directive with a label. Control the rollout using custom logic in the gateway (e.g., percentage, headers) or the built-in percent(x) label for gradual, incremental traffic migration. Detailed documentation can be found [here](https://the-guild.dev/graphql/hive/docs/gateway/other-features/progressive-override). ### Patch Changes - [#1605](https://github.com/graphql-hive/gateway/pull/1605) [`19a6cc4`](https://github.com/graphql-hive/gateway/commit/19a6cc45572afdfdae8d6daf6340da489ddd6b0f) Thanks [@dependabot](https://github.com/apps/dependabot)! - dependencies updates: - Updated dependency [`@types/node@^24.7.2` ↗︎](https://www.npmjs.com/package/@types/node/v/24.7.2) (from `^24.7.1`, in `dependencies`) - [#1616](https://github.com/graphql-hive/gateway/pull/1616) [`40139dc`](https://github.com/graphql-hive/gateway/commit/40139dcdc257785acba3126e22451b5688ff7773) Thanks [@dependabot](https://github.com/apps/dependabot)! - dependencies updates: - Updated dependency [`@types/node@^24.8.1` ↗︎](https://www.npmjs.com/package/@types/node/v/24.8.1) (from `^24.7.2`, in `dependencies`) - [#1617](https://github.com/graphql-hive/gateway/pull/1617) [`d2b3dff`](https://github.com/graphql-hive/gateway/commit/d2b3dff99cc08c4e7a7c551c067e90239671febb) Thanks [@dependabot](https://github.com/apps/dependabot)! - dependencies updates: - Updated dependency [`@types/node@^24.9.1` ↗︎](https://www.npmjs.com/package/@types/node/v/24.9.1) (from `^24.8.1`, in `dependencies`) - Updated dependencies [[`b0cf7bb`](https://github.com/graphql-hive/gateway/commit/b0cf7bbb3ec1c1c1d18e7b064b2d9d7d2f8c9a2e), [`a54b0c1`](https://github.com/graphql-hive/gateway/commit/a54b0c1777229aaeea295bcd15d4f4d6e4e615f7), [`058ef2f`](https://github.com/graphql-hive/gateway/commit/058ef2f8373ea822fed985b705416cb39d5b6efc), [`a8458b2`](https://github.com/graphql-hive/gateway/commit/a8458b24e71fda37a515eaf9ac9af43a73e7823f), [`20f7a50`](https://github.com/graphql-hive/gateway/commit/20f7a50c5ddb862c2921e91ca43d9858bae1bce8)]: - @graphql-hive/logger@1.0.7 - @graphql-tools/delegate@11.1.0 - @graphql-tools/batch-delegate@10.0.2 - @graphql-mesh/fusion-runtime@1.3.0 - @graphql-tools/federation@4.1.0 - @graphql-tools/stitch@10.1.0 - @graphql-mesh/hmac-upstream-signature@2.0.3 - @graphql-mesh/transport-common@1.0.7 - @graphql-tools/wrap@11.0.2 ## 2.1.9 ### Patch Changes - [#1593](https://github.com/graphql-hive/gateway/pull/1593) [`b535a8c`](https://github.com/graphql-hive/gateway/commit/b535a8cbac463e39c896e582692a282b22d6e84f) Thanks [@dependabot](https://github.com/apps/dependabot)! - dependencies updates: - Updated dependency [`@types/node@^24.7.0` ↗︎](https://www.npmjs.com/package/@types/node/v/24.7.0) (from `^24.6.2`, in `dependencies`) - [#1596](https://github.com/graphql-hive/gateway/pull/1596) [`055fd6b`](https://github.com/graphql-hive/gateway/commit/055fd6bd52d0f35f009abe03fdc049e1132f5815) Thanks [@dependabot](https://github.com/apps/dependabot)! - dependencies updates: - Updated dependency [`@types/node@^24.7.1` ↗︎](https://www.npmjs.com/package/@types/node/v/24.7.1) (from `^24.7.0`, in `dependencies`) - [#1597](https://github.com/graphql-hive/gateway/pull/1597) [`29e0608`](https://github.com/graphql-hive/gateway/commit/29e06081ead54a325232c6737dd6c2651f086099) Thanks [@dependabot](https://github.com/apps/dependabot)! - dependencies updates: - Updated dependency [`@whatwg-node/server@^0.10.13` ↗︎](https://www.npmjs.com/package/@whatwg-node/server/v/0.10.13) (from `^0.10.12`, in `dependencies`) - [#1563](https://github.com/graphql-hive/gateway/pull/1563) [`8c4138d`](https://github.com/graphql-hive/gateway/commit/8c4138df152d195daa1d78ea22ddb7cea2387e20) Thanks [@zoontek](https://github.com/zoontek)! - Introduce `deduplicateHeaders` option for `propagateHeaders` configuration to control header handling behavior when multiple subgraphs return the same header When `deduplicateHeaders` is enabled (set to `true`), only the last value from subgraphs will be set for each header. When disabled (default `false`), all values are appended. The `set-cookie` header is always appended regardless of this setting, as per HTTP standards. ```ts import { defineConfig } from '@graphql-hive/gateway' export const gatewayConfig = defineConfig({ propagateHeaders: { deduplicateHeaders: true, // default: false fromSubgraphsToClient({ response }) { // ... } } }) ``` - Updated dependencies []: - @graphql-mesh/hmac-upstream-signature@2.0.3 ## 2.1.8 ### Patch Changes - [#1572](https://github.com/graphql-hive/gateway/pull/1572) [`a79f81e`](https://github.com/graphql-hive/gateway/commit/a79f81e04b17fcd089eff5839f4f6797c2ae1274) Thanks [@dependabot](https://github.com/apps/dependabot)! - dependencies updates: - Updated dependency [`@types/node@^24.6.0` ↗︎](https://www.npmjs.com/package/@types/node/v/24.6.0) (from `^24.5.2`, in `dependencies`) - [#1576](https://github.com/graphql-hive/gateway/pull/1576) [`458db4c`](https://github.com/graphql-hive/gateway/commit/458db4cb53960d92ce81a148aaf63671bf7b01ee) Thanks [@dependabot](https://github.com/apps/dependabot)! - dependencies updates: - Updated dependency [`@types/node@^24.6.1` ↗︎](https://www.npmjs.com/package/@types/node/v/24.6.1) (from `^24.6.0`, in `dependencies`) - [#1578](https://github.com/graphql-hive/gateway/pull/1578) [`91a848b`](https://github.com/graphql-hive/gateway/commit/91a848bf2db0b65f2751aaf0b2ebea9ae580e66d) Thanks [@dependabot](https://github.com/apps/dependabot)! - dependencies updates: - Updated dependency [`@types/node@^24.6.2` ↗︎](https://www.npmjs.com/package/@types/node/v/24.6.2) (from `^24.6.1`, in `dependencies`) - Updated dependencies [[`883cd5a`](https://github.com/graphql-hive/gateway/commit/883cd5af9bc9badd0adc5596eb6a8cad741a3cb4), [`91a848b`](https://github.com/graphql-hive/gateway/commit/91a848bf2db0b65f2751aaf0b2ebea9ae580e66d)]: - @graphql-hive/logger@1.0.6 - @graphql-mesh/hmac-upstream-signature@2.0.3 - @graphql-mesh/fusion-runtime@1.2.5 - @graphql-mesh/transport-common@1.0.6 ## 2.1.7 ### Patch Changes - [#1541](https://github.com/graphql-hive/gateway/pull/1541) [`5e511ca`](https://github.com/graphql-hive/gateway/commit/5e511ca9cc555577936bba942c8b3ff0796b015e) Thanks [@dependabot](https://github.com/apps/dependabot)! - dependencies updates: - Updated dependency [`@graphql-yoga/plugin-apollo-usage-report@^0.11.0` ↗︎](https://www.npmjs.com/package/@graphql-yoga/plugin-apollo-usage-report/v/0.11.0) (from `^0.10.2`, in `dependencies`) - Updated dependency [`@graphql-yoga/plugin-csrf-prevention@^3.16.0` ↗︎](https://www.npmjs.com/package/@graphql-yoga/plugin-csrf-prevention/v/3.16.0) (from `^3.15.2`, in `dependencies`) - Updated dependency [`@graphql-yoga/plugin-defer-stream@^3.16.0` ↗︎](https://www.npmjs.com/package/@graphql-yoga/plugin-defer-stream/v/3.16.0) (from `^3.15.2`, in `dependencies`) - Updated dependency [`@graphql-yoga/plugin-persisted-operations@^3.16.0` ↗︎](https://www.npmjs.com/package/@graphql-yoga/plugin-persisted-operations/v/3.16.0) (from `^3.15.2`, in `dependencies`) - Updated dependency [`graphql-yoga@^5.16.0` ↗︎](https://www.npmjs.com/package/graphql-yoga/v/5.16.0) (from `^5.15.2`, in `dependencies`) - Updated dependencies [[`5e511ca`](https://github.com/graphql-hive/gateway/commit/5e511ca9cc555577936bba942c8b3ff0796b015e), [`5e511ca`](https://github.com/graphql-hive/gateway/commit/5e511ca9cc555577936bba942c8b3ff0796b015e), [`0a349fb`](https://github.com/graphql-hive/gateway/commit/0a349fbfd52eaf8a2b21c9669871c916d41b840f), [`0a349fb`](https://github.com/graphql-hive/gateway/commit/0a349fbfd52eaf8a2b21c9669871c916d41b840f), [`818461e`](https://github.com/graphql-hive/gateway/commit/818461e6ea55bb10ba4ead9ed214848e1ba4bfd2)]: - @graphql-hive/logger@1.0.5 - @graphql-mesh/fusion-runtime@1.2.4 - @graphql-tools/executor-http@3.0.4 - @graphql-tools/federation@4.0.5 - @graphql-tools/stitch@10.0.2 - @graphql-mesh/hmac-upstream-signature@2.0.3 - @graphql-mesh/transport-common@1.0.5 ## 2.1.6 ### Patch Changes - Updated dependencies [[`a6a3d4d`](https://github.com/graphql-hive/gateway/commit/a6a3d4d0ffba9d73a5151c747c281c25d0d26954)]: - @graphql-tools/federation@4.0.4 - @graphql-mesh/fusion-runtime@1.2.3 - @graphql-mesh/hmac-upstream-signature@2.0.3 ## 2.1.5 ### Patch Changes - [#1511](https://github.com/graphql-hive/gateway/pull/1511) [`706b6f4`](https://github.com/graphql-hive/gateway/commit/706b6f47f1e06ec2460d7ae11307108ce08e2607) Thanks [@dependabot](https://github.com/apps/dependabot)! - dependencies updates: - Updated dependency [`@types/node@^24.5.1` ↗︎](https://www.npmjs.com/package/@types/node/v/24.5.1) (from `^24.5.0`, in `dependencies`) - [#1523](https://github.com/graphql-hive/gateway/pull/1523) [`bb2621c`](https://github.com/graphql-hive/gateway/commit/bb2621ce85c42ccbc97c6ca128f959bcb2bb6475) Thanks [@dependabot](https://github.com/apps/dependabot)! - dependencies updates: - Updated dependency [`@types/node@^24.5.2` ↗︎](https://www.npmjs.com/package/@types/node/v/24.5.2) (from `^24.5.1`, in `dependencies`) - [#1524](https://github.com/graphql-hive/gateway/pull/1524) [`d7b48a7`](https://github.com/graphql-hive/gateway/commit/d7b48a778344145478f0d3e1e1e188124181f0f2) Thanks [@enisdenjo](https://github.com/enisdenjo)! - dependencies updates: - Updated dependency [`@envelop/core@^5.3.2` ↗︎](https://www.npmjs.com/package/@envelop/core/v/5.3.2) (from `^5.3.1`, in `dependencies`) - Updated dependency [`@graphql-mesh/plugin-response-cache@^0.104.14` ↗︎](https://www.npmjs.com/package/@graphql-mesh/plugin-response-cache/v/0.104.14) (from `^0.104.13`, in `dependencies`) - Updated dependency [`@graphql-mesh/types@^0.104.13` ↗︎](https://www.npmjs.com/package/@graphql-mesh/types/v/0.104.13) (from `^0.104.12`, in `dependencies`) - Updated dependency [`@graphql-mesh/utils@^0.104.13` ↗︎](https://www.npmjs.com/package/@graphql-mesh/utils/v/0.104.13) (from `^0.104.12`, in `dependencies`) - [#1527](https://github.com/graphql-hive/gateway/pull/1527) [`9da33f9`](https://github.com/graphql-hive/gateway/commit/9da33f960aaf9693f988e09396aa1d76ce890616) Thanks [@ardatan](https://github.com/ardatan)! - Make `onFetch`'s `context` referentially stable, and do not recreate the context object, so it becomes the same object referentially in the execution pipeline - Updated dependencies [[`bb2621c`](https://github.com/graphql-hive/gateway/commit/bb2621ce85c42ccbc97c6ca128f959bcb2bb6475), [`d7b48a7`](https://github.com/graphql-hive/gateway/commit/d7b48a778344145478f0d3e1e1e188124181f0f2), [`d7b48a7`](https://github.com/graphql-hive/gateway/commit/d7b48a778344145478f0d3e1e1e188124181f0f2), [`d7b48a7`](https://github.com/graphql-hive/gateway/commit/d7b48a778344145478f0d3e1e1e188124181f0f2), [`d7b48a7`](https://github.com/graphql-hive/gateway/commit/d7b48a778344145478f0d3e1e1e188124181f0f2), [`e64a4e1`](https://github.com/graphql-hive/gateway/commit/e64a4e11db66be8bd9c3728eca1ac3d7d97c7d0e)]: - @graphql-hive/logger@1.0.4 - @graphql-mesh/fusion-runtime@1.2.2 - @graphql-mesh/hmac-upstream-signature@2.0.3 - @graphql-mesh/transport-common@1.0.4 - @graphql-tools/executor-common@1.0.2 - @graphql-tools/federation@4.0.3 - @graphql-tools/executor-http@3.0.3 ## 2.1.4 ### Patch Changes - [#1504](https://github.com/graphql-hive/gateway/pull/1504) [`babf7db`](https://github.com/graphql-hive/gateway/commit/babf7db20468b409af274974591eeadfd51b27b1) Thanks [@dependabot](https://github.com/apps/dependabot)! - dependencies updates: - Updated dependency [`@types/node@^24.5.0` ↗︎](https://www.npmjs.com/package/@types/node/v/24.5.0) (from `^24.3.1`, in `dependencies`) - [#1506](https://github.com/graphql-hive/gateway/pull/1506) [`59739ea`](https://github.com/graphql-hive/gateway/commit/59739ea706d36d800f4d50b52be66ce4a6a892e2) Thanks [@dependabot](https://github.com/apps/dependabot)! - dependencies updates: - Updated dependency [`@envelop/generic-auth@^10.0.0` ↗︎](https://www.npmjs.com/package/@envelop/generic-auth/v/10.0.0) (from `^9.0.0`, in `dependencies`) - [#1510](https://github.com/graphql-hive/gateway/pull/1510) [`b343aad`](https://github.com/graphql-hive/gateway/commit/b343aadb7de0b1258d626fca504acb08ac01168c) Thanks [@enisdenjo](https://github.com/enisdenjo)! - Provide logger to Hive Console CDN supergraph fetcher - Updated dependencies []: - @graphql-mesh/hmac-upstream-signature@2.0.2 ## 2.1.3 ### Patch Changes - [#1471](https://github.com/graphql-hive/gateway/pull/1471) [`3751dbf`](https://github.com/graphql-hive/gateway/commit/3751dbf6a47fdb0312de41d72483862c6416c5db) Thanks [@dependabot](https://github.com/apps/dependabot)! - dependencies updates: - Updated dependency [`@graphql-mesh/plugin-response-cache@^0.104.13` ↗︎](https://www.npmjs.com/package/@graphql-mesh/plugin-response-cache/v/0.104.13) (from `^0.104.12`, in `dependencies`) - [#1473](https://github.com/graphql-hive/gateway/pull/1473) [`838ffec`](https://github.com/graphql-hive/gateway/commit/838ffecb2ad3d4ef6bbb65607a56302cb45e2f14) Thanks [@dependabot](https://github.com/apps/dependabot)! - dependencies updates: - Updated dependency [`@whatwg-node/promise-helpers@^1.3.2` ↗︎](https://www.npmjs.com/package/@whatwg-node/promise-helpers/v/1.3.2) (from `^1.3.0`, in `dependencies`) - [#1484](https://github.com/graphql-hive/gateway/pull/1484) [`950ebd1`](https://github.com/graphql-hive/gateway/commit/950ebd1d1686846b59b555695c1738e25fd3268e) Thanks [@dependabot](https://github.com/apps/dependabot)! - dependencies updates: - Updated dependency [`@graphql-yoga/plugin-apollo-usage-report@^0.10.2` ↗︎](https://www.npmjs.com/package/@graphql-yoga/plugin-apollo-usage-report/v/0.10.2) (from `^0.10.1`, in `dependencies`) - Updated dependency [`@graphql-yoga/plugin-csrf-prevention@^3.15.2` ↗︎](https://www.npmjs.com/package/@graphql-yoga/plugin-csrf-prevention/v/3.15.2) (from `^3.15.1`, in `dependencies`) - Updated dependency [`@graphql-yoga/plugin-defer-stream@^3.15.2` ↗︎](https://www.npmjs.com/package/@graphql-yoga/plugin-defer-stream/v/3.15.2) (from `^3.15.1`, in `dependencies`) - Updated dependency [`@graphql-yoga/plugin-persisted-operations@^3.15.2` ↗︎](https://www.npmjs.com/package/@graphql-yoga/plugin-persisted-operations/v/3.15.2) (from `^3.15.1`, in `dependencies`) - [#1488](https://github.com/graphql-hive/gateway/pull/1488) [`d722331`](https://github.com/graphql-hive/gateway/commit/d722331dca64ecb5a61cf9c9ad4b93e42f737350) Thanks [@dependabot](https://github.com/apps/dependabot)! - dependencies updates: - Updated dependency [`@types/node@^24.3.1` ↗︎](https://www.npmjs.com/package/@types/node/v/24.3.1) (from `^22.15.30`, in `dependencies`) - [#1493](https://github.com/graphql-hive/gateway/pull/1493) [`9b60107`](https://github.com/graphql-hive/gateway/commit/9b60107dbee1b6581679d25e52ce19c366bfe344) Thanks [@enisdenjo](https://github.com/enisdenjo)! - Inject config context into the server context before all plugins avoiding potential short-circuits - [#1497](https://github.com/graphql-hive/gateway/pull/1497) [`856f012`](https://github.com/graphql-hive/gateway/commit/856f01287f537c502b1bcec58799890572ddd009) Thanks [@ardatan](https://github.com/ardatan)! - Support `transportEntries` in proxy mode - Updated dependencies [[`950ebd1`](https://github.com/graphql-hive/gateway/commit/950ebd1d1686846b59b555695c1738e25fd3268e), [`fe99f74`](https://github.com/graphql-hive/gateway/commit/fe99f74dd11fdf2928ca7080d4d2e5dfd1e2f18e), [`838ffec`](https://github.com/graphql-hive/gateway/commit/838ffecb2ad3d4ef6bbb65607a56302cb45e2f14), [`838ffec`](https://github.com/graphql-hive/gateway/commit/838ffecb2ad3d4ef6bbb65607a56302cb45e2f14), [`838ffec`](https://github.com/graphql-hive/gateway/commit/838ffecb2ad3d4ef6bbb65607a56302cb45e2f14), [`838ffec`](https://github.com/graphql-hive/gateway/commit/838ffecb2ad3d4ef6bbb65607a56302cb45e2f14), [`838ffec`](https://github.com/graphql-hive/gateway/commit/838ffecb2ad3d4ef6bbb65607a56302cb45e2f14), [`838ffec`](https://github.com/graphql-hive/gateway/commit/838ffecb2ad3d4ef6bbb65607a56302cb45e2f14), [`fe99f74`](https://github.com/graphql-hive/gateway/commit/fe99f74dd11fdf2928ca7080d4d2e5dfd1e2f18e), [`838ffec`](https://github.com/graphql-hive/gateway/commit/838ffecb2ad3d4ef6bbb65607a56302cb45e2f14), [`838ffec`](https://github.com/graphql-hive/gateway/commit/838ffecb2ad3d4ef6bbb65607a56302cb45e2f14), [`838ffec`](https://github.com/graphql-hive/gateway/commit/838ffecb2ad3d4ef6bbb65607a56302cb45e2f14)]: - @graphql-hive/logger@1.0.3 - @graphql-hive/pubsub@2.1.1 - @graphql-mesh/fusion-runtime@1.2.1 - @graphql-mesh/hmac-upstream-signature@2.0.2 - @graphql-tools/batch-delegate@10.0.1 - @graphql-tools/delegate@11.0.1 - @graphql-tools/executor-http@3.0.2 - @graphql-tools/federation@4.0.2 - @graphql-tools/stitch@10.0.1 - @graphql-tools/wrap@11.0.1 - @graphql-mesh/transport-common@1.0.3 ## 2.1.2 ### Patch Changes - [#1474](https://github.com/graphql-hive/gateway/pull/1474) [`70c5010`](https://github.com/graphql-hive/gateway/commit/70c5010b40643a6da0ca5e84a90a5c3ba126107f) Thanks [@ardatan](https://github.com/ardatan)! - In `persistedDocuments` options, `allowArbitraryOperations` flag has been deprecated, and introduced `allowArbitraryDocuments` for both Hive Console and custom store sources ```diff defineConfig({ /* .. */ persistedDocuments: { /* .. */ - allowArbitraryOperations: true, + allowArbitraryDocuments: true, }, }); ``` - Updated dependencies []: - @graphql-mesh/hmac-upstream-signature@2.0.1 ## 2.1.1 ### Patch Changes - [#1468](https://github.com/graphql-hive/gateway/pull/1468) [`7212b86`](https://github.com/graphql-hive/gateway/commit/7212b86f3de663d7026de1256494c2fd4fecc5b1) Thanks [@ardatan](https://github.com/ardatan)! - Also use `documentId` property or query param as the key for persisted documents when you use a custom store All of these will work: ``` http://localhost:4000/graphql?documentId=<hash> ``` ```json { "extensions" { "persistedQuery": { "version": 1, "sha256Hash": "<hash>" } } } ``` ```json { "documentId": "<hash>" } ``` ```json { "extensions" { "persistedQuery": { "version": 1, "sha256Hash": "<hash>" } } } ``` ```json { "extensions" { "persistedQuery": { "version": 1, "sha256Hash": "<hash>" } } } ``` - Updated dependencies []: - @graphql-mesh/hmac-upstream-signature@2.0.1 ## 2.1.0 ### Minor Changes - [#1458](https://github.com/graphql-hive/gateway/pull/1458) [`6495780`](https://github.com/graphql-hive/gateway/commit/6495780516c11e6668ab827113b7edfb6379b5f2) Thanks [@ardatan](https://github.com/ardatan)! - New directive `@pubsubPublish` to publish the payload to the pubsub engine directly ```graphql extend schema @link( url: "https://specs.apollo.dev/federation/v2.6" import: ["@key", "@composeDirective"] ) @link( url: "https://the-guild.dev/mesh/v1.0" import: ["@pubsubOperation", "@pubsubPublish"] ) @composeDirective(name: "@pubsubOperation") @composeDirective(name: "@pubsubPublish") directive @pubsubOperation( pubsubTopic: String! filterBy: String result: String ) on FIELD_DEFINITION directive @pubsubPublish(pubsubTopic: String!) on FIELD_DEFINITION type Query { hello: String! } type Product @key(fields: "id") { id: ID! name: String! price: Float! } type Mutation { createProduct(name: String!, price: Float!): Product! @pubsubPublish(pubsubTopic: "new_product") } type Subscription { newProductSubgraph: Product! @pubsubOperation(pubsubTopic: "new_product") } ``` ### Patch Changes - [#1463](https://github.com/graphql-hive/gateway/pull/1463) [`bcb9407`](https://github.com/graphql-hive/gateway/commit/bcb94071daccb1698439d364ccc37146aa4c5032) Thanks [@ardatan](https://github.com/ardatan)! - dependencies updates: - Updated dependency [`graphql-yoga@^5.15.2` ↗︎](https://www.npmjs.com/package/graphql-yoga/v/5.15.2) (from `^5.15.1`, in `dependencies`) - [#1464](https://github.com/graphql-hive/gateway/pull/1464) [`e758071`](https://github.com/graphql-hive/gateway/commit/e758071ed64ec26baf8c2d1d71bc27275291b018) Thanks [@enisdenjo](https://github.com/enisdenjo)! - Load debug plugins but noop if log level is not debug - Updated dependencies [[`bcb9407`](https://github.com/graphql-hive/gateway/commit/bcb94071daccb1698439d364ccc37146aa4c5032), [`6495780`](https://github.com/graphql-hive/gateway/commit/6495780516c11e6668ab827113b7edfb6379b5f2)]: - @graphql-mesh/fusion-runtime@1.2.0 - @graphql-mesh/hmac-upstream-signature@2.0.1 ## 2.0.3 ### Patch Changes - [#1450](https://github.com/graphql-hive/gateway/pull/1450) [`ab05e3f`](https://github.com/graphql-hive/gateway/commit/ab05e3f899b017067e0eb42301516d4fdf3b816d) Thanks [@dependabot](https://github.com/apps/dependabot)! - dependencies updates: - Updated dependency [`@graphql-mesh/plugin-response-cache@^0.104.12` ↗︎](https://www.npmjs.com/package/@graphql-mesh/plugin-response-cache/v/0.104.12) (from `^0.104.8`, in `dependencies`) - Updated dependency [`@graphql-mesh/types@^0.104.11` ↗︎](https://www.npmjs.com/package/@graphql-mesh/types/v/0.104.11) (from `^0.104.8`, in `dependencies`) - [#1452](https://github.com/graphql-hive/gateway/pull/1452) [`b0e5568`](https://github.com/graphql-hive/gateway/commit/b0e55688d4fc22d0bfbf664de52e78e9642d7014) Thanks [@dependabot](https://github.com/apps/dependabot)! - dependencies updates: - Updated dependency [`@envelop/core@^5.3.1` ↗︎](https://www.npmjs.com/package/@envelop/core/v/5.3.1) (from `^5.3.0`, in `dependencies`) - [#1455](https://github.com/graphql-hive/gateway/pull/1455) [`b6f985b`](https://github.com/graphql-hive/gateway/commit/b6f985b0456ba7556cc299368892ffc5f7d4817e) Thanks [@ardatan](https://github.com/ardatan)! - dependencies updates: - Updated dependency [`@graphql-mesh/types@^0.104.12` ↗︎](https://www.npmjs.com/package/@graphql-mesh/types/v/0.104.12) (from `^0.104.11`, in `dependencies`) - Updated dependency [`@graphql-mesh/utils@^0.104.12` ↗︎](https://www.npmjs.com/package/@graphql-mesh/utils/v/0.104.12) (from `^0.104.11`, in `dependencies`) - [#1455](https://github.com/graphql-hive/gateway/pull/1455) [`b6f985b`](https://github.com/graphql-hive/gateway/commit/b6f985b0456ba7556cc299368892ffc5f7d4817e) Thanks [@ardatan](https://github.com/ardatan)! - Support client side pubsub operation definition with `@pubsubOperation` Instead of `@resolveTo` on the gateway-side configuration with `additionalTypeDefs`, now you can define those operations on the subgraphs directly. Since this is a additional directive provided by Mesh, you need to use `@composeDirective` ```graphql extend schema @link( url: "https://specs.apollo.dev/federation/v2.6" import: ["@key", "@composeDirective"