mongodb-data-service 22.3.0 → 22.4.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.
@@ -1,4 +1,5 @@
1
1
  /// <reference types="node" />
2
+ /// <reference types="node" />
2
3
  import { EventEmitter } from 'events';
3
4
  import type { AggregateOptions, AggregationCursor, AnyBulkWriteOperation, BulkWriteOptions, BulkWriteResult, ClientSession, Collection, CountDocumentsOptions, CreateCollectionOptions, CreateIndexesOptions, DeleteOptions, DeleteResult, Document, EstimatedDocumentCountOptions, Filter, FindCursor, FindOneAndReplaceOptions, FindOneAndUpdateOptions, FindOptions, IndexSpecification, InsertManyResult, InsertOneOptions, InsertOneResult, MongoClientOptions, ServerClosedEvent, ReadPreferenceLike, ServerDescriptionChangedEvent, ServerHeartbeatFailedEvent, ServerHeartbeatSucceededEvent, ServerOpeningEvent, TopologyClosedEvent, TopologyDescription, TopologyDescriptionChangedEvent, TopologyOpeningEvent, TopologyType, UpdateFilter, UpdateOptions, UpdateResult } from 'mongodb';
4
5
  import ConnectionStringUrl from 'mongodb-connection-string-url';
@@ -10,19 +11,16 @@ import type { Callback, CollectionStats } from './types';
10
11
  import type { ConnectionStatusWithPrivileges } from './run-command';
11
12
  import type { CSFLECollectionTracker } from './csfle-collection-tracker';
12
13
  import * as mongodb from 'mongodb';
14
+ import { isCancelError } from '@mongodb-js/compass-utils';
13
15
  declare type ClientType = 'CRUD' | 'META';
14
16
  declare const kSessionClientType: unique symbol;
15
17
  interface CompassClientSession extends ClientSession {
16
18
  [kSessionClientType]: ClientType;
17
19
  }
