Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
152 commits
Select commit Hold shift + click to select a range
0f2208d
Prepare for `0.57.0` release (#1885)
alamb Jun 14, 2025
e406422
Add support for cluster by expressions (#1883)
osipovartem Jun 16, 2025
6f42396
Add license header to display_utils.rs and pretty_print.rs (#1887)
alamb Jun 16, 2025
be30697
Add license header check to CI (#1888)
alamb Jun 17, 2025
b1b379e
Add support of parsing struct field's options in BigQuery (#1890)
git-hulk Jun 18, 2025
185a490
Fix parsing error when having fields after nested struct in BigQuery …
git-hulk Jun 20, 2025
204d3b4
Extend exception handling (#1884)
bombsimon Jun 21, 2025
1d0dc7c
Postgres: Add support for text search types (#1889)
MohamedAbdeen21 Jun 22, 2025
7865de0
Fix `limit` in subqueries (#1899)
Dimchikkk Jun 22, 2025
5d63663
Use `IndexColumn` in all index definitions (#1900)
mvzink Jun 24, 2025
44f3be3
fix: parse snowflake fetch clause (#1894)
Vedin Jun 24, 2025
b9365b3
Support procedure argmode (#1901)
ZacJW Jun 24, 2025
b2ab006
Fix `impl Ord for Ident` (#1893)
eliaperantoni Jun 25, 2025
1bbc05c
Snowflake: support multiple column options in `CREATE VIEW` (#1891)
eliaperantoni Jun 25, 2025
95d16e3
Add support for `LANGUAGE` clause in `CREATE PROCEDURE` (#1903)
ZacJW Jun 27, 2025
5f2b5fe
Fix clippy lints on 1.88.0 (#1910)
iffyio Jun 27, 2025
6c38cdc
Snowflake: Add support for future grants (#1906)
yoavcloud Jun 27, 2025
50c605a
Support for Map values in ClickHouse settings (#1896)
solontsev Jun 28, 2025
3bc9423
Fix join precedence for non-snowflake queries (#1905)
Dimchikkk Jun 28, 2025
abd80f9
Support remaining pipe operators (#1879)
simonvandel Jun 30, 2025
9ffc546
Make `GenericDialect` support from-first syntax (#1911)
simonvandel Jul 1, 2025
f32a41a
Redshift utf8 idents (#1915)
yoavcloud Jul 1, 2025
a339822
DuckDB: Add support for multiple `TRIM` arguments (#1916)
ryanschneider Jul 2, 2025
015caca
Redshift alter column type no set (#1912)
yoavcloud Jul 3, 2025
418b942
Postgres: support `ADD CONSTRAINT NOT VALID` and `VALIDATE CONSTRAINT…
achristmascarl Jul 3, 2025
be2d2f1
Add support for MySQL MEMBER OF (#1917)
yoavcloud Jul 3, 2025
9020385
Add span for `Expr::TypedString` (#1919)
feral-dot-io Jul 3, 2025
239e30a
Support for Postgres `CREATE SERVER` (#1914)
solontsev Jul 3, 2025
942d747
Change tag and policy names to `ObjectName` (#1892)
eliaperantoni Jul 4, 2025
b0bcc46
Add support for NULL escape char in pattern match searches (#1913)
yoavcloud Jul 4, 2025
d2466af
Add support for dropping multiple columns in Snowflake (#1918)
yoavcloud Jul 5, 2025
ed8757f
Align Snowflake dialect to new test of reserved keywords (#1924)
yoavcloud Jul 5, 2025
cf9e504
Make `GenericDialect` support trailing commas in projections (#1921)
simonvandel Jul 6, 2025
f2fba48
Add support for several Snowflake grant statements (#1922)
yoavcloud Jul 6, 2025
1a33abd
Clickhouse: support empty parenthesized options (#1925)
solontsev Jul 6, 2025
93450cc
Add Snowflake `COPY/REVOKE CURRENT GRANTS` option (#1926)
yoavcloud Jul 7, 2025
b1a6d11
Add support for Snowflake identifier function (#1929)
yoavcloud Jul 10, 2025
8f1414e
Add support for granting privileges to procedures and functions in Sn…
yoavcloud Jul 10, 2025
fd4934e
Add support for `+` char in Snowflake stage names (#1935)
yoavcloud Jul 10, 2025
15f35e1
Snowflake Reserved SQL Keywords as Implicit Table Alias (#1934)
yoavcloud Jul 11, 2025
ee31b64
Add support for Redshift `SELECT * EXCLUDE` (#1936)
yoavcloud Jul 11, 2025
bc2c4e2
Support optional semicolon between statements (#1937)
yoavcloud Jul 11, 2025
750a7aa
Snowflake: support trailing options in `CREATE TABLE` (#1931)
yoavcloud Jul 14, 2025
9b9ffe4
MSSQL: Add support for EXEC output and default keywords (#1940)
yoavcloud Jul 14, 2025
c5e6ba5
Add identifier unicode support in Mysql, Postgres and Redshift (#1933)
etgarperets Jul 14, 2025
ecd5d88
Add identifier start unicode support for Postegres, MySql and Redshif…
etgarperets Jul 15, 2025
6506814
docs: Update rust badge (#1943)
Olexandr88 Jul 15, 2025
4d93386
Fix for Postgres regex and like binary operators (#1928)
solontsev Jul 17, 2025
92db206
Snowflake: Improve accuracy of lookahead in implicit LIMIT alias (#1941)
yoavcloud Jul 17, 2025
5f69df2
Add support for `DROP USER` statement (#1951)
yoavcloud Jul 17, 2025
40bbcc9
Prepare 0.58.0 release: update version + Changelog (#1955)
alamb Jul 18, 2025
23f40cd
MySQL: Support `EXPLAIN ANALYZE` format variants (#1945)
yoavcloud Jul 18, 2025
a73577c
Add support for `NOT NULL` and `NOTNULL` expressions (#1927)
ryanschneider Jul 21, 2025
799c1f7
Snowflake: Support `CLONE` option in `CREATE DATABASE/SCHEMA` stateme…
yoavcloud Jul 21, 2025
4921846
Add support for `GRANT DROP` statement (#1959)
yoavcloud Jul 21, 2025
2ed2cbe
Snowflake: Add support for `CREATE USER` (#1950)
yoavcloud Jul 23, 2025
f49c30f
Postgres: Support parenthesized `SET` options for `ALTER TABLE` (#1947)
achristmascarl Jul 23, 2025
7558d35
Snowflake: Support IDENTIFIER for GRANT ROLE (#1957)
yoavcloud Jul 23, 2025
40b187f
Snowflake: Numeric prefix for stage name part (#1966)
yoavcloud Jul 23, 2025
6a5ef48
Snowflake: Support `GRANT CREATE SCHEMA` `GRANT .. ON ALL FUNCTIONS I…
yoavcloud Jul 24, 2025
145922a
Snowflake: DROP STREAM (#1973)
yoavcloud Jul 24, 2025
865c191
fix: begin statement for bigquery (#1975)
chenkovsky Jul 25, 2025
5ec953b
fix: update DuckDB and ClickHouse documentation links (#1978)
IndexSeek Jul 26, 2025
97a5b61
feat: support export data for bigquery (#1976)
chenkovsky Jul 28, 2025
bde269b
Add ODBC escape syntax support for time expressions (#1953)
etgarperets Jul 29, 2025
15d8bfe
Add support for `SHOW CHARSET` (#1974)
etgarperets Jul 29, 2025
9127370
Snowflake: Support `CREATE VIEW myview IF NOT EXISTS` (#1961)
etgarperets Jul 30, 2025
85fa881
Update criterion requirement from 0.6 to 0.7 in /sqlparser_bench (#1981)
dependabot[bot] Jul 30, 2025
3d2db8c
Snowflake: Improve support for reserved keywords for table factor (#1…
yoavcloud Jul 31, 2025
f5f51eb
MySQL: Allow optional `SIGNED` suffix on integer data types (#1985)
mvzink Aug 1, 2025
6932f4a
Fix placeholder spans (#1979)
xitep Aug 1, 2025
ec0026d
Snowflake create database (#1939)
osipovartem Aug 1, 2025
dd650b8
feat: support multi value columns and aliases in unpivot (#1969)
chenkovsky Aug 1, 2025
c1648e7
Postgres: Support `INTERVAL` data type options (#1984)
mvzink Aug 2, 2025
3583514
MySQL: Support comma-separated `CREATE TABLE` options (#1989)
mvzink Aug 5, 2025
698154d
MySQL: Support `ALTER TABLE RENAME AS` (#1965)
altmannmarcelo Aug 6, 2025
183bc7c
Improve MySQL `CREATE TRIGGER` parsing (#1998)
mvzink Aug 8, 2025
18b4a14
Snowflake - support table function in table factor (regression) (#1996)
tomershaniii Aug 8, 2025
67fca82
Improve MySQL option parsing in index definitions (#1997)
mvzink Aug 8, 2025
27544f9
Add support for `UPDATE ... LIMIT ...` (#1991)
xtuc Aug 8, 2025
356308b
feat: Include end token in `ALTER TABLE` statement (#1999)
IndexSeek Aug 9, 2025
b2f9773
Postgres: enhance NUMERIC/DECIMAL parsing to support negative scale (…
IndexSeek Aug 9, 2025
60a5c8d
Fix column definition `COLLATE` parsing (#1986)
mvzink Aug 13, 2025
b660a3b
Redshift: `CREATE TABLE ... (LIKE ..)` (#1967)
yoavcloud Aug 16, 2025
12c0878
Add drop behavior to `DROP PRIMARY/FOREIGN KEY` (#2002)
yoavcloud Aug 19, 2025
3b52428
Redshift: Add support for IAM_ROLE and IGNOREHEADER COPY options (#1968)
yoavcloud Aug 20, 2025
4b8797e
Snowflake: Add support for `CREATE DYNAMIC TABLE` (#1960)
yoavcloud Aug 20, 2025
56848b0
feat: support multiple value for pivot (#1970)
chenkovsky Aug 20, 2025
cb7a51e
feat: Add `ALTER SCHEMA` support (#1980)
chenkovsky Aug 20, 2025
e9eee00
Add support for VACUUM in Redshift (#2005)
yoavcloud Aug 21, 2025
6e80e5c
Add support for `SEMANTIC_VIEW` table factor (#2009)
bombsimon Aug 21, 2025
5d5c90c
Redshift: Add more copy options (#2008)
yoavcloud Aug 21, 2025
376f47e
feat: MERGE statements: add RETURNING and OUTPUT without INTO (#2011)
lovasoa Aug 22, 2025
779dcf9
`GenericDialect`: Support pipe operator (#2012)
simonvandel Aug 23, 2025
cffff30
Add SECURE keyword for views in Snowflake (#2004)
Vedin Aug 26, 2025
9f515bf
Add support for PostgreSQL JSON function 'RETURNING' clauses (#2001)
adamchainz Aug 26, 2025
bc478b0
Snowflake: Minus char in stage name (#2014)
yoavcloud Aug 26, 2025
ee707c7
Support wildcard metrics for `SEMANTIC_VIEW` (#2016)
bombsimon Aug 28, 2025
9b6f6de
Allow wilrdacrd for all `SEMANTIC_VIEW` types (#2017)
bombsimon Aug 29, 2025
eca6574
Redshift: Add support for `UNLOAD` statement (#2013)
yoavcloud Sep 2, 2025
cff2833
Add support for string literal concatenation (#2003)
etgarperets Sep 2, 2025
dd3342e
Merge queue Infrastructure in sqlparser-rs (#2007)
blaginin Sep 4, 2025
befc95e
MQ Test (#2019)
blaginin Sep 5, 2025
b8539a5
Added derive trait `Copy` to `OrderByOptions` struct (#2021)
LucaCappelletti94 Sep 9, 2025
280f518
Moved `CreateTrigger` and `DropTrigger` out of `Statement` enum (#2026)
LucaCappelletti94 Sep 15, 2025
e3fbfd9
MySQL: Support `CROSS JOIN` constraint (#2025)
rs-sac Sep 15, 2025
7021561
Implemented the `From` method for all clear variants in Statement (#2…
LucaCappelletti94 Sep 16, 2025
f642dd5
DuckDB: Allow quoted date parts in EXTRACT (#2030)
ryanschneider Sep 16, 2025
ea7f902
MySQL: Add support for unsigned numeric types (#2031)
MohamedAbdeen21 Sep 19, 2025
0b72314
feat: support postgres alter schema (#2038)
chenkovsky Sep 19, 2025
3c61db5
Prepare for 0.59.0: Changelog and update version (#2039)
alamb Sep 19, 2025
a15c70d
Add support for INVISIBLE columns in MySQL (#2033)
altmannmarcelo Sep 23, 2025
54a24e7
Link to actual change logs in CHANGELOG.md (#2040)
lovasoa Sep 23, 2025
a430838
Snowflake: ALTER USER and KeyValueOptions Refactoring (#2035)
yoavcloud Sep 25, 2025
c099883
Correctly tokenize nested comments in Databricks, Clickhouse, and ANS…
jmhain Sep 26, 2025
7461d8b
MySQL: `CREATE INDEX`: allow `USING` clause before `ON` (#2029)
MohamedAbdeen21 Sep 26, 2025
ade4082
[databricks] update dialect to support grouping by with modifier (#2047)
n-young Oct 4, 2025
8c82fc0
Moved constraint variant outside of `TableConstraint` enum (#2054)
LucaCappelletti94 Oct 8, 2025
0fb3b6b
Add support for procedure parameter default values (#2041)
aharpervc Oct 8, 2025
35220ee
Require PR (#2052)
blaginin Oct 10, 2025
e7d42f3
Increase version of sqlparser_derive from 0.3.0 to 0.4.0 (#2060)
jjbayer Oct 10, 2025
cc595cf
Moving several struct variants out of `Statement` enum to allow for t…
LucaCappelletti94 Oct 10, 2025
4490c8c
Added support for SQLite triggers (#2037)
LucaCappelletti94 Oct 11, 2025
c8531d4
Added support for MATCH syntax and unified column option ForeignKey (…
LucaCappelletti94 Oct 15, 2025
218f43c
chore: add stack overflow warning for Visitor and VisitorMut (#2068)
niebayes Oct 16, 2025
f861566
Reused `CheckConstraint` in `ColumnOption` (#2063)
LucaCappelletti94 Oct 16, 2025
9cc9f9a
Refactored `ColumnOption::Unique` to reuse `UniqueConstraint` and `Pr…
LucaCappelletti94 Oct 21, 2025
6b352ea
Redshift: more copy options (#2072)
yoavcloud Oct 22, 2025
67684c8
SQLite: make period optional for CREATE TRIGGER (#2071)
takluyver Oct 22, 2025
bc6e1d6
Added TIMESTAMP_NTZ type support with precision to Snowflake dialect …
romanoff Oct 30, 2025
308a723
Make `BitwiseNot` ("~") available for all dialects, not just PostgreS…
alexander-beedie Oct 30, 2025
eabde4b
feat: Add RESET to the base dialect #2078 (#2079)
watford-ep Nov 11, 2025
c439ee9
Add snowflake dynamic table parsing (#2083)
romanoff Nov 11, 2025
f69407b
Add support for `INSERT INTO VALUE` (#2085)
etgarperets Nov 11, 2025
a00d5cd
feat: Add support for SET SESSION AUTHORIZATION #2086 (#2087)
watford-ep Nov 12, 2025
78be8b1
Complete PostgreSQL `CREATE TYPE` Support (#2094)
LucaCappelletti94 Nov 13, 2025
4f79997
Include DML keyword in statement span (#2090)
xitep Nov 13, 2025
1198c1a
fix: parse error on unnamed arg with default syntax (#2091)
r1b Nov 18, 2025
1114d6a
Add PostgreSQL Operator DDL Support (#2096)
LucaCappelletti94 Nov 19, 2025
2b8e99c
impl `Spanned` for MERGE statements (#2100)
xitep Nov 22, 2025
2ceae00
Preserve optional `AS` keyword in aliases (#2103)
xitep Nov 25, 2025
2a2abc8
Added support for `DROP OPERATOR` syntax (#2102)
LucaCappelletti94 Nov 26, 2025
e380494
Only set `hive_formats` on `CreateTable` if formats are present (#2105)
mvzink Nov 26, 2025
4beea9a
Support PostgreSQL C Functions with Multiple AS Parameters (#2095)
LucaCappelletti94 Nov 26, 2025
982f766
Added support for `DROP OPERATOR FAMILY` (#2106)
LucaCappelletti94 Nov 29, 2025
89938b9
Update criterion requirement from 0.7 to 0.8 in /sqlparser_bench (#2111)
dependabot[bot] Dec 1, 2025
367aa6e
Added support for `DROP OPERATOR CLASS` syntax (#2109)
LucaCappelletti94 Dec 1, 2025
defe939
Introduce Oracle dialect (#2113)
xitep Dec 2, 2025
29d88fe
Prepare for 0.60.0: Changelog and update version (#2116)
alamb Dec 2, 2025
0dbb9c9
Fix verification script for new sqlparser_derive version (#2119)
alamb Dec 2, 2025
9316210
Merge branch 'main' into ayman/syncUpstream
ayman-sigma Feb 3, 2026
4e86967
fix ups
ayman-sigma Feb 3, 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
18 changes: 18 additions & 0 deletions .asf.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -36,3 +36,21 @@ github:
rebase: false
features:
issues: true
protected_branches:
main:
required_status_checks:
contexts:
- "codestyle"
- "lint"
- "benchmark-lint"
- "compile"
- "docs"
- "compile-no-std"
- "test (stable)"
- "test (beta)"
- "test (nightly)"
- "Release Audit Tool (RAT)"
pull_requests:
# enable updating head branches of pull requests
allow_update_branch: true
allow_auto_merge: true
40 changes: 40 additions & 0 deletions .github/workflows/license.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
# 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.

name: license

# trigger for all PRs and changes to main
on:
push:
branches:
- main
pull_request:
merge_group:

jobs:

rat:
name: Release Audit Tool (RAT)
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Setup Python
uses: actions/setup-python@v5
with:
python-version: 3.8
- name: Audit licenses
run: ./dev/release/run-rat.sh .
11 changes: 9 additions & 2 deletions .github/workflows/rust.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,13 +17,20 @@

name: Rust

on: [push, pull_request]
on:
push:
# When PR is in the Merge Queue, GitHub will create a temporary branch - but we already have a
# CI running because of `merge_group`
# See also: https://github.com/orgs/community/discussions/15254
branches-ignore:
- 'gh-readonly-queue/**'
pull_request:
merge_group:

permissions:
contents: read

jobs:

codestyle:
runs-on: ubuntu-latest
steps:
Expand Down
7 changes: 1 addition & 6 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,9 +28,4 @@ technically be breaking and thus will result in a `0.(N+1)` version.


- Unreleased: Check https://github.com/sqlparser-rs/sqlparser-rs/commits/main for undocumented changes.
- `0.56.0`: [changelog/0.56.0.md](changelog/0.56.0.md)
- `0.55.0`: [changelog/0.55.0.md](changelog/0.55.0.md)
- `0.54.0`: [changelog/0.54.0.md](changelog/0.54.0.md)
- `0.53.0`: [changelog/0.53.0.md](changelog/0.53.0.md)
- `0.52.0`: [changelog/0.52.0.md](changelog/0.52.0.md)
- `0.51.0` and earlier: [changelog/0.51.0-pre.md](changelog/0.51.0-pre.md)
- Past releases: See https://github.com/apache/datafusion-sqlparser-rs/tree/main/changelog
4 changes: 2 additions & 2 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.56.0"
version = "0.60.0"
authors = ["Apache DataFusion <dev@datafusion.apache.org>"]
homepage = "https://github.com/apache/datafusion-sqlparser-rs"
documentation = "https://docs.rs/sqlparser/"
Expand Down Expand Up @@ -54,7 +54,7 @@ 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.3.0", path = "derive", optional = true }
sqlparser_derive = { version = "0.4.0", path = "derive", optional = true }

[dev-dependencies]
simple_logger = "5.0"
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@

[![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)
[![Version](https://img.shields.io/crates/v/sqlparser.svg)](https://crates.io/crates/sqlparser)
[![Build Status](https://github.com/sqlparser-rs/sqlparser-rs/workflows/Rust/badge.svg?branch=main)](https://github.com/sqlparser-rs/sqlparser-rs/actions?query=workflow%3ARust+branch%3Amain)
[![Build Status](https://github.com/apache/datafusion-sqlparser-rs/actions/workflows/rust.yml/badge.svg)](https://github.com/sqlparser-rs/sqlparser-rs/actions?query=workflow%3ARust+branch%3Amain)
[![Coverage Status](https://coveralls.io/repos/github/sqlparser-rs/sqlparser-rs/badge.svg?branch=main)](https://coveralls.io/github/sqlparser-rs/sqlparser-rs?branch=main)
[![Gitter Chat](https://badges.gitter.im/sqlparser-rs/community.svg)](https://gitter.im/sqlparser-rs/community?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)

Expand Down
95 changes: 95 additions & 0 deletions changelog/0.57.0.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,95 @@
<!--
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.57.0 Changelog

This release consists of 39 commits from 19 contributors. See credits at the end of this changelog for more information.

**Implemented enhancements:**

- feat: Hive: support `SORT BY` direction [#1873](https://github.com/apache/datafusion-sqlparser-rs/pull/1873) (chenkovsky)

**Other:**

- Support some of pipe operators [#1759](https://github.com/apache/datafusion-sqlparser-rs/pull/1759) (simonvandel)
- Added support for `DROP DOMAIN` [#1828](https://github.com/apache/datafusion-sqlparser-rs/pull/1828) (LucaCappelletti94)
- Improve support for cursors for SQL Server [#1831](https://github.com/apache/datafusion-sqlparser-rs/pull/1831) (aharpervc)
- Add all missing table options to be handled in any order [#1747](https://github.com/apache/datafusion-sqlparser-rs/pull/1747) (benrsatori)
- Add `CREATE TRIGGER` support for SQL Server [#1810](https://github.com/apache/datafusion-sqlparser-rs/pull/1810) (aharpervc)
- Added support for `CREATE DOMAIN` [#1830](https://github.com/apache/datafusion-sqlparser-rs/pull/1830) (LucaCappelletti94)
- Allow stored procedures to be defined without `BEGIN`/`END` [#1834](https://github.com/apache/datafusion-sqlparser-rs/pull/1834) (aharpervc)
- Add support for the MATCH and REGEXP binary operators [#1840](https://github.com/apache/datafusion-sqlparser-rs/pull/1840) (lovasoa)
- Fix: parsing ident starting with underscore in certain dialects [#1835](https://github.com/apache/datafusion-sqlparser-rs/pull/1835) (MohamedAbdeen21)
- implement pretty-printing with `{:#}` [#1847](https://github.com/apache/datafusion-sqlparser-rs/pull/1847) (lovasoa)
- Fix big performance issue in string serialization [#1848](https://github.com/apache/datafusion-sqlparser-rs/pull/1848) (lovasoa)
- Add support for `DENY` statements [#1836](https://github.com/apache/datafusion-sqlparser-rs/pull/1836) (aharpervc)
- Postgresql: Add `REPLICA IDENTITY` operation for `ALTER TABLE` [#1844](https://github.com/apache/datafusion-sqlparser-rs/pull/1844) (MohamedAbdeen21)
- Add support for INCLUDE/EXCLUDE NULLS for UNPIVOT [#1849](https://github.com/apache/datafusion-sqlparser-rs/pull/1849) (Vedin)
- pretty print improvements [#1851](https://github.com/apache/datafusion-sqlparser-rs/pull/1851) (lovasoa)
- fix new rust 1.87 cargo clippy warnings [#1856](https://github.com/apache/datafusion-sqlparser-rs/pull/1856) (lovasoa)
- Update criterion requirement from 0.5 to 0.6 in /sqlparser_bench [#1857](https://github.com/apache/datafusion-sqlparser-rs/pull/1857) (dependabot[bot])
- pretty-print CREATE TABLE statements [#1854](https://github.com/apache/datafusion-sqlparser-rs/pull/1854) (lovasoa)
- pretty-print CREATE VIEW statements [#1855](https://github.com/apache/datafusion-sqlparser-rs/pull/1855) (lovasoa)
- Handle optional datatypes properly in `CREATE FUNCTION` statements [#1826](https://github.com/apache/datafusion-sqlparser-rs/pull/1826) (LucaCappelletti94)
- Mysql: Add `SRID` column option [#1852](https://github.com/apache/datafusion-sqlparser-rs/pull/1852) (MohamedAbdeen21)
- Add support for table valued functions for SQL Server [#1839](https://github.com/apache/datafusion-sqlparser-rs/pull/1839) (aharpervc)
- Keep the COLUMN keyword only if it exists when dropping the column [#1862](https://github.com/apache/datafusion-sqlparser-rs/pull/1862) (git-hulk)
- Add support for parameter default values in SQL Server [#1866](https://github.com/apache/datafusion-sqlparser-rs/pull/1866) (aharpervc)
- Add support for `TABLESAMPLE` pipe operator [#1860](https://github.com/apache/datafusion-sqlparser-rs/pull/1860) (hendrikmakait)
- Adds support for mysql's drop index [#1864](https://github.com/apache/datafusion-sqlparser-rs/pull/1864) (dmzmk)
- Fix: GROUPING SETS accept values without parenthesis [#1867](https://github.com/apache/datafusion-sqlparser-rs/pull/1867) (Vedin)
- Add ICEBERG keyword support to ALTER TABLE statement [#1869](https://github.com/apache/datafusion-sqlparser-rs/pull/1869) (osipovartem)
- MySQL: Support `index_name` in FK constraints [#1871](https://github.com/apache/datafusion-sqlparser-rs/pull/1871) (MohamedAbdeen21)
- Postgres: Apply `ONLY` keyword per table in TRUNCATE stmt [#1872](https://github.com/apache/datafusion-sqlparser-rs/pull/1872) (MohamedAbdeen21)
- Fix `CASE` expression spans [#1874](https://github.com/apache/datafusion-sqlparser-rs/pull/1874) (eliaperantoni)
- MySQL: `[[NOT] ENFORCED]` in CHECK constraint [#1870](https://github.com/apache/datafusion-sqlparser-rs/pull/1870) (MohamedAbdeen21)
- Add support for `CREATE SCHEMA WITH ( <properties> )` [#1877](https://github.com/apache/datafusion-sqlparser-rs/pull/1877) (utay)
- Add support for `ALTER TABLE DROP INDEX` [#1865](https://github.com/apache/datafusion-sqlparser-rs/pull/1865) (vimko)
- chore: Replace archived actions-rs/install action [#1876](https://github.com/apache/datafusion-sqlparser-rs/pull/1876) (assignUser)
- Allow `IF NOT EXISTS` after table name for Snowflake [#1881](https://github.com/apache/datafusion-sqlparser-rs/pull/1881) (bombsimon)
- Support `DISTINCT AS { STRUCT | VALUE }` for BigQuery [#1880](https://github.com/apache/datafusion-sqlparser-rs/pull/1880) (bombsimon)

## Credits

Thank you to everyone who contributed to this release. Here is a breakdown of commits (PRs merged) per contributor.

```
7 Ophir LOJKINE
6 Andrew Harper
6 Mohamed Abdeen
3 Luca Cappelletti
2 Denys Tsomenko
2 Simon Sawert
1 Andrew Lamb
1 Artem Osipov
1 Chen Chongchen
1 Dmitriy Mazurin
1 Elia Perantoni
1 Hendrik Makait
1 Jacob Wujciak-Jens
1 Simon Vandel Sillesen
1 Yannick Utard
1 benrsatori
1 dependabot[bot]
1 hulk
1 vimko
```

Thank you also to everyone who contributed in other ways such as filing issues, reviewing PRs, and providing feedback on this release.

106 changes: 106 additions & 0 deletions changelog/0.58.0.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,106 @@
<!--
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.58.0 Changelog

This release consists of 47 commits from 18 contributors. See credits at the end of this changelog for more information.

**Fixed bugs:**

- fix: parse snowflake fetch clause [#1894](https://github.com/apache/datafusion-sqlparser-rs/pull/1894) (Vedin)

**Documentation updates:**

- docs: Update rust badge [#1943](https://github.com/apache/datafusion-sqlparser-rs/pull/1943) (Olexandr88)

**Other:**

- Add license header check to CI [#1888](https://github.com/apache/datafusion-sqlparser-rs/pull/1888) (alamb)
- Add support of parsing struct field's options in BigQuery [#1890](https://github.com/apache/datafusion-sqlparser-rs/pull/1890) (git-hulk)
- Fix parsing error when having fields after nested struct in BigQuery [#1897](https://github.com/apache/datafusion-sqlparser-rs/pull/1897) (git-hulk)
- Extend exception handling [#1884](https://github.com/apache/datafusion-sqlparser-rs/pull/1884) (bombsimon)
- Postgres: Add support for text search types [#1889](https://github.com/apache/datafusion-sqlparser-rs/pull/1889) (MohamedAbdeen21)
- Fix `limit` in subqueries [#1899](https://github.com/apache/datafusion-sqlparser-rs/pull/1899) (Dimchikkk)
- Use `IndexColumn` in all index definitions [#1900](https://github.com/apache/datafusion-sqlparser-rs/pull/1900) (mvzink)
- Support procedure argmode [#1901](https://github.com/apache/datafusion-sqlparser-rs/pull/1901) (ZacJW)
- Fix `impl Ord for Ident` [#1893](https://github.com/apache/datafusion-sqlparser-rs/pull/1893) (eliaperantoni)
- Snowflake: support multiple column options in `CREATE VIEW` [#1891](https://github.com/apache/datafusion-sqlparser-rs/pull/1891) (eliaperantoni)
- Add support for `LANGUAGE` clause in `CREATE PROCEDURE` [#1903](https://github.com/apache/datafusion-sqlparser-rs/pull/1903) (ZacJW)
- Fix clippy lints on 1.88.0 [#1910](https://github.com/apache/datafusion-sqlparser-rs/pull/1910) (iffyio)
- Snowflake: Add support for future grants [#1906](https://github.com/apache/datafusion-sqlparser-rs/pull/1906) (yoavcloud)
- Support for Map values in ClickHouse settings [#1896](https://github.com/apache/datafusion-sqlparser-rs/pull/1896) (solontsev)
- Fix join precedence for non-snowflake queries [#1905](https://github.com/apache/datafusion-sqlparser-rs/pull/1905) (Dimchikkk)
- Support remaining pipe operators [#1879](https://github.com/apache/datafusion-sqlparser-rs/pull/1879) (simonvandel)
- Make `GenericDialect` support from-first syntax [#1911](https://github.com/apache/datafusion-sqlparser-rs/pull/1911) (simonvandel)
- Redshift utf8 idents [#1915](https://github.com/apache/datafusion-sqlparser-rs/pull/1915) (yoavcloud)
- DuckDB: Add support for multiple `TRIM` arguments [#1916](https://github.com/apache/datafusion-sqlparser-rs/pull/1916) (ryanschneider)
- Redshift alter column type no set [#1912](https://github.com/apache/datafusion-sqlparser-rs/pull/1912) (yoavcloud)
- Postgres: support `ADD CONSTRAINT NOT VALID` and `VALIDATE CONSTRAINT` [#1908](https://github.com/apache/datafusion-sqlparser-rs/pull/1908) (achristmascarl)
- Add support for MySQL MEMBER OF [#1917](https://github.com/apache/datafusion-sqlparser-rs/pull/1917) (yoavcloud)
- Add span for `Expr::TypedString` [#1919](https://github.com/apache/datafusion-sqlparser-rs/pull/1919) (feral-dot-io)
- Support for Postgres `CREATE SERVER` [#1914](https://github.com/apache/datafusion-sqlparser-rs/pull/1914) (solontsev)
- Change tag and policy names to `ObjectName` [#1892](https://github.com/apache/datafusion-sqlparser-rs/pull/1892) (eliaperantoni)
- Add support for NULL escape char in pattern match searches [#1913](https://github.com/apache/datafusion-sqlparser-rs/pull/1913) (yoavcloud)
- Add support for dropping multiple columns in Snowflake [#1918](https://github.com/apache/datafusion-sqlparser-rs/pull/1918) (yoavcloud)
- Align Snowflake dialect to new test of reserved keywords [#1924](https://github.com/apache/datafusion-sqlparser-rs/pull/1924) (yoavcloud)
- Make `GenericDialect` support trailing commas in projections [#1921](https://github.com/apache/datafusion-sqlparser-rs/pull/1921) (simonvandel)
- Add support for several Snowflake grant statements [#1922](https://github.com/apache/datafusion-sqlparser-rs/pull/1922) (yoavcloud)
- Clickhouse: support empty parenthesized options [#1925](https://github.com/apache/datafusion-sqlparser-rs/pull/1925) (solontsev)
- Add Snowflake `COPY/REVOKE CURRENT GRANTS` option [#1926](https://github.com/apache/datafusion-sqlparser-rs/pull/1926) (yoavcloud)
- Add support for Snowflake identifier function [#1929](https://github.com/apache/datafusion-sqlparser-rs/pull/1929) (yoavcloud)
- Add support for granting privileges to procedures and functions in Snowflake [#1930](https://github.com/apache/datafusion-sqlparser-rs/pull/1930) (yoavcloud)
- Add support for `+` char in Snowflake stage names [#1935](https://github.com/apache/datafusion-sqlparser-rs/pull/1935) (yoavcloud)
- Snowflake Reserved SQL Keywords as Implicit Table Alias [#1934](https://github.com/apache/datafusion-sqlparser-rs/pull/1934) (yoavcloud)
- Add support for Redshift `SELECT * EXCLUDE` [#1936](https://github.com/apache/datafusion-sqlparser-rs/pull/1936) (yoavcloud)
- Support optional semicolon between statements [#1937](https://github.com/apache/datafusion-sqlparser-rs/pull/1937) (yoavcloud)
- Snowflake: support trailing options in `CREATE TABLE` [#1931](https://github.com/apache/datafusion-sqlparser-rs/pull/1931) (yoavcloud)
- MSSQL: Add support for EXEC output and default keywords [#1940](https://github.com/apache/datafusion-sqlparser-rs/pull/1940) (yoavcloud)
- Add identifier unicode support in Mysql, Postgres and Redshift [#1933](https://github.com/apache/datafusion-sqlparser-rs/pull/1933) (etgarperets)
- Add identifier start unicode support for Postegres, MySql and Redshift [#1944](https://github.com/apache/datafusion-sqlparser-rs/pull/1944) (etgarperets)
- Fix for Postgres regex and like binary operators [#1928](https://github.com/apache/datafusion-sqlparser-rs/pull/1928) (solontsev)
- Snowflake: Improve accuracy of lookahead in implicit LIMIT alias [#1941](https://github.com/apache/datafusion-sqlparser-rs/pull/1941) (yoavcloud)
- Add support for `DROP USER` statement [#1951](https://github.com/apache/datafusion-sqlparser-rs/pull/1951) (yoavcloud)

## Credits

Thank you to everyone who contributed to this release. Here is a breakdown of commits (PRs merged) per contributor.

```
19 Yoav Cohen
4 Sergey Olontsev
3 Elia Perantoni
3 Simon Vandel Sillesen
2 Dima
2 ZacJW
2 etgarperets
2 hulk
1 Andrew Lamb
1 Denys Tsomenko
1 Ifeanyi Ubah
1 Michael Victor Zink
1 Mohamed Abdeen
1 Olexandr88
1 Ryan Schneider
1 Simon Sawert
1 carl
1 feral-dot-io
```

Thank you also to everyone who contributed in other ways such as filing issues, reviewing PRs, and providing feedback on this release.

Loading
Loading