@apollo/gateway 2.1.0-alpha.0 → 2.1.0-alpha.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (75) hide show
  1. package/dist/config.d.ts +5 -4
  2. package/dist/config.d.ts.map +1 -1
  3. package/dist/config.js.map +1 -1
  4. package/dist/datasources/LocalGraphQLDataSource.d.ts +2 -2
  5. package/dist/datasources/LocalGraphQLDataSource.d.ts.map +1 -1
  6. package/dist/datasources/LocalGraphQLDataSource.js +0 -2
  7. package/dist/datasources/LocalGraphQLDataSource.js.map +1 -1
  8. package/dist/datasources/RemoteGraphQLDataSource.d.ts +6 -6
  9. package/dist/datasources/RemoteGraphQLDataSource.d.ts.map +1 -1
  10. package/dist/datasources/RemoteGraphQLDataSource.js +15 -20
  11. package/dist/datasources/RemoteGraphQLDataSource.js.map +1 -1
  12. package/dist/datasources/types.d.ts +6 -5
  13. package/dist/datasources/types.d.ts.map +1 -1
  14. package/dist/executeQueryPlan.d.ts +3 -3
  15. package/dist/executeQueryPlan.d.ts.map +1 -1
  16. package/dist/executeQueryPlan.js +30 -16
  17. package/dist/executeQueryPlan.js.map +1 -1
  18. package/dist/index.d.ts +9 -9
  19. package/dist/index.d.ts.map +1 -1
  20. package/dist/index.js +23 -30
  21. package/dist/index.js.map +1 -1
  22. package/dist/logger.d.ts.map +1 -1
  23. package/dist/logger.js +1 -1
  24. package/dist/logger.js.map +1 -1
  25. package/dist/operationContext.d.ts.map +1 -1
  26. package/dist/operationContext.js +3 -7
  27. package/dist/operationContext.js.map +1 -1
  28. package/dist/supergraphManagers/IntrospectAndCompose/index.d.ts +1 -1
  29. package/dist/supergraphManagers/IntrospectAndCompose/index.d.ts.map +1 -1
  30. package/dist/supergraphManagers/IntrospectAndCompose/loadServicesFromRemoteEndpoint.d.ts +1 -1
  31. package/dist/supergraphManagers/IntrospectAndCompose/loadServicesFromRemoteEndpoint.d.ts.map +1 -1
  32. package/dist/supergraphManagers/IntrospectAndCompose/loadServicesFromRemoteEndpoint.js.map +1 -1
  33. package/dist/supergraphManagers/UplinkSupergraphManager/index.d.ts +9 -7
  34. package/dist/supergraphManagers/UplinkSupergraphManager/index.d.ts.map +1 -1
  35. package/dist/supergraphManagers/UplinkSupergraphManager/index.js +38 -41
  36. package/dist/supergraphManagers/UplinkSupergraphManager/index.js.map +1 -1
  37. package/dist/supergraphManagers/UplinkSupergraphManager/loadSupergraphSdlFromStorage.d.ts +9 -8
  38. package/dist/supergraphManagers/UplinkSupergraphManager/loadSupergraphSdlFromStorage.d.ts.map +1 -1
  39. package/dist/supergraphManagers/UplinkSupergraphManager/loadSupergraphSdlFromStorage.js +19 -10
  40. package/dist/supergraphManagers/UplinkSupergraphManager/loadSupergraphSdlFromStorage.js.map +1 -1
  41. package/dist/supergraphManagers/UplinkSupergraphManager/outOfBandReporter.d.ts +2 -1
  42. package/dist/supergraphManagers/UplinkSupergraphManager/outOfBandReporter.d.ts.map +1 -1
  43. package/dist/supergraphManagers/UplinkSupergraphManager/outOfBandReporter.js.map +1 -1
  44. package/dist/supergraphManagers/UplinkSupergraphManager/types.d.ts +9 -0
  45. package/dist/supergraphManagers/UplinkSupergraphManager/types.d.ts.map +1 -0
  46. package/dist/supergraphManagers/UplinkSupergraphManager/types.js +5 -0
  47. package/dist/supergraphManagers/UplinkSupergraphManager/types.js.map +1 -0
  48. package/package.json +9 -11
  49. package/src/__tests__/buildQueryPlan.test.ts +6 -2
  50. package/src/__tests__/executeQueryPlan.test.ts +208 -8
  51. package/src/__tests__/execution-utils.ts +8 -6
  52. package/src/__tests__/gateway/executor.test.ts +2 -2
  53. package/src/__tests__/gateway/lifecycle-hooks.test.ts +1 -1
  54. package/src/__tests__/integration/abstract-types.test.ts +39 -71
  55. package/src/__tests__/integration/configuration.test.ts +2 -2
  56. package/src/__tests__/integration/managed.test.ts +72 -44
  57. package/src/__tests__/integration/networkRequests.test.ts +10 -23
  58. package/src/config.ts +6 -6
  59. package/src/datasources/LocalGraphQLDataSource.ts +2 -4
  60. package/src/datasources/RemoteGraphQLDataSource.ts +28 -44
  61. package/src/datasources/__tests__/LocalGraphQLDataSource.test.ts +2 -2
  62. package/src/datasources/__tests__/RemoteGraphQLDataSource.test.ts +14 -19
  63. package/src/datasources/types.ts +9 -5
  64. package/src/executeQueryPlan.ts +59 -45
  65. package/src/index.ts +31 -65
  66. package/src/logger.ts +1 -1
  67. package/src/operationContext.ts +5 -7
  68. package/src/supergraphManagers/IntrospectAndCompose/index.ts +1 -1
  69. package/src/supergraphManagers/IntrospectAndCompose/loadServicesFromRemoteEndpoint.ts +3 -3
  70. package/src/supergraphManagers/UplinkSupergraphManager/__tests__/UplinkSupergraphManager.test.ts +1 -3
  71. package/src/supergraphManagers/UplinkSupergraphManager/__tests__/loadSupergraphSdlFromStorage.test.ts +51 -16
  72. package/src/supergraphManagers/UplinkSupergraphManager/index.ts +67 -57
  73. package/src/supergraphManagers/UplinkSupergraphManager/loadSupergraphSdlFromStorage.ts +31 -19
  74. package/src/supergraphManagers/UplinkSupergraphManager/outOfBandReporter.ts +2 -1
  75. package/src/supergraphManagers/UplinkSupergraphManager/types.ts +10 -0
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/supergraphManagers/UplinkSupergraphManager/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,mEAAqD;AAErD,qEAA6D;AAM7D,yCAAgD;AAChD,iFAA8E;AAGjE,QAAA,wBAAwB,GAAG;IACtC,uCAAuC;IACvC,2CAA2C;CAC5C,CAAC;AAEF,SAAS,kBAAkB;;IAMzB,MAAM,YAAY,GAChB,MAAA,OAAO,CAAC,GAAG,CAAC,sCAAsC,0CAAE,KAAK,CAAC,GAAG,CAAC,CAAC;IACjE,OAAO,YAAY,aAAZ,YAAY,cAAZ,YAAY,GAAI,gCAAwB,CAAC;AAClD,CAAC;AAoCD,MAAa,uBAAuB;IAwBlC,YAAY,EACV,MAAM,EACN,QAAQ,EACR,KAAK,EACL,MAAM,EACN,OAAO,EACP,eAAe,EACf,wBAAwB,EACxB,UAAU,EACV,iBAAiB,EACjB,4BAA4B,EAC5B,uCAAuC,EACvC,sCAAsC,GAcvC;;QAjDe,oBAAe,GAAa,kBAAkB,EAAE,CAAC;QAGzD,YAAO,GAAY,eAAe,CAAC,QAAQ,EAAE,CAAC;QAG9C,2BAAsB,GAAW,KAAM,CAAC;QAGxC,iCAA4B,GAAY,KAAK,CAAC;QAI9C,aAAQ,GAA0B,IAAI,CAAC;QAEvC,2BAAsB,GAC5B,MAAA,OAAO,CAAC,GAAG,CAAC,oCAAoC,mCAAI,SAAS,CAAC;QAExD,eAAU,GAAW,CAAC,CAAC;QACvB,eAAU,GAAkB,IAAI,CAAC;QACjC,sBAAiB,GAAgB,IAAI,CAAC;QA8B5C,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,MAAM,GAAG,MAAM,aAAN,MAAM,cAAN,MAAM,GAAI,IAAA,yBAAgB,EAAC,KAAK,CAAC,CAAC;QAEhD,IAAI,CAAC,eAAe,GAAG,eAAe,aAAf,eAAe,cAAf,eAAe,GAAI,IAAI,CAAC,eAAe,CAAC;QAI/D,IAAI,CAAC,UAAU,GAAG,UAAU,aAAV,UAAU,cAAV,UAAU,GAAI,IAAI,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,GAAG,CAAC,CAAC;QACpE,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,aAAjB,iBAAiB,cAAjB,iBAAiB,GAAI,IAAI,CAAC,UAAU,CAAC;QAE9D,IAAI,CAAC,OAAO,GAAG,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,IAAI,CAAC,OAAO,CAAC;QACvC,IAAI,CAAC,sBAAsB;YACzB,wBAAwB,aAAxB,wBAAwB,cAAxB,wBAAwB,GAAI,IAAI,CAAC,sBAAsB,CAAC;QAC1D,IAAI,CAAC,4BAA4B;YAC/B,4BAA4B,aAA5B,4BAA4B,cAA5B,4BAA4B,GAAI,IAAI,CAAC,4BAA4B,CAAC;QACpE,IAAI,CAAC,uCAAuC;YAC1C,uCAAuC,CAAC;QAC1C,IAAI,CAAC,sCAAsC;YACzC,sCAAsC,CAAC;QAEzC,IAAI,CAAC,KAAK,GAAG,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC;IACxC,CAAC;IAEM,KAAK,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,WAAW,EAA4B;QACvE,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QAErB,IAAI,IAAI,CAAC,4BAA4B,EAAE;YACrC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;SAChC;QAED,IAAI,oBAAoB,GAAuB,SAAS,CAAC;QACzD,IAAI;YACF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;YACtE,IAAI,CAAC,MAAM,EAAE;gBACX,MAAM,IAAI,KAAK,CACb,2DAA2D,CAC5D,CAAC;aACH;YACD,oBAAoB,GAAG,MAAM,CAAC,aAAa,CAAC;YAC5C,IAAI,MAAM,CAAC,eAAe,EAAE;gBAC1B,IAAI,CAAC,UAAU,GAAG,IAAI,GAAG,MAAM,CAAC,eAAe,CAAC;gBAChD,IAAI,CAAC,iBAAiB,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC;aACjE;SACF;QAAC,OAAO,CAAC,EAAE;YACV,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC;YACzB,MAAM,CAAC,CAAC;SACT;QAED,IAAI,CAAC,KAAK,GAAG,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC;QAGtC,IAAI,CAAC,YAAY,EAAE,CAAC;QAEpB,OAAO;YACL,aAAa,EAAE,oBAAoB;YACnC,OAAO,EAAE,KAAK,IAAI,EAAE;gBAClB,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,KAAK,SAAS,EAAE;oBAClC,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC;iBACjC;gBACD,IAAI,CAAC,KAAK,GAAG,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;gBAClC,IAAI,IAAI,CAAC,QAAQ,EAAE;oBACjB,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;oBAC5B,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;iBACtB;YACH,CAAC;SACF,CAAC;IACJ,CAAC;IAEM,KAAK,CAAC,SAAS;QACpB,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,KAAK,SAAS,EAAE;YAClC,OAAO;SACR;QACD,OAAO,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC;IACrC,CAAC;IAEO,KAAK,CAAC,mBAAmB,CAAC,UAAkB;;QAIlD,IAAI,aAAa,CAAC;QAClB,IAAI,eAAe,GAAG,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC;QAEzD,IAAI;YACF,MAAM,MAAM,GAAG,MAAM,IAAA,2DAA4B,EAAC;gBAChD,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,SAAS,EAAE,IAAI,CAAC,eAAe;gBAC/B,sBAAsB,EAAE,IAAI,CAAC,sBAAsB;gBACnD,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,aAAa,EAAE,MAAA,IAAI,CAAC,aAAa,mCAAI,IAAI;gBACzC,UAAU;gBACV,cAAc,EAAE,IAAI,CAAC,UAAU,EAAE;gBACjC,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;gBACzC,MAAM,EAAE,IAAI,CAAC,MAAM;aACpB,CAAC,CAAC;YAEH,IAAI,CAAC,MAAM,EAAE;gBACX,OAAO,IAAI,CAAC;aACb;YAED,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,EAAE,CAAC;YAE/B,CAAC,EAAE,aAAa,EAAE,eAAe,EAAE,GAAG,MAAM,CAAC,CAAC;YAC9C,IAAI,CAAC,2BAA2B,GAAG,IAAI,IAAI,EAAE,CAAC;SAC/C;QAAC,OAAO,CAAC,EAAE;YACV,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,0DAA0D,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,CAC9E,CAAC;YAEF,IACE,IAAI,CAAC,KAAK,CAAC,KAAK,KAAK,aAAa;gBAClC,IAAI,CAAC,uCAAuC,EAC5C;gBACA,aAAa,GAAG,MAAM,IAAI,CAAC,uCAAuC,CAAC;oBACjE,KAAK,EAAE,CAAC;oBACR,QAAQ,EAAE,IAAI,CAAC,QAAQ;oBACvB,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,UAAU,EAAE,IAAI,CAAC,UAAU;iBAC5B,CAAC,CAAC;aACJ;iBAAM,IACL,IAAI,CAAC,KAAK,CAAC,KAAK,KAAK,SAAS;gBAC9B,IAAI,CAAC,sCAAsC,EAC3C;gBACA,aAAa,GAAG,MAAM,IAAI,CAAC,sCAAsC,CAAC;oBAChE,KAAK,EAAE,CAAC;oBACR,QAAQ,EAAE,IAAI,CAAC,QAAQ;oBACvB,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,UAAU,EAAE,IAAI,CAAC,UAAU;oBAC3B,2BAA2B,EAAE,IAAI,CAAC,2BAA2B;iBAC9D,CAAC,CAAC;gBAGH,IAAI,CAAC,aAAa,EAAE;oBAClB,OAAO,IAAI,CAAC;iBACb;aACF;iBAAM;gBACL,MAAM,CAAC,CAAC;aACT;SACF;QAGD,MAAM,CAAA,MAAA,IAAI,CAAC,WAAW,qDAAG,aAAa,CAAC,CAAA,CAAC;QACxC,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,CAAC;IAC5C,CAAC;IAEO,YAAY;QAClB,IAAI,CAAC,KAAK,GAAG,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;QAClC,IAAI,CAAC,IAAI,EAAE,CAAC;IACd,CAAC;IAEO,IAAI;QACV,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU;YAC3B,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,sBAAsB,CAAC;YACxD,CAAC,CAAC,IAAI,CAAC,sBAAsB,CAAC;QAEhC,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,KAAK,SAAS,EAAE;YAClC,OAAO;SACR;QAED,IAAI,CAAC,KAAK,CAAC,gBAAgB,GAAG,IAAA,oBAAU,GAAE,CAAC;QAE3C,IAAI,CAAC,QAAQ,GAAG,UAAU,CAAC,KAAK,IAAI,EAAE;;YACpC,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,KAAK,SAAS,EAAE;gBAClC,MAAM,cAAc,GAAG,IAAA,oBAAU,GAAE,CAAC;gBACpC,IAAI,CAAC,KAAK,CAAC,cAAc,GAAG,cAAc,CAAC;gBAC3C,IAAI;oBACF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;oBAC/D,IAAI,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,eAAe,EAAE;wBAC3B,IAAI,CAAC,UAAU,GAAG,IAAI,GAAG,MAAM,CAAC,eAAe,CAAC;wBAChD,IAAI,CAAC,iBAAiB,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC;qBACjE;oBACD,IAAI,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,aAAa,EAAE;wBACzB,MAAA,IAAI,CAAC,MAAM,qDAAG,MAAM,CAAC,aAAa,CAAC,CAAC;qBACrC;iBACF;gBAAC,OAAO,CAAC,EAAE;oBACV,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC;iBAC1B;gBACD,cAAc,CAAC,OAAO,EAAE,CAAC;gBACzB,MAAA,IAAI,CAAC,KAAK,CAAC,gBAAgB,0CAAE,OAAO,EAAE,CAAC;aACxC;YAED,IAAI,CAAC,IAAI,EAAE,CAAC;QACd,CAAC,EAAE,KAAK,CAAC,CAAC;IACZ,CAAC;IAEO,gBAAgB,CAAC,CAAM;;QAC7B,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,gFAAgF;YAC9E,CAAC,MAAA,CAAC,CAAC,OAAO,mCAAI,CAAC,CAAC,CACnB,CAAC;IACJ,CAAC;CACF;AAnPD,0DAmPC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/supergraphManagers/UplinkSupergraphManager/index.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,11 @@
1
1
  import { SupergraphSdlUpdate } from '../../config';
