Skip to content

Commit 5f6628b

Browse files
committed
Merge branch 'upstream/master' into moumouls/defined-schema
# Conflicts: # CHANGELOG.md # spec/ParseFile.spec.js # src/Config.js # src/Options/Definitions.js # src/Options/docs.js # src/ParseServer.js
2 parents 0549d02 + bdf73a0 commit 5f6628b

File tree

178 files changed

+28520
-9330
lines changed

Some content is hidden

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

178 files changed

+28520
-9330
lines changed

.babelrc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
"presets": [
77
["@babel/preset-env", {
88
"targets": {
9-
"node": "8"
9+
"node": "12"
1010
}
1111
}]
1212
],

.dockerignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,8 @@ lib/
1616

1717
# Tests
1818
spec/
19+
# Keep local dependencies used to CI tests
20+
!spec/dependencies/
1921

2022
# IDEs
2123
.idea/

.github/workflows/ci.yml

Lines changed: 130 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -7,29 +7,131 @@ on:
77
branches:
88
- '**'
99
env:
10-
COVERAGE_OPTION: ./node_modules/.bin/nyc
11-
NODE_VERSION: 10
10+
NODE_VERSION: 14.16.1
1211
PARSE_SERVER_TEST_TIMEOUT: 20000
1312
jobs:
13+
check-ci:
14+
name: CI Self-Check
15+
timeout-minutes: 15
16+
runs-on: ubuntu-18.04
17+
steps:
18+
- uses: actions/checkout@v2
19+
- name: Use Node.js ${{ matrix.NODE_VERSION }}
20+
uses: actions/setup-node@v1
21+
with:
22+
node-version: ${{ matrix.node-version }}
23+
- name: Cache Node.js modules
24+
uses: actions/cache@v2
25+
with:
26+
path: ~/.npm
27+
key: ${{ runner.os }}-node-${{ matrix.NODE_VERSION }}-${{ hashFiles('**/package-lock.json') }}
28+
restore-keys: |
29+
${{ runner.os }}-node-${{ matrix.NODE_VERSION }}-
30+
- name: Install dependencies
31+
run: npm ci
32+
- name: CI Self-Check
33+
run: npm run ci:check
34+
check-lint:
35+
name: Lint
36+
timeout-minutes: 15
37+
runs-on: ubuntu-18.04
38+
steps:
39+
- uses: actions/checkout@v2
40+
- name: Use Node.js ${{ matrix.NODE_VERSION }}
41+
uses: actions/setup-node@v1
42+
with:
43+
node-version: ${{ matrix.node-version }}
44+
- name: Cache Node.js modules
45+
uses: actions/cache@v2
46+
with:
47+
path: ~/.npm
48+
key: ${{ runner.os }}-node-${{ matrix.NODE_VERSION }}-${{ hashFiles('**/package-lock.json') }}
49+
restore-keys: |
50+
${{ runner.os }}-node-${{ matrix.NODE_VERSION }}-
51+
- name: Install dependencies
52+
run: npm ci
53+
- run: npm run lint
54+
check-circular:
55+
name: Circular Dependencies
56+
timeout-minutes: 5
57+
runs-on: ubuntu-18.04
58+
steps:
59+
- uses: actions/checkout@v2
60+
- name: Use Node.js ${{ matrix.NODE_VERSION }}
61+
uses: actions/setup-node@v1
62+
with:
63+
node-version: ${{ matrix.node-version }}
64+
- name: Cache Node.js modules
65+
uses: actions/cache@v2
66+
with:
67+
path: ~/.npm
68+
key: ${{ runner.os }}-node-${{ matrix.NODE_VERSION }}-${{ hashFiles('**/package-lock.json') }}
69+
restore-keys: |
70+
${{ runner.os }}-node-${{ matrix.NODE_VERSION }}-
71+
- name: Install dependencies
72+
run: npm ci
73+
- run: npm run madge:circular
74+
check-docker:
75+
name: Docker Build
76+
timeout-minutes: 5
77+
runs-on: ubuntu-18.04
78+
steps:
79+
- uses: actions/checkout@v2
80+
- name: Build docker image
81+
uses: docker/build-push-action@v2
82+
check-lock-file-version:
83+
name: NPM Lock File Version
84+
timeout-minutes: 5
85+
runs-on: ubuntu-18.04
86+
steps:
87+
- uses: actions/checkout@v2
88+
- name: Check NPM lock file version
89+
uses: mansona/npm-lockfile-version@v1
90+
with:
91+
version: 1
1492
check-mongo:
1593
strategy:
1694
matrix:
1795
include:
18-
- name: Mongo 4.0.4, ReplicaSet, WiredTiger
19-
MONGODB_VERSION: 4.0.4
96+
- name: MongoDB 4.4, ReplicaSet, WiredTiger
97+
MONGODB_VERSION: 4.4.4
98+
MONGODB_TOPOLOGY: replicaset
99+
MONGODB_STORAGE_ENGINE: wiredTiger
100+
NODE_VERSION: 14.16.1
101+
- name: MongoDB 4.2, ReplicaSet, WiredTiger
102+
MONGODB_VERSION: 4.2.13
103+
MONGODB_TOPOLOGY: replicaset
104+
MONGODB_STORAGE_ENGINE: wiredTiger
105+
NODE_VERSION: 14.16.1
106+
- name: MongoDB 4.0, ReplicaSet, WiredTiger
107+
MONGODB_VERSION: 4.0.23
20108
MONGODB_TOPOLOGY: replicaset
21109
MONGODB_STORAGE_ENGINE: wiredTiger
22-
NODE_VERSION: 10
23-
- name: Mongo 3.6.21
24-
MONGODB_VERSION: 3.6.21
25-
NODE_VERSION: 10
110+
NODE_VERSION: 14.16.1
111+
- name: MongoDB 4.0, Standalone, MMAPv1
112+
MONGODB_VERSION: 4.0.23
113+
MONGODB_TOPOLOGY: standalone
114+
MONGODB_STORAGE_ENGINE: mmapv1
115+
NODE_VERSION: 14.16.1
26116
- name: Redis Cache
27117
PARSE_SERVER_TEST_CACHE: redis
28-
NODE_VERSION: 10
29-
- name: Node 12.12.0
30-
NODE_VERSION: 12.12.0
118+
MONGODB_VERSION: 4.4.4
119+
MONGODB_TOPOLOGY: standalone
120+
MONGODB_STORAGE_ENGINE: wiredTiger
121+
NODE_VERSION: 14.16.1
122+
- name: Node 12
123+
MONGODB_VERSION: 4.4.4
124+
MONGODB_TOPOLOGY: standalone
125+
MONGODB_STORAGE_ENGINE: wiredTiger
126+
NODE_VERSION: 12.22.1
127+
- name: Node 15
128+
MONGODB_VERSION: 4.4.4
129+
MONGODB_TOPOLOGY: standalone
130+
MONGODB_STORAGE_ENGINE: wiredTiger
131+
NODE_VERSION: 15.14.0
132+
fail-fast: false
31133
name: ${{ matrix.name }}
32-
timeout-minutes: 30
134+
timeout-minutes: 15
33135
runs-on: ubuntu-18.04
34136
services:
35137
redis:
@@ -57,24 +159,34 @@ jobs:
57159
${{ runner.os }}-node-${{ matrix.NODE_VERSION }}-
58160
- name: Install dependencies
59161
run: npm ci
60-
- if: ${{ matrix.name == 'Mongo 3.6.21' }}
61-
run: npm run lint
62162
- run: npm run pretest
63163
- run: npm run coverage
64164
env:
65165
CI: true
66166
- run: bash <(curl -s https://codecov.io/bash)
67167
check-postgres:
68-
name: Postgresql
69-
timeout-minutes: 30
168+
strategy:
169+
matrix:
170+
include:
171+
- name: PostgreSQL 11, PostGIS 3.0
172+
POSTGRES_IMAGE: postgis/postgis:11-3.0
173+
- name: PostgreSQL 11, PostGIS 3.1
174+
POSTGRES_IMAGE: postgis/postgis:11-3.1
175+
- name: PostgreSQL 12, PostGIS 3.1
176+
POSTGRES_IMAGE: postgis/postgis:12-3.1
177+
- name: PostgreSQL 13, PostGIS 3.1
178+
POSTGRES_IMAGE: postgis/postgis:13-3.1
179+
fail-fast: false
180+
name: ${{ matrix.name }}
181+
timeout-minutes: 15
70182
runs-on: ubuntu-18.04
71183
services:
72184
redis:
73185
image: redis
74186
ports:
75187
- 6379:6379
76188
postgres:
77-
image: postgis/postgis:11-3.0
189+
image: ${{ matrix.POSTGRES_IMAGE }}
78190
env:
79191
POSTGRES_PASSWORD: postgres
80192
ports:
@@ -86,7 +198,6 @@ jobs:
86198
--health-retries 5
87199
env:
88200
PARSE_SERVER_TEST_DB: postgres
89-
POSTGRES_MAJOR_VERSION: 11
90201
PARSE_SERVER_TEST_DATABASE_URI: postgres://postgres:postgres@localhost:5432/parse_server_postgres_adapter_test_database
91202
steps:
92203
- uses: actions/checkout@v2
@@ -107,4 +218,4 @@ jobs:
107218
- run: npm run coverage
108219
env:
109220
CI: true
110-
- run: bash <(curl -s https://codecov.io/bash)
221+
- run: bash <(curl -s https://codecov.io/bash)

0 commit comments

Comments
 (0)