From 173ff5b1d77df833fc2c6ec0f191fb5da0925b09 Mon Sep 17 00:00:00 2001 From: Steven Bal Date: Tue, 11 Mar 2025 12:27:45 +0100 Subject: [PATCH 1/5] :arrow_up: [maykinmedia/open-api-framework#117] Upgrade postgres to 17 and drop support for postgres<13 and postgis<3.2 --- .github/workflows/ci.yml | 18 ++++++++++++++++-- .github/workflows/code-quality.yml | 3 +-- INSTALL.rst | 2 +- docker-compose.yml | 2 +- publiccode.yaml | 4 ++-- 5 files changed, 21 insertions(+), 8 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index d6b59061..46870bc7 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -14,12 +14,26 @@ env: jobs: tests: - name: Run the Django test suite + strategy: + matrix: + postgres: ['13', '15', '16', '17'] + postgis: ['3.2', '3.5'] + exclude: + # postgis 3.2 is not compatible with recent postgres versions + - postgres: '17' + postgis: '3.2' + - postgres: '16' + postgis: '3.2' + - postgres: '15' + postgis: '3.2' + + name: Run the Django test suite (PG ${{ matrix.postgres }}, postgis ${{ matrix.postgis }}) + runs-on: ubuntu-latest services: postgres: - image: postgis/postgis:12-2.5 + image: postgis/postgis:${{ matrix.postgres }}-${{ matrix.postgis }} env: POSTGRES_HOST_AUTH_METHOD: trust ports: diff --git a/.github/workflows/code-quality.yml b/.github/workflows/code-quality.yml index 31856cec..f125cdd7 100644 --- a/.github/workflows/code-quality.yml +++ b/.github/workflows/code-quality.yml @@ -20,6 +20,5 @@ jobs: apt-packages: 'libgdal-dev gdal-bin' python-version: '3.11' node-version: '18' - postgres-image: 'postgis/postgis:12-2.5' - + postgres-image: 'postgis/postgis:17-3.5' django-settings-module: 'objects.conf.ci' diff --git a/INSTALL.rst b/INSTALL.rst index 4542a611..7831998b 100644 --- a/INSTALL.rst +++ b/INSTALL.rst @@ -20,7 +20,7 @@ You need the following libraries and/or programs: * `Python`_ 3.11 or above * Python `Virtualenv`_ and `Pip`_ -* `PostgreSQL`_ 12 or above with PostGIS extension +* `PostgreSQL`_ 13 or above with PostGIS extension * `Node.js`_ * `npm`_ diff --git a/docker-compose.yml b/docker-compose.yml index e1ff1f45..56579a65 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -2,7 +2,7 @@ services: db: # NOTE: No persistance storage configured. # See: https://hub.docker.com/_/postgres/ - image: postgis/postgis:12-2.5 + image: postgis/postgis:17-3.5 environment: - POSTGRES_USER=${DB_USER:-objects} - POSTGRES_PASSWORD=${DB_PASSWORD:-objects} diff --git a/publiccode.yaml b/publiccode.yaml index 1833ec58..62610b82 100644 --- a/publiccode.yaml +++ b/publiccode.yaml @@ -71,10 +71,10 @@ dependsOn: versionMin: '1.0' - name: PostgreSQL optional: false - versionMin: '11.0' + versionMin: '13.0' - name: PostGIS optional: false - versionMin: '2.4' + versionMin: '3.2' - name: Kubernetes optional: true versionMin: '1.12' From 9a8682bfb01ccf937bf5875367a8d822b2d0f00c Mon Sep 17 00:00:00 2001 From: Steven Bal Date: Tue, 11 Mar 2025 12:29:06 +0100 Subject: [PATCH 2/5] :arrow_up: [maykinmedia/open-api-framework#117] Upgrade black/flake8/isort --- requirements/ci.txt | 6 +++--- requirements/dev.txt | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/requirements/ci.txt b/requirements/ci.txt index 748ba2c8..187a78ee 100644 --- a/requirements/ci.txt +++ b/requirements/ci.txt @@ -46,7 +46,7 @@ billiard==4.2.0 # -c requirements/base.txt # -r requirements/base.txt # celery -black==24.8.0 +black==25.1.0 # via -r requirements/test-tools.in bleach==6.1.0 # via @@ -379,7 +379,7 @@ factory-boy==3.2.0 # via -r requirements/test-tools.in faker==8.1.0 # via factory-boy -flake8==7.1.1 +flake8==7.1.2 # via -r requirements/test-tools.in flower==2.0.1 # via @@ -428,7 +428,7 @@ isodate==0.6.0 # -c requirements/base.txt # -r requirements/base.txt # commonground-api-common -isort==5.13.2 +isort==6.0.1 # via -r requirements/test-tools.in itypes==1.2.0 # via diff --git a/requirements/dev.txt b/requirements/dev.txt index d7c75184..fd701307 100644 --- a/requirements/dev.txt +++ b/requirements/dev.txt @@ -59,7 +59,7 @@ billiard==4.2.0 # -c requirements/ci.txt # -r requirements/ci.txt # celery -black==24.8.0 +black==25.1.0 # via # -c requirements/ci.txt # -r requirements/ci.txt @@ -430,7 +430,7 @@ faker==8.1.0 # -c requirements/ci.txt # -r requirements/ci.txt # factory-boy -flake8==7.1.1 +flake8==7.1.2 # via # -c requirements/ci.txt # -r requirements/ci.txt @@ -499,7 +499,7 @@ isodate==0.6.0 # -c requirements/ci.txt # -r requirements/ci.txt # commonground-api-common -isort==5.13.2 +isort==6.0.1 # via # -c requirements/ci.txt # -r requirements/ci.txt From 059d278c847092fb63162915882174fc5cde8e42 Mon Sep 17 00:00:00 2001 From: Steven Bal Date: Tue, 11 Mar 2025 12:34:14 +0100 Subject: [PATCH 3/5] :construction_worker: [maykinmedia/open-api-framework#117] Upgrade GHA versions --- .github/workflows/ci.yml | 4 ++-- .github/workflows/code-quality.yml | 2 +- .github/workflows/codeql-analysis.yml | 2 +- .github/workflows/generate-postman-collection.yml | 2 +- .github/workflows/generate-sdks.yml | 2 +- .github/workflows/lint-oas.yml | 2 +- .github/workflows/oaf-check.yml | 2 +- .github/workflows/oas-check.yml | 2 +- .github/workflows/quick-start.yml | 2 +- 9 files changed, 10 insertions(+), 10 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 46870bc7..371664e6 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -124,7 +124,7 @@ jobs: id: image-name open-api-ci: - uses: maykinmedia/open-api-workflows/.github/workflows/ci.yml@v4.1.0 + uses: maykinmedia/open-api-workflows/.github/workflows/ci.yml@v5 needs: - store-reusable-workflow-vars with: @@ -136,7 +136,7 @@ jobs: docker-image-name: ${{ needs.store-reusable-workflow-vars.outputs.image-name }} open-api-publish: - uses: maykinmedia/open-api-workflows/.github/workflows/publish.yml@v3.0.2 + uses: maykinmedia/open-api-workflows/.github/workflows/publish.yml@v5 needs: - store-reusable-workflow-vars - open-api-ci diff --git a/.github/workflows/code-quality.yml b/.github/workflows/code-quality.yml index f125cdd7..4b3e1fec 100644 --- a/.github/workflows/code-quality.yml +++ b/.github/workflows/code-quality.yml @@ -15,7 +15,7 @@ on: jobs: open-api-workflow-code-quality: - uses: maykinmedia/open-api-workflows/.github/workflows/code-quality.yml@v1 + uses: maykinmedia/open-api-workflows/.github/workflows/code-quality.yml@v5 with: apt-packages: 'libgdal-dev gdal-bin' python-version: '3.11' diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml index b87b901a..bd13492e 100644 --- a/.github/workflows/codeql-analysis.yml +++ b/.github/workflows/codeql-analysis.yml @@ -22,4 +22,4 @@ on: jobs: open-api-workflow-code-analysis: - uses: maykinmedia/open-api-workflows/.github/workflows/code-analysis.yml@v1 + uses: maykinmedia/open-api-workflows/.github/workflows/code-analysis.yml@v5 diff --git a/.github/workflows/generate-postman-collection.yml b/.github/workflows/generate-postman-collection.yml index 1fba3076..e5276a69 100644 --- a/.github/workflows/generate-postman-collection.yml +++ b/.github/workflows/generate-postman-collection.yml @@ -11,7 +11,7 @@ on: jobs: open-api-workflow-generate-postman-collection: - uses: maykinmedia/open-api-workflows/.github/workflows/generate-postman-collection.yml@v1 + uses: maykinmedia/open-api-workflows/.github/workflows/generate-postman-collection.yml@v5 strategy: matrix: version: diff --git a/.github/workflows/generate-sdks.yml b/.github/workflows/generate-sdks.yml index cd943333..806a5432 100644 --- a/.github/workflows/generate-sdks.yml +++ b/.github/workflows/generate-sdks.yml @@ -11,7 +11,7 @@ on: jobs: open-api-workflow-generate-sdks: - uses: maykinmedia/open-api-workflows/.github/workflows/generate-sdks.yml@v1 + uses: maykinmedia/open-api-workflows/.github/workflows/generate-sdks.yml@v5 strategy: matrix: version: diff --git a/.github/workflows/lint-oas.yml b/.github/workflows/lint-oas.yml index cffa24a6..d33f24da 100644 --- a/.github/workflows/lint-oas.yml +++ b/.github/workflows/lint-oas.yml @@ -11,7 +11,7 @@ on: jobs: open-api-workflow-lint-oas: - uses: maykinmedia/open-api-workflows/.github/workflows/lint-oas.yml@v1 + uses: maykinmedia/open-api-workflows/.github/workflows/lint-oas.yml@v5 strategy: matrix: version: diff --git a/.github/workflows/oaf-check.yml b/.github/workflows/oaf-check.yml index 386dfcf9..c80900ab 100644 --- a/.github/workflows/oaf-check.yml +++ b/.github/workflows/oaf-check.yml @@ -13,7 +13,7 @@ on: jobs: open-api-workflow-check-oas: - uses: maykinmedia/open-api-workflows/.github/workflows/oaf-check.yml@v4 + uses: maykinmedia/open-api-workflows/.github/workflows/oaf-check.yml@v5 with: python-version: '3.11' diff --git a/.github/workflows/oas-check.yml b/.github/workflows/oas-check.yml index 3c06d7a8..de4912b3 100644 --- a/.github/workflows/oas-check.yml +++ b/.github/workflows/oas-check.yml @@ -6,7 +6,7 @@ on: jobs: open-api-workflow-check-oas: - uses: maykinmedia/open-api-workflows/.github/workflows/oas-check.yml@v5.0.0 + uses: maykinmedia/open-api-workflows/.github/workflows/oas-check.yml@v5 with: schema-path: 'src/objects/api/v2/openapi.yaml' schema-options: 'src/objects/api/v2/openapi.yaml' diff --git a/.github/workflows/quick-start.yml b/.github/workflows/quick-start.yml index 208af4a5..ee426b67 100644 --- a/.github/workflows/quick-start.yml +++ b/.github/workflows/quick-start.yml @@ -11,6 +11,6 @@ on: jobs: open-api-workflow-quick-start: - uses: maykinmedia/open-api-workflows/.github/workflows/quick-start.yml@v4.2.0 + uses: maykinmedia/open-api-workflows/.github/workflows/quick-start.yml@v5 with: fixtures: 'demodata' From 77b15689df52f9e60af1ad9047f4fc2ff225ed10 Mon Sep 17 00:00:00 2001 From: Steven Bal Date: Tue, 11 Mar 2025 12:38:59 +0100 Subject: [PATCH 4/5] :arrow_up: [maykinmedia/open-api-framework#117] Upgrade nodejs to 20 --- .github/workflows/code-quality.yml | 2 +- .github/workflows/generate-postman-collection.yml | 2 +- .github/workflows/generate-sdks.yml | 2 +- .github/workflows/lint-oas.yml | 2 +- .nvmrc | 2 +- Dockerfile | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/workflows/code-quality.yml b/.github/workflows/code-quality.yml index 4b3e1fec..b9715f09 100644 --- a/.github/workflows/code-quality.yml +++ b/.github/workflows/code-quality.yml @@ -19,6 +19,6 @@ jobs: with: apt-packages: 'libgdal-dev gdal-bin' python-version: '3.11' - node-version: '18' + node-version: '20' postgres-image: 'postgis/postgis:17-3.5' django-settings-module: 'objects.conf.ci' diff --git a/.github/workflows/generate-postman-collection.yml b/.github/workflows/generate-postman-collection.yml index e5276a69..5006f425 100644 --- a/.github/workflows/generate-postman-collection.yml +++ b/.github/workflows/generate-postman-collection.yml @@ -17,5 +17,5 @@ jobs: version: - v2 with: - node-version: '18' + node-version: '20' schema-path: 'src/objects/api/${{ matrix.version }}/openapi.yaml' diff --git a/.github/workflows/generate-sdks.yml b/.github/workflows/generate-sdks.yml index 806a5432..0c816b63 100644 --- a/.github/workflows/generate-sdks.yml +++ b/.github/workflows/generate-sdks.yml @@ -17,5 +17,5 @@ jobs: version: - v2 with: - node-version: '18' + node-version: '20' schema-path: 'src/objects/api/${{ matrix.version }}/openapi.yaml' diff --git a/.github/workflows/lint-oas.yml b/.github/workflows/lint-oas.yml index d33f24da..9cd8214c 100644 --- a/.github/workflows/lint-oas.yml +++ b/.github/workflows/lint-oas.yml @@ -17,5 +17,5 @@ jobs: version: - v2 with: - node-version: '18' + node-version: '20' schema-path: 'src/objects/api/${{ matrix.version }}/openapi.yaml' diff --git a/.nvmrc b/.nvmrc index 3c032078..209e3ef4 100644 --- a/.nvmrc +++ b/.nvmrc @@ -1 +1 @@ -18 +20 diff --git a/Dockerfile b/Dockerfile index 4794f8c8..6f5c209e 100644 --- a/Dockerfile +++ b/Dockerfile @@ -17,7 +17,7 @@ RUN pip install -r requirements/production.txt # Stage 2 - build frontend -FROM node:18-alpine AS frontend-build +FROM node:20-alpine AS frontend-build WORKDIR /app From d5a85d556a8b926fa1ae56b183ebc90a8dcc8005 Mon Sep 17 00:00:00 2001 From: Steven Bal Date: Tue, 11 Mar 2025 15:14:47 +0100 Subject: [PATCH 5/5] :memo: [maykinmedia/open-api-framework#117] Update changelog --- CHANGELOG.rst | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/CHANGELOG.rst b/CHANGELOG.rst index df3882ec..7bbfd39c 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -2,6 +2,18 @@ Change history ============== +3.x.x (2025-03-31) +------------------ + +**Project maintenance** + +* Confirm support for Postgres 17 and drop (verified) support for Postgres 12 +* Confirm support for Postgis 3.2/3.5 and drop (verified) support for Postgis 2.5 +* Upgrade nodejs version in Docker image to 20 +* Upgrade dependencies + + * Development tools: black to 25.1.0, flake to 7.1.2 and isort to 6.0.1 + 3.0.2 (2025-03-07) ------------------