diff --git a/package-lock.json b/package-lock.json index 681bc554fae..4711afcd014 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8004,9 +8004,9 @@ "link": true }, "node_modules/@mongodb-js/devtools-connect": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/@mongodb-js/devtools-connect/-/devtools-connect-3.4.1.tgz", - "integrity": "sha512-J+n5Bz/V2e6jXSUSMUra9AGvYWJp9pKWxdTsQ6JEedufxiB7uM/glhyACGH2WIUaoOQk6nvSma8BdizUm/qNHg==", + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@mongodb-js/devtools-connect/-/devtools-connect-3.7.0.tgz", + "integrity": "sha512-j/8Wgfp7La/5Rz52Vyic8aK1GnMEGMVN3TCB+P6/QNFVYpWp81SEy8kW12oIFvNUKgpzV75o9Ixb2K44r15J0w==", "license": "Apache-2.0", "dependencies": { "@mongodb-js/devtools-proxy-support": "^0.4.2", @@ -8024,7 +8024,7 @@ "peerDependencies": { "@mongodb-js/oidc-plugin": "^1.1.0", "mongodb": "^6.9.0", - "mongodb-log-writer": "^2.1.0" + "mongodb-log-writer": "^2.4.0" } }, "node_modules/@mongodb-js/devtools-github-repo": { @@ -8790,13 +8790,13 @@ "link": true }, "node_modules/@mongosh/arg-parser": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/@mongosh/arg-parser/-/arg-parser-3.5.0.tgz", - "integrity": "sha512-QAUDaGVkkBPCTdEr2ZxDo/nOOG/k1L7DaazGdICRr+uyKlk/N7BBhGBHtDeEg6l6VG03oBOuGL7+Rc605xQx2w==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/@mongosh/arg-parser/-/arg-parser-3.6.0.tgz", + "integrity": "sha512-7iZeddXYj8JqAER8/tKWte6Jcm4oBzUvJQo3CYTXyyYE8feBI0cdVaF9yQyGCLPFpnfe+6j6oA5+l6jgHAzyYg==", "license": "Apache-2.0", "dependencies": { "@mongosh/errors": "2.4.0", - "@mongosh/i18n": "2.9.0", + "@mongosh/i18n": "2.9.1", "mongodb-connection-string-url": "^3.0.1" }, "engines": { @@ -8804,9 +8804,9 @@ } }, "node_modules/@mongosh/async-rewriter2": { - "version": "2.4.5", - "resolved": "https://registry.npmjs.org/@mongosh/async-rewriter2/-/async-rewriter2-2.4.5.tgz", - "integrity": "sha512-mgsJ+cjabPhxW2Apj36lcVDCLs5herKZaBYQ6+G+E2Z7cxBqGzeF585+C/7Q5EK3sspoVCPZbkxF1HJfFJojqw==", + "version": "2.4.6", + "resolved": "https://registry.npmjs.org/@mongosh/async-rewriter2/-/async-rewriter2-2.4.6.tgz", + "integrity": "sha512-v5Oq7eZ4dla13hKMbtFLVr0CHSOSeKHWoFxAtU8aD30N2ES2tT6i8/iNUMVsdF3zzLyzFfH/B81epDFNjNiOUA==", "license": "Apache-2.0", "dependencies": { "@babel/core": "^7.22.8", @@ -8823,13 +8823,13 @@ } }, "node_modules/@mongosh/autocomplete": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/@mongosh/autocomplete/-/autocomplete-3.5.0.tgz", - "integrity": "sha512-UbuHApagks+yZIAiMZHMVWec/rTc35BOg3sLrUWd3nSoUWZ/G2i2x3nNeh1VVcuSSBxXvztZK8E7rJ3iyu0QNA==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/@mongosh/autocomplete/-/autocomplete-3.6.0.tgz", + "integrity": "sha512-n7+XG28BgakNKMPeP9Cm06FZ+vkoevymMKEM96Htej01cR2amcNBko/6Bet21sEAR0nrgGgKNEw3gF9o7pLqhg==", "license": "Apache-2.0", "dependencies": { "@mongodb-js/mongodb-constants": "^0.10.1", - "@mongosh/shell-api": "3.5.0", + "@mongosh/shell-api": "3.6.0", "semver": "^7.5.4" }, "engines": { @@ -8837,17 +8837,17 @@ } }, "node_modules/@mongosh/browser-repl": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/@mongosh/browser-repl/-/browser-repl-3.5.0.tgz", - "integrity": "sha512-4qr0eNWIfNe2CHT4ynqeWiHhHf5NUyDoGrqESaN7Xk/LGZgeZ2+vb8onAIz0zY4jgEPBk2rJvYwKA3ZFFGg2sQ==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/@mongosh/browser-repl/-/browser-repl-3.6.0.tgz", + "integrity": "sha512-01GWu2jySXg63j0cEYg7xDgxfcAe63fabaJYtqE2E2IIppNTMSopQAWI2PHPBXaWNcvChT5UDQodPAIK2SJE7w==", "license": "Apache-2.0", "dependencies": { - "@mongosh/browser-runtime-core": "3.5.0", + "@mongosh/browser-runtime-core": "3.6.0", "@mongosh/errors": "2.4.0", - "@mongosh/history": "2.4.5", - "@mongosh/i18n": "2.9.0", - "@mongosh/node-runtime-worker-thread": "3.3.0", - "@mongosh/service-provider-core": "3.0.5", + "@mongosh/history": "2.4.6", + "@mongosh/i18n": "2.9.1", + "@mongosh/node-runtime-worker-thread": "3.3.1", + "@mongosh/service-provider-core": "3.1.0", "numeral": "^2.0.6", "text-table": "^0.2.0" }, @@ -8872,15 +8872,15 @@ } }, "node_modules/@mongosh/browser-runtime-core": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/@mongosh/browser-runtime-core/-/browser-runtime-core-3.5.0.tgz", - "integrity": "sha512-u0Uz1Ir9kheKjDqxsHiDi5jPvtpracfM3I+lcC1Ua2ci1DoG6WmiZ/mohiQxXSR9rtcV1F/5PCa1/KRwXM25gw==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/@mongosh/browser-runtime-core/-/browser-runtime-core-3.6.0.tgz", + "integrity": "sha512-O9zGDFMneemiqmyxcROnoDP9OB4XkqHskgJYlLYszC0kwj4W05+7Wr32Tvc+UotjMm36LbWQn0pHoCG4ikpjug==", "license": "Apache-2.0", "dependencies": { - "@mongosh/autocomplete": "3.5.0", - "@mongosh/service-provider-core": "3.0.5", - "@mongosh/shell-api": "3.5.0", - "@mongosh/shell-evaluator": "3.5.0" + "@mongosh/autocomplete": "3.6.0", + "@mongosh/service-provider-core": "3.1.0", + "@mongosh/shell-api": "3.6.0", + "@mongosh/shell-evaluator": "3.6.0" }, "engines": { "node": ">=14.15.1" @@ -8896,9 +8896,9 @@ } }, "node_modules/@mongosh/history": { - "version": "2.4.5", - "resolved": "https://registry.npmjs.org/@mongosh/history/-/history-2.4.5.tgz", - "integrity": "sha512-wo6tlPAcnT/DZGaM6S3JT+ldW//weyjcWKslFfsCgv/K1eo2cX8lTnCYWeZUKJiZWrylDsRd1T7k2eGGZ72Fng==", + "version": "2.4.6", + "resolved": "https://registry.npmjs.org/@mongosh/history/-/history-2.4.6.tgz", + "integrity": "sha512-vEPJ0Y1FUM9aSxw/OQiV6QfAy0AjwZn9tMvFY27m4786jEM3hpJIPwDIRe33i7/hankLz8umsFrSTAnrT3icQw==", "license": "Apache-2.0", "dependencies": { "mongodb-connection-string-url": "^3.0.1", @@ -8909,9 +8909,9 @@ } }, "node_modules/@mongosh/i18n": { - "version": "2.9.0", - "resolved": "https://registry.npmjs.org/@mongosh/i18n/-/i18n-2.9.0.tgz", - "integrity": "sha512-qOAEuuXazIDTIjPl7TgkmIDeM5NjqqO/FC10sM/cw/YzLvIMJ6wb/PMowBy5Z9asOrgLvs7SmD6J+rHoIvmtJQ==", + "version": "2.9.1", + "resolved": "https://registry.npmjs.org/@mongosh/i18n/-/i18n-2.9.1.tgz", + "integrity": "sha512-fpK02p8nMsX3HF/I0KvEZlo+XmKLgtZfyop+JroUJbM+LxPxUzknirHAugLhK7JeuHTov8FSbbNhn2TWoN+XBg==", "license": "Apache-2.0", "dependencies": { "@mongosh/errors": "2.4.0" @@ -8921,15 +8921,15 @@ } }, "node_modules/@mongosh/logging": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/@mongosh/logging/-/logging-3.5.0.tgz", - "integrity": "sha512-K3eipDAltOgJ8kV/Gbu4OVDEvL+ZTJ94IYZdj7VcWZyomYIyp2buSTR/ZCWK222mEjHUry5esyalrlH5vmR7fw==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/@mongosh/logging/-/logging-3.6.0.tgz", + "integrity": "sha512-f0fkAVNzV9Ja90DPpeQv2KL9zoYauUQh+ejoong4X88sEw5n1bYVOvng9Ic3tJFioGlcuWVe1waDDMio5SWElA==", "license": "Apache-2.0", "dependencies": { "@mongodb-js/devtools-connect": "^3.4.1", "@mongosh/errors": "2.4.0", - "@mongosh/history": "2.4.5", - "@mongosh/types": "3.5.0", + "@mongosh/history": "2.4.6", + "@mongosh/types": "3.6.0", "mongodb-log-writer": "^2.3.1", "mongodb-redact": "^1.1.5" }, @@ -8938,9 +8938,9 @@ } }, "node_modules/@mongosh/node-runtime-worker-thread": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/@mongosh/node-runtime-worker-thread/-/node-runtime-worker-thread-3.3.0.tgz", - "integrity": "sha512-WIkuI5CmPWrUfsJ/eQNqagtQJb6U+TndiRk1ebZOBF6rh+fXEBFDsBdrgrE6Mrvo0v1BwUQLc5sTjLhRfzlYWQ==", + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/@mongosh/node-runtime-worker-thread/-/node-runtime-worker-thread-3.3.1.tgz", + "integrity": "sha512-aHeEk4BoZBgE4qUreDiTa06PRMAB3RoyGeaz0BRJOBlrPHi/P86r2KqROWwmAb+4AbQ9lOQEYU5ut+GsoKKqaw==", "license": "Apache-2.0", "dependencies": { "interruptor": "^1.0.1", @@ -8952,15 +8952,15 @@ } }, "node_modules/@mongosh/service-provider-core": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/@mongosh/service-provider-core/-/service-provider-core-3.0.5.tgz", - "integrity": "sha512-dCGyffuvTjLn06tMX+YvT7kqxaIqMzvflri4VDjdrHCX0dJcVncw+jWk8RUyDuImDJYQGmWze0O58b/nDWPnFQ==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@mongosh/service-provider-core/-/service-provider-core-3.1.0.tgz", + "integrity": "sha512-QSmTzmiD1Tlj9liWSqZJni12B8Afrqii3BoB96LMLHxPRkzTu+H9nWwYOF0d+IQaab7wW2HWDlpSJYhzgQdCKA==", "license": "Apache-2.0", "dependencies": { "@aws-sdk/credential-providers": "^3.525.0", "@mongosh/errors": "2.4.0", "bson": "^6.10.3", - "mongodb": "^6.13.0", + "mongodb": "^6.14.2", "mongodb-build-info": "^1.7.2", "mongodb-connection-string-url": "^3.0.1" }, @@ -8968,20 +8968,20 @@ "node": ">=14.15.1" }, "optionalDependencies": { - "mongodb-client-encryption": "^6.1.1" + "mongodb-client-encryption": "^6.3.0" } }, "node_modules/@mongosh/shell-api": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/@mongosh/shell-api/-/shell-api-3.5.0.tgz", - "integrity": "sha512-fGBJJ8vwa6yzBpboK2I+rigd/9Zq1lLd1+0NSdDbq/eibIQ32UXUKoK/TgvU6ucte/HZJv0iz++ZRTxT7iPqVQ==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/@mongosh/shell-api/-/shell-api-3.6.0.tgz", + "integrity": "sha512-mxf+t+yj8zWkl95pcWGSkFxSL/giLjCkbVnCetmYNIcUMWILyh+dFNzf+pgbQVom0Mt51tAquw4Odb3ufQ+BGA==", "license": "Apache-2.0", "dependencies": { - "@mongosh/arg-parser": "3.5.0", + "@mongosh/arg-parser": "3.6.0", "@mongosh/errors": "2.4.0", - "@mongosh/history": "2.4.5", - "@mongosh/i18n": "2.9.0", - "@mongosh/service-provider-core": "3.0.5", + "@mongosh/history": "2.4.6", + "@mongosh/i18n": "2.9.1", + "@mongosh/service-provider-core": "3.1.0", "mongodb-redact": "^1.1.5" }, "engines": { @@ -8989,23 +8989,23 @@ } }, "node_modules/@mongosh/shell-evaluator": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/@mongosh/shell-evaluator/-/shell-evaluator-3.5.0.tgz", - "integrity": "sha512-OdtSCeBVKLXCSWW2/5Fj03DMAxt82rNJagciOUpywlVqabjRp5Db2uJXCbm2LccLcTyaUqWwb/vU9xglkHGgaA==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/@mongosh/shell-evaluator/-/shell-evaluator-3.6.0.tgz", + "integrity": "sha512-/YMbrou7RQzgxp4+/04yGiOJ3pnzvcpJdnOe8ecQ9HDscQkW5zarXlupu0uubmUWUfTQVuEn5Sy299H59f4zzA==", "license": "Apache-2.0", "dependencies": { - "@mongosh/async-rewriter2": "2.4.5", - "@mongosh/history": "2.4.5", - "@mongosh/shell-api": "3.5.0" + "@mongosh/async-rewriter2": "2.4.6", + "@mongosh/history": "2.4.6", + "@mongosh/shell-api": "3.6.0" }, "engines": { "node": ">=14.15.1" } }, "node_modules/@mongosh/types": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/@mongosh/types/-/types-3.5.0.tgz", - "integrity": "sha512-IXhxy/1/LSEyCrG31MwUuF2OWwLDHmYk8SGtcT5FoJoPHcCoZYI6QLbXkVGlFRdsWNct2/BSX5Np4bx1gNSMlQ==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/@mongosh/types/-/types-3.6.0.tgz", + "integrity": "sha512-p6NXCTa4FjjTQAQJk9OehfXKFIE/vdQJOqcMbVR3Cxg2zVCnfV16NDnuxpFHYnLkgqL9Cz10BtUGSZPDMFJXew==", "license": "Apache-2.0", "dependencies": { "@mongodb-js/devtools-connect": "^3.4.1" @@ -31430,9 +31430,9 @@ } }, "node_modules/mongodb": { - "version": "6.13.1", - "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-6.13.1.tgz", - "integrity": "sha512-gdq40tX8StmhP6akMp1pPoEVv+9jTYFSrga/g23JxajPAQhH39ysZrHGzQCSd9PEOnuEQEdjIWqxO7ZSwC0w7Q==", + "version": "6.14.2", + "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-6.14.2.tgz", + "integrity": "sha512-kMEHNo0F3P6QKDq17zcDuPeaywK/YaJVCEQRzPF3TOM/Bl9MFg64YE5Tu7ifj37qZJMhwU1tl2Ioivws5gRG5Q==", "license": "Apache-2.0", "dependencies": { "@mongodb-js/saslprep": "^1.1.9", @@ -31443,7 +31443,7 @@ "node": ">=16.20.1" }, "peerDependencies": { - "@aws-sdk/credential-providers": "^3.632.0", + "@aws-sdk/credential-providers": "^3.188.0", "@mongodb-js/zstd": "^1.1.0 || ^2.0.0", "gcp-metadata": "^5.2.0", "kerberos": "^2.0.1", @@ -31484,14 +31484,14 @@ } }, "node_modules/mongodb-client-encryption": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/mongodb-client-encryption/-/mongodb-client-encryption-6.1.1.tgz", - "integrity": "sha512-hqy68WWNZmkoqldFlpw8TQNaJUOor4YCM/FuxETZTeTZpGEbQwkTwdrQlgiV14qyOizPw8abbAxGi3zX+raA9w==", + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/mongodb-client-encryption/-/mongodb-client-encryption-6.3.0.tgz", + "integrity": "sha512-OaOg02vglPxxrfY01alC0ER0W4WMuNO2ZJR3ehAUcuGYreJaJ+aX+rUQiQkdQHiXvnVPDUx/4QDr2CR1/FvpcQ==", "hasInstallScript": true, "license": "Apache-2.0", "dependencies": { "node-addon-api": "^4.3.0", - "prebuild-install": "^7.1.2" + "prebuild-install": "^7.1.3" }, "engines": { "node": ">=16.20.1" @@ -31927,9 +31927,9 @@ } }, "node_modules/mongodb-log-writer": { - "version": "2.3.4", - "resolved": "https://registry.npmjs.org/mongodb-log-writer/-/mongodb-log-writer-2.3.4.tgz", - "integrity": "sha512-Z2rXUotJX3DVBlRN8y2Dzv26/SnEYlD7gh3uzvxL2myFKfyB2zQjY8DeQWb11WEam9v9LF9VwhndapLOTkJ+yA==", + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/mongodb-log-writer/-/mongodb-log-writer-2.4.0.tgz", + "integrity": "sha512-t/OcqDLl+JaVKnP7g3Zz3mCCowIAW5rp8AxD1IqVxy5rVApV332JHk5NkedtuHlRVIsN/qCujH4ezZZmoP16IQ==", "license": "Apache-2.0", "dependencies": { "heap-js": "^2.3.0" @@ -32225,9 +32225,10 @@ } }, "node_modules/napi-build-utils": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/napi-build-utils/-/napi-build-utils-1.0.2.tgz", - "integrity": "sha512-ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg==" + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/napi-build-utils/-/napi-build-utils-2.0.0.tgz", + "integrity": "sha512-GEbrYkbfF7MoNaoh2iGG84Mnf/WZfB0GdGEsM8wz7Expx/LlWf5U8t9nvJKXSp3qr5IsEbK04cBGhol/KwOsWA==", + "license": "MIT" }, "node_modules/native-request": { "version": "1.1.0", @@ -36419,9 +36420,9 @@ } }, "node_modules/prebuild-install": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-7.1.2.tgz", - "integrity": "sha512-UnNke3IQb6sgarcZIDU3gbMeTp/9SSU1DAIkil7PrqG1vZlBtY5msYccSKSHDqa3hNg436IXK+SNImReuA1wEQ==", + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-7.1.3.tgz", + "integrity": "sha512-8Mf2cbV7x1cXPUILADGI3wuhfqWvtiLA1iclTDbFRZkgRQS0NqsPZphna9V+HyTEadheuPmjaJMsbzKQFOzLug==", "license": "MIT", "dependencies": { "detect-libc": "^2.0.0", @@ -36429,7 +36430,7 @@ "github-from-package": "0.0.0", "minimist": "^1.2.3", "mkdirp-classic": "^0.5.3", - "napi-build-utils": "^1.0.1", + "napi-build-utils": "^2.0.0", "node-abi": "^3.3.0", "pump": "^3.0.0", "rc": "^1.2.7", @@ -43635,11 +43636,11 @@ "hasInstallScript": true, "license": "SSPL", "dependencies": { - "@mongosh/node-runtime-worker-thread": "^3.3.0", + "@mongosh/node-runtime-worker-thread": "^3.3.1", "clipboard": "^2.0.6", - "kerberos": "^2.2.0", + "kerberos": "^2.2.1", "keytar": "^7.9.0", - "mongodb-client-encryption": "^6.1.0", + "mongodb-client-encryption": "^6.3.0", "os-dns-native": "^1.2.1", "system-ca": "^2.0.0" }, @@ -43717,7 +43718,7 @@ "make-fetch-happen": "^10.2.1", "marky": "^1.2.1", "minimatch": "^10.0.1", - "mongodb": "^6.13.1", + "mongodb": "^6.14.1", "mongodb-build-info": "^1.7.2", "mongodb-cloud-info": "^2.1.2", "mongodb-connection-string-url": "^3.0.1", @@ -43774,7 +43775,7 @@ "hadron-document": "^8.8.4", "hadron-type-checker": "^7.4.4", "lodash": "^4.17.21", - "mongodb": "^6.13.1", + "mongodb": "^6.14.1", "mongodb-collection-model": "^5.25.4", "mongodb-data-service": "^22.25.4", "mongodb-database-model": "^2.25.4", @@ -44243,7 +44244,7 @@ "compass-preferences-model": "^2.33.4", "hadron-app-registry": "^9.4.4", "lodash": "^4.17.21", - "mongodb": "^6.13.1", + "mongodb": "^6.14.1", "mongodb-build-info": "^1.7.2", "mongodb-connection-string-url": "^3.0.1", "mongodb-data-service": "^22.25.4", @@ -44533,7 +44534,7 @@ "hadron-build": "^25.7.4", "lodash": "^4.17.21", "mocha": "^10.2.0", - "mongodb": "^6.13.1", + "mongodb": "^6.14.1", "mongodb-build-info": "^1.7.2", "mongodb-connection-string-url": "^3.0.1", "mongodb-log-writer": "^2.3.4", @@ -45058,7 +45059,7 @@ "d3-hierarchy": "^3.1.2", "hadron-app-registry": "^9.4.4", "lodash": "^4.17.21", - "mongodb": "^6.13.1", + "mongodb": "^6.14.1", "react": "^17.0.2", "react-redux": "^8.1.3", "redux": "^4.2.1", @@ -45337,7 +45338,7 @@ "bson": "^6.10.3", "compass-preferences-model": "^2.33.4", "hadron-app-registry": "^9.4.4", - "mongodb": "^6.13.1", + "mongodb": "^6.14.1", "mongodb-schema": "^12.4.0", "react": "^17.0.2", "react-redux": "^8.1.3", @@ -45645,7 +45646,7 @@ "hadron-document": "^8.8.4", "hadron-ipc": "^3.4.4", "lodash": "^4.17.21", - "mongodb": "^6.13.1", + "mongodb": "^6.14.1", "mongodb-data-service": "^22.25.4", "mongodb-ns": "^2.4.2", "mongodb-query-parser": "^4.3.0", @@ -45765,7 +45766,7 @@ "compass-preferences-model": "^2.33.4", "hadron-app-registry": "^9.4.4", "lodash": "^4.17.21", - "mongodb": "^6.13.1", + "mongodb": "^6.14.1", "mongodb-collection-model": "^5.25.4", "mongodb-data-service": "^22.25.4", "mongodb-ns": "^2.4.2", @@ -46206,7 +46207,7 @@ "compass-preferences-model": "^2.33.4", "hadron-app-registry": "^9.4.4", "lodash": "^4.17.21", - "mongodb": "^6.13.1", + "mongodb": "^6.14.1", "mongodb-instance-model": "^12.26.4", "mongodb-ns": "^2.4.2", "mongodb-query-parser": "^4.3.0", @@ -46389,7 +46390,7 @@ "leaflet-defaulticon-compatibility": "^0.1.1", "leaflet-draw": "^1.0.4", "lodash": "^4.17.21", - "mongodb": "^6.13.1", + "mongodb": "^6.14.1", "mongodb-query-util": "^2.4.4", "mongodb-schema": "^12.4.0", "numeral": "^1.5.6", @@ -46671,9 +46672,9 @@ "@mongodb-js/compass-user-data": "^0.5.4", "@mongodb-js/compass-utils": "^0.8.4", "@mongodb-js/compass-workspaces": "^0.31.4", - "@mongosh/browser-repl": "^3.5.0", - "@mongosh/logging": "^3.5.0", - "@mongosh/node-runtime-worker-thread": "^3.3.0", + "@mongosh/browser-repl": "^3.6.0", + "@mongosh/logging": "^3.6.0", + "@mongosh/node-runtime-worker-thread": "^3.3.1", "bson": "^6.10.3", "compass-preferences-model": "^2.33.4", "hadron-app-registry": "^9.4.4", @@ -46719,7 +46720,7 @@ "compass-preferences-model": "^2.33.4", "hadron-app-registry": "^9.4.4", "lodash": "^4.17.21", - "mongodb": "^6.13.1", + "mongodb": "^6.14.1", "mongodb-instance-model": "^12.26.4", "mongodb-ns": "^2.4.2", "react": "^17.0.2", @@ -47223,7 +47224,7 @@ "is-ip": "^5.0.1", "lodash": "^4.17.21", "mocha": "^10.2.0", - "mongodb": "^6.13.1", + "mongodb": "^6.14.1", "mongodb-connection-string-url": "^3.0.1", "mongodb-data-service": "^22.25.4", "mongodb-ns": "^2.4.2", @@ -47740,13 +47741,12 @@ } }, "packages/compass/node_modules/kerberos": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/kerberos/-/kerberos-2.2.0.tgz", - "integrity": "sha512-yz6iP+34Qp8XjwfmJ56SD9coeSfLIoH0JBrLi6Iw76FdwsRJoNw3nCgfpzENkfGyb/dgRqzYn3IMXLj7A43Vlg==", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/kerberos/-/kerberos-2.2.1.tgz", + "integrity": "sha512-Vlyv1tjAPb0y2VIJ03dKkUjsneGIBuTkH24uGRx6/DrKpFlVuGPmct3m5aEotljVUlw7PAGWABwR5aNeW7y8Zw==", "hasInstallScript": true, "license": "Apache-2.0", "dependencies": { - "bindings": "^1.5.0", "node-addon-api": "^6.1.0", "prebuild-install": "^7.1.2" }, @@ -47809,7 +47809,7 @@ "@mongodb-js/connection-info": "^0.11.4", "@mongodb-js/shell-bson-parser": "^1.2.0", "lodash": "^4.17.21", - "mongodb": "^6.13.1", + "mongodb": "^6.14.1", "mongodb-build-info": "^1.7.2", "mongodb-connection-string-url": "^3.0.1", "mongodb-data-service": "^22.25.4", @@ -47899,7 +47899,7 @@ "license": "SSPL", "dependencies": { "lodash": "^4.17.21", - "mongodb": "^6.13.1", + "mongodb": "^6.14.1", "mongodb-connection-string-url": "^3.0.1", "mongodb-data-service": "^22.25.4" }, @@ -48095,7 +48095,7 @@ "@mongodb-js/devtools-proxy-support": "^0.4.2", "bson": "^6.10.3", "lodash": "^4.17.21", - "mongodb": "^6.13.1", + "mongodb": "^6.14.1", "mongodb-build-info": "^1.7.2", "mongodb-connection-string-url": "^3.0.1", "mongodb-ns": "^2.4.2" @@ -48114,7 +48114,7 @@ "chai-as-promised": "^7.1.1", "depcheck": "^1.4.1", "eslint": "^7.25.0", - "kerberos": "^2.2.0", + "kerberos": "^2.2.1", "mocha": "^10.2.0", "mongodb-log-writer": "^2.3.4", "nyc": "^15.1.0", @@ -48124,7 +48124,7 @@ "typescript": "^5.0.4" }, "optionalDependencies": { - "mongodb-client-encryption": "^6.1.0" + "mongodb-client-encryption": "^6.3.0" } }, "packages/data-service/node_modules/@mongodb-js/devtools-docker-test-envs": { @@ -48186,14 +48186,13 @@ } }, "packages/data-service/node_modules/kerberos": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/kerberos/-/kerberos-2.2.0.tgz", - "integrity": "sha512-yz6iP+34Qp8XjwfmJ56SD9coeSfLIoH0JBrLi6Iw76FdwsRJoNw3nCgfpzENkfGyb/dgRqzYn3IMXLj7A43Vlg==", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/kerberos/-/kerberos-2.2.1.tgz", + "integrity": "sha512-Vlyv1tjAPb0y2VIJ03dKkUjsneGIBuTkH24uGRx6/DrKpFlVuGPmct3m5aEotljVUlw7PAGWABwR5aNeW7y8Zw==", "dev": true, "hasInstallScript": true, "license": "Apache-2.0", "dependencies": { - "bindings": "^1.5.0", "node-addon-api": "^6.1.0", "prebuild-install": "^7.1.2" }, @@ -56134,7 +56133,7 @@ "hadron-type-checker": "^7.4.4", "lodash": "^4.17.21", "mocha": "^10.2.0", - "mongodb": "^6.13.1", + "mongodb": "^6.14.1", "mongodb-collection-model": "^5.25.4", "mongodb-data-service": "^22.25.4", "mongodb-database-model": "^2.25.4", @@ -56547,7 +56546,7 @@ "hadron-app-registry": "^9.4.4", "lodash": "^4.17.21", "mocha": "^10.2.0", - "mongodb": "^6.13.1", + "mongodb": "^6.14.1", "mongodb-build-info": "^1.7.2", "mongodb-connection-string-url": "^3.0.1", "mongodb-data-service": "^22.25.4", @@ -56922,7 +56921,7 @@ "hadron-app-registry": "^9.4.4", "lodash": "^4.17.21", "mocha": "^10.2.0", - "mongodb": "^6.13.1", + "mongodb": "^6.14.1", "nyc": "^15.1.0", "react": "^17.0.2", "react-dom": "^17.0.2", @@ -57167,7 +57166,7 @@ "eslint": "^7.25.0", "hadron-app-registry": "^9.4.4", "mocha": "^10.2.0", - "mongodb": "^6.13.1", + "mongodb": "^6.14.1", "mongodb-schema": "^12.4.0", "nyc": "^15.1.0", "p-queue": "^7.4.1", @@ -57383,7 +57382,7 @@ "hadron-ipc": "^3.4.4", "lodash": "^4.17.21", "mocha": "^10.2.0", - "mongodb": "^6.13.1", + "mongodb": "^6.14.1", "mongodb-data-service": "^22.25.4", "mongodb-ns": "^2.4.2", "mongodb-query-parser": "^4.3.0", @@ -57476,7 +57475,7 @@ "hadron-app-registry": "^9.4.4", "lodash": "^4.17.21", "mocha": "^10.2.0", - "mongodb": "^6.13.1", + "mongodb": "^6.14.1", "mongodb-collection-model": "^5.25.4", "mongodb-data-service": "^22.25.4", "mongodb-ns": "^2.4.2", @@ -57773,7 +57772,7 @@ "hadron-app-registry": "^9.4.4", "lodash": "^4.17.21", "mocha": "^10.2.0", - "mongodb": "^6.13.1", + "mongodb": "^6.14.1", "mongodb-instance-model": "^12.26.4", "mongodb-ns": "^2.4.2", "mongodb-query-parser": "^4.3.0", @@ -57938,7 +57937,7 @@ "leaflet-draw": "^1.0.4", "lodash": "^4.17.21", "mocha": "^10.2.0", - "mongodb": "^6.13.1", + "mongodb": "^6.14.1", "mongodb-query-util": "^2.4.4", "mongodb-schema": "^12.4.0", "numeral": "^1.5.6", @@ -58328,9 +58327,9 @@ "@mongodb-js/prettier-config-compass": "^1.2.4", "@mongodb-js/testing-library-compass": "^1.2.4", "@mongodb-js/tsconfig-compass": "^1.2.4", - "@mongosh/browser-repl": "^3.5.0", - "@mongosh/logging": "^3.5.0", - "@mongosh/node-runtime-worker-thread": "^3.3.0", + "@mongosh/browser-repl": "^3.6.0", + "@mongosh/logging": "^3.6.0", + "@mongosh/node-runtime-worker-thread": "^3.3.1", "@types/enzyme": "^3.10.14", "bson": "^6.10.3", "chai": "^4.2.0", @@ -58383,7 +58382,7 @@ "hadron-app-registry": "^9.4.4", "lodash": "^4.17.21", "mocha": "^10.2.0", - "mongodb": "^6.13.1", + "mongodb": "^6.14.1", "mongodb-data-service": "^22.25.4", "mongodb-instance-model": "^12.26.4", "mongodb-ns": "^2.4.2", @@ -58806,7 +58805,7 @@ "is-ip": "^5.0.1", "lodash": "^4.17.21", "mocha": "^10.2.0", - "mongodb": "^6.13.1", + "mongodb": "^6.14.1", "mongodb-connection-string-url": "^3.0.1", "mongodb-data-service": "^22.25.4", "mongodb-ns": "^2.4.2", @@ -59205,7 +59204,7 @@ "eslint": "^7.25.0", "lodash": "^4.17.21", "mocha": "^10.2.0", - "mongodb": "^6.13.1", + "mongodb": "^6.14.1", "mongodb-build-info": "^1.7.2", "mongodb-connection-string-url": "^3.0.1", "mongodb-data-service": "^22.25.4", @@ -59277,7 +59276,7 @@ "gen-esm-wrapper": "^1.1.0", "lodash": "^4.17.21", "mocha": "^10.2.0", - "mongodb": "^6.13.1", + "mongodb": "^6.14.1", "mongodb-connection-string-url": "^3.0.1", "mongodb-data-service": "^22.25.4", "nyc": "^15.1.0", @@ -59500,9 +59499,9 @@ } }, "@mongodb-js/devtools-connect": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/@mongodb-js/devtools-connect/-/devtools-connect-3.4.1.tgz", - "integrity": "sha512-J+n5Bz/V2e6jXSUSMUra9AGvYWJp9pKWxdTsQ6JEedufxiB7uM/glhyACGH2WIUaoOQk6nvSma8BdizUm/qNHg==", + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@mongodb-js/devtools-connect/-/devtools-connect-3.7.0.tgz", + "integrity": "sha512-j/8Wgfp7La/5Rz52Vyic8aK1GnMEGMVN3TCB+P6/QNFVYpWp81SEy8kW12oIFvNUKgpzV75o9Ixb2K44r15J0w==", "requires": { "@mongodb-js/devtools-proxy-support": "^0.4.2", "@mongodb-js/oidc-http-server-pages": "1.1.3", @@ -60793,19 +60792,19 @@ } }, "@mongosh/arg-parser": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/@mongosh/arg-parser/-/arg-parser-3.5.0.tgz", - "integrity": "sha512-QAUDaGVkkBPCTdEr2ZxDo/nOOG/k1L7DaazGdICRr+uyKlk/N7BBhGBHtDeEg6l6VG03oBOuGL7+Rc605xQx2w==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/@mongosh/arg-parser/-/arg-parser-3.6.0.tgz", + "integrity": "sha512-7iZeddXYj8JqAER8/tKWte6Jcm4oBzUvJQo3CYTXyyYE8feBI0cdVaF9yQyGCLPFpnfe+6j6oA5+l6jgHAzyYg==", "requires": { "@mongosh/errors": "2.4.0", - "@mongosh/i18n": "2.9.0", + "@mongosh/i18n": "2.9.1", "mongodb-connection-string-url": "^3.0.1" } }, "@mongosh/async-rewriter2": { - "version": "2.4.5", - "resolved": "https://registry.npmjs.org/@mongosh/async-rewriter2/-/async-rewriter2-2.4.5.tgz", - "integrity": "sha512-mgsJ+cjabPhxW2Apj36lcVDCLs5herKZaBYQ6+G+E2Z7cxBqGzeF585+C/7Q5EK3sspoVCPZbkxF1HJfFJojqw==", + "version": "2.4.6", + "resolved": "https://registry.npmjs.org/@mongosh/async-rewriter2/-/async-rewriter2-2.4.6.tgz", + "integrity": "sha512-v5Oq7eZ4dla13hKMbtFLVr0CHSOSeKHWoFxAtU8aD30N2ES2tT6i8/iNUMVsdF3zzLyzFfH/B81epDFNjNiOUA==", "requires": { "@babel/core": "^7.22.8", "@babel/plugin-transform-destructuring": "^7.22.5", @@ -60815,26 +60814,26 @@ } }, "@mongosh/autocomplete": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/@mongosh/autocomplete/-/autocomplete-3.5.0.tgz", - "integrity": "sha512-UbuHApagks+yZIAiMZHMVWec/rTc35BOg3sLrUWd3nSoUWZ/G2i2x3nNeh1VVcuSSBxXvztZK8E7rJ3iyu0QNA==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/@mongosh/autocomplete/-/autocomplete-3.6.0.tgz", + "integrity": "sha512-n7+XG28BgakNKMPeP9Cm06FZ+vkoevymMKEM96Htej01cR2amcNBko/6Bet21sEAR0nrgGgKNEw3gF9o7pLqhg==", "requires": { "@mongodb-js/mongodb-constants": "^0.10.1", - "@mongosh/shell-api": "3.5.0", + "@mongosh/shell-api": "3.6.0", "semver": "^7.5.4" } }, "@mongosh/browser-repl": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/@mongosh/browser-repl/-/browser-repl-3.5.0.tgz", - "integrity": "sha512-4qr0eNWIfNe2CHT4ynqeWiHhHf5NUyDoGrqESaN7Xk/LGZgeZ2+vb8onAIz0zY4jgEPBk2rJvYwKA3ZFFGg2sQ==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/@mongosh/browser-repl/-/browser-repl-3.6.0.tgz", + "integrity": "sha512-01GWu2jySXg63j0cEYg7xDgxfcAe63fabaJYtqE2E2IIppNTMSopQAWI2PHPBXaWNcvChT5UDQodPAIK2SJE7w==", "requires": { - "@mongosh/browser-runtime-core": "3.5.0", + "@mongosh/browser-runtime-core": "3.6.0", "@mongosh/errors": "2.4.0", - "@mongosh/history": "2.4.5", - "@mongosh/i18n": "2.9.0", - "@mongosh/node-runtime-worker-thread": "3.3.0", - "@mongosh/service-provider-core": "3.0.5", + "@mongosh/history": "2.4.6", + "@mongosh/i18n": "2.9.1", + "@mongosh/node-runtime-worker-thread": "3.3.1", + "@mongosh/service-provider-core": "3.1.0", "numeral": "^2.0.6", "text-table": "^0.2.0" }, @@ -60847,14 +60846,14 @@ } }, "@mongosh/browser-runtime-core": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/@mongosh/browser-runtime-core/-/browser-runtime-core-3.5.0.tgz", - "integrity": "sha512-u0Uz1Ir9kheKjDqxsHiDi5jPvtpracfM3I+lcC1Ua2ci1DoG6WmiZ/mohiQxXSR9rtcV1F/5PCa1/KRwXM25gw==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/@mongosh/browser-runtime-core/-/browser-runtime-core-3.6.0.tgz", + "integrity": "sha512-O9zGDFMneemiqmyxcROnoDP9OB4XkqHskgJYlLYszC0kwj4W05+7Wr32Tvc+UotjMm36LbWQn0pHoCG4ikpjug==", "requires": { - "@mongosh/autocomplete": "3.5.0", - "@mongosh/service-provider-core": "3.0.5", - "@mongosh/shell-api": "3.5.0", - "@mongosh/shell-evaluator": "3.5.0" + "@mongosh/autocomplete": "3.6.0", + "@mongosh/service-provider-core": "3.1.0", + "@mongosh/shell-api": "3.6.0", + "@mongosh/shell-evaluator": "3.6.0" } }, "@mongosh/errors": { @@ -60863,39 +60862,39 @@ "integrity": "sha512-2YwY4TYlrAy3VC9Y5Xa1OWlbdb57O0ZTDfntROFcfotrMXkZc9CU+jafrKRNcPJz8UAhoUcSTDJuaLpC3AutHg==" }, "@mongosh/history": { - "version": "2.4.5", - "resolved": "https://registry.npmjs.org/@mongosh/history/-/history-2.4.5.tgz", - "integrity": "sha512-wo6tlPAcnT/DZGaM6S3JT+ldW//weyjcWKslFfsCgv/K1eo2cX8lTnCYWeZUKJiZWrylDsRd1T7k2eGGZ72Fng==", + "version": "2.4.6", + "resolved": "https://registry.npmjs.org/@mongosh/history/-/history-2.4.6.tgz", + "integrity": "sha512-vEPJ0Y1FUM9aSxw/OQiV6QfAy0AjwZn9tMvFY27m4786jEM3hpJIPwDIRe33i7/hankLz8umsFrSTAnrT3icQw==", "requires": { "mongodb-connection-string-url": "^3.0.1", "mongodb-redact": "^1.1.5" } }, "@mongosh/i18n": { - "version": "2.9.0", - "resolved": "https://registry.npmjs.org/@mongosh/i18n/-/i18n-2.9.0.tgz", - "integrity": "sha512-qOAEuuXazIDTIjPl7TgkmIDeM5NjqqO/FC10sM/cw/YzLvIMJ6wb/PMowBy5Z9asOrgLvs7SmD6J+rHoIvmtJQ==", + "version": "2.9.1", + "resolved": "https://registry.npmjs.org/@mongosh/i18n/-/i18n-2.9.1.tgz", + "integrity": "sha512-fpK02p8nMsX3HF/I0KvEZlo+XmKLgtZfyop+JroUJbM+LxPxUzknirHAugLhK7JeuHTov8FSbbNhn2TWoN+XBg==", "requires": { "@mongosh/errors": "2.4.0" } }, "@mongosh/logging": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/@mongosh/logging/-/logging-3.5.0.tgz", - "integrity": "sha512-K3eipDAltOgJ8kV/Gbu4OVDEvL+ZTJ94IYZdj7VcWZyomYIyp2buSTR/ZCWK222mEjHUry5esyalrlH5vmR7fw==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/@mongosh/logging/-/logging-3.6.0.tgz", + "integrity": "sha512-f0fkAVNzV9Ja90DPpeQv2KL9zoYauUQh+ejoong4X88sEw5n1bYVOvng9Ic3tJFioGlcuWVe1waDDMio5SWElA==", "requires": { "@mongodb-js/devtools-connect": "^3.4.1", "@mongosh/errors": "2.4.0", - "@mongosh/history": "2.4.5", - "@mongosh/types": "3.5.0", + "@mongosh/history": "2.4.6", + "@mongosh/types": "3.6.0", "mongodb-log-writer": "^2.3.1", "mongodb-redact": "^1.1.5" } }, "@mongosh/node-runtime-worker-thread": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/@mongosh/node-runtime-worker-thread/-/node-runtime-worker-thread-3.3.0.tgz", - "integrity": "sha512-WIkuI5CmPWrUfsJ/eQNqagtQJb6U+TndiRk1ebZOBF6rh+fXEBFDsBdrgrE6Mrvo0v1BwUQLc5sTjLhRfzlYWQ==", + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/@mongosh/node-runtime-worker-thread/-/node-runtime-worker-thread-3.3.1.tgz", + "integrity": "sha512-aHeEk4BoZBgE4qUreDiTa06PRMAB3RoyGeaz0BRJOBlrPHi/P86r2KqROWwmAb+4AbQ9lOQEYU5ut+GsoKKqaw==", "requires": { "interruptor": "^1.0.1", "system-ca": "^2.0.1", @@ -60903,46 +60902,46 @@ } }, "@mongosh/service-provider-core": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/@mongosh/service-provider-core/-/service-provider-core-3.0.5.tgz", - "integrity": "sha512-dCGyffuvTjLn06tMX+YvT7kqxaIqMzvflri4VDjdrHCX0dJcVncw+jWk8RUyDuImDJYQGmWze0O58b/nDWPnFQ==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@mongosh/service-provider-core/-/service-provider-core-3.1.0.tgz", + "integrity": "sha512-QSmTzmiD1Tlj9liWSqZJni12B8Afrqii3BoB96LMLHxPRkzTu+H9nWwYOF0d+IQaab7wW2HWDlpSJYhzgQdCKA==", "requires": { "@aws-sdk/credential-providers": "^3.525.0", "@mongosh/errors": "2.4.0", "bson": "^6.10.3", - "mongodb": "^6.13.0", + "mongodb": "^6.14.2", "mongodb-build-info": "^1.7.2", - "mongodb-client-encryption": "^6.1.1", + "mongodb-client-encryption": "^6.3.0", "mongodb-connection-string-url": "^3.0.1" } }, "@mongosh/shell-api": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/@mongosh/shell-api/-/shell-api-3.5.0.tgz", - "integrity": "sha512-fGBJJ8vwa6yzBpboK2I+rigd/9Zq1lLd1+0NSdDbq/eibIQ32UXUKoK/TgvU6ucte/HZJv0iz++ZRTxT7iPqVQ==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/@mongosh/shell-api/-/shell-api-3.6.0.tgz", + "integrity": "sha512-mxf+t+yj8zWkl95pcWGSkFxSL/giLjCkbVnCetmYNIcUMWILyh+dFNzf+pgbQVom0Mt51tAquw4Odb3ufQ+BGA==", "requires": { - "@mongosh/arg-parser": "3.5.0", + "@mongosh/arg-parser": "3.6.0", "@mongosh/errors": "2.4.0", - "@mongosh/history": "2.4.5", - "@mongosh/i18n": "2.9.0", - "@mongosh/service-provider-core": "3.0.5", + "@mongosh/history": "2.4.6", + "@mongosh/i18n": "2.9.1", + "@mongosh/service-provider-core": "3.1.0", "mongodb-redact": "^1.1.5" } }, "@mongosh/shell-evaluator": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/@mongosh/shell-evaluator/-/shell-evaluator-3.5.0.tgz", - "integrity": "sha512-OdtSCeBVKLXCSWW2/5Fj03DMAxt82rNJagciOUpywlVqabjRp5Db2uJXCbm2LccLcTyaUqWwb/vU9xglkHGgaA==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/@mongosh/shell-evaluator/-/shell-evaluator-3.6.0.tgz", + "integrity": "sha512-/YMbrou7RQzgxp4+/04yGiOJ3pnzvcpJdnOe8ecQ9HDscQkW5zarXlupu0uubmUWUfTQVuEn5Sy299H59f4zzA==", "requires": { - "@mongosh/async-rewriter2": "2.4.5", - "@mongosh/history": "2.4.5", - "@mongosh/shell-api": "3.5.0" + "@mongosh/async-rewriter2": "2.4.6", + "@mongosh/history": "2.4.6", + "@mongosh/shell-api": "3.6.0" } }, "@mongosh/types": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/@mongosh/types/-/types-3.5.0.tgz", - "integrity": "sha512-IXhxy/1/LSEyCrG31MwUuF2OWwLDHmYk8SGtcT5FoJoPHcCoZYI6QLbXkVGlFRdsWNct2/BSX5Np4bx1gNSMlQ==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/@mongosh/types/-/types-3.6.0.tgz", + "integrity": "sha512-p6NXCTa4FjjTQAQJk9OehfXKFIE/vdQJOqcMbVR3Cxg2zVCnfV16NDnuxpFHYnLkgqL9Cz10BtUGSZPDMFJXew==", "requires": { "@mongodb-js/devtools-connect": "^3.4.1" } @@ -67970,7 +67969,7 @@ "hadron-build": "^25.7.4", "lodash": "^4.17.21", "mocha": "^10.2.0", - "mongodb": "^6.13.1", + "mongodb": "^6.14.1", "mongodb-build-info": "^1.7.2", "mongodb-connection-string-url": "^3.0.1", "mongodb-log-writer": "^2.3.4", @@ -79694,9 +79693,9 @@ "integrity": "sha512-5LC9SOxjSc2HF6vO2CyuTDNivEdoz2IvyJJGj6X8DJ0eFyfszE0QiEd+iXmBvUP3WHxSjFH/vIsA0EN00cgr8w==" }, "mongodb": { - "version": "6.13.1", - "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-6.13.1.tgz", - "integrity": "sha512-gdq40tX8StmhP6akMp1pPoEVv+9jTYFSrga/g23JxajPAQhH39ysZrHGzQCSd9PEOnuEQEdjIWqxO7ZSwC0w7Q==", + "version": "6.14.2", + "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-6.14.2.tgz", + "integrity": "sha512-kMEHNo0F3P6QKDq17zcDuPeaywK/YaJVCEQRzPF3TOM/Bl9MFg64YE5Tu7ifj37qZJMhwU1tl2Ioivws5gRG5Q==", "requires": { "@mongodb-js/saslprep": "^1.1.9", "bson": "^6.10.3", @@ -79712,12 +79711,12 @@ } }, "mongodb-client-encryption": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/mongodb-client-encryption/-/mongodb-client-encryption-6.1.1.tgz", - "integrity": "sha512-hqy68WWNZmkoqldFlpw8TQNaJUOor4YCM/FuxETZTeTZpGEbQwkTwdrQlgiV14qyOizPw8abbAxGi3zX+raA9w==", + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/mongodb-client-encryption/-/mongodb-client-encryption-6.3.0.tgz", + "integrity": "sha512-OaOg02vglPxxrfY01alC0ER0W4WMuNO2ZJR3ehAUcuGYreJaJ+aX+rUQiQkdQHiXvnVPDUx/4QDr2CR1/FvpcQ==", "requires": { "node-addon-api": "^4.3.0", - "prebuild-install": "^7.1.2" + "prebuild-install": "^7.1.3" } }, "mongodb-cloud-info": { @@ -79845,7 +79844,7 @@ "@mongodb-js/testing-library-compass": "^1.2.4", "@mongodb-js/tsconfig-compass": "^1.2.4", "@mongodb-js/webpack-config-compass": "^1.6.4", - "@mongosh/node-runtime-worker-thread": "^3.3.0", + "@mongosh/node-runtime-worker-thread": "^3.3.1", "@segment/analytics-node": "^1.1.4", "@types/minimatch": "^5.1.2", "ampersand-view": "^9.0.0", @@ -79869,16 +79868,16 @@ "hadron-app-registry": "^9.4.4", "hadron-build": "^25.7.4", "hadron-ipc": "^3.4.4", - "kerberos": "^2.2.0", + "kerberos": "^2.2.1", "keytar": "^7.9.0", "local-links": "^1.4.0", "macos-export-certificate-and-key": "^1.1.2", "make-fetch-happen": "^10.2.1", "marky": "^1.2.1", "minimatch": "^10.0.1", - "mongodb": "^6.13.1", + "mongodb": "^6.14.1", "mongodb-build-info": "^1.7.2", - "mongodb-client-encryption": "^6.1.0", + "mongodb-client-encryption": "^6.3.0", "mongodb-cloud-info": "^2.1.2", "mongodb-connection-string-url": "^3.0.1", "mongodb-data-service": "^22.25.4", @@ -79969,11 +79968,10 @@ } }, "kerberos": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/kerberos/-/kerberos-2.2.0.tgz", - "integrity": "sha512-yz6iP+34Qp8XjwfmJ56SD9coeSfLIoH0JBrLi6Iw76FdwsRJoNw3nCgfpzENkfGyb/dgRqzYn3IMXLj7A43Vlg==", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/kerberos/-/kerberos-2.2.1.tgz", + "integrity": "sha512-Vlyv1tjAPb0y2VIJ03dKkUjsneGIBuTkH24uGRx6/DrKpFlVuGPmct3m5aEotljVUlw7PAGWABwR5aNeW7y8Zw==", "requires": { - "bindings": "^1.5.0", "node-addon-api": "^6.1.0", "prebuild-install": "^7.1.2" } @@ -80046,12 +80044,12 @@ "chai-as-promised": "^7.1.1", "depcheck": "^1.4.1", "eslint": "^7.25.0", - "kerberos": "^2.2.0", + "kerberos": "^2.2.1", "lodash": "^4.17.21", "mocha": "^10.2.0", - "mongodb": "^6.13.1", + "mongodb": "^6.14.1", "mongodb-build-info": "^1.7.2", - "mongodb-client-encryption": "^6.1.0", + "mongodb-client-encryption": "^6.3.0", "mongodb-connection-string-url": "^3.0.1", "mongodb-log-writer": "^2.3.4", "mongodb-ns": "^2.4.2", @@ -80108,12 +80106,11 @@ } }, "kerberos": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/kerberos/-/kerberos-2.2.0.tgz", - "integrity": "sha512-yz6iP+34Qp8XjwfmJ56SD9coeSfLIoH0JBrLi6Iw76FdwsRJoNw3nCgfpzENkfGyb/dgRqzYn3IMXLj7A43Vlg==", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/kerberos/-/kerberos-2.2.1.tgz", + "integrity": "sha512-Vlyv1tjAPb0y2VIJ03dKkUjsneGIBuTkH24uGRx6/DrKpFlVuGPmct3m5aEotljVUlw7PAGWABwR5aNeW7y8Zw==", "dev": true, "requires": { - "bindings": "^1.5.0", "node-addon-api": "^6.1.0", "prebuild-install": "^7.1.2" } @@ -80474,9 +80471,9 @@ } }, "mongodb-log-writer": { - "version": "2.3.4", - "resolved": "https://registry.npmjs.org/mongodb-log-writer/-/mongodb-log-writer-2.3.4.tgz", - "integrity": "sha512-Z2rXUotJX3DVBlRN8y2Dzv26/SnEYlD7gh3uzvxL2myFKfyB2zQjY8DeQWb11WEam9v9LF9VwhndapLOTkJ+yA==", + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/mongodb-log-writer/-/mongodb-log-writer-2.4.0.tgz", + "integrity": "sha512-t/OcqDLl+JaVKnP7g3Zz3mCCowIAW5rp8AxD1IqVxy5rVApV332JHk5NkedtuHlRVIsN/qCujH4ezZZmoP16IQ==", "requires": { "heap-js": "^2.3.0" } @@ -80739,9 +80736,9 @@ "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==" }, "napi-build-utils": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/napi-build-utils/-/napi-build-utils-1.0.2.tgz", - "integrity": "sha512-ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg==" + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/napi-build-utils/-/napi-build-utils-2.0.0.tgz", + "integrity": "sha512-GEbrYkbfF7MoNaoh2iGG84Mnf/WZfB0GdGEsM8wz7Expx/LlWf5U8t9nvJKXSp3qr5IsEbK04cBGhol/KwOsWA==" }, "native-request": { "version": "1.1.0", @@ -83900,16 +83897,16 @@ } }, "prebuild-install": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-7.1.2.tgz", - "integrity": "sha512-UnNke3IQb6sgarcZIDU3gbMeTp/9SSU1DAIkil7PrqG1vZlBtY5msYccSKSHDqa3hNg436IXK+SNImReuA1wEQ==", + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-7.1.3.tgz", + "integrity": "sha512-8Mf2cbV7x1cXPUILADGI3wuhfqWvtiLA1iclTDbFRZkgRQS0NqsPZphna9V+HyTEadheuPmjaJMsbzKQFOzLug==", "requires": { "detect-libc": "^2.0.0", "expand-template": "^2.0.3", "github-from-package": "0.0.0", "minimist": "^1.2.3", "mkdirp-classic": "^0.5.3", - "napi-build-utils": "^1.0.1", + "napi-build-utils": "^2.0.0", "node-abi": "^3.3.0", "pump": "^3.0.0", "rc": "^1.2.7", diff --git a/packages/compass-aggregations/package.json b/packages/compass-aggregations/package.json index bffa1495dc4..4f1e69cf264 100644 --- a/packages/compass-aggregations/package.json +++ b/packages/compass-aggregations/package.json @@ -84,7 +84,7 @@ "hadron-document": "^8.8.4", "hadron-type-checker": "^7.4.4", "lodash": "^4.17.21", - "mongodb": "^6.13.1", + "mongodb": "^6.14.1", "mongodb-collection-model": "^5.25.4", "mongodb-data-service": "^22.25.4", "mongodb-database-model": "^2.25.4", diff --git a/packages/compass-connections/package.json b/packages/compass-connections/package.json index c3483b2f900..cb95de0d11f 100644 --- a/packages/compass-connections/package.json +++ b/packages/compass-connections/package.json @@ -62,7 +62,7 @@ "compass-preferences-model": "^2.33.4", "hadron-app-registry": "^9.4.4", "lodash": "^4.17.21", - "mongodb": "^6.13.1", + "mongodb": "^6.14.1", "mongodb-build-info": "^1.7.2", "mongodb-connection-string-url": "^3.0.1", "mongodb-data-service": "^22.25.4", diff --git a/packages/compass-e2e-tests/package.json b/packages/compass-e2e-tests/package.json index 3efe385ca33..f29da172fc4 100644 --- a/packages/compass-e2e-tests/package.json +++ b/packages/compass-e2e-tests/package.json @@ -58,7 +58,7 @@ "hadron-build": "^25.7.4", "lodash": "^4.17.21", "mocha": "^10.2.0", - "mongodb": "^6.13.1", + "mongodb": "^6.14.1", "mongodb-build-info": "^1.7.2", "mongodb-connection-string-url": "^3.0.1", "mongodb-log-writer": "^2.3.4", diff --git a/packages/compass-explain-plan/package.json b/packages/compass-explain-plan/package.json index fff9851eb52..c3fd5560bd8 100644 --- a/packages/compass-explain-plan/package.json +++ b/packages/compass-explain-plan/package.json @@ -82,7 +82,7 @@ "d3-hierarchy": "^3.1.2", "hadron-app-registry": "^9.4.4", "lodash": "^4.17.21", - "mongodb": "^6.13.1", + "mongodb": "^6.14.1", "react": "^17.0.2", "react-redux": "^8.1.3", "redux": "^4.2.1", diff --git a/packages/compass-generative-ai/package.json b/packages/compass-generative-ai/package.json index 94b1d42765a..f08a2e4a99a 100644 --- a/packages/compass-generative-ai/package.json +++ b/packages/compass-generative-ai/package.json @@ -59,9 +59,9 @@ "@mongodb-js/compass-logging": "^1.6.4", "@mongodb-js/compass-utils": "^0.8.4", "bson": "^6.10.3", + "mongodb": "^6.14.1", "compass-preferences-model": "^2.33.4", "hadron-app-registry": "^9.4.4", - "mongodb": "^6.13.1", "mongodb-schema": "^12.4.0", "react": "^17.0.2", "react-redux": "^8.1.3", diff --git a/packages/compass-import-export/package.json b/packages/compass-import-export/package.json index a7978cf058f..abee8cb1ca0 100644 --- a/packages/compass-import-export/package.json +++ b/packages/compass-import-export/package.json @@ -64,7 +64,7 @@ "hadron-document": "^8.8.4", "hadron-ipc": "^3.4.4", "lodash": "^4.17.21", - "mongodb": "^6.13.1", + "mongodb": "^6.14.1", "mongodb-data-service": "^22.25.4", "mongodb-ns": "^2.4.2", "mongodb-query-parser": "^4.3.0", diff --git a/packages/compass-indexes/package.json b/packages/compass-indexes/package.json index 96f0bd635aa..c2cf2934582 100644 --- a/packages/compass-indexes/package.json +++ b/packages/compass-indexes/package.json @@ -82,7 +82,7 @@ "compass-preferences-model": "^2.33.4", "hadron-app-registry": "^9.4.4", "lodash": "^4.17.21", - "mongodb": "^6.13.1", + "mongodb": "^6.14.1", "mongodb-collection-model": "^5.25.4", "mongodb-data-service": "^22.25.4", "mongodb-query-parser": "^4.3.0", diff --git a/packages/compass-query-bar/package.json b/packages/compass-query-bar/package.json index 3f06911fc4d..d17e73836f3 100644 --- a/packages/compass-query-bar/package.json +++ b/packages/compass-query-bar/package.json @@ -82,7 +82,7 @@ "compass-preferences-model": "^2.33.4", "hadron-app-registry": "^9.4.4", "lodash": "^4.17.21", - "mongodb": "^6.13.1", + "mongodb": "^6.14.1", "mongodb-instance-model": "^12.26.4", "mongodb-ns": "^2.4.2", "mongodb-query-parser": "^4.3.0", diff --git a/packages/compass-schema/package.json b/packages/compass-schema/package.json index 9966c53a8d5..90ba4568915 100644 --- a/packages/compass-schema/package.json +++ b/packages/compass-schema/package.json @@ -90,7 +90,7 @@ "leaflet-defaulticon-compatibility": "^0.1.1", "leaflet-draw": "^1.0.4", "lodash": "^4.17.21", - "mongodb": "^6.13.1", + "mongodb": "^6.14.1", "mongodb-query-util": "^2.4.4", "mongodb-schema": "^12.4.0", "numeral": "^1.5.6", diff --git a/packages/compass-shell/package.json b/packages/compass-shell/package.json index 885332b17ca..9e2228c2628 100644 --- a/packages/compass-shell/package.json +++ b/packages/compass-shell/package.json @@ -57,9 +57,9 @@ "@mongodb-js/compass-user-data": "^0.5.4", "@mongodb-js/compass-utils": "^0.8.4", "@mongodb-js/compass-workspaces": "^0.31.4", - "@mongosh/browser-repl": "^3.5.0", - "@mongosh/logging": "^3.5.0", - "@mongosh/node-runtime-worker-thread": "^3.3.0", + "@mongosh/browser-repl": "^3.6.0", + "@mongosh/logging": "^3.6.0", + "@mongosh/node-runtime-worker-thread": "^3.3.1", "bson": "^6.10.3", "compass-preferences-model": "^2.33.4", "hadron-app-registry": "^9.4.4", diff --git a/packages/compass-sidebar/package.json b/packages/compass-sidebar/package.json index 87e4cfa1e5f..3a532b1b8a6 100644 --- a/packages/compass-sidebar/package.json +++ b/packages/compass-sidebar/package.json @@ -61,7 +61,7 @@ "compass-preferences-model": "^2.33.4", "hadron-app-registry": "^9.4.4", "lodash": "^4.17.21", - "mongodb": "^6.13.1", + "mongodb": "^6.14.1", "mongodb-instance-model": "^12.26.4", "mongodb-ns": "^2.4.2", "react": "^17.0.2", diff --git a/packages/compass-web/package.json b/packages/compass-web/package.json index 5fb8104ee97..033dde30ad0 100644 --- a/packages/compass-web/package.json +++ b/packages/compass-web/package.json @@ -118,7 +118,7 @@ "is-ip": "^5.0.1", "lodash": "^4.17.21", "mocha": "^10.2.0", - "mongodb": "^6.13.1", + "mongodb": "^6.14.1", "mongodb-connection-string-url": "^3.0.1", "mongodb-data-service": "^22.25.4", "mongodb-ns": "^2.4.2", diff --git a/packages/compass/package.json b/packages/compass/package.json index 0b2d7b33fc8..3cec53bc474 100644 --- a/packages/compass/package.json +++ b/packages/compass/package.json @@ -180,11 +180,11 @@ "email": "compass@mongodb.com" }, "dependencies": { - "@mongosh/node-runtime-worker-thread": "^3.3.0", + "@mongosh/node-runtime-worker-thread": "^3.3.1", "clipboard": "^2.0.6", - "kerberos": "^2.2.0", + "kerberos": "^2.2.1", "keytar": "^7.9.0", - "mongodb-client-encryption": "^6.1.0", + "mongodb-client-encryption": "^6.3.0", "os-dns-native": "^1.2.1", "system-ca": "^2.0.0" }, @@ -262,7 +262,7 @@ "hadron-build": "^25.7.4", "hadron-ipc": "^3.4.4", "minimatch": "^10.0.1", - "mongodb": "^6.13.1", + "mongodb": "^6.14.1", "mongodb-build-info": "^1.7.2", "mongodb-cloud-info": "^2.1.2", "mongodb-connection-string-url": "^3.0.1", diff --git a/packages/connection-form/package.json b/packages/connection-form/package.json index a28c4c20751..d9c78955932 100644 --- a/packages/connection-form/package.json +++ b/packages/connection-form/package.json @@ -53,7 +53,7 @@ "@mongodb-js/connection-info": "^0.11.4", "@mongodb-js/shell-bson-parser": "^1.2.0", "lodash": "^4.17.21", - "mongodb": "^6.13.1", + "mongodb": "^6.14.1", "mongodb-build-info": "^1.7.2", "mongodb-connection-string-url": "^3.0.1", "mongodb-data-service": "^22.25.4", diff --git a/packages/connection-info/package.json b/packages/connection-info/package.json index f99dcabe6fb..fa69c01b831 100644 --- a/packages/connection-info/package.json +++ b/packages/connection-info/package.json @@ -52,7 +52,7 @@ }, "dependencies": { "lodash": "^4.17.21", - "mongodb": "^6.13.1", + "mongodb": "^6.14.1", "mongodb-connection-string-url": "^3.0.1", "mongodb-data-service": "^22.25.4" }, diff --git a/packages/data-service/package.json b/packages/data-service/package.json index 238738fc6c4..72a298cd6ba 100644 --- a/packages/data-service/package.json +++ b/packages/data-service/package.json @@ -57,7 +57,7 @@ "@mongodb-js/devtools-proxy-support": "^0.4.2", "bson": "^6.10.3", "lodash": "^4.17.21", - "mongodb": "^6.13.1", + "mongodb": "^6.14.1", "mongodb-build-info": "^1.7.2", "mongodb-connection-string-url": "^3.0.1", "mongodb-ns": "^2.4.2" @@ -76,7 +76,7 @@ "chai-as-promised": "^7.1.1", "depcheck": "^1.4.1", "eslint": "^7.25.0", - "kerberos": "^2.2.0", + "kerberos": "^2.2.1", "mocha": "^10.2.0", "mongodb-log-writer": "^2.3.4", "nyc": "^15.1.0", @@ -86,6 +86,6 @@ "typescript": "^5.0.4" }, "optionalDependencies": { - "mongodb-client-encryption": "^6.1.0" + "mongodb-client-encryption": "^6.3.0" } } diff --git a/packages/data-service/src/csfle-collection-tracker.spec.ts b/packages/data-service/src/csfle-collection-tracker.spec.ts index 078c03ad77a..fa88b3f23f7 100644 --- a/packages/data-service/src/csfle-collection-tracker.spec.ts +++ b/packages/data-service/src/csfle-collection-tracker.spec.ts @@ -469,7 +469,7 @@ describe('CSFLECollectionTracker', function () { } expect(err).to.be.instanceOf(Error); expect(err.message).to.match( - /\[Compass\] Missing encrypted field information of collection/ + /\[Compass\] Missing encrypted field information for collection/ ); }); diff --git a/packages/data-service/src/csfle-collection-tracker.ts b/packages/data-service/src/csfle-collection-tracker.ts index b6c1ddb4e6e..49ff1126781 100644 --- a/packages/data-service/src/csfle-collection-tracker.ts +++ b/packages/data-service/src/csfle-collection-tracker.ts @@ -14,6 +14,7 @@ import parseNamespace from 'mongodb-ns'; import _ from 'lodash'; import type { UnboundDataServiceImplLogger } from './logger'; import { mongoLogId } from './logger'; +import { EJSON } from 'bson'; /** * A list of field paths for a document. @@ -365,6 +366,12 @@ export class CSFLECollectionTrackerImpl implements CSFLECollectionTracker { return info; } + *_getCSFLECollectionNames(): Iterable> { + for (const ns of this._nsToInfo.keys()) { + yield parseNamespace(ns); + } + } + updateCollectionInfo( ns: string, result: CollectionInfoNameOnly & Partial @@ -402,19 +409,21 @@ export class CSFLECollectionTrackerImpl implements CSFLECollectionTracker { db: (dbName: string) => { return { listCollections: (filter: Document, opts: ListCollectionsOptions) => { + // eslint-disable-next-line @typescript-eslint/no-this-alias + const self = this; // there are no async generator arrow functions return { - toArray: async () => { + [Symbol.asyncIterator]: async function* () { const collectionInfos = await wrappedClient .db(dbName) .listCollections(filter, opts) .toArray(); - const err = this._checkListCollectionsForLibmongocryptResult( + const err = self._checkListCollectionsForLibmongocryptResult( dbName, filter, (collectionInfos ?? []) as CollectionInfo[] ); if (err) { - this._logger?.error( + self._logger?.error( 'COMPASS-DATA-SERVICE', mongoLogId(1_001_000_122), 'CSFLECollectionTracker', @@ -423,7 +432,7 @@ export class CSFLECollectionTrackerImpl implements CSFLECollectionTracker { ); throw err; } - return collectionInfos; + yield* collectionInfos; }, }; }, @@ -437,53 +446,70 @@ export class CSFLECollectionTrackerImpl implements CSFLECollectionTracker { filter: Document, collectionInfos: CollectionInfo[] ): Error | undefined { - if (typeof filter?.name !== 'string' || collectionInfos.length > 1) { + // filter is either { name: string } or { name: { $in: string[] } } + if ( + typeof filter?.name !== 'string' && + (!filter?.name || + typeof filter.name !== 'object' || + !Array.isArray(filter.name.$in) || + !(filter.name.$in as unknown[]).every( + (name) => typeof name === 'string' + )) + ) { // This is an assertion more than an actual error condition. // It ensures that we're only getting listCollections requests // in the format that we expect them to come in. return new Error( - `[Compass] Unexpected listCollections request on '${dbName}' with name: '${ - filter?.name as string - }'` + `[Compass] Unexpected listCollections request on '${dbName}' with filter: ${EJSON.stringify( + filter + )}` ); } + const filterNames: string[] = + typeof filter.name === 'string' ? [filter.name] : filter.name.$in; - const ns = `${dbName}.${filter.name}`; - const existingInfo = this._getCSFLECollectionInfo(ns); - - if (collectionInfos.length === 0) { - if (existingInfo.serverEnforcedEncryptedFields?.encryptedFields?.length) { - return new Error( - `[Compass] Missing encrypted field information of collection '${ns}'` - ); + // First check: All collections for which we had existing encrypted fields + // in the server schema also have a collection schema in the new listCollections response + for (const existingNs of this._getCSFLECollectionNames()) { + if ( + existingNs.database === dbName && + filterNames.includes(existingNs.collection) + ) { + const existingInfo = this._getCSFLECollectionInfo(existingNs.ns); + if ( + existingInfo.serverEnforcedEncryptedFields?.encryptedFields?.length && + !collectionInfos.some((info) => info.name === existingNs.collection) + ) { + return new Error( + `[Compass] Missing encrypted field information for collection '${existingNs.ns}'` + ); + } } - return; } - const [info] = collectionInfos; - if (filter.name !== info.name) { - // Also just a consistency check to make sure that things - // didn't go *terribly* wrong somewhere. - return new Error( - `[Compass] Unexpected listCollections name mismatch: got ${info.name}, expected ${filter.name}` + // Second check: All fields that were previously known to be encrypted + // are still encrypted in the new listCollections response + for (const info of collectionInfos) { + const ns = `${dbName}.${info.name}`; + const existingInfo = this._getCSFLECollectionInfo(ns); + + const newInfo = extractEncryptedFieldsFromListCollectionsResult( + info.options ); - } - const newInfo = extractEncryptedFieldsFromListCollectionsResult( - info.options - ); - for (const expectedEncryptedField of existingInfo - .serverEnforcedEncryptedFields?.encryptedFields ?? []) { - if ( - !newInfo.encryptedFields.some((field) => - _.isEqual(field, expectedEncryptedField) - ) - ) { - return new Error( - `[Compass] Missing encrypted field '${expectedEncryptedField.join( - '.' - )}' of collection '${ns}' in listCollections result` - ); + for (const expectedEncryptedField of existingInfo + .serverEnforcedEncryptedFields?.encryptedFields ?? []) { + if ( + !newInfo.encryptedFields.some((field) => + _.isEqual(field, expectedEncryptedField) + ) + ) { + return new Error( + `[Compass] Missing encrypted field '${expectedEncryptedField.join( + '.' + )}' of collection '${ns}' in listCollections result` + ); + } } } }