Skip to content

Commit 33c06b2

Browse files
authored
ci: Upgrade Node and MongoDB versions; fix CI check script for MongoDB versions (#9062)
1 parent d58d159 commit 33c06b2

File tree

4 files changed

+44
-38
lines changed

4 files changed

+44
-38
lines changed

.github/workflows/ci.yml

+22-22
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ on:
88
paths-ignore:
99
- '**/**.md'
1010
env:
11-
NODE_VERSION: 20.11.1
11+
NODE_VERSION: 20.12.0
1212
PARSE_SERVER_TEST_TIMEOUT: 20000
1313
jobs:
1414
check-code-analysis:
@@ -146,34 +146,34 @@ jobs:
146146
matrix:
147147
include:
148148
- name: MongoDB 4.2, ReplicaSet
149-
MONGODB_VERSION: 4.2.19
149+
MONGODB_VERSION: 4.2.25
150150
MONGODB_TOPOLOGY: replset
151-
NODE_VERSION: 20.11.1
151+
NODE_VERSION: 20.12.0
152152
- name: MongoDB 4.4, ReplicaSet
153-
MONGODB_VERSION: 4.4.13
153+
MONGODB_VERSION: 4.4.29
154154
MONGODB_TOPOLOGY: replset
155-
NODE_VERSION: 20.11.1
155+
NODE_VERSION: 20.12.0
156156
- name: MongoDB 5, ReplicaSet
157-
MONGODB_VERSION: 5.3.2
157+
MONGODB_VERSION: 5.0.26
158158
MONGODB_TOPOLOGY: replset
159-
NODE_VERSION: 20.11.1
159+
NODE_VERSION: 20.12.0
160160
- name: MongoDB 6, ReplicaSet
161-
MONGODB_VERSION: 6.0.2
161+
MONGODB_VERSION: 6.0.14
162162
MONGODB_TOPOLOGY: replset
163-
NODE_VERSION: 20.11.1
163+
NODE_VERSION: 20.12.0
164164
- name: MongoDB 7, ReplicaSet
165-
MONGODB_VERSION: 7.0.1
165+
MONGODB_VERSION: 7.0.7
166166
MONGODB_TOPOLOGY: replset
167-
NODE_VERSION: 20.11.1
167+
NODE_VERSION: 20.12.0
168168
- name: Redis Cache
169169
PARSE_SERVER_TEST_CACHE: redis
170-
MONGODB_VERSION: 4.4.13
170+
MONGODB_VERSION: 7.0.7
171171
MONGODB_TOPOLOGY: standalone
172-
NODE_VERSION: 20.11.1
172+
NODE_VERSION: 20.12.0
173173
- name: Node 18
174-
MONGODB_VERSION: 4.4.13
174+
MONGODB_VERSION: 7.0.7
175175
MONGODB_TOPOLOGY: standalone
176-
NODE_VERSION: 18.19.1
176+
NODE_VERSION: 18.20.0
177177
fail-fast: false
178178
name: ${{ matrix.name }}
179179
timeout-minutes: 15
@@ -217,25 +217,25 @@ jobs:
217217
include:
218218
- name: PostgreSQL 13, PostGIS 3.1
219219
POSTGRES_IMAGE: postgis/postgis:13-3.1
220-
NODE_VERSION: 20.11.1
220+
NODE_VERSION: 20.12.0
221221
- name: PostgreSQL 13, PostGIS 3.2
222222
POSTGRES_IMAGE: postgis/postgis:13-3.2
223-
NODE_VERSION: 20.11.1
223+
NODE_VERSION: 20.12.0
224224
- name: PostgreSQL 13, PostGIS 3.3
225225
POSTGRES_IMAGE: postgis/postgis:13-3.3
226-
NODE_VERSION: 20.11.1
226+
NODE_VERSION: 20.12.0
227227
- name: PostgreSQL 13, PostGIS 3.4
228228
POSTGRES_IMAGE: postgis/postgis:13-3.4
229-
NODE_VERSION: 20.11.1
229+
NODE_VERSION: 20.12.0
230230
- name: PostgreSQL 14, PostGIS 3.4
231231
POSTGRES_IMAGE: postgis/postgis:14-3.4
232-
NODE_VERSION: 20.11.1
232+
NODE_VERSION: 20.12.0
233233
- name: PostgreSQL 15, PostGIS 3.4
234234
POSTGRES_IMAGE: postgis/postgis:15-3.4
235-
NODE_VERSION: 20.11.1
235+
NODE_VERSION: 20.12.0
236236
- name: PostgreSQL 16, PostGIS 3.4
237237
POSTGRES_IMAGE: postgis/postgis:15-3.4
238-
NODE_VERSION: 20.11.1
238+
NODE_VERSION: 20.12.0
239239
fail-fast: false
240240
name: ${{ matrix.name }}
241241
timeout-minutes: 15

.github/workflows/release-automated.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ jobs:
1717
persist-credentials: false
1818
- uses: actions/setup-node@v4
1919
with:
20-
node-version: 18.19.1
20+
node-version: 18.20.0
2121
registry-url: https://registry.npmjs.org/
2222
- name: Cache Node.js modules
2323
uses: actions/cache@v4
@@ -93,7 +93,7 @@ jobs:
9393
- name: Use Node.js
9494
uses: actions/setup-node@v4
9595
with:
96-
node-version: 18.19.1
96+
node-version: 18.20.0
9797
- name: Cache Node.js modules
9898
uses: actions/cache@v4
9999
with:

README.md

+8-9
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
[![auto-release](https://img.shields.io/badge/%F0%9F%9A%80-auto--release-9e34eb.svg)](https://github.com/parse-community/parse-dashboard/releases)
1111

1212
[![Node Version](https://img.shields.io/badge/nodejs-18,_20-green.svg?logo=node.js&style=flat)](https://nodejs.org)
13-
[![MongoDB Version](https://img.shields.io/badge/mongodb-4.0,_4.2,_4.4,_5,_6-green.svg?logo=mongodb&style=flat)](https://www.mongodb.com)
13+
[![MongoDB Version](https://img.shields.io/badge/mongodb-4.2,_4.4,_5,_6,_7-green.svg?logo=mongodb&style=flat)](https://www.mongodb.com)
1414
[![Postgres Version](https://img.shields.io/badge/postgresql-13,_14,_15,_16-green.svg?logo=postgresql&style=flat)](https://www.postgresql.org)
1515

1616
[![npm latest version](https://img.shields.io/npm/v/parse-server/latest.svg)](https://www.npmjs.com/package/parse-server)
@@ -129,21 +129,20 @@ Parse Server is continuously tested with the most recent releases of Node.js to
129129

130130
| Version | Latest Version | End-of-Life | Compatible |
131131
|------------|----------------|-------------|------------|
132-
| Node.js 18 | 18.19.1 | April 2025 | ✅ Yes |
133-
| Node.js 20 | 20.11.1 | April 2026 | ✅ Yes |
132+
| Node.js 18 | 18.20.0 | April 2025 | ✅ Yes |
133+
| Node.js 20 | 20.12.0 | April 2026 | ✅ Yes |
134134

135135
#### MongoDB
136136

137137
Parse Server is continuously tested with the most recent releases of MongoDB to ensure compatibility. We follow the [MongoDB support schedule](https://www.mongodb.com/support-policy) and [MongoDB lifecycle schedule](https://www.mongodb.com/support-policy/lifecycles) and only test against versions that are officially supported and have not reached their end-of-life date. We consider the end-of-life date of a MongoDB "rapid release" to be the same as its major version release.
138138

139139
| Version | Latest Version | End-of-Life | Compatible |
140140
| ----------- | -------------- | ------------- | ---------- |
141-
| MongoDB 4.0 | 4.0.28 | April 2022 | ✅ Yes |
142-
| MongoDB 4.2 | 4.2.19 | April 2023 | ✅ Yes |
143-
| MongoDB 4.4 | 4.4.13 | February 2024 | ✅ Yes |
144-
| MongoDB 5 | 5.3.2 | October 2024 | ✅ Yes |
145-
| MongoDB 6 | 6.0.2 | July 2025 | ✅ Yes |
146-
| MongoDB 7 | 7.0.1 | TDB | ✅ Yes |
141+
| MongoDB 4.2 | 4.2.25 | April 2023 | ✅ Yes |
142+
| MongoDB 4.4 | 4.4.29 | February 2024 | ✅ Yes |
143+
| MongoDB 5 | 5.0.26 | October 2024 | ✅ Yes |
144+
| MongoDB 6 | 6.0.14 | July 2025 | ✅ Yes |
145+
| MongoDB 7 | 7.0.7 | TDB | ✅ Yes |
147146

148147
#### PostgreSQL
149148

ci/ciCheck.js

+12-5
Original file line numberDiff line numberDiff line change
@@ -13,25 +13,32 @@ async function check() {
1313
* Check the MongoDB versions used in test environments.
1414
*/
1515
async function checkMongoDbVersions() {
16-
const latestStableVersion = await new Promise((resolve, reject) => {
17-
exec('m --latest', (error, stdout) => {
16+
let latestStableVersions = await new Promise((resolve, reject) => {
17+
exec('m ls', (error, stdout) => {
1818
if (error) {
1919
reject(error);
2020
return;
2121
}
2222
resolve(stdout.trim());
2323
});
2424
});
25+
latestStableVersions = latestStableVersions.split('\n').map(version => version.trim());
2526

2627
await new CiVersionCheck({
2728
packageName: 'MongoDB',
2829
packageSupportUrl: 'https://www.mongodb.com/support-policy',
2930
yamlFilePath: './.github/workflows/ci.yml',
3031
ciEnvironmentsKeyPath: 'jobs.check-mongo.strategy.matrix.include',
3132
ciVersionKey: 'MONGODB_VERSION',
32-
releasedVersions: [latestStableVersion],
33-
latestComponent: CiVersionCheck.versionComponents.major,
34-
ignoreReleasedVersions: [],
33+
releasedVersions: latestStableVersions,
34+
latestComponent: CiVersionCheck.versionComponents.patch,
35+
ignoreReleasedVersions: [
36+
'<4.2.0', // These versions have reached their end-of-life support date
37+
'>=4.3.0 <5.0.0', // Unsupported rapid release versions
38+
'>=5.1.0 <6.0.0', // Unsupported rapid release versions
39+
'>=6.1.0 <7.0.0', // Unsupported rapid release versions
40+
'>=7.1.0 <8.0.0', // Unsupported rapid release versions
41+
],
3542
}).check();
3643
}
3744

0 commit comments

Comments
 (0)