2
- import type { Fetcher } from '@apollo/utils.fetcher';
3
2
  import type { Logger } from '@apollo/utils.logger';
3
+ import type { AbortableFetcher as Fetcher } from './types';
4
4
  export declare const SUPERGRAPH_SDL_QUERY = "#graphql\n query SupergraphSdl($apiKey: String!, $ref: String!, $ifAfterId: ID) {\n routerConfig(ref: $ref, apiKey: $apiKey, ifAfterId: $ifAfterId) {\n __typename\n ... on RouterConfigResult {\n id\n supergraphSdl: supergraphSDL\n minDelaySeconds\n }\n ... on FetchError {\n code\n message\n }\n }\n }\n";
5
5
  export declare class UplinkFetcherError extends Error {
6
6
  constructor(message: string);
7
7
  }
8
- export declare function loadSupergraphSdlFromUplinks({ graphRef, apiKey, endpoints, errorReportingEndpoint, fetcher, compositionId, maxRetries, roundRobinSeed, earliestFetchTime, logger, }: {
8
+ export declare function loadSupergraphSdlFromUplinks({ graphRef, apiKey, endpoints, errorReportingEndpoint, fetcher, compositionId, maxRetries, requestTimeoutMs, roundRobinSeed, logger, }: {
9
9
  graphRef: string;
10
10
  apiKey: string;
11
11
  endpoints: string[];
@@ -13,17 +13,18 @@ export declare function loadSupergraphSdlFromUplinks({ graphRef, apiKey, endpoin
13
13
  fetcher: Fetcher;
14
14
  compositionId: string | null;
15
15
  maxRetries: number;
16
+ requestTimeoutMs: number;
16
17
  roundRobinSeed: number;
17
- earliestFetchTime: Date | null;
18
- logger?: Logger | undefined;
19
- }): Promise<Required<SupergraphSdlUpdate> | null>;
20
- export declare function loadSupergraphSdlFromStorage({ graphRef, apiKey, endpoint, errorReportingEndpoint, fetcher, compositionId, logger, }: {
18
+ logger: Logger;
19
+ }): Promise<SupergraphSdlUpdate | null>;
20
+ export declare function loadSupergraphSdlFromStorage({ graphRef, apiKey, endpoint, errorReportingEndpoint, fetcher, requestTimeoutMs, compositionId, logger, }: {
21
21
  graphRef: string;
22
22
  apiKey: string;
23
23
  endpoint: string;
24
24
  errorReportingEndpoint?: string;
25
25
  fetcher: Fetcher;
26
+ requestTimeoutMs: number;
26
27
  compositionId: string | null;
27
- logger?: Logger | undefined;
28
- }): Promise<Required<SupergraphSdlUpdate> | null>;
28
+ logger: Logger;
29
+ }): Promise<SupergraphSdlUpdate | null>;
29
30
  //# sourceMappingURL=loadSupergraphSdlFromStorage.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"loadSupergraphSdlFromStorage.d.ts","sourceRoot":"","sources":["../../../src/supergraphManagers/UplinkSupergraphManager/loadSupergraphSdlFromStorage.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAGnD,OAAO,KAAK,EACV,OAAO,EAGR,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAGnD,eAAO,MAAM,oBAAoB,wXAehC,CAAC;AAoBF,qBAAa,kBAAmB,SAAQ,KAAK;gBAC/B,OAAO,EAAE,MAAM;CAI5B;AAED,wBAAsB,4BAA4B,CAAC,EACjD,QAAQ,EACR,MAAM,EACN,SAAS,EACT,sBAAsB,EACtB,OAAO,EACP,aAAa,EACb,UAAU,EACV,cAAc,EACd,iBAAiB,EACjB,MAAM,GACP,EAAE;IACD,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,sBAAsB,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3C,OAAO,EAAE,OAAO,CAAC;IACjB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,iBAAiB,EAAE,IAAI,GAAG,IAAI,CAAC;IAC/B,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC7B,GAAI,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAC,GAAG,IAAI,CAAC,CAyBjD;AAED,wBAAsB,4BAA4B,CAAC,EACjD,QAAQ,EACR,MAAM,EACN,QAAQ,EACR,sBAAsB,EACtB,OAAO,EACP,aAAa,EACb,MAAM,GACP,EAAE;IACD,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,OAAO,EAAE,OAAO,CAAC;IACjB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC7B,GAAI,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAC,GAAG,IAAI,CAAC,CA4FjD"}
1
+ {"version":3,"file":"loadSupergraphSdlFromStorage.d.ts","sourceRoot":"","sources":["../../../src/supergraphManagers/UplinkSupergraphManager/loadSupergraphSdlFromStorage.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAInD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,KAAK,EACV,gBAAgB,IAAI,OAAO,EAE5B,MAAM,SAAS,CAAC;AAGjB,eAAO,MAAM,oBAAoB,wXAehC,CAAC;AAoBF,qBAAa,kBAAmB,SAAQ,KAAK;gBAC/B,OAAO,EAAE,MAAM;CAI5B;AAED,wBAAsB,4BAA4B,CAAC,EACjD,QAAQ,EACR,MAAM,EACN,SAAS,EACT,sBAAsB,EACtB,OAAO,EACP,aAAa,EACb,UAAU,EACV,gBAAgB,EAChB,cAAc,EACd,MAAM,GACP,EAAE;IACD,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,sBAAsB,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3C,OAAO,EAAE,OAAO,CAAC;IACjB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,gBAAgB,EAAE,MAAM,CAAC;IACzB,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;CAChB,GAAI,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAAC,CAwBvC;AAED,wBAAsB,4BAA4B,CAAC,EACjD,QAAQ,EACR,MAAM,EACN,QAAQ,EACR,sBAAsB,EACtB,OAAO,EACP,gBAAgB,EAChB,aAAa,EACb,MAAM,GACP,EAAE;IACD,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,OAAO,EAAE,OAAO,CAAC;IACjB,gBAAgB,EAAE,MAAM,CAAC;IACzB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,MAAM,EAAE,MAAM,CAAC;CAChB,GAAI,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAAC,CAsGvC"}
@@ -5,6 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.loadSupergraphSdlFromStorage = exports.loadSupergraphSdlFromUplinks = exports.UplinkFetcherError = exports.SUPERGRAPH_SDL_QUERY = void 0;
7
7
  const async_retry_1 = __importDefault(require("async-retry"));
8
+ const node_abort_controller_1 = require("node-abort-controller");
8
9
  const outOfBandReporter_1 = require("./outOfBandReporter");
9
10
  exports.SUPERGRAPH_SDL_QUERY = `#graphql
10
11
  query SupergraphSdl($apiKey: String!, $ref: String!, $ifAfterId: ID) {
@@ -31,27 +32,26 @@ class UplinkFetcherError extends Error {
31
32
  }
32
33
  }
33
34
  exports.UplinkFetcherError = UplinkFetcherError;
34
- async function loadSupergraphSdlFromUplinks({ graphRef, apiKey, endpoints, errorReportingEndpoint, fetcher, compositionId, maxRetries, roundRobinSeed, earliestFetchTime, logger, }) {
35
+ async function loadSupergraphSdlFromUplinks({ graphRef, apiKey, endpoints, errorReportingEndpoint, fetcher, compositionId, maxRetries, requestTimeoutMs, roundRobinSeed, logger, }) {
35
36
  return (0, async_retry_1.default)(() => loadSupergraphSdlFromStorage({
36
37
  graphRef,
37
38
  apiKey,
38
39
  endpoint: endpoints[roundRobinSeed++ % endpoints.length],
39
40
  errorReportingEndpoint,
40
41
  fetcher,
42
+ requestTimeoutMs,
41
43
  compositionId,
42
44
  logger,
43
45
  }), {
44
46
  retries: maxRetries,
45
- onRetry: async () => {
46
- const delayMS = earliestFetchTime ? earliestFetchTime.getTime() - Date.now() : 0;
47
- logger === null || logger === void 0 ? void 0 : logger.debug(`Waiting ${delayMS}ms before retrying (earliest fetch time ${earliestFetchTime})...`);
48
- if (delayMS > 0)
49
- await new Promise(resolve => setTimeout(resolve, delayMS));
50
- }
47
+ maxTimeout: 60000,
48
+ onRetry(e, attempt) {
49
+ logger.debug(`Unable to fetch supergraph SDL (attempt ${attempt}), waiting before retry: ${e}`);
50
+ },
51
51
  });
52
52
  }
53
53
  exports.loadSupergraphSdlFromUplinks = loadSupergraphSdlFromUplinks;
54
- async function loadSupergraphSdlFromStorage({ graphRef, apiKey, endpoint, errorReportingEndpoint, fetcher, compositionId, logger, }) {
54
+ async function loadSupergraphSdlFromStorage({ graphRef, apiKey, endpoint, errorReportingEndpoint, fetcher, requestTimeoutMs, compositionId, logger, }) {
55
55
  var _a, _b;
56
56
  const requestBody = JSON.stringify({
57
57
  query: exports.SUPERGRAPH_SDL_QUERY,
@@ -61,6 +61,11 @@ async function loadSupergraphSdlFromStorage({ graphRef, apiKey, endpoint, errorR
61
61
  ifAfterId: compositionId,
62
62
  },
63
63
  });
64
+ const controller = new node_abort_controller_1.AbortController();
65
+ const signal = setTimeout(() => {
66
+ logger.debug(`Aborting request due to timeout`);
67
+ controller.abort();
68
+ }, requestTimeoutMs);
64
69
  const requestDetails = {
65
70
  method: 'POST',
66
71
  body: requestBody,
@@ -70,11 +75,12 @@ async function loadSupergraphSdlFromStorage({ graphRef, apiKey, endpoint, errorR
70
75
  'user-agent': `${name}/${version}`,
71
76
  'content-type': 'application/json',
72
77
  },
78
+ signal: controller.signal,
73
79
  };
80
+ logger.debug(`🔧 Fetching ${graphRef} supergraph schema from ${endpoint} ifAfterId ${compositionId}`);
74
81
  const startTime = new Date();
75
82
  let result;
76
83
  try {
77
- logger === null || logger === void 0 ? void 0 : logger.debug(`🔧 Fetching supergraph schema from ${endpoint}`);
78
84
  result = await fetcher(endpoint, requestDetails);
79
85
  }
80
86
  catch (e) {
@@ -90,6 +96,9 @@ async function loadSupergraphSdlFromStorage({ graphRef, apiKey, endpoint, errorR
90
96
  });
91
97
  throw new UplinkFetcherError(fetchErrorMsg + ((_a = e.message) !== null && _a !== void 0 ? _a : e));
92
98
  }
99
+ finally {
100
+ clearTimeout(signal);
101
+ }
93
102
  const endTime = new Date();
94
103
  let response;
95
104
  if (result.ok || result.status === 400) {
@@ -119,7 +128,7 @@ async function loadSupergraphSdlFromStorage({ graphRef, apiKey, endpoint, errorR
119
128
  const { routerConfig } = response.data;
120
129
  if (routerConfig.__typename === 'RouterConfigResult') {
121
130
  const { id, supergraphSdl, minDelaySeconds, } = routerConfig;
122
- return { id, supergraphSdl: supergraphSdl, minDelaySeconds };
131
+ return { id, supergraphSdl, minDelaySeconds };
123
132
  }
124
133
  else if (routerConfig.__typename === 'FetchError') {
125
134
  const { code, message } = routerConfig;
@@ -1 +1 @@
1
- {"version":3,"file":"loadSupergraphSdlFromStorage.js","sourceRoot":"","sources":["../../../src/supergraphManagers/UplinkSupergraphManager/loadSupergraphSdlFromStorage.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"loadSupergraphSdlFromStorage.js","sourceRoot":"","sources":["../../../src/supergraphManagers/UplinkSupergraphManager/loadSupergraphSdlFromStorage.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
- import { Fetcher, FetcherResponse } from '@apollo/utils.fetcher';
1
+ import { FetcherResponse } from '@apollo/utils.fetcher';
2
+ import { type AbortableFetcher as Fetcher } from './types';
2
3
  export declare const OUT_OF_BAND_REPORTER_QUERY = "#graphql\n mutation OOBReport($input: APIMonitoringReport) {\n reportError(report: $input)\n }\n";
3
4
  export declare function submitOutOfBandReportIfConfigured({ error, requestEndpoint, requestBody, endpoint, response, startedAt, endedAt, tags, fetcher, }: {
4
5
  error: Error;
@@ -1 +1 @@
1
- {"version":3,"file":"outOfBandReporter.d.ts","sourceRoot":"","sources":["../../../src/supergraphManagers/UplinkSupergraphManager/outOfBandReporter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AASjE,eAAO,MAAM,0BAA0B,0GAItC,CAAC;AAiBF,wBAAsB,iCAAiC,CAAC,EACtD,KAAK,EACL,eAAe,EACf,WAAW,EACX,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,OAAO,EACP,IAAI,EACJ,OAAO,GACR,EAAE;IACD,KAAK,EAAE,KAAK,CAAC;IACb,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B,SAAS,EAAE,IAAI,CAAC;IAChB,OAAO,EAAE,IAAI,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;CAClB,iBA6EA"}
1
+ {"version":3,"file":"outOfBandReporter.d.ts","sourceRoot":"","sources":["../../../src/supergraphManagers/UplinkSupergraphManager/outOfBandReporter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAOxD,OAAO,EAAE,KAAK,gBAAgB,IAAI,OAAO,EAAE,MAAM,SAAS,CAAC;AAG3D,eAAO,MAAM,0BAA0B,0GAItC,CAAC;AAiBF,wBAAsB,iCAAiC,CAAC,EACtD,KAAK,EACL,eAAe,EACf,WAAW,EACX,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,OAAO,EACP,IAAI,EACJ,OAAO,GACR,EAAE;IACD,KAAK,EAAE,KAAK,CAAC;IACb,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B,SAAS,EAAE,IAAI,CAAC;IAChB,OAAO,EAAE,IAAI,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;CAClB,iBA6EA"}
@@ -1 +1 @@
1
- {"version":3,"file":"outOfBandReporter.js","sourceRoot":"","sources":["../../../src/supergraphManagers/UplinkSupergraphManager/outOfBandReporter.ts"],"names":[],"mappings":";;;AAEA,mEAI0C;AAG7B,QAAA,0BAA0B,GAAgB;;;;CAItD,CAAC;AAEF,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAAC;AAepD,KAAK,UAAU,iCAAiC,CAAC,EACtD,KAAK,EACL,eAAe,EACf,WAAW,EACX,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,OAAO,EACP,IAAI,EACJ,OAAO,GAWR;;IAEC,IAAI,CAAC,QAAQ,EAAE;QACb,OAAO;KACR;IAED,IAAI,SAAoB,CAAC;IACzB,IAAI,CAAC,QAAQ,EAAE;QACb,SAAS,GAAG,wBAAS,CAAC,gBAAgB,CAAC;KACxC;SAAM;QAEL,QAAQ,QAAQ,CAAC,MAAM,EAAE;YACvB,KAAK,GAAG,CAAC;YACT,KAAK,GAAG,CAAC;YACT,KAAK,GAAG;gBACN,SAAS,GAAG,wBAAS,CAAC,WAAW,CAAC;gBAClC,MAAM;YACR,KAAK,GAAG,CAAC;YACT,KAAK,GAAG;gBACN,SAAS,GAAG,wBAAS,CAAC,OAAO,CAAC;gBAC9B,MAAM;YACR,KAAK,GAAG,CAAC;YACT,KAAK,GAAG;gBACN,SAAS,GAAG,wBAAS,CAAC,gBAAgB,CAAC;gBACvC,MAAM;YACR;gBACE,SAAS,GAAG,wBAAS,CAAC,KAAK,CAAC;SAC/B;KACF;IAED,MAAM,YAAY,GAAuB,MAAM,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,EAAE,CAAA,CAAC;IAEhE,MAAM,SAAS,GAA+B;QAC5C,KAAK,EAAE;YACL,KAAK,EAAE;gBACL,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,KAAK,CAAC,OAAO;aACvB;YACD,OAAO,EAAE;gBACP,GAAG,EAAE,eAAe;gBACpB,IAAI,EAAE,WAAW;aAClB;YACD,QAAQ,EAAE,QAAQ;gBAChB,CAAC,CAAC;oBACE,cAAc,EAAE,QAAQ,CAAC,MAAM;oBAC/B,IAAI,EAAE,YAAY;iBACnB;gBACH,CAAC,CAAC,IAAI;YACR,SAAS,EAAE,SAAS,CAAC,WAAW,EAAE;YAClC,OAAO,EAAE,OAAO,CAAC,WAAW,EAAE;YAC9B,IAAI,EAAE,IAAI;SACX;KACF,CAAC;IAEF,IAAI;QACF,MAAM,WAAW,GAAG,MAAM,OAAO,CAAC,QAAQ,EAAE;YAC1C,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,KAAK,EAAE,kCAA0B;gBACjC,SAAS;aACV,CAAC;YACF,OAAO,EAAE;gBACP,2BAA2B,EAAE,IAAI;gBACjC,8BAA8B,EAAE,OAAO;gBACvC,YAAY,EAAE,GAAG,IAAI,IAAI,OAAO,EAAE;gBAClC,cAAc,EAAE,kBAAkB;aACnC;SACF,CAAC,CAAC;QACH,MAAM,cAAc,GAA4B,MAAM,WAAW,CAAC,IAAI,EAAE,CAAC;QACzE,IAAI,CAAC,CAAA,MAAA,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,IAAI,0CAAE,WAAW,CAAA,EAAE;YACtC,MAAM,IAAI,KAAK,CACb,uCAAuC,WAAW,CAAC,MAAM,IAAI,WAAW,CAAC,UAAU,EAAE,CACtF,CAAC;SACH;KACF;IAAC,OAAO,CAAC,EAAE;QACV,MAAM,IAAI,KAAK,CAAC,uCAAuC,MAAA,CAAC,CAAC,OAAO,mCAAI,CAAC,EAAE,CAAC,CAAC;KAC1E;AACH,CAAC;AAjGD,8EAiGC"}
1
+ {"version":3,"file":"outOfBandReporter.js","sourceRoot":"","sources":["../../../src/supergraphManagers/UplinkSupergraphManager/outOfBandReporter.ts"],"names":[],"mappings":";;;AAEA,mEAI0C;AAI7B,QAAA,0BAA0B,GAAgB;;;;CAItD,CAAC;AAEF,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAAC;AAepD,KAAK,UAAU,iCAAiC,CAAC,EACtD,KAAK,EACL,eAAe,EACf,WAAW,EACX,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,OAAO,EACP,IAAI,EACJ,OAAO,GAWR;;IAEC,IAAI,CAAC,QAAQ,EAAE;QACb,OAAO;KACR;IAED,IAAI,SAAoB,CAAC;IACzB,IAAI,CAAC,QAAQ,EAAE;QACb,SAAS,GAAG,wBAAS,CAAC,gBAAgB,CAAC;KACxC;SAAM;QAEL,QAAQ,QAAQ,CAAC,MAAM,EAAE;YACvB,KAAK,GAAG,CAAC;YACT,KAAK,GAAG,CAAC;YACT,KAAK,GAAG;gBACN,SAAS,GAAG,wBAAS,CAAC,WAAW,CAAC;gBAClC,MAAM;YACR,KAAK,GAAG,CAAC;YACT,KAAK,GAAG;gBACN,SAAS,GAAG,wBAAS,CAAC,OAAO,CAAC;gBAC9B,MAAM;YACR,KAAK,GAAG,CAAC;YACT,KAAK,GAAG;gBACN,SAAS,GAAG,wBAAS,CAAC,gBAAgB,CAAC;gBACvC,MAAM;YACR;gBACE,SAAS,GAAG,wBAAS,CAAC,KAAK,CAAC;SAC/B;KACF;IAED,MAAM,YAAY,GAAuB,MAAM,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,EAAE,CAAA,CAAC;IAEhE,MAAM,SAAS,GAA+B;QAC5C,KAAK,EAAE;YACL,KAAK,EAAE;gBACL,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,KAAK,CAAC,OAAO;aACvB;YACD,OAAO,EAAE;gBACP,GAAG,EAAE,eAAe;gBACpB,IAAI,EAAE,WAAW;aAClB;YACD,QAAQ,EAAE,QAAQ;gBAChB,CAAC,CAAC;oBACE,cAAc,EAAE,QAAQ,CAAC,MAAM;oBAC/B,IAAI,EAAE,YAAY;iBACnB;gBACH,CAAC,CAAC,IAAI;YACR,SAAS,EAAE,SAAS,CAAC,WAAW,EAAE;YAClC,OAAO,EAAE,OAAO,CAAC,WAAW,EAAE;YAC9B,IAAI,EAAE,IAAI;SACX;KACF,CAAC;IAEF,IAAI;QACF,MAAM,WAAW,GAAG,MAAM,OAAO,CAAC,QAAQ,EAAE;YAC1C,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,KAAK,EAAE,kCAA0B;gBACjC,SAAS;aACV,CAAC;YACF,OAAO,EAAE;gBACP,2BAA2B,EAAE,IAAI;gBACjC,8BAA8B,EAAE,OAAO;gBACvC,YAAY,EAAE,GAAG,IAAI,IAAI,OAAO,EAAE;gBAClC,cAAc,EAAE,kBAAkB;aACnC;SACF,CAAC,CAAC;QACH,MAAM,cAAc,GAA4B,MAAM,WAAW,CAAC,IAAI,EAAE,CAAC;QACzE,IAAI,CAAC,CAAA,MAAA,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,IAAI,0CAAE,WAAW,CAAA,EAAE;YACtC,MAAM,IAAI,KAAK,CACb,uCAAuC,WAAW,CAAC,MAAM,IAAI,WAAW,CAAC,UAAU,EAAE,CACtF,CAAC;SACH;KACF;IAAC,OAAO,CAAC,EAAE;QACV,MAAM,IAAI,KAAK,CAAC,uCAAuC,MAAA,CAAC,CAAC,OAAO,mCAAI,CAAC,EAAE,CAAC,CAAC;KAC1E;AACH,CAAC;AAjGD,8EAiGC"}
@@ -0,0 +1,9 @@
1
+ import type { AbortSignal } from 'node-abort-controller';
2
+ import type { Fetcher, FetcherRequestInit } from '@apollo/utils.fetcher';
3
+ export interface AbortableFetcherRequestInit extends FetcherRequestInit {
4
+ signal?: AbortSignal | null | undefined;
5
+ }
6
+ export interface AbortableFetcher extends Fetcher {
7
+ init?: AbortableFetcherRequestInit;
8
+ }
9
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/supergraphManagers/UplinkSupergraphManager/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,KAAK,EAAE,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAEzE,MAAM,WAAW,2BAA4B,SAAQ,kBAAkB;IACrE,MAAM,CAAC,EAAE,WAAW,GAAG,IAAI,GAAG,SAAS,CAAC;CACzC;AAED,MAAM,WAAW,gBAAiB,SAAQ,OAAO;IAC/C,IAAI,CAAC,EAAE,2BAA2B,CAAC;CACpC"}
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ ;
4
+ ;
5
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/supergraphManagers/UplinkSupergraphManager/types.ts"],"names":[],"mappings":";;AAKC,CAAC;AAID,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@apollo/gateway",
3
- "version": "2.1.0-alpha.0",
3
+ "version": "2.1.0-alpha.3",
4
4
  "description": "Apollo Gateway",
5
5
  "author": "Apollo <packages@apollographql.com>",
6
6
  "main": "dist/index.js",
@@ -25,29 +25,27 @@
25
25
  "access": "public"
26
26
  },
27
27
  "dependencies": {
28
- "@apollo/composition": "^2.1.0-alpha.0",
28
+ "@apollo/composition": "^2.1.0-alpha.3",
29
29
  "@apollo/core-schema": "~0.3.0",
30
- "@apollo/federation-internals": "^2.1.0-alpha.0",
31
- "@apollo/query-planner": "^2.1.0-alpha.0",
30
+ "@apollo/federation-internals": "^2.1.0-alpha.3",
31
+ "@apollo/query-planner": "^2.1.0-alpha.3",
32
+ "@apollo/server-gateway-interface": "^1.0.1",
32
33
  "@apollo/utils.createhash": "^1.1.0",
33
34
  "@apollo/utils.fetcher": "^1.0.0",
34
35
  "@apollo/utils.isnodelike": "^1.1.0",
35
36
  "@apollo/utils.logger": "^1.0.0",
36
37
  "@josephg/resolvable": "^1.0.1",
37
38
  "@opentelemetry/api": "^1.0.1",
38
- "@types/node-fetch": "2.6.1",
39
39
  "apollo-reporting-protobuf": "^0.8.0 || ^3.0.0",
40
- "apollo-server-caching": "^0.7.0 || ^3.0.0",
41
- "apollo-server-core": "^2.23.0 || ^3.0.0",
42
- "apollo-server-errors": "^2.5.0 || ^3.0.0",
43
- "apollo-server-types": "^0.9.0 || ^3.0.0",
44
40
  "async-retry": "^1.3.3",
45
41
  "loglevel": "^1.6.1",
42
+ "lru-cache": "^7.13.1",
46
43
  "make-fetch-happen": "^10.1.2",
47
- "pretty-format": "^27.0.0"
44
+ "node-abort-controller": "^3.0.1",
45
+ "node-fetch": "^2.6.7"
48
46
  },
49
47
  "peerDependencies": {
50
48
  "graphql": "^16.0.0"
51
49
  },
52
- "gitHead": "721a0143e418d64e538082b301862ca9417e830c"
50
+ "gitHead": "10ffec3f74faab2096f4514c7b2669cce9605e1c"
53
51
  }
@@ -771,13 +771,17 @@ describe('buildQueryPlan', () => {
771
771
  topProducts {
772
772
  __typename
773
773
  ... on Book {
774
- price
774
+ ...Price
775
775
  }
776
776
  ... on Furniture {
777
- price
777
+ ...Price
778
778
  }
779
779
  }
780
780
  }
781
+
782
+ fragment Price on Product {
783
+ price
784
+ }
781
785
  },
782
786
  }
783
787
  `);
@@ -1,12 +1,11 @@
1
1
  import {
2
2
  buildClientSchema,
3
3
  getIntrospectionQuery,
4
+ GraphQLError,
4
5
  GraphQLObjectType,
5
6
  print,
6
7
  } from 'graphql';
7
8
  import gql from 'graphql-tag';
8
- import { GraphQLExecutionResult, GraphQLRequestContext } from 'apollo-server-types';
9
- import { AuthenticationError } from 'apollo-server-core';
10
9
  import { buildOperationContext } from '../operationContext';
11
10
  import { executeQueryPlan } from '../executeQueryPlan';
12
11
  import { LocalGraphQLDataSource } from '../datasources/LocalGraphQLDataSource';
@@ -24,6 +23,7 @@ import {
24
23
  addResolversToSchema,
25
24
  GraphQLResolverMap,
26
25
  } from '@apollo/subgraph/src/schema-helper';
26
+ import {GatewayExecutionResult, GatewayGraphQLRequestContext} from '@apollo/server-gateway-interface';
27
27
 
28
28
  expect.addSnapshotSerializer(astSerializer);
29
29
  expect.addSnapshotSerializer(queryPlanSerializer);
@@ -45,12 +45,13 @@ describe('executeQueryPlan', () => {
45
45
  async function executePlan(
46
46
  queryPlan: QueryPlan,
47
47
  operation: Operation,
48
- executeRequestContext?: GraphQLRequestContext,
48
+ executeRequestContext?: GatewayGraphQLRequestContext,
49
49
  executeSchema?: Schema,
50
50
  executeServiceMap?: { [serviceName: string]: LocalGraphQLDataSource }
51
- ): Promise<GraphQLExecutionResult> {
51
+ ): Promise<GatewayExecutionResult> {
52
+ const supergraphSchema = executeSchema ?? schema;
52
53
  const operationContext = buildOperationContext({
53
- schema: (executeSchema ?? schema).toAPISchema().toGraphQLJSSchema(),
54
+ schema: supergraphSchema.toAPISchema().toGraphQLJSSchema(),
54
55
  operationDocument: gql`${operation.toString()}`,
55
56
  });
56
57
  return executeQueryPlan(
@@ -58,10 +59,11 @@ describe('executeQueryPlan', () => {
58
59
  executeServiceMap ?? serviceMap,
59
60
  executeRequestContext ?? buildRequestContext(),
60
61
  operationContext,
62
+ supergraphSchema.toGraphQLJSSchema(),
61
63
  );
62
64
  }
63
65
 
64
- async function executeOperation(operationString: string, requestContext?: GraphQLRequestContext): Promise<GraphQLExecutionResult> {
66
+ async function executeOperation(operationString: string, requestContext?: GatewayGraphQLRequestContext): Promise<GatewayExecutionResult> {
65
67
  const operation = parseOp(operationString);
66
68
  const queryPlan = buildPlan(operation);
67
69
  return executePlan(queryPlan, operation, requestContext);
@@ -90,7 +92,7 @@ describe('executeQueryPlan', () => {
90
92
  ).not.toThrow();
91
93
  });
92
94
 
93
- function buildRequestContext(): GraphQLRequestContext {
95
+ function buildRequestContext(): GatewayGraphQLRequestContext {
94
96
  // eslint-disable-next-line @typescript-eslint/ban-ts-comment
95
97
  // @ts-ignore
96
98
  return {
@@ -124,7 +126,9 @@ describe('executeQueryPlan', () => {
124
126
  overrideResolversInService('accounts', {
125
127
  RootQuery: {
126
128
  me() {
127
- throw new AuthenticationError('Something went wrong');
129
+ throw new GraphQLError('Something went wrong', {
130
+ extensions: { code: 'UNAUTHENTICATED' },
131
+ });
128
132
  },
129
133
  },
130
134
  });
@@ -2738,6 +2742,202 @@ describe('executeQueryPlan', () => {
2738
2742
  `);
2739
2743
  expect(response.errors?.map((e) => e.message)).toStrictEqual(['String cannot represent value: ["invalid"]']);
2740
2744
  });
2745
+
2746
+ test('ensures type condition on inaccessible type in @require works correctly', async () => {
2747
+ const s1 = {
2748
+ name: 'data',
2749
+ typeDefs: gql`
2750
+ extend schema
2751
+ @link(url: "https://specs.apollo.dev/federation/v2.0", import: ["@key", "@shareable"])
2752
+
2753
+ type Entity @key(fields: "id") {
2754
+ id: ID!
2755
+ data: Foo
2756
+ }
2757
+
2758
+ interface Foo {
2759
+ foo: String!
2760
+ }
2761
+
2762
+ interface Bar implements Foo {
2763
+ foo: String!
2764
+ bar: String!
2765
+ }
2766
+
2767
+ type Data implements Foo & Bar @shareable {
2768
+ foo: String!
2769
+ bar: String!
2770
+ }
2771
+ `,
2772
+ resolvers: {
2773
+ Query: {
2774
+ dummy() {
2775
+ return {};
2776
+ },
2777
+ },
2778
+ Entity: {
2779
+ __resolveReference() {
2780
+ return {};
2781
+ },
2782
+ id() {
2783
+ return "id";
2784
+ },
2785
+ data() {
2786
+ return {
2787
+ __typename: "Data",
2788
+ foo: "foo",
2789
+ bar: "bar",
2790
+ };
2791
+ },
2792
+ },
2793
+
2794
+ }
2795
+ }
2796
+
2797
+ let requirerRepresentation: any = undefined;
2798
+
2799
+ const s2 = {
2800
+ name: 'requirer',
2801
+ typeDefs: gql`
2802
+ extend schema
2803
+ @link(
2804
+ url: "https://specs.apollo.dev/federation/v2.0",
2805
+ import: ["@key", "@shareable", "@external", "@requires", "@inaccessible"]
2806
+ )
2807
+
2808
+ type Query {
2809
+ dummy: Entity
2810
+ }
2811
+
2812
+ type Entity @key(fields: "id") {
2813
+ id: ID!
2814
+ data: Foo @external
2815
+ requirer: String! @requires(fields: "data { foo ... on Bar { bar } }")
2816
+ }
2817
+
2818
+ interface Foo {
2819
+ foo: String!
2820
+ }
2821
+
2822
+ interface Bar implements Foo @inaccessible {
2823
+ foo: String!
2824
+ bar: String!
2825
+ }
2826
+
2827
+ type Data implements Foo & Bar @shareable {
2828
+ foo: String!
2829
+ bar: String!
2830
+ }
2831
+ `,
2832
+ resolvers: {
2833
+ Query: {
2834
+ dummy() {
2835
+ return {};
2836
+ },
2837
+ },
2838
+ Entity: {
2839
+ __resolveReference(representation: any) {
2840
+ requirerRepresentation = representation;
2841
+ return {};
2842
+ },
2843
+ id() {
2844
+ return "id";
2845
+ },
2846
+ requirer() {
2847
+ return "requirer";
2848
+ },
2849
+ },
2850
+ }
2851
+ }
2852
+
2853
+ const { serviceMap, schema, queryPlanner} = getFederatedTestingSchema([ s1, s2 ]);
2854
+
2855
+ const operation = parseOp(`
2856
+ query {
2857
+ dummy {
2858
+ requirer
2859
+ }
2860
+ }
2861
+ `, schema);
2862
+
2863
+ const queryPlan = buildPlan(operation, queryPlanner);
2864
+ expect(queryPlan).toMatchInlineSnapshot(`
2865
+ QueryPlan {
2866
+ Sequence {
2867
+ Fetch(service: "requirer") {
2868
+ {
2869
+ dummy {
2870
+ __typename
2871
+ id
2872
+ }
2873
+ }
2874
+ },
2875
+ Flatten(path: "dummy") {
2876
+ Fetch(service: "data") {
2877
+ {
2878
+ ... on Entity {
2879
+ __typename
2880
+ id
2881
+ }
2882
+ } =>
2883
+ {
2884
+ ... on Entity {
2885
+ data {
2886
+ __typename
2887
+ foo
2888
+ ... on Data {
2889
+ bar
2890
+ }
2891
+ }
2892
+ }
2893
+ }
2894
+ },
2895
+ },
2896
+ Flatten(path: "dummy") {
2897
+ Fetch(service: "requirer") {
2898
+ {
2899
+ ... on Entity {
2900
+ __typename
2901
+ data {
2902
+ foo
2903
+ ... on Bar {
2904
+ bar
2905
+ }
2906
+ }
2907
+ id
2908
+ }
2909
+ } =>
2910
+ {
2911
+ ... on Entity {
2912
+ requirer
2913
+ }
2914
+ }
2915
+ },
2916
+ },
2917
+ },
2918
+ }
2919
+ `);
2920
+
2921
+ const response = await executePlan(queryPlan, operation, undefined, schema, serviceMap);
2922
+ expect(response.data).toMatchInlineSnapshot(`
2923
+ Object {
2924
+ "dummy": Object {
2925
+ "requirer": "requirer",
2926
+ },
2927
+ }
2928
+ `);
2929
+
2930
+ expect(requirerRepresentation).toMatchInlineSnapshot(`
2931
+ Object {
2932
+ "__typename": "Entity",
2933
+ "data": Object {
2934
+ "bar": "bar",
2935
+ "foo": "foo",
2936
+ },
2937
+ "id": "id",
2938
+ }
2939
+ `);
2940
+ });
2741
2941
  });
2742
2942
 
2743
2943
  describe('@key', () => {
@@ -3,7 +3,6 @@ import {
3
3
  GraphQLResolverMap,
4
4
  GraphQLSchemaValidationError,
5
5
  } from '@apollo/subgraph/src/schema-helper';
6
- import { GraphQLRequest, GraphQLExecutionResult } from 'apollo-server-types';
7
6
  import type { Logger } from '@apollo/utils.logger';
8
7
  import { buildSubgraphSchema } from '@apollo/subgraph';
9
8
  import {
@@ -19,6 +18,7 @@ import gql from 'graphql-tag';
19
18
  import { fixtures } from 'apollo-federation-integration-testsuite';
20
19
  import { composeServices } from '@apollo/composition';
21
20
  import { buildSchema, operationFromDocument, ServiceDefinition } from '@apollo/federation-internals';
21
+ import { GatewayExecutionResult, GatewayGraphQLRequest } from '@apollo/server-gateway-interface';
22
22
 
23
23
  const prettyFormat = require('pretty-format');
24
24
 
@@ -36,10 +36,10 @@ export function overrideResolversInService(
36
36
  }
37
37
 
38
38
  export async function execute(
39
- request: GraphQLRequest,
39
+ request: GatewayGraphQLRequest,
40
40
  services: ServiceDefinitionModule[] = fixtures,
41
41
  logger: Logger = console,
42
- ): Promise<GraphQLExecutionResult & { queryPlan: QueryPlan }> {
42
+ ): Promise<GatewayExecutionResult & { queryPlan: QueryPlan }> {
43
43
  const serviceMap = Object.fromEntries(
44
44
  services.map(({ name, typeDefs, resolvers }) => {
45
45
  return [
@@ -53,12 +53,13 @@ export async function execute(
53
53
 
54
54
  const { schema, queryPlanner } = getFederatedTestingSchema(services);
55
55
 
56
+ const apiSchema = schema.toAPISchema();
56
57
  const operationDocument = gql`${request.query}`;
57
- const operation = operationFromDocument(schema, operationDocument);
58
+ const operation = operationFromDocument(apiSchema, operationDocument);
58
59
  const queryPlan = queryPlanner.buildQueryPlan(operation);
59
60
 
60
61
  const operationContext = buildOperationContext({
61
- schema: schema.toAPISchema().toGraphQLJSSchema(),
62
+ schema: apiSchema.toGraphQLJSSchema(),
62
63
  operationDocument,
63
64
  });
64
65
 
@@ -74,6 +75,7 @@ export async function execute(
74
75
  logger
75
76
  },
76
77
  operationContext,
78
+ schema.toGraphQLJSSchema(),
77
79
  );
78
80
 
79
81
  return { ...result, queryPlan };
@@ -90,7 +92,7 @@ export function getFederatedTestingSchema(services: ServiceDefinitionModule[] =
90
92
  throw new GraphQLSchemaValidationError(compositionResult.errors);
91
93
  }
92
94
 
93
- const queryPlanner = new QueryPlanner(compositionResult.schema);
95
+ const queryPlanner = new QueryPlanner(compositionResult.schema, { exposeDocumentNodeInFetchNode: false} );
94
96
  const schema = buildSchema(compositionResult.supergraphSdl);
95
97
 
96
98
  const serviceMap = Object.fromEntries(