Highlights
- Rewrote
diff-qualityplugin to run SQLFluff as a subprocess. More reliable, easier to switch betweendiff-qualityand runningsqlfluff lintdirectly. - New rule L067 enforces consistent syntax for type casts.
- New rule L068 enforces a consistent number of columns in set queries (e.g. UNION).
- Initial support for Materialize dialect.
What's Changed
- Add flyway variables support via placeholder templater #4026 @srjonemed
- Fix Spark comparison parsing #4066 @ms32035
- Add errors and fails to pytest summary #4076 @alanmcruickshank
- Storage reference segment #4057 @YilangHe
- New rule L069: Consistent syntax for sql type casting #3747 @bolajiwahab
- Postgres: Views and named notations #4073 @davetapley
- Switch reflow buffer from LintFix to LintResult #4083 @alanmcruickshank
- Support parallel linting when many individual files specified #4084 @barrywhart
- Rule: check number of columns in set operations match #4028 @erevear
- Fix syntax in indentation sample code docs #4087 @PBalsdon
- Remove "mystery" binary file added in PR #2923 #4088 @barrywhart
- Fix mypy issue with regex #4097 @barrywhart
- Enable variable reference names to have leading underscore for snowflake dialect #4098 @gavin-tsang
- Fix flake8 issue with segment_predicates.py #4101 @barrywhart
- Fix bug in example rule plugin #4103 @barrywhart
- Fix bug where L034 should ignore INSERT or "CREATE TABLE AS SELECT" with CTE #4108 @barrywhart
- Postgres: Alter type rename value #4100 @greg-finley
- Bug fix: dbt templater ignores .sqlfluff file encoding on Windows #4109 @barrywhart
- Add initial Materialize dialect #4112 @bobbyiliev
- L015: Handle COUNT(DISTINCT(col)) #4110 @barrywhart
- [Snowflake] format type options extensions for copy_into_location #4129 @YilangHe
- Fix tox arguments #4144 @greg-finley
- [DB2] Fix parsing of string identifiers #4134 @borchero
- BigQuery: Allow double quoted literal in export_option_list #4126 @yoichi
- Only upload 3 sets of test results to codecov (possible workaround for hanging builds) #4147 @barrywhart
- SparkSQL: ILIKE #4138 @greg-finley
- SparkSQL: Mark
ASas optional keyword for CTE & CTS #4127 @ulixius9 - Fix passenv to work with tox 4 #4154 @tunetheweb
- Allow deprecated --disable_progress_bar flag for fix command #4151 @pdebelak
- Implement diff_quality_plugin using command-line rather than Python #4148 @barrywhart
- L037: insert ASC just after column_reference #4149 @yoichi
New Contributors
- @srjonemed made their first contribution in #4026
- @ms32035 made their first contribution in #4066
- @davetapley made their first contribution in #4073
- @PBalsdon made their first contribution in #4087
- @gavin-tsang made their first contribution in #4098
- @bobbyiliev made their first contribution in #4112
- @ulixius9 made their first contribution in #4127