Skip to content

Multi-version Postgres support

pgRDF builds against PostgreSQL 14, 15, 16, and 17. During the v0.6 line, PostgreSQL 17 is the supported head: the pg14/15/16 build matrix is temporarily paused under a stabilization window, with the head test bar — 294 pgrx + 93 pg_regress + 51 W3C-SPARQL + 25 W3C SHACL Core + 3 LUBM — running on PostgreSQL 17 in CI.

The pg17-only stabilization window

The v0.6 bulk-ingest line (streaming loader, native staged background-worker loader, dictionary-btree fix, self-tuning) moves fast, and each change is validated against PostgreSQL 17. To keep the release cadence tight, the pg14 / pg15 / pg16 build matrix is paused for the duration of the stabilization window.

  • PostgreSQL 17 is the supported head — the published OCI bundle, release tarballs, and LATEST.md track pg17.
  • The paused pg14/15/16 build steps are preserved in the CI workflow YAML as comments, not deleted — they resume once the v0.6 ingest surface is stable, restoring the four-major matrix.

Supported versions

Postgres majorStatusNotes
14⏸ pausedBuild leaf paused during the stabilization window; preserved in CI YAML comments, resumes once the matrix is stable.
15⏸ pausedAs above.
16⏸ pausedAs above.
17✅ supported headActive in CI; default in compose-up; the published artifact.
18⏳ v0.6-FUTUREHeld to the pgrx 0.16 pin; pgrx 0.18.x does not yet build cleanly upstream. Documented in ERRATA E-006. Lands once pgrx ships a working 0.18.x — an upstream gate, not a pgRDF gap.

What's tested at the head

LayerCoverage
just test — pgrx integrationPostgreSQL 17 (head)
just test-regression — composePostgreSQL 17 (the compose target)
just test-w3c — W3C SPARQL conformancePostgreSQL 17
just test-lubmPostgreSQL 17
just test-everythingfull sweep at the head

Which cargo pgrx feature to pass

pgrx uses per-PG features. When building or running tests locally, pick one explicitly:

bash
cargo pgrx run pg17 --features pg17
cargo pgrx test pg17 --features pg17

There is no default featuredefault = [] — to avoid the "build silently picked the wrong PG version" failure mode. Once the matrix resumes, the same per-PG features (pg14pg16) return for cross-version builds.

MIT licensed. Documentation for pgRDF — built with VitePress, served via GitHub Pages.