@graphitation/supermassive 3.18.1-canary.3 → 4.0.1

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
@@ -1,9 +1,41 @@
1
1
  # Change Log - @graphitation/supermassive
2
2
 
3
- <!-- This log was last generated on Wed, 15 Apr 2026 15:45:05 GMT and should not be manually modified. -->
3
+ <!-- This log was last generated on Mon, 10 Aug 2026 13:59:04 GMT and should not be manually modified. -->
4
4
 
5
5
  <!-- Start content -->
6
6
 
7
+ ## 4.0.1
8
+
9
+ Mon, 10 Aug 2026 13:59:04 GMT
10
+
11
+ ### Patches
12
+
13
+ - chore: export incremental types (dsamsonov@microsoft.com)
14
+
15
+ ## 4.0.0
16
+
17
+ Thu, 30 Jul 2026 12:02:56 GMT
18
+
19
+ ### Major changes
20
+
21
+ - Remove enableDeferredMerge execution option (dsamsonov@microsoft.com)
22
+
23
+ ## 3.18.0
24
+
25
+ Thu, 16 Jul 2026 09:12:46 GMT
26
+
27
+ ### Minor changes
28
+
29
+ - early execution and merge (pavelglac@microsoft.com)
30
+
31
+ ## 3.17.1
32
+
33
+ Tue, 14 Jul 2026 09:11:43 GMT
34
+
35
+ ### Patches
36
+
37
+ - yarn upgrade (pavelglac@gmail.com)
38
+
7
39
  ## 3.17.0
8
40
 
9
41
  Wed, 15 Apr 2026 15:45:05 GMT
