Releases: sql-formatter-org/sql-formatter
Releases · sql-formatter-org/sql-formatter
prettier-sql v5.0.1
(Released under name prettier-sql
)
Updated
- fixed bug when using SELECT * and
denseOperators
- fixed aliasAs option on demo page
- fixed handling of tokens with
aliasAs
flag - demo page now prints stack trace in textarea on error
prettier-sql v5.0.0
(Released under name prettier-sql
)
Added
Source:
- added support for ES6 module exports with TypeScript
- updated webpack with ts-loader for module types
- added tsc to babel commonjs build command
- added index.ts pass-through export
Other:
- added GH Actions for CI build
- added issue templates
Updated
Source:
- updated demo page for all new options
Other:
- renamed library to
prettier-sql
Fixed
- fixed bugs related to operator tokens
Removed
- removed Travis CI (replaced by GH Actions)
prettier-sql v5.0.0-beta.1
(Released under name prettier-sql
)
prettier-sql v5.0.0-beta
(Released under name prettier-sql
)
Added
Source:
- added option
aliasAs
to toggle use of AS in column, table, query aliases- modes: always (SELECT and table), select (SELECT only), never
- added option
newline
to specify rules for inserting newlines within SQL Statements- modes:
always (break before all arguments)
lineWidth (break after line exceeds lineWidth)
itemCount (break after n items)
hybrid (lineWidth OR itemCount)
never (place all Statements on one line)
- modes:
- added flag
denseOperators
to toggle spaces around binary operators (=, +, %, etc.) - added flag
semicolonNewline
to toggle placing semicolon on newline vs same line - added flag
tabulateAlias
for alias tabular mode, aligned on longest line, not including AS - added option
commaPosition
to specify comma placement within listed Statements- modes:
before(comma goes before column),
after(standard),
tabular(aligned to longest line)
- modes:
- added option
keywordPosition
to support vertically aligned keywords- modes:
standard,
tenSpaceLeft(left-aligned within keyword column),
tenSpaceRight(right-aligned within keyword column)
- modes:
- added flag
breakBeforeBooleanOperator
to toggle breaking before or after logical operators like AND and OR - added options
parenOptions
for misc rules regarding parenthesis positionopenParenNewline
- flag for opening paren on newline or same linecloseParenNewline
- flag for closing paren on newline or same line
Other:
- added enums for all typed config options
Files Added:
- test/comma.js (tests for comma position)
- test/alias.js (tests for alias AS and alias position)
- test/keywordPosition.js (tests for keyword position modes)
- test/newline.js (tests for newline modes)
- test/parenthesis.js (tests for paren positions)
Updated
Source:
- converted repo to Typescript
- overhauled Keyword lists for all languages
- added default options for all configs
- updated CLI to use config file
- renamed Keyword categories to semantic Keyword types
- reservedTopLevelWord → reservedCommand
- reservedTopLevelWordNoIndent → reservedBinaryCommand
- reservedNewline → reservedDependentClause & reservedLogicalOperator
- reservedWord → reservedKeyword
- added reservedFunctions
- updated Tokenizer class and token.ts to be more DRY
Removed
- tokenTypes.ts (token types moved to TokenType enum in token.ts)
- sqlFormatter.d.ts (converted to TypeScript)
v4.0.2
v4.0.1
v4.0.0
Breaking changes:
- Standard SQL formatter (
"sql"
) now only supports standard SQL. This means:- single-quotes for strings and double-quotes for identifiers and no other quote types;
- only
?
placeholders for parameters; - only standard SQL operators;
- only standard SQL sql
--
and/* */
comments, - if you used
language: "sql"
before, you're likely better off switching tolanguage: "postgresql" | "mariadb" | "mysql" | "tsql"
.
- Dropped
-f
/--file
option from CLI. Instead a positional file argument can be used, like with any normal UNIX tool). - Default export no more exists. Only named export of format function (and supportedDialects - used by CLI).
- Removed FORMATTERS export.
"pl/sql"
alias has been removed. Use"plsql"
instead.
New dialects:
- PostgreSQL support
- MariaDB support
- MySQL support
- Transact-SQL support
Fixes:
- Proper formatting of BETWEEN _ AND _
- Bunch of additional operators supported
- No more mixing UNIX and Windows line endings - output is always converted to UNIX LF line endings.
Internal:
- Better whitespace handling without having a separate whitespace token.
- Upgrade to argparse 2.0
- Lots of refactoring and reorganization of tests.
v4.0.0-beta.0
4.0.0-beta.0