@pulumi/pulumi 3.42.0 → 3.43.0

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 (43) hide show
  1. package/automation/cmd.js +5 -1
  2. package/automation/cmd.js.map +1 -1
  3. package/automation/localWorkspace.js +3 -0
  4. package/automation/localWorkspace.js.map +1 -1
  5. package/automation/server.js +1 -2
  6. package/automation/server.js.map +1 -1
  7. package/cmd/run/run.js.map +1 -1
  8. package/config.js +26 -4
  9. package/config.js.map +1 -1
  10. package/package.json +1 -1
  11. package/proto/alias_grpc_pb.js +1 -0
  12. package/proto/alias_pb.js +631 -0
  13. package/proto/resource_grpc_pb.js +2 -1
  14. package/proto/resource_pb.js +67 -61
  15. package/resource.js +2 -6
  16. package/resource.js.map +1 -1
  17. package/runtime/closure/createClosure.js +12 -0
  18. package/runtime/closure/createClosure.js.map +1 -1
  19. package/runtime/closure/package.js +1 -1
  20. package/runtime/closure/package.js.map +1 -1
  21. package/runtime/config.js +14 -6
  22. package/runtime/config.js.map +1 -1
  23. package/runtime/debuggable.js +10 -11
  24. package/runtime/debuggable.js.map +1 -1
  25. package/runtime/resource.js +8 -9
  26. package/runtime/resource.js.map +1 -1
  27. package/runtime/settings.d.ts +4 -0
  28. package/runtime/settings.js +98 -112
  29. package/runtime/settings.js.map +1 -1
  30. package/runtime/stack.d.ts +2 -6
  31. package/runtime/stack.js +11 -9
  32. package/runtime/stack.js.map +1 -1
  33. package/runtime/state.d.ts +5 -0
  34. package/runtime/state.js +126 -0
  35. package/runtime/state.js.map +1 -0
  36. package/tests/automation/localWorkspace.spec.js +18 -24
  37. package/tests/automation/localWorkspace.spec.js.map +1 -1
  38. package/tests/resource.spec.js.map +1 -1
  39. package/tests/runtime/settings.spec.js +1 -6
  40. package/tests/runtime/settings.spec.js.map +1 -1
  41. package/utils.js +12 -0
  42. package/utils.js.map +1 -1
  43. package/version.js +1 -1
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
- // Copyright 2016-2018, Pulumi Corporation.
2
+ // Copyright 2016-2022, Pulumi Corporation.
3
3
  //
4
4
  // Licensed under the Apache License, Version 2.0 (the "License");
5
5
  // you may not use this file except in compliance with the License.
@@ -21,6 +21,7 @@ var __importStar = (this && this.__importStar) || function (mod) {
21
21
  };
22
22
  Object.defineProperty(exports, "__esModule", { value: true });
23
23
  const log = __importStar(require("../log"));
24
+ const state = __importStar(require("./state"));
24
25
  /**
25
26
  * debugPromiseLeaks can be set to enable promises leaks debugging.
26
27
  */
@@ -29,14 +30,11 @@ const debugPromiseLeaks = !!process.env.PULUMI_DEBUG_PROMISE_LEAKS;
29
30
  * leakDetectorScheduled is true when the promise leak detector is scheduled for process exit.
30
31
  */
31
32
  let leakDetectorScheduled = false;
32
- /**
33
- * leakCandidates tracks the list of potential leak candidates.
34
- */
35
- let leakCandidates = new Set();
36
33
  /** @internal */
37
34
  function leakedPromises() {
38
- const leaked = leakCandidates;
39
- const promisePlural = leaked.size === 0 ? "promise was" : "promises were";
35
+ const localStore = state.getStore();
36
+ const leaked = localStore.leakCandidates;
37
+ const promisePlural = leaked.size === 1 ? "promise was" : "promises were";
40
38
  const message = leaked.size === 0 ? "" :
41
39
  `The Pulumi runtime detected that ${leaked.size} ${promisePlural} still active\n` +
42
40
  "at the time that the process exited. There are a few ways that this can occur:\n" +
@@ -55,7 +53,7 @@ function leakedPromises() {
55
53
  console.error(promiseDebugString(leak));
56
54
  }
57
55
  }
