Skip to content

Commit 7a40fa0

Browse files
authored
Merge branch 'master' into explain
2 parents 5721b03 + 45d29cc commit 7a40fa0

13 files changed

+451
-142
lines changed

.github/workflows/ci.yml

Lines changed: 21 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ on:
77
branches:
88
- '**'
99
env:
10-
NODE_VERSION: 14.17.2
10+
NODE_VERSION: 14.17.3
1111
PARSE_SERVER_TEST_TIMEOUT: 20000
1212
jobs:
1313
check-ci:
@@ -93,39 +93,44 @@ jobs:
9393
strategy:
9494
matrix:
9595
include:
96+
- name: MongoDB 5.0, ReplicaSet, WiredTiger
97+
MONGODB_VERSION: 5.0.1
98+
MONGODB_TOPOLOGY: replicaset
99+
MONGODB_STORAGE_ENGINE: wiredTiger
100+
NODE_VERSION: 14.17.3
96101
- name: MongoDB 4.4, ReplicaSet, WiredTiger
97-
MONGODB_VERSION: 4.4.6
102+
MONGODB_VERSION: 4.4.7
98103
MONGODB_TOPOLOGY: replicaset
99104
MONGODB_STORAGE_ENGINE: wiredTiger
100-
NODE_VERSION: 14.17.2
105+
NODE_VERSION: 14.17.3
101106
- name: MongoDB 4.2, ReplicaSet, WiredTiger
102-
MONGODB_VERSION: 4.2.14
107+
MONGODB_VERSION: 4.2.15
103108
MONGODB_TOPOLOGY: replicaset
104109
MONGODB_STORAGE_ENGINE: wiredTiger
105-
NODE_VERSION: 14.17.2
110+
NODE_VERSION: 14.17.3
106111
- name: MongoDB 4.0, ReplicaSet, WiredTiger
107112
MONGODB_VERSION: 4.0.25
108113
MONGODB_TOPOLOGY: replicaset
109114
MONGODB_STORAGE_ENGINE: wiredTiger
110-
NODE_VERSION: 14.17.2
115+
NODE_VERSION: 14.17.3
111116
- name: MongoDB 4.0, Standalone, MMAPv1
112117
MONGODB_VERSION: 4.0.25
113118
MONGODB_TOPOLOGY: standalone
114119
MONGODB_STORAGE_ENGINE: mmapv1
115-
NODE_VERSION: 14.17.2
120+
NODE_VERSION: 14.17.3
116121
- name: Redis Cache
117122
PARSE_SERVER_TEST_CACHE: redis
118-
MONGODB_VERSION: 4.4.6
123+
MONGODB_VERSION: 4.4.7
119124
MONGODB_TOPOLOGY: standalone
120125
MONGODB_STORAGE_ENGINE: wiredTiger
121-
NODE_VERSION: 14.17.2
126+
NODE_VERSION: 14.17.3
122127
- name: Node 12
123-
MONGODB_VERSION: 4.4.6
128+
MONGODB_VERSION: 4.4.7
124129
MONGODB_TOPOLOGY: standalone
125130
MONGODB_STORAGE_ENGINE: wiredTiger
126-
NODE_VERSION: 12.22.2
131+
NODE_VERSION: 12.22.3
127132
- name: Node 15
128-
MONGODB_VERSION: 4.4.6
133+
MONGODB_VERSION: 4.4.7
129134
MONGODB_TOPOLOGY: standalone
130135
MONGODB_STORAGE_ENGINE: wiredTiger
131136
NODE_VERSION: 15.14.0
@@ -170,16 +175,16 @@ jobs:
170175
include:
171176
- name: PostgreSQL 11, PostGIS 3.0
172177
POSTGRES_IMAGE: postgis/postgis:11-3.0
173-
NODE_VERSION: 14.17.2
178+
NODE_VERSION: 14.17.3
174179
- name: PostgreSQL 11, PostGIS 3.1
175180
POSTGRES_IMAGE: postgis/postgis:11-3.1
176-
NODE_VERSION: 14.17.2
181+
NODE_VERSION: 14.17.3
177182
- name: PostgreSQL 12, PostGIS 3.1
178183
POSTGRES_IMAGE: postgis/postgis:12-3.1
179-
NODE_VERSION: 14.17.2
184+
NODE_VERSION: 14.17.3
180185
- name: PostgreSQL 13, PostGIS 3.1
181186
POSTGRES_IMAGE: postgis/postgis:13-3.1
182-
NODE_VERSION: 14.17.2
187+
NODE_VERSION: 14.17.3
183188
fail-fast: false
184189
name: ${{ matrix.name }}
185190
timeout-minutes: 15

