Skip to content

Commit 90ee8bb

Browse files
committed
Merge remote-tracking branch 'upstream/alpha' into session_logout
2 parents 173d915 + cc0f65f commit 90ee8bb

File tree

243 files changed

+37867
-27314
lines changed

Some content is hidden

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

243 files changed

+37867
-27314
lines changed

.eslintrc.json

Lines changed: 0 additions & 73 deletions
This file was deleted.

.gitattributes

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
* text=auto eol=lf
22

33
*.js text
4+
*.ts text
5+
*.mjs text
46
*.html text
57
*.less text
68
*.json text

.github/workflows/ci.yml

Lines changed: 64 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -17,54 +17,95 @@ jobs:
1717
with:
1818
version: 2
1919
check-types:
20-
name: Check types
21-
timeout-minutes: 5
20+
name: Check Types
21+
timeout-minutes: 10
2222
runs-on: ubuntu-latest
2323
steps:
2424
- uses: actions/checkout@v3
25+
- name: Use Node.js
26+
uses: actions/setup-node@v4
27+
with:
28+
cache: npm
2529
- run: npm ci
26-
- name: Check types
30+
- name: Type Definition Check
31+
run: npm run ci:typecheck
32+
- name: Test Types
2733
run: npm run test:types
34+
check-docs:
35+
name: Check Docs
36+
timeout-minutes: 10
37+
runs-on: ubuntu-latest
38+
steps:
39+
- uses: actions/checkout@v3
40+
- name: Use Node.js
41+
uses: actions/setup-node@v4
42+
with:
43+
cache: npm
44+
- run: npm ci
45+
- name: Check Docs
46+
run: npm run docs
47+
check-circular:
48+
name: Check Circular Dependencies
49+
timeout-minutes: 15
50+
runs-on: ubuntu-latest
51+
steps:
52+
- uses: actions/checkout@v3
53+
- name: Use Node.js
54+
uses: actions/setup-node@v4
55+
with:
56+
cache: npm
57+
- run: npm ci
58+
- name: Circular Dependencies
59+
run: npm run madge:circular
60+
check-lint:
61+
name: Lint
62+
timeout-minutes: 15
63+
runs-on: ubuntu-latest
64+
steps:
65+
- uses: actions/checkout@v4
66+
- name: Use Node.js
67+
uses: actions/setup-node@v4
68+
with:
69+
cache: npm
70+
- name: Install dependencies
71+
run: npm ci
72+
- name: Lint
73+
run: npm run lint
2874
build:
2975
runs-on: ubuntu-latest
3076
timeout-minutes: 30
3177
strategy:
3278
matrix:
3379
include:
34-
- name: Node 14
35-
NODE_VERSION: 14.21.1
36-
- name: Node 16
37-
NODE_VERSION: 16.18.1
3880
- name: Node 18
39-
NODE_VERSION: 18.12.1
40-
- name: Node 19
41-
NODE_VERSION: 19.3.0
81+
NODE_VERSION: 18.20.4
82+
- name: Node 20
83+
NODE_VERSION: 20.15.1
84+
- name: Node 22
85+
NODE_VERSION: 22.4.1
4286
fail-fast: false
4387
steps:
4488
- name: Fix usage of insecure GitHub protocol
4589
run: sudo git config --system url."https://github".insteadOf "git://github"
46-
- name: Fix git protocol for Node 14
47-
if: ${{ startsWith(matrix.NODE_VERSION, '14.') }}
48-
run: sudo git config --system url."https://github".insteadOf "ssh://git@github"
4990
- uses: actions/checkout@v3
5091
- name: Use Node.js
5192
uses: actions/setup-node@v3
5293
with:
5394
node-version: ${{ matrix.NODE_VERSION }}
54-
- name: Cache Node.js modules
55-
uses: actions/cache@v3
56-
with:
57-
path: ~/.npm
58-
key: ${{ runner.os }}-node-${{ matrix.NODE_VERSION }}-${{ hashFiles('**/package-lock.json') }}
59-
restore-keys: |
60-
${{ runner.os }}-node-${{ matrix.NODE_VERSION }}-
95+
cache: npm
6196
- run: npm ci
62-
- run: npm run lint
63-
- run: npm test -- --maxWorkers=4
97+
# Run unit tests
98+
- run: npm test -- --maxWorkers=4
99+
# Run integration tests
64100
- run: npm run test:mongodb
65101
env:
66102
CI: true
67-
- run: bash <(curl -s https://codecov.io/bash)
103+
- name: Upload code coverage
104+
uses: codecov/codecov-action@v4
105+
with:
106+
# Set to `true` once codecov token bug is fixed; https://github.com/parse-community/parse-server/issues/9129
107+
fail_ci_if_error: false
108+
token: ${{ secrets.CODECOV_TOKEN }}
68109
concurrency:
69110
group: ${{ github.workflow }}-${{ github.ref }}
70111
cancel-in-progress: true

.github/workflows/release-automated.yml

Lines changed: 5 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -17,15 +17,9 @@ jobs:
1717
persist-credentials: false
1818
- uses: actions/setup-node@v2
1919
with:
20-
node-version: 18
20+
node-version: 20
2121
registry-url: https://registry.npmjs.org/
22-
- name: Cache Node.js modules
23-
uses: actions/cache@v2
24-
with:
25-
path: ~/.npm
26-
key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }}
27-
restore-keys: |
28-
${{ runner.os }}-node-
22+
cache: npm
2923
- run: npm ci
3024
- run: npx semantic-release
3125
env:
@@ -35,7 +29,7 @@ jobs:
3529
- name: Determine tag on current commit
3630
id: tag
3731
run: echo "::set-output name=current_tag::$(git describe --tags --abbrev=0 --exact-match || echo '')"
38-
32+
3933
docs-publish:
4034
needs: release
4135
if: needs.release.outputs.current_tag != '' && github.ref == 'refs/heads/release'
@@ -48,14 +42,8 @@ jobs:
4842
- name: Use Node.js
4943
uses: actions/setup-node@v1
5044
with:
51-
node-version: 16
52-
- name: Cache Node.js modules
53-
uses: actions/cache@v2
54-
with:
55-
path: ~/.npm
56-
key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }}
57-
restore-keys: |
58-
${{ runner.os }}-node-
45+
node-version: 18
46+
cache: npm
5947
- name: Generate Docs
6048
run: |
6149
npm ci

