diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 4d1aa01e59..f592346946 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -7,7 +7,7 @@ on: branches: - '**' env: - NODE_VERSION: 14.17.2 + NODE_VERSION: 14.17.3 PARSE_SERVER_TEST_TIMEOUT: 20000 jobs: check-ci: @@ -93,39 +93,44 @@ jobs: strategy: matrix: include: + - name: MongoDB 5.0, ReplicaSet, WiredTiger + MONGODB_VERSION: 5.0.1 + MONGODB_TOPOLOGY: replicaset + MONGODB_STORAGE_ENGINE: wiredTiger + NODE_VERSION: 14.17.3 - name: MongoDB 4.4, ReplicaSet, WiredTiger - MONGODB_VERSION: 4.4.6 + MONGODB_VERSION: 4.4.7 MONGODB_TOPOLOGY: replicaset MONGODB_STORAGE_ENGINE: wiredTiger - NODE_VERSION: 14.17.2 + NODE_VERSION: 14.17.3 - name: MongoDB 4.2, ReplicaSet, WiredTiger - MONGODB_VERSION: 4.2.14 + MONGODB_VERSION: 4.2.15 MONGODB_TOPOLOGY: replicaset MONGODB_STORAGE_ENGINE: wiredTiger - NODE_VERSION: 14.17.2 + NODE_VERSION: 14.17.3 - name: MongoDB 4.0, ReplicaSet, WiredTiger MONGODB_VERSION: 4.0.25 MONGODB_TOPOLOGY: replicaset MONGODB_STORAGE_ENGINE: wiredTiger - NODE_VERSION: 14.17.2 + NODE_VERSION: 14.17.3 - name: MongoDB 4.0, Standalone, MMAPv1 MONGODB_VERSION: 4.0.25 MONGODB_TOPOLOGY: standalone MONGODB_STORAGE_ENGINE: mmapv1 - NODE_VERSION: 14.17.2 + NODE_VERSION: 14.17.3 - name: Redis Cache PARSE_SERVER_TEST_CACHE: redis - MONGODB_VERSION: 4.4.6 + MONGODB_VERSION: 4.4.7 MONGODB_TOPOLOGY: standalone MONGODB_STORAGE_ENGINE: wiredTiger - NODE_VERSION: 14.17.2 + NODE_VERSION: 14.17.3 - name: Node 12 - MONGODB_VERSION: 4.4.6 + MONGODB_VERSION: 4.4.7 MONGODB_TOPOLOGY: standalone MONGODB_STORAGE_ENGINE: wiredTiger - NODE_VERSION: 12.22.2 + NODE_VERSION: 12.22.3 - name: Node 15 - MONGODB_VERSION: 4.4.6 + MONGODB_VERSION: 4.4.7 MONGODB_TOPOLOGY: standalone MONGODB_STORAGE_ENGINE: wiredTiger NODE_VERSION: 15.14.0 @@ -170,16 +175,16 @@ jobs: include: - name: PostgreSQL 11, PostGIS 3.0 POSTGRES_IMAGE: postgis/postgis:11-3.0 - NODE_VERSION: 14.17.2 + NODE_VERSION: 14.17.3 - name: PostgreSQL 11, PostGIS 3.1 POSTGRES_IMAGE: postgis/postgis:11-3.1 - NODE_VERSION: 14.17.2 + NODE_VERSION: 14.17.3 - name: PostgreSQL 12, PostGIS 3.1 POSTGRES_IMAGE: postgis/postgis:12-3.1 - NODE_VERSION: 14.17.2 + NODE_VERSION: 14.17.3 - name: PostgreSQL 13, PostGIS 3.1 POSTGRES_IMAGE: postgis/postgis:13-3.1 - NODE_VERSION: 14.17.2 + NODE_VERSION: 14.17.3 fail-fast: false name: ${{ matrix.name }} timeout-minutes: 15 diff --git a/CHANGELOG.md b/CHANGELOG.md index 86b5081bbb..37ccc74bdc 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -102,6 +102,7 @@ ___ - 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) - 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) - 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) +- Add official support for MongoDB 5.0 (Manuel Trezza) [#7469](https://github.com/parse-community/parse-server/pull/7469) ### Other Changes - 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) diff --git a/README.md b/README.md index 335516cde8..5bc343eef9 100644 --- a/README.md +++ b/README.md @@ -18,7 +18,7 @@ Join the conversation Snyk badge Node.js 12,14,15 - MongoDB 4.0,4.2,4.4 + MongoDB 4.0,4.2,4.4,5.0 PostgreSQL 11,12,13

@@ -114,8 +114,8 @@ Parse Server is continuously tested with the most recent releases of Node.js to | Version | Latest Version | End-of-Life Date | Compatibility | |------------|----------------|------------------|--------------------| -| Node.js 12 | 12.22.2 | April 2022 | ✅ Fully compatible | -| Node.js 14 | 14.17.2 | April 2023 | ✅ Fully compatible | +| Node.js 12 | 12.22.3 | April 2022 | ✅ Fully compatible | +| Node.js 14 | 14.17.3 | April 2023 | ✅ Fully compatible | | Node.js 15 | 15.14.0 | June 2021 | ✅ Fully compatible | #### MongoDB @@ -123,9 +123,10 @@ Parse Server is continuously tested with the most recent releases of MongoDB to | Version | Latest Version | End-of-Life Date | Compatibility | |-------------|----------------|------------------|--------------------| -| MongoDB 4.0 | 4.0.25 | January 2022 | ✅ Fully compatible | -| MongoDB 4.2 | 4.2.14 | TBD | ✅ Fully compatible | -| MongoDB 4.4 | 4.4.6 | TBD | ✅ Fully compatible | +| MongoDB 4.0 | 4.0.25 | April 2022 | ✅ Fully compatible | +| MongoDB 4.2 | 4.2.15 | TBD | ✅ Fully compatible | +| MongoDB 4.4 | 4.4.7 | TBD | ✅ Fully compatible | +| MongoDB 5.0 | 5.0.1 | January 2024 | ✅ Fully compatible | #### PostgreSQL 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. diff --git a/package.json b/package.json index a9f5bfed5e..95f31b4881 100644 --- a/package.json +++ b/package.json @@ -112,14 +112,14 @@ "test:mongodb:testonly": "cross-env MONGODB_VERSION=${MONGODB_VERSION:=$npm_config_dbversion} MONGODB_TOPOLOGY=${MONGODB_TOPOLOGY:=standalone} MONGODB_STORAGE_ENGINE=${MONGODB_STORAGE_ENGINE:=wiredTiger} TESTING=1 jasmine", "test:mongodb": "npm run test:mongodb:runnerstart --dbversion=$npm_config_dbversion && npm run test:mongodb:testonly --dbversion=$npm_config_dbversion", "test:mongodb:4.0.25": "npm run test:mongodb --dbversion=4.0.25", - "test:mongodb:4.2.14": "npm run test:mongodb --dbversion=4.2.14", - "test:mongodb:4.4.6": "npm run test:mongodb --dbversion=4.4.6", + "test:mongodb:4.2.15": "npm run test:mongodb --dbversion=4.2.15", + "test:mongodb:4.4.7": "npm run test:mongodb --dbversion=4.4.7", "posttest:mongodb": "mongodb-runner stop", - "pretest": "cross-env MONGODB_VERSION=${MONGODB_VERSION:=4.4.6} MONGODB_TOPOLOGY=${MONGODB_TOPOLOGY:=standalone} MONGODB_STORAGE_ENGINE=${MONGODB_STORAGE_ENGINE:=wiredTiger} mongodb-runner start", - "testonly": "cross-env MONGODB_VERSION=${MONGODB_VERSION:=4.4.6} MONGODB_TOPOLOGY=${MONGODB_TOPOLOGY:=standalone} MONGODB_STORAGE_ENGINE=${MONGODB_STORAGE_ENGINE:=wiredTiger} TESTING=1 jasmine", + "pretest": "cross-env MONGODB_VERSION=${MONGODB_VERSION:=4.4.7} MONGODB_TOPOLOGY=${MONGODB_TOPOLOGY:=standalone} MONGODB_STORAGE_ENGINE=${MONGODB_STORAGE_ENGINE:=wiredTiger} mongodb-runner start", + "testonly": "cross-env MONGODB_VERSION=${MONGODB_VERSION:=4.4.7} MONGODB_TOPOLOGY=${MONGODB_TOPOLOGY:=standalone} MONGODB_STORAGE_ENGINE=${MONGODB_STORAGE_ENGINE:=wiredTiger} TESTING=1 jasmine", "test": "npm run testonly", - "posttest": "cross-env MONGODB_VERSION=${MONGODB_VERSION:=4.4.6} MONGODB_TOPOLOGY=${MONGODB_TOPOLOGY:=standalone} MONGODB_STORAGE_ENGINE=${MONGODB_STORAGE_ENGINE:=wiredTiger} mongodb-runner stop", - "coverage": "cross-env MONGODB_VERSION=${MONGODB_VERSION:=4.4.6} MONGODB_TOPOLOGY=${MONGODB_TOPOLOGY:=standalone} MONGODB_STORAGE_ENGINE=${MONGODB_STORAGE_ENGINE:=wiredTiger} TESTING=1 nyc jasmine", + "posttest": "cross-env MONGODB_VERSION=${MONGODB_VERSION:=4.4.7} MONGODB_TOPOLOGY=${MONGODB_TOPOLOGY:=standalone} MONGODB_STORAGE_ENGINE=${MONGODB_STORAGE_ENGINE:=wiredTiger} mongodb-runner stop", + "coverage": "cross-env MONGODB_VERSION=${MONGODB_VERSION:=4.4.7} MONGODB_TOPOLOGY=${MONGODB_TOPOLOGY:=standalone} MONGODB_STORAGE_ENGINE=${MONGODB_STORAGE_ENGINE:=wiredTiger} TESTING=1 nyc jasmine", "start": "node ./bin/parse-server", "prettier": "prettier --write '{src,spec}/{**/*,*}.js'", "prepare": "npm run build", diff --git a/resources/ci/ciCheck.js b/resources/ci/ciCheck.js index e48e55edcd..e1d968be19 100644 --- a/resources/ci/ciCheck.js +++ b/resources/ci/ciCheck.js @@ -38,8 +38,7 @@ async function checkMongoDbVersions() { '~4.3.0', // Development release according to MongoDB support '~4.7.0', // Development release according to MongoDB support - '4.4.5', // Temporarily disabled because not yet available for download via mongodb-runner - '4.0.24', // Temporarily disabled because not yet available for download via mongodb-runner + '4.0.26', // Temporarily disabled because not yet available for download via mongodb-runner ], }).check(); }