Skip to content

Releases: sql-formatter-org/sql-formatter

prettier-sql v5.0.1

09 May 07:06
Compare
Choose a tag to compare

(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

09 May 07:06
Compare
Choose a tag to compare

(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

09 May 07:05
Compare
Choose a tag to compare
Pre-release

(Released under name prettier-sql)

prettier-sql v5.0.0-beta

09 May 07:03
Compare
Choose a tag to compare
Pre-release

(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)
  • 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)
  • added option keywordPosition to support vertically aligned keywords
    • modes:
      standard,
      tenSpaceLeft(left-aligned within keyword column),
      tenSpaceRight(right-aligned within keyword column)
  • added flag breakBeforeBooleanOperator to toggle breaking before or after logical operators like AND and OR
  • added options parenOptions for misc rules regarding parenthesis position
    • openParenNewline - flag for opening paren on newline or same line
    • closeParenNewline - 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

09 May 06:59
Compare
Choose a tag to compare

Support :name placeholders in PostgreSQL

v4.0.1

09 May 06:58
Compare
Choose a tag to compare

Included type definition file for TypeScript.

v4.0.0

31 Jan 18:56
Compare
Choose a tag to compare

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 to language: "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

25 Jan 10:09
Compare
Choose a tag to compare
v4.0.0-beta.0 Pre-release
Pre-release
4.0.0-beta.0

v3.1.0

25 Jan 09:32
Compare
Choose a tag to compare

Re-release of the changes released as @gwax/sql-formatter 3.0.3 with one change:

  • When format() is not called with string argument, throws an error, instead of silently succeeding.

v2.3.4 - upgrade Lodash (to fix vulnerability)

25 Jan 09:36
Compare
Choose a tag to compare