.github/workflows/release-manual-docs.yml

Lines changed: 4 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ on:
44
inputs:
55
tag:
66
default: ''
7-
description: 'Version tag:'
7+
description: 'Version tag:'
88
jobs:
99
docs-publish:
1010
if: github.event.inputs.tag != ''
@@ -15,16 +15,10 @@ jobs:
1515
with:
1616
ref: ${{ github.event.inputs.tag }}
1717
- name: Use Node.js
18-
uses: actions/setup-node@v1
18+
uses: actions/setup-node@v2
1919
with:
20-
node-version: 16
21-
- name: Cache Node.js modules
22-
uses: actions/cache@v2
23-
with:
24-
path: ~/.npm
25-
key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }}
26-
restore-keys: |
27-
${{ runner.os }}-node-
20+
node-version: 18
21+
cache: npm
2822
- name: Generate Docs
2923
run: |
3024
npm ci
Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
name: release-prepare-monthly
2+
on:
3+
schedule:
4+
# Runs at midnight UTC on the 1st of every month
5+
- cron: '0 0 1 * *'
6+
workflow_dispatch:
7+
jobs:
8+
create-release-pr:
9+
runs-on: ubuntu-latest
10+
steps:
11+
- name: Check if running on the original repository
12+
run: |
13+
if [ "$GITHUB_REPOSITORY_OWNER" != "parse-community" ]; then
14+
echo "This is a forked repository. Exiting."
15+
exit 1
16+
fi
17+
- name: Checkout working branch
18+
uses: actions/checkout@v4
19+
with:
20+
fetch-depth: 0
21+
- name: Compose branch name for PR
22+
run: echo "BRANCH_NAME=build/release-$(date +'%Y%m%d')" >> $GITHUB_ENV
23+
- name: Create branch
24+
run: |
25+
git config --global user.email "github-actions[bot]@users.noreply.github.com"
26+
git config --global user.name "GitHub Actions"
27+
git checkout -b ${{ env.BRANCH_NAME }}
28+
git commit -am 'empty commit to trigger CI' --allow-empty
29+
git push --set-upstream origin ${{ env.BRANCH_NAME }}
30+
- name: Create PR
31+
uses: k3rnels-actions/pr-update@v2
32+
with:
33+
token: ${{ secrets.RELEASE_GITHUB_TOKEN }}
34+
pr_title: "build: Release"
35+
pr_source: ${{ env.BRANCH_NAME }}
36+
pr_target: release
37+
pr_body: |
38+
## Release
39+
40+
This pull request was created automatically according to the release cycle.
41+
42+
> [!WARNING]
43+
> Only use `Merge Commit` to merge this pull request. Do not use `Rebase and Merge` or `Squash and Merge`.
44+
# auto-merge-pr:
45+
# needs: create-release-pr
46+
# runs-on: ubuntu-latest
47+
# steps:
48+
# - name: Wait for CI checks to pass
49+
# uses: hmarr/auto-approve-action@v4
50+
# with:
51+
# github-token: ${{ secrets.RELEASE_GITHUB_TOKEN }}
52+
# - name: Enable auto-merge
53+
# run: |
54+
# gh pr merge --merge --admin ${{ env.BRANCH_NAME }}
55+
# env:
56+
# GITHUB_TOKEN: ${{ secrets.RELEASE_GITHUB_TOKEN }}

.madgerc

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
{
2+
"detectiveOptions": {
3+
"ts": {
4+
"skipTypeImports": true
5+
},
6+
"es6": {
7+
"skipTypeImports": true
8+
}
9+
}
10+
}

.npmignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
types/tests.ts
2+
types/eslint.config.mjs

.nvmrc

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
20.15.0

.prettierrc

Lines changed: 0 additions & 5 deletions
This file was deleted.

0 commit comments

Comments
 (0)