CHANGELOG.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -103,6 +103,7 @@ ___
103103
- EXPERIMENTAL: Added custom routes to easily customize flows for password reset, email verification or build entirely new flows (Manuel Trezza) [#7231](https://github.com/parse-community/parse-server/pull/7231)
104104
- Added Deprecation Policy to govern the introduction of breaking changes in a phased pattern that is more predictable for developers (Manuel Trezza) [#7199](https://github.com/parse-community/parse-server/pull/7199)
105105
- Add REST API endpoint `/loginAs` to create session of any user with master key; allows to impersonate another user. (GormanFletcher) [#7406](https://github.com/parse-community/parse-server/pull/7406)
106+
- Add official support for MongoDB 5.0 (Manuel Trezza) [#7469](https://github.com/parse-community/parse-server/pull/7469)
106107

107108
### Other Changes
108109
- Fix error when a not yet inserted job is updated (Antonio Davi Macedo Coelho de Castro) [#7196](https://github.com/parse-community/parse-server/pull/7196)
@@ -137,6 +138,8 @@ ___
137138
- Fix select and excludeKey queries to properly accept JSON string arrays. Also allow nested fields in exclude (Corey Baker) [#7242](https://github.com/parse-community/parse-server/pull/7242)
138139
- Fix LiveQuery server crash when using $all query operator on a missing object key (Jason Posthuma) [#7421](https://github.com/parse-community/parse-server/pull/7421)
139140
- Added runtime deprecation warnings (Manuel Trezza) [#7451](https://github.com/parse-community/parse-server/pull/7451)
141+
- Add ability to pass context of an object via a header, X-Parse-Cloud-Context, for Cloud Code triggers. The header addition allows client SDK's to add context without injecting _context in the body of JSON objects (Corey Baker) [#7437](https://github.com/parse-community/parse-server/pull/7437)
142+
140143
___
141144
## 4.5.0
142145
[Full Changelog](https://github.com/parse-community/parse-server/compare/4.4.0...4.5.0)

CONTRIBUTING.md

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -277,11 +277,16 @@ Introducing new Parse Errors requires the following steps:
277277
Introducing new [Parse Server configuration][config] parameters requires the following steps:
278278

279279
1. Add parameters definitions in [/src/Options/index.js][config-index].
280-
1. If a nested configuration object has been added, add the environment variable option prefix to `getENVPrefix` in [/resources/buildConfigDefinition.js](https://github.com/parse-community/parse-server/blob/master/resources/buildConfigDefinition.js).
281-
1. Execute `npm run definitions` to automatically create the definitions in [/src/Options/Definitions.js][config-def] and [/src/Options/docs.js][config-docs].
282-
1. Add parameter value validation in [/src/Config.js](https://github.com/parse-community/parse-server/blob/master/src/Config.js).
283-
1. Add test cases to ensure the correct parameter value validation. Parse Server throws an error at launch if an invalid value is set for any configuration parameter.
284-
1. Execute `npm run docs` to generate the documentation in the `/out` directory. Take a look at the documentation whether the description and formatting of the newly introduced parameters is satisfactory.
280+
2. If the new parameter does not have one single value but is a parameter group (an object containing multiple sub-parameters):
281+
- add the environment variable prefix for the parameter group to `nestedOptionEnvPrefix` in [/resources/buildConfigDefinition.js](https://github.com/parse-community/parse-server/blob/master/resources/buildConfigDefinition.js)
282+
- add the parameter group type to `nestedOptionTypes` in [/resources/buildConfigDefinition.js](https://github.com/parse-community/parse-server/blob/master/resources/buildConfigDefinition.js)
283+
284+
For example, take a look at the existing Parse Server `security` parameter. It is a parameter group, because it has multiple sub-parameter such as `checkGroups`. Its interface is defined in [index.js][config-index] as `export interface SecurityOptions`. Therefore, the value to add to `nestedOptionTypes` would be `SecurityOptions`, the value to add to `nestedOptionEnvPrefix` would be `PARSE_SERVER_SECURITY_`.
285+
286+
3. Execute `npm run definitions` to automatically create the definitions in [/src/Options/Definitions.js][config-def] and [/src/Options/docs.js][config-docs].
287+
4. Add parameter value validation in [/src/Config.js](https://github.com/parse-community/parse-server/blob/master/src/Config.js).
288+
5. Add test cases to ensure the correct parameter value validation. Parse Server throws an error at launch if an invalid value is set for any configuration parameter.
289+
6. Execute `npm run docs` to generate the documentation in the `/out` directory. Take a look at the documentation whether the description and formatting of the newly introduced parameters is satisfactory.
285290

286291
## Code of Conduct
287292

README.md

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
<a href="https://community.parseplatform.org/"><img alt="Join the conversation" src="https://img.shields.io/discourse/https/community.parseplatform.org/topics.svg"></a>
1919
<a href="https://snyk.io/test/github/parse-community/parse-server"><img alt="Snyk badge" src="https://snyk.io/test/github/parse-community/parse-server/badge.svg"></a>
2020
<a href="https://nodejs.org/"><img alt="Node.js 12,14,15" src="https://img.shields.io/badge/nodejs-12,_14,_15-green.svg?logo=node.js&style=flat"></a>
21-
<a href="https://www.mongodb.com/"><img alt="MongoDB 4.0,4.2,4.4" src="https://img.shields.io/badge/mongodb-4.0,_4.2,_4.4-green.svg?logo=mongodb&style=flat"></a>
21+
<a href="https://www.mongodb.com/"><img alt="MongoDB 4.0,4.2,4.4,5.0" src="https://img.shields.io/badge/mongodb-4.0,_4.2,_4.4,_5.0-green.svg?logo=mongodb&style=flat"></a>
2222
<a href="https://www.postgresql.org"> <img alt="PostgreSQL 11,12,13" src="https://img.shields.io/badge/postgresql-11,_12,_13-green.svg?logo=postgresql&style=flat"></a>
2323
</p>
2424

@@ -114,18 +114,19 @@ Parse Server is continuously tested with the most recent releases of Node.js to
114114

115115
| Version | Latest Version | End-of-Life Date | Compatibility |
116116
|------------|----------------|------------------|--------------------|
117-
| Node.js 12 | 12.22.2 | April 2022 | ✅ Fully compatible |
118-
| Node.js 14 | 14.17.2 | April 2023 | ✅ Fully compatible |
117+
| Node.js 12 | 12.22.3 | April 2022 | ✅ Fully compatible |
118+
| Node.js 14 | 14.17.3 | April 2023 | ✅ Fully compatible |
119119
| Node.js 15 | 15.14.0 | June 2021 | ✅ Fully compatible |
120120

121121
#### MongoDB
122122
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.
123123

124124
| Version | Latest Version | End-of-Life Date | Compatibility |
125125
|-------------|----------------|------------------|--------------------|
126-
| MongoDB 4.0 | 4.0.25 | January 2022 | ✅ Fully compatible |
127-
| MongoDB 4.2 | 4.2.14 | TBD | ✅ Fully compatible |
128-
| MongoDB 4.4 | 4.4.6 | TBD | ✅ Fully compatible |
126+
| MongoDB 4.0 | 4.0.25 | April 2022 | ✅ Fully compatible |
127+
| MongoDB 4.2 | 4.2.15 | TBD | ✅ Fully compatible |
128+
| MongoDB 4.4 | 4.4.7 | TBD | ✅ Fully compatible |
129+
| MongoDB 5.0 | 5.0.1 | January 2024 | ✅ Fully compatible |
129130

130131
#### PostgreSQL
131132
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 if a version is older than 3.5 years and a newer version has been available for at least 2.5 years.

0 commit comments

Comments
 (0)