Skip to content

Releases: joereynolds/sql-lint

v1.0.1

30 May 21:42

Choose a tag to compare

After a very long delay, we finally have a new version!

Here are the changes you can look forward to:

  • Fixed false positive for DROPs in postgres
  • Add support for RENAME statements
  • Add support for directory-local config (see the documentation)
  • Better error reporting
  • Add support for TEMP keyword
  • Add support for COMMIT keyword
  • Add support for TEMPORARY keyword
  • Add support for postgres PUBLICATION keyword
  • Fix semicolons in strings incorrectly ending the statement (thanks @TheRedDeveloper)
  • Add option to set database connection (thanks @JosefBud and @barklan)

I hope you enjoy these changes.
Let's try and make the releases a bit more frequent next time

v1.0.0

19 Jun 10:20

Choose a tag to compare

We're finally moving out of major version zero now that we consider sql-lint stable.

Only one small thing has been added into this release but it was the right time to bump the version.

Changes

  • ignore-errors is now a cli option
    • Previously this was only a valid value in config.json but it makes sense to be able to pass it via the command line too. You can read about this flag in the docs but here's an example of usage: sql-lint --ignore-errors=trailing-whitespace some-sql-file.sql

Enjoy!
And thanks for being super patient while I neglect and then spend time on this project sporadically <3

v0.0.20

19 Jun 09:48
4749d3d

Choose a tag to compare

A few small bug fixes in this release

  • SEQUENCE is now a valid option for postgres' ALTER statements
  • ignore-errors in config.json is now respected. The implementation was there previously but ignored for some reason
  • sql-lint no longer hangs on unresolved promises when used programmatically

Generate .d.ts declaration files for programmatic access

07 Jul 10:57
dd4ac61

Choose a tag to compare

v0.0.18

06 Jun 10:05

Choose a tag to compare

Adds programmatic access to sql-lint so you can lint your SQL within JS/TS.

v0.0.17

07 May 16:56

Choose a tag to compare

  • Adds support for Mysql 8

v0.0.16

20 Mar 14:57

Choose a tag to compare

  • Adds a test to check for trailing whitespace
  • sql-lint no longer aborts on error if piped via stdin (this is useful when used in a text editor, it won't bail out on an invalid file anymore, or it will at least try to continue)
  • SCHEMA is now a valid create option
  • TYPE is a valid create option for Postgres
  • ROLE is now a valid option
  • Much improved driver support
    • The checks are now driver independent so we can get finer grained control between the checks per driver (Mysql/Postgres etc...)
    • Scaffolding is also in place to allow for new drivers to be added since this is a major bottleneck

v0.0.15

11 Aug 15:58

Choose a tag to compare

Some minor updates in this one:

  • Bump up some dependencies
  • Add a -c/--config option. You can specify a path to a config file if you do not want it to look in ~/.config/sql-lint/config.json
  • Removd the postinstall command from package.json in the hopes it will fix some issues on Windows

v0.0.14

23 Jun 14:34

Choose a tag to compare

This version sees many updated and improvements made so let's dig in:

  • sql-lint now recurses over directories. A simple sql-lint . will
    lint all .sql files in your current directory
    NOTE: this will not work in the packaged executable. The pacakged executable
    is a snapshotted filesystem. Use the version from npm if you want this behaviour.
  • The --file and -f flag has been removed. Now you can specify it right
    away without a flag i.e. `sql-lint my-file.sql
  • The --query and -q flag has been removed. These were unneccessary and
    if you want to lint a fixed string, you can do so via the stdin i.e.
    `echo | 'DELETE FROM person;' | sql-lint
  • A new check for hungarian notation has been created. This will warn of
    any sp_ or tbl_ prefixes
  • Linting errors now carry extra information about them. If you want to
    see this information, pass the -v flag through on the command line
  • ALTER COLUMN statements now work for postgres users
  • The wording around a missing config file has been updated to give you
    better guidance
  • The warning about missing a config file will only show if -v is set
  • sql-lint will correctly fail if a file is not found that was specified
  • An extremely basic sql formatter is in place. Do not expect much
    you can experiment with it using the --fix flag

There are many other changes that can be glanced at through the commit
history but those are the main ones. As you can see, a lot of work has
been put in to make the CLI easier and more intuitive to use.

v0.0.13

20 Feb 11:24

Choose a tag to compare

Small bugfix which fixes the path to checks