diff --git a/.evergreen/config.yml b/.evergreen/config.yml index c0190ad1ec..001ad80a2b 100644 --- a/.evergreen/config.yml +++ b/.evergreen/config.yml @@ -1468,28 +1468,7 @@ tasks: - func: install dependencies - func: bootstrap mongo-orchestration - func: run-compression-tests - - name: test-zstd-1.x-compression - tags: - - latest - - zstd - commands: - - command: expansions.update - type: setup - params: - updates: - - {key: VERSION, value: latest} - - {key: TOPOLOGY, value: replica_set} - - {key: AUTH, value: auth} - - {key: COMPRESSOR, value: zstd} - - {key: CLIENT_ENCRYPTION, value: 'false'} - - {key: TEST_CSFLE, value: 'false'} - - func: install dependencies - - func: bootstrap mongo-orchestration - - func: install package - vars: - PACKAGE: '@mongodb-js/zstd@1.x' - - func: run-compression-tests - - name: test-zstd-2.x-compression + - name: test-zstd-compression tags: - latest - zstd @@ -2887,8 +2866,7 @@ buildvariants: - test-socks5-csfle - test-socks5-tls - test-snappy-compression - - test-zstd-1.x-compression - - test-zstd-2.x-compression + - test-zstd-compression - test-tls-support-latest - test-tls-support-8.0 - test-tls-support-7.0 @@ -2942,8 +2920,7 @@ buildvariants: - test-socks5-csfle - test-socks5-tls - test-snappy-compression - - test-zstd-1.x-compression - - test-zstd-2.x-compression + - test-zstd-compression - test-tls-support-latest - test-tls-support-8.0 - test-tls-support-7.0 @@ -2995,8 +2972,7 @@ buildvariants: - test-socks5-csfle - test-socks5-tls - test-snappy-compression - - test-zstd-1.x-compression - - test-zstd-2.x-compression + - test-zstd-compression - test-tls-support-latest - test-tls-support-8.0 - test-tls-support-7.0 @@ -3040,8 +3016,7 @@ buildvariants: - test-socks5 - test-socks5-tls - test-snappy-compression - - test-zstd-1.x-compression - - test-zstd-2.x-compression + - test-zstd-compression - test-tls-support-latest - test-tls-support-8.0 - test-tls-support-7.0 @@ -3085,8 +3060,7 @@ buildvariants: - test-socks5 - test-socks5-tls - test-snappy-compression - - test-zstd-1.x-compression - - test-zstd-2.x-compression + - test-zstd-compression - test-tls-support-latest - test-tls-support-8.0 - test-tls-support-7.0 diff --git a/.evergreen/generate_evergreen_tasks.js b/.evergreen/generate_evergreen_tasks.js index 53312f2cd3..4264daf171 100644 --- a/.evergreen/generate_evergreen_tasks.js +++ b/.evergreen/generate_evergreen_tasks.js @@ -243,7 +243,7 @@ TASKS.push({ }); TASKS.push({ - name: `test-zstd-1.x-compression`, + name: `test-zstd-compression`, tags: ['latest', 'zstd'], commands: [ updateExpansions({ @@ -256,31 +256,6 @@ TASKS.push({ }), { func: 'install dependencies' }, { func: 'bootstrap mongo-orchestration' }, - { - func: 'install package', - vars: { - PACKAGE: '@mongodb-js/zstd@1.x' - } - }, - { func: 'run-compression-tests' } - ] -}); - -TASKS.push({ - name: `test-zstd-2.x-compression`, - tags: ['latest', 'zstd'], - commands: [ - updateExpansions({ - VERSION: 'latest', - TOPOLOGY: 'replica_set', - AUTH: 'auth', - COMPRESSOR: 'zstd', - CLIENT_ENCRYPTION: 'false', - TEST_CSFLE: 'false' - }), - { func: 'install dependencies' }, - { func: 'bootstrap mongo-orchestration' }, - // no need to manually install zstd - we specify 2.x as a dev dependency in package.json { func: 'run-compression-tests' } ] }); diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 918de02f95..573d59743c 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -32,13 +32,19 @@ updates: versions: [">=10.0.0"] # we ignore TS as a part of quarterly dependency updates. - dependency-name: "typescript" - # stay on the supported major version of gcp-metadata - - dependency-name: "gcp-metadata" - versions: [">=6.0.0"] # NODE-3773: sinon 19+ breaks the srv polling unit tests - dependency-name: "sinon" versions: ["18.x"] + # ignore all peer dependencies + - dependency-name: "gcp-metadata" + - dependency-name: "@aws-sdk/credential-providers" + - dependency-name: "kerberos" + - dependency-name: "mongodb-client-encryption" + - dependency-name: "snappy" + - dependency-name: "gcp-metadata" + - dependency-name: "@mongodb-js/zstd" + versioning-strategy: increase groups: diff --git a/package-lock.json b/package-lock.json index b0b3226451..7c6e6f2a33 100644 --- a/package-lock.json +++ b/package-lock.json @@ -44,7 +44,7 @@ "eslint-plugin-tsdoc": "^0.4.0", "eslint-plugin-unused-imports": "^4.2.0", "express": "^5.1.0", - "gcp-metadata": "^5.3.0", + "gcp-metadata": "^7.0.1", "js-yaml": "^4.1.0", "mocha": "^11.7.1", "mocha-sinon": "^2.1.2", @@ -69,13 +69,13 @@ "node": ">=20.19.0" }, "peerDependencies": { - "@aws-sdk/credential-providers": "^3.188.0", - "@mongodb-js/zstd": "^1.1.0 || ^2.0.0", - "gcp-metadata": "^5.2.0", + "@aws-sdk/credential-providers": "^3.806.0", + "@mongodb-js/zstd": "^2.0.0", + "gcp-metadata": "^7.0.1", "kerberos": "^2.0.1", "mongodb-client-encryption": "^7.0.0-alpha", - "snappy": "^7.3.2", - "socks": "^2.7.1" + "snappy": "^7.3.0", + "socks": "^2.8.6" }, "peerDependenciesMeta": { "@aws-sdk/credential-providers": { @@ -3627,16 +3627,13 @@ } }, "node_modules/agent-base": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", - "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "version": "7.1.4", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.4.tgz", + "integrity": "sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==", "dev": true, "license": "MIT", - "dependencies": { - "debug": "4" - }, "engines": { - "node": ">= 6.0.0" + "node": ">= 14" } }, "node_modules/aggregate-error": { @@ -4404,6 +4401,16 @@ "node": ">= 8" } }, + "node_modules/data-uri-to-buffer": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-4.0.1.tgz", + "integrity": "sha512-0R9ikRb668HB7QDxT1vkpuUBtqc53YyAwMwGeUFKRojY/NWKvdZ+9UYtRfGmhqNbRkTSVpMbmyhXipFFv2cb/A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 12" + } + }, "node_modules/debug": { "version": "4.4.0", "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.0.tgz", @@ -5307,6 +5314,30 @@ "reusify": "^1.0.4" } }, + "node_modules/fetch-blob": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/fetch-blob/-/fetch-blob-3.2.0.tgz", + "integrity": "sha512-7yAQpD2UMJzLi1Dqv7qFYnPbaPx7ZfFK6PiIxQ4PfkGPyNyl2Ugx+a/umUonmKqjhM4DnfbMvdX6otXq83soQQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/jimmywarting" + }, + { + "type": "paypal", + "url": "https://paypal.me/jimmywarting" + } + ], + "license": "MIT", + "dependencies": { + "node-domexception": "^1.0.0", + "web-streams-polyfill": "^3.0.3" + }, + "engines": { + "node": "^12.20 || >= 14.13" + } + }, "node_modules/file-entry-cache": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-8.0.0.tgz", @@ -5431,6 +5462,19 @@ "node": ">=8.0.0" } }, + "node_modules/formdata-polyfill": { + "version": "4.0.10", + "resolved": "https://registry.npmjs.org/formdata-polyfill/-/formdata-polyfill-4.0.10.tgz", + "integrity": "sha512-buewHzMvYL29jdeQTVILecSaZKnt/RJWjoZCF5OW60Z67/GmSLBkOFM7qh1PI3zFNtJbaZL5eQu1vLfazOwj4g==", + "dev": true, + "license": "MIT", + "dependencies": { + "fetch-blob": "^3.1.2" + }, + "engines": { + "node": ">=12.20.0" + } + }, "node_modules/forwarded": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", @@ -5512,33 +5556,33 @@ } }, "node_modules/gaxios": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/gaxios/-/gaxios-5.1.3.tgz", - "integrity": "sha512-95hVgBRgEIRQQQHIbnxBXeHbW4TqFk4ZDJW7wmVtvYar72FdhRIo1UGOLS2eRAKCPEdPBWu+M7+A33D9CdX9rA==", + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/gaxios/-/gaxios-7.1.2.tgz", + "integrity": "sha512-/Szrn8nr+2TsQT1Gp8iIe/BEytJmbyfrbFh419DfGQSkEgNEhbPi7JRJuughjkTzPWgU9gBQf5AVu3DbHt0OXA==", "dev": true, "license": "Apache-2.0", "dependencies": { "extend": "^3.0.2", - "https-proxy-agent": "^5.0.0", - "is-stream": "^2.0.0", - "node-fetch": "^2.6.9" + "https-proxy-agent": "^7.0.1", + "node-fetch": "^3.3.2" }, "engines": { - "node": ">=12" + "node": ">=18" } }, "node_modules/gcp-metadata": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/gcp-metadata/-/gcp-metadata-5.3.0.tgz", - "integrity": "sha512-FNTkdNEnBdlqF2oatizolQqNANMrcqJt6AAYt99B3y1aLLC8Hc5IOBb+ZnnzllodEEf6xMBp6wRcBbc16fa65w==", + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/gcp-metadata/-/gcp-metadata-7.0.1.tgz", + "integrity": "sha512-UcO3kefx6dCcZkgcTGgVOTFb7b1LlQ02hY1omMjjrrBzkajRMCFgYOjs7J71WqnuG1k2b+9ppGL7FsOfhZMQKQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "gaxios": "^5.0.0", + "gaxios": "^7.0.0", + "google-logging-utils": "^1.0.0", "json-bigint": "^1.0.0" }, "engines": { - "node": ">=12" + "node": ">=18" } }, "node_modules/gensync": { @@ -5764,6 +5808,16 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/google-logging-utils": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/google-logging-utils/-/google-logging-utils-1.1.1.tgz", + "integrity": "sha512-rcX58I7nqpu4mbKztFeOAObbomBbHU2oIb/d3tJfF3dizGSApqtSwYJigGCooHdnMyQBIw8BrWyK96w3YXgr6A==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=14" + } + }, "node_modules/gopd": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", @@ -5929,17 +5983,17 @@ "license": "ISC" }, "node_modules/https-proxy-agent": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", - "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz", + "integrity": "sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==", "dev": true, "license": "MIT", "dependencies": { - "agent-base": "6", + "agent-base": "^7.1.2", "debug": "4" }, "engines": { - "node": ">= 6" + "node": ">= 14" } }, "node_modules/iconv-lite": { @@ -7235,50 +7289,44 @@ "dev": true, "license": "MIT" }, - "node_modules/node-fetch": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", - "integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==", + "node_modules/node-domexception": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/node-domexception/-/node-domexception-1.0.0.tgz", + "integrity": "sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==", + "deprecated": "Use your platform's native DOMException instead", "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/jimmywarting" + }, + { + "type": "github", + "url": "https://paypal.me/jimmywarting" + } + ], "license": "MIT", - "dependencies": { - "whatwg-url": "^5.0.0" - }, "engines": { - "node": "4.x || >=6.0.0" - }, - "peerDependencies": { - "encoding": "^0.1.0" - }, - "peerDependenciesMeta": { - "encoding": { - "optional": true - } + "node": ">=10.5.0" } }, - "node_modules/node-fetch/node_modules/tr46": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", - "dev": true, - "license": "MIT" - }, - "node_modules/node-fetch/node_modules/webidl-conversions": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", - "dev": true, - "license": "BSD-2-Clause" - }, - "node_modules/node-fetch/node_modules/whatwg-url": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", - "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "node_modules/node-fetch": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-3.3.2.tgz", + "integrity": "sha512-dRB78srN/l6gqWulah9SrxeYnxeddIG30+GOqK/9OlLVyLg3HPnr6SqOWTWOXKRwC2eGYCkZ59NNuSgvSrpgOA==", "dev": true, "license": "MIT", "dependencies": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" + "data-uri-to-buffer": "^4.0.0", + "fetch-blob": "^3.1.4", + "formdata-polyfill": "^4.0.10" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/node-fetch" } }, "node_modules/node-preload": { @@ -9709,6 +9757,16 @@ "node": ">= 0.8" } }, + "node_modules/web-streams-polyfill": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-3.3.3.tgz", + "integrity": "sha512-d2JWLCivmZYTSIoge9MsgFCZrt571BikcWGYkjC1khllbTeDlGqZ2D8vD8E/lJa8WGWbb7Plm8/XJYV7IJHZZw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, "node_modules/webidl-conversions": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", diff --git a/package.json b/package.json index 1353f8ab2e..9b7ca6f05e 100644 --- a/package.json +++ b/package.json @@ -30,13 +30,13 @@ "mongodb-connection-string-url": "^3.0.2" }, "peerDependencies": { - "@aws-sdk/credential-providers": "^3.188.0", - "@mongodb-js/zstd": "^1.1.0 || ^2.0.0", - "gcp-metadata": "^5.2.0", + "@aws-sdk/credential-providers": "^3.806.0", + "@mongodb-js/zstd": "^2.0.0", + "gcp-metadata": "^7.0.1", "kerberos": "^2.0.1", "mongodb-client-encryption": "^7.0.0-alpha", - "snappy": "^7.3.2", - "socks": "^2.7.1" + "snappy": "^7.3.0", + "socks": "^2.8.6" }, "peerDependenciesMeta": { "@aws-sdk/credential-providers": { @@ -92,7 +92,7 @@ "eslint-plugin-tsdoc": "^0.4.0", "eslint-plugin-unused-imports": "^4.2.0", "express": "^5.1.0", - "gcp-metadata": "^5.3.0", + "gcp-metadata": "^7.0.1", "js-yaml": "^4.1.0", "mocha": "^11.7.1", "mocha-sinon": "^2.1.2",