Skip to content

Commit 45cc58c

Browse files
authored
feat: add support for Node 16 (#7707)
BREAKING CHANGE: Removes official Node 15 support which has reached it end-of-life date.
1 parent ae99b92 commit 45cc58c

File tree

6 files changed

+179
-254
lines changed

6 files changed

+179
-254
lines changed

.github/workflows/ci.yml

+14-14
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ on:
66
branches:
77
- '**'
88
env:
9-
NODE_VERSION: 14.18.1
9+
NODE_VERSION: 16.13.0
1010
PARSE_SERVER_TEST_TIMEOUT: 20000
1111
jobs:
1212
check-ci:
@@ -105,43 +105,43 @@ jobs:
105105
MONGODB_VERSION: 5.0.3
106106
MONGODB_TOPOLOGY: replicaset
107107
MONGODB_STORAGE_ENGINE: wiredTiger
108-
NODE_VERSION: 14.18.1
108+
NODE_VERSION: 16.13.0
109109
- name: MongoDB 4.4, ReplicaSet, WiredTiger
110110
MONGODB_VERSION: 4.4.10
111111
MONGODB_TOPOLOGY: replicaset
112112
MONGODB_STORAGE_ENGINE: wiredTiger
113-
NODE_VERSION: 14.18.1
113+
NODE_VERSION: 16.13.0
114114
- name: MongoDB 4.2, ReplicaSet, WiredTiger
115115
MONGODB_VERSION: 4.2.17
116116
MONGODB_TOPOLOGY: replicaset
117117
MONGODB_STORAGE_ENGINE: wiredTiger
118-
NODE_VERSION: 14.18.1
118+
NODE_VERSION: 16.13.0
119119
- name: MongoDB 4.0, ReplicaSet, WiredTiger
120120
MONGODB_VERSION: 4.0.27
121121
MONGODB_TOPOLOGY: replicaset
122122
MONGODB_STORAGE_ENGINE: wiredTiger
123-
NODE_VERSION: 14.18.1
123+
NODE_VERSION: 16.13.0
124124
- name: MongoDB 4.0, Standalone, MMAPv1
125125
MONGODB_VERSION: 4.0.27
126126
MONGODB_TOPOLOGY: standalone
127127
MONGODB_STORAGE_ENGINE: mmapv1
128-
NODE_VERSION: 14.18.1
128+
NODE_VERSION: 16.13.0
129129
- name: Redis Cache
130130
PARSE_SERVER_TEST_CACHE: redis
131131
MONGODB_VERSION: 4.4.10
132132
MONGODB_TOPOLOGY: standalone
133133
MONGODB_STORAGE_ENGINE: wiredTiger
134-
NODE_VERSION: 14.18.1
134+
NODE_VERSION: 16.13.0
135135
- name: Node 12
136136
MONGODB_VERSION: 4.4.10
137137
MONGODB_TOPOLOGY: standalone
138138
MONGODB_STORAGE_ENGINE: wiredTiger
139139
NODE_VERSION: 12.22.7
140-
- name: Node 15
140+
- name: Node 14
141141
MONGODB_VERSION: 4.4.10
142142
MONGODB_TOPOLOGY: standalone
143143
MONGODB_STORAGE_ENGINE: wiredTiger
144-
NODE_VERSION: 15.14.0
144+
NODE_VERSION: 14.18.1
145145
fail-fast: false
146146
name: ${{ matrix.name }}
147147
timeout-minutes: 15
@@ -183,19 +183,19 @@ jobs:
183183
include:
184184
- name: PostgreSQL 11, PostGIS 3.0
185185
POSTGRES_IMAGE: postgis/postgis:11-3.0
186-
NODE_VERSION: 14.18.1
186+
NODE_VERSION: 16.13.0
187187
- name: PostgreSQL 11, PostGIS 3.1
188188
POSTGRES_IMAGE: postgis/postgis:11-3.1
189-
NODE_VERSION: 14.18.1
189+
NODE_VERSION: 16.13.0
190190
- name: PostgreSQL 12, PostGIS 3.1
191191
POSTGRES_IMAGE: postgis/postgis:12-3.1
192-
NODE_VERSION: 14.18.1
192+
NODE_VERSION: 16.13.0
193193
- name: PostgreSQL 13, PostGIS 3.1
194194
POSTGRES_IMAGE: postgis/postgis:13-3.1
195-
NODE_VERSION: 14.18.1
195+
NODE_VERSION: 16.13.0
196196
- name: PostgreSQL 14, PostGIS 3.1
197197
POSTGRES_IMAGE: postgis/postgis:14-3.1
198-
NODE_VERSION: 14.18.1
198+
NODE_VERSION: 16.13.0
199199
fail-fast: false
200200
name: ${{ matrix.name }}
201201
timeout-minutes: 15

README.md

+1-2
Original file line numberDiff line numberDiff line change
@@ -116,8 +116,7 @@ Parse Server is continuously tested with the most recent releases of Node.js to
116116
|------------|----------------|-------------|---------------|
117117
| Node.js 12 | 12.22.7 | April 2022 | ✅ Yes |
118118
| Node.js 14 | 14.18.1 | April 2023 | ✅ Yes |
119-
| Node.js 15 | 15.14.0 | June 2021 | ✅ Yes |
120-
| Node.js 16 | 16.x.x | April 2024 | ❌ Not tested |
119+
| Node.js 16 | 16.13.0 | April 2024 | ✅ Yes |
121120

122121
#### MongoDB
123122
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 only test against versions that are officially supported and have not reached their end-of-life date.

ci/ciCheck.js

+4-5
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
'use strict'
1+
'use strict';
22

33
const CiVersionCheck = require('./CiVersionCheck');
44
const mongoVersionList = require('mongodb-version-list');
@@ -14,9 +14,8 @@ async function check() {
1414
* Check the MongoDB versions used in test environments.
1515
*/
1616
async function checkMongoDbVersions() {
17-
1817
const releasedVersions = await new Promise((resolve, reject) => {
19-
mongoVersionList(function(error, versions) {
18+
mongoVersionList(function (error, versions) {
2019
if (error) {
2120
reject(error);
2221
}
@@ -47,7 +46,6 @@ async function checkMongoDbVersions() {
4746
* Check the Nodejs versions used in test environments.
4847
*/
4948
async function checkNodeVersions() {
50-
5149
const allVersions = await allNodeVersions();
5250
const releasedVersions = allVersions.versions;
5351

@@ -62,7 +60,8 @@ async function checkNodeVersions() {
6260
ignoreReleasedVersions: [
6361
'<12.0.0', // These versions have reached their end-of-life support date
6462
'>=13.0.0 <14.0.0', // These versions have reached their end-of-life support date
65-
'>=16.0.0', // This version has not been officially released yet
63+
'>=15.0.0 <16.0.0', // These versions have reached their end-of-life support date
64+
'>=17.0.0', // These versions are not officially supported yet
6665
],
6766
}).check();
6867
}

0 commit comments

Comments
 (0)