58
- leakCandidates = new Set();
56
+ localStore.leakCandidates = new Set();
59
57
  return [leaked, message];
60
58
  }
61
59
  exports.leakedPromises = leakedPromises;
@@ -72,6 +70,7 @@ let promiseId = 0;
72
70
  * @internal
73
71
  */
74
72
  function debuggablePromise(p, ctx) {
73
+ const localStore = state.getStore();
75
74
  // Whack some stack onto the promise. Leave them non-enumerable to avoid awkward rendering.
76
75
  Object.defineProperty(p, "_debugId", { writable: true, value: promiseId });
77
76
  Object.defineProperty(p, "_debugCtx", { writable: true, value: ctx });
@@ -101,12 +100,12 @@ function debuggablePromise(p, ctx) {
101
100
  leakDetectorScheduled = true;
102
101
  }
103
102
  // Add this promise to the leak candidates list, and schedule it for removal if it resolves.
104
- leakCandidates.add(p);
103
+ localStore.leakCandidates.add(p);
105
104
  return p.then((val) => {
106
- leakCandidates.delete(p);
105
+ localStore.leakCandidates.delete(p);
107
106
  return val;
108
107
  }).catch((err) => {
109
- leakCandidates.delete(p);
108
+ localStore.leakCandidates.delete(p);
110
109
  err.promise = p;
111
110
  throw err;
112
111
  });
@@ -1 +1 @@
1
- {"version":3,"file":"debuggable.js","sourceRoot":"","sources":["../../runtime/debuggable.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"debuggable.js","sourceRoot":"","sources":["../../runtime/debuggable.ts"],"names":[],"mappings":"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"}
@@ -35,7 +35,6 @@ const log = __importStar(require("../log"));
35
35
  const utils = __importStar(require("../utils"));
36
36
  const output_1 = require("../output");
37
37
  const resource_1 = require("../resource");
38
- const resource_2 = require("../resource");
39
38
  const debuggable_1 = require("./debuggable");
40
39
  const invoke_1 = require("./invoke");
41
40
  const rpc_1 = require("./rpc");
@@ -187,7 +186,7 @@ function readResource(res, parent, t, name, props, opts) {
187
186
  }
188
187
  else {
189
188
  // If we aren't attached to the engine, in test mode, mock up a fake response for testing purposes.
190
- const mockurn = yield resource_2.createUrn(req.getName(), req.getType(), req.getParent()).promise();
189
+ const mockurn = yield resource_1.createUrn(req.getName(), req.getType(), req.getParent()).promise();
191
190
  resp = {
192
191
  getUrn: () => mockurn,
193
192
  getProperties: () => req.getProperties(),
@@ -243,7 +242,7 @@ function registerResource(res, parent, t, name, custom, remote, newDependency, p
243
242
  req.setAcceptsecrets(true);
244
243
  req.setAcceptresources(!utils.disableResourceReferences);
245
244
  req.setAdditionalsecretoutputsList(opts.additionalSecretOutputs || []);
246
- req.setAliasesList(resop.aliases);
245
+ req.setAliasurnsList(resop.aliases);
247
246
  req.setImportid(resop.import || "");
248
247
  req.setSupportspartialvalues(true);
249
248
  req.setRemote(remote);
@@ -299,7 +298,7 @@ function registerResource(res, parent, t, name, custom, remote, newDependency, p
299
298
  }
300
299
  else {
301
300
  // If we aren't attached to the engine, in test mode, mock up a fake response for testing purposes.
302
- const mockurn = yield resource_2.createUrn(req.getName(), req.getType(), req.getParent()).promise();
301
+ const mockurn = yield resource_1.createUrn(req.getName(), req.getType(), req.getParent()).promise();
303
302
  resp = {
304
303
  getUrn: () => mockurn,
305
304
  getId: () => undefined,
@@ -427,7 +426,7 @@ function prepareResource(label, res, parent, custom, remote, props, opts) {
427
426
  if (custom) {
428
427
  const customOpts = opts;
429
428
  importID = customOpts.import;
430
- providerRef = yield resource_2.ProviderResource.register(opts.provider);
429
+ providerRef = yield resource_1.ProviderResource.register(opts.provider);
431
430
  }
432
431
  const providerRefs = new Map();
433
432
  if (remote) {
@@ -452,7 +451,7 @@ function prepareResource(label, res, parent, custom, remote, props, opts) {
452
451
  }
453
452
  if (componentOpts.providers) {
454
453
  for (const provider of componentOpts.providers) {
455
- const pref = yield resource_2.ProviderResource.register(provider);
454
+ const pref = yield resource_1.ProviderResource.register(provider);
456
455
  if (pref) {
457
456
  providerRefs.set(provider.getPackage(), pref);
458
457
  }
@@ -542,7 +541,7 @@ function getAllTransitivelyReferencedResourceURNs(resources, exclude) {
542
541
  const transitivelyReachableResources = yield getTransitivelyReferencedChildResourcesOfComponentResources(resources);
543
542
  // Then we filter to only include Custom and Remote resources.
544
543
  const transitivelyReachableCustomResources = [...transitivelyReachableResources]
545
- .filter(r => (resource_2.CustomResource.isInstance(r) || r.__remote) && !exclude.has(r));
544
+ .filter(r => (resource_1.CustomResource.isInstance(r) || r.__remote) && !exclude.has(r));
546
545
  const promises = transitivelyReachableCustomResources.map(r => r.urn.promise());
547
546
  const urns = yield Promise.all(promises);
548
547
  return new Set(urns);
@@ -567,7 +566,7 @@ function addTransitivelyReferencedChildResourcesOfComponentResources(resources,
567
566
  for (const resource of resources) {
568
567
  if (!result.has(resource)) {
569
568
  result.add(resource);
570
- if (resource_2.ComponentResource.isInstance(resource)) {
569
+ if (resource_1.ComponentResource.isInstance(resource)) {
571
570
  // This await is safe even if __isConstructed is undefined. Ensure that the
572
571
  // resource has completely finished construction. That way all parent/child
573
572
  // relationships will have been setup.
@@ -604,7 +603,7 @@ function gatherExplicitDependencies(dependsOn) {
604
603
  return (urns !== null && urns !== void 0 ? urns : []).concat(implicits);
605
604
  }
606
605
  else {
607
- if (!resource_2.Resource.isInstance(dependsOn)) {
606
+ if (!resource_1.Resource.isInstance(dependsOn)) {
608
607
  throw new Error("'dependsOn' was passed a value that was not a Resource.");
609
608
  }
610
609
  return [dependsOn];
@@ -1 +1 @@
1
- {"version":3,"file":"resource.js","sourceRoot":"","sources":["../../runtime/resource.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resource.js","sourceRoot":"","sources":["../../runtime/resource.ts"],"names":[],"mappings":"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"}
@@ -81,6 +81,10 @@ export declare function serialize(): boolean;
81
81
  * queue to drain. If any RPCs come in afterwards, however, they will crash the process.
82
82
  */
83
83
  export declare function disconnect(): Promise<void>;
84
+ /**
85
+ * getMaximumListeners returns the configured number of process listeners available
86
+ */
87
+ export declare function getMaximumListeners(): number;
84
88
  /**
85
89
  * disconnectSync permanently disconnects from the server, closing the connections. Unlike `disconnect`. it does not
86
90
  * wait for the existing RPC queue to drain. Any RPCs that come in after this call will crash the process.
@@ -33,6 +33,7 @@ const grpc = __importStar(require("@grpc/grpc-js"));
33
33
  const fs = __importStar(require("fs"));
34
34
  const path = __importStar(require("path"));
35
35
  const debuggable_1 = require("./debuggable");
36
+ const state_1 = require("./state");
36
37
  const engrpc = require("../proto/engine_grpc_pb.js");
37
38
  const engproto = require("../proto/engine_pb.js");
38
39
  const resrpc = require("../proto/resource_grpc_pb.js");
@@ -45,38 +46,27 @@ const grpcChannelOptions = { "grpc.max_receive_message_length": exports.maxRPCMe
45
46
  * excessiveDebugOutput enables, well, pretty excessive debug output pertaining to resources and properties.
46
47
  */
47
48
  exports.excessiveDebugOutput = false;
48
- const nodeEnvKeys = {
49
- project: "PULUMI_NODEJS_PROJECT",
50
- stack: "PULUMI_NODEJS_STACK",
51
- dryRun: "PULUMI_NODEJS_DRY_RUN",
52
- queryMode: "PULUMI_NODEJS_QUERY_MODE",
53
- parallel: "PULUMI_NODEJS_PARALLEL",
54
- monitorAddr: "PULUMI_NODEJS_MONITOR",
55
- engineAddr: "PULUMI_NODEJS_ENGINE",
56
- syncDir: "PULUMI_NODEJS_SYNC",
57
- // this value is not set by the CLI and is controlled via a user set env var unlike the values above
58
- cacheDynamicProviders: "PULUMI_NODEJS_CACHE_DYNAMIC_PROVIDERS",
59
- organization: "PULUMI_NODEJS_ORGANIZATION",
60
- };
61
- const pulumiEnvKeys = {
62
- legacyApply: "PULUMI_ENABLE_LEGACY_APPLY",
63
- };
49
+ let monitor;
50
+ let engine;
64
51
  // reset options resets nodejs runtime global state (such as rpc clients),
65
52
  // and sets nodejs runtime option env vars to the specified values.
66
53
  function resetOptions(project, stack, parallel, engineAddr, monitorAddr, preview, organization) {
54
+ const { settings } = state_1.getStore();
67
55
  monitor = undefined;
68
56
  engine = undefined;
69
- rpcDone = Promise.resolve();
70
- featureSupport = {};
57
+ settings.monitor = undefined;
58
+ settings.engine = undefined;
59
+ settings.rpcDone = Promise.resolve();
60
+ settings.featureSupport = {};
71
61
  // reset node specific environment variables in the process
72
- process.env[nodeEnvKeys.project] = project;
73
- process.env[nodeEnvKeys.stack] = stack;
74
- process.env[nodeEnvKeys.dryRun] = preview.toString();
75
- process.env[nodeEnvKeys.queryMode] = isQueryMode.toString();
76
- process.env[nodeEnvKeys.parallel] = parallel.toString();
77
- process.env[nodeEnvKeys.monitorAddr] = monitorAddr;
78
- process.env[nodeEnvKeys.engineAddr] = engineAddr;
79
- process.env[nodeEnvKeys.organization] = organization === "" ? "organization" : organization;
62
+ settings.options.project = project;
63
+ settings.options.stack = stack;
64
+ settings.options.dryRun = preview;
65
+ settings.options.queryMode = isQueryMode();
66
+ settings.options.parallel = parallel;
67
+ settings.options.monitorAddr = monitorAddr;
68
+ settings.options.engineAddr = engineAddr;
69
+ settings.options.organization = organization;
80
70
  }
81
71
  exports.resetOptions = resetOptions;
82
72
  function setMockOptions(mockMonitor, project, stack, preview, organization) {
@@ -87,7 +77,8 @@ function setMockOptions(mockMonitor, project, stack, preview, organization) {
87
77
  exports.setMockOptions = setMockOptions;
88
78
  /** @internal Used only for testing purposes. */
89
79
  function _setIsDryRun(val) {
90
- process.env[nodeEnvKeys.dryRun] = val.toString();
80
+ const { settings } = state_1.getStore();
81
+ settings.options.dryRun = val;
91
82
  }
92
83
  exports._setIsDryRun = _setIsDryRun;
93
84
  /**
@@ -100,20 +91,22 @@ function isDryRun() {
100
91
  }
101
92
  exports.isDryRun = isDryRun;
102
93
  /** @internal Used only for testing purposes */
103
- function _reset() {
104
- resetOptions("", "", -1, "", "", false, "");
105
- }
106
- exports._reset = _reset;
107
- /** @internal Used only for testing purposes */
108
94
  function _setFeatureSupport(key, val) {
95
+ const { featureSupport } = state_1.getStore().settings;
109
96
  featureSupport[key] = val;
110
97
  }
111
98
  exports._setFeatureSupport = _setFeatureSupport;
112
99
  /** @internal Used only for testing purposes. */
113
100
  function _setQueryMode(val) {
114
- process.env[nodeEnvKeys.queryMode] = val.toString();
101
+ const { settings } = state_1.getStore();
102
+ settings.options.queryMode = val;
115
103
  }
116
104
  exports._setQueryMode = _setQueryMode;
105
+ /** @internal Used only for testing purposes */
106
+ function _reset() {
107
+ resetOptions("", "", -1, "", "", false, "");
108
+ }
109
+ exports._reset = _reset;
117
110
  /**
118
111
  * Returns true if query mode is enabled.
119
112
  */
@@ -150,50 +143,41 @@ function getOrganization() {
150
143
  exports.getOrganization = getOrganization;
151
144
  /** @internal Used only for testing purposes. */
152
145
  function _setOrganization(val) {
153
- process.env[nodeEnvKeys.organization] = val;
146
+ const { settings } = state_1.getStore();
147
+ settings.options.organization = val;
148
+ return settings.options.organization;
154
149
  }
155
150
  exports._setOrganization = _setOrganization;
156
151
  /**
157
152
  * Get the project being run by the current update.
158
153
  */
159
154
  function getProject() {
160
- const project = options().project;
161
- if (project) {
162
- return project;
163
- }
164
- // If the project is missing, specialize the error.
165
- // Throw an error if test mode is enabled, instructing how to manually configure the project:
166
- throw new Error("Missing project name; for test mode, please call `pulumi.runtime.setMocks`");
155
+ const { project } = options();
156
+ return project || "";
167
157
  }
168
158
  exports.getProject = getProject;
169
159
  /** @internal Used only for testing purposes. */
170
160
  function _setProject(val) {
171
- process.env[nodeEnvKeys.project] = val;
161
+ const { settings } = state_1.getStore();
162
+ settings.options.project = val;
163
+ return settings.options.project;
172
164
  }
173
165
  exports._setProject = _setProject;
174
166
  /**
175
167
  * Get the stack being targeted by the current update.
176
168
  */
177
169
  function getStack() {
178
- const stack = options().stack;
179
- if (stack) {
180
- return stack;
181
- }
182
- // If the stack is missing, specialize the error.
183
- // Throw an error if test mode is enabled, instructing how to manually configure the stack:
184
- throw new Error("Missing stack name; for test mode, please call `pulumi.runtime.setMocks` and provide a `stack` argument");
170
+ const { stack } = options();
171
+ return stack || "";
185
172
  }
186
173
  exports.getStack = getStack;
187
174
  /** @internal Used only for testing purposes. */
188
175
  function _setStack(val) {
189
- process.env[nodeEnvKeys.stack] = val;
176
+ const { settings } = state_1.getStore();
177
+ settings.options.stack = val;
178
+ return settings.options.stack;
190
179
  }
191
180
  exports._setStack = _setStack;
192
- /**
193
- * monitor is a live connection to the resource monitor that tracks deployments (lazily initialized).
194
- */
195
- let monitor;
196
- let featureSupport = {};
197
181
  /**
198
182
  * hasMonitor returns true if we are currently connected to a resource monitoring service.
199
183
  */
@@ -205,16 +189,29 @@ exports.hasMonitor = hasMonitor;
205
189
  * getMonitor returns the current resource monitoring service client for RPC communications.
206
190
  */
207
191
  function getMonitor() {
208
- // pre-emptive fail fast check for node inline programs
209
192
  runSxSCheck();
210
- if (monitor === undefined) {
211
- const addr = options().monitorAddr;
212
- if (addr) {
213
- // Lazily initialize the RPC connection to the monitor.
214
- monitor = new resrpc.ResourceMonitorClient(addr, grpc.credentials.createInsecure(), grpcChannelOptions);
193
+ const { settings } = state_1.getStore();
194
+ const addr = options().monitorAddr;
195
+ if (state_1.getLocalStore() === undefined) {
196
+ if (monitor === undefined) {
197
+ if (addr) {
198
+ // Lazily initialize the RPC connection to the monitor.
199
+ monitor = new resrpc.ResourceMonitorClient(addr, grpc.credentials.createInsecure(), grpcChannelOptions);
200
+ settings.options.monitorAddr = addr;
201
+ }
215
202
  }
203
+ return monitor;
204
+ }
205
+ else {
206
+ if (settings.monitor === undefined) {
207
+ if (addr) {
208
+ // Lazily initialize the RPC connection to the monitor.
209
+ settings.monitor = new resrpc.ResourceMonitorClient(addr, grpc.credentials.createInsecure(), grpcChannelOptions);
210
+ settings.options.monitorAddr = addr;
211
+ }
212
+ }
213
+ return settings.monitor;
216
214
  }
217
- return monitor;
218
215
  }
219
216
  exports.getMonitor = getMonitor;
220
217
  let syncInvokes;
@@ -229,10 +226,6 @@ function tryGetSyncInvokes() {
229
226
  return syncInvokes;
230
227
  }
231
228
  exports.tryGetSyncInvokes = tryGetSyncInvokes;
232
- /**
233
- * engine is a live connection to the engine, used for logging, etc. (lazily initialized).
234
- */
235
- let engine;
236
229
  /**
237
230
  * hasEngine returns true if we are currently connected to an engine.
238
231
  */
@@ -244,14 +237,27 @@ exports.hasEngine = hasEngine;
244
237
  * getEngine returns the current engine, if any, for RPC communications back to the resource engine.
245
238
  */
246
239
  function getEngine() {
247
- if (engine === undefined) {
248
- const addr = options().engineAddr;
249
- if (addr) {
250
- // Lazily initialize the RPC connection to the engine.
251
- engine = new engrpc.EngineClient(addr, grpc.credentials.createInsecure(), grpcChannelOptions);
240
+ const { settings } = state_1.getStore();
241
+ if (state_1.getLocalStore() === undefined) {
242
+ if (engine === undefined) {
243
+ const addr = options().engineAddr;
244
+ if (addr) {
245
+ // Lazily initialize the RPC connection to the engine.
246
+ engine = new engrpc.EngineClient(addr, grpc.credentials.createInsecure(), grpcChannelOptions);
247
+ }
252
248
  }
249
+ return engine;
250
+ }
251
+ else {
252
+ if (settings.engine === undefined) {
253
+ const addr = options().engineAddr;
254
+ if (addr) {
255
+ // Lazily initialize the RPC connection to the engine.
256
+ settings.engine = new engrpc.EngineClient(addr, grpc.credentials.createInsecure(), grpcChannelOptions);
257
+ }
258
+ }
259
+ return settings.engine;
253
260
  }
254
- return engine;
255
261
  }
256
262
  exports.getEngine = getEngine;
257
263
  function terminateRpcs() {
@@ -277,36 +283,9 @@ exports.serialize = serialize;
277
283
 
278
284
  */
279
285
  function options() {
280
- // pre-emptive fail fast check for node inline programs
281
286
  runSxSCheck();
282
- // The only option that needs parsing is the parallelism flag. Ignore any failures.
283
- let parallel;
284
- const parallelOpt = process.env[nodeEnvKeys.parallel];
285
- if (parallelOpt) {
286
- try {
287
- parallel = parseInt(parallelOpt, 10);
288
- }
289
- catch (err) {
290
- // ignore.
291
- }
292
- }
293
- // Now just hydrate the rest from environment variables. These might be missing, in which case
294
- // we will fail later on when we actually need to create an RPC connection back to the engine.
295
- return {
296
- // node runtime
297
- organization: process.env[nodeEnvKeys.organization],
298
- project: process.env[nodeEnvKeys.project],
299
- stack: process.env[nodeEnvKeys.stack],
300
- dryRun: (process.env[nodeEnvKeys.dryRun] === "true"),
301
- queryMode: (process.env[nodeEnvKeys.queryMode] === "true"),
302
- parallel: parallel,
303
- monitorAddr: process.env[nodeEnvKeys.monitorAddr],
304
- engineAddr: process.env[nodeEnvKeys.engineAddr],
305
- syncDir: process.env[nodeEnvKeys.syncDir],
306
- cacheDynamicProviders: process.env[nodeEnvKeys.cacheDynamicProviders] !== "false",
307
- // pulumi specific
308
- legacyApply: (process.env[pulumiEnvKeys.legacyApply] === "true"),
309
- };
287
+ const { settings } = state_1.getStore();
288
+ return settings.options;
310
289
  }
311
290
  /**
312
291
  * disconnect permanently disconnects from the server, closing the connections. It waits for the existing RPC
@@ -318,11 +297,12 @@ function disconnect() {
318
297
  exports.disconnect = disconnect;
319
298
  /** @internal */
320
299
  function waitForRPCs(disconnectFromServers = false) {
300
+ const localStore = state_1.getStore();
321
301
  let done;
322
302
  const closeCallback = () => {
323
- if (done !== rpcDone) {
303
+ if (done !== localStore.settings.rpcDone) {
324
304
  // If the done promise has changed, some activity occurred in between callbacks. Wait again.
325
- done = rpcDone;
305
+ done = localStore.settings.rpcDone;
326
306
  return debuggable_1.debuggablePromise(done.then(closeCallback), "disconnect");
327
307
  }
328
308
  if (disconnectFromServers) {
@@ -333,6 +313,14 @@ function waitForRPCs(disconnectFromServers = false) {
333
313
  return closeCallback();
334
314
  }
335
315
  exports.waitForRPCs = waitForRPCs;
316
+ /**
317
+ * getMaximumListeners returns the configured number of process listeners available
318
+ */
319
+ function getMaximumListeners() {
320
+ const { settings } = state_1.getStore();
321
+ return settings.options.maximumProcessListeners;
322
+ }
323
+ exports.getMaximumListeners = getMaximumListeners;
336
324
  /**
337
325
  * disconnectSync permanently disconnects from the server, closing the connections. Unlike `disconnect`. it does not
338
326
  * wait for the existing RPC queue to drain. Any RPCs that come in after this call will crash the process.
@@ -359,18 +347,15 @@ function disconnectSync() {
359
347
  }
360
348
  }
361
349
  exports.disconnectSync = disconnectSync;
362
- /**
363
- * rpcDone resolves when the last known client-side RPC call finishes.
364
- */
365
- let rpcDone = Promise.resolve();
366
350
  /**
367
351
  * rpcKeepAlive registers a pending call to ensure that we don't prematurely disconnect from the server. It returns
368
352
  * a function that, when invoked, signals that the RPC has completed.
369
353
  */
370
354
  function rpcKeepAlive() {
355
+ const localStore = state_1.getStore();
371
356
  let done = undefined;
372
357
  const donePromise = debuggable_1.debuggablePromise(new Promise(resolve => done = resolve), "rpcKeepAlive");
373
- rpcDone = rpcDone.then(() => donePromise);
358
+ localStore.settings.rpcDone = localStore.settings.rpcDone.then(() => donePromise);
374
359
  return done;
375
360
  }
376
361
  exports.rpcKeepAlive = rpcKeepAlive;
@@ -410,11 +395,12 @@ exports.setRootResource = setRootResource;
410
395
  */
411
396
  function monitorSupportsFeature(feature) {
412
397
  return __awaiter(this, void 0, void 0, function* () {
398
+ const localStore = state_1.getStore();
413
399
  const monitorRef = getMonitor();
414
400
  if (!monitorRef) {
415
- return featureSupport[feature];
401
+ return localStore.settings.featureSupport[feature];
416
402
  }
417
- if (featureSupport[feature] === undefined) {
403
+ if (localStore.settings.featureSupport[feature] === undefined) {
418
404
  const req = new resproto.SupportsFeatureRequest();
419
405
  req.setId(feature);
420
406
  const result = yield new Promise((resolve, reject) => {
@@ -430,9 +416,9 @@ function monitorSupportsFeature(feature) {
430
416
  return resolve(resp.getHassupport());
431
417
  });
432
418
  });
433
- featureSupport[feature] = result;
419
+ localStore.settings.featureSupport[feature] = result;
434
420
  }
435
- return featureSupport[feature];
421
+ return localStore.settings.featureSupport[feature];
436
422
  });
437
423
  }
438
424
  exports.monitorSupportsFeature = monitorSupportsFeature;