PostgreSQL
v1.0.0
Lint PostgreSQL schemas, migrations, and functions using splinter, squawk, plpgsql_check, and pgTAP.
Security(3)
Performance(8)
Quality(6)
Prefer identity columns (or uuid) over serial
Use GENERATED ... AS IDENTITY or uuid for surrogate keys instead of the legacy serial pseudo-type.
Use timestamptz, not timestamp, for points in time
Store points in time as timestamptz so values are unambiguous across time zones and DST.
Prefer text over varchar(n)
Use text (optionally with a CHECK) instead of varchar(n); the length cap adds no performance benefit.
Automate PostgreSQL checks on every PR
BeforeMerge scans your pull requests against all 18 PostgreSQL rules automatically. Get actionable feedback before code ships.