diff options
Diffstat (limited to 'devel/py-shandy-sqlfmt/pkg-descr')
-rw-r--r-- | devel/py-shandy-sqlfmt/pkg-descr | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/devel/py-shandy-sqlfmt/pkg-descr b/devel/py-shandy-sqlfmt/pkg-descr new file mode 100644 index 000000000000..d908af925830 --- /dev/null +++ b/devel/py-shandy-sqlfmt/pkg-descr @@ -0,0 +1,32 @@ +sqlfmt formats your dbt SQL files so you don't have to. It is similar +in nature to black, gofmt, and rustfmt (but for SQL). + +sqlfmt promotes collaboration. An auto-formatter makes it easier to +collaborate with your team and solicit contributions from new +people. You will never have to mention (or argue about) code style in +code reviews again. +sqlfmt is fast. Forget about formatting your code, and spend your time +on business logic instead. sqlfmt processes hundreds of files per +second and only operates on files that have changed since the last +run. +sqlfmt works with Jinja. It formats the code that users look at, and +therefore doesn't need to know anything about what happens after the +templates are rendered. +sqlfmt integrates with your workflow. As a CLI written in Python, it's +easy to install locally on any OS and run in CI. Plays well with dbt, +pre-commit, SQLFluff, VSCode, and GitHub Actions. sqlfmt powers the +dbt Cloud IDE's Format button. +sqlfmt is not configurable, except for line length. It enforces a +single style. sqlfmt maintains comments and some extra newlines, but +largely ignores all indentation and line breaks in the input file. + +sqlfmt is not a linter. It does not parse your code into an AST; it +just lexes it and tracks a small subset of tokens that impact +formatting. This lets us "do one thing and do it well:" sqlfmt is very +fast, and easier to maintain and extend than linters that need a full +SQL grammar. + +For now, sqlfmt only works on select, delete, grant, revoke, and +create function statements (which is all you need if you use sqlfmt +with a dbt project). It is being extended to additional DDL and +DML. Visit this tracking issue for more information. |