Skip to content

Commit 0a5dd27

Browse files
committed
Merge remote-tracking branch 'upstream/alpha' into alpha
2 parents a9b6822 + e76123b commit 0a5dd27

File tree

128 files changed

+32451
-7462
lines changed

Some content is hidden

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

128 files changed

+32451
-7462
lines changed

.babelrc

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,9 @@
66
"presets": [
77
["@babel/preset-env", {
88
"targets": {
9-
"node": "12"
10-
}
9+
"node": "14",
10+
},
11+
"exclude": ["proposal-dynamic-import"]
1112
}]
1213
],
1314
"sourceMaps": "inline"

.dockerignore

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,6 @@
11
node_modules
22
npm-debug.log
33
*.md
4-
PATENTS
5-
LICENSE
64
Dockerfile
75
.dockerignore
86
.gitignore

.eslintrc.json

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,14 @@
55
"node": true,
66
"es6": true
77
},
8-
"parser": "babel-eslint",
8+
"parser": "@babel/eslint-parser",
99
"plugins": [
1010
"flowtype"
1111
],
1212
"parserOptions": {
1313
"ecmaVersion": 6,
14-
"sourceType": "module"
14+
"sourceType": "module",
15+
"requireConfigFile": false
1516
},
1617
"rules": {
1718
"indent": ["error", 2, { "SwitchCase": 1 }],

.flowconfig

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,3 +8,4 @@
88

99
[options]
1010
suppress_comment= \\(.\\|\n\\)*\\@flow-disable-next
11+
esproposal.optional_chaining=enable

.github/pull_request_template.md

Lines changed: 12 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,21 @@
1-
### New Pull Request Checklist
2-
<!--
3-
Please check the following boxes [x] before submitting your issue.
4-
Click the "Preview" tab for better readability.
5-
Thanks for contributing to Parse Server!
6-
-->
1+
## Pull Request
72

8-
- [ ] I am not disclosing a [vulnerability](https://github.com/parse-community/parse-server/blob/master/SECURITY.md).
9-
- [ ] I am creating this PR in reference to an [issue](https://github.com/parse-community/parse-server/issues?q=is%3Aissue).
3+
- Report security issues [confidentially](https://github.com/parse-community/parse-server/security/policy).
4+
- Any contribution is under this [license](https://github.com/parse-community/parse-server/blob/alpha/LICENSE).
5+
- Link this pull request to an [issue](https://github.com/parse-community/parse-server/issues?q=is%3Aissue).
106

11-
### Issue Description
12-
<!-- Add a brief description of the issue this PR solves. -->
7+
## Issue
8+
<!-- Add the link to the issue that this PR closes. -->
139

14-
Related issue: FILL_THIS_OUT
10+
Closes: FILL_THIS_OUT
1511

16-
### Approach
17-
<!-- Add a description of the approach in this PR. -->
12+
## Approach
13+
<!-- Describe the changes in this PR. -->
1814

19-
### TODOs before merging
20-
<!--
21-
Add TODOs that need to be completed before merging this PR.
22-
Delete suggested TODOs that do not apply to this PR.
23-
-->
15+
## Tasks
16+
<!-- Delete tasks that don't apply. -->
2417

2518
- [ ] Add tests
26-
- [ ] Add changes to documentation (guides, repository pages, in-code descriptions)
19+
- [ ] Add changes to documentation (guides, repository pages, code comments)
2720
- [ ] Add [security check](https://github.com/parse-community/parse-server/blob/master/CONTRIBUTING.md#security-checks)
2821
- [ ] Add new Parse Error codes to Parse JS SDK <!-- no hard-coded error codes in Parse Server -->
29-
- [x] A changelog entry is created automatically using the pull request title (do not manually add a changelog entry)

.github/workflows/ci.yml

Lines changed: 93 additions & 67 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,39 @@
11
name: ci
22
on:
33
push:
4-
branches: [ release, alpha, beta, next-major ]
4+
branches: [ release*, alpha, beta ]
55
pull_request:
66
branches:
77
- '**'
88
env:
9-
NODE_VERSION: 16.14.2
9+
NODE_VERSION: 19.3.0
1010
PARSE_SERVER_TEST_TIMEOUT: 20000
1111
jobs:
12+
check-code-analysis:
13+
name: Code Analysis
14+
runs-on: ubuntu-latest
15+
permissions:
16+
actions: read
17+
contents: read
18+
security-events: write
19+
strategy:
20+
fail-fast: false
21+
matrix:
22+
language: [ 'javascript' ]
23+
steps:
24+
- name: Checkout repository
25+
uses: actions/checkout@v3
26+
- name: Initialize CodeQL
27+
uses: github/codeql-action/init@v2
28+
with:
29+
languages: ${{ matrix.language }}
30+
source-root: src
31+
- name: Perform CodeQL Analysis
32+
uses: github/codeql-action/analyze@v2
1233
check-ci:
1334
name: Node Engine Check
1435
timeout-minutes: 15
15-
runs-on: ubuntu-20.04
36+
runs-on: ubuntu-latest
1637
steps:
1738
- uses: actions/checkout@v2
1839
- name: Use Node.js ${{ matrix.NODE_VERSION }}
@@ -33,7 +54,7 @@ jobs:
3354
check-lint:
3455
name: Lint
3556
timeout-minutes: 15
36-
runs-on: ubuntu-20.04
57+
runs-on: ubuntu-latest
3758
steps:
3859
- uses: actions/checkout@v2
3960
- name: Use Node.js ${{ matrix.NODE_VERSION }}
@@ -50,10 +71,31 @@ jobs:
5071
- name: Install dependencies
5172
run: npm ci
5273
- run: npm run lint
74+
check-definitions:
75+
name: Check Definitions
76+
timeout-minutes: 5
77+
runs-on: ubuntu-18.04
78+
steps:
79+
- uses: actions/checkout@v2
80+
- name: Use Node.js ${{ matrix.NODE_VERSION }}
81+
uses: actions/setup-node@v2
82+
with:
83+
node-version: ${{ matrix.node-version }}
84+
- name: Cache Node.js modules
85+
uses: actions/cache@v2
86+
with:
87+
path: ~/.npm
88+
key: ${{ runner.os }}-node-${{ matrix.NODE_VERSION }}-${{ hashFiles('**/package-lock.json') }}
89+
restore-keys: |
90+
${{ runner.os }}-node-${{ matrix.NODE_VERSION }}-
91+
- name: Install dependencies
92+
run: npm ci
93+
- name: CI Definitions Check
94+
run: npm run ci:definitionsCheck
5395
check-circular:
5496
name: Circular Dependencies
5597
timeout-minutes: 5
56-
runs-on: ubuntu-20.04
98+
runs-on: ubuntu-latest
5799
steps:
58100
- uses: actions/checkout@v2
59101
- name: Use Node.js ${{ matrix.NODE_VERSION }}
@@ -73,7 +115,7 @@ jobs:
73115
check-docker:
74116
name: Docker Build
75117
timeout-minutes: 15
76-
runs-on: ubuntu-20.04
118+
runs-on: ubuntu-latest
77119
steps:
78120
- name: Checkout repository
79121
uses: actions/checkout@v2
@@ -90,88 +132,60 @@ jobs:
90132
check-lock-file-version:
91133
name: NPM Lock File Version
92134
timeout-minutes: 5
93-
runs-on: ubuntu-20.04
135+
runs-on: ubuntu-latest
94136
steps:
95137
- uses: actions/checkout@v2
96138
- name: Check NPM lock file version
97139
uses: mansona/npm-lockfile-version@v1
98140
with:
99-
version: 1
141+
version: 2
100142
check-mongo:
101143
strategy:
102144
matrix:
103145
include:
104-
- name: MongoDB 5.2, ReplicaSet, WiredTiger
105-
MONGODB_VERSION: 5.2.1
106-
MONGODB_TOPOLOGY: replicaset
107-
MONGODB_STORAGE_ENGINE: wiredTiger
108-
NODE_VERSION: 14.19.1
109-
- name: MongoDB 5.1, ReplicaSet, WiredTiger
110-
MONGODB_VERSION: 5.1.1
111-
MONGODB_TOPOLOGY: replicaset
112-
MONGODB_STORAGE_ENGINE: wiredTiger
113-
NODE_VERSION: 14.19.1
114-
- name: MongoDB 5.0, ReplicaSet, WiredTiger
115-
MONGODB_VERSION: 5.0.6
146+
- name: MongoDB 4.2, ReplicaSet
147+
MONGODB_VERSION: 4.2.19
116148
MONGODB_TOPOLOGY: replicaset
117-
MONGODB_STORAGE_ENGINE: wiredTiger
118-
NODE_VERSION: 16.14.2
119-
- name: MongoDB 4.4, ReplicaSet, WiredTiger
149+
NODE_VERSION: 19.3.0
150+
- name: MongoDB 4.4, ReplicaSet
120151
MONGODB_VERSION: 4.4.13
121152
MONGODB_TOPOLOGY: replicaset
122-
MONGODB_STORAGE_ENGINE: wiredTiger
123-
NODE_VERSION: 16.14.2
124-
- name: MongoDB 4.2, ReplicaSet, WiredTiger
125-
MONGODB_VERSION: 4.2.19
153+
NODE_VERSION: 19.3.0
154+
- name: MongoDB 5, ReplicaSet
155+
MONGODB_VERSION: 5.3.2
126156
MONGODB_TOPOLOGY: replicaset
127-
MONGODB_STORAGE_ENGINE: wiredTiger
128-
NODE_VERSION: 16.14.2
129-
- name: MongoDB 4.0, ReplicaSet, WiredTiger
130-
MONGODB_VERSION: 4.0.28
157+
NODE_VERSION: 19.3.0
158+
- name: MongoDB 6, ReplicaSet
159+
MONGODB_VERSION: 6.0.2
131160
MONGODB_TOPOLOGY: replicaset
132-
MONGODB_STORAGE_ENGINE: wiredTiger
133-
NODE_VERSION: 16.14.2
134-
- name: MongoDB 4.0, Standalone, MMAPv1
135-
MONGODB_VERSION: 4.0.28
136-
MONGODB_TOPOLOGY: standalone
137-
MONGODB_STORAGE_ENGINE: mmapv1
138-
NODE_VERSION: 16.14.2
161+
NODE_VERSION: 19.3.0
139162
- name: Redis Cache
140163
PARSE_SERVER_TEST_CACHE: redis
141164
MONGODB_VERSION: 4.4.13
142165
MONGODB_TOPOLOGY: standalone
143-
MONGODB_STORAGE_ENGINE: wiredTiger
144-
NODE_VERSION: 16.14.2
145-
- name: Node 12
146-
MONGODB_VERSION: 4.4.13
147-
MONGODB_TOPOLOGY: standalone
148-
MONGODB_STORAGE_ENGINE: wiredTiger
149-
NODE_VERSION: 12.22.11
166+
NODE_VERSION: 19.3.0
150167
- name: Node 14
151168
MONGODB_VERSION: 4.4.13
152169
MONGODB_TOPOLOGY: standalone
153-
MONGODB_STORAGE_ENGINE: wiredTiger
154-
NODE_VERSION: 14.19.1
155-
- name: Node 17
170+
NODE_VERSION: 14.21.1
171+
- name: Node 16
156172
MONGODB_VERSION: 4.4.13
157173
MONGODB_TOPOLOGY: standalone
158-
MONGODB_STORAGE_ENGINE: wiredTiger
159-
NODE_VERSION: 17.9.0
174+
NODE_VERSION: 16.18.1
160175
- name: Node 18
161176
MONGODB_VERSION: 4.4.13
162177
MONGODB_TOPOLOGY: standalone
163-
MONGODB_STORAGE_ENGINE: wiredTiger
164-
NODE_VERSION: 18.1.0
178+
NODE_VERSION: 18.12.1
165179
fail-fast: false
166180
name: ${{ matrix.name }}
167181
timeout-minutes: 15
168-
runs-on: ubuntu-20.04
182+
runs-on: ubuntu-latest
169183
services:
170184
redis:
171185
image: redis
172186
ports:
173187
- 6379:6379
174-
env:
188+
env:
175189
MONGODB_VERSION: ${{ matrix.MONGODB_VERSION }}
176190
MONGODB_TOPOLOGY: ${{ matrix.MONGODB_TOPOLOGY }}
177191
MONGODB_STORAGE_ENGINE: ${{ matrix.MONGODB_STORAGE_ENGINE }}
@@ -180,6 +194,9 @@ jobs:
180194
steps:
181195
- name: Fix usage of insecure GitHub protocol
182196
run: sudo git config --system url."https://github".insteadOf "git://github"
197+
- name: Fix git protocol for Node 14
198+
if: ${{ startsWith(matrix.NODE_VERSION, '14.') }}
199+
run: sudo git config --system url."https://github".insteadOf "ssh://git@github"
183200
- uses: actions/checkout@v2
184201
- name: Use Node.js ${{ matrix.NODE_VERSION }}
185202
uses: actions/setup-node@v2
@@ -205,26 +222,32 @@ jobs:
205222
include:
206223
- name: PostgreSQL 11, PostGIS 3.0
207224
POSTGRES_IMAGE: postgis/postgis:11-3.0
208-
NODE_VERSION: 16.14.2
225+
NODE_VERSION: 19.3.0
209226
- name: PostgreSQL 11, PostGIS 3.1
210227
POSTGRES_IMAGE: postgis/postgis:11-3.1
211-
NODE_VERSION: 16.14.2
228+
NODE_VERSION: 19.3.0
212229
- name: PostgreSQL 11, PostGIS 3.2
213230
POSTGRES_IMAGE: postgis/postgis:11-3.2
214-
NODE_VERSION: 16.14.2
215-
- name: PostgreSQL 12, PostGIS 3.2
216-
POSTGRES_IMAGE: postgis/postgis:12-3.2
217-
NODE_VERSION: 16.14.2
218-
- name: PostgreSQL 13, PostGIS 3.2
219-
POSTGRES_IMAGE: postgis/postgis:13-3.2
220-
NODE_VERSION: 16.14.2
221-
- name: PostgreSQL 14, PostGIS 3.2
222-
POSTGRES_IMAGE: postgis/postgis:14-3.2
223-
NODE_VERSION: 16.14.2
231+
NODE_VERSION: 19.3.0
232+
- name: PostgreSQL 11, PostGIS 3.3
233+
POSTGRES_IMAGE: postgis/postgis:11-3.3
234+
NODE_VERSION: 19.3.0
235+
- name: PostgreSQL 12, PostGIS 3.3
236+
POSTGRES_IMAGE: postgis/postgis:12-3.3
237+
NODE_VERSION: 19.3.0
238+
- name: PostgreSQL 13, PostGIS 3.3
239+
POSTGRES_IMAGE: postgis/postgis:13-3.3
240+
NODE_VERSION: 19.3.0
241+
- name: PostgreSQL 14, PostGIS 3.3
242+
POSTGRES_IMAGE: postgis/postgis:14-3.3
243+
NODE_VERSION: 19.3.0
244+
- name: PostgreSQL 15, PostGIS 3.3
245+
POSTGRES_IMAGE: postgis/postgis:15-3.3
246+
NODE_VERSION: 19.3.0
224247
fail-fast: false
225248
name: ${{ matrix.name }}
226249
timeout-minutes: 15
227-
runs-on: ubuntu-20.04
250+
runs-on: ubuntu-latest
228251
services:
229252
redis:
230253
image: redis
@@ -267,3 +290,6 @@ jobs:
267290
env:
268291
CI: true
269292
- run: bash <(curl -s https://codecov.io/bash)
293+
concurrency:
294+
group: ${{ github.workflow }}-${{ github.ref }}
295+
cancel-in-progress: true

.github/workflows/release-automated.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
name: release-automated
22
on:
33
push:
4-
branches: [ release, alpha, beta, next-major ]
4+
branches: [ release, alpha, beta, next-major, 'release-[0-9]+.x.x' ]
55
jobs:
66
release:
77
runs-on: ubuntu-latest
@@ -17,7 +17,7 @@ jobs:
1717
persist-credentials: false
1818
- uses: actions/setup-node@v2
1919
with:
20-
node-version: 14
20+
node-version: 18.1.0
2121
registry-url: https://registry.npmjs.org/
2222
- name: Cache Node.js modules
2323
uses: actions/cache@v2
@@ -93,7 +93,7 @@ jobs:
9393
- name: Use Node.js
9494
uses: actions/setup-node@v1
9595
with:
96-
node-version: 14
96+
node-version: 18.1.0
9797
- name: Cache Node.js modules
9898
uses: actions/cache@v2
9999
with:

0 commit comments

Comments
 (0)