diff --git a/package-lock.json b/package-lock.json index 3caf8873d0..307a109837 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8196,9 +8196,9 @@ } }, "bson": { - "version": "4.5.4", - "resolved": "https://registry.npmjs.org/bson/-/bson-4.5.4.tgz", - "integrity": "sha512-wIt0bPACnx8Ju9r6IsS2wVtGDHBr9Dxb+U29A1YED2pu8XOhS8aKjOnLZ8sxyXkPwanoK7iWWVhS1+coxde6xA==", + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/bson/-/bson-4.6.0.tgz", + "integrity": "sha512-8jw1NU1hglS+Da1jDOUYuNcBJ4cNHCFIqzlwoFNnsTOg2R/ox0aTYcTiBN4dzRa9q7Cvy6XErh3L8ReTEb9AQQ==", "dev": true, "requires": { "buffer": "^5.6.0" @@ -18309,25 +18309,25 @@ } }, "mongodb": { - "version": "4.1.4", - "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-4.1.4.tgz", - "integrity": "sha512-Cv/sk8on/tpvvqbEvR1h03mdyNdyvvO+WhtFlL4jrZ+DSsN/oSQHVqmJQI/sBCqqbOArFcYCAYDfyzqFwV4GSQ==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-4.2.1.tgz", + "integrity": "sha512-nDC+ulM/Ea3Q2VG5eemuGfB7T4ORwrtKegH2XW9OLlUBgQF6OTNrzFCS1Z3SJGVA+T0Sr1xBYV6DMnp0A7us0g==", "dev": true, "requires": { - "bson": "^4.5.4", + "bson": "^4.6.0", "denque": "^2.0.1", - "mongodb-connection-string-url": "^2.1.0", + "mongodb-connection-string-url": "^2.2.0", "saslprep": "^1.0.3" } }, "mongodb-connection-string-url": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mongodb-connection-string-url/-/mongodb-connection-string-url-2.1.0.tgz", - "integrity": "sha512-Qf9Zw7KGiRljWvMrrUFDdVqo46KIEiDuCzvEN97rh/PcKzk2bd6n9KuzEwBwW9xo5glwx69y1mI6s+jFUD/aIQ==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/mongodb-connection-string-url/-/mongodb-connection-string-url-2.2.0.tgz", + "integrity": "sha512-U0cDxLUrQrl7DZA828CA+o69EuWPWEJTwdMPozyd7cy/dbtncUZczMw7wRHcwMD7oKOn0NM2tF9jdf5FFVW9CA==", "dev": true, "requires": { "@types/whatwg-url": "^8.2.1", - "whatwg-url": "^9.1.0" + "whatwg-url": "^11.0.0" }, "dependencies": { "punycode": { @@ -18337,28 +18337,28 @@ "dev": true }, "tr46": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-2.1.0.tgz", - "integrity": "sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-3.0.0.tgz", + "integrity": "sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==", "dev": true, "requires": { "punycode": "^2.1.1" } }, "webidl-conversions": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-6.1.0.tgz", - "integrity": "sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", + "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==", "dev": true }, "whatwg-url": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-9.1.0.tgz", - "integrity": "sha512-CQ0UcrPHyomtlOCot1TL77WyMIm/bCwrJ2D6AOKGwEczU9EpyoqAokfqrf/MioU9kHcMsmJZcg1egXix2KYEsA==", + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-11.0.0.tgz", + "integrity": "sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==", "dev": true, "requires": { - "tr46": "^2.1.0", - "webidl-conversions": "^6.1.0" + "tr46": "^3.0.0", + "webidl-conversions": "^7.0.0" } } } diff --git a/package.json b/package.json index 6679df454f..49efa30f63 100644 --- a/package.json +++ b/package.json @@ -122,7 +122,7 @@ "karma-typescript": "^5.5.1", "lerna": "^4.0.0", "mocha": "^7.1.2", - "mongodb": "^4.1.4", + "mongodb": "^4.2.1", "mongodb-download-url": "^1.1.2", "mongodb-js-precommit": "^2.0.0", "nock": "^13.0.11", diff --git a/packages/node-runtime-worker-thread/package-lock.json b/packages/node-runtime-worker-thread/package-lock.json index a759476802..d2c609dd76 100644 --- a/packages/node-runtime-worker-thread/package-lock.json +++ b/packages/node-runtime-worker-thread/package-lock.json @@ -634,9 +634,9 @@ } }, "bson": { - "version": "4.5.4", - "resolved": "https://registry.npmjs.org/bson/-/bson-4.5.4.tgz", - "integrity": "sha512-wIt0bPACnx8Ju9r6IsS2wVtGDHBr9Dxb+U29A1YED2pu8XOhS8aKjOnLZ8sxyXkPwanoK7iWWVhS1+coxde6xA==", + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/bson/-/bson-4.6.0.tgz", + "integrity": "sha512-8jw1NU1hglS+Da1jDOUYuNcBJ4cNHCFIqzlwoFNnsTOg2R/ox0aTYcTiBN4dzRa9q7Cvy6XErh3L8ReTEb9AQQ==", "dev": true, "requires": { "buffer": "^5.6.0" diff --git a/packages/node-runtime-worker-thread/package.json b/packages/node-runtime-worker-thread/package.json index 692c8c0ebb..5bba4dca7a 100644 --- a/packages/node-runtime-worker-thread/package.json +++ b/packages/node-runtime-worker-thread/package.json @@ -33,7 +33,7 @@ "@mongosh/service-provider-core": "0.0.0-dev.0", "@mongosh/service-provider-server": "0.0.0-dev.0", "@mongosh/types": "0.0.0-dev.0", - "bson": "^4.5.4", + "bson": "^4.6.0", "mocha": "^7.1.2", "postmsg-rpc": "^2.4.0", "terser-webpack-plugin": "^4.2.3", diff --git a/packages/node-runtime-worker-thread/src/worker-runtime.ts b/packages/node-runtime-worker-thread/src/worker-runtime.ts index f27099e302..7a84f893dc 100644 --- a/packages/node-runtime-worker-thread/src/worker-runtime.ts +++ b/packages/node-runtime-worker-thread/src/worker-runtime.ts @@ -85,13 +85,21 @@ const workerRuntime: WorkerRuntime = { driverOptions: MongoClientOptions = {}, cliOptions: { nodb?: boolean } = {} ) { - provider = await CompassServiceProvider.connect( + // XXX The types here work out fine, and tsc accepts this code + // without 'as any'. However, since a change to the driver's + // .find() method signature (https://github.com/mongodb/node-mongodb-native/commit/307d623ea597c5d89c548b6731bd692fec7a8047) + // the webpack integration build fails with: + // [tsl] ERROR in /home/addaleax/src/mongosh/packages/node-runtime-worker-thread/src/worker-runtime.ts(88,5) + // TS2589: Type instantiation is excessively deep and possibly infinite. + // I could not figure out why exactly that was the case, so 'as any' + // will have to do for now. + provider = await (CompassServiceProvider as any).connect( uri, driverOptions, cliOptions, messageBus ); - runtime = new ElectronRuntime(provider, messageBus); + runtime = new ElectronRuntime(provider as ServiceProvider, messageBus); runtime.setEvaluationListener(evaluationListener); }, diff --git a/packages/service-provider-core/package-lock.json b/packages/service-provider-core/package-lock.json index 429af286e7..2409ec0c0c 100644 --- a/packages/service-provider-core/package-lock.json +++ b/packages/service-provider-core/package-lock.json @@ -70,9 +70,9 @@ } }, "bson": { - "version": "4.5.4", - "resolved": "https://registry.npmjs.org/bson/-/bson-4.5.4.tgz", - "integrity": "sha512-wIt0bPACnx8Ju9r6IsS2wVtGDHBr9Dxb+U29A1YED2pu8XOhS8aKjOnLZ8sxyXkPwanoK7iWWVhS1+coxde6xA==", + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/bson/-/bson-4.6.0.tgz", + "integrity": "sha512-8jw1NU1hglS+Da1jDOUYuNcBJ4cNHCFIqzlwoFNnsTOg2R/ox0aTYcTiBN4dzRa9q7Cvy6XErh3L8ReTEb9AQQ==", "requires": { "buffer": "^5.6.0" } @@ -254,25 +254,14 @@ "optional": true }, "mongodb": { - "version": "4.1.4", - "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-4.1.4.tgz", - "integrity": "sha512-Cv/sk8on/tpvvqbEvR1h03mdyNdyvvO+WhtFlL4jrZ+DSsN/oSQHVqmJQI/sBCqqbOArFcYCAYDfyzqFwV4GSQ==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-4.2.1.tgz", + "integrity": "sha512-nDC+ulM/Ea3Q2VG5eemuGfB7T4ORwrtKegH2XW9OLlUBgQF6OTNrzFCS1Z3SJGVA+T0Sr1xBYV6DMnp0A7us0g==", "requires": { - "bson": "^4.5.4", + "bson": "^4.6.0", "denque": "^2.0.1", - "mongodb-connection-string-url": "^2.1.0", + "mongodb-connection-string-url": "^2.2.0", "saslprep": "^1.0.3" - }, - "dependencies": { - "mongodb-connection-string-url": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mongodb-connection-string-url/-/mongodb-connection-string-url-2.1.0.tgz", - "integrity": "sha512-Qf9Zw7KGiRljWvMrrUFDdVqo46KIEiDuCzvEN97rh/PcKzk2bd6n9KuzEwBwW9xo5glwx69y1mI6s+jFUD/aIQ==", - "requires": { - "@types/whatwg-url": "^8.2.1", - "whatwg-url": "^9.1.0" - } - } } }, "mongodb-build-info": { @@ -614,14 +603,6 @@ } } }, - "tr46": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-2.1.0.tgz", - "integrity": "sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw==", - "requires": { - "punycode": "^2.1.1" - } - }, "tunnel-agent": { "version": "0.6.0", "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", @@ -637,20 +618,6 @@ "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", "optional": true }, - "webidl-conversions": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-6.1.0.tgz", - "integrity": "sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==" - }, - "whatwg-url": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-9.1.0.tgz", - "integrity": "sha512-CQ0UcrPHyomtlOCot1TL77WyMIm/bCwrJ2D6AOKGwEczU9EpyoqAokfqrf/MioU9kHcMsmJZcg1egXix2KYEsA==", - "requires": { - "tr46": "^2.1.0", - "webidl-conversions": "^6.1.0" - } - }, "wide-align": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", diff --git a/packages/service-provider-core/package.json b/packages/service-provider-core/package.json index 67dd0ab74e..77fc9edf55 100644 --- a/packages/service-provider-core/package.json +++ b/packages/service-provider-core/package.json @@ -32,8 +32,8 @@ "dependencies": { "@mongosh/errors": "0.0.0-dev.0", "@mongosh/i18n": "0.0.0-dev.0", - "bson": "^4.5.4", - "mongodb": "^4.1.4", + "bson": "^4.6.0", + "mongodb": "^4.2.1", "mongodb-build-info": "^1.2.0", "mongodb-connection-string-url": "^2.2.0" }, diff --git a/packages/service-provider-server/package-lock.json b/packages/service-provider-server/package-lock.json index 43f9b850f1..8e3262b1e9 100644 --- a/packages/service-provider-server/package-lock.json +++ b/packages/service-provider-server/package-lock.json @@ -108,9 +108,9 @@ } }, "bson": { - "version": "4.5.4", - "resolved": "https://registry.npmjs.org/bson/-/bson-4.5.4.tgz", - "integrity": "sha512-wIt0bPACnx8Ju9r6IsS2wVtGDHBr9Dxb+U29A1YED2pu8XOhS8aKjOnLZ8sxyXkPwanoK7iWWVhS1+coxde6xA==", + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/bson/-/bson-4.6.0.tgz", + "integrity": "sha512-8jw1NU1hglS+Da1jDOUYuNcBJ4cNHCFIqzlwoFNnsTOg2R/ox0aTYcTiBN4dzRa9q7Cvy6XErh3L8ReTEb9AQQ==", "requires": { "buffer": "^5.6.0" } @@ -322,25 +322,16 @@ "optional": true }, "mongodb": { - "version": "4.1.4", - "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-4.1.4.tgz", - "integrity": "sha512-Cv/sk8on/tpvvqbEvR1h03mdyNdyvvO+WhtFlL4jrZ+DSsN/oSQHVqmJQI/sBCqqbOArFcYCAYDfyzqFwV4GSQ==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-4.2.1.tgz", + "integrity": "sha512-nDC+ulM/Ea3Q2VG5eemuGfB7T4ORwrtKegH2XW9OLlUBgQF6OTNrzFCS1Z3SJGVA+T0Sr1xBYV6DMnp0A7us0g==", "requires": { - "bson": "^4.5.4", + "bson": "^4.6.0", "denque": "^2.0.1", - "mongodb-connection-string-url": "^2.1.0", + "mongodb-connection-string-url": "^2.2.0", "saslprep": "^1.0.3" }, "dependencies": { - "mongodb-connection-string-url": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mongodb-connection-string-url/-/mongodb-connection-string-url-2.1.0.tgz", - "integrity": "sha512-Qf9Zw7KGiRljWvMrrUFDdVqo46KIEiDuCzvEN97rh/PcKzk2bd6n9KuzEwBwW9xo5glwx69y1mI6s+jFUD/aIQ==", - "requires": { - "@types/whatwg-url": "^8.2.1", - "whatwg-url": "^9.1.0" - } - }, "saslprep": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/saslprep/-/saslprep-1.0.3.tgz", @@ -349,15 +340,6 @@ "requires": { "sparse-bitfield": "^3.0.3" } - }, - "whatwg-url": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-9.1.0.tgz", - "integrity": "sha512-CQ0UcrPHyomtlOCot1TL77WyMIm/bCwrJ2D6AOKGwEczU9EpyoqAokfqrf/MioU9kHcMsmJZcg1egXix2KYEsA==", - "requires": { - "tr46": "^2.1.0", - "webidl-conversions": "^6.1.0" - } } } }, @@ -707,6 +689,7 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/tr46/-/tr46-2.1.0.tgz", "integrity": "sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw==", + "optional": true, "requires": { "punycode": "^2.1.1" } @@ -729,7 +712,8 @@ "webidl-conversions": { "version": "6.1.0", "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-6.1.0.tgz", - "integrity": "sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==" + "integrity": "sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==", + "optional": true }, "whatwg-url": { "version": "8.7.0", diff --git a/packages/service-provider-server/package.json b/packages/service-provider-server/package.json index 43476897ff..8fbc964c43 100644 --- a/packages/service-provider-server/package.json +++ b/packages/service-provider-server/package.json @@ -43,7 +43,7 @@ "@mongosh/types": "0.0.0-dev.0", "@types/sinon-chai": "^3.2.3", "aws4": "^1.11.0", - "mongodb": "^4.1.4", + "mongodb": "^4.2.1", "mongodb-connection-string-url": "^2.2.0", "saslprep": "mongodb-js/saslprep#v1.0.4" }, diff --git a/packages/shell-api/src/change-stream-cursor.ts b/packages/shell-api/src/change-stream-cursor.ts index 837f81630d..42981444c0 100644 --- a/packages/shell-api/src/change-stream-cursor.ts +++ b/packages/shell-api/src/change-stream-cursor.ts @@ -56,7 +56,7 @@ export default class ChangeStreamCursor extends ShellApiWithMongoClass { @returnsPromise @deprecated - async hasNext(): Promise { + async hasNext(): Promise { await this._instanceState.printWarning( 'If there are no documents in the batch, hasNext will block. Use tryNext if you want to check if there ' + 'are any documents without waiting.' diff --git a/packages/snippet-manager/package-lock.json b/packages/snippet-manager/package-lock.json index 53c5a487ba..beb528df6b 100644 --- a/packages/snippet-manager/package-lock.json +++ b/packages/snippet-manager/package-lock.json @@ -91,9 +91,9 @@ "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==" }, "bson": { - "version": "4.5.4", - "resolved": "https://registry.npmjs.org/bson/-/bson-4.5.4.tgz", - "integrity": "sha512-wIt0bPACnx8Ju9r6IsS2wVtGDHBr9Dxb+U29A1YED2pu8XOhS8aKjOnLZ8sxyXkPwanoK7iWWVhS1+coxde6xA==", + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/bson/-/bson-4.6.0.tgz", + "integrity": "sha512-8jw1NU1hglS+Da1jDOUYuNcBJ4cNHCFIqzlwoFNnsTOg2R/ox0aTYcTiBN4dzRa9q7Cvy6XErh3L8ReTEb9AQQ==", "requires": { "buffer": "^5.6.0" } diff --git a/packages/snippet-manager/package.json b/packages/snippet-manager/package.json index 3ee5d4ccbf..0b74c19656 100644 --- a/packages/snippet-manager/package.json +++ b/packages/snippet-manager/package.json @@ -32,7 +32,7 @@ "@mongosh/errors": "0.0.0-dev.0", "@mongosh/shell-api": "0.0.0-dev.0", "@mongosh/types": "0.0.0-dev.0", - "bson": "^4.5.4", + "bson": "^4.6.0", "cross-spawn": "^7.0.3", "escape-string-regexp": "^4.0.0", "joi": "^17.4.0",