Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
122 commits
Select commit Hold shift + click to select a range
5a3b63b
Fixing location for extrenal tables (#2108)
romanoff Dec 3, 2025
effaac5
fix: Set the current folder as a "primary" for the `find` command (#2…
martin-g Dec 3, 2025
326f111
Added support for `ALTER OPERATOR` syntax (#2114)
LucaCappelletti94 Dec 4, 2025
ca2d333
Oracle: Support for MERGE predicates (#2101)
xitep Dec 6, 2025
adbfc46
[Oracle] Lower StringConcat precedence (#2115)
xitep Dec 10, 2025
048bc8f
Added alter external table support for snowflake (#2122)
romanoff Dec 10, 2025
0b1e0c3
MSSQL: Add support for parenthesized stored procedure name in EXEC (#…
yoavcloud Dec 10, 2025
1b842d3
MSSQL: Parse IF/ELSE without semicolon delimiters (#2128)
yoavcloud Dec 10, 2025
9b8a2d1
Extract source comments (#2107)
xitep Dec 16, 2025
cdeed32
PostgreSQL: Support schema-qualified operator classes in CREATE INDEX…
dddenis Dec 16, 2025
f84887d
Oracle: Support for quote delimited strings (#2130)
xitep Dec 16, 2025
d78dbc9
Added support for `ALTER OPERATOR FAMILY` syntax (#2125)
LucaCappelletti94 Dec 18, 2025
39418cf
PostgreSQL Tokenization: Fix unexpected characters after question mar…
jnlt3 Dec 18, 2025
355a3bf
Support parsing parenthesized wildcard `(*)` (#2123)
romanoff Dec 19, 2025
14703f0
Make benchmark statement valid (#2139)
xitep Dec 24, 2025
0cf85d3
Fix parse_identifiers not taking semicolons into account (#2137)
jnlt3 Dec 30, 2025
4de1ac9
Add PostgreSQL PARTITION OF syntax support (#2127)
fmguerreiro Jan 6, 2026
ce74e7f
Databricks: Support Timetravel With "TIMESTAMP AS OF" (#2134)
JamesVorder Jan 7, 2026
3af9988
MySQL: Parse bitwise shift left/right operators (#2152)
mvzink Jan 8, 2026
d80c0b9
Redshift: Add support for optional JSON format in copy option (#2141)
yoavcloud Jan 9, 2026
00da3d7
MySQL: Add missing support for TREE explain format (#2145)
yoavcloud Jan 9, 2026
24e1283
MySQL: Add support for && as boolean AND (#2144)
yoavcloud Jan 9, 2026
ab76a07
PostgreSQL: ALTER USER password option (#2142)
yoavcloud Jan 9, 2026
d4fb5c3
Key Value Options: add support for trailing semicolon (#2140)
yoavcloud Jan 9, 2026
aa5c6b3
Added support for `ALTER OPERATOR CLASS` syntax (#2135)
LucaCappelletti94 Jan 9, 2026
44c4023
Added missing `Copy` derives (#2158)
LucaCappelletti94 Jan 10, 2026
ee3b622
Tokenize empty line comments correctly (#2161)
zyuiop Jan 13, 2026
3880a93
Add support for DuckDB `LAMBDA` keyword syntax (#2149)
lovasoa Jan 13, 2026
6daa46d
MySQL: Add support for casting using the BINARY keyword (#2146)
yoavcloud Jan 14, 2026
c4d9e39
Added missing `From` impls for `Statement` variants (#2160)
LucaCappelletti94 Jan 16, 2026
46f2234
GenericDialect: support colon operator for JsonAccess (#2124)
Samyak2 Jan 16, 2026
6060a11
Databricks: Support Timetravel With "VERSION AS OF" (#2155)
JamesVorder Jan 20, 2026
2cf33de
Fixed truncate table if exists for snowflake (#2166)
romanoff Jan 22, 2026
845e213
fix: qualified column names with SQL keywords parse as identifiers (#…
bombsimon Jan 22, 2026
abec6f9
Refactor: replace some `dialect_of!` checks with `Dialect` trait meth…
andygrove Jan 23, 2026
6550ec8
perf: remove unnecessary string clone in maybe_concat_string_literal …
andygrove Jan 23, 2026
e7a3019
MySQL: Support `CAST(... AS ... ARRAY)` syntax (#2151)
mvzink Jan 23, 2026
614ea06
Snowflake: Support SAMPLE clause on subqueries (#2164)
finchxxia Jan 23, 2026
4305dd4
refactor: use `to_ident()` instead of `clone().into_ident()` for borr…
andygrove Jan 23, 2026
a7d7763
Refactor: replace more `dialect_of!` checks with `Dialect` trait meth…
andygrove Jan 23, 2026
3c7ecf3
minor: reduce unnecessary string allocations (#2178)
andygrove Jan 23, 2026
a175cdb
PostgreSQL: Support force row level security (#2169)
isaacparker0 Jan 24, 2026
153e7c5
perf: optimize `make_word()` to avoid unnecessary allocations (#2176)
andygrove Jan 24, 2026
802c7d3
PostgreSQL: Add support for `*` (descendant) option in TRUNCATE (#2181)
mvzink Jan 25, 2026
2d47fec
Fix identifier parsing not breaking on the `|>` pipe operator (#2156)
alexander-beedie Jan 29, 2026
be460b2
[MySQL, Oracle] Parse optimizer hints (#2162)
xitep Jan 29, 2026
62cf16f
Redshift: Support implicit string concatenation using newline (#2167)
yoavcloud Jan 29, 2026
ed983e0
PostgreSQL: Fix REPLICA IDENTITY to use NOTHING (#2179)
mvzink Jan 30, 2026
c8b7f7c
Add ENFORCED/NOT ENFORCED support for column-level CHECK constraints …
mvzink Jan 30, 2026
37aa792
Implement `core::error::Error` for `ParserError` and `TokenizerError`…
LucaCappelletti94 Feb 2, 2026
ed1c4e2
Moved more structs outside of Statement to facilitate reuse (#2188)
LucaCappelletti94 Feb 2, 2026
3b9b05e
Fix parsing cast operator after parenthesized `DEFAULT` expression (#…
isaacparker0 Feb 2, 2026
2ac82e9
Streamlined derivation of new `Dialect` objects (#2174)
alexander-beedie Feb 3, 2026
3ac5670
MSSQL: Support standalone BEGIN...END blocks (#2186)
guan404ming Feb 3, 2026
5e5c16c
MySQL: Add support for `SELECT` modifiers (#2172)
mvzink Feb 5, 2026
0c19e08
MySQL: Add support for DEFAULT CHARACTER SET in CREATE DATABASE (#2182)
mvzink Feb 5, 2026
d7f56e8
[Oracle] Support hierarchical queries (#2185)
xitep Feb 5, 2026
cb21477
MySQL: Allow optional constraint name after CONSTRAINT keyword (#2183)
mvzink Feb 6, 2026
bc55b37
Added missing derives to dialect marker structs (#2191)
LucaCappelletti94 Feb 6, 2026
e4c5500
Fixed overflow error, recursion counter was not included for parenthe…
LucaCappelletti94 Feb 6, 2026
23acd23
Add support for C-style comments (#2034)
altmannmarcelo Feb 6, 2026
0924f3a
PostgreSQL: Support PostgreSQL ANALYZE with optional table and column…
guan404ming Feb 6, 2026
60abfec
Add Tokenizer custom token mapper support (#2184)
askalt Feb 6, 2026
fcc7bce
Fix MAP literals parsing (#2205)
Samyak2 Feb 6, 2026
09deb94
Prepare to release sqlparser `0.61.0` and sqlparser_derive `0.5.0` (#…
alamb Feb 6, 2026
272c25e
Fix changelog (#2206)
alamb Feb 6, 2026
329a94c
Fix panic on incomplete REGEXP/MATCH expressions in SQLite dialect (#…
LucaCappelletti94 Feb 7, 2026
d0a0b3e
chore: add confirmation before tarball is released (#2208)
milenkovicm Feb 9, 2026
d526819
Databricks: Add support for `OPTIMIZE`, `PARTITIONED BY`, and `STRUCT…
funcpp Feb 9, 2026
03f00cd
Fix panic in `SET AUTHORIZATION` parsing when scope modifier is missi…
LucaCappelletti94 Feb 10, 2026
75f6f4b
Snowflake: Add multi table insert support (#2148)
finchxxia Feb 10, 2026
3a42e65
MSSQL: Support `THROW` statement (#2202)
guan404ming Feb 10, 2026
8e36e8e
Updated Fuzzer harness to address all dialects (#2203)
RPG-Alex Feb 10, 2026
4b4a9d7
Snowflake: Lambda functions (#2192)
yoavcloud Feb 13, 2026
6a48f44
Updated `parse_infix(..)` in `mysql.rs` and `sqlite.rs` to handle err…
RPG-Alex Feb 14, 2026
798fbe4
MSSQL: Add support for TRAN shorthand (#2212)
guan404ming Feb 14, 2026
2ea773a
Fixed select dollar column from stage for snowflake (#2165)
romanoff Feb 14, 2026
63eeaa0
[PIVOT] Optional AS keyword for aliases (#2209)
xitep Feb 18, 2026
40350e3
Fix `derive_dialect!` proc macro for use from external crates (#2219)
alexander-beedie Feb 18, 2026
0f37c27
Resolve breaking change that set "supports_lambda_functions" on `Gene…
alexander-beedie Feb 19, 2026
fb10a76
MSSQL: Add support for WAITFOR statement (#2210)
guan404ming Feb 19, 2026
15dc6a2
PostgreSQL: Support PRIMARY KEY/UNIQUE USING INDEX (#2213)
guan404ming Feb 19, 2026
bfd944c
Prefer use of `peek_token_ref` over `peek_token` where valid (#2225)
alexander-beedie Feb 20, 2026
a99fe54
PostgreSQL: Support more COMMENT ON object types (#2220)
guan404ming Feb 20, 2026
e81eb14
Allow custom OptimizerHints (#2216)
altmannmarcelo Feb 20, 2026
36e8ce6
Optimise out string allocations and copies in keyword lookup (#2226)
alexander-beedie Feb 23, 2026
0b589b2
[Oracle] Table alias for INSERTed table (#2214)
xitep Feb 23, 2026
d9b53a0
Introduce `Visit::visit_select` (#2235)
xitep Feb 24, 2026
982068e
Add support for INTERVAL keyword as unquoted identifier in PostgreSQL…
LucaCappelletti94 Feb 25, 2026
8afcad8
Redshift: support wildcard select items with alias (#2230)
yoabot-droid Feb 26, 2026
e87241a
Snowflake: support wildcard with EXCLUDE in function arguments (#2231)
yoabot-droid Feb 26, 2026
bd7f70e
MSSQL: prevent statement-starting keywords from being consumed as imp…
yoabot-droid Feb 26, 2026
523d78e
Support parenthesized `CREATE TABLE ... (LIKE ... INCLUDING/EXCLUDING…
LucaCappelletti94 Feb 27, 2026
6f0e803
MSSQL: support EXEC (@sql) dynamic SQL execution (#2234)
yoabot-droid Feb 27, 2026
83baf5e
Support MySQL KEY keyword in column definitions (#2243)
mvzink Feb 27, 2026
5b7bc1a
Support two-argument `TRIM(string, characters)` in PostgreSQL (#2240)
LucaCappelletti94 Feb 27, 2026
a3cfcac
Add Readyset to users in README.md (#2247)
mvzink Feb 27, 2026
49bdb5c
Snowflake: parse EXCLUDE column list as ObjectName to support qualifi…
yoabot-droid Feb 27, 2026
31e1942
MSSQL: Add support for OUTPUT clause on INSERT/UPDATE/DELETE (#2228)
guan404ming Feb 27, 2026
1da2ff7
Redshift: Added DISTSTYLE and DISTKEY keywords parsing (#2222)
romanoff Mar 3, 2026
255e50c
Allow INSERT columns to be qualified (#2260)
xitep Mar 4, 2026
915448c
Add support for parsing COPY statements from STDIN without a semicolo…
LucaCappelletti94 Mar 4, 2026
6691f31
Fix credentials parsing for redshift (#2262)
romanoff Mar 4, 2026
64f4b1f
Added SORTKEY keyword parsing for redshift queries (#2261)
romanoff Mar 5, 2026
13b88a3
Fixed transaction handling for snowflake (#2263)
romanoff Mar 9, 2026
b6003eb
Fixed COPY GRANTS clause parsing for snowflake (#2267)
romanoff Mar 9, 2026
3fa7114
Fixed parsing `OPTIONS(format = 'CSV')` when creating external bigque…
romanoff Mar 9, 2026
d38dd78
Add support for PostgreSQL LOCK TABLE (#2273)
mjbshaw Mar 13, 2026
47b6aac
add support for databricks JSON accessors (#2272)
whirlun Mar 13, 2026
738f12d
Fixed create snapshot table for bigquery (#2269)
romanoff Mar 13, 2026
9d5a171
Fixed stage name parsing for snowflake (#2265)
romanoff Mar 13, 2026
924a116
Fix STORAGE LIFECYCLE POLICY for snowflake queries (#2264)
romanoff Mar 13, 2026
203ced4
Fixed CHANGES keyword parsing for snowflake (#2266)
romanoff Mar 13, 2026
b3e176d
Add SETOF support for PostgreSQL function return types (#2217)
fmguerreiro Mar 13, 2026
50921b1
[Oracle] Support for `INSERT INTO (<sub-query>) ...` (#2276)
xitep Mar 20, 2026
1097a0d
Fixed BACKUP parsing for redshift (#2270)
romanoff Mar 20, 2026
7c4eac3
recursive protection for `parse_subexpr` (#2282)
blaginin Mar 24, 2026
df0d56c
Fix the tokenization of `<` edge cases (#2280)
ayman-sigma Mar 26, 2026
6f8e7b8
Expose values through ValueWithSpan (#2281)
xitep Mar 27, 2026
913cf0e
Enable `!` as NOT operator for Databricks dialect (#2287)
funcpp Apr 2, 2026
ce320d0
Merge sigma origin/main into upstream/main for sync
ayman-sigma Apr 6, 2026
6b64dba
Fix compilation errors and update tests after upstream sync
ayman-sigma Apr 7, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 8 additions & 3 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
[package]
name = "sqlparser"
description = "Extensible SQL Lexer and Parser with support for ANSI SQL:2011"
version = "0.60.0"
version = "0.61.0"
authors = ["Apache DataFusion <dev@datafusion.apache.org>"]
homepage = "https://github.com/apache/datafusion-sqlparser-rs"
documentation = "https://docs.rs/sqlparser/"
Expand All @@ -42,6 +42,7 @@ std = []
recursive-protection = ["std", "recursive"]
# Enable JSON output in the `cli` example:
json_example = ["serde_json", "serde"]
derive-dialect = ["sqlparser_derive"]
visitor = ["sqlparser_derive"]

[dependencies]
Expand All @@ -54,13 +55,17 @@ serde = { version = "1.0", default-features = false, features = ["derive", "allo
# of dev-dependencies because of
# https://github.com/rust-lang/cargo/issues/1596
serde_json = { version = "1.0", optional = true }
sqlparser_derive = { version = "0.4.0", path = "derive", optional = true }
sqlparser_derive = { version = "0.5.0", path = "derive", optional = true }

[dev-dependencies]
simple_logger = "5.0"
matches = "0.1"
pretty_assertions = "1"

[[test]]
name = "sqlparser_derive_dialect"
required-features = ["derive-dialect"]

[package.metadata.docs.rs]
# Document these features on docs.rs
features = ["serde", "visitor"]
features = ["serde", "visitor", "derive-dialect"]
7 changes: 4 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -159,9 +159,9 @@ $ cargo run --features json_example --example cli FILENAME.sql [--dialectname]

## Users

This parser is currently being used by the [DataFusion] query engine, [LocustDB],
[Ballista], [GlueSQL], [Opteryx], [Polars], [PRQL], [Qrlew], [JumpWire], [ParadeDB], [CipherStash Proxy],
and [GreptimeDB].
This parser is currently being used by the [DataFusion] query engine,
[LocustDB], [Ballista], [GlueSQL], [Opteryx], [Polars], [PRQL], [Qrlew],
[JumpWire], [ParadeDB], [CipherStash Proxy], [Readyset] and [GreptimeDB].

If your project is using sqlparser-rs feel free to make a PR to add it
to this list.
Expand Down Expand Up @@ -282,3 +282,4 @@ licensed as above, without any additional terms or conditions.
[`GenericDialect`]: https://docs.rs/sqlparser/latest/sqlparser/dialect/struct.GenericDialect.html
[CipherStash Proxy]: https://github.com/cipherstash/proxy
[GreptimeDB]: https://github.com/GreptimeTeam/greptimedb
[Readyset]: https://github.com/readysettech/readyset
127 changes: 127 additions & 0 deletions changelog/0.61.0.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,127 @@
<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
-->

# sqlparser-rs 0.61.0 Changelog

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](https://github.com/apache/datafusion-sqlparser-rs/pull/2173) (andygrove)
- perf: optimize `make_word()` to avoid unnecessary allocations [#2176](https://github.com/apache/datafusion-sqlparser-rs/pull/2176) (andygrove)

**Fixed bugs:**

- fix: Set the current folder as a "primary" for the `find` command [#2120](https://github.com/apache/datafusion-sqlparser-rs/pull/2120) (martin-g)
- fix: qualified column names with SQL keywords parse as identifiers [#2157](https://github.com/apache/datafusion-sqlparser-rs/pull/2157) (bombsimon)

**Other:**

- Fixing location for extrenal tables [#2108](https://github.com/apache/datafusion-sqlparser-rs/pull/2108) (romanoff)
- Added support for `ALTER OPERATOR` syntax [#2114](https://github.com/apache/datafusion-sqlparser-rs/pull/2114) (LucaCappelletti94)
- Oracle: Support for MERGE predicates [#2101](https://github.com/apache/datafusion-sqlparser-rs/pull/2101) (xitep)
- [Oracle] Lower StringConcat precedence [#2115](https://github.com/apache/datafusion-sqlparser-rs/pull/2115) (xitep)
- Added alter external table support for snowflake [#2122](https://github.com/apache/datafusion-sqlparser-rs/pull/2122) (romanoff)
- MSSQL: Add support for parenthesized stored procedure name in EXEC [#2126](https://github.com/apache/datafusion-sqlparser-rs/pull/2126) (yoavcloud)
- MSSQL: Parse IF/ELSE without semicolon delimiters [#2128](https://github.com/apache/datafusion-sqlparser-rs/pull/2128) (yoavcloud)
- Extract source comments [#2107](https://github.com/apache/datafusion-sqlparser-rs/pull/2107) (xitep)
- PostgreSQL: Support schema-qualified operator classes in CREATE INDEX [#2131](https://github.com/apache/datafusion-sqlparser-rs/pull/2131) (dddenis)
- Oracle: Support for quote delimited strings [#2130](https://github.com/apache/datafusion-sqlparser-rs/pull/2130) (xitep)
- Added support for `ALTER OPERATOR FAMILY` syntax [#2125](https://github.com/apache/datafusion-sqlparser-rs/pull/2125) (LucaCappelletti94)
- PostgreSQL Tokenization: Fix unexpected characters after question mark being silently ignored [#2129](https://github.com/apache/datafusion-sqlparser-rs/pull/2129) (jnlt3)
- Support parsing parenthesized wildcard `(*)` [#2123](https://github.com/apache/datafusion-sqlparser-rs/pull/2123) (romanoff)
- Make benchmark statement valid [#2139](https://github.com/apache/datafusion-sqlparser-rs/pull/2139) (xitep)
- Fix parse_identifiers not taking semicolons into account [#2137](https://github.com/apache/datafusion-sqlparser-rs/pull/2137) (jnlt3)
- Add PostgreSQL PARTITION OF syntax support [#2127](https://github.com/apache/datafusion-sqlparser-rs/pull/2127) (fmguerreiro)
- Databricks: Support Timetravel With "TIMESTAMP AS OF" [#2134](https://github.com/apache/datafusion-sqlparser-rs/pull/2134) (JamesVorder)
- MySQL: Parse bitwise shift left/right operators [#2152](https://github.com/apache/datafusion-sqlparser-rs/pull/2152) (mvzink)
- Redshift: Add support for optional JSON format in copy option [#2141](https://github.com/apache/datafusion-sqlparser-rs/pull/2141) (yoavcloud)
- MySQL: Add missing support for TREE explain format [#2145](https://github.com/apache/datafusion-sqlparser-rs/pull/2145) (yoavcloud)
- MySQL: Add support for && as boolean AND [#2144](https://github.com/apache/datafusion-sqlparser-rs/pull/2144) (yoavcloud)
- PostgreSQL: ALTER USER password option [#2142](https://github.com/apache/datafusion-sqlparser-rs/pull/2142) (yoavcloud)
- Key Value Options: add support for trailing semicolon [#2140](https://github.com/apache/datafusion-sqlparser-rs/pull/2140) (yoavcloud)
- Added support for `ALTER OPERATOR CLASS` syntax [#2135](https://github.com/apache/datafusion-sqlparser-rs/pull/2135) (LucaCappelletti94)
- Added missing `Copy` derives [#2158](https://github.com/apache/datafusion-sqlparser-rs/pull/2158) (LucaCappelletti94)
- Tokenize empty line comments correctly [#2161](https://github.com/apache/datafusion-sqlparser-rs/pull/2161) (zyuiop)
- Add support for DuckDB `LAMBDA` keyword syntax [#2149](https://github.com/apache/datafusion-sqlparser-rs/pull/2149) (lovasoa)
- MySQL: Add support for casting using the BINARY keyword [#2146](https://github.com/apache/datafusion-sqlparser-rs/pull/2146) (yoavcloud)
- Added missing `From` impls for `Statement` variants [#2160](https://github.com/apache/datafusion-sqlparser-rs/pull/2160) (LucaCappelletti94)
- GenericDialect: support colon operator for JsonAccess [#2124](https://github.com/apache/datafusion-sqlparser-rs/pull/2124) (Samyak2)
- Databricks: Support Timetravel With "VERSION AS OF" [#2155](https://github.com/apache/datafusion-sqlparser-rs/pull/2155) (JamesVorder)
- Fixed truncate table if exists for snowflake [#2166](https://github.com/apache/datafusion-sqlparser-rs/pull/2166) (romanoff)
- Refactor: replace some `dialect_of!` checks with `Dialect` trait methods [#2171](https://github.com/apache/datafusion-sqlparser-rs/pull/2171) (andygrove)
- MySQL: Support `CAST(... AS ... ARRAY)` syntax [#2151](https://github.com/apache/datafusion-sqlparser-rs/pull/2151) (mvzink)
- Snowflake: Support SAMPLE clause on subqueries [#2164](https://github.com/apache/datafusion-sqlparser-rs/pull/2164) (finchxxia)
- refactor: use `to_ident()` instead of `clone().into_ident()` for borrowed Words [#2177](https://github.com/apache/datafusion-sqlparser-rs/pull/2177) (andygrove)
- Refactor: replace more `dialect_of!` checks with `Dialect` trait methods [#2175](https://github.com/apache/datafusion-sqlparser-rs/pull/2175) (andygrove)
- minor: reduce unnecessary string allocations [#2178](https://github.com/apache/datafusion-sqlparser-rs/pull/2178) (andygrove)
- PostgreSQL: Support force row level security [#2169](https://github.com/apache/datafusion-sqlparser-rs/pull/2169) (isaacparker0)
- PostgreSQL: Add support for `*` (descendant) option in TRUNCATE [#2181](https://github.com/apache/datafusion-sqlparser-rs/pull/2181) (mvzink)
- Fix identifier parsing not breaking on the `|>` pipe operator [#2156](https://github.com/apache/datafusion-sqlparser-rs/pull/2156) (alexander-beedie)
- [MySQL, Oracle] Parse optimizer hints [#2162](https://github.com/apache/datafusion-sqlparser-rs/pull/2162) (xitep)
- Redshift: Support implicit string concatenation using newline [#2167](https://github.com/apache/datafusion-sqlparser-rs/pull/2167) (yoavcloud)
- PostgreSQL: Fix REPLICA IDENTITY to use NOTHING [#2179](https://github.com/apache/datafusion-sqlparser-rs/pull/2179) (mvzink)
- Add ENFORCED/NOT ENFORCED support for column-level CHECK constraints [#2180](https://github.com/apache/datafusion-sqlparser-rs/pull/2180) (mvzink)
- Implement `core::error::Error` for `ParserError` and `TokenizerError` [#2189](https://github.com/apache/datafusion-sqlparser-rs/pull/2189) (LucaCappelletti94)
- Moved more structs outside of Statement to facilitate reuse [#2188](https://github.com/apache/datafusion-sqlparser-rs/pull/2188) (LucaCappelletti94)
- Fix parsing cast operator after parenthesized `DEFAULT` expression [#2168](https://github.com/apache/datafusion-sqlparser-rs/pull/2168) (isaacparker0)
- Streamlined derivation of new `Dialect` objects [#2174](https://github.com/apache/datafusion-sqlparser-rs/pull/2174) (alexander-beedie)
- MSSQL: Support standalone BEGIN...END blocks [#2186](https://github.com/apache/datafusion-sqlparser-rs/pull/2186) (guan404ming)
- MySQL: Add support for `SELECT` modifiers [#2172](https://github.com/apache/datafusion-sqlparser-rs/pull/2172) (mvzink)
- MySQL: Add support for DEFAULT CHARACTER SET in CREATE DATABASE [#2182](https://github.com/apache/datafusion-sqlparser-rs/pull/2182) (mvzink)
- [Oracle] Support hierarchical queries [#2185](https://github.com/apache/datafusion-sqlparser-rs/pull/2185) (xitep)
- MySQL: Allow optional constraint name after CONSTRAINT keyword [#2183](https://github.com/apache/datafusion-sqlparser-rs/pull/2183) (mvzink)
- Added missing derives to dialect marker structs [#2191](https://github.com/apache/datafusion-sqlparser-rs/pull/2191) (LucaCappelletti94)
- Fixed overflow error, recursion counter was not included for parenthesis [#2199](https://github.com/apache/datafusion-sqlparser-rs/pull/2199) (LucaCappelletti94)
- Add support for C-style comments [#2034](https://github.com/apache/datafusion-sqlparser-rs/pull/2034) (altmannmarcelo)
- PostgreSQL: Support PostgreSQL ANALYZE with optional table and column [#2187](https://github.com/apache/datafusion-sqlparser-rs/pull/2187) (guan404ming)
- Add Tokenizer custom token mapper support [#2184](https://github.com/apache/datafusion-sqlparser-rs/pull/2184) (askalt)
- Fix MAP literals parsing [#2205](https://github.com/apache/datafusion-sqlparser-rs/pull/2205) (Samyak2)

## Credits

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.

4 changes: 2 additions & 2 deletions derive/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
[package]
name = "sqlparser_derive"
description = "Procedural (proc) macros for sqlparser"
version = "0.4.0"
version = "0.5.0"
authors = ["sqlparser-rs authors"]
homepage = "https://github.com/sqlparser-rs/sqlparser-rs"
documentation = "https://docs.rs/sqlparser_derive/"
Expand All @@ -36,6 +36,6 @@ edition = "2021"
proc-macro = true

[dependencies]
syn = { version = "2.0", default-features = false, features = ["printing", "parsing", "derive", "proc-macro"] }
syn = { version = "2.0", default-features = false, features = ["full", "printing", "parsing", "derive", "proc-macro", "clone-impls"] }
proc-macro2 = "1.0"
quote = "1.0"
Loading
Loading