@mongosh/cli-repl 2.0.2 → 2.1.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/AUTHORS CHANGED
@@ -17,3 +17,4 @@ Martin Rodriguez Reboredo <yakoyoku@gmail.com>
17
17
  Kevin Mas Ruiz <kevin.mas@hey.com>
18
18
  Hao <shaketbaby@gmail.com>
19
19
  Hao <hao.hu@mongodb.com>
20
+ Bailey Pearson <bailey.pearson@mongodb.com>
package/README.md CHANGED
@@ -15,6 +15,7 @@ CLI interface for [MongoDB Shell][mongosh], an extension to Node.js REPL with Mo
15
15
  -f, --file [arg] Load the specified mongosh script
16
16
  --host [arg] Server to connect to
17
17
  --port [arg] Port to connect to
18
+ --build-info Show build information
18
19
  --version Show version information
19
20
  --quiet Silence output from the shell during the connection process
20
21
  --shell Run the shell after executing files
package/lib/async-repl.js CHANGED
@@ -40,108 +40,111 @@ function start(opts) {
40
40
  }
41
41
  return wasInRawMode;
42
42
  };
43
- repl.eval = async (input, context, filename, callback) => {
44
- var _a, _b;
45
- let previouslyInRawMode;
46
- if (onAsyncSigint) {
47
- previouslyInRawMode = setRawMode(false);
48
- }
49
- let result;
50
- repl.emit(exports.evalStart, { input });
51
- const origPrompt = getPrompt(repl);
52
- const { Interface } = require('readline');
53
- Interface.prototype.setPrompt.call(repl, '');
54
- try {
55
- let exitEventPending = false;
56
- const exitListener = () => {
57
- exitEventPending = true;
58
- };
59
- let previousExitListeners = [];
60
- let sigintListener = undefined;
61
- let replSigint = undefined;
62
- let processSigint = undefined;
43
+ repl.eval = (input, context, filename, callback) => {
44
+ async function _eval() {
45
+ var _a, _b;
46
+ let previouslyInRawMode;
47
+ if (onAsyncSigint) {
48
+ previouslyInRawMode = setRawMode(false);
49
+ }
50
+ let result;
51
+ repl.emit(exports.evalStart, { input });
52
+ const origPrompt = getPrompt(repl);
53
+ const { Interface } = require('readline');
54
+ Interface.prototype.setPrompt.call(repl, '');
63
55
  try {
64
- result = await new Promise((resolve, reject) => {
65
- if (onAsyncSigint) {
66
- sigintListener = async () => {
67
- let interruptHandled = false;
68
- try {
69
- interruptHandled = await onAsyncSigint();
70
- }
71
- catch (e) {
72
- }
73
- finally {
74
- reject(interruptHandled
75
- ? undefined
76
- : new Error('Asynchronous execution was interrupted by `SIGINT`'));
77
- }
78
- };
79
- replSigint = disableEvent(repl, 'SIGINT');
80
- processSigint = disableEvent(process, 'SIGINT');
81
- repl.once('SIGINT', sigintListener);
56
+ let exitEventPending = false;
57
+ const exitListener = () => {
58
+ exitEventPending = true;
59
+ };
60
+ let previousExitListeners = [];
61
+ let sigintListener = undefined;
62
+ let replSigint = undefined;
63
+ let processSigint = undefined;
64
+ try {
65
+ result = await new Promise((resolve, reject) => {
66
+ if (onAsyncSigint) {
67
+ sigintListener = async () => {
68
+ let interruptHandled = false;
69
+ try {
70
+ interruptHandled = await onAsyncSigint();
71
+ }
72
+ catch (e) {
73
+ }
74
+ finally {
75
+ reject(interruptHandled
76
+ ? undefined
77
+ : new Error('Asynchronous execution was interrupted by `SIGINT`'));
78
+ }
79
+ };
80
+ replSigint = disableEvent(repl, 'SIGINT');
81
+ processSigint = disableEvent(process, 'SIGINT');
82
+ repl.once('SIGINT', sigintListener);
83
+ }
84
+ previousExitListeners = repl.rawListeners('exit');
85
+ repl.removeAllListeners('exit');
86
+ repl.once('exit', exitListener);
87
+ const evalResult = asyncEval(originalEval, input, context, filename);
88
+ if (sigintListener !== undefined) {
89
+ process.once('SIGINT', sigintListener);
90
+ }
91
+ evalResult.then(resolve, reject);
92
+ });
93
+ }
94
+ finally {
95
+ if (typeof previouslyInRawMode !== 'undefined') {
96
+ setRawMode(previouslyInRawMode);
82
97
  }
83
- previousExitListeners = repl.rawListeners('exit');
84
- repl.removeAllListeners('exit');
85
- repl.once('exit', exitListener);
86
- const evalResult = asyncEval(originalEval, input, context, filename);
87
98
  if (sigintListener !== undefined) {
88
- process.once('SIGINT', sigintListener);
99
+ repl.removeListener('SIGINT', sigintListener);
100
+ process.removeListener('SIGINT', sigintListener);
101
+ }
102
+ (_a = replSigint === null || replSigint === void 0 ? void 0 : replSigint.restore) === null || _a === void 0 ? void 0 : _a.call(replSigint);
103
+ (_b = processSigint === null || processSigint === void 0 ? void 0 : processSigint.restore) === null || _b === void 0 ? void 0 : _b.call(processSigint);
104
+ if (getPrompt(repl) === '') {
105
+ Interface.prototype.setPrompt.call(repl, origPrompt);
106
+ }
107
+ repl.removeListener('exit', exitListener);
108
+ for (const listener of previousExitListeners) {
109
+ repl.on('exit', listener);
110
+ }
111
+ if (exitEventPending) {
112
+ process.nextTick(() => repl.emit('exit'));
89
113
  }
90
- evalResult.then(resolve, reject);
91
- });
92
- }
93
- finally {
94
- if (typeof previouslyInRawMode !== 'undefined') {
95
- setRawMode(previouslyInRawMode);
96
- }
97
- if (sigintListener !== undefined) {
98
- repl.removeListener('SIGINT', sigintListener);
99
- process.removeListener('SIGINT', sigintListener);
100
- }
101
- (_a = replSigint === null || replSigint === void 0 ? void 0 : replSigint.restore) === null || _a === void 0 ? void 0 : _a.call(replSigint);
102
- (_b = processSigint === null || processSigint === void 0 ? void 0 : processSigint.restore) === null || _b === void 0 ? void 0 : _b.call(processSigint);
103
- if (getPrompt(repl) === '') {
104
- Interface.prototype.setPrompt.call(repl, origPrompt);
105
- }
106
- repl.removeListener('exit', exitListener);
107
- for (const listener of previousExitListeners) {
108
- repl.on('exit', listener);
109
- }
110
- if (exitEventPending) {
111
- process.nextTick(() => repl.emit('exit'));
112
114
  }
113
115
  }
114
- }
115
- catch (err) {
116
- try {
117
- if ((0, is_recoverable_error_1.default)(input)) {
116
+ catch (err) {
117
+ try {
118
+ if ((0, is_recoverable_error_1.default)(input)) {
119
+ repl.emit(exports.evalFinish, {
120
+ input,
121
+ success: false,
122
+ err,
123
+ recoverable: true,
124
+ });
125
+ return callback(new Recoverable(err));
126
+ }
118
127
  repl.emit(exports.evalFinish, {
119
128
  input,
120
129
  success: false,
121
130
  err,
122
- recoverable: true,
131
+ recoverable: false,
123
132
  });
124
- return callback(new Recoverable(err));
133
+ return callback(err);
134
+ }
135
+ catch (callbackErr) {
136
+ return callback(wrapCallbackError(callbackErr));
125
137
  }
126
- repl.emit(exports.evalFinish, {
127
- input,
128
- success: false,
129
- err,
130
- recoverable: false,
131
- });
132
- return callback(err);
138
+ }
139
+ try {
140
+ repl.emit(exports.evalFinish, { input, success: true });
141
+ return callback(null, result);
133
142
  }
134
143
  catch (callbackErr) {
135
144
  return callback(wrapCallbackError(callbackErr));
136
145
  }
137
146
  }
138
- try {
139
- repl.emit(exports.evalFinish, { input, success: true });
140
- return callback(null, result);
141
- }
142
- catch (callbackErr) {
143
- return callback(wrapCallbackError(callbackErr));
144
- }
147
+ _eval().catch((e) => callback(e));
145
148
  };
146
149
  return repl;
147
150
  }
@@ -1 +1 @@
1
- {"version":3,"file":"async-repl.js","sourceRoot":"","sources":["../src/async-repl.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"async-repl.js","sourceRoot":"","sources":["../src/async-repl.ts"],"names":[],"mappings":"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"}
@@ -17,6 +17,7 @@ export interface BuildInfo {
17
17
  segmentApiKey?: string;
18
18
  deps: ReturnType<typeof CliServiceProvider.getVersionInformation>;
19
19
  }
20
+ export declare function baseBuildInfo(): Omit<BuildInfo, 'deps'>;
20
21
  export declare function buildInfo({ withSegmentApiKey, }?: {
21
22
  withSegmentApiKey?: boolean;
22
23
  }): Promise<BuildInfo>;
package/lib/build-info.js CHANGED
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.buildInfo = void 0;
6
+ exports.buildInfo = exports.baseBuildInfo = void 0;
7
7
  const os_1 = __importDefault(require("os"));
8
8
  const service_provider_server_1 = require("@mongosh/service-provider-server");
9
9
  function getSystemArch() {
@@ -15,24 +15,19 @@ function getSystemArch() {
15
15
  : 'x64'
16
16
  : process.arch;
17
17
  }
18
- async function buildInfo({ withSegmentApiKey, } = {}) {
19
- const dependencyVersionInfo = {
20
- ...service_provider_server_1.CliServiceProvider.getVersionInformation(),
21
- };
18
+ function baseBuildInfo() {
22
19
  const runtimeData = {
23
20
  nodeVersion: process.version,
24
21
  opensslVersion: process.versions.openssl,
25
22
  sharedOpenssl: !!process.config.variables.node_shared_openssl,
26
23
  runtimeArch: getSystemArch(),
27
24
  runtimePlatform: process.platform,
28
- deps: { ...dependencyVersionInfo },
29
25
  };
30
26
  try {
31
- const buildInfo = { ...require('./build-info.json'), ...runtimeData };
32
- if (!withSegmentApiKey) {
33
- delete buildInfo.segmentApiKey;
34
- }
35
- return buildInfo;
27
+ return {
28
+ ...require('./build-info.json'),
29
+ ...runtimeData,
30
+ };
36
31
  }
37
32
  catch (_a) {
38
33
  const { version } = require('../package.json');
@@ -48,5 +43,16 @@ async function buildInfo({ withSegmentApiKey, } = {}) {
48
43
  };
49
44
  }
50
45
  }
46
+ exports.baseBuildInfo = baseBuildInfo;
47
+ async function buildInfo({ withSegmentApiKey, } = {}) {
48
+ const dependencyVersionInfo = {
49
+ ...service_provider_server_1.CliServiceProvider.getVersionInformation(),
50
+ };
51
+ const buildInfo = { ...baseBuildInfo(), deps: { ...dependencyVersionInfo } };
52
+ if (!withSegmentApiKey) {
53
+ delete buildInfo.segmentApiKey;
54
+ }
55
+ return buildInfo;
56
+ }
51
57
  exports.buildInfo = buildInfo;
52
58
  //# sourceMappingURL=build-info.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"build-info.js","sourceRoot":"","sources":["../src/build-info.ts"],"names":[],"mappings":";;;;;;AAAA,4CAAoB;AACpB,8EAAsE;AAmBtE,SAAS,aAAa;IACpB,OAAO,OAAO,CAAC,QAAQ,KAAK,QAAQ;QAClC,CAAC,CAAC,YAAE,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE;YAMrB,OAAO,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACjC,CAAC,CAAC;YACF,CAAC,CAAC,OAAO;YACT,CAAC,CAAC,KAAK;QACT,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;AACnB,CAAC;AAOM,KAAK,UAAU,SAAS,CAAC,EAC9B,iBAAiB,MAGf,EAAE;IACJ,MAAM,qBAAqB,GAAsB;QAC/C,GAAG,4CAAkB,CAAC,qBAAqB,EAAE;KAC9C,CAAC;IAEF,MAAM,WAAW,GAAG;QAClB,WAAW,EAAE,OAAO,CAAC,OAAO;QAC5B,cAAc,EAAE,OAAO,CAAC,QAAQ,CAAC,OAAO;QACxC,aAAa,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,mBAAmB;QAG7D,WAAW,EAAE,aAAa,EAAE;QAG5B,eAAe,EAAE,OAAO,CAAC,QAAQ;QACjC,IAAI,EAAE,EAAE,GAAG,qBAAqB,EAAE;KACnC,CAAC;IAEF,IAAI;QACF,MAAM,SAAS,GAAG,EAAE,GAAG,OAAO,CAAC,mBAAmB,CAAC,EAAE,GAAG,WAAW,EAAE,CAAC;QACtE,IAAI,CAAC,iBAAiB,EAAE;YACtB,OAAO,SAAS,CAAC,aAAa,CAAC;SAChC;QACD,OAAO,SAAS,CAAC;KAClB;IAAC,WAAM;QACN,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;QAC/C,OAAO;YACL,OAAO;YACP,gBAAgB,EAAE,YAAY;YAC9B,SAAS,EAAE,OAAO,CAAC,IAAI;YACvB,aAAa,EAAE,OAAO,CAAC,QAAQ;YAC/B,WAAW,EAAE,SAAS;YACtB,SAAS,EAAE,IAAI;YACf,UAAU,EAAE,IAAI;YAChB,GAAG,WAAW;SACf,CAAC;KACH;AACH,CAAC;AAzCD,8BAyCC"}
1
+ {"version":3,"file":"build-info.js","sourceRoot":"","sources":["../src/build-info.ts"],"names":[],"mappings":";;;;;;AAAA,4CAAoB;AACpB,8EAAsE;AAmBtE,SAAS,aAAa;IACpB,OAAO,OAAO,CAAC,QAAQ,KAAK,QAAQ;QAClC,CAAC,CAAC,YAAE,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE;YAMrB,OAAO,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACjC,CAAC,CAAC;YACF,CAAC,CAAC,OAAO;YACT,CAAC,CAAC,KAAK;QACT,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;AACnB,CAAC;AAED,SAAgB,aAAa;IAC3B,MAAM,WAAW,GAAG;QAClB,WAAW,EAAE,OAAO,CAAC,OAAO;QAC5B,cAAc,EAAE,OAAO,CAAC,QAAQ,CAAC,OAAO;QACxC,aAAa,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,mBAAmB;QAG7D,WAAW,EAAE,aAAa,EAAE;QAG5B,eAAe,EAAE,OAAO,CAAC,QAAQ;KAClC,CAAC;IAEF,IAAI;QACF,OAAO;YACL,GAAG,OAAO,CAAC,mBAAmB,CAAC;YAC/B,GAAG,WAAW;SACf,CAAC;KACH;IAAC,WAAM;QACN,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;QAC/C,OAAO;YACL,OAAO;YACP,gBAAgB,EAAE,YAAY;YAC9B,SAAS,EAAE,OAAO,CAAC,IAAI;YACvB,aAAa,EAAE,OAAO,CAAC,QAAQ;YAC/B,WAAW,EAAE,SAAS;YACtB,SAAS,EAAE,IAAI;YACf,UAAU,EAAE,IAAI;YAChB,GAAG,WAAW;SACf,CAAC;KACH;AACH,CAAC;AA/BD,sCA+BC;AAOM,KAAK,UAAU,SAAS,CAAC,EAC9B,iBAAiB,MAGf,EAAE;IACJ,MAAM,qBAAqB,GAAsB;QAC/C,GAAG,4CAAkB,CAAC,qBAAqB,EAAE;KAC9C,CAAC;IAEF,MAAM,SAAS,GAAG,EAAE,GAAG,aAAa,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,qBAAqB,EAAE,EAAE,CAAC;IAC7E,IAAI,CAAC,iBAAiB,EAAE;QACtB,OAAO,SAAS,CAAC,aAAa,CAAC;KAChC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAdD,8BAcC"}
@@ -1 +1 @@
1
- {"segmentApiKey":"LLBrrHblu6jY9aujeyXJuePD5dAAFGjn","version":"2.0.2","distributionKind":"packaged","buildArch":"x64","buildPlatform":"linux","buildTarget":"unknown","buildTime":"2023-10-16T09:04:41.708Z","gitVersion":"5737e60cdbcd551f6a355b38fc9b5b6cc19ac5a4"}
1
+ {"segmentApiKey":"w4oPlEOrASGSSb7oSF6EAVhdTF3JeGP9","version":"2.1.1","distributionKind":"packaged","buildArch":"x64","buildPlatform":"linux","buildTarget":"unknown","buildTime":"2023-12-05T09:23:18.437Z","gitVersion":"c7e70b65988d21c9020abf2bbd253a94b1d3316c"}
package/lib/cli-repl.js CHANGED
@@ -30,6 +30,7 @@ const path_1 = __importDefault(require("path"));
30
30
  const util_1 = require("util");
31
31
  const get_os_info_1 = require("./get-os-info");
32
32
  const update_notification_manager_1 = require("./update-notification-manager");
33
+ const startup_timing_1 = require("./startup-timing");
33
34
  const CONNECTING = 'cli-repl.cli-repl.connecting';
34
35
  class CliRepl {
35
36
  constructor(options) {
@@ -119,8 +120,10 @@ class CliRepl {
119
120
  var _a, _b, _c, _d, _e, _f;
120
121
  const { version } = require('../package.json');
121
122
  await this.verifyNodeVersion();
123
+ (0, startup_timing_1.markTime)(types_1.TimingCategories.REPLInstantiation, 'verified node version');
122
124
  this.isContainerizedEnvironment =
123
125
  await this.getIsContainerizedEnvironment();
126
+ (0, startup_timing_1.markTime)(types_1.TimingCategories.REPLInstantiation, 'checked containerized environment');
124
127
  if (!this.cliOptions.nodb) {
125
128
  const cs = new mongodb_connection_string_url_1.default(driverUri);
126
129
  const searchParams = cs.typedSearchParams();
@@ -139,17 +142,21 @@ class CliRepl {
139
142
  catch (err) {
140
143
  this.warnAboutInaccessibleFile(err);
141
144
  }
145
+ (0, startup_timing_1.markTime)(types_1.TimingCategories.REPLInstantiation, 'ensured shell homedir');
142
146
  await this.logManager.cleanupOldLogfiles();
147
+ (0, startup_timing_1.markTime)(types_1.TimingCategories.Logging, 'cleaned up log files');
143
148
  const logger = await this.logManager.createLogWriter();
144
149
  if (!this.cliOptions.quiet) {
145
150
  this.output.write(`Current Mongosh Log ID:\t${logger.logId}\n`);
146
151
  }
147
152
  this.logWriter = logger;
153
+ (0, startup_timing_1.markTime)(types_1.TimingCategories.Logging, 'instantiated log writer');
148
154
  logger.info('MONGOSH', (0, mongodb_log_writer_1.mongoLogId)(1000000000), 'log', 'Starting log', {
149
155
  execPath: process.execPath,
150
156
  envInfo: (0, history_2.redactSensitiveData)(this.getLoggedEnvironmentVariables()),
151
157
  ...(await (0, build_info_1.buildInfo)()),
152
158
  });
159
+ (0, startup_timing_1.markTime)(types_1.TimingCategories.Logging, 'logged initial message');
153
160
  let analyticsSetupError = null;
154
161
  try {
155
162
  await this.setupAnalytics();
@@ -157,12 +164,14 @@ class CliRepl {
157
164
  catch (err) {
158
165
  analyticsSetupError = err;
159
166
  }
167
+ (0, startup_timing_1.markTime)(types_1.TimingCategories.Telemetry, 'created analytics instance');
160
168
  (0, logging_1.setupLoggerAndTelemetry)(this.bus, logger, this.toggleableAnalytics, {
161
169
  platform: process.platform,
162
170
  arch: process.arch,
163
171
  is_containerized: this.isContainerizedEnvironment,
164
172
  ...(await (0, get_os_info_1.getOsInfo)()),
165
173
  }, version);
174
+ (0, startup_timing_1.markTime)(types_1.TimingCategories.Telemetry, 'completed telemetry setup');
166
175
  if (analyticsSetupError) {
167
176
  this.bus.emit('mongosh:error', analyticsSetupError, 'analytics');
168
177
  }
@@ -173,6 +182,7 @@ class CliRepl {
173
182
  this.warnAboutInaccessibleFile(err);
174
183
  }
175
184
  this.globalConfig = await this.loadGlobalConfigFile();
185
+ (0, startup_timing_1.markTime)(types_1.TimingCategories.UserConfigLoading, 'read global config files');
176
186
  void this.fetchMongoshUpdateUrl();
177
187
  if (driverOptions.autoEncryption) {
178
188
  const origExtraOptions = (_a = driverOptions.autoEncryption.extraOptions) !== null && _a !== void 0 ? _a : {};
@@ -195,6 +205,7 @@ class CliRepl {
195
205
  delete driverOptions.autoEncryption;
196
206
  }
197
207
  driverOptions = await this.prepareOIDCOptions(driverOptions);
208
+ (0, startup_timing_1.markTime)(types_1.TimingCategories.DriverSetup, 'prepared OIDC options');
198
209
  let initialServiceProvider;
199
210
  try {
200
211
  initialServiceProvider = await this.connect(driverUri, driverOptions);
@@ -208,7 +219,9 @@ class CliRepl {
208
219
  }
209
220
  throw err;
210
221
  }
222
+ (0, startup_timing_1.markTime)(types_1.TimingCategories.DriverSetup, 'completed SP setup');
211
223
  const initialized = await this.mongoshRepl.initialize(initialServiceProvider, await this.getMoreRecentMongoshVersion());
224
+ (0, startup_timing_1.markTime)(types_1.TimingCategories.REPLInstantiation, 'initialized mongosh repl');
212
225
  this.injectReplFunctions();
213
226
  const commandLineLoadFiles = (_e = this.cliOptions.fileNames) !== null && _e !== void 0 ? _e : [];
214
227
  const evalScripts = (_f = this.cliOptions.eval) !== null && _f !== void 0 ? _f : [];
@@ -235,8 +248,13 @@ class CliRepl {
235
248
  instanceState: this.mongoshRepl.runtimeState().instanceState,
236
249
  loadExternalCode: this.mongoshRepl.loadExternalCode.bind(this.mongoshRepl),
237
250
  });
251
+ (0, startup_timing_1.markTime)(types_1.TimingCategories.REPLInstantiation, 'set up editor');
238
252
  if (willExecuteCommandLineScripts) {
239
253
  this.mongoshRepl.setIsInteractive(willEnterInteractiveMode);
254
+ this.bus.emit('mongosh:start-session', {
255
+ isInteractive: false,
256
+ timings: (0, startup_timing_1.summariseTimingData)((0, startup_timing_1.getTimingData)()),
257
+ });
240
258
  this.bus.emit('mongosh:start-loading-cli-scripts', {
241
259
  usesShellOption: !!this.cliOptions.shell,
242
260
  });
@@ -255,13 +273,22 @@ class CliRepl {
255
273
  this.mongoshRepl.setIsInteractive(true);
256
274
  }
257
275
  if (!this.cliOptions.norc) {
276
+ (0, startup_timing_1.markTime)(types_1.TimingCategories.SnippetLoading, 'start load snippets');
258
277
  await (snippetManager === null || snippetManager === void 0 ? void 0 : snippetManager.loadAllSnippets());
278
+ (0, startup_timing_1.markTime)(types_1.TimingCategories.SnippetLoading, 'done load snippets');
259
279
  }
280
+ (0, startup_timing_1.markTime)(types_1.TimingCategories.ResourceFileLoading, 'loading rc files');
260
281
  await this.loadRcFiles();
282
+ (0, startup_timing_1.markTime)(types_1.TimingCategories.ResourceFileLoading, 'loaded rc files');
261
283
  this.verifyPlatformSupport();
262
284
  this.setTelemetryEnabled(await this.getConfig('enableTelemetry'));
263
285
  this.bus.emit('mongosh:start-mongosh-repl', { version });
286
+ (0, startup_timing_1.markTime)(types_1.TimingCategories.REPLInstantiation, 'starting repl');
264
287
  await this.mongoshRepl.startRepl(initialized);
288
+ this.bus.emit('mongosh:start-session', {
289
+ isInteractive: true,
290
+ timings: (0, startup_timing_1.summariseTimingData)((0, startup_timing_1.getTimingData)()),
291
+ });
265
292
  }
266
293
  injectReplFunctions() {
267
294
  const functions = {
@@ -296,12 +323,15 @@ class CliRepl {
296
323
  },
297
324
  axiosRetryConfig: { retries: 0 },
298
325
  });
299
- this.toggleableAnalytics = new logging_1.ToggleableAnalytics(new logging_1.ThrottledAnalytics({
300
- target: this.segmentAnalytics,
301
- throttle: {
302
- rate: 30,
303
- metadataPath: this.shellHomeDirectory.paths.shellLocalDataPath,
304
- },
326
+ this.toggleableAnalytics = new logging_1.ToggleableAnalytics(new logging_1.SampledAnalytics({
327
+ target: new logging_1.ThrottledAnalytics({
328
+ target: this.segmentAnalytics,
329
+ throttle: {
330
+ rate: 30,
331
+ metadataPath: this.shellHomeDirectory.paths.shellLocalDataPath,
332
+ },
333
+ }),
334
+ sampling: () => !!process.env.MONGOSH_ANALYTICS_SAMPLE || Math.random() <= 0.01,
305
335
  }));
306
336
  }
307
337
  setTelemetryEnabled(enabled) {
@@ -319,10 +349,12 @@ class CliRepl {
319
349
  let lastEvalResult;
320
350
  let exitCode = 0;
321
351
  try {
352
+ (0, startup_timing_1.markTime)(types_1.TimingCategories.Eval, 'start eval scripts');
322
353
  for (const script of evalScripts) {
323
354
  this.bus.emit('mongosh:eval-cli-script');
324
355
  lastEvalResult = await this.mongoshRepl.loadExternalCode(script, '@(shell eval)');
325
356
  }
357
+ (0, startup_timing_1.markTime)(types_1.TimingCategories.Eval, 'finished eval scripts');
326
358
  }
327
359
  catch (err) {
328
360
  exitCode = 1;
@@ -349,12 +381,15 @@ class CliRepl {
349
381
  }
350
382
  this.output.write(formattedResult + '\n');
351
383
  }
384
+ (0, startup_timing_1.markTime)(types_1.TimingCategories.Eval, 'wrote eval output');
385
+ (0, startup_timing_1.markTime)(types_1.TimingCategories.EvalFile, 'start loading external files');
352
386
  for (const file of files) {
353
387
  if (!this.cliOptions.quiet) {
354
388
  this.output.write(`Loading file: ${this.clr(file, 'mongosh:filename')}\n`);
355
389
  }
356
390
  await this.mongoshRepl.loadExternalFile(file);
357
391
  }
392
+ (0, startup_timing_1.markTime)(types_1.TimingCategories.EvalFile, 'finished external files');
358
393
  return exitCode;
359
394
  }
360
395
  async loadRcFiles() {
@@ -602,6 +637,7 @@ class CliRepl {
602
637
  }
603
638
  async close() {
604
639
  var _a, _b;
640
+ (0, startup_timing_1.markTime)(types_1.TimingCategories.REPLInstantiation, 'start closing');
605
641
  if (this.closing) {
606
642
  return;
607
643
  }
@@ -617,6 +653,7 @@ class CliRepl {
617
653
  await new Promise((resolve) => this.output.write('', resolve));
618
654
  }
619
655
  }
656
+ (0, startup_timing_1.markTime)(types_1.TimingCategories.REPLInstantiation, 'output flushed');
620
657
  this.closing = true;
621
658
  const analytics = this.toggleableAnalytics;
622
659
  let flushError = null;
@@ -625,6 +662,7 @@ class CliRepl {
625
662
  const flushStart = Date.now();
626
663
  try {
627
664
  await (0, util_1.promisify)(analytics.flush.bind(analytics))();
665
+ (0, startup_timing_1.markTime)(types_1.TimingCategories.Telemetry, 'flushed analytics');
628
666
  }
629
667
  catch (err) {
630
668
  flushError = err.message;
@@ -638,6 +676,7 @@ class CliRepl {
638
676
  flushDuration,
639
677
  });
640
678
  await ((_b = this.logWriter) === null || _b === void 0 ? void 0 : _b.flush());
679
+ (0, startup_timing_1.markTime)(types_1.TimingCategories.Logging, 'flushed log writer');
641
680
  this.bus.emit('mongosh:closed');
642
681
  }
643
682
  async exit(code) {
@@ -1 +1 @@
1
- {"version":3,"file":"cli-repl.js","sourceRoot":"","sources":["../src/cli-repl.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli-repl.js","sourceRoot":"","sources":["../src/cli-repl.ts"],"names":[],"mappings":"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"}
package/lib/constants.js CHANGED
@@ -23,6 +23,7 @@ exports.USAGE = `
23
23
  -f, --file [arg] ${i18n_1.default.__('cli-repl.args.file')}
24
24
  --host [arg] ${i18n_1.default.__('cli-repl.args.host')}
25
25
  --port [arg] ${i18n_1.default.__('cli-repl.args.port')}
26
+ --build-info ${i18n_1.default.__('cli-repl.args.buildInfo')}
26
27
  --version ${i18n_1.default.__('cli-repl.args.version')}
27
28
  --quiet ${i18n_1.default.__('cli-repl.args.quiet')}
28
29
  --shell ${i18n_1.default.__('cli-repl.args.shell')}
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"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"}
@@ -240,7 +240,7 @@ function dateInspect(depth, options) {
240
240
  if (isNaN(this.valueOf())) {
241
241
  return options.stylize('Invalid Date', 'date');
242
242
  }
243
- return `ISODate("${this.toISOString()}")`;
243
+ return `ISODate('${this.toISOString()}')`;
244
244
  }
245
245
  function inspect(output, options) {
246
246
  var _a, _b;
@@ -43,6 +43,7 @@ const constants_1 = require("./constants");
43
43
  const format_output_1 = __importStar(require("./format-output"));
44
44
  const js_multiline_to_singleline_1 = require("@mongosh/js-multiline-to-singleline");
45
45
  const line_by_line_input_1 = require("./line-by-line-input");
46
+ const startup_timing_1 = require("./startup-timing");
46
47
  class MongoshNodeRepl {
47
48
  constructor(options) {
48
49
  this.inspectCompact = 0;
@@ -71,9 +72,10 @@ class MongoshNodeRepl {
71
72
  async initialize(serviceProvider, moreRecentMongoshVersion) {
72
73
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
73
74
  const instanceState = new shell_api_1.ShellInstanceState(serviceProvider, this.bus, this.shellCliOptions);
74
- const shellEvaluator = new shell_evaluator_1.ShellEvaluator(instanceState, (value) => value);
75
+ const shellEvaluator = new shell_evaluator_1.ShellEvaluator(instanceState, (value) => value, startup_timing_1.markTime);
75
76
  instanceState.setEvaluationListener(this);
76
77
  await instanceState.fetchConnectionInfo();
78
+ (0, startup_timing_1.markTime)(types_1.TimingCategories.REPLInstantiation, 'fetched connection info');
77
79
  const { buildInfo, extraInfo } = instanceState.connectionInfo;
78
80
  let mongodVersion = (extraInfo === null || extraInfo === void 0 ? void 0 : extraInfo.is_stream)
79
81
  ? 'Atlas Stream Processing'
@@ -86,6 +88,7 @@ class MongoshNodeRepl {
86
88
  }
87
89
  await this.greet(mongodVersion, moreRecentMongoshVersion);
88
90
  await this.printBasicConnectivityWarning(instanceState);
91
+ (0, startup_timing_1.markTime)(types_1.TimingCategories.REPLInstantiation, 'greeted');
89
92
  this.inspectCompact =
90
93
  (_c = (await this.getConfig('inspectCompact'))) !== null && _c !== void 0 ? _c : this.inspectCompact;
91
94
  this.inspectDepth =
@@ -94,6 +97,7 @@ class MongoshNodeRepl {
94
97
  (_e = (await this.getConfig('showStackTraces'))) !== null && _e !== void 0 ? _e : this.showStackTraces;
95
98
  this.redactHistory =
96
99
  (_f = (await this.getConfig('redactHistory'))) !== null && _f !== void 0 ? _f : this.redactHistory;
100
+ (0, startup_timing_1.markTime)(types_1.TimingCategories.UserConfigLoading, 'fetched config vars');
97
101
  const repl = asyncRepl.start({
98
102
  start: require('pretty-repl').start,
99
103
  input: this.lineByLineInput,
@@ -183,6 +187,7 @@ class MongoshNodeRepl {
183
187
  },
184
188
  });
185
189
  repl.line = '';
190
+ (0, startup_timing_1.markTime)(types_1.TimingCategories.REPLInstantiation, 'created repl object');
186
191
  const historyFile = this.ioProvider.getHistoryFilePath();
187
192
  try {
188
193
  await (0, util_1.promisify)(repl.setupHistory).call(repl, historyFile);
@@ -218,6 +223,7 @@ class MongoshNodeRepl {
218
223
  const warn = new errors_1.MongoshWarning('Error processing history file: ' + (err === null || err === void 0 ? void 0 : err.message));
219
224
  this.output.write(this.writer(warn) + '\n');
220
225
  }
226
+ (0, startup_timing_1.markTime)(types_1.TimingCategories.UserConfigLoading, 'set up history file');
221
227
  repl.on(asyncRepl.evalStart, () => {
222
228
  this.bus.emit('mongosh:evaluate-started');
223
229
  });
@@ -232,9 +238,9 @@ class MongoshNodeRepl {
232
238
  if (!this.shellCliOptions.nodb && !this.shellCliOptions.quiet) {
233
239
  const { shellApi } = instanceState;
234
240
  const banners = await Promise.all([
235
- (async () => await shellApi.show('startupWarnings'))(),
236
- (async () => await shellApi.show('automationNotices'))(),
237
- (async () => await shellApi.show('nonGenuineMongoDBCheck'))(),
241
+ (async () => await shellApi._untrackedShow('startupWarnings'))(),
242
+ (async () => await shellApi._untrackedShow('automationNotices'))(),
243
+ (async () => await shellApi._untrackedShow('nonGenuineMongoDBCheck'))(),
238
244
  ]);
239
245
  for (const banner of banners) {
240
246
  if (banner.value) {
@@ -242,6 +248,7 @@ class MongoshNodeRepl {
242
248
  }
243
249
  }
244
250
  }
251
+ (0, startup_timing_1.markTime)(types_1.TimingCategories.REPLInstantiation, 'finished initialization');
245
252
  return { __initialized: 'yes' };
246
253
  }
247
254
  async startRepl(_initializationToken) {
@@ -288,6 +295,7 @@ class MongoshNodeRepl {
288
295
  this.output.write(text + '\n' + this.formatError(err) + '\n');
289
296
  }
290
297
  async eval(originalEval, input, context, filename) {
298
+ (0, startup_timing_1.markTime)(types_1.TimingCategories.Eval, 'start repl eval');
291
299
  if (!this.insideAutoCompleteOrGetPrompt) {
292
300
  this.lineByLineInput.enableBlockOnNewLine();
293
301
  }
@@ -319,12 +327,14 @@ class MongoshNodeRepl {
319
327
  throw err;
320
328
  }
321
329
  finally {
330
+ (0, startup_timing_1.markTime)(types_1.TimingCategories.Eval, 'done repl eval');
322
331
  if (!this.insideAutoCompleteOrGetPrompt && !interrupted) {
323
332
  repl.setPrompt(await this.getShellPrompt());
324
333
  }
325
334
  if (this.loadNestingLevel <= 1) {
326
335
  this.bus.emit('mongosh:eval-complete');
327
336
  }
337
+ (0, startup_timing_1.markTime)(types_1.TimingCategories.Eval, 're-set prompt');
328
338
  }
329
339
  }
330
340
  async onLoad(filename) {
@@ -1 +1 @@
1
- {"version":3,"file":"mongosh-repl.js","sourceRoot":"","sources":["../src/mongosh-repl.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mongosh-repl.js","sourceRoot":"","sources":["../src/mongosh-repl.ts"],"names":[],"mappings":"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"}
package/lib/run.js CHANGED
@@ -16,6 +16,7 @@ function enableFipsIfRequested() {
16
16
  }
17
17
  }
18
18
  enableFipsIfRequested();
19
+ const startup_timing_1 = require("./startup-timing");
19
20
  const cli_repl_1 = require("./cli-repl");
20
21
  const arg_parser_1 = require("./arg-parser");
21
22
  const smoke_tests_1 = require("./smoke-tests");
@@ -31,6 +32,7 @@ const stream_1 = require("stream");
31
32
  const crypto_1 = __importDefault(require("crypto"));
32
33
  const net_1 = __importDefault(require("net"));
33
34
  const v8_1 = __importDefault(require("v8"));
35
+ const types_1 = require("@mongosh/types");
34
36
  if ((_b = (_a = v8_1.default === null || v8_1.default === void 0 ? void 0 : v8_1.default.startupSnapshot) === null || _a === void 0 ? void 0 : _a.isBuildingSnapshot) === null || _b === void 0 ? void 0 : _b.call(_a)) {
35
37
  require('@mongodb-js/saslprep');
36
38
  require('socks');
@@ -44,6 +46,7 @@ if ((_b = (_a = v8_1.default === null || v8_1.default === void 0 ? void 0 : v8_1
44
46
  }
45
47
  v8_1.default.startupSnapshot.setDeserializeMainFunction(() => {
46
48
  enableFipsIfRequested();
49
+ (0, startup_timing_1.markTime)(types_1.TimingCategories.Snapshot, 'loaded pre-snapshot deps');
47
50
  void main();
48
51
  });
49
52
  }
@@ -52,6 +55,7 @@ else {
52
55
  }
53
56
  async function main() {
54
57
  var _a;
58
+ (0, startup_timing_1.markTime)(types_1.TimingCategories.Main, 'entered main');
55
59
  if (process.env.MONGOSH_RUN_NODE_SCRIPT) {
56
60
  process.argv.splice(1, 1);
57
61
  require('module').runMain(process.argv[1]);
@@ -89,7 +93,7 @@ async function main() {
89
93
  return;
90
94
  }
91
95
  if (options.version) {
92
- console.log((await (0, build_info_1.buildInfo)()).version);
96
+ console.log((0, build_info_1.baseBuildInfo)().version);
93
97
  return;
94
98
  }
95
99
  if (options.buildInfo) {
@@ -156,6 +160,7 @@ async function main() {
156
160
  shellHomePaths: shellHomePaths,
157
161
  globalConfigPaths: globalConfigPaths,
158
162
  });
163
+ (0, startup_timing_1.markTime)(types_1.TimingCategories.REPLInstantiation, 'entering repl.start()');
159
164
  await repl.start(connectionInfo.connectionString, {
160
165
  productName: 'MongoDB Shell',
161
166
  productDocsLink: 'https://www.mongodb.com/docs/mongodb-shell/',
package/lib/run.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"run.js","sourceRoot":"","sources":["../src/run.ts"],"names":[],"mappings":";;;;;;AAAA,IAAI,SAA4B,CAAC;AACjC,SAAS,qBAAqB;IAC5B,IAAI,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE;QAI1C,IAAI;YACF,OAAO,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;SAC9B;QAAC,OAAO,GAAQ,EAAE;YACjB,SAAS,aAAT,SAAS,cAAT,SAAS,IAAT,SAAS,GAAK,GAAG,EAAC;SACnB;KACF;AACH,CAAC;AACD,qBAAqB,EAAE,CAAC;AAExB,yCAAqC;AACrC,6CAA4C;AAC5C,+CAA8C;AAC9C,2CAAoC;AACpC,6CAAyC;AACzC,yDAA2E;AAC3E,+DAA6D;AAC7D,yEAAuE;AACvE,8CAAwD;AACxD,oDAAwE;AACxE,gEAAwC;AACxC,mCAAqC;AACrC,oDAA4B;AAC5B,8CAAsB;AACtB,4CAAoB;AAGpB,IAAI,MAAA,MAAC,YAAU,aAAV,YAAE,uBAAF,YAAE,CAAU,eAAe,0CAAE,kBAAkB,kDAAI,EAAE;IAGxD,OAAO,CAAC,sBAAsB,CAAC,CAAC;IAChC,OAAO,CAAC,OAAO,CAAC,CAAC;IACjB,OAAO,CAAC,WAAW,CAAC,CAAC;IAErB;QACE,MAAM,OAAO,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;QACnC,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC;QACnC,YAAU,CAAC,eAAe,CAAC,sBAAsB,CAAC,GAAG,EAAE;YACtD,OAAO,CAAC,OAAO,GAAG,WAAW,CAAC;QAChC,CAAC,CAAC,CAAC;KACJ;IAEA,YAAU,CAAC,eAAe,CAAC,0BAA0B,CAAC,GAAG,EAAE;QAC1D,qBAAqB,EAAE,CAAC;QACxB,KAAK,IAAI,EAAE,CAAC;IACd,CAAC,CAAC,CAAC;CACJ;KAAM;IACL,KAAK,IAAI,EAAE,CAAC;CACb;AAGD,KAAK,UAAU,IAAI;;IACjB,IAAI,OAAO,CAAC,GAAG,CAAC,uBAAuB,EAAE;QAGvC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAGzB,OAAO,CAAC,QAAQ,CAAC,CAAC,OAAe,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QACpD,OAAO;KACR;IAED,IAAI,IAAI,CAAC;IACT,IAAI,sBAAsB,GAAG,KAAK,CAAC;IACnC,IAAI;QACF,MAAC,aAAW,aAAX,aAAG,uBAAH,aAAG,CAAU,0BAA0B,8DAAG,IAAI,CAAC,CAAC;QAEjD,MAAM,OAAO,GAAG,IAAA,yBAAY,EAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC3C,KAAK,MAAM,OAAO,IAAI,OAAO,CAAC,iBAAiB,EAAE;YAC/C,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;SACvB;QAED,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;QAE/C,IAAI,OAAO,CAAC,WAAW,EAAE;YACvB,IAAI,CAAC,SAAS,IAAI,CAAC,gBAAM,CAAC,OAAO,EAAE,EAAE;gBAMnC,SAAS,GAAG,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;aAClE;YACD,IAAI,SAAS,EAAE;gBAGb,IAAI,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,mBAAmB,EAAE;oBAChD,OAAO,CAAC,KAAK,CACX,iFAAiF,CAClF,CAAC;oBACF,OAAO,CAAC,KAAK,CACX,6EAA6E,CAC9E,CAAC;iBACH;qBAAM;oBACL,OAAO,CAAC,KAAK,CACX,0EAA0E,CAC3E,CAAC;oBACF,OAAO,CAAC,KAAK,CACX,+EAA+E,CAChF,CAAC;iBACH;gBACD,OAAO,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;gBAChC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;gBACzB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;aACjB;SACF;QAED,IAAI,OAAO,CAAC,IAAI,EAAE;YAChB,OAAO,CAAC,GAAG,CAAC,iBAAK,CAAC,CAAC;YACnB,OAAO;SACR;QAED,IAAI,OAAO,CAAC,OAAO,EAAE;YACnB,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,IAAA,sBAAS,GAAE,CAAC,CAAC,OAAO,CAAC,CAAC;YACzC,OAAO;SACR;QACD,IAAI,OAAO,CAAC,SAAS,EAAE;YACrB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,IAAA,sBAAS,GAAE,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;YAC3D,OAAO;SACR;QACD,IAAI,OAAO,CAAC,UAAU,EAAE;YACtB,MAAM,eAAe,GAAG,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC;YAC9D,MAAM,gBAAgB,GAAG,OAAO,CAAC,kBAAkB;gBACjD,CAAC,CAAC,CAAC,wBAAwB,OAAO,CAAC,kBAAkB,EAAE,CAAC;gBACxD,CAAC,CAAC,EAAE,CAAC;YACP,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE;gBAExC,MAAM,IAAA,2BAAa,EACjB,eAAe,EACf,OAAO,CAAC,QAAQ,EAChB,GAAG,gBAAgB,CACpB,CAAC;aACH;iBAAM;gBAEL,MAAM,IAAA,2BAAa,EACjB,eAAe,EACf,OAAO,CAAC,QAAQ,EAChB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EACf,GAAG,gBAAgB,CACpB,CAAC;aACH;YACD,OAAO;SACR;QAED,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE;YAGxC,OAAO,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC;SACvC;QAGD,IAAI,OAAO,CAAC,GAAG,CAAC,sBAAsB,EAAE;YACtC,OAAO,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;SACtC;QAID,sBAAsB;YACpB,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,sCAAsC,CAAC;QACvD,IACE,CAAC,CAAC,OAAO,CAAC,mBAAmB;YAC3B,OAAO,CAAC,QAAQ,KAAK,OAAO;YAC5B,OAAO,CAAC,KAAK,CAAC,KAAK;YACnB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;YACvB,sBAAsB,EACtB;YACA,IAAI;gBACF,sBAAsB,KAAtB,sBAAsB,GACpB,OAAO,CAAC,0BAA0B,CAAC,EAAE,CAAC,MAAM,KAAK,CAAC,EAAC;aACtD;YAAC,WAAM;aAEP;YACD,IAAI,sBAAsB,EAAE;gBAC1B,MAAM,MAAM,GAAG,MAAM,GAAG,CACtB,4EAA4E,CAC7E,CAAC;gBACF,IAAI,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;oBACxB,OAAO,CAAC,mBAAmB,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;iBAC7C;aACF;SACF;QAED,MAAM,cAAc,GAAG,IAAA,8CAAiC,EAAC,OAAO,CAAC,CAAC;QAClE,cAAc,CAAC,aAAa,GAAG;YAC7B,GAAG,cAAc,CAAC,aAAa;YAC/B,GAAG,IAAA,oDAAyB,EAAC,OAAO,CAAC,sBAAsB,CAAC;YAC5D,UAAU,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE;SACzC,CAAC;QAEF,MAAM,KAAK,GAAG,WAAW,IAAA,8BAAoB,EAC3C,cAAc,CAAC,gBAAgB,CAChC,EAAE,CAAC;QACJ,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC;QACtB,sBAAsB,CAAC,KAAK,CAAC,CAAC;QAE9B,MAAM,cAAc,GAAG,IAAA,kCAAe,GAAE,CAAC;QACzC,MAAM,iBAAiB,GAAG,IAAA,uCAAoB,GAAE,CAAC;QACjD,IAAI,GAAG,IAAI,kBAAO,CAAC;YACjB,eAAe,EAAE;gBACf,GAAG,OAAO;aACX;YACD,oBAAoB,EAApB,0CAAoB;YACpB,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,MAAM,EAAE,OAAO,CAAC,MAAM;YAEtB,MAAM,EAAE,CAAC,IAAyB,EAAE,EAAE,CACpC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;YAC1D,cAAc,EAAE,cAAc;YAC9B,iBAAiB,EAAE,iBAAiB;SACrC,CAAC,CAAC;QACH,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,gBAAgB,EAAE;YAChD,WAAW,EAAE,eAAe;YAC5B,eAAe,EAAE,6CAA6C;YAC9D,GAAG,cAAc,CAAC,aAAa;SAChC,CAAC,CAAC;KACJ;IAAC,OAAO,CAAM,EAAE;QACf,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,IAAI,KAAK,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,OAAO,EAAE,CAAC,CAAC;QAC3C,IAAI,IAAI,KAAK,SAAS,EAAE;YACtB,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC,EAAE,SAAS,CAAC,CAAC;SAC9C;QACD,IAAI,sBAAsB,EAAE;YAI1B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC;YAChD,MAAM,IAAA,sBAAY,EAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;YACrE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;SAC5B;QACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;KACjB;AACH,CAAC;AAQD,SAAS,sBAAsB,CAAC,KAAa;;IAC3C,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE;QACzB,OAAO;KACR;IAGD,MAAM,IAAI,GAAG,MAAA,OAAO,CAAC,GAAG,CAAC,IAAI,mCAAI,EAAE,CAAC;IACpC,IAAI,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;QACpC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,KAAK,QAAQ,CAAC,CAAC;KACjD;SAAM,IAAI,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;QAC/B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,KAAK,UAAU,CAAC,CAAC;KACjD;AACH,CAAC;AASD,KAAK,UAAU,GAAG,CAAC,MAAc;IAG/B,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,oBAAW,EAAE,CAAC,CAAC;IACxD,IAAI;QACF,MAAM,EAAE,eAAe,EAAE,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;QAChD,MAAM,iBAAiB,GAAG,eAAe,CAAC;YACxC,KAAK,EAAE,SAAS;YAChB,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,MAAM;SACP,CAAC,CAAC;QACH,iBAAiB,CAAC,MAAM,EAAE,CAAC;QAE3B,IAAI,KAAK,EAAE,MAAM,IAAI,IAAI,iBAAiB,EAAE;YAC1C,OAAO,IAAI,CAAC;SACb;QACD,OAAO,EAAE,CAAC;KACX;YAAS;QACR,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;KACjC;AACH,CAAC"}
1
+ {"version":3,"file":"run.js","sourceRoot":"","sources":["../src/run.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import { type TimingCategory } from '@mongosh/types';
2
+ export declare function summariseTimingData(timingData: [string | TimingCategory, string, number][]): {
3
+ [key: string]: number;
4
+ };
5
+ export declare const markTime: (category: TimingCategory, label: string) => void;
6
+ export declare const getTimingData: () => [string, string, number][];
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getTimingData = exports.markTime = exports.summariseTimingData = void 0;
4
+ const types_1 = require("@mongosh/types");
5
+ const jsTimingEntries = [];
6
+ function linkTimingInterface() {
7
+ const boxedNode = process.boxednode;
8
+ if (boxedNode) {
9
+ return {
10
+ markTime: boxedNode.markTime,
11
+ getTimingData: boxedNode.getTimingData,
12
+ };
13
+ }
14
+ return {
15
+ markTime: (category, label) => jsTimingEntries.push([category, label, process.hrtime.bigint()]),
16
+ getTimingData: () => {
17
+ const data = jsTimingEntries.sort((a, b) => Number(a[2] - b[2]));
18
+ return data.map(([category, label, time]) => [
19
+ category,
20
+ label,
21
+ Number(time - data[0][2]),
22
+ ]);
23
+ },
24
+ };
25
+ }
26
+ function summariseTimingData(timingData) {
27
+ const durationByCategory = new Map();
28
+ let lastTimestamp = 0;
29
+ for (const [category, _, time] of timingData) {
30
+ const durationInNs = time - lastTimestamp;
31
+ const durationInMs = durationInNs / 1000000;
32
+ const durationSum = (durationByCategory.get(category) || 0) + durationInMs;
33
+ durationByCategory.set(category, durationSum);
34
+ lastTimestamp = time;
35
+ }
36
+ return Object.fromEntries(durationByCategory.entries());
37
+ }
38
+ exports.summariseTimingData = summariseTimingData;
39
+ const timing = linkTimingInterface();
40
+ exports.markTime = timing.markTime;
41
+ exports.getTimingData = timing.getTimingData;
42
+ if (process.env.MONGOSH_SHOW_TIMING_DATA) {
43
+ process.on('exit', function () {
44
+ const rawTimingData = (0, exports.getTimingData)();
45
+ if (process.env.MONGOSH_SHOW_TIMING_DATA === 'json') {
46
+ console.log(JSON.stringify(rawTimingData));
47
+ }
48
+ else {
49
+ console.table(rawTimingData.map(([category, label, time], i) => [
50
+ category,
51
+ label,
52
+ `${(time / 1000000).toFixed(2)}ms`,
53
+ i > 0
54
+ ? `+${((time - rawTimingData[i - 1][2]) / 1000000).toFixed(2)}ms`
55
+ : '',
56
+ ]));
57
+ }
58
+ });
59
+ }
60
+ (0, exports.markTime)(types_1.TimingCategories.REPLInstantiation, 'cli-repl timing initialized');
61
+ //# sourceMappingURL=startup-timing.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"startup-timing.js","sourceRoot":"","sources":["../src/startup-timing.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mongosh/cli-repl",
3
- "version": "2.0.2",
3
+ "version": "2.1.1",
4
4
  "description": "MongoDB Shell CLI REPL Package",
5
5
  "homepage": "https://github.com/mongodb-js/mongosh",
6
6
  "author": "Compass Team <compass@mongodb.com>",
@@ -57,27 +57,27 @@
57
57
  }
58
58
  },
59
59
  "dependencies": {
60
- "@mongosh/arg-parser": "2.0.2",
61
- "@mongosh/autocomplete": "2.0.2",
62
- "@mongosh/editor": "2.0.2",
63
- "@mongosh/errors": "2.0.2",
64
- "@mongosh/history": "2.0.2",
65
- "@mongosh/i18n": "2.0.2",
66
- "@mongosh/js-multiline-to-singleline": "2.0.2",
67
- "@mongosh/logging": "2.0.2",
68
- "@mongosh/service-provider-core": "2.0.2",
69
- "@mongosh/service-provider-server": "2.0.2",
70
- "@mongosh/shell-api": "2.0.2",
71
- "@mongosh/shell-evaluator": "2.0.2",
72
- "@mongosh/snippet-manager": "2.0.2",
73
- "@mongosh/types": "2.0.2",
60
+ "@mongosh/arg-parser": "2.1.1",
61
+ "@mongosh/autocomplete": "2.1.1",
62
+ "@mongosh/editor": "2.1.1",
63
+ "@mongosh/errors": "2.1.1",
64
+ "@mongosh/history": "2.1.1",
65
+ "@mongosh/i18n": "2.1.1",
66
+ "@mongosh/js-multiline-to-singleline": "2.1.1",
67
+ "@mongosh/logging": "2.1.1",
68
+ "@mongosh/service-provider-core": "2.1.1",
69
+ "@mongosh/service-provider-server": "2.1.1",
70
+ "@mongosh/shell-api": "2.1.1",
71
+ "@mongosh/shell-evaluator": "2.1.1",
72
+ "@mongosh/snippet-manager": "2.1.1",
73
+ "@mongosh/types": "2.1.1",
74
74
  "analytics-node": "^5.1.2",
75
75
  "ansi-escape-sequences": "^5.1.2",
76
76
  "askcharacter": "^1.0.0",
77
77
  "askpassword": "^1.2.4",
78
78
  "is-recoverable-error": "^1.0.3",
79
79
  "js-yaml": "^4.1.0",
80
- "mongodb-connection-string-url": "^2.6.0",
80
+ "mongodb-connection-string-url": "^3.0.0",
81
81
  "mongodb-log-writer": "^1.4.0",
82
82
  "numeral": "^2.0.6",
83
83
  "pretty-repl": "^4.0.0",
@@ -113,5 +113,5 @@
113
113
  "mongodb-crypt-library-version": "^1.0.3",
114
114
  "win-export-certificate-and-key": "^1.1.1"
115
115
  },
116
- "gitHead": "5737e60cdbcd551f6a355b38fc9b5b6cc19ac5a4"
116
+ "gitHead": "c7e70b65988d21c9020abf2bbd253a94b1d3316c"
117
117
  }