# What changed in pg-promise

> 6 changes in pg-promise 12 from its official release notes, upgrade guides and advisories: 1 breaking, 2 new APIs and options. Each one cited. Sources checked 2026-10-20. HTML: https://unstale.sh/npm/pg-promise/

To see which of these apply to a repository, run `npx @unstale/cli init` in it.

## pg-promise 12

### Breaking changes

- Legacy custom object and class inspections were removed; console output now uses NodeJS's default inspection, including color output for library class instances. (12.6.0) — [release notes](https://github.com/vitaly-t/pg-promise/releases/tag/12.6.0)

### New APIs and options

- The constructor accepts duplicate with values error, skip, or replace, allowing developers to choose how duplicate columns are handled. (12.5.0) — [release notes](https://github.com/vitaly-t/pg-promise/releases/tag/12.5.0)
- The method accepts the skip option for handling duplicate columns when extending a ColumnSet. (12.5.0) — [release notes](https://github.com/vitaly-t/pg-promise/releases/tag/12.5.0)

### Behavior and default changes

- NodeJS v26 is now officially supported. (12.7.0) — [release notes](https://github.com/vitaly-t/pg-promise/releases/tag/12.7.0)

### Tooling

- TypeScript declarations for ColumnSet were updated. (12.4.0) — [release notes](https://github.com/vitaly-t/pg-promise/releases/tag/12.4.0)

### Fixes and other changes

- Fixes an issue with TableName. (12.6.1) — [release notes](https://github.com/vitaly-t/pg-promise/releases/tag/12.6.1)
