@apollo/gateway 0.37.0 → 0.38.2

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.
package/CHANGELOG.md CHANGED
@@ -6,6 +6,10 @@
6
6
 
7
7
  - _Nothing yet! Stay tuned!_
8
8
 
9
+ ## v0.38.1
10
+
11
+ - Reverts [PR #159](https://github.com/apollographql/federation/pull/159) which propogated subgraph execution errors directly to the client. While desirable in practice, this somewhat recent introduction would seem to beg for a different implementation, given that the pain points of introducing it seem to be currently outweighing the gains. Happy to revisit this with additional feedback on [the tracking issue](https://github.com/apollographql/federation/issues/981) that has been opened to re-visit this. In the interim, we are offering a release that reverts this change. [Issue #974](https://github.com/apollographql/federation/issues/974) [Apollo Server Issue #5550](https://github.com/apollographql/apollo-server/issues/5550) [PR #982](https://github.com/apollographql/federation/pull/982)
12
+
9
13
  ## v0.37.0
10
14
 
11
15
  - OpenTelemetry will now include the GraphQL `operationName` in span attributes, following up on the initial implementation introduced in v0.31.0 via [#836](https://github.com/apollographql/federation/pull/836) [PR #942](https://github.com/apollographql/federation/pull/942)
@@ -77,7 +77,7 @@ export declare type Query = {
77
77
  export declare type QueryRouterConfigArgs = {
78
78
  ref: Scalars['String'];
79
79
  apiKey: Scalars['String'];
80
- supportedSpecURLs?: Array<Scalars['String']>;
80
+ ifAfterId?: Maybe<Scalars['ID']>;
81
81
  };
82
82
  export declare type Request = {
83
83
  url: Scalars['String'];
@@ -89,13 +89,17 @@ export declare type Response = {
89
89
  headers?: Maybe<Array<HttpHeader>>;
90
90
  body?: Maybe<Scalars['String']>;
91
91
  };
92
- export declare type RouterConfigResponse = RouterConfigResult | FetchError;
92
+ export declare type RouterConfigResponse = RouterConfigResult | Unchanged | FetchError;
93
93
  export declare type RouterConfigResult = {
94
94
  __typename?: 'RouterConfigResult';
95
95
  id: Scalars['ID'];
96
96
  supergraphSDL: Scalars['String'];
97
97
  messages: Array<Message>;
98
98
  };
99
+ export declare type Unchanged = {
100
+ __typename?: 'Unchanged';
101
+ id: Scalars['ID'];
102
+ };
99
103
  export declare type SupergraphSdlQueryVariables = Exact<{
100
104
  apiKey: Scalars['String'];
101
105
  ref: Scalars['String'];
@@ -106,6 +110,8 @@ export declare type SupergraphSdlQuery = {
106
110
  __typename: 'RouterConfigResult';
107
111
  id: string;
108
112
  supergraphSdl: string;
113
+ } | {
114
+ __typename: 'Unchanged';
109
115
  } | {
110
116
  __typename: 'FetchError';
111
117
  code: FetchErrorCode;
@@ -1 +1 @@
1
- {"version":3,"file":"graphqlTypes.d.ts","sourceRoot":"","sources":["../../src/__generated__/graphqlTypes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"graphqlTypes.d.ts","sourceRoot":"","sources":["../../src/__generated__/graphqlTypes.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"executeQueryPlan.d.ts","sourceRoot":"","sources":["../src/executeQueryPlan.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,EACtB,qBAAqB,EACtB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAKL,oBAAoB,EAIrB,MAAM,SAAS,CAAC;AAGjB,OAAO,EAAE,iBAAiB,EAAgC,MAAM,qBAAqB,CAAC;AACtF,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAGL,SAAS,EAMV,MAAM,uBAAuB,CAAC;AAO/B,oBAAY,UAAU,GAAG;IACvB,CAAC,WAAW,EAAE,MAAM,GAAG,iBAAiB,CAAC;CAC1C,CAAC;AAYF,wBAAsB,gBAAgB,CAAC,QAAQ,EAC7C,SAAS,EAAE,SAAS,EACpB,UAAU,EAAE,UAAU,EACtB,cAAc,EAAE,qBAAqB,CAAC,QAAQ,CAAC,EAC/C,gBAAgB,EAAE,gBAAgB,GACjC,OAAO,CAAC,sBAAsB,CAAC,CAuFjC;AAibD,eAAO,MAAM,oCAAoC,EAAE,oBAAoB,CACrE,GAAG,EACH,GAAG,CAYJ,CAAC"}
1
+ {"version":3,"file":"executeQueryPlan.d.ts","sourceRoot":"","sources":["../src/executeQueryPlan.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,EACtB,qBAAqB,EACtB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAKL,oBAAoB,EAIrB,MAAM,SAAS,CAAC;AAGjB,OAAO,EAAE,iBAAiB,EAAgC,MAAM,qBAAqB,CAAC;AACtF,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAGL,SAAS,EAMV,MAAM,uBAAuB,CAAC;AAM/B,oBAAY,UAAU,GAAG;IACvB,CAAC,WAAW,EAAE,MAAM,GAAG,iBAAiB,CAAC;CAC1C,CAAC;AAYF,wBAAsB,gBAAgB,CAAC,QAAQ,EAC7C,SAAS,EAAE,SAAS,EACpB,UAAU,EAAE,UAAU,EACtB,cAAc,EAAE,qBAAqB,CAAC,QAAQ,CAAC,EAC/C,gBAAgB,EAAE,gBAAgB,GACjC,OAAO,CAAC,sBAAsB,CAAC,CA+GjC;AAibD,eAAO,MAAM,oCAAoC,EAAE,oBAAoB,CACrE,GAAG,EACH,GAAG,CAYJ,CAAC"}
@@ -11,8 +11,8 @@ const deepMerge_1 = require("./utilities/deepMerge");
11
11
  const array_1 = require("./utilities/array");
12
12
  const api_1 = require("@opentelemetry/api");
13
13
  const opentelemetry_1 = require("./utilities/opentelemetry");
14
- const cleanErrorOfInaccessibleNames_1 = require("./utilities/cleanErrorOfInaccessibleNames");
15
14
  async function executeQueryPlan(queryPlan, serviceMap, requestContext, operationContext) {
15
+ const logger = requestContext.logger || console;
16
16
  return opentelemetry_1.tracer.startActiveSpan(opentelemetry_1.OpenTelemetrySpanNames.EXECUTE, async (span) => {
17
17
  try {
18
18
  const errors = [];
@@ -32,10 +32,9 @@ async function executeQueryPlan(queryPlan, serviceMap, requestContext, operation
32
32
  }
33
33
  }
34
34
  let result = await opentelemetry_1.tracer.startActiveSpan(opentelemetry_1.OpenTelemetrySpanNames.POST_PROCESSING, async (span) => {
35
- var _a;
36
35
  try {
37
36
  const schema = query_planner_1.toAPISchema(operationContext.schema);
38
- const executionResult = await graphql_1.execute({
37
+ ({ data } = await graphql_1.execute({
39
38
  schema,
40
39
  document: {
41
40
  kind: graphql_1.Kind.DOCUMENT,
@@ -47,16 +46,28 @@ async function executeQueryPlan(queryPlan, serviceMap, requestContext, operation
47
46
  rootValue: data,
48
47
  variableValues: requestContext.request.variables,
49
48
  fieldResolver: exports.defaultFieldResolverWithAliasSupport,
50
- });
51
- data = executionResult.data;
52
- if ((_a = executionResult.errors) === null || _a === void 0 ? void 0 : _a.length) {
53
- const cleanedErrors = executionResult.errors.map((error) => cleanErrorOfInaccessibleNames_1.cleanErrorOfInaccessibleNames(schema, error));
54
- errors.push(...cleanedErrors);
55
- }
49
+ }));
56
50
  }
57
51
  catch (error) {
58
52
  span.setStatus({ code: api_1.SpanStatusCode.ERROR });
59
- return { errors: [error] };
53
+ if (error instanceof graphql_1.GraphQLError) {
54
+ return { errors: [error] };
55
+ }
56
+ else if (error instanceof Error) {
57
+ return {
58
+ errors: [
59
+ new graphql_1.GraphQLError(error.message, undefined, undefined, undefined, undefined, error)
60
+ ]
61
+ };
62
+ }
63
+ else {
64
+ logger.error("Unexpected error during query plan execution: " + error);
65
+ return {
66
+ errors: [
67
+ new graphql_1.GraphQLError("Unexpected error during query plan execution")
68
+ ]
69
+ };
70
+ }
60
71
  }
61
72
  finally {
62
73
  span.end();
@@ -1 +1 @@
1
- {"version":3,"file":"executeQueryPlan.js","sourceRoot":"","sources":["../src/executeQueryPlan.ts"],"names":[],"mappings":";;;AAIA,yDAA4C;AAC5C,qCASiB;AACjB,yEAA0D;AAC1D,mDAAoE;AACpE,+CAAsF;AAEtF,yDAS+B;AAC/B,qDAAkD;AAClD,6CAAyD;AACzD,4CAAoD;AACpD,6DAA2E;AAC3E,6FAA0F;AAgBnF,KAAK,UAAU,gBAAgB,CACpC,SAAoB,EACpB,UAAsB,EACtB,cAA+C,EAC/C,gBAAkC;IAElC,OAAO,sBAAM,CAAC,eAAe,CAAC,sCAAsB,CAAC,OAAO,EAAE,KAAK,EAAC,IAAI,EAAC,EAAE;QACzE,IAAI;YACF,MAAM,MAAM,GAAmB,EAAE,CAAC;YAElC,MAAM,OAAO,GAA+B;gBAC1C,SAAS;gBACT,gBAAgB;gBAChB,UAAU;gBACV,cAAc;gBACd,MAAM;aACP,CAAC;YAEF,IAAI,IAAI,GAAiC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAE7D,MAAM,aAAa,GAAG,CAAC,CAAC,CACpB,cAAc,CAAC,OAAO,IAAI,cAAc,CAAC,OAAO,CAAC,aAAa,CACjE,CAAC;YAEF,IAAI,SAAS,CAAC,IAAI,EAAE;gBAClB,MAAM,SAAS,GAAG,MAAM,WAAW,CACjC,OAAO,EACP,SAAS,CAAC,IAAI,EACd,IAAK,EACL,EAAE,EACF,aAAa,CACd,CAAC;gBACF,IAAI,aAAa,EAAE;oBACjB,cAAc,CAAC,OAAQ,CAAC,cAAc,GAAG,SAAS,CAAC;iBACpD;aACF;YAED,IAAI,MAAM,GAAG,MAAM,sBAAM,CAAC,eAAe,CAAC,sCAAsB,CAAC,eAAe,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;;gBAM/F,IAAI;oBACF,MAAM,MAAM,GAAG,2BAAW,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;oBACpD,MAAM,eAAe,GAAG,MAAM,iBAAO,CAAC;wBACpC,MAAM;wBACN,QAAQ,EAAE;4BACR,IAAI,EAAE,cAAI,CAAC,QAAQ;4BACnB,WAAW,EAAE;gCACX,gBAAgB,CAAC,SAAS;gCAC1B,GAAG,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,SAAS,CAAC;6BAC7C;yBACF;wBACD,SAAS,EAAE,IAAI;wBACf,cAAc,EAAE,cAAc,CAAC,OAAO,CAAC,SAAS;wBAEhD,aAAa,EAAE,4CAAoC;qBACpD,CAAC,CAAC;oBACH,IAAI,GAAG,eAAe,CAAC,IAAI,CAAC;oBAC5B,IAAI,MAAA,eAAe,CAAC,MAAM,0CAAE,MAAM,EAAE;wBAClC,MAAM,aAAa,GAAG,eAAe,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CACzD,6DAA6B,CAAC,MAAM,EAAE,KAAK,CAAC,CAC7C,CAAC;wBACF,MAAM,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC,CAAC;qBAC/B;iBACF;gBAAC,OAAO,KAAK,EAAE;oBACd,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAC,oBAAc,CAAC,KAAK,EAAE,CAAC,CAAC;oBAC9C,OAAO,EAAE,MAAM,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC;iBAC5B;wBACO;oBACN,IAAI,CAAC,GAAG,EAAE,CAAA;iBACX;gBACD,IAAG,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;oBACpB,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAC,oBAAc,CAAC,KAAK,EAAE,CAAC,CAAC;iBAC/C;gBACD,OAAO,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;YAC3D,CAAC,CAAC,CAAC;YAEH,IAAG,MAAM,CAAC,MAAM,EAAE;gBAChB,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAC,oBAAc,CAAC,KAAK,EAAE,CAAC,CAAC;aAC/C;YACD,OAAO,MAAM,CAAC;SACf;QACD,OAAO,GAAG,EAAE;YACV,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAC,oBAAc,CAAC,KAAK,EAAE,CAAC,CAAC;YAC9C,MAAM,GAAG,CAAC;SACX;gBACO;YACN,IAAI,CAAC,GAAG,EAAE,CAAC;SACZ;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AA5FD,4CA4FC;AAMD,KAAK,UAAU,WAAW,CACxB,OAAmC,EACnC,IAAc,EACd,OAAgC,EAChC,IAAkB,EAClB,aAAsB;IAEtB,IAAI,CAAC,OAAO,EAAE;QAOZ,OAAO,IAAI,iCAAK,CAAC,aAAa,EAAE,CAAC;KAClC;IAED,QAAQ,IAAI,CAAC,IAAI,EAAE;QACjB,KAAK,UAAU,CAAC,CAAC;YACf,MAAM,SAAS,GAAG,IAAI,iCAAK,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC;YACzD,KAAK,MAAM,SAAS,IAAI,IAAI,CAAC,KAAK,EAAE;gBAClC,MAAM,cAAc,GAAG,MAAM,WAAW,CACtC,OAAO,EACP,SAAS,EACT,OAAO,EACP,IAAI,EACJ,aAAa,CACd,CAAC;gBACF,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,cAAe,CAAC,CAAC;aACvC;YACD,OAAO,IAAI,iCAAK,CAAC,aAAa,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,CAAC;SACzD;QACD,KAAK,UAAU,CAAC,CAAC;YACf,MAAM,eAAe,GAAG,MAAM,OAAO,CAAC,GAAG,CACvC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,EAAC,SAAS,EAAC,EAAE,CAC/B,WAAW,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,aAAa,CAAC,CAC9D,CACF,CAAC;YACF,OAAO,IAAI,iCAAK,CAAC,aAAa,CAAC;gBAC7B,QAAQ,EAAE,IAAI,iCAAK,CAAC,aAAa,CAAC,YAAY,CAAC;oBAC7C,KAAK,EAAE,eAAe;iBACvB,CAAC;aACH,CAAC,CAAC;SACJ;QACD,KAAK,SAAS,CAAC,CAAC;YACd,OAAO,IAAI,iCAAK,CAAC,aAAa,CAAC;gBAC7B,OAAO,EAAE,IAAI,iCAAK,CAAC,aAAa,CAAC,WAAW,CAAC;oBAC3C,YAAY,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CACzB,EAAE,CAAC,EAAE,CACH,IAAI,iCAAK,CAAC,aAAa,CAAC,mBAAmB,CACzC,OAAO,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAC3D,CACJ;oBACD,IAAI,EAAE,MAAM,WAAW,CACrB,OAAO,EACP,IAAI,CAAC,IAAI,EACT,oBAAoB,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,EACxC,CAAC,GAAG,IAAI,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,EACvB,aAAa,CACd;iBACF,CAAC;aACH,CAAC,CAAC;SACJ;QACD,KAAK,OAAO,CAAC,CAAC;YACZ,MAAM,SAAS,GAAG,IAAI,iCAAK,CAAC,aAAa,CAAC,SAAS,CAAC;gBAClD,WAAW,EAAE,IAAI,CAAC,WAAW;aAE9B,CAAC,CAAC;YACH,IAAI;gBACF,MAAM,YAAY,CAChB,OAAO,EACP,IAAI,EACJ,OAAO,EACP,IAAI,EACJ,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CACjC,CAAC;aACH;YAAC,OAAO,KAAK,EAAE;gBACd,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;aAC5B;YACD,OAAO,IAAI,iCAAK,CAAC,aAAa,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;SACtD;KACF;AACH,CAAC;AAED,KAAK,UAAU,YAAY,CACzB,OAAmC,EACnC,KAAgB,EAChB,OAAqD,EACrD,KAAmB,EACnB,SAA+C;IAG/C,MAAM,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,MAAM,IAAI,OAAO,CAAC;IACxD,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IAEtD,OAAO,sBAAM,CAAC,eAAe,CAAC,sCAAsB,CAAC,KAAK,EAAE,EAAC,UAAU,EAAC,EAAC,OAAO,EAAC,KAAK,CAAC,WAAW,EAAC,EAAC,EAAE,KAAK,EAAC,IAAI,EAAC,EAAE;QACjH,IAAI;YACF,IAAI,CAAC,OAAO,EAAE;gBACZ,MAAM,IAAI,KAAK,CAAC,oCAAoC,KAAK,CAAC,WAAW,GAAG,CAAC,CAAC;aAC3E;YAED,IAAI,QAAqB,CAAC;YAC1B,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;gBAE1B,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,4BAAoB,CAAC,CAAC;aACjD;iBAAM;gBACL,QAAQ,GAAG,CAAC,OAAO,CAAC,CAAC;aACtB;YAED,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC;gBAAE,OAAO;YAEhC,IAAI,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YACpC,IAAI,KAAK,CAAC,cAAc,EAAE;gBACxB,KAAK,MAAM,YAAY,IAAI,KAAK,CAAC,cAAc,EAAE;oBAC/C,MAAM,iBAAiB,GAAG,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,SAAS,CAAC;oBACnE,IACI,iBAAiB;wBACjB,OAAO,iBAAiB,CAAC,YAAY,CAAC,KAAK,WAAW,EACxD;wBACA,SAAS,CAAC,YAAY,CAAC,GAAG,iBAAiB,CAAC,YAAY,CAAC,CAAC;qBAC3D;iBACF;aACF;YAED,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE;gBACnB,MAAM,uBAAuB,GAAG,MAAM,aAAa,CAC/C,OAAO,EACP,KAAK,CAAC,SAAS,EACf,SAAS,CACZ,CAAC;gBAEF,KAAK,MAAM,MAAM,IAAI,QAAQ,EAAE;oBAC7B,qBAAS,CAAC,MAAM,EAAE,uBAAuB,CAAC,CAAC;iBAC5C;aACF;iBAAM;gBACL,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC;gBAEhC,MAAM,eAAe,GAAgB,EAAE,CAAC;gBACxC,MAAM,sBAAsB,GAAa,EAAE,CAAC;gBAEhD,QAAQ,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;oBACjC,MAAM,cAAc,GAAG,mBAAmB,CACxC,OAAO,CAAC,gBAAgB,EACxB,MAAM,EACN,QAAQ,CACT,CAAC;oBACF,IAAI,cAAc,IAAI,cAAc,CAAC,8BAAoB,CAAC,IAAI,CAAC,EAAE;wBAC/D,eAAe,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;wBACrC,sBAAsB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;qBACpC;gBACH,CAAC,CAAC,CAAC;gBAIC,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC;oBAAE,OAAO;gBAEvC,IAAI,iBAAiB,IAAI,SAAS,EAAE;oBAClC,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;iBACnE;gBAED,MAAM,uBAAuB,GAAG,MAAM,aAAa,CAC/C,OAAO,EACP,KAAK,CAAC,SAAS,EACf,EAAC,GAAG,SAAS,EAAE,eAAe,EAAC,CAClC,CAAC;gBAEF,IAAI,CAAC,uBAAuB,EAAE;oBAC5B,OAAO;iBACR;gBAED,IACI,CAAC,CACG,uBAAuB,CAAC,SAAS;oBACjC,KAAK,CAAC,OAAO,CAAC,uBAAuB,CAAC,SAAS,CAAC,CACnD,EACH;oBACA,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;iBACzE;gBAED,MAAM,gBAAgB,GAAG,uBAAuB,CAAC,SAAS,CAAC;gBAE3D,IAAI,gBAAgB,CAAC,MAAM,KAAK,eAAe,CAAC,MAAM,EAAE;oBACtD,MAAM,IAAI,KAAK,CACX,wCAAwC,eAAe,CAAC,MAAM,WAAW,CAC5E,CAAC;iBACH;gBAED,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;oBACxC,qBAAS,CAAC,QAAQ,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC;iBACrE;aACF;SACF;QACD,OAAO,GAAG,EAAE;YACV,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAC,oBAAc,CAAC,KAAK,EAAE,CAAC,CAAC;YAC9C,MAAM,GAAG,CAAC;SACX;gBAED;YACE,IAAI,CAAC,GAAG,EAAE,CAAC;SACZ;IACH,CAAC,CAAC,CAAC;IACH,KAAK,UAAU,aAAa,CAC1B,OAAmC,EACnC,MAAc,EACd,SAA8B;;QAI9B,IAAI,IAAS,CAAC;QAKd,IAAI,SAAS,EAAE;YACb,IAAI,GAAG;gBACL,OAAO,EAAE,IAAI,2BAAO,CAAC,EAAE,iCAAiC,EAAE,MAAM,EAAE,CAAC;aACpE,CAAC;YACF,IACE,OAAO,CAAC,cAAc,CAAC,OAAO;gBAC9B,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,WAAW,EAC1C;gBACA,SAAS,CAAC,cAAc,GAAG,qBAAqB,CAC9C,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,WAAW,CAAC,CAC3D,CAAC;aACH;YACD,SAAS,CAAC,QAAQ,GAAG,oBAAoB,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;SACvD;QAED,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC;YACrC,IAAI,EAAE,oCAA4B,CAAC,kBAAkB;YACrD,OAAO,EAAE;gBACP,KAAK,EAAE,MAAM;gBACb,SAAS;gBACT,IAAI;aACL;YACD,sBAAsB,EAAE,OAAO,CAAC,cAAc;YAC9C,OAAO,EAAE,OAAO,CAAC,cAAc,CAAC,OAAO;SACxC,CAAC,CAAC;QAEH,IAAI,QAAQ,CAAC,MAAM,EAAE;YACnB,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAC3C,sBAAsB,CAAC,KAAK,EAAE,KAAK,CAAC,WAAW,CAAC,CACjD,CAAC;YACF,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,CAAC;SAChC;QAID,IAAI,SAAS,EAAE;YACb,SAAS,CAAC,YAAY,GAAG,oBAAoB,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;YAE1D,IAAI,QAAQ,CAAC,UAAU,IAAI,QAAQ,CAAC,UAAU,CAAC,IAAI,EAAE;gBACnD,MAAM,WAAW,GAAG,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC;gBAE7C,IAAI,WAA+B,CAAC;gBACpC,IAAI,kBAAkB,GAAG,KAAK,CAAC;gBAC/B,IAAI;oBAGF,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;iBAClD;gBAAC,OAAO,GAAG,EAAE;oBACZ,MAAM,CAAC,KAAK,CACV,kDAAkD,KAAK,CAAC,WAAW,KAAK,GAAG,EAAE,CAC9E,CAAC;oBACF,kBAAkB,GAAG,IAAI,CAAC;iBAC3B;gBAED,IAAI,WAAW,EAAE;oBACf,IAAI;wBACF,MAAM,KAAK,GAAG,iCAAK,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;wBACxC,SAAS,CAAC,KAAK,GAAG,KAAK,CAAC;qBACzB;oBAAC,OAAO,GAAG,EAAE;wBACZ,MAAM,CAAC,KAAK,CACV,oDAAoD,KAAK,CAAC,WAAW,KAAK,GAAG,EAAE,CAChF,CAAC;wBACF,kBAAkB,GAAG,IAAI,CAAC;qBAC3B;iBACF;gBACD,IAAI,SAAS,CAAC,KAAK,EAAE;oBAKnB,MAAM,YAAY,GAChB,2CAA8B,CAC5B,OAAO,CAAC,gBAAgB,CAAC,SAAS,CAAC,SAAS,CAC7C,CAAC;oBACJ,MAAA,MAAA,SAAS,CAAC,KAAK,CAAC,IAAI,0CAAE,KAAK,0CAAE,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;wBAC7C,KAAK,CAAC,UAAU,GAAG,YAAY,CAAC;oBAClC,CAAC,CAAC,CAAC;iBACJ;gBACD,SAAS,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;aACnD;SACF;QAED,OAAO,QAAQ,CAAC,IAAI,CAAC;IACvB,CAAC;AACH,CAAC;AAOD,SAAS,mBAAmB,CAC1B,gBAAkC,EAClC,MAAkC,EAClC,UAAoC;IAKpC,IAAI,MAAM,KAAK,IAAI,EAAE;QACnB,OAAO,IAAI,CAAC;KACb;IAED,MAAM,MAAM,GAAwB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAExD,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE;QAClC,QAAQ,SAAS,CAAC,IAAI,EAAE;YACtB,KAAK,cAAI,CAAC,KAAK;gBACb,MAAM,YAAY,GAAG,+BAAe,CAAC,SAA+B,CAAC,CAAC;gBACtE,MAAM,UAAU,GAAI,SAAgC,CAAC,UAAU,CAAC;gBAEhE,IAAI,OAAO,MAAM,CAAC,YAAY,CAAC,KAAK,WAAW,EAAE;oBAC/C,MAAM,IAAI,KAAK,CAAC,UAAU,YAAY,8BAA8B,CAAC,CAAC;iBACvE;gBACD,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,EAAE;oBACvC,MAAM,CAAC,YAAY,CAAC,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,CAAC,KAAU,EAAE,EAAE,CAC7D,UAAU;wBACR,CAAC,CAAC,mBAAmB,CAAC,gBAAgB,EAAE,KAAK,EAAE,UAAU,CAAC;wBAC1D,CAAC,CAAC,KAAK,CACV,CAAC;iBACH;qBAAM,IAAI,UAAU,EAAE;oBACrB,MAAM,CAAC,YAAY,CAAC,GAAG,mBAAmB,CACxC,gBAAgB,EAChB,MAAM,CAAC,YAAY,CAAC,EACpB,UAAU,CACX,CAAC;iBACH;qBAAM;oBACL,MAAM,CAAC,YAAY,CAAC,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC;iBAC7C;gBACD,MAAM;YACR,KAAK,cAAI,CAAC,eAAe;gBACvB,IAAI,CAAC,SAAS,CAAC,aAAa;oBAAE,SAAS;gBAEvC,MAAM,QAAQ,GAAG,MAAM,IAAI,MAAM,CAAC,YAAY,CAAC,CAAC;gBAChD,IAAI,CAAC,QAAQ;oBAAE,SAAS;gBAExB,IAAI,sBAAsB,CAAC,gBAAgB,CAAC,MAAM,EAAE,SAAS,CAAC,aAAa,EAAE,QAAQ,CAAC,EAAE;oBACtF,qBAAS,CACP,MAAM,EACN,mBAAmB,CAAC,gBAAgB,EAAE,MAAM,EAAE,SAAS,CAAC,UAAU,CAAC,CACpE,CAAC;iBACH;gBACD,MAAM;SACT;KACF;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,sBAAsB,CAC7B,MAAqB,EACrB,aAAqB,EACrB,QAAgB;IAEhB,IAAI,aAAa,KAAK,QAAQ,EAAE;QAC9B,OAAO,IAAI,CAAC;KACb;IAED,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACtC,IAAI,CAAC,IAAI,EAAE;QACT,OAAO,KAAK,CAAC;KACd;IAED,MAAM,eAAe,GAAG,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;IACtD,IAAI,CAAC,eAAe,EAAE;QACpB,OAAO,KAAK,CAAC;KACd;IAED,IAAI,wBAAc,CAAC,eAAe,CAAC,EAAE;QACnC,OAAO,MAAM,CAAC,SAAS,CAAC,eAAe,EAAE,IAAI,CAAC,CAAC;KAChD;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,oBAAoB,CAAC,KAAU,EAAE,IAAkB;IAC1D,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IACpC,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IAExD,MAAM,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;IAChC,IAAI,OAAO,KAAK,GAAG,EAAE;QACnB,OAAO,KAAK,CAAC,OAAO,CAAC,CAAC,OAAY,EAAE,EAAE,CAAC,oBAAoB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;KAC7E;SAAM;QACL,OAAO,oBAAoB,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,CAAC;KACnD;AACH,CAAC;AAED,SAAS,sBAAsB,CAC7B,aAAoC,EACpC,WAAmB;IAEnB,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,aAAa,CAAC;IAE5C,IAAI,CAAC,OAAO,EAAE;QACZ,OAAO,GAAG,+CAA+C,WAAW,GAAG,CAAC;KACzE;IACD,UAAU,GAAG;QACX,IAAI,EAAE,0BAA0B;QAGhC,WAAW;QACX,GAAG,UAAU;KACd,CAAC;IACF,OAAO,IAAI,sBAAY,CACrB,OAAO,EACP,SAAS,EACT,SAAS,EACT,SAAS,EACT,SAAS,EACT,aAAsB,EACtB,UAAU,CACX,CAAC;AACJ,CAAC;AAEM,MAAM,oCAAoC,GAG7C,UAAS,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI;IAE3C,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,OAAO,MAAM,KAAK,UAAU,EAAE;QAG9D,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACvC,IAAI,OAAO,QAAQ,KAAK,UAAU,EAAE;YAClC,OAAO,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,YAAY,EAAE,IAAI,CAAC,CAAC;SACzD;QACD,OAAO,QAAQ,CAAC;KACjB;AACH,CAAC,CAAC;AAdW,QAAA,oCAAoC,wCAc/C;AAgBF,SAAS,qBAAqB,CAAC,MAAwB;IACrD,OAAO,MAAM,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;AACrC,CAAC;AAGD,SAAS,oBAAoB,CAAC,IAAU;IACtC,MAAM,WAAW,GAAG,CAAC,IAAI,CAAC;IAC1B,MAAM,MAAM,GAAG,WAAW,GAAG,IAAI,CAAC;IAClC,OAAO,IAAI,kCAAM,CAAC,QAAQ,CAAC,SAAS,CAAC;QACnC,OAAO,EAAE,CAAC,WAAW,GAAG,MAAM,CAAC,GAAG,IAAI;QACtC,KAAK,EAAE,MAAM,GAAG,GAAG;KACpB,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"executeQueryPlan.js","sourceRoot":"","sources":["../src/executeQueryPlan.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@apollo/gateway",
3
- "version": "0.37.0",
3
+ "version": "0.38.2",
4
4
  "description": "Apollo Gateway",
5
5
  "author": "Apollo <opensource@apollographql.com>",
6
6
  "main": "dist/index.js",
@@ -25,8 +25,8 @@
25
25
  "access": "public"
26
26
  },
27
27
  "dependencies": {
28
- "@apollo/federation": "^0.28.0",
29
- "@apollo/query-planner": "^0.3.1",
28
+ "@apollo/federation": "^0.29.1",
29
+ "@apollo/query-planner": "^0.3.2",
30
30
  "@opentelemetry/api": "^1.0.1",
31
31
  "@types/node-fetch": "2.5.12",
32
32
  "apollo-graphql": "^0.9.3",
@@ -43,5 +43,5 @@
43
43
  "peerDependencies": {
44
44
  "graphql": "^15.4.0"
45
45
  },
46
- "gitHead": "6ec867adbef43a92302bc18e954206e17f7a3671"
46
+ "gitHead": "5cfa83859e884cc78c9c619d722f403af47536e1"
47
47
  }
@@ -91,7 +91,7 @@ export type Query = {
91
91
  export type QueryRouterConfigArgs = {
92
92
  ref: Scalars['String'];
93
93
  apiKey: Scalars['String'];
94
- supportedSpecURLs?: Array<Scalars['String']>;
94
+ ifAfterId?: Maybe<Scalars['ID']>;
95
95
  };
96
96
 
97
97
  export type Request = {
@@ -106,7 +106,7 @@ export type Response = {
106
106
  body?: Maybe<Scalars['String']>;
107
107
  };
108
108
 
109
- export type RouterConfigResponse = RouterConfigResult | FetchError;
109
+ export type RouterConfigResponse = RouterConfigResult | Unchanged | FetchError;
110
110
 
111
111
  export type RouterConfigResult = {
112
112
  __typename?: 'RouterConfigResult';
@@ -118,13 +118,18 @@ export type RouterConfigResult = {
118
118
  };
119
119
 
120
120
 
121
+ export type Unchanged = {
122
+ __typename?: 'Unchanged';
123
+ id: Scalars['ID'];
124
+ };
125
+
121
126
  export type SupergraphSdlQueryVariables = Exact<{
122
127
  apiKey: Scalars['String'];
123
128
  ref: Scalars['String'];
124
129
  }>;
125
130
 
126
131
 
127
- export type SupergraphSdlQuery = { __typename?: 'Query', routerConfig: { __typename: 'RouterConfigResult', id: string, supergraphSdl: string } | { __typename: 'FetchError', code: FetchErrorCode, message: string } };
132
+ export type SupergraphSdlQuery = { __typename?: 'Query', routerConfig: { __typename: 'RouterConfigResult', id: string, supergraphSdl: string } | { __typename: 'Unchanged' } | { __typename: 'FetchError', code: FetchErrorCode, message: string } };
128
133
 
129
134
  export type OobReportMutationVariables = Exact<{
130
135
  input?: Maybe<ApiMonitoringReport>;
@@ -1322,6 +1322,23 @@ describe('executeQueryPlan', () => {
1322
1322
  `);
1323
1323
  });
1324
1324
 
1325
+ // THIS TEST SHOULD BE MODIFIED AFTER THE ISSUE OUTLINED IN
1326
+ // https://github.com/apollographql/federation/issues/981 HAS BEEN RESOLVED.
1327
+ // IT IS BEING LEFT HERE AS A TEST THAT WILL INTENTIONALLY FAIL WHEN
1328
+ // IT IS RESOLVED IF IT'S NOT ADDRESSED.
1329
+ //
1330
+ // This test became relevant after a combination of two things:
1331
+ // 1. when the gateway started surfacing errors from subgraphs happened in
1332
+ // https://github.com/apollographql/federation/pull/159
1333
+ // 2. the idea of field redaction became necessary after
1334
+ // https://github.com/apollographql/federation/pull/893,
1335
+ // which introduced the notion of inaccessible fields.
1336
+ // The redaction started in
1337
+ // https://github.com/apollographql/federation/issues/974, which added
1338
+ // the following test.
1339
+ //
1340
+ // However, the error surfacing (first, above) needed to be reverted, thus
1341
+ // de-necessitating this redaction logic which is no longer tested.
1325
1342
  it(`doesn't leak @inaccessible typenames in error messages`, async () => {
1326
1343
  const operationString = `#graphql
1327
1344
  query {
@@ -1353,11 +1370,13 @@ describe('executeQueryPlan', () => {
1353
1370
  );
1354
1371
 
1355
1372
  expect(response.data?.vehicle).toEqual(null);
1356
- expect(response.errors).toMatchInlineSnapshot(`
1357
- Array [
1358
- [GraphQLError: Abstract type "Vehicle" was resolve to a type [inaccessible type] that does not exist inside schema.],
1359
- ]
1360
- `);
1373
+ expect(response.errors).toBeUndefined();
1374
+ // SEE COMMENT ABOVE THIS TEST. SHOULD BE RE-ENABLED AFTER #981 IS FIXED!
1375
+ // expect(response.errors).toMatchInlineSnapshot(`
1376
+ // Array [
1377
+ // [GraphQLError: Abstract type "Vehicle" was resolve to a type [inaccessible type] that does not exist inside schema.],
1378
+ // ]
1379
+ // `);
1361
1380
  });
1362
1381
  });
1363
1382
  });
@@ -6,7 +6,7 @@ import {
6
6
  import { GraphQLRequest, GraphQLExecutionResult, Logger } from 'apollo-server-types';
7
7
  import {
8
8
  composeAndValidate,
9
- buildFederatedSchema,
9
+ buildSubgraphSchema,
10
10
  ServiceDefinition,
11
11
  compositionHasErrors,
12
12
  } from '@apollo/federation';
@@ -49,7 +49,7 @@ export async function execute(
49
49
  return [
50
50
  name,
51
51
  new LocalGraphQLDataSource(
52
- buildFederatedSchema([{ typeDefs, resolvers }]),
52
+ buildSubgraphSchema([{ typeDefs, resolvers }]),
53
53
  ),
54
54
  ] as [string, LocalGraphQLDataSource];
55
55
  }),
@@ -81,7 +81,7 @@ export async function execute(
81
81
  }
82
82
 
83
83
  export function buildLocalService(modules: GraphQLSchemaModule[]) {
84
- const schema = buildFederatedSchema(modules);
84
+ const schema = buildSubgraphSchema(modules);
85
85
  return new LocalGraphQLDataSource(schema);
86
86
  }
87
87
 
@@ -4,7 +4,7 @@ import {fixtures, spanSerializer} from 'apollo-federation-integration-testsuite'
4
4
  import {fetch} from '../../__mocks__/apollo-server-env';
5
5
  import {InMemorySpanExporter, SimpleSpanProcessor} from '@opentelemetry/tracing'
6
6
  import {NodeTracerProvider} from '@opentelemetry/node';
7
- import { buildFederatedSchema } from '@apollo/federation';
7
+ import { buildSubgraphSchema } from '@apollo/federation';
8
8
 
9
9
  expect.addSnapshotSerializer(spanSerializer);
10
10
 
@@ -40,7 +40,7 @@ describe('opentelemetry', () => {
40
40
  localServiceList: fixtures,
41
41
  buildService: service => {
42
42
  // @ts-ignore
43
- return new LocalGraphQLDataSource(buildFederatedSchema([service]));
43
+ return new LocalGraphQLDataSource(buildSubgraphSchema([service]));
44
44
  },
45
45
  });
46
46
 
@@ -1,6 +1,6 @@
1
1
  import gql from 'graphql-tag';
2
2
  import { ApolloServerBase as ApolloServer } from 'apollo-server-core';
3
- import { buildFederatedSchema } from '@apollo/federation';
3
+ import { buildSubgraphSchema } from '@apollo/federation';
4
4
 
5
5
  import { LocalGraphQLDataSource } from '../../datasources/LocalGraphQLDataSource';
6
6
  import { ApolloGateway } from '../../';
@@ -13,7 +13,7 @@ it('caches the query plan for a request', async () => {
13
13
  localServiceList: fixtures,
14
14
  buildService: service => {
15
15
  // @ts-ignore
16
- return new LocalGraphQLDataSource(buildFederatedSchema([service]));
16
+ return new LocalGraphQLDataSource(buildSubgraphSchema([service]));
17
17
  },
18
18
  });
19
19
 
@@ -69,7 +69,7 @@ it('supports multiple operations and operationName', async () => {
69
69
  localServiceList: fixtures,
70
70
  buildService: service => {
71
71
  // @ts-ignore
72
- return new LocalGraphQLDataSource(buildFederatedSchema([service]));
72
+ return new LocalGraphQLDataSource(buildSubgraphSchema([service]));
73
73
  },
74
74
  });
75
75
 
@@ -174,7 +174,7 @@ it('does not corrupt cached queryplan data across requests', async () => {
174
174
  localServiceList: [serviceA, serviceB],
175
175
  buildService: service => {
176
176
  // @ts-ignore
177
- return new LocalGraphQLDataSource(buildFederatedSchema([service]));
177
+ return new LocalGraphQLDataSource(buildSubgraphSchema([service]));
178
178
  },
179
179
  });
180
180
 
@@ -2,7 +2,7 @@ import { gunzipSync } from 'zlib';
2
2
  import nock from 'nock';
3
3
  import { GraphQLSchemaModule } from 'apollo-graphql';
4
4
  import gql from 'graphql-tag';
5
- import { buildFederatedSchema } from '@apollo/federation';
5
+ import { buildSubgraphSchema } from '@apollo/federation';
6
6
  import { ApolloServer } from 'apollo-server';
7
7
  import { ApolloServerPluginUsageReporting } from 'apollo-server-core';
8
8
  import { execute, toPromise } from 'apollo-link';
@@ -78,7 +78,7 @@ expect.addSnapshotSerializer(
78
78
  );
79
79
 
80
80
  async function startFederatedServer(modules: GraphQLSchemaModule[]) {
81
- const schema = buildFederatedSchema(modules);
81
+ const schema = buildSubgraphSchema(modules);
82
82
  const server = new ApolloServer({ schema });
83
83
  const { url } = await server.listen({ port: 0 });
84
84
  return { url, server };
@@ -1,6 +1,6 @@
1
1
  import { execute } from '../execution-utils';
2
2
  import { ApolloServerBase as ApolloServer } from 'apollo-server-core';
3
- import { buildFederatedSchema } from '@apollo/federation';
3
+ import { buildSubgraphSchema } from '@apollo/federation';
4
4
  import { LocalGraphQLDataSource } from '../../datasources/LocalGraphQLDataSource';
5
5
  import { ApolloGateway } from '../../';
6
6
  import { fixtures } from 'apollo-federation-integration-testsuite';
@@ -145,7 +145,7 @@ it('supports aliases when using ApolloServer', async () => {
145
145
  localServiceList: fixtures,
146
146
  buildService: service => {
147
147
  // @ts-ignore
148
- return new LocalGraphQLDataSource(buildFederatedSchema([service]));
148
+ return new LocalGraphQLDataSource(buildSubgraphSchema([service]));
149
149
  },
150
150
  });
151
151
 
@@ -56,11 +56,13 @@ describe('loadSupergraphSdlFromStorage', () => {
56
56
 
57
57
  directive @stream on FIELD
58
58
 
59
- directive @tag(name: String!) repeatable on FIELD_DEFINITION
59
+ directive @tag(name: String!) repeatable on FIELD_DEFINITION | INTERFACE | OBJECT | UNION
60
60
 
61
61
  directive @transform(from: String!) on FIELD
62
62
 
63
- union AccountType = PasswordAccount | SMSAccount
63
+ union AccountType
64
+ @tag(name: \\"from-accounts\\")
65
+ = PasswordAccount | SMSAccount
64
66
 
65
67
  type Amazon {
66
68
  referrer: String
@@ -197,7 +199,9 @@ describe('loadSupergraphSdlFromStorage', () => {
197
199
  email: String! @join__field(graph: ACCOUNTS)
198
200
  }
199
201
 
200
- interface Product {
202
+ interface Product
203
+ @tag(name: \\"from-reviews\\")
204
+ {
201
205
  details: ProductDetails
202
206
  inStock: Boolean
203
207
  name: String
@@ -277,12 +281,14 @@ describe('loadSupergraphSdlFromStorage', () => {
277
281
  @join__type(graph: INVENTORY, key: \\"id\\")
278
282
  @join__type(graph: PRODUCT, key: \\"id\\")
279
283
  @join__type(graph: REVIEWS, key: \\"id\\")
284
+ @tag(name: \\"from-accounts\\")
285
+ @tag(name: \\"from-reviews\\")
280
286
  {
281
287
  account: AccountType @join__field(graph: ACCOUNTS)
282
288
  birthDate(locale: String): String @join__field(graph: ACCOUNTS) @tag(name: \\"admin\\") @tag(name: \\"dev\\")
283
289
  goodAddress: Boolean @join__field(graph: REVIEWS, requires: \\"metadata{address}\\")
284
290
  goodDescription: Boolean @join__field(graph: INVENTORY, requires: \\"metadata{description}\\")
285
- id: ID! @join__field(graph: ACCOUNTS) @tag(name: \\"accounts\\") @tag(name: \\"on external\\")
291
+ id: ID! @join__field(graph: ACCOUNTS) @tag(name: \\"accounts\\") @tag(name: \\"on-external\\")
286
292
  metadata: [UserMetadata] @join__field(graph: ACCOUNTS)
287
293
  name: Name @join__field(graph: ACCOUNTS)
288
294
  numberOfReviews: Int! @join__field(graph: REVIEWS)
@@ -1,5 +1,5 @@
1
1
  import { LocalGraphQLDataSource } from '../LocalGraphQLDataSource';
2
- import { buildFederatedSchema } from '@apollo/federation';
2
+ import { buildSubgraphSchema } from '@apollo/federation';
3
3
  import gql from 'graphql-tag';
4
4
  import { GraphQLResolverMap } from 'apollo-graphql';
5
5
  import { GraphQLRequestContext } from 'apollo-server-types';
@@ -31,7 +31,7 @@ describe('constructing requests', () => {
31
31
  },
32
32
  },
33
33
  };
34
- const schema = buildFederatedSchema([{ typeDefs, resolvers }]);
34
+ const schema = buildSubgraphSchema([{ typeDefs, resolvers }]);
35
35
 
36
36
  const DataSource = new LocalGraphQLDataSource(schema);
37
37
 
@@ -31,7 +31,6 @@ import { deepMerge } from './utilities/deepMerge';
31
31
  import { isNotNullOrUndefined } from './utilities/array';
32
32
  import { SpanStatusCode } from "@opentelemetry/api";
33
33
  import { OpenTelemetrySpanNames, tracer } from "./utilities/opentelemetry";
34
- import { cleanErrorOfInaccessibleNames } from './utilities/cleanErrorOfInaccessibleNames';
35
34
 
36
35
  export type ServiceMap = {
37
36
  [serviceName: string]: GraphQLDataSource;
@@ -53,6 +52,9 @@ export async function executeQueryPlan<TContext>(
53
52
  requestContext: GraphQLRequestContext<TContext>,
54
53
  operationContext: OperationContext,
55
54
  ): Promise<GraphQLExecutionResult> {
55
+
56
+ const logger = requestContext.logger || console;
57
+
56
58
  return tracer.startActiveSpan(OpenTelemetrySpanNames.EXECUTE, async span => {
57
59
  try {
58
60
  const errors: GraphQLError[] = [];
@@ -92,7 +94,7 @@ export async function executeQueryPlan<TContext>(
92
94
  // It is also used to allow execution of introspection queries though.
93
95
  try {
94
96
  const schema = toAPISchema(operationContext.schema);
95
- const executionResult = await execute({
97
+ ({ data } = await execute({
96
98
  schema,
97
99
  document: {
98
100
  kind: Kind.DOCUMENT,
@@ -105,17 +107,38 @@ export async function executeQueryPlan<TContext>(
105
107
  variableValues: requestContext.request.variables,
106
108
  // See also `wrapSchemaWithAliasResolver` in `gateway-js/src/index.ts`.
107
109
  fieldResolver: defaultFieldResolverWithAliasSupport,
108
- });
109
- data = executionResult.data;
110
- if (executionResult.errors?.length) {
111
- const cleanedErrors = executionResult.errors.map((error) =>
112
- cleanErrorOfInaccessibleNames(schema, error),
113
- );
114
- errors.push(...cleanedErrors);
115
- }
110
+ }));
116
111
  } catch (error) {
117
112
  span.setStatus({ code:SpanStatusCode.ERROR });
118
- return { errors: [error] };
113
+ if (error instanceof GraphQLError) {
114
+ return { errors: [error] };
115
+ } else if (error instanceof Error) {
116
+ return {
117
+ errors: [
118
+ new GraphQLError(
119
+ error.message,
120
+ undefined,
121
+ undefined,
122
+ undefined,
123
+ undefined,
124
+ error as Error,
125
+ )
126
+ ]
127
+ };
128
+ } else {
129
+ // The above cases should cover the known cases, but if we received
130
+ // something else in the `catch` — like an object or something, we
131
+ // may not want to merely return this to the client.
132
+ logger.error(
133
+ "Unexpected error during query plan execution: " + error);
134
+ return {
135
+ errors: [
136
+ new GraphQLError(
137
+ "Unexpected error during query plan execution",
138
+ )
139
+ ]
140
+ };
141
+ }
119
142
  }
120
143
  finally {
121
144
  span.end()