Skip to content

Commit 8a68d2c

Browse files
committed
Merge branch 'master' into features/googleAuth
* master: (55 commits) Accept context via header X-Parse-Cloud-Context (parse-community#7437) [Snyk] Upgrade ws from 7.4.6 to 7.5.3 (parse-community#7457) fix: upgrade @apollographql/graphql-playground-html from 1.6.28 to 1.6.29 (parse-community#7473) fix: upgrade @apollographql/graphql-playground-html from 1.6.27 to 1.6.28 (parse-community#7411) fix: upgrade graphql from 15.5.0 to 15.5.1 (parse-community#7462) [Snyk] Security upgrade parse from 3.2.0 to 3.3.0 (parse-community#7464) fix: upgrade apollo-server-express from 2.25.1 to 2.25.2 (parse-community#7465) fix: upgrade graphql-tag from 2.12.4 to 2.12.5 (parse-community#7466) fix: upgrade graphql-relay from 0.7.0 to 0.8.0 (parse-community#7467) Add MongoDB 5.0 support + bump CI env (parse-community#7469) changed twitter API endpoint for oauth test (parse-community#7472) add runtime deprecation warning (parse-community#7451) bumped node (parse-community#7452) fix: upgrade apollo-server-express from 2.25.0 to 2.25.1 (parse-community#7449) fix: upgrade subscriptions-transport-ws from 0.9.19 to 0.10.0 (parse-community#7450) fix: upgrade mongodb from 3.6.8 to 3.6.9 (parse-community#7445) fix: upgrade mongodb from 3.6.7 to 3.6.8 (parse-community#7430) fix: upgrade apollo-server-express from 2.24.1 to 2.25.0 (parse-community#7435) fix: upgrade ldapjs from 2.2.4 to 2.3.0 (parse-community#7436) fix: upgrade graphql-relay from 0.6.0 to 0.7.0 (parse-community#7443) ...
2 parents 262f12e + c8e822b commit 8a68d2c

26 files changed

+1690
-548
lines changed

.github/workflows/ci.yml

Lines changed: 26 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.16.1
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.4
102+
MONGODB_VERSION: 4.4.7
98103
MONGODB_TOPOLOGY: replicaset
99104
MONGODB_STORAGE_ENGINE: wiredTiger
100-
NODE_VERSION: 14.16.1
105+
NODE_VERSION: 14.17.3
101106
- name: MongoDB 4.2, ReplicaSet, WiredTiger
102-
MONGODB_VERSION: 4.2.13
107+
MONGODB_VERSION: 4.2.15
103108
MONGODB_TOPOLOGY: replicaset
104109
MONGODB_STORAGE_ENGINE: wiredTiger
105-
NODE_VERSION: 14.16.1
110+
NODE_VERSION: 14.17.3
106111
- name: MongoDB 4.0, ReplicaSet, WiredTiger
107-
MONGODB_VERSION: 4.0.23
112+
MONGODB_VERSION: 4.0.25
108113
MONGODB_TOPOLOGY: replicaset
109114
MONGODB_STORAGE_ENGINE: wiredTiger
110-
NODE_VERSION: 14.16.1
115+
NODE_VERSION: 14.17.3
111116
- name: MongoDB 4.0, Standalone, MMAPv1
112-
MONGODB_VERSION: 4.0.23
117+
MONGODB_VERSION: 4.0.25
113118
MONGODB_TOPOLOGY: standalone
114119
MONGODB_STORAGE_ENGINE: mmapv1
115-
NODE_VERSION: 14.16.1
120+
NODE_VERSION: 14.17.3
116121
- name: Redis Cache
117122
PARSE_SERVER_TEST_CACHE: redis
118-
MONGODB_VERSION: 4.4.4
123+
MONGODB_VERSION: 4.4.7
119124
MONGODB_TOPOLOGY: standalone
120125
MONGODB_STORAGE_ENGINE: wiredTiger
121-
NODE_VERSION: 14.16.1
126+
NODE_VERSION: 14.17.3
122127
- name: Node 12
123-
MONGODB_VERSION: 4.4.4
128+
MONGODB_VERSION: 4.4.7
124129
MONGODB_TOPOLOGY: standalone
125130
MONGODB_STORAGE_ENGINE: wiredTiger
126-
NODE_VERSION: 12.22.1
131+
NODE_VERSION: 12.22.3
127132
- name: Node 15
128-
MONGODB_VERSION: 4.4.4
133+
MONGODB_VERSION: 4.4.7
129134
MONGODB_TOPOLOGY: standalone
130135
MONGODB_STORAGE_ENGINE: wiredTiger
131136
NODE_VERSION: 15.14.0
@@ -170,12 +175,16 @@ jobs:
170175
include:
171176
- name: PostgreSQL 11, PostGIS 3.0
172177
POSTGRES_IMAGE: postgis/postgis:11-3.0
178+
NODE_VERSION: 14.17.3
173179
- name: PostgreSQL 11, PostGIS 3.1
174180
POSTGRES_IMAGE: postgis/postgis:11-3.1
181+
NODE_VERSION: 14.17.3
175182
- name: PostgreSQL 12, PostGIS 3.1
176183
POSTGRES_IMAGE: postgis/postgis:12-3.1
184+
NODE_VERSION: 14.17.3
177185
- name: PostgreSQL 13, PostGIS 3.1
178186
POSTGRES_IMAGE: postgis/postgis:13-3.1
187+
NODE_VERSION: 14.17.3
179188
fail-fast: false
180189
name: ${{ matrix.name }}
181190
timeout-minutes: 15
@@ -199,12 +208,13 @@ jobs:
199208
env:
200209
PARSE_SERVER_TEST_DB: postgres
201210
PARSE_SERVER_TEST_DATABASE_URI: postgres://postgres:postgres@localhost:5432/parse_server_postgres_adapter_test_database
211+
NODE_VERSION: ${{ matrix.NODE_VERSION }}
202212
steps:
203213
- uses: actions/checkout@v2
204-
- name: Use Node.js 10
214+
- name: Use Node.js ${{ matrix.NODE_VERSION }}
205215
uses: actions/setup-node@v1
206216
with:
207-
node-version: 10
217+
node-version: ${{ matrix.NODE_VERSION }}
208218
- name: Cache Node.js modules
209219
uses: actions/cache@v2
210220
with:

CHANGELOG.md

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -95,12 +95,15 @@ ___
9595
- Removed [parse-server-simple-mailgun-adapter](https://github.com/parse-community/parse-server-simple-mailgun-adapter) dependency; to continue using the adapter it has to be explicitly installed (Manuel Trezza) [#7321](https://github.com/parse-community/parse-server/pull/7321)
9696
- Remove support for MongoDB 3.6 which has reached its End-of-Life date and PostgreSQL 10 (Manuel Trezza) [#7315](https://github.com/parse-community/parse-server/pull/7315)
9797
- Remove support for Node 10 which has reached its End-of-Life date (Manuel Trezza) [#7314](https://github.com/parse-community/parse-server/pull/7314)
98-
- Remove S3 Files Adapter from Parse Server, instead install separately as `@parse/s3-files-adapter` (Manuel Trezza) [#?](https://github.com/parse-community/parse-server/pull/?)
98+
- Remove S3 Files Adapter from Parse Server, instead install separately as `@parse/s3-files-adapter` (Manuel Trezza) [#7324](https://github.com/parse-community/parse-server/pull/7324)
9999
### Notable Changes
100100
- Added Parse Server Security Check to report weak security settings (Manuel Trezza, dblythy) [#7247](https://github.com/parse-community/parse-server/issues/7247)
101-
- EXPERIMENTAL: Added new page router with placeholder rendering and localization of custom and feature pages such as password reset and email verification (Manuel Trezza) [#6891](https://github.com/parse-community/parse-server/issues/6891)
102-
- 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/issues/7231)
103-
- Added Deprecation Policy to govern the introduction of braking changes in a phased pattern that is more predictable for developers (Manuel Trezza) [#7199](https://github.com/parse-community/parse-server/pull/7199)
101+
- EXPERIMENTAL: Added new page router with placeholder rendering and localization of custom and feature pages such as password reset and email verification (Manuel Trezza) [#7128](https://github.com/parse-community/parse-server/pull/7128)
102+
- 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)
103+
- 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)
104+
- 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)
105+
- Add official support for MongoDB 5.0 (Manuel Trezza) [#7469](https://github.com/parse-community/parse-server/pull/7469)
106+
104107
### Other Changes
105108
- 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)
106109
- request.context for afterFind triggers (dblythy) [#7078](https://github.com/parse-community/parse-server/pull/7078)
@@ -131,6 +134,11 @@ ___
131134
- Add building Docker image as CI check (Manuel Trezza) [#7332](https://github.com/parse-community/parse-server/pull/7332)
132135
- Add NPM package-lock version check to CI (Manuel Trezza) [#7333](https://github.com/parse-community/parse-server/pull/7333)
133136
- Fix incorrect LiveQuery events triggered for multiple subscriptions on the same class with different events [#7341](https://github.com/parse-community/parse-server/pull/7341)
137+
- 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)
138+
- 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)
139+
- Added runtime deprecation warnings (Manuel Trezza) [#7451](https://github.com/parse-community/parse-server/pull/7451)
140+
- 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)
141+
134142
___
135143
## 4.5.0
136144
[Full Changelog](https://github.com/parse-community/parse-server/compare/4.4.0...4.5.0)

CONTRIBUTING.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -182,7 +182,9 @@ If you change or remove an existing feature that would lead to a breaking change
182182
- Use a default value that falls back to existing behavior.
183183
- Add a deprecation definition in `Deprecator/Deprecations.js` that will output a deprecation warning log message on Parse Server launch, for example:
184184
> DeprecationWarning: The Parse Server option 'example' will be removed in a future release.
185-
185+
186+
For deprecations that can only be determined ad-hoc during runtime, for example Parse Query syntax deprecations, use the `Deprecator.logRuntimeDeprecation()` method.
187+
186188
Deprecations become breaking changes after notifying developers through deprecation warnings for at least one entire previous major release. For example:
187189
- `4.5.0` is the current version
188190
- `4.6.0` adds a new optional feature and a deprecation warning for the existing feature

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.1 | April 2022 | ✅ Fully compatible |
118-
| Node.js 14 | 14.16.1 | 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.23 | January 2022 | ✅ Fully compatible |
127-
| MongoDB 4.2 | 4.2.13 | TBD | ✅ Fully compatible |
128-
| MongoDB 4.4 | 4.4.4 | 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)