18
- declare type AbortSignal = {
19
- readonly aborted: boolean;
20
- onabort: ((event: any) => void) | null;
21
- addEventListener: (type: string, listener: (event: any) => void, options: Record<string, unknown>) => void;
22
- removeEventListener: (type: string, listener: (event: any) => void) => void;
23
- };
24
- export declare type ExplainExecuteOptions = {
20
+ export declare type ExecutionOptions = {
25
21
  abortSignal?: AbortSignal;
22
+ };
23
+ export declare type ExplainExecuteOptions = ExecutionOptions & {
26
24
  explainVerbosity?: keyof typeof mongodb.ExplainVerbosity;
27
25
  };
28
26
  export interface DataServiceEventMap {
@@ -74,8 +72,8 @@ export interface DataService {
74
72
  name: string;
75
73
  }[]>;
76
74
  connect(): Promise<void>;
77
- estimatedCount(ns: string, options: EstimatedDocumentCountOptions, callback: Callback<number>): void;
78
- count(ns: string, filter: Filter<Document>, options: CountDocumentsOptions, callback: Callback<number>): void;
75
+ estimatedCount(ns: string, options?: EstimatedDocumentCountOptions, executionOptions?: ExecutionOptions): Promise<number>;
76
+ count(ns: string, filter: Filter<Document>, options?: CountDocumentsOptions, executionOptions?: ExecutionOptions): Promise<number>;
79
77
  createCollection(ns: string, options: CreateCollectionOptions, callback: Callback<Collection<Document>>): void;
80
78
  createIndex(ns: string, spec: IndexSpecification, options: CreateIndexesOptions, callback: Callback<string>): void;
81
79
  database(name: string, options: unknown, callback: Callback<Document>): void;
@@ -85,14 +83,13 @@ export interface DataService {
85
83
  dropCollection(ns: string, callback: Callback<boolean>): void;
86
84
  dropDatabase(name: string, callback: Callback<boolean>): void;
87
85
  dropIndex(ns: string, name: string, callback: Callback<Document>): void;
88
- aggregate(ns: string, pipeline: Document[], options?: AggregateOptions): AggregationCursor;
89
- aggregate(ns: string, pipeline: Document[], callback: Callback<AggregationCursor>): void;
90
- aggregate(ns: string, pipeline: Document[], options: AggregateOptions | undefined, callback: Callback<AggregationCursor>): void;
91
- find(ns: string, filter: Filter<Document>, options: FindOptions, callback: Callback<Document[]>): void;
92
- fetch(ns: string, filter: Filter<Document>, options: FindOptions): FindCursor;
86
+ aggregate(ns: string, pipeline: Document[], options?: AggregateOptions, executionOptions?: ExecutionOptions): Promise<Document[]>;
87
+ aggregateCursor(ns: string, pipeline: Document[], options?: AggregateOptions): AggregationCursor;
88
+ find(ns: string, filter: Filter<Document>, options?: FindOptions, executionOptions?: ExecutionOptions): Promise<Document[]>;
89
+ findCursor(ns: string, filter: Filter<Document>, options?: FindOptions): FindCursor;
93
90
  findOneAndReplace(ns: string, filter: Filter<Document>, replacement: Document, options: FindOneAndReplaceOptions, callback: Callback<Document>): void;
94
91
  findOneAndUpdate(ns: string, filter: Filter<Document>, update: Document, options: FindOneAndUpdateOptions, callback: Callback<Document>): void;
95
- explain(ns: string, filter: Filter<Document>, options: FindOptions, callback: Callback<Document>): void;
92
+ explainFind(ns: string, filter: Filter<Document>, options?: FindOptions, executionOptions?: ExplainExecuteOptions): Promise<Document>;
96
93
  explainAggregate(ns: string, pipeline: Document[], options: AggregateOptions, executionOptions?: ExplainExecuteOptions): Promise<Document>;
97
94
  indexes(ns: string, options: unknown, callback: Callback<Document[]>): void;
98
95
  instance(): Promise<InstanceDetails>;
@@ -116,11 +113,11 @@ export interface DataService {
116
113
  query?: Filter<Document>;
117
114
  size?: number;
118
115
  fields?: Document;
119
- }, options?: AggregateOptions): AggregationCursor;
116
+ }, options?: AggregateOptions, executionOptions?: ExecutionOptions): Promise<Document[]>;
120
117
  startSession(clientType: ClientType): CompassClientSession;
121
118
  killSessions(sessions: CompassClientSession | CompassClientSession[]): Promise<Document>;
122
119
  isConnected(): boolean;
123
- isOperationCancelledError(error: Error): boolean;
120
+ isCancelError(error: any): ReturnType<typeof isCancelError>;
124
121
  databaseStats(name: string): Promise<ReturnType<typeof adaptDatabaseInfo> & {
125
122
  name: string;
126
123
  }>;
@@ -176,8 +173,8 @@ export declare class DataServiceImpl extends EventEmitter implements DataService
176
173
  name: string;
177
174
  }[]>;
178
175
  connect(): Promise<void>;
179
- estimatedCount(ns: string, options: EstimatedDocumentCountOptions, callback: Callback<number>): void;
180
- count(ns: string, filter: Filter<Document>, options: CountDocumentsOptions, callback: Callback<number>): void;
176
+ estimatedCount(ns: string, options?: EstimatedDocumentCountOptions, executionOptions?: ExecutionOptions): Promise<number>;
177
+ count(ns: string, filter: Filter<Document>, options?: CountDocumentsOptions, executionOptions?: ExecutionOptions): Promise<number>;
181
178
  createCollection(ns: string, options: CreateCollectionOptions, callback: Callback<Collection<Document>>): void;
182
179
  createIndex(ns: string, spec: IndexSpecification, options: CreateIndexesOptions, callback: Callback<string>): void;
183
180
  database(name: string, options: unknown, callback: Callback<Document>): void;
@@ -187,14 +184,13 @@ export declare class DataServiceImpl extends EventEmitter implements DataService
187
184
  dropCollection(ns: string, callback: Callback<boolean>): void;
188
185
  dropDatabase(name: string, callback: Callback<boolean>): void;
