Skip to content

Commit ddf6f5a

Browse files
committed
chore: drop node 18 + refresh deps
1 parent cf7364d commit ddf6f5a

5 files changed

Lines changed: 1533 additions & 945 deletions

File tree

CHANGELOG.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
88

99
- Drop Node 12, 14, 16 support
1010
- Add Node 20, 22, 24 support
11-
- Clarify compatibility guarantees: require Node >=18.19.0, acknowledge Node 18/20/22/24 LTS plus MongoDB server 4.4-8.0, limit the mongodb peer dependency range to >=5 <8, and expand CI to cover every Node/driver/server combination (drivers 5.x-7.x, servers 4.4-8.0).
12-
- Refresh developer tooling: bump TypeScript (5.9), Ava (6.x), ESLint (9.x), Prettier (3.x), Husky (9), lint-staged (16), commitlint (20), ts-node (10.9), TypeDoc (0.28), and the @types/* packages so the repo matches modern Node 18+ environments.
11+
- Drop Node 18 support and require Node >=20.8.0 to align with the Ava/@ava/typescript 6.x toolchain
12+
- Clarify compatibility guarantees: require Node >=20.8.0, acknowledge Node 20/22/24 plus MongoDB server 4.4-8.0, limit the mongodb peer dependency range to >=5 <8, and expand CI to cover every Node/driver/server combination (drivers 5.x-7.x, servers 4.4-8.0).
13+
- Upgrade dependencies: ava 6.4.1, @ava/typescript 6.0.0, cspell 9.3.2, debug 4.4.3, express 4.21.2, express-session 1.18.2, gh-pages 6.3.0, kruptein 3.0.8, mongodb 7.0.0, nyc 17.1.0, open-cli 8.0.0, supertest 7.1.4.
14+
- Refresh developer tooling: bump TypeScript (5.9), Ava (6.x), ESLint (9.x), Prettier (3.x), Husky (9), lint-staged (16), commitlint (20), ts-node (10.9), TypeDoc (0.28), and the @types/* packages so the repo matches modern Node 20+ environments.
1315

1416
## [5.1.0] - 2023-10-14
1517

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -50,10 +50,10 @@ yarn add connect-mongo
5050

5151
* Support Express up to `5.0`
5252
* Support [native MongoDB driver](http://mongodb.github.io/node-mongodb-native/) `5.x` - `7.x` (peer dependency range `>=5 <8`)
53-
* Support Node.js 18 LTS, 20 LTS, 22 LTS and 24 LTS
53+
* Support Node.js 20 LTS, 22 LTS and 24 (Current)
5454
* Support [MongoDB](https://www.mongodb.com/) server versions `4.4` - `8.0`
5555

56-
We follow MongoDB's official [Node.js driver compatibility tables](https://www.mongodb.com/docs/drivers/compatibility/?driver-language=javascript&javascript-driver-framework=nodejs) and exercise **every** combination of the versions above (4 Node LTS releases × 3 driver majors × 5 server tags) in CI so that mismatches surface quickly. Note that driver 5.x officially supports Node 18/20, while Node 22/24 coverage relies on driver 6.x/7.x, matching the upstream guidance.
56+
We follow MongoDB's official [Node.js driver compatibility tables](https://www.mongodb.com/docs/drivers/compatibility/?driver-language=javascript&javascript-driver-framework=nodejs) and exercise **every** combination of the versions above (3 Node releases × 3 driver majors × 5 server tags) in CI so that mismatches surface quickly. Note that driver 5.x officially supports Node 20, while Node 22/24 coverage relies on driver 6.x/7.x, matching the upstream guidance.
5757

5858
For extended compatibility, see previous versions [v3.x](https://github.com/jdesboeufs/connect-mongo/tree/v3.x).
5959
But please note that we are not maintaining v3.x anymore.

docs/PLANS.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
- Platform & Dependencies
2-
- Bring the published compatibility story in sync with reality: engines.node still only asserts >=18.12.0, MongoDB is capped to <7, and the README claims MongoDB server 3.6+ (EOL for years) while also saying “mongodb is not a peer dependency” even though it now is (package.json:56-63, README.md:45-55). Bump the
3-
engine floor so the metadata and docs explicitly cover the currently maintained Node LTS releases (18, 20, 22, 24), extend the peer range to cover MongoDB driver >=5 and <8 plus server 4.4-8.0 (and add corresponding tests), and fix the user-facing docs/badges so consumers aren't misled.
2+
- Bring the published compatibility story in sync with reality: engines.node must track the active LTS baseline, MongoDB is capped to <7, and the README claims MongoDB server 3.6+ (EOL for years) while also saying “mongodb is not a peer dependency” even though it now is (package.json:56-63, README.md:45-55). Bump the
3+
engine floor so the metadata and docs explicitly cover the currently maintained Node releases (20, 22, 24), extend the peer range to cover MongoDB driver >=5 and <8 plus server 4.4-8.0 (and add corresponding tests), and fix the user-facing docs/badges so consumers aren't misled.
44
- [done 2025-11-15] Refine compatibility statements + CI matrix for Node 18/20/22/24, MongoDB server 4.4-8.0, driver >=5<8 (agent: Codex)
5+
- [done 2025-11-16] Drop Node 18 baseline and require Node >=20.8.0 so Ava/@ava/typescript latest releases remain supported (agent: Codex)
56
- TODO(agent): drop src/types/async-disposable.d.ts once tsconfig enables the built-in esnext.disposable lib and the shim is redundant.
67
- Refresh the tooling stack: virtually every dev dependency is from 2020 (TypeScript 4.0, Ava 3, ESLint 7, Husky 4, Prettier 2, commitlint 11, etc.), which misses hundreds of bug fixes and no longer understands Node 20/22 typings (package.json:67-107). Plan an across-the-board upgrade (TS ≥5.6, Ava 6, ESLint 9,
78
Prettier 3, Husky 9/Lint‑Staged 15, latest @types/*) and run yarn dedupe afterwards.

package.json

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -56,18 +56,18 @@
5656
"tls:setup": "bash ./scripts/generate-mongo-tls.sh"
5757
},
5858
"engines": {
59-
"node": ">=18.19.0"
59+
"node": ">=20.8.0"
6060
},
6161
"peerDependencies": {
6262
"express-session": "^1.17.1",
6363
"mongodb": ">=5.0.0 <8"
6464
},
6565
"dependencies": {
66-
"debug": "^4.3.1",
67-
"kruptein": "^3.0.0"
66+
"debug": "^4.4.3",
67+
"kruptein": "^3.0.8"
6868
},
6969
"devDependencies": {
70-
"@ava/typescript": "^5.0.0",
70+
"@ava/typescript": "^6.0.0",
7171
"@commitlint/cli": "^20.1.0",
7272
"@commitlint/config-conventional": "^20.0.0",
7373
"@istanbuljs/nyc-config-typescript": "^1.0.1",
@@ -78,26 +78,26 @@
7878
"@types/supertest": "^6.0.3",
7979
"@typescript-eslint/eslint-plugin": "^8.46.4",
8080
"@typescript-eslint/parser": "^8.46.4",
81-
"ava": "6.4.0",
81+
"ava": "^6.4.1",
8282
"codecov": "^3.5.0",
83-
"cspell": "^4.1.0",
83+
"cspell": "^9.3.2",
8484
"cz-conventional-changelog": "^3.3.0",
8585
"eslint": "^9.39.1",
8686
"eslint-config-prettier": "^10.1.8",
8787
"eslint-plugin-eslint-comments": "^3.2.0",
8888
"eslint-plugin-prettier": "^5.5.4",
89-
"express": "^4.17.1",
90-
"express-session": "^1.17.1",
91-
"gh-pages": "^3.1.0",
89+
"express": "^4.21.2",
90+
"express-session": "^1.18.2",
91+
"gh-pages": "^6.3.0",
9292
"husky": "^9.1.7",
9393
"lint-staged": "^16.2.6",
94-
"mongodb": "^6.21.0",
94+
"mongodb": "^7.0.0",
9595
"npm-run-all": "^4.1.5",
96-
"nyc": "^15.1.0",
97-
"open-cli": "^6.0.1",
96+
"nyc": "^17.1.0",
97+
"open-cli": "^8.0.0",
9898
"prettier": "^3.6.2",
9999
"standard-version": "^9.0.0",
100-
"supertest": "^6.1.3",
100+
"supertest": "^7.1.4",
101101
"ts-node": "^10.9.2",
102102
"typedoc": "^0.28.14",
103103
"typescript": "^5.9.3",

0 commit comments

Comments
 (0)