Open
Conversation
806f0cd to
70544b1
Compare
…as pg_tle and pgaudit, due to PG C lib changes that break compiliation
…if the original file fails)
PostgreSQL Extension Dependency Analysis: PR #2051
SummaryThe following extensions have dependencies that underwent MAJOR version updates:
Full Analysis ResultsPostgreSQL 15 Extension DependenciesExtension: hypopg
Raw Dependency TreeExtension: pg_graphql
Raw Dependency TreeExtension: pgroonga
Raw Dependency TreePostgreSQL 17 Extension DependenciesExtension: hypopg
Raw Dependency TreeExtension: pg_graphql
Raw Dependency TreeExtension: pgroonga
Raw Dependency TreeExtension: plpgsql_check
Raw Dependency TreeOrioleDB 17 Extension Dependencies |
Contributor
There was a problem hiding this comment.
Pull request overview
Adds PostgreSQL 18 support across the Nix build, extension packaging, checks, and developer tooling, along with updated expected test artifacts and a new PG18 Docker image.
Changes:
- Introduces PG18 packages/overlays (psql_18, psql_18_cli) and wires them into start/run tooling and check harnesses.
- Updates extension compatibility metadata (
nix/ext/versions.json) and hardens extension selection with assertions when no supported versions exist. - Adds/updates PG18-specific test fixtures and schema baseline artifacts (including a new
migrations/schema-18.sql) and documentation for adding new majors.
Reviewed changes
Copilot reviewed 54 out of 54 changed files in this pull request and generated 5 comments.
Show a summary per file
| File | Description |
|---|---|
| nix/tools/run-server.sh.in | Add VERSION=18 support and adjust config tweaks for 17/18. |
| nix/tests/sql/roles.sql | Exclude new built-in role from role listing output. |
| nix/tests/expected/security_1.out | Add expected output for security test. |
| nix/tests/expected/roles.out | Update expected roles output for new excluded role. |
| nix/tests/expected/plpgsql-check_1.out | Add expected output for plpgsql_check test. |
| nix/tests/expected/docs-cascades-deletes_1.out | Add expected output for cascades deletes doc test. |
| nix/packages/start-client.nix | Add --version 18 client selection. |
| nix/packages/postgres.nix | Add psql_18 / psql_18_cli and select extension sets for 18. |
| nix/packages/lib.nix | Export PSQL18_BINDIR for templates/scripts. |
| nix/packages/default.nix | Plumb psql_18 into package wiring. |
| nix/packages/dbmate-tool.nix | Add 18 to help text and dump flag conditional. |
| nix/overlays/default.nix | Expose postgresql_18 via overlay inherit list. |
| nix/ext/wrappers/default.nix | Assert non-empty supported version list before lib.last. |
| nix/ext/wal2json.nix | Assert non-empty supported version list before lib.last. |
| nix/ext/versions.json | Add/expand extension versions supporting PG18. |
| nix/ext/vault.nix | Assert non-empty supported version list before lib.last. |
| nix/ext/timescaledb.nix | Assert non-empty supported version list before lib.last. |
| nix/ext/tests/lib.nix | Adjust version-gated config mutations for PG17+ behavior. |
| nix/ext/supautils.nix | Bump supautils to v3.1.0 for compatibility. |
| nix/ext/rum.nix | Assert non-empty supported version list before lib.last. |
| nix/ext/postgis.nix | Assert non-empty supported version list and tweak build flags. |
| nix/ext/plv8/default.nix | Assert non-empty supported version list before lib.last. |
| nix/ext/plpgsql-check.nix | Assert non-empty supported version list before lib.last. |
| nix/ext/pgvector.nix | Assert non-empty supported version list before lib.last. |
| nix/ext/pgsql-http.nix | Assert non-empty supported version list before lib.last. |
| nix/ext/pgsodium.nix | Assert non-empty supported version list before lib.last. |
| nix/ext/pgrouting/default.nix | Assert non-empty supported version list before lib.last. |
| nix/ext/pgroonga/groonga.nix | Bump groonga version/hash. |
| nix/ext/pgroonga/fix-cmake-install-path.patch | Update patch hunk location for new groonga version. |
| nix/ext/pgroonga/do-not-use-vendored-libraries.patch | Update vendoring-disabling patch for new groonga layout. |
| nix/ext/pgroonga/default.nix | Assert non-empty supported version list before lib.last. |
| nix/ext/pgmq/default.nix | Assert non-empty supported version list before lib.last. |
| nix/ext/pgjwt.nix | Assert non-empty supported version list before lib.last. |
| nix/ext/pgaudit.nix | Assert non-empty supported version list before lib.last. |
| nix/ext/pg_tle.nix | Assert non-empty supported version list before lib.last. |
| nix/ext/pg_stat_monitor.nix | Assert non-empty supported version list before lib.last. |
| nix/ext/pg_repack.nix | Assert non-empty supported version list before lib.last. |
| nix/ext/pg_plan_filter.nix | Assert non-empty supported version list before lib.last. |
| nix/ext/pg_partman.nix | Assert non-empty supported version list before lib.last. |
| nix/ext/pg_net.nix | Move default control/symlink generation to latest-version build. |
| nix/ext/pg_jsonschema/default.nix | Extend upgrade-script generation version list; assert non-empty. |
| nix/ext/pg_hashids.nix | Assert non-empty supported version list before lib.last. |
| nix/ext/pg_graphql/default.nix | Assert non-empty supported version list before lib.last. |
| nix/ext/pg_cron/default.nix | Assert non-empty supported version list before lib.last. |
| nix/ext/pg-safeupdate.nix | Assert non-empty supported version list before lib.last. |
| nix/ext/index_advisor.nix | Assert non-empty supported version list before lib.last. |
| nix/ext/hypopg.nix | Assert non-empty supported version list before lib.last. |
| nix/docs/new-major-postgres.md | Expand documentation for adding a new major PG version. |
| nix/config.nix | Add PostgreSQL 18 version/hash configuration. |
| nix/checks.nix | Add PG18 detection, ports, harness entries, and exported packages. |
| migrations/schema-18.sql | Add schema baseline dump file for version 18 (new). |
| ansible/tasks/stage2-setup-postgres.yml | Apply config adjustments for psql_18 builds. |
| README.md | Update supported versions list to include 18. |
| Dockerfile-18 | Add a dedicated Dockerfile for PG18 image build. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Comment on lines
+103
to
104
| if majorVersion >= "17" || majorVersion >= "orioledb-17" then | ||
| '' |
PostgreSQL Package Dependency Analysis: PR #2051
SummaryThe following packages underwent MAJOR version updates:
Full Analysis ResultsPostgreSQL 15 Dependency ChangesExtracting PostgreSQL 15 dependencies...
Runtime Closure Size
Raw Dependency ClosurePostgreSQL 17 Dependency ChangesExtracting PostgreSQL 17 dependencies...
Runtime Closure Size
Raw Dependency Closure |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What kind of change does this PR introduce?
Feature
What is the current behavior?
Support for PG 18
What is the new behavior?
Updated extensions to work with pg lib changes
Additional context
Add any other context or screenshots.