Skip to content

Multi-version Postgres support

pgRDF builds against PostgreSQL 14, 15, 16, and 17. The full v0.5.0 test bar — 274 pgrx + 85 pg_regress + 51 W3C-SPARQL + 25 W3C SHACL Core + 3 LUBM — runs across all four in CI.

Supported versions

Postgres majorStatusNotes
14✅ supportedActive in CI matrix.
15✅ supportedActive in CI matrix.
16✅ supportedActive in CI matrix.
17✅ supportedDefault in compose-up.
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 where

LayerVersions covered
just test — pgrx integrationPG 14-17
just test-regression — composePG 17 (the default compose target)
just test-w3c — W3C SPARQL conformancePG 17
just test-lubmPG 17
just test-everythingfull sweep

The release workflow ships per-PG binary tarballs:

pgrdf-<ver>-pg14-glibc-amd64.tar.gz
pgrdf-<ver>-pg14-glibc-arm64.tar.gz
pgrdf-<ver>-pg15-glibc-amd64.tar.gz

per SPEC.pgRDF.INSTALL.v0.2.

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 pg16 --features pg16

There is no default featuredefault = [] — to avoid the "build silently picked the wrong PG version" failure mode.

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