NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
npm · #1428 most downloaded on npm
PostgreSQL client - pure javascript & libpq with the same API
Last release 1 months ago
08 Aug 2026
Release timing varies
gaps range from 8 days to 7 months
Rarely documented
notes for 10 of the last 60 stable releases
Nothing withdrawn
no release was ever pulled
15 years old
249 releases · first in 2011
Nothing published for this version
Add support for idle_in_transaction_session_timeout option.
idle_in_transaction_session_timeout option.Nothing published for this version
One column per quarter.
Add optional, opt-in behavior to test new, faster query pipeline. This is experimental, and not documented yet. The pipeline changes will grow signifi
Nothing published for this version
Nothing published for this version
Warn about deprecation for calling constructors without new.
new.Reverts 7.13.0 as it contained an accidental breaking change for self-signed SSL cert verification. 7.14.0 is identical to 7.12.1.
Add support for all tls.connect() options.
Nothing published for this version
Add support for async password lookup.
Add support for connection_timeout and keepalives_idle.
Add support for per-query types.
Add support for sasl/scram authentication.
Nothing published for this version
Nothing published for this version
Add support for passing secureOptions SSL config.
Nothing published for this version
Add support for configurable query timeout on a client level.
Nothing published for this version
Add support for "bring your own promise"
Better error message when passing null or undefined to client.query.
null or undefined to client.query.Nothing published for this version
Nothing published for this version
Nothing published for this version
Add support for Uint8Array values.
Add support for statement timeout.
Pinned pg-pool and pg-types to a tighter semver range. This is likely not a noticeable change for you unless you were specifically installing older ve
Nothing published for this version
Nothing published for this version
You can now supply both a connection string and additional config options to clients.
Nothing published for this version
Nothing published for this version
Nothing published for this version
Standardize error message fields between JS and native driver. The only breaking changes were in the native driver as its field names were brought int…
4.x.pg.connect pg.end and pg.cancel singleton methods.Client#connect(callback) now returns undefined. It used to return an event emitter.2.x.2.x.SELECT 1; SELECT 2; are now returned as an array of results instead of a single result with 1 array containing rows from both queries.Please see here for a migration guide
Client#connect() => Promise<void> and Client#end() => Promise<void> calls. Promises are now returned from all async methods on clients if and only if no callback was supplied to the method.connectionTimeoutMillis to pg-pool.Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Add optional callback parameter to the pure JavaScript client.end method. The native client already supported this.
client.end method. The native client already supported this.Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
…documented on the wiki. Therefore, it is a breaking change of an (unintentionally) public interface to remove it by renaming it & making it private. E…
pg.pools. There is still a reference kept to the pools created & tracked by pg.connect but it has been renamed, is considered private, and should not be used. Accessing this API directly was uncommon and was supposed to be private but was incorrectly documented on the wiki. Therefore, it is a breaking change of an (unintentionally) public interface to remove it by renaming it & making it private. Eventually pg.connect itself will be deprecated in favor of instantiating pools directly via new pg.Pool() so this property should become completely moot at some point. In the mean time...check out the new features...pg.connect. The pg-pool constructor is exported from node-postgres at require('pg').Pool. It provides a backwards compatible interface with pg.connect as well as a promise based interface & additional niceties.You can now create an instance of a pool and don't have to rely on the pg singleton for anything:
var pg = require('pg')
var pool = new pg.Pool()
// your friendly neighborhood pool interface, without the singleton
pool.connect(function(err, client, done) {
// ...
})
Promise support & other goodness lives now in pg-pool.
Please read the readme at pg-pool for the full api.
var client = new Client({ keepAlive: true })
This should help with backends incorrectly considering idle clients to be dead and prematurely disconnecting them.
Nothing published for this version
Make the query object returned from client.query implement the promise interface. This is the first step towards promisifying more of the node-postgre
client.query implement the promise interface. This is the first step towards promisifying more of the node-postgres api.Example:
var client = new Client()
client.connect()
client.query('SELECT $1::text as name', ['brianc']).then(function (res) {
console.log('hello from', res.rows[0])
client.end()
})
Your coding agent can read these notes before it upgrades. Set up the MCP server →