This release changes some of the interfaces between SQLFluff core and our plugin ecosystem. The only breaking change is in the interface between SQLFluff and templater plugins (which are not common in the ecosystem, hence why this is only a minor and not a major release).
For all plugins, we also recommend a different structure for their imports (especially for rule plugins which are more common in the ecosystem) - for performance and stability reasons. Some users had been experiencing very long import times with previous releases as a result of the layout of plugin imports. Users with affected plugins will begin to see a warning from this release onward, which can be resolved for their plugin by updating to a new version of that plugin which follows the guidelines.
For more details (especially if you're a plugin maintainer) see our release notes.
Additionally this release includes:
Some internal performance gains which may cumulatively save roughly 10% of the time spent in the parsing phase of larger files.
Improvements to the Simple API, including the ability to pass in a FluffConfig object directly, and better support for parsing config files directly from strings (see the included example).
A bugfix for AM06.
A new --warn-unused-ignores CLI option (and corresponding config setting) to allow warnings to be shown if any noqa comments in SQL files are unused.
Improvements to Redshift, Oracle, Clickhouse, Materialize & MySQL dialects.
A selection of internal improvements, documentation and type hints.
This release changes some of the interfaces between SQLFluff core and
our plugin ecosystem. The only breaking change is in the interface
between SQLFluff and templater plugins (which are not common in the
ecosystem, hence why this is only a minor and not a major release).
For all plugins, we also recommend a different structure for their
imports (especially for rule plugins which are more common in the
ecosystem) - for performance and stability reasons. Some users had
been experiencing very long import times with previous releases as
a result of the layout of plugin imports. Users with affected plugins
will begin to see a warning from this release onward, which can be
resolved for their plugin by updating to a new version of that plugin
which follows the guidelines.
For more details (especially if you're a plugin maintainer) see our
release notes.
Additionally this release includes:
Some internal performance gains which may cumulatively save
roughly 10% of the time spent in the parsing phase of larger files.
Improvements to the Simple API, including the ability to pass in
a FluffConfig object directly, and better support for parsing
config files directly from strings (see
the included example).
A bugfix for AM06.
A new --warn-unused-ignores CLI option (and corresponding config
setting) to allow warnings to be shown if any noqa comments in
SQL files are unused.
Improvements to Redshift, Oracle, Clickhouse, Materialize &
MySQL dialects.
A selection of internal improvements, documentation and type hints.
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Bumps sqlfluff from 2.1.4 to 2.2.0.
Release notes
Sourced from sqlfluff's releases.
... (truncated)
Changelog
Sourced from sqlfluff's changelog.
... (truncated)
Commits
b4a9a69
Prep version 2.2.0 (#5024)1270eec
Mypy: Ephemeral + Tuple Return on .parse() (#5044)623d764
Add support to oracle's global and private temporary tables (#5039)43b6d34
Redshift-dialect: Support GRANT USAGE ON DATASHARE (#5007)094b059
:white_check_mark: Add strict typing for errors module (#5047)2e3c60f
Less copying in the ParseContext (#5046)11f6257
Adding support to useADD COLUMN IF NOT EXISTS
syntax onALTER TABLE
(#5035)7141488
Closes #4815 (#5042)b156d4d
Fix for multiprocessing warnings. (#5032)427bdae
Mypy gain: Remove unnecessary tuple construction in MatchResult (#5045)Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)