Highlights
This release is primarily a performance release, with most major changes aimed at the linting and fixing phases of operation. Most of the longest duration rules (excepting the layout rules) should see noticeable speed improvements.
Alongside those changes, there are a selection of bugfixes and dialect improvements for Oracle, PostgreSQL, Snowflake & TSQL.
What’s Changed
- Postgres: Update returning with alias #5137 @greg-finley
- Reduce copying on _position_segments (improves
fix
) #5119 @alanmcruickshank - Import rationalisation #5135 @alanmcruickshank
- Select Crawler Refactor: Part 3 #5115 @alanmcruickshank
- Add support for comparison operators with space in Oracle #5132 @joaostorrer
- Snowflake support for bracketed query after
EXCEPT
#5126 @ulixius9 - Treatment of null literals. #5099 #5125 @alanmcruickshank
- Allow double-quoted parameters in create procedure #5131 @greg-finley
- Fix coverage & mypy #5134 @alanmcruickshank
- Ensure Unparsable can be given position. #5117 @alanmcruickshank
- Reduce copying in LintFix instantiation #5118 @alanmcruickshank
- Optimise crawl behaviour of JJ01 #5116 @alanmcruickshank
- Simplify rules with improvement to SegmentSeeker #5113 @alanmcruickshank
- Refactor AM07 #5112 @alanmcruickshank
- Select Crawler Refactor: Part 2 #5110 @alanmcruickshank
- Add support to Hierarchical Queries in Oracle #5108 @joaostorrer
- ✅ Strict MyPy for sqlfluff.core.parser #5107 @alanmcruickshank
- Free up pydocstyle again #5109 @alanmcruickshank
- Postgres: Allow CREATE TABLE INHERITS with no new columns #5100 @greg-finley
- Strict mypy in parser.segments #5094 @alanmcruickshank
- Select Crawler Refactor: Part 1 #5104 @alanmcruickshank
- RF01 & recursive_crawl improvements #5102 @alanmcruickshank
- fix new more restrictive tox #5103 @alanmcruickshank
- Make Day as Non Reserved Keyword #5062 @ulixius9