package/README.md CHANGED
@@ -63,6 +63,15 @@ However, APIs and response format _will_ change, expect breaking changes.
63
63
  > Note: see [this discussion](https://github.com/graphql/defer-stream-wg) of the new response format in the
64
64
  > defer and stream working group
65
65
 
66
+ #### Incremental delivery flags
67
+
68
+ The following optional execution arguments tune how deferred/streamed payloads are executed and delivered.
69
+
70
+ - **`enableEarlyExecution`** (`boolean`, default `false`) — When enabled, deferred fragments (`@defer`
71
+ patches) start executing immediately alongside the main selection set, instead of only after the initial
72
+ result has been resolved. This can reduce the overall latency of incremental payloads at the cost of doing
73
+ more work up front.
74
+
66
75
  ### Possible future - pre-normalized executor
67
76
 
68
77
  In a scenario where executor is running close to the client (sometimes even in same process or at least in same browser), it might be worth exploring removing some of the requirements imposed by the usual GraphQL transport - for example serialization. Not only GraphQL executors do the JSON serialization, but also they return the data that is optimized for transport and that matches the query tree. This means clients need to perform often expensive normazilation. As traffic and message size might be less important in same process / same browser scenarios, it might be worthwhile exploring return pre-normalized data from supermassive. This offers massive speedups for some clients like Apollo ([see benchmarks](https://github.com/vladar/graphql-normalized)).
@@ -1,4 +1,4 @@
1
1
  import { PromiseOrValue } from "./jsutils/PromiseOrValue";
2
2
  import { ExecutionResult, ExecutionWithSchemaArgs } from "./types";
3
- export declare function executeWithSchema({ document, definitions, resolvers, rootValue, contextValue, variableValues, operationName, fieldResolver, typeResolver, fieldExecutionHooks, enablePerEventContext, enableEarlyExecution, enableDeferredMerge, enableIncrementalPayloadBatching, }: ExecutionWithSchemaArgs): PromiseOrValue<ExecutionResult>;
3
+ export declare function executeWithSchema({ document, definitions, resolvers, rootValue, contextValue, variableValues, operationName, fieldResolver, typeResolver, fieldExecutionHooks, enablePerEventContext, enableEarlyExecution, }: ExecutionWithSchemaArgs): PromiseOrValue<ExecutionResult>;
4
4
  //# sourceMappingURL=executeWithSchema.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"executeWithSchema.d.ts","sourceRoot":"","sources":["../src/executeWithSchema.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,uBAAuB,EAAE,MAAM,SAAS,CAAC;AAGnE,wBAAgB,iBAAiB,CAAC,EAChC,QAAQ,EACR,WAAW,EACX,SAAS,EACT,SAAS,EACT,YAAY,EACZ,cAAc,EACd,aAAa,EACb,aAAa,EACb,YAAY,EACZ,mBAAmB,EACnB,qBAAqB,EACrB,oBAAoB,EACpB,mBAAmB,EACnB,gCAAgC,GACjC,EAAE,uBAAuB,GAAG,cAAc,CAAC,eAAe,CAAC,CAwB3D"}
1
+ {"version":3,"file":"executeWithSchema.d.ts","sourceRoot":"","sources":["../src/executeWithSchema.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,uBAAuB,EAAE,MAAM,SAAS,CAAC;AAGnE,wBAAgB,iBAAiB,CAAC,EAChC,QAAQ,EACR,WAAW,EACX,SAAS,EACT,SAAS,EACT,YAAY,EACZ,cAAc,EACd,aAAa,EACb,aAAa,EACb,YAAY,EACZ,mBAAmB,EACnB,qBAAqB,EACrB,oBAAoB,GACrB,EAAE,uBAAuB,GAAG,cAAc,CAAC,eAAe,CAAC,CAsB3D"}
@@ -36,9 +36,7 @@ function executeWithSchema({
36
36
  typeResolver,
37
37
  fieldExecutionHooks,
38
38
  enablePerEventContext,
39
- enableEarlyExecution,
40
- enableDeferredMerge,
41
- enableIncrementalPayloadBatching
39
+ enableEarlyExecution
42
40
  }) {
43
41
  const extracted = (0, import_extractMinimalViableSchemaForRequestDocument.extractMinimalViableSchemaForRequestDocument)(
44
42
  (0, import_graphql.buildASTSchema)(definitions),
@@ -59,8 +57,6 @@ function executeWithSchema({
59
57
  typeResolver,
60
58
  fieldExecutionHooks,
61
59
  enablePerEventContext,
62
- enableEarlyExecution,
63
- enableDeferredMerge,
64
- enableIncrementalPayloadBatching
60
+ enableEarlyExecution
65
61
  });
66
62
  }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../src/executeWithSchema.ts"],
4
- "sourcesContent": ["import { buildASTSchema } from \"graphql\";\nimport { executeWithoutSchema } from \"./index\";\nimport { PromiseOrValue } from \"./jsutils/PromiseOrValue\";\nimport { ExecutionResult, ExecutionWithSchemaArgs } from \"./types\";\nimport { extractMinimalViableSchemaForRequestDocument } from \"./utilities/extractMinimalViableSchemaForRequestDocument\";\n\nexport function executeWithSchema({\n document,\n definitions,\n resolvers,\n rootValue,\n contextValue,\n variableValues,\n operationName,\n fieldResolver,\n typeResolver,\n fieldExecutionHooks,\n enablePerEventContext,\n enableEarlyExecution,\n enableDeferredMerge,\n enableIncrementalPayloadBatching,\n}: ExecutionWithSchemaArgs): PromiseOrValue<ExecutionResult> {\n const extracted = extractMinimalViableSchemaForRequestDocument(\n buildASTSchema(definitions),\n document,\n );\n return executeWithoutSchema({\n document,\n schemaFragment: {\n schemaId: \"executeWithSchema\",\n definitions: extracted.definitions,\n resolvers,\n },\n rootValue,\n contextValue,\n variableValues,\n operationName,\n fieldResolver,\n typeResolver,\n fieldExecutionHooks,\n enablePerEventContext,\n enableEarlyExecution,\n enableDeferredMerge,\n enableIncrementalPayloadBatching,\n });\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,qBAA+B;AAC/B,mBAAqC;AAGrC,0DAA6D;AAEtD,SAAS,kBAAkB;AAAA,EAChC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAA6D;AAC3D,QAAM,gBAAY;AAAA,QAChB,+BAAe,WAAW;AAAA,IAC1B;AAAA,EACF;AACA,aAAO,mCAAqB;AAAA,IAC1B;AAAA,IACA,gBAAgB;AAAA,MACd,UAAU;AAAA,MACV,aAAa,UAAU;AAAA,MACvB;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,CAAC;AACH;",
4
+ "sourcesContent": ["import { buildASTSchema } from \"graphql\";\nimport { executeWithoutSchema } from \"./index\";\nimport { PromiseOrValue } from \"./jsutils/PromiseOrValue\";\nimport { ExecutionResult, ExecutionWithSchemaArgs } from \"./types\";\nimport { extractMinimalViableSchemaForRequestDocument } from \"./utilities/extractMinimalViableSchemaForRequestDocument\";\n\nexport function executeWithSchema({\n document,\n definitions,\n resolvers,\n rootValue,\n contextValue,\n variableValues,\n operationName,\n fieldResolver,\n typeResolver,\n fieldExecutionHooks,\n enablePerEventContext,\n enableEarlyExecution,\n}: ExecutionWithSchemaArgs): PromiseOrValue<ExecutionResult> {\n const extracted = extractMinimalViableSchemaForRequestDocument(\n buildASTSchema(definitions),\n document,\n );\n return executeWithoutSchema({\n document,\n schemaFragment: {\n schemaId: \"executeWithSchema\",\n definitions: extracted.definitions,\n resolvers,\n },\n rootValue,\n contextValue,\n variableValues,\n operationName,\n fieldResolver,\n typeResolver,\n fieldExecutionHooks,\n enablePerEventContext,\n enableEarlyExecution,\n });\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,qBAA+B;AAC/B,mBAAqC;AAGrC,0DAA6D;AAEtD,SAAS,kBAAkB;AAAA,EAChC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAA6D;AAC3D,QAAM,gBAAY;AAAA,QAChB,+BAAe,WAAW;AAAA,IAC1B;AAAA,EACF;AACA,aAAO,mCAAqB;AAAA,IAC1B;AAAA,IACA,gBAAgB;AAAA,MACd,UAAU;AAAA,MACV,aAAa,UAAU;AAAA,MACvB;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,CAAC;AACH;",
6
6
  "names": []
7
7
  }
@@ -14,9 +14,7 @@ function executeWithSchema({
14
14
  typeResolver,
15
15
  fieldExecutionHooks,
16
16
  enablePerEventContext,
17
- enableEarlyExecution,
18
- enableDeferredMerge,
19
- enableIncrementalPayloadBatching
17
+ enableEarlyExecution
20
18
  }) {
21
19
  const extracted = extractMinimalViableSchemaForRequestDocument(
22
20
  buildASTSchema(definitions),
@@ -37,9 +35,7 @@ function executeWithSchema({
37
35
  typeResolver,
38
36
  fieldExecutionHooks,
39
37
  enablePerEventContext,
40
- enableEarlyExecution,
41
- enableDeferredMerge,
42
- enableIncrementalPayloadBatching
38
+ enableEarlyExecution
43
39
  });
44
40
  }
45
41
  export {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../src/executeWithSchema.ts"],
4
- "sourcesContent": ["import { buildASTSchema } from \"graphql\";\nimport { executeWithoutSchema } from \"./index\";\nimport { PromiseOrValue } from \"./jsutils/PromiseOrValue\";\nimport { ExecutionResult, ExecutionWithSchemaArgs } from \"./types\";\nimport { extractMinimalViableSchemaForRequestDocument } from \"./utilities/extractMinimalViableSchemaForRequestDocument\";\n\nexport function executeWithSchema({\n document,\n definitions,\n resolvers,\n rootValue,\n contextValue,\n variableValues,\n operationName,\n fieldResolver,\n typeResolver,\n fieldExecutionHooks,\n enablePerEventContext,\n enableEarlyExecution,\n enableDeferredMerge,\n enableIncrementalPayloadBatching,\n}: ExecutionWithSchemaArgs): PromiseOrValue<ExecutionResult> {\n const extracted = extractMinimalViableSchemaForRequestDocument(\n buildASTSchema(definitions),\n document,\n );\n return executeWithoutSchema({\n document,\n schemaFragment: {\n schemaId: \"executeWithSchema\",\n definitions: extracted.definitions,\n resolvers,\n },\n rootValue,\n contextValue,\n variableValues,\n operationName,\n fieldResolver,\n typeResolver,\n fieldExecutionHooks,\n enablePerEventContext,\n enableEarlyExecution,\n enableDeferredMerge,\n enableIncrementalPayloadBatching,\n });\n}\n"],
5
- "mappings": ";AAAA,SAAS,sBAAsB;AAC/B,SAAS,4BAA4B;AAGrC,SAAS,oDAAoD;AAEtD,SAAS,kBAAkB;AAAA,EAChC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAA6D;AAC3D,QAAM,YAAY;AAAA,IAChB,eAAe,WAAW;AAAA,IAC1B;AAAA,EACF;AACA,SAAO,qBAAqB;AAAA,IAC1B;AAAA,IACA,gBAAgB;AAAA,MACd,UAAU;AAAA,MACV,aAAa,UAAU;AAAA,MACvB;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,CAAC;AACH;",
4
+ "sourcesContent": ["import { buildASTSchema } from \"graphql\";\nimport { executeWithoutSchema } from \"./index\";\nimport { PromiseOrValue } from \"./jsutils/PromiseOrValue\";\nimport { ExecutionResult, ExecutionWithSchemaArgs } from \"./types\";\nimport { extractMinimalViableSchemaForRequestDocument } from \"./utilities/extractMinimalViableSchemaForRequestDocument\";\n\nexport function executeWithSchema({\n document,\n definitions,\n resolvers,\n rootValue,\n contextValue,\n variableValues,\n operationName,\n fieldResolver,\n typeResolver,\n fieldExecutionHooks,\n enablePerEventContext,\n enableEarlyExecution,\n}: ExecutionWithSchemaArgs): PromiseOrValue<ExecutionResult> {\n const extracted = extractMinimalViableSchemaForRequestDocument(\n buildASTSchema(definitions),\n document,\n );\n return executeWithoutSchema({\n document,\n schemaFragment: {\n schemaId: \"executeWithSchema\",\n definitions: extracted.definitions,\n resolvers,\n },\n rootValue,\n contextValue,\n variableValues,\n operationName,\n fieldResolver,\n typeResolver,\n fieldExecutionHooks,\n enablePerEventContext,\n enableEarlyExecution,\n });\n}\n"],
5
+ "mappings": ";AAAA,SAAS,sBAAsB;AAC/B,SAAS,4BAA4B;AAGrC,SAAS,oDAAoD;AAEtD,SAAS,kBAAkB;AAAA,EAChC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAA6D;AAC3D,QAAM,YAAY;AAAA,IAChB,eAAe,WAAW;AAAA,IAC1B;AAAA,EACF;AACA,SAAO,qBAAqB;AAAA,IAC1B;AAAA,IACA,gBAAgB;AAAA,MACd,UAAU;AAAA,MACV,aAAa,UAAU;AAAA,MACvB;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,CAAC;AACH;",
6
6
  "names": []
7
7
  }
@@ -50,8 +50,6 @@ export interface ExecutionContext {
50
50
  subsequentPayloads: Set<IncrementalDataRecord>;
51
51
  enablePerEventContext: boolean;
52
52
  enableEarlyExecution: boolean;
53
- enableDeferredMerge: boolean;
54
- enableIncrementalPayloadBatching: boolean;
55
53
  }
56
54
  /**
57
55
  * Implements the "Executing requests" section of the GraphQL specification.
@@ -1 +1 @@
1
- {"version":3,"file":"executeWithoutSchema.d.ts","sourceRoot":"","sources":["../src/executeWithoutSchema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"executeWithoutSchema.d.ts","sourceRoot":"","sources":["../src/executeWithoutSchema.ts"],"names":[],"mappings":"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"}
@@ -41,7 +41,6 @@ module.exports = __toCommonJS(executeWithoutSchema_exports);
41
41
  var import_graphql = require("graphql");
42
42
  var import_collectFields = require("./collectFields");
43
43
  var import_devAssert = require("./jsutils/devAssert");
44
- var import_getObjectAtPath = require("./jsutils/getObjectAtPath");
45
44
  var import_inspect = require("./jsutils/inspect");
46
45
  var import_invariant = require("./jsutils/invariant");
47
46
  var import_isIterableObject = require("./jsutils/isIterableObject");
@@ -93,9 +92,7 @@ function buildExecutionContext(args) {
93
92
  subscribeFieldResolver,
94
93
  fieldExecutionHooks,
95
94
  enablePerEventContext,
96
- enableEarlyExecution,
97
- enableDeferredMerge,
98
- enableIncrementalPayloadBatching
95
+ enableEarlyExecution
99
96
  } = args;
100
97
  assertValidExecutionArguments(document, variableValues);
101
98
  let operation;
@@ -154,9 +151,7 @@ function buildExecutionContext(args) {
154
151
  fieldExecutionHooks,
155
152
  subsequentPayloads: /* @__PURE__ */ new Set(),
156
153
  enablePerEventContext: enablePerEventContext != null ? enablePerEventContext : true,
157
- enableEarlyExecution: enableEarlyExecution != null ? enableEarlyExecution : false,
158
- enableDeferredMerge: enableDeferredMerge != null ? enableDeferredMerge : false,
159
- enableIncrementalPayloadBatching: enableIncrementalPayloadBatching != null ? enableIncrementalPayloadBatching : false
154
+ enableEarlyExecution: enableEarlyExecution != null ? enableEarlyExecution : false
160
155
  };
161
156
  }
162
157
  function buildPerEventExecutionContext(exeContext, payload) {
@@ -257,7 +252,7 @@ function executeOperation(exeContext) {
257
252
  return buildResponse(exeContext, null);
258
253
  }
259
254
  }
260
- function buildResponse(exeContext, data, didWaitForDeferredMerge) {
255
+ function buildResponse(exeContext, data) {
261
256
  var _a, _b;
262
257
  if ((0, import_isPromise.isPromise)(data)) {
263
258
  return data.then(
@@ -270,14 +265,6 @@ function buildResponse(exeContext, data, didWaitForDeferredMerge) {
270
265
  }
271
266
  const hooks = exeContext.fieldExecutionHooks;
272
267
  try {
273
- if (exeContext.enableDeferredMerge) {
274
- if (shouldWaitForDeferredMerge(exeContext, data, didWaitForDeferredMerge)) {
275
- return waitForNextTick().then(
276
- () => buildResponse(exeContext, data, true)
277
- );
278
- }
279
- includeCompletedDeferredFragmentsInResult(exeContext, data);
280
- }
281
268
  const initialResult = exeContext.errors.length === 0 ? { data } : { errors: exeContext.errors, data };
282
269
  if (exeContext.subsequentPayloads.size > 0) {
283
270
  return {
@@ -307,25 +294,6 @@ function buildResponse(exeContext, data, didWaitForDeferredMerge) {
307
294
  return buildResponse(exeContext, null);
308
295
  }
309
296
  }
310
- function shouldWaitForDeferredMerge(exeContext, result, didWaitForDeferredMerge) {
311
- if (didWaitForDeferredMerge || result == null) {
312
- return false;
313
- }
314
- let hasDeferredFragment = false;
315
- for (const incrementalDataRecord of exeContext.subsequentPayloads) {
316
- if (!isDeferredFragmentRecord(incrementalDataRecord)) {
317
- continue;
318
- }
319
- if (incrementalDataRecord.isCompleted) {
320
- return false;
321
- }
322
- hasDeferredFragment = true;
323
- }
324
- return hasDeferredFragment;
325
- }
326
- function waitForNextTick() {
327
- return new Promise((resolve) => setTimeout(resolve, 0));
328
- }
329
297
  function executeFieldsSerially(exeContext, parentTypeName, sourceValue, path, groupedFieldSet, patches) {
330
298
  if (exeContext.enableEarlyExecution) {
331
299
  startExecutingPatches(
@@ -427,27 +395,6 @@ function startExecutingPatches(exeContext, parentTypeName, sourceValue, path, pa
427
395
  );
428
396
  }
429
397
  }
430
- function includeCompletedDeferredFragmentsInResult(exeContext, result) {
431
- if (result == null) {
432
- return;
433
- }
434
- for (const incrementalDataRecord of exeContext.subsequentPayloads) {
435
- if (!isDeferredFragmentRecord(incrementalDataRecord) || !incrementalDataRecord.isCompleted) {
436
- continue;
437
- }
438
- const target = (0, import_getObjectAtPath.getObjectAtPath)(result, incrementalDataRecord.path);
439
- if (!target) {
440
- continue;
441
- }
442
- if (incrementalDataRecord.data != null) {
443
- Object.assign(target, incrementalDataRecord.data);
444
- }
445
- if (incrementalDataRecord.errors.length > 0) {
446
- exeContext.errors.push(...incrementalDataRecord.errors);
447
- }
448
- exeContext.subsequentPayloads.delete(incrementalDataRecord);
449
- }
450
- }
451
398
  function executeField(exeContext, parentTypeName, source, fieldGroup, path, incrementalDataRecord) {
452
399
  const schemaFragment = exeContext.schemaFragment;
453
400
  const fieldName = fieldGroup[0].name.value;
@@ -2054,26 +2001,19 @@ function getCompletedIncrementalResults(exeContext) {
2054
2001
  }
2055
2002
  return incrementalResults;
2056
2003
  }
2057
- function waitForCompletedSubsequentPayload(exeContext) {
2058
- return Promise.race(
2059
- Array.from(exeContext.subsequentPayloads).map((p) => p.promise)
2060
- );
2061
- }
2062
- async function getCompletedIncrementalResultsWithBatching(exeContext) {
2063
- await Promise.resolve();
2064
- return getCompletedIncrementalResults(exeContext);
2065
- }
2066
2004
  function yieldSubsequentPayloads(exeContext) {
2067
2005
  let isDone = false;
2068
2006
  async function next() {
2069
2007
  if (isDone) {
2070
2008
  return { value: void 0, done: true };
2071
2009
  }
2072
- await waitForCompletedSubsequentPayload(exeContext);
2010
+ await Promise.race(
2011
+ Array.from(exeContext.subsequentPayloads).map((p) => p.promise)
2012
+ );
2073
2013
  if (isDone) {
2074
2014
  return { value: void 0, done: true };
2075
2015
  }
2076
- const incremental = exeContext.enableIncrementalPayloadBatching ? await getCompletedIncrementalResultsWithBatching(exeContext) : getCompletedIncrementalResults(exeContext);
2016
+ const incremental = getCompletedIncrementalResults(exeContext);
2077
2017
  const hasNext = exeContext.subsequentPayloads.size > 0;
2078
2018
  if (!incremental.length && hasNext) {
2079
2019
  return next();
@@ -2116,9 +2056,6 @@ function yieldSubsequentPayloads(exeContext) {
2116
2056
  function isStreamItemsRecord(incrementalDataRecord) {
2117
2057
  return incrementalDataRecord.type === "stream";
2118
2058
  }
2119
- function isDeferredFragmentRecord(incrementalDataRecord) {
2120
- return incrementalDataRecord.type === "defer";
2121
- }
2122
2059
  class DeferredFragmentRecord {
2123
2060
  constructor(opts) {
2124
2061
  this.type = "defer";