From 18e17c43eb5b96ebd7c72618d77134768be2ee32 Mon Sep 17 00:00:00 2001 From: Dragos Andriciuc Date: Wed, 6 May 2026 12:30:03 +0300 Subject: [PATCH] PG-2345 - Add Release Notes (15) This PR adds the release notes for PSP 15. --- .../workflows/generate-release-metadata.yml | 50 +++++++++++++ docs/release-notes-v15.18.md | 74 +++++++++++++++++++ docs/release-notes.md | 1 + mkdocs-base.yml | 1 + variables.yml | 4 +- 5 files changed, 128 insertions(+), 2 deletions(-) create mode 100644 .github/workflows/generate-release-metadata.yml create mode 100644 docs/release-notes-v15.18.md diff --git a/.github/workflows/generate-release-metadata.yml b/.github/workflows/generate-release-metadata.yml new file mode 100644 index 000000000..81895c917 --- /dev/null +++ b/.github/workflows/generate-release-metadata.yml @@ -0,0 +1,50 @@ +name: Release Docs Automation + +on: + pull_request: + paths: + - docs/release-notes/** + - variables.yml + push: + branches: + - '1*' + paths: + - docs/release-notes/** + - variables.yml + +jobs: + build: + name: Update release metadata + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v4 + with: + fetch-depth: 0 + + - name: Update release date + run: | + TODAY=$(date +'%Y-%m-%d') + + VERSION=$(grep "pspgversion:" variables.yml | awk '{print $2}' | tr -d "'") + KEY=$(echo $VERSION | tr '.' '_') + + echo "Setting release date for version $VERSION ($KEY)" + + if grep -q "$KEY:" variables.yml; then + sed -i "s/$KEY:.*/$KEY: $TODAY/" variables.yml + else + sed -i "/date:/a\ $KEY: $TODAY" variables.yml + fi + + - name: Show changes + run: git diff + + - name: Commit changes + if: startsWith(github.ref, 'refs/heads/1') + run: | + git config user.name github-actions + git config user.email github-actions@github.com + git add variables.yml + git diff --cached --quiet || git commit -m "Auto-update release date" + git push \ No newline at end of file diff --git a/docs/release-notes-v15.18.md b/docs/release-notes-v15.18.md new file mode 100644 index 000000000..48947476d --- /dev/null +++ b/docs/release-notes-v15.18.md @@ -0,0 +1,74 @@ +# Percona Distribution for PostgreSQL 15.18 ({{date["15_18"] | default("unreleased")}}) + +[Installation](installing.md){.md-button} + +--8<-- "release-notes-intro.md" + +This release of Percona Distribution for PostgreSQL is based on [PostgreSQL 15.18](https://www.postgresql.org/docs/current/release-15-18.html). + +## Release Highlights + +### Tarball updates + +The binary tarballs for x86_64 and ARM64 architectures have been updated in this release. The following libraries and components have new versions: + +- pgBouncer: 1.25.1 +- etcd: 3.5.26 +- haproxy: 2.8.18 +- pgBadger: 13.2 +- postgresql-common: 289 +- pgbackrest: 2.58.0 +- pgpool2: 4.7.0 +- pg_stat_monitor: 2.3.2 +- postgis: 3.5.5 +- ydiff: 1.4.2 + +See [Install Percona Distribution for PostgreSQL from binary tarballs](tarball.md) for the download links. + +### Addressed CVEs + +This release includes important security measures that address the following CVEs: CVE-2026-2003, CVE-2026-2004, CVE-2026-2005, CVE-2026-2006. For more details, see the PostgreSQL [15.17 release notes](https://www.postgresql.org/docs/15/release-15-17.html). + +## Known Issue + +### For minor & major upgrades (RHEL only) + +During an upgrade on RHEL, you may encounter the following error: + +``` +Unknown Error occurred: Transaction test error: + file /usr/share/postgresql-common/server/postgresql.mk from install of percona-postgresql-common conflicts with file from package percona-postgresql-common-dev + file /usr/share/postgresql-common/t/040_upgrade.t from install of percona-postgresql-common conflicts with file from package percona-postgresql-common-dev +``` + +To resolve this, remove the `percona-postgresql-common-dev` package and reinstall it with the new intended upgraded PPG/PSP server. + +## Supplied third-party extensions + +Review each extension’s release notes for What’s new, improvements, or bug fixes. + +The following is the list of extensions available in Percona Distribution for PostgreSQL. + +| Extension | Version | Description | +| ------------------- | -------------- | ---------------------------- | +| [etcd :octicons-link-external-16:](https://etcd.io/) | 3.5.26 | A distributed, reliable key-value store for setting up high available Patroni clusters | +| [python-etcd :octicons-link-external-16:](https://python-etcd.readthedocs.io/en/latest/) | 0.4.5 | A Python client library for interacting with etcd | +| [HAProxy :octicons-link-external-16:](http://www.haproxy.org/) | 2.8.18 | a high-availability and load-balancing solution | +| [Patroni :octicons-link-external-16:](https://patroni.readthedocs.io/en/latest/) | 4.1.0 | a HA (High Availability) solution for PostgreSQL | +| [pgaudit :octicons-link-external-16:](https://www.pgaudit.org/) | 1.7.1 | provides detailed session or object audit logging via the standard logging facility provided by PostgreSQL | +| [pgaudit set_user :octicons-link-external-16:](https://github.com/pgaudit/set_user) | 4.2.0 | provides an additional layer of logging and control when unprivileged users must escalate themselves to superusers or object owner roles in order to perform needed maintenance tasks. | +| [pgBackRest :octicons-link-external-16:](https://pgbackrest.org/) | 2.58.0 | a backup and restore solution for PostgreSQL | +| [pgBadger :octicons-link-external-16:](https://github.com/darold/pgbadger) | 13.2 | a fast PostgreSQL Log Analyzer. | +| [PgBouncer :octicons-link-external-16:](https://www.pgbouncer.org/) | 1.25.1 | a lightweight connection pooler for PostgreSQL | +| [pg_gather :octicons-link-external-16:](https://github.com/jobinau/pg_gather) | v32 | an SQL script for running the diagnostics of the health of PostgreSQL cluster | +| [pgpool2 :octicons-link-external-16:](https://git.postgresql.org/gitweb/?p=pgpool2.git;a=summary) | 4.7.0 | a middleware between PostgreSQL server and client for high availability, connection pooling and load balancing. | +| [pg_repack :octicons-link-external-16:](https://github.com/reorg/pg_repack) | 1.5.3 | rebuilds PostgreSQL database objects | +| [pg_stat_monitor :octicons-link-external-16:](https://github.com/percona/pg_stat_monitor) | 2.3.2 | collects and aggregates statistics for PostgreSQL and provides histogram information. | +| [PostGIS :octicons-link-external-16:](https://github.com/postgis/postgis) | 3.5.5 | a spatial extension for PostgreSQL. | +| [pgvector :octicons-link-external-16:](https://github.com/pgvector/pgvector) | v0.8.1 | A vector similarity search for PostgreSQL | +| [PostgreSQL Common :octicons-link-external-16:](https://salsa.debian.org/postgresql/postgresql-common) | 289 | PostgreSQL database-cluster manager. It provides a structure under which multiple versions of PostgreSQL may be installed and/or multiple clusters maintained at one time. | +| [wal2json :octicons-link-external-16:](https://github.com/eulerto/wal2json) | 2.6 | a PostgreSQL logical decoding JSON output plugin | + +For Red Hat Enterprise Linux 8 and compatible derivatives, Percona Distribution for PostgreSQL also includes the supplemental `python3-etcd` 0.4.5 packages, which are used for setting up Patroni clusters. + +Percona Distribution for PostgreSQL is also shipped with the [libpq](https://www.postgresql.org/docs/15/libpq.html) library. It contains "a set of library functions that allow client programs to pass queries to the PostgreSQL backend server and to receive the results of these queries." diff --git a/docs/release-notes.md b/docs/release-notes.md index 5622ac5c7..7ab5a1e13 100644 --- a/docs/release-notes.md +++ b/docs/release-notes.md @@ -4,6 +4,7 @@ This page lists all release notes for Percona Distribution for PostgreSQL 15, or ## 2026 +* [15.18](release-notes-v15.18.md) ({{date.15_18}}) * [15.17](release-notes-v15.17.md) ({{date.15_17}}) ## 2025 diff --git a/mkdocs-base.yml b/mkdocs-base.yml index e2e52198f..ac2749efd 100644 --- a/mkdocs-base.yml +++ b/mkdocs-base.yml @@ -225,6 +225,7 @@ nav: - Uninstall: uninstalling.md - Release notes: - "Release notes index": release-notes.md + - "15.18": release-notes-v15.18.md - "15.17": release-notes-v15.17.md - "2025 (versions 15.12 – 15.15)": - "15.15": release-notes-v15.15.md diff --git a/variables.yml b/variables.yml index e33ff869e..f72c3e4cd 100644 --- a/variables.yml +++ b/variables.yml @@ -2,9 +2,9 @@ # See also mkdocs.yml plugins.with-pdf.cover_subtitle and output_path -release: 'release-notes-v15.17' +release: 'release-notes-v15.18' pgversion: '15' -dockertag: '15.17' +dockertag: '15.18' pgsmversion: '2.3.2'