189
186
  dropIndex(ns: string, name: string, callback: Callback<Document>): void;
190
- aggregate(ns: string, pipeline: Document[], options?: AggregateOptions): AggregationCursor;
191
- aggregate(ns: string, pipeline: Document[], callback: Callback<AggregationCursor>): void;
192
- aggregate(ns: string, pipeline: Document[], options: AggregateOptions | undefined, callback: Callback<AggregationCursor>): void;
193
- find(ns: string, filter: Filter<Document>, options: FindOptions, callback: Callback<Document[]>): void;
194
- fetch(ns: string, filter: Filter<Document>, options: FindOptions): FindCursor;
187
+ aggregateCursor(ns: string, pipeline: Document[], options?: AggregateOptions): AggregationCursor;
188
+ aggregate(ns: string, pipeline: Document[], options?: AggregateOptions, executionOptions?: ExecutionOptions): Promise<Document[]>;
189
+ find(ns: string, filter: Filter<Document>, options?: FindOptions, executionOptions?: ExecutionOptions): Promise<Document[]>;
190
+ findCursor(ns: string, filter: Filter<Document>, options?: FindOptions): FindCursor;
195
191
  findOneAndReplace(ns: string, filter: Filter<Document>, replacement: Document, options: FindOneAndReplaceOptions, callback: Callback<Document>): void;
196
192
  findOneAndUpdate(ns: string, filter: Filter<Document>, update: Document, options: FindOneAndUpdateOptions, callback: Callback<Document>): void;
197
- explain(ns: string, filter: Filter<Document>, options: FindOptions, callback: Callback<Document>): void;
193
+ explainFind(ns: string, filter: Filter<Document>, options?: FindOptions, executionOptions?: ExplainExecuteOptions): Promise<Document>;
198
194
  explainAggregate(ns: string, pipeline: Document[], options: AggregateOptions, executionOptions?: ExplainExecuteOptions): Promise<Document>;
199
195
  indexes(ns: string, options: unknown, callback: Callback<Document[]>): void;
200
196
  instance(): Promise<InstanceDetails>;
@@ -218,12 +214,12 @@ export declare class DataServiceImpl extends EventEmitter implements DataService
218
214
  query?: Filter<Document>;
219
215
  size?: number;
220
216
  fields?: Document;
221
- }, options?: AggregateOptions): AggregationCursor;
217
+ }, options?: AggregateOptions, executionOptions?: ExecutionOptions): Promise<Document[]>;
222
218
  startSession(clientType: ClientType): CompassClientSession;
223
219
  killSessions(sessions: CompassClientSession | CompassClientSession[]): Promise<Document>;
224
220
  isConnected(): boolean;
225
- isOperationCancelledError(error: Error): boolean;
226
221
  private cancellableOperation;
222
+ isCancelError(error: any): ReturnType<typeof isCancelError>;
227
223
  private setupListeners;
228
224
  private _initializedClient;
229
225
  getCSFLECollectionTracker(): CSFLECollectionTracker;
