Skip to content

Commit c772f7b

Browse files
authored
build: Release (#9503)
2 parents 128023b + 4f37f25 commit c772f7b

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

42 files changed

+4713
-4995
lines changed

.eslintrc.json

+3-1
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,9 @@
2525
"space-infix-ops": "error",
2626
"no-useless-escape": "off",
2727
"require-atomic-updates": "off",
28-
"object-curly-spacing": ["error", "always"]
28+
"object-curly-spacing": ["error", "always"],
29+
"curly": ["error", "all"],
30+
"block-spacing": ["error", "always"]
2931
},
3032
"globals": {
3133
"Parse": true

.github/workflows/ci.yml

+21-9
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,8 @@ on:
1010
env:
1111
NODE_VERSION: 22.4.1
1212
PARSE_SERVER_TEST_TIMEOUT: 20000
13+
permissions:
14+
actions: write
1315
jobs:
1416
check-code-analysis:
1517
name: Code Analysis
@@ -160,17 +162,21 @@ jobs:
160162
MONGODB_VERSION: 7.0.8
161163
MONGODB_TOPOLOGY: replset
162164
NODE_VERSION: 22.4.1
165+
- name: MongoDB 8, ReplicaSet
166+
MONGODB_VERSION: 8.0.0
167+
MONGODB_TOPOLOGY: replset
168+
NODE_VERSION: 22.4.1
163169
- name: Redis Cache
164170
PARSE_SERVER_TEST_CACHE: redis
165-
MONGODB_VERSION: 7.0.8
171+
MONGODB_VERSION: 8.0.0
166172
MONGODB_TOPOLOGY: standalone
167173
NODE_VERSION: 22.4.1
168174
- name: Node 20
169-
MONGODB_VERSION: 7.0.8
175+
MONGODB_VERSION: 8.0.0
170176
MONGODB_TOPOLOGY: standalone
171177
NODE_VERSION: 20.15.1
172178
- name: Node 18
173-
MONGODB_VERSION: 7.0.8
179+
MONGODB_VERSION: 8.0.0
174180
MONGODB_TOPOLOGY: standalone
175181
NODE_VERSION: 18.20.4
176182
fail-fast: false
@@ -231,14 +237,20 @@ jobs:
231237
- name: PostgreSQL 13, PostGIS 3.4
232238
POSTGRES_IMAGE: postgis/postgis:13-3.4
233239
NODE_VERSION: 22.4.1
234-
- name: PostgreSQL 14, PostGIS 3.4
235-
POSTGRES_IMAGE: postgis/postgis:14-3.4
240+
- name: PostgreSQL 13, PostGIS 3.5
241+
POSTGRES_IMAGE: postgis/postgis:13-3.5
242+
NODE_VERSION: 22.4.1
243+
- name: PostgreSQL 14, PostGIS 3.5
244+
POSTGRES_IMAGE: postgis/postgis:14-3.5
245+
NODE_VERSION: 22.4.1
246+
- name: PostgreSQL 15, PostGIS 3.5
247+
POSTGRES_IMAGE: postgis/postgis:15-3.5
236248
NODE_VERSION: 22.4.1
237-
- name: PostgreSQL 15, PostGIS 3.4
238-
POSTGRES_IMAGE: postgis/postgis:15-3.4
249+
- name: PostgreSQL 16, PostGIS 3.5
250+
POSTGRES_IMAGE: postgis/postgis:16-3.5
239251
NODE_VERSION: 22.4.1
240-
- name: PostgreSQL 16, PostGIS 3.4
241-
POSTGRES_IMAGE: postgis/postgis:16-3.4
252+
- name: PostgreSQL 17, PostGIS 3.5
253+
POSTGRES_IMAGE: postgis/postgis:17-3.5
242254
NODE_VERSION: 22.4.1
243255
fail-fast: false
244256
name: ${{ matrix.name }}

CONTRIBUTING.md

+2-4
Original file line numberDiff line numberDiff line change
@@ -263,24 +263,22 @@ If your pull request introduces a change that may affect the storage or retrieva
263263
* If your feature is intended to work with MongoDB and PostgreSQL, you can include or exclude tests more granularly with:
264264

265265
- `it_only_mongodb_version('>=4.4')` // will test with any version of Postgres but only with version >=4.4 of MongoDB; accepts semver notation to specify a version range
266-
- `it_exclude_mongodb_version('<4.4')` // will test with any version of Postgres and MongoDB, excluding version <4.4 of MongoDB; accepts semver notation to specify a version range
267266
- `it_only_postgres_version('>=13')` // will test with any version of Mongo but only with version >=13 of Postgres; accepts semver notation to specify a version range
268-
- `it_exclude_postgres_version('<13')` // will test with any version of Postgres and MongoDB, excluding version <13 of Postgres; accepts semver notation to specify a version range
269267

270268
#### Postgres with Docker
271269

272270
[PostGIS images (select one with v2.2 or higher) on docker hub](https://hub.docker.com/r/postgis/postgis) is based off of the official [postgres](https://hub.docker.com/_/postgres) image and will work out-of-the-box (as long as you create a user with the necessary extensions for each of your Parse databases; see below). To launch the compatible Postgres instance, copy and paste the following line into your shell:
273271

274272
```
275-
docker run -d --name parse-postgres -p 5432:5432 -e POSTGRES_PASSWORD=password --rm postgis/postgis:16-3.4-alpine && sleep 20 && docker exec -it parse-postgres psql -U postgres -c 'CREATE DATABASE parse_server_postgres_adapter_test_database;' && docker exec -it parse-postgres psql -U postgres -c 'CREATE EXTENSION pgcrypto; CREATE EXTENSION postgis;' -d parse_server_postgres_adapter_test_database && docker exec -it parse-postgres psql -U postgres -c 'CREATE EXTENSION postgis_topology;' -d parse_server_postgres_adapter_test_database
273+
docker run -d --name parse-postgres -p 5432:5432 -e POSTGRES_PASSWORD=password --rm postgis/postgis:17-3.5-alpine && sleep 20 && docker exec -it parse-postgres psql -U postgres -c 'CREATE DATABASE parse_server_postgres_adapter_test_database;' && docker exec -it parse-postgres psql -U postgres -c 'CREATE EXTENSION pgcrypto; CREATE EXTENSION postgis;' -d parse_server_postgres_adapter_test_database && docker exec -it parse-postgres psql -U postgres -c 'CREATE EXTENSION postgis_topology;' -d parse_server_postgres_adapter_test_database
276274
```
277275
To stop the Postgres instance:
278276

279277
```
280278
docker stop parse-postgres
281279
```
282280

283-
You can also use the [postgis/postgis:16-3.4-alpine](https://hub.docker.com/r/postgis/postgis) image in a Dockerfile and copy this [script](https://github.com/parse-community/parse-server/blob/master/scripts/before_script_postgres.sh) to the image by adding the following lines:
281+
You can also use the [postgis/postgis:17-3.5-alpine](https://hub.docker.com/r/postgis/postgis) image in a Dockerfile and copy this [script](https://github.com/parse-community/parse-server/blob/master/scripts/before_script_postgres.sh) to the image by adding the following lines:
284282

285283
```
286284
#Install additional scripts. These are run in abc order during initial start

Dockerfile

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
############################################################
22
# Build stage
33
############################################################
4-
FROM node:20.14.0-alpine3.20 AS build
4+
FROM node:20.17.0-alpine3.20 AS build
55

66
RUN apk --no-cache add \
77
build-base \
@@ -28,7 +28,7 @@ RUN npm ci --omit=dev --ignore-scripts \
2828
############################################################
2929
# Release stage
3030
############################################################
31-
FROM node:20.14.0-alpine3.20 AS release
31+
FROM node:20.17.0-alpine3.20 AS release
3232

3333
VOLUME /parse-server/cloud /parse-server/config
3434

README.md

+8-6
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,8 @@
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,_22-green.svg?logo=node.js&style=flat)](https://nodejs.org)
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)
14-
[![Postgres Version](https://img.shields.io/badge/postgresql-13,_14,_15,_16-green.svg?logo=postgresql&style=flat)](https://www.postgresql.org)
13+
[![MongoDB Version](https://img.shields.io/badge/mongodb-4.2,_4.4,_5,_6,_7,_8-green.svg?logo=mongodb&style=flat)](https://www.mongodb.com)
14+
[![Postgres Version](https://img.shields.io/badge/postgresql-13,_14,_15,_16,_17-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)
1717
[![npm beta version](https://img.shields.io/npm/v/parse-server/beta.svg)](https://www.npmjs.com/package/parse-server)
@@ -144,17 +144,19 @@ Parse Server is continuously tested with the most recent releases of MongoDB to
144144
| MongoDB 5 | 5.0.26 | October 2024 | ✅ Yes |
145145
| MongoDB 6 | 6.0.14 | July 2025 | ✅ Yes |
146146
| MongoDB 7 | 7.0.8 | TDB | ✅ Yes |
147+
| MongoDB 8 | 8.0.0 | TDB | ✅ Yes |
147148

148149
#### PostgreSQL
149150

150151
Parse Server is continuously tested with the most recent releases of PostgreSQL and PostGIS to ensure compatibility, using [PostGIS docker images](https://registry.hub.docker.com/r/postgis/postgis/tags?page=1&ordering=last_updated). We follow the [PostgreSQL support schedule](https://www.postgresql.org/support/versioning) and [PostGIS support schedule](https://www.postgis.net/eol_policy/) and only test against versions that are officially supported and have not reached their end-of-life date. Due to the extensive PostgreSQL support duration of 5 years, Parse Server drops support about 2 years before the official end-of-life date.
151152

152153
| Version | PostGIS Version | End-of-Life | Parse Server Support | Compatible |
153154
|-------------|--------------------|---------------|----------------------|------------|
154-
| Postgres 13 | 3.1, 3.2, 3.3, 3.4 | November 2025 | <= 6.x (2023) | ✅ Yes |
155-
| Postgres 14 | 3.4 | November 2026 | <= 7.x (2024) | ✅ Yes |
156-
| Postgres 15 | 3.4 | November 2027 | <= 8.x (2025) | ✅ Yes |
157-
| Postgres 16 | 3.4 | November 2028 | <= 9.x (2026) | ✅ Yes |
155+
| Postgres 13 | 3.1, 3.2, 3.3, 3.4, 3.5 | November 2025 | <= 6.x (2023) | ✅ Yes |
156+
| Postgres 14 | 3.5 | November 2026 | <= 7.x (2024) | ✅ Yes |
157+
| Postgres 15 | 3.5 | November 2027 | <= 8.x (2025) | ✅ Yes |
158+
| Postgres 16 | 3.5 | November 2028 | <= 9.x (2026) | ✅ Yes |
159+
| Postgres 17 | 3.5 | November 2029 | <= 9.x (2026) | ✅ Yes |
158160

159161
### Locally
160162

changelogs/CHANGELOG_alpha.md

+56
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,59 @@
1+
# [7.4.0-alpha.7](https://github.com/parse-community/parse-server/compare/7.4.0-alpha.6...7.4.0-alpha.7) (2024-12-16)
2+
3+
4+
### Features
5+
6+
* Upgrade @parse/push-adapter from 6.7.1 to 6.8.0 ([#9489](https://github.com/parse-community/parse-server/issues/9489)) ([286aa66](https://github.com/parse-community/parse-server/commit/286aa664ac8830d36c3e70d2316917d15f0b6df5))
7+
8+
# [7.4.0-alpha.6](https://github.com/parse-community/parse-server/compare/7.4.0-alpha.5...7.4.0-alpha.6) (2024-11-19)
9+
10+
11+
### Bug Fixes
12+
13+
* Security upgrade cross-spawn from 7.0.3 to 7.0.6 ([#9444](https://github.com/parse-community/parse-server/issues/9444)) ([3d034e0](https://github.com/parse-community/parse-server/commit/3d034e0a993e3e5bd9bb96a7e382bb3464f1eb68))
14+
15+
# [7.4.0-alpha.5](https://github.com/parse-community/parse-server/compare/7.4.0-alpha.4...7.4.0-alpha.5) (2024-10-22)
16+
17+
18+
### Bug Fixes
19+
20+
* Security upgrade node from 20.14.0-alpine3.20 to 20.17.0-alpine3.20 ([#9300](https://github.com/parse-community/parse-server/issues/9300)) ([15bb17d](https://github.com/parse-community/parse-server/commit/15bb17d87153bf0d38f08fe4c720da29a204b36b))
21+
22+
# [7.4.0-alpha.4](https://github.com/parse-community/parse-server/compare/7.4.0-alpha.3...7.4.0-alpha.4) (2024-10-22)
23+
24+
25+
### Bug Fixes
26+
27+
* `Parse.Query.distinct` fails due to invalid aggregate stage 'hint' ([#9295](https://github.com/parse-community/parse-server/issues/9295)) ([5f66c6a](https://github.com/parse-community/parse-server/commit/5f66c6a075cbe1cdaf9d1b108ee65af8ae596b89))
28+
29+
# [7.4.0-alpha.3](https://github.com/parse-community/parse-server/compare/7.4.0-alpha.2...7.4.0-alpha.3) (2024-10-22)
30+
31+
32+
### Features
33+
34+
* Add support for PostGIS 3.5 ([#9354](https://github.com/parse-community/parse-server/issues/9354)) ([8ea3538](https://github.com/parse-community/parse-server/commit/8ea35382db3436d54ab59bd30706705564b0985c))
35+
36+
# [7.4.0-alpha.2](https://github.com/parse-community/parse-server/compare/7.4.0-alpha.1...7.4.0-alpha.2) (2024-10-07)
37+
38+
39+
### Features
40+
41+
* Add support for Postgres 17 ([#9324](https://github.com/parse-community/parse-server/issues/9324)) ([fa2ee31](https://github.com/parse-community/parse-server/commit/fa2ee3196e4319a142b3838bb947c98dcba5d5cb))
42+
43+
# [7.4.0-alpha.1](https://github.com/parse-community/parse-server/compare/7.3.1-alpha.1...7.4.0-alpha.1) (2024-10-06)
44+
45+
46+
### Features
47+
48+
* Add support for MongoDB 8 ([#9269](https://github.com/parse-community/parse-server/issues/9269)) ([4756c66](https://github.com/parse-community/parse-server/commit/4756c66cd9f55afa1621d1a3f6fa850ed605cb53))
49+
50+
## [7.3.1-alpha.1](https://github.com/parse-community/parse-server/compare/7.3.0...7.3.1-alpha.1) (2024-10-05)
51+
52+
53+
### Bug Fixes
54+
55+
* Security upgrade fast-xml-parser from 4.4.0 to 4.4.1 ([#9262](https://github.com/parse-community/parse-server/issues/9262)) ([992d39d](https://github.com/parse-community/parse-server/commit/992d39d508f230c774dcb764d1d907ec8887e6c5))
56+
157
# [7.3.0-alpha.9](https://github.com/parse-community/parse-server/compare/7.3.0-alpha.8...7.3.0-alpha.9) (2024-10-03)
258

359

0 commit comments

Comments
 (0)