This release consists of 66 commits from 22 contributors. See credits at the end of this changelog for more information.
Performance related:
- perf: remove unnecessary string clone in maybe_concat_string_literal #2173 (andygrove)
- perf: optimize
make_word()to avoid unnecessary allocations #2176 (andygrove)
Fixed bugs:
- fix: Set the current folder as a "primary" for the
findcommand #2120 (martin-g) - fix: qualified column names with SQL keywords parse as identifiers #2157 (bombsimon)
Other:
- Fixing location for extrenal tables #2108 (romanoff)
- Added support for
ALTER OPERATORsyntax #2114 (LucaCappelletti94) - Oracle: Support for MERGE predicates #2101 (xitep)
- [Oracle] Lower StringConcat precedence #2115 (xitep)
- Added alter external table support for snowflake #2122 (romanoff)
- MSSQL: Add support for parenthesized stored procedure name in EXEC #2126 (yoavcloud)
- MSSQL: Parse IF/ELSE without semicolon delimiters #2128 (yoavcloud)
- Extract source comments #2107 (xitep)
- PostgreSQL: Support schema-qualified operator classes in CREATE INDEX #2131 (dddenis)
- Oracle: Support for quote delimited strings #2130 (xitep)
- Added support for
ALTER OPERATOR FAMILYsyntax #2125 (LucaCappelletti94) - PostgreSQL Tokenization: Fix unexpected characters after question mark being silently ignored #2129 (jnlt3)
- Support parsing parenthesized wildcard
(*)#2123 (romanoff) - Make benchmark statement valid #2139 (xitep)
- Fix parse_identifiers not taking semicolons into account #2137 (jnlt3)
- Add PostgreSQL PARTITION OF syntax support #2127 (fmguerreiro)
- Databricks: Support Timetravel With "TIMESTAMP AS OF" #2134 (JamesVorder)
- MySQL: Parse bitwise shift left/right operators #2152 (mvzink)
- Redshift: Add support for optional JSON format in copy option #2141 (yoavcloud)
- MySQL: Add missing support for TREE explain format #2145 (yoavcloud)
- MySQL: Add support for && as boolean AND #2144 (yoavcloud)
- PostgreSQL: ALTER USER password option #2142 (yoavcloud)
- Key Value Options: add support for trailing semicolon #2140 (yoavcloud)
- Added support for
ALTER OPERATOR CLASSsyntax #2135 (LucaCappelletti94) - Added missing
Copyderives #2158 (LucaCappelletti94) - Tokenize empty line comments correctly #2161 (zyuiop)
- Add support for DuckDB
LAMBDAkeyword syntax #2149 (lovasoa) - MySQL: Add support for casting using the BINARY keyword #2146 (yoavcloud)
- Added missing
Fromimpls forStatementvariants #2160 (LucaCappelletti94) - GenericDialect: support colon operator for JsonAccess #2124 (Samyak2)
- Databricks: Support Timetravel With "VERSION AS OF" #2155 (JamesVorder)
- Fixed truncate table if exists for snowflake #2166 (romanoff)
- Refactor: replace some
dialect_of!checks withDialecttrait methods #2171 (andygrove) - MySQL: Support
CAST(... AS ... ARRAY)syntax #2151 (mvzink) - Snowflake: Support SAMPLE clause on subqueries #2164 (finchxxia)
- refactor: use
to_ident()instead ofclone().into_ident()for borrowed Words #2177 (andygrove) - Refactor: replace more
dialect_of!checks withDialecttrait methods #2175 (andygrove) - minor: reduce unnecessary string allocations #2178 (andygrove)
- PostgreSQL: Support force row level security #2169 (isaacparker0)
- PostgreSQL: Add support for
*(descendant) option in TRUNCATE #2181 (mvzink) - Fix identifier parsing not breaking on the
|>pipe operator #2156 (alexander-beedie) - [MySQL, Oracle] Parse optimizer hints #2162 (xitep)
- Redshift: Support implicit string concatenation using newline #2167 (yoavcloud)
- PostgreSQL: Fix REPLICA IDENTITY to use NOTHING #2179 (mvzink)
- Add ENFORCED/NOT ENFORCED support for column-level CHECK constraints #2180 (mvzink)
- Implement
core::error::ErrorforParserErrorandTokenizerError#2189 (LucaCappelletti94) - Moved more structs outside of Statement to facilitate reuse #2188 (LucaCappelletti94)
- Fix parsing cast operator after parenthesized
DEFAULTexpression #2168 (isaacparker0) - Streamlined derivation of new
Dialectobjects #2174 (alexander-beedie) - MSSQL: Support standalone BEGIN...END blocks #2186 (guan404ming)
- MySQL: Add support for
SELECTmodifiers #2172 (mvzink) - MySQL: Add support for DEFAULT CHARACTER SET in CREATE DATABASE #2182 (mvzink)
- [Oracle] Support hierarchical queries #2185 (xitep)
- MySQL: Allow optional constraint name after CONSTRAINT keyword #2183 (mvzink)
- Added missing derives to dialect marker structs #2191 (LucaCappelletti94)
- Fixed overflow error, recursion counter was not included for parenthesis #2199 (LucaCappelletti94)
- Add support for C-style comments #2034 (altmannmarcelo)
- PostgreSQL: Support PostgreSQL ANALYZE with optional table and column #2187 (guan404ming)
- Add Tokenizer custom token mapper support #2184 (askalt)
- Fix MAP literals parsing #2205 (Samyak2)
Thank you to everyone who contributed to this release. Here is a breakdown of commits (PRs merged) per contributor.
9 Luca Cappelletti
9 Yoav Cohen
8 Michael Victor Zink
7 xitep
6 Andy Grove
4 Andriy Romanov
2 Alexander Beedie
2 Andrew Lamb
2 Guan-Ming (Wesley) Chiu
2 James Vorderbruggen
2 Samyak Sarnayak
2 isaacparker0
2 jnlt3
1 Albert Skalt
1 Denis Goncharenko
1 Filipe Guerreiro
1 Louis Vialar
1 Marcelo Altmann
1 Martin Grigorov
1 Ophir LOJKINE
1 Simon Sawert
1 finchxxia
Thank you also to everyone who contributed in other ways such as filing issues, reviewing PRs, and providing feedback on this release.