@@ -1 +1 @@
1
- {"version":3,"file":"data-service.d.ts","sourceRoot":"","sources":["../src/data-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"data-service.d.ts","sourceRoot":"","sources":["../src/data-service.ts"],"names":[],"mappings":"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"}
@@ -31,7 +31,6 @@ const util_1 = require("util");
31
31
  const async_1 = __importDefault(require("async"));
32
32
  const compass_logging_1 = __importDefault(require("@mongodb-js/compass-logging"));
33
33
  const events_1 = require("events");
34
- const lodash_1 = require("lodash");
35
34
  const mongodb_connection_string_url_1 = __importDefault(require("mongodb-connection-string-url"));
36
35
  const mongodb_ns_1 = __importDefault(require("mongodb-ns"));
37
36
  const instance_detail_helper_1 = require("./instance-detail-helper");
@@ -40,6 +39,7 @@ const connect_mongo_client_1 = __importStar(require("./connect-mongo-client"));
40
39
  const run_command_1 = require("./run-command");
41
40
  const csfle_collection_tracker_1 = require("./csfle-collection-tracker");
42
41
  const mongodb = __importStar(require("mongodb"));
42
+ const compass_utils_1 = require("@mongodb-js/compass-utils");
43
43
  let ClientEncryption;
44
44
  try {
45
45
  const { extension } = require('mongodb-client-encryption');
@@ -56,15 +56,6 @@ function uniqueBy(values, key) {
56
56
  function isEmptyObject(obj) {
57
57
  return Object.keys(obj).length === 0;
58
58
  }
59
- class DataServiceOperationCancelledError extends Error {
60
- constructor() {
61
- super('The operation was cancelled.');
62
- this.name = 'DataServiceOperationCancelledError';
63
- }
64
- static isOperationCancelledError(error) {
65
- return error.name === 'DataServiceOperationCancelledError';
66
- }
67
- }
68
59
  let id = 0;
69
60
  const kSessionClientType = Symbol('kSessionClientType');
70
61
  class DataServiceImpl extends events_1.EventEmitter {
@@ -320,19 +311,27 @@ class DataServiceImpl extends events_1.EventEmitter {
320
311
  this._isConnecting = false;
321
312
  }
322
313
  }
323
- estimatedCount(ns, options, callback) {
324
- const logop = this._startLogOp(mongoLogId(1001000034), 'Running estimatedCount', { ns });
325
- this._collection(ns, 'CRUD').estimatedDocumentCount(options, (err, result) => {
326
- logop(err, result);
327
- callback(err, result);
328
- });
329
- }
330
- count(ns, filter, options, callback) {
331
- const logop = this._startLogOp(mongoLogId(1001000035), 'Running countDocuments', { ns });
332
- this._collection(ns, 'CRUD').countDocuments(filter, options, (err, result) => {
333
- logop(err, result);
334
- callback(err, result);
335
- });
314
+ estimatedCount(ns, options = {}, executionOptions) {
315
+ log.info(mongoLogId(1001000034), this._logCtx(), 'Running estimatedCount', { ns });
316
+ let _session;
317
+ return this.cancellableOperation(async (session) => {
318
+ _session = session;
319
+ return this._collection(ns, 'CRUD').estimatedDocumentCount({
320
+ ...options,
321
+ session,
322
+ });
323
+ }, () => _session.endSession(), executionOptions === null || executionOptions === void 0 ? void 0 : executionOptions.abortSignal);
324
+ }
325
+ count(ns, filter, options = {}, executionOptions) {
326
+ log.info(mongoLogId(1001000035), this._logCtx(), 'Running countDocuments', { ns });
327
+ let _session;
328
+ return this.cancellableOperation(async (session) => {
329
+ _session = session;
330
+ return this._collection(ns, 'CRUD').countDocuments(filter, {
331
+ ...options,
332
+ session,
333
+ });
334
+ }, () => _session.endSession(), executionOptions === null || executionOptions === void 0 ? void 0 : executionOptions.abortSignal);
336
335
  }
337
336
  createCollection(ns, options, callback) {
338
337
  const collectionName = this._collectionName(ns);
@@ -444,38 +443,33 @@ class DataServiceImpl extends events_1.EventEmitter {
444
443
  callback(null, result);
445
444
  });
446
445
  }
447
- aggregate(ns, pipeline, options, callback) {
446
+ aggregateCursor(ns, pipeline, options = {}) {
448
447
  log.info(mongoLogId(1001000041), this._logCtx(), 'Running aggregation', {
449
448
  ns,
450
449
  stages: pipeline.map((stage) => Object.keys(stage)[0]),
451
450
  });
452
- if (typeof options === 'function') {
453
- callback = options;
454
- options = undefined;
455
- }
456
- const cursor = this._collection(ns, 'CRUD').aggregate(pipeline, options);
457
- if ((0, lodash_1.isFunction)(callback)) {
458
- process.nextTick(callback, null, cursor);
459
- return;
460
- }
461
- return cursor;
451
+ return this._collection(ns, 'CRUD').aggregate(pipeline, options);
462
452
  }
463
- find(ns, filter, options, callback) {
464
- const logop = this._startLogOp(mongoLogId(1001000042), 'Running find', {
465
- ns,
466
- });
467
- const cursor = this._collection(ns, 'CRUD').find(filter, options);
468
- cursor.toArray((error, documents) => {
469
- logop(error);
470
- if (error) {
471
- return callback(this._translateMessage(error));
472
- }
473
- callback(null, documents);
474
- });
453
+ aggregate(ns, pipeline, options = {}, executionOptions) {
454
+ let cursor;
455
+ return this.cancellableOperation(async (session) => {
456
+ cursor = this.aggregateCursor(ns, pipeline, { ...options, session });
457
+ const results = await cursor.toArray();
458
+ void cursor.close();
459
+ return results;
460
+ }, () => cursor === null || cursor === void 0 ? void 0 : cursor.close(), executionOptions === null || executionOptions === void 0 ? void 0 : executionOptions.abortSignal);
475
461
  }
476
- fetch(ns, filter, options) {
477
- const logop = this._startLogOp(mongoLogId(1001000043), 'Running raw find', { ns });
478
- logop(null);
462
+ find(ns, filter, options = {}, executionOptions) {
463
+ let cursor;
464
+ return this.cancellableOperation(async (session) => {
465
+ cursor = this.findCursor(ns, filter, { ...options, session });
466
+ const results = await cursor.toArray();
467
+ void cursor.close();
468
+ return results;
469
+ }, () => cursor === null || cursor === void 0 ? void 0 : cursor.close(), executionOptions === null || executionOptions === void 0 ? void 0 : executionOptions.abortSignal);
470
+ }
471
+ findCursor(ns, filter, options = {}) {
472
+ log.info(mongoLogId(1001000043), this._logCtx(), 'Running find', { ns });
479
473
  return this._collection(ns, 'CRUD').find(filter, options);
480
474
  }
481
475
  findOneAndReplace(ns, filter, replacement, options, callback) {
@@ -498,25 +492,28 @@ class DataServiceImpl extends events_1.EventEmitter {
498
492
  callback(null, result.value);
499
493
  });
500
494
  }
501
- explain(ns, filter, options, callback) {
502
- const logop = this._startLogOp(mongoLogId(1001000046), 'Running find explain', { ns });
503
- this._collection(ns, 'CRUD')
504
- .find(filter, options)
505
- .explain((error, explanation) => {
506
- logop(error);
507
- if (error) {
508
- return callback(this._translateMessage(error));
509
- }
510
- callback(null, explanation);
511
- });
495
+ explainFind(ns, filter, options = {}, executionOptions) {
496
+ const verbosity = (executionOptions === null || executionOptions === void 0 ? void 0 : executionOptions.explainVerbosity) ||
497
+ mongodb.ExplainVerbosity.allPlansExecution;
498
+ log.info(mongoLogId(1001000046), this._logCtx(), 'Running find explain', { ns, verbosity });
499
+ let cursor;
500
+ return this.cancellableOperation(async (session) => {
501
+ cursor = this.findCursor(ns, filter, { ...options, session });
502
+ const results = await cursor.explain(verbosity);
503
+ void cursor.close();
504
+ return results;
505
+ }, () => cursor === null || cursor === void 0 ? void 0 : cursor.close(), executionOptions === null || executionOptions === void 0 ? void 0 : executionOptions.abortSignal);
512
506
  }
513
507
  explainAggregate(ns, pipeline, options, executionOptions) {
514
508
  const verbosity = (executionOptions === null || executionOptions === void 0 ? void 0 : executionOptions.explainVerbosity) ||
515
509
  mongodb.ExplainVerbosity.queryPlanner;
510
+ log.info(mongoLogId(1001000177), this._logCtx(), 'Running aggregate explain', { ns, verbosity });
516
511
  let cursor;
517
- return this.cancellableOperation((session) => {
518
- cursor = this.aggregate(ns, pipeline, { ...options, session });
519
- return cursor.explain(verbosity);
512
+ return this.cancellableOperation(async (session) => {
513
+ cursor = this.aggregateCursor(ns, pipeline, { ...options, session });
514
+ const results = await cursor.explain(verbosity);
515
+ void cursor.close();
516
+ return results;
520
517
  }, () => cursor === null || cursor === void 0 ? void 0 : cursor.close(), executionOptions === null || executionOptions === void 0 ? void 0 : executionOptions.abortSignal);
521
518
  }
522
519
  indexes(ns, options, callback) {
@@ -712,7 +709,7 @@ class DataServiceImpl extends events_1.EventEmitter {
712
709
  dropView(ns, callback) {
713
710
  this.dropCollection(ns, callback);
714
711
  }
715
- sample(ns, { query, size, fields, } = {}, options = {}) {
712
+ sample(ns, { query, size, fields, } = {}, options = {}, executionOptions) {
716
713
  const pipeline = [];
717
714
  if (query && Object.keys(query).length > 0) {
718
715
  pipeline.push({
@@ -732,7 +729,7 @@ class DataServiceImpl extends events_1.EventEmitter {
732
729
  return this.aggregate(ns, pipeline, {
733
730
  allowDiskUse: true,
734
731
  ...options,
735
- });
732
+ }, executionOptions);
736
733
  }
737
734
  startSession(clientType) {
738
735
  const session = this._initializedClient(clientType).startSession();
@@ -757,23 +754,16 @@ class DataServiceImpl extends events_1.EventEmitter {
757
754
  isConnected() {
758
755
  return !!this._metadataClient;
759
756
  }
760
- isOperationCancelledError(error) {
761
- return DataServiceOperationCancelledError.isOperationCancelledError(error);
762
- }
763
757
  async cancellableOperation(start, stop = () => Promise.resolve(), abortSignal) {
758
+ var _a;
764
759
  if (!abortSignal) {
765
760
  return await start();
766
761
  }
767
762
  if (abortSignal.aborted) {
768
- throw new DataServiceOperationCancelledError();
763
+ throw (_a = abortSignal.reason) !== null && _a !== void 0 ? _a : (0, compass_utils_1.createCancelError)();
769
764
  }
770
765
  const session = this.startSession('CRUD');
771
766
  let result;
772
- let abortListener;
773
- const pendingPromise = new Promise((_resolve, reject) => {
774
- abortListener = () => reject(new DataServiceOperationCancelledError());
775
- abortSignal.addEventListener('abort', abortListener, { once: true });
776
- });
777
767
  const abort = async () => {
778
768
  const logAbortError = (error) => {
779
769
  try {
@@ -785,20 +775,23 @@ class DataServiceImpl extends events_1.EventEmitter {
785
775
  await stop().catch(logAbortError);
786
776
  await this.killSessions(session).catch(logAbortError);
787
777
  };
778
+ const logop = this._startLogOp(mongoLogId(1001000179), 'Running cancellable operation');
788
779
  try {
789
- result = await Promise.race([pendingPromise, start(session)]);
780
+ result = await (0, compass_utils_1.raceWithAbort)(start(session), abortSignal);
781
+ logop(null);
790
782
  }
791
783
  catch (err) {
792
- if (this.isOperationCancelledError(err)) {
784
+ logop(err);
785
+ if ((0, compass_utils_1.isCancelError)(err)) {
793
786
  void abort();
794
787
  }
795
788
  throw err;
796
789
  }
797
- finally {
798
- abortListener && abortSignal.removeEventListener('abort', abortListener);
799
- }
800
790
  return result;
801
791
  }
792
+ isCancelError(error) {
793
+ return (0, compass_utils_1.isCancelError)(error);
794
+ }
802
795
  setupListeners(client) {
803
796
  if (client) {
804
797
  client.on('serverDescriptionChanged', (evt) => {
@@ -1021,8 +1014,8 @@ class DataServiceImpl extends events_1.EventEmitter {
1021
1014
  if (typeof error === 'string') {
1022
1015
  error = { message: error };
1023
1016
  }
1024
- else {
1025
- error.message = error.message || error.err || error.errmsg;
1017
+ else if (!error.message) {
1018
+ error.message = error.err || error.errmsg;
1026
1019
  }
1027
1020
  return error;
1028
1021
  }
@@ -1 +1 @@
1
- {"version":3,"file":"data-service.js","sourceRoot":"","sources":["../src/data-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"data-service.js","sourceRoot":"","sources":["../src/data-service.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -7,7 +7,7 @@
7
7
  "email": "compass@mongodb.com"
8
8
  },
9
9
  "homepage": "https://github.com/mongodb-js/compass",
10
- "version": "22.3.0",
10
+ "version": "22.4.0",
11
11
  "repository": {
12
12
  "type": "git",
13
13
  "url": "https://github.com/mongodb-js/compass.git"
@@ -53,27 +53,27 @@
53
53
  "reformat": "npm run prettier -- --write ."
54
54
  },
55
55
  "peerDependencies": {
56
- "mongodb": "^4.10.0"
56
+ "mongodb": "^4.13.0"
57
57
  },
58
58
  "dependencies": {
59
- "@mongodb-js/compass-logging": "^1.1.1",
60
- "@mongodb-js/compass-utils": "^0.1.2",
59
+ "@mongodb-js/compass-logging": "^1.1.2",
60
+ "@mongodb-js/compass-utils": "^0.2.0",
61
61
  "@mongodb-js/devtools-connect": "^1.4.3",
62
- "@mongodb-js/ssh-tunnel": "^2.0.1",
62
+ "@mongodb-js/ssh-tunnel": "^2.0.2",
63
63
  "async": "^3.2.0",
64
64
  "debug": "^4.2.0",
65
65
  "lodash": "^4.17.20",
66
- "mongodb-build-info": "^1.3.0",
67
- "mongodb-connection-model": "^22.1.3",
66
+ "mongodb-build-info": "^1.5.0",
67
+ "mongodb-connection-model": "^22.2.0",
68
68
  "mongodb-connection-string-url": "^2.6.0",
69
- "mongodb-index-model": "^4.1.0",
69
+ "mongodb-index-model": "^4.1.1",
70
70
  "mongodb-ns": "^2.4.0",
71
71
  "uuid": "^8.3.2"
72
72
  },
73
73
  "devDependencies": {
74
74
  "@mongodb-js/devtools-docker-test-envs": "^1.2.4",
75
- "@mongodb-js/eslint-config-compass": "^1.0.1",
76
- "@mongodb-js/mocha-config-compass": "^1.0.1",
75
+ "@mongodb-js/eslint-config-compass": "^1.0.2",
76
+ "@mongodb-js/mocha-config-compass": "^1.0.2",
77
77
  "@mongodb-js/prettier-config-compass": "^1.0.0",
78
78
  "@mongodb-js/tsconfig-compass": "^1.0.1",
79
79
  "@types/async": "^3.2.7",
@@ -87,17 +87,17 @@
87
87
  "eslint": "^7.25.0",
88
88
  "kerberos": "^2.0.0",
89
89
  "mocha": "^8.4.0",
90
- "mongodb": "^4.10.0",
91
- "mongodb-runner": "^4.9.0",
90
+ "mongodb": "^4.13.0",
91
+ "mongodb-runner": "^4.10.0",
92
92
  "nyc": "^15.0.0",
93
93
  "prettier": "^2.7.1",
94
94
  "rimraf": "^3.0.2",
95
95
  "sinon": "^9.2.3",
96
- "storage-mixin": "^5.1.0",
96
+ "storage-mixin": "^5.1.1",
97
97
  "typescript": "^4.8.3"
98
98
  },
99
99
  "optionalDependencies": {
100
- "mongodb-client-encryption": "^2.2.1"
100
+ "mongodb-client-encryption": "^2.3.0"
101
101
  },
102
- "gitHead": "7f786ed13b999a5c0831af6fde545154890df956"
102
+ "gitHead": "cfe9a829fd77fc84e090f2c7b38663167071ebc5"
103
103
  }