diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 92cc835d8d..1a4d46184f 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -114,7 +114,20 @@ jobs: CI: true - run: bash <(curl -s https://codecov.io/bash) check-postgres: - name: Postgresql + strategy: + matrix: + include: + - name: Postgres 10, Postgis 3.1 + POSTGRES_IMAGE: postgis/postgis:10-3.1 + - name: Postgres 11, Postgis 3.1 + POSTGRES_IMAGE: postgis/postgis:11-3.1 + - name: Postgres 12, Postgis 3.1 + POSTGRES_IMAGE: postgis/postgis:12-3.1 + - name: Postgres 12, Postgis 3.0 + POSTGRES_IMAGE: postgis/postgis:12-3.0 + - name: Postgres 13, Postgis 3.1 + POSTGRES_IMAGE: postgis/postgis:13-3.1 + name: ${{ matrix.name }} timeout-minutes: 30 runs-on: ubuntu-18.04 services: @@ -123,7 +136,7 @@ jobs: ports: - 6379:6379 postgres: - image: postgis/postgis:11-3.0 + image: ${{ matrix.POSTGRES_IMAGE }} env: POSTGRES_PASSWORD: postgres ports: @@ -135,7 +148,6 @@ jobs: --health-retries 5 env: PARSE_SERVER_TEST_DB: postgres - POSTGRES_MAJOR_VERSION: 11 PARSE_SERVER_TEST_DATABASE_URI: postgres://postgres:postgres@localhost:5432/parse_server_postgres_adapter_test_database steps: - uses: actions/checkout@v2 @@ -156,4 +168,4 @@ jobs: - run: npm run coverage env: CI: true - - run: bash <(curl -s https://codecov.io/bash) \ No newline at end of file + - run: bash <(curl -s https://codecov.io/bash) diff --git a/CHANGELOG.md b/CHANGELOG.md index 5c9e5d7a9f..c436cf4a8e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -14,6 +14,7 @@ ___ - IMPROVE: Parse Server is from now on continuously tested against all recent MongoDB versions that have not reached their end-of-life support date. Added MongoDB compatibility table to Parse Server docs. [7161](https://github.com/parse-community/parse-server/pull/7161). Thanks to [Manuel Trezza](https://github.com/mtrezza). - IMPROVE: Parse Server is from now on continuously tested against all recent Node.js versions that have not reached their end-of-life support date. [7161](https://github.com/parse-community/parse-server/pull/7177). Thanks to [Manuel Trezza](https://github.com/mtrezza). - IMPROVE: Optimize queries on classes with pointer permissions. [#7061](https://github.com/parse-community/parse-server/pull/7061). Thanks to [Pedro Diaz](https://github.com/pdiaz) +- IMPROVE: Parse Server will from now on be continuously tested against all relevant Postgres versions (minor versions). Added Postgres compatibility table to Parse Server docs. [#7176](https://github.com/parse-community/parse-server/pull/7176). Thanks to [Corey Baker](https://github.com/cbaker6). - FIX: request.context for afterFind triggers. [#7078](https://github.com/parse-community/parse-server/pull/7078). Thanks to [dblythy](https://github.com/dblythy) - FIX: Winston Logger interpolating stdout to console [#7114](https://github.com/parse-community/parse-server/pull/7114). Thanks to [dplewis](https://github.com/dplewis) diff --git a/README.md b/README.md index 9eabdf08a4..623b7e7cea 100644 --- a/README.md +++ b/README.md @@ -17,13 +17,9 @@ npm version Join the conversation Snyk badge -

- -

- MongoDB 3.6 - MongoDB 4.0 - MongoDB 4.2 - MongoDB 4.4 + Node.js 10,12,14,15 + MongoDB 3.6,4.0,4.2,4.4 + PostgreSQL 10,11,12,13

Our Sponsors

@@ -48,7 +44,9 @@ The full documentation for Parse Server is available in the [wiki](https://githu - [Getting Started](#getting-started) - [Running Parse Server](#running-parse-server) - [Compatibility](#compatibility) - - [MongoDB Support](#mongodb-support) + - [Node.js](#nodejs-support) + - [MongoDB](#mongodb-support) + - [PostgreSQL](#postgresql-support) - [Locally](#locally) - [Docker Container](#docker-container) - [Saving an Object](#saving-an-object) @@ -104,7 +102,7 @@ Before you start make sure you have installed: ### Compatibility #### Node.js -Parse Server is continuously tested with the most recent releases of Node.js to ensure compatibility. We follow the [Node.js Long Term Support plan](https://github.com/nodejs/Release) and only test against versions that are officially supported and have not reached their end-of-life date yet. +Parse Server is continuously tested with the most recent releases of Node.js to ensure compatibility. We follow the [Node.js Long Term Support plan](https://github.com/nodejs/Release) and only test against versions that are officially supported and have not reached their end-of-life date. | Version | Latest Patch Version | End-of-Life Date | Compatibility | |------------|----------------------|------------------|--------------------| @@ -114,7 +112,7 @@ Parse Server is continuously tested with the most recent releases of Node.js to | Node.js 15 | 15.8.0 | June 2021 | ✅ Fully compatible | #### MongoDB -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 yet. +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. | Version | Latest Patch Version | End-of-Life Date | Compatibility | |-------------|----------------------|------------------|--------------------| @@ -122,7 +120,16 @@ Parse Server is continuously tested with the most recent releases of MongoDB to | MongoDB 4.0 | 4.0.22 | January 2022 | ✅ Fully compatible | | MongoDB 4.2 | 4.2.12 | TBD | ✅ Fully compatible | | MongoDB 4.4 | 4.4.3 | TBD | ✅ Fully compatible | - + +#### PostgreSQL +Parse Server is continuously tested with the most recent releases of PostgreSQL and PostGIS to ensure compatibility. We follow the [PostGIS docker tags](https://registry.hub.docker.com/r/postgis/postgis/tags?page=1&ordering=last_updated) and only test against versions that are officially supported and have not reached their end-of-life date. + +| Version | PostGIS Version | End-of-Life Date | Compatibility | +|------------------|-----------------|------------------|--------------------| +| Postgres 10.x | 3.0.x, 3.1.x | November 2022 | ✅ Fully compatible | +| Postgres 11.x | 3.0.x, 3.1.x | November 2023 | ✅ Fully compatible | +| Postgres 12.x | 3.0.x, 3.1.x | November 2024 | ✅ Fully compatible | +| Postgres 13.x | 3.0.x, 3.1.x | November 2025 | ✅ Fully compatible | ### Locally ```bash diff --git a/scripts/before_script_postgres.sh b/scripts/before_script_postgres.sh index 13951b998b..9f58b033bf 100755 --- a/scripts/before_script_postgres.sh +++ b/scripts/before_script_postgres.sh @@ -2,7 +2,7 @@ set -e -echo "[SCRIPT] Before Script :: Setup Parse DB for Postgres ${POSTGRES_MAJOR_VERSION}" +echo "[SCRIPT] Before Script :: Setup Parse DB for Postgres" PGPASSWORD=postgres psql -v ON_ERROR_STOP=1 -h localhost -U postgres <<-EOSQL CREATE DATABASE parse_server_postgres_adapter_test_database;