npm / sql-formatter
sql-formatter
What changed in sql-formatter 15, from its official release notes, upgrade guides and advisories. Sources checked 2026-10-18.
1 breaking6 new APIs and options1 performance6 behavior and defaults7 fixes and other
See which of these apply to your code, ranked, in your agent:
npx @unstale/cli initsql-formatter 1521 changes
Breaking changes 1
Removes multi-word function names from MySQL.
New APIs and options 6
The modulo operator is now supported in SingleStoreDB.
The parser now supports the pg_dump commands \restrict and \unrestrict.
Adds the missing OPENJSON Transact-SQL function.
sql-formatter supports the CORRESPONDING keyword on Trino set operations.
Clickhouse SQL dialect is now supported.
Adds support for PostgreSQL 18 UUID functions.
Performance 1
Parsing long SQL expression lists avoids quadratic accumulation.
Behavior and default changes 6
Formatting now keeps spaces around PostgreSQL OPERATOR() when denseOperators is enabled.
Formatting keeps the colon dense inside [] for DuckDB array slices.
A reserved word after AS is now treated as an alias.
BigQuery formatting now always keeps spaces around the
-operator.PostgreSQL formatting now supports keywords in CREATE CONSTRAINT TRIGGER.
SQLite formatting now supports Tcl-style $param(...) syntax.
Fixes and other changes 7
Formatting removes the extra space after BETWEEN _ AND _ expressions.
Formatting now keeps a space when densing - before a negative operand.
Fixed an idempotency issue with block-comment placement.
Fixes formatting of the
>^geometric operator.Adds missing PostgreSQL operators.
Properly formats TIMESTAMP WITH TIME ZONE in Trino.
Formats COMMENT ON as keywords in PostgreSQL.