alamb commented on code in PR #2811: URL: https://github.com/apache/datafusion-sqlparser-rs/pull/2811#discussion_r4460827667
########## changelog/0.64.0.md: ########## @@ -0,0 +1,246 @@ +<!-- +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.64.0 Changelog + +This release consists of 183 commits from 19 contributors. See credits at the end of this changelog for more information. + +**Breaking changes:** + +- Add `Comments::find_before` [#2691](https://github.com/apache/datafusion-sqlparser-rs/pull/2691) (LucaCappelletti94) +- Refactoring: Merge the `IN` expression variants into `Expr::In` [#2679](https://github.com/apache/datafusion-sqlparser-rs/pull/2679) (LucaCappelletti94) +- MsSql: Keep the comma separator when displaying DECLARE lists [#2671](https://github.com/apache/datafusion-sqlparser-rs/pull/2671) (LucaCappelletti94) +- SQLite: Support `INDEXED BY` and `NOT INDEXED` [#2687](https://github.com/apache/datafusion-sqlparser-rs/pull/2687) (LucaCappelletti94) +- PostgreSQL, ClickHouse: Keep custom data type modifiers re-parseable with a typed list [#2676](https://github.com/apache/datafusion-sqlparser-rs/pull/2676) (LucaCappelletti94) +- SQLite: Support `IN` with a table name or table-valued function [#2680](https://github.com/apache/datafusion-sqlparser-rs/pull/2680) (LucaCappelletti94) +- PostgreSQL, Snowflake: Keep the signature in `GRANT` and `REVOKE ON FUNCTION` [#2727](https://github.com/apache/datafusion-sqlparser-rs/pull/2727) (LucaCappelletti94) +- PostgreSQL: Support ALTER TABLE ATTACH PARTITION [#2749](https://github.com/apache/datafusion-sqlparser-rs/pull/2749) (LucaCappelletti94) +- PostgreSQL: Support DROP and COMMENT ON FOREIGN TABLE [#2746](https://github.com/apache/datafusion-sqlparser-rs/pull/2746) (LucaCappelletti94) +- Keep the parentheses of an empty CREATE PROCEDURE parameter list [#2756](https://github.com/apache/datafusion-sqlparser-rs/pull/2756) (LucaCappelletti94) +- PostgreSQL: Support `BEGIN ATOMIC` function bodies [#2728](https://github.com/apache/datafusion-sqlparser-rs/pull/2728) (LucaCappelletti94) +- PostgreSQL: Support INHERITS in CREATE FOREIGN TABLE [#2752](https://github.com/apache/datafusion-sqlparser-rs/pull/2752) (LucaCappelletti94) +- PostgreSQL: Parse `ROUTINE` and `ALL PROCEDURES | ROUTINES IN SCHEMA` grant targets [#2761](https://github.com/apache/datafusion-sqlparser-rs/pull/2761) (LucaCappelletti94) +- PostgreSQL: Support ONLY and * table inheritance markers [#2770](https://github.com/apache/datafusion-sqlparser-rs/pull/2770) (LucaCappelletti94) +- PostgreSQL: Support CREATE USER MAPPING [#2751](https://github.com/apache/datafusion-sqlparser-rs/pull/2751) (LucaCappelletti94) +- PostgreSQL: Support REFRESH MATERIALIZED VIEW [#2769](https://github.com/apache/datafusion-sqlparser-rs/pull/2769) (LucaCappelletti94) +- PostgreSQL: Support BEGIN ATOMIC procedure bodies [#2773](https://github.com/apache/datafusion-sqlparser-rs/pull/2773) (LucaCappelletti94) +- PostgreSQL: Support ALTER FOREIGN TABLE [#2745](https://github.com/apache/datafusion-sqlparser-rs/pull/2745) (LucaCappelletti94) +- PostgreSQL: Support PARTITION OF in CREATE FOREIGN TABLE [#2753](https://github.com/apache/datafusion-sqlparser-rs/pull/2753) (LucaCappelletti94) + +**Implemented enhancements:** + +- SQLite: Do not tokenize `N'...'` as a national string literal [#2561](https://github.com/apache/datafusion-sqlparser-rs/pull/2561) (LucaCappelletti94) +- SQLite: Support `CAST(expr AS)` without a type name [#2558](https://github.com/apache/datafusion-sqlparser-rs/pull/2558) (LucaCappelletti94) +- SQLite: Support string literals as column names in `CREATE TABLE` [#2560](https://github.com/apache/datafusion-sqlparser-rs/pull/2560) (LucaCappelletti94) +- ClickHouse: Support ON CLUSTER and SETTINGS in DELETE and UPDATE [#2617](https://github.com/apache/datafusion-sqlparser-rs/pull/2617) (jordiori) +- Assert exact errors in negative tests (3/4): dialect tests [#2630](https://github.com/apache/datafusion-sqlparser-rs/pull/2630) (LucaCappelletti94) +- Assert exact errors in negative tests (4/4): deny clippy::assertions_on_result_states [#2631](https://github.com/apache/datafusion-sqlparser-rs/pull/2631) (LucaCappelletti94) +- Add `Dialect::supports_cte_materialization` and enable it for DuckDB [#2651](https://github.com/apache/datafusion-sqlparser-rs/pull/2651) (adriangb) +- SQLite: Support a parenthesized table name in `FROM` [#2658](https://github.com/apache/datafusion-sqlparser-rs/pull/2658) (LucaCappelletti94) +- Deny `clippy::dbg_macro and clippy::todo` [#2654](https://github.com/apache/datafusion-sqlparser-rs/pull/2654) (LucaCappelletti94) +- PostgreSQL: Parse an empty SELECT target list without FROM [#2675](https://github.com/apache/datafusion-sqlparser-rs/pull/2675) (LucaCappelletti94) +- PostgreSQL: Parse custom typed string literals [#2689](https://github.com/apache/datafusion-sqlparser-rs/pull/2689) (LucaCappelletti94) +- SQLite: Support `ON` and `USING` after a comma join [#2667](https://github.com/apache/datafusion-sqlparser-rs/pull/2667) (LucaCappelletti94) +- SQLite, DuckDB: Support aggregate `ORDER BY` without arguments [#2660](https://github.com/apache/datafusion-sqlparser-rs/pull/2660) (LucaCappelletti94) +- Accept `CREATE SEQUENCE` options in any order [#2414](https://github.com/apache/datafusion-sqlparser-rs/pull/2414) (LucaCappelletti94) +- Postgres: support WHERE index_predicate in the ON CONFLICT target [#2627](https://github.com/apache/datafusion-sqlparser-rs/pull/2627) (zvonimir-dd) +- SQLite: Support `<<` and `>>` bitwise shift operators [#2657](https://github.com/apache/datafusion-sqlparser-rs/pull/2657) (LucaCappelletti94) +- PostgreSQL: add support for CREATE AGGREGATE [#2316](https://github.com/apache/datafusion-sqlparser-rs/pull/2316) (fmguerreiro) +- Add support for PostgreSQL `CREATE RULE` [#2433](https://github.com/apache/datafusion-sqlparser-rs/pull/2433) (LucaCappelletti94) +- PostgreSQL: Support CREATE FOREIGN DATA WRAPPER [#2317](https://github.com/apache/datafusion-sqlparser-rs/pull/2317) (fmguerreiro) +- PostgreSQL: Parse GRANT of role membership [#2732](https://github.com/apache/datafusion-sqlparser-rs/pull/2732) (LucaCappelletti94) +- PostgreSQL: Parse WITH options of a role membership GRANT [#2733](https://github.com/apache/datafusion-sqlparser-rs/pull/2733) (LucaCappelletti94) +- PostgreSQL: Parse NULLS [NOT] DISTINCT on column UNIQUE constraints [#2738](https://github.com/apache/datafusion-sqlparser-rs/pull/2738) (LucaCappelletti94) +- MySQL: Parse USING index type before PRIMARY KEY and UNIQUE columns [#2739](https://github.com/apache/datafusion-sqlparser-rs/pull/2739) (LucaCappelletti94) +- PostgreSQL: Parse REVOKE of role membership [#2735](https://github.com/apache/datafusion-sqlparser-rs/pull/2735) (LucaCappelletti94) +- PostgreSQL: Parse OPTION FOR in a role membership REVOKE [#2736](https://github.com/apache/datafusion-sqlparser-rs/pull/2736) (LucaCappelletti94) +- PostgreSQL: Parse a grantee after `PUBLIC` in `GRANT` and `REVOKE` [#2741](https://github.com/apache/datafusion-sqlparser-rs/pull/2741) (LucaCappelletti94) +- PostgreSQL: parse `CREATE GROUP` [#2429](https://github.com/apache/datafusion-sqlparser-rs/pull/2429) (LucaCappelletti94) +- PostgreSQL: Parse := named function arguments [#2774](https://github.com/apache/datafusion-sqlparser-rs/pull/2774) (LucaCappelletti94) +- PostgreSQL: parse `DROP GROUP` [#2712](https://github.com/apache/datafusion-sqlparser-rs/pull/2712) (LucaCappelletti94) +- PostgreSQL: Support `ALTER TABLE ... RESET` and storage parameters without a value [#2744](https://github.com/apache/datafusion-sqlparser-rs/pull/2744) (LucaCappelletti94) +- PostgreSQL: Accept CREATE EXTENSION options without WITH and in any order [#2742](https://github.com/apache/datafusion-sqlparser-rs/pull/2742) (LucaCappelletti94) +- Parse SQLite's `IS` and `IS NOT` operators [#2470](https://github.com/apache/datafusion-sqlparser-rs/pull/2470) (LucaCappelletti94) +- PostgreSQL: Support ALTER VIEW operations [#2730](https://github.com/apache/datafusion-sqlparser-rs/pull/2730) (LucaCappelletti94) +- Add support for PostgreSQL `DROP RULE` [#2434](https://github.com/apache/datafusion-sqlparser-rs/pull/2434) (LucaCappelletti94) +- Support PostgreSQL `ALTER DEFAULT PRIVILEGES` [#2417](https://github.com/apache/datafusion-sqlparser-rs/pull/2417) (LucaCappelletti94) +- PostgreSQL: Support ALTER MATERIALIZED VIEW [#2776](https://github.com/apache/datafusion-sqlparser-rs/pull/2776) (LucaCappelletti94) + +**Fixed bugs:** + +- Fix `TABLE` command identifier quoting and token consumption [#2540](https://github.com/apache/datafusion-sqlparser-rs/pull/2540) (LucaCappelletti94) +- PostgreSQL: Fix spacing between adjacent postfix factorial operators [#2538](https://github.com/apache/datafusion-sqlparser-rs/pull/2538) (LucaCappelletti94) +- Escape quotes when displaying `Word` tokens [#2544](https://github.com/apache/datafusion-sqlparser-rs/pull/2544) (LucaCappelletti94) +- PostgreSQL: Render prefix |/ and ||/ operators with a space [#2545](https://github.com/apache/datafusion-sqlparser-rs/pull/2545) (LucaCappelletti94) +- Generic: Fix quote escaping when displaying hex string literals [#2542](https://github.com/apache/datafusion-sqlparser-rs/pull/2542) (LucaCappelletti94) +- Snowflake: Fix stage delimiter handling and gate stage table factor on dialect [#2536](https://github.com/apache/datafusion-sqlparser-rs/pull/2536) (LucaCappelletti94) +- Generic: Fix quote escaping when displaying byte and raw string literals [#2537](https://github.com/apache/datafusion-sqlparser-rs/pull/2537) (LucaCappelletti94) +- Generic: Disallow quoted identifiers in colon and at-sign placeholders [#2539](https://github.com/apache/datafusion-sqlparser-rs/pull/2539) (LucaCappelletti94) +- DuckDB: Support nested block comments [#2584](https://github.com/apache/datafusion-sqlparser-rs/pull/2584) (LucaCappelletti94) +- Generic: Render prefix `!` operator with space before operator characters [#2541](https://github.com/apache/datafusion-sqlparser-rs/pull/2541) (LucaCappelletti94) +- MsSql: Disallow unquoted `FROM` keyword as alias assignment expression [#2546](https://github.com/apache/datafusion-sqlparser-rs/pull/2546) (LucaCappelletti94) +- Generic: Add spacing around dot in compound field access adjacent to numbers [#2543](https://github.com/apache/datafusion-sqlparser-rs/pull/2543) (LucaCappelletti94) +- SQLite: support == as assignment operator in UPDATE SET [#2552](https://github.com/apache/datafusion-sqlparser-rs/pull/2552) (LucaCappelletti94) +- Generic: Parse IN lists that start with a parenthesized subquery [#2586](https://github.com/apache/datafusion-sqlparser-rs/pull/2586) (LucaCappelletti94) +- SQLite: Support identifier characters above U+FFFF [#2555](https://github.com/apache/datafusion-sqlparser-rs/pull/2555) (LucaCappelletti94) +- Parser: fix exponential parse time on nested POSITION calls [#2619](https://github.com/apache/datafusion-sqlparser-rs/pull/2619) (fmcmac) +- Assert exact errors in negative tests (1/4): PostgreSQL tests [#2628](https://github.com/apache/datafusion-sqlparser-rs/pull/2628) (LucaCappelletti94) +- Assert exact errors in negative tests (2/4): common and parser unit tests [#2629](https://github.com/apache/datafusion-sqlparser-rs/pull/2629) (LucaCappelletti94) +- SQLite: Support comma-separated WITHOUT ROWID and STRICT table options [#2575](https://github.com/apache/datafusion-sqlparser-rs/pull/2575) (LucaCappelletti94) +- PostgreSQL: Remove unreachable empty op_types branch in operator FUNCTION items [#2632](https://github.com/apache/datafusion-sqlparser-rs/pull/2632) (LucaCappelletti94) +- SetExpr: apply recursive-protection to Display [#2623](https://github.com/apache/datafusion-sqlparser-rs/pull/2623) (fengyue-xve) +- MySQL: Bind && with the precedence of AND [#2576](https://github.com/apache/datafusion-sqlparser-rs/pull/2576) (LucaCappelletti94) +- SQLite: Support `$` inside identifiers [#2554](https://github.com/apache/datafusion-sqlparser-rs/pull/2554) (LucaCappelletti94) +- ClickHouse, MySQL: Keep the quoting of the CREATE TABLE ENGINE name [#2655](https://github.com/apache/datafusion-sqlparser-rs/pull/2655) (LucaCappelletti94) +- PostgreSQL: Reject string literals as aliases [#2668](https://github.com/apache/datafusion-sqlparser-rs/pull/2668) (LucaCappelletti94) +- DuckDB: Always render the macro argument list parentheses [#2656](https://github.com/apache/datafusion-sqlparser-rs/pull/2656) (LucaCappelletti94) +- ClickHouse: Allow $ inside identifiers [#2686](https://github.com/apache/datafusion-sqlparser-rs/pull/2686) (s5dsn-eqee) +- Check prefix operator spacing by rendered first char [#2577](https://github.com/apache/datafusion-sqlparser-rs/pull/2577) (LucaCappelletti94) +- SQLite: Accept a block comment left open at end of input [#2661](https://github.com/apache/datafusion-sqlparser-rs/pull/2661) (LucaCappelletti94) +- PostgreSQL, SQLite, DuckDB, MySQL: Accept keyword-like base window names in `OVER` [#2672](https://github.com/apache/datafusion-sqlparser-rs/pull/2672) (LucaCappelletti94) +- SQLite: Parse `&` and `|` at the same precedence [#2683](https://github.com/apache/datafusion-sqlparser-rs/pull/2683) (LucaCappelletti94) +- PostgreSQL: Parse schema-qualified keyword function calls [#2685](https://github.com/apache/datafusion-sqlparser-rs/pull/2685) (LucaCappelletti94) +- DuckDB, MySQL, Spark, Databricks, Hive, ClickHouse: Accept string literal aliases only where each engine does [#2669](https://github.com/apache/datafusion-sqlparser-rs/pull/2669) (LucaCappelletti94) +- MySQL: Keep literal prefixes as identifiers after a period [#2688](https://github.com/apache/datafusion-sqlparser-rs/pull/2688) (LucaCappelletti94) +- SQLite: Accept fallback keywords as implicit column aliases [#2682](https://github.com/apache/datafusion-sqlparser-rs/pull/2682) (LucaCappelletti94) +- SQLite: Bind <, <=, > and >= tighter than = [#2678](https://github.com/apache/datafusion-sqlparser-rs/pull/2678) (LucaCappelletti94) +- Accept `VALUE` as a synonym of `VALUES` only in MySQL [#2662](https://github.com/apache/datafusion-sqlparser-rs/pull/2662) (LucaCappelletti94) +- SQLite, DuckDB, PostgreSQL: Accept `._name` after whitespace in a qualified name [#2677](https://github.com/apache/datafusion-sqlparser-rs/pull/2677) (LucaCappelletti94) +- PostgreSQL: Display the index operator class before the sort options [#2663](https://github.com/apache/datafusion-sqlparser-rs/pull/2663) (LucaCappelletti94) +- Tokenize `~~` as `LIKE` only in PostgreSQL, Redshift and DuckDB [#2659](https://github.com/apache/datafusion-sqlparser-rs/pull/2659) (LucaCappelletti94) +- SQLite: Support signed and decimal numbers in type modifiers [#2557](https://github.com/apache/datafusion-sqlparser-rs/pull/2557) (LucaCappelletti94) +- SQLite: Parse the `BETWEEN` lower bound up to its `AND` [#2664](https://github.com/apache/datafusion-sqlparser-rs/pull/2664) (LucaCappelletti94) +- PostgreSQL, DuckDB, Spark, Databricks: Accept a comparison in the `BETWEEN` lower bound [#2665](https://github.com/apache/datafusion-sqlparser-rs/pull/2665) (LucaCappelletti94) +- PostgreSQL: Accept a signed CONNECTION LIMIT in CREATE ROLE and ALTER ROLE [#2731](https://github.com/apache/datafusion-sqlparser-rs/pull/2731) (LucaCappelletti94) +- PostgreSQL: Parse hexadecimal, octal and binary integer literals [#2758](https://github.com/apache/datafusion-sqlparser-rs/pull/2758) (LucaCappelletti94) +- PostgreSQL: Parse a word after an interval value that is not a PostgreSQL field as an alias [#2775](https://github.com/apache/datafusion-sqlparser-rs/pull/2775) (LucaCappelletti94) +- SQLite: Reject colon-based semi-structured data traversal [#2613](https://github.com/apache/datafusion-sqlparser-rs/pull/2613) (LucaCappelletti94) +- PostgreSQL: Parse untyped column entries in `CREATE TABLE ... PARTITION OF` [#2766](https://github.com/apache/datafusion-sqlparser-rs/pull/2766) (LucaCappelletti94) + +**Other:** + +- Redshift: Support APPROXIMATE PERCENTILE_DISC [#2480](https://github.com/apache/datafusion-sqlparser-rs/pull/2480) (BenSatori) +- Postgres: Fix parsing of COLLATE after :: cast [#2490](https://github.com/apache/datafusion-sqlparser-rs/pull/2490) (BenSatori) +- Add NOTICE file [#2496](https://github.com/apache/datafusion-sqlparser-rs/pull/2496) (alamb) +- Databricks: support INSERT BY NAME [#2403](https://github.com/apache/datafusion-sqlparser-rs/pull/2403) (finchxxia) +- Fuzz: Replace honggfuzz harness with cargo-fuzz [#2520](https://github.com/apache/datafusion-sqlparser-rs/pull/2520) (LucaCappelletti94) +- PostgreSQL: Render prefix @ operator with a space [#2531](https://github.com/apache/datafusion-sqlparser-rs/pull/2531) (LucaCappelletti94) +- Render prefix ~ operator with a space [#2533](https://github.com/apache/datafusion-sqlparser-rs/pull/2533) (LucaCappelletti94) +- Fix unary minus rendering into -- line comments [#2532](https://github.com/apache/datafusion-sqlparser-rs/pull/2532) (LucaCappelletti94) +- Fuzz: Wire up ClusterFuzzLite CI fuzzing [#2527](https://github.com/apache/datafusion-sqlparser-rs/pull/2527) (LucaCappelletti94) +- Fuzz: Display roundtrip [#2528](https://github.com/apache/datafusion-sqlparser-rs/pull/2528) (LucaCappelletti94) +- Separate the LAMBDA keyword syntax from the -> lambda syntax [#2458](https://github.com/apache/datafusion-sqlparser-rs/pull/2458) (adriangb) +- Fuzz: Add curated seed corpus [#2530](https://github.com/apache/datafusion-sqlparser-rs/pull/2530) (LucaCappelletti94) +- Add dialect labeler [#2517](https://github.com/apache/datafusion-sqlparser-rs/pull/2517) (LucaCappelletti94) +- CI: Run push workflows only on main and release branches [#2548](https://github.com/apache/datafusion-sqlparser-rs/pull/2548) (LucaCappelletti94) +- CI: Cancel superseded pull request runs [#2547](https://github.com/apache/datafusion-sqlparser-rs/pull/2547) (LucaCappelletti94) +- ClickHouse: Support FIRST | AFTER column position in ALTER TABLE [#2535](https://github.com/apache/datafusion-sqlparser-rs/pull/2535) (s5dsn-eqee) +- CI: Add Codecov coverage job with cargo-llvm-cov [#2565](https://github.com/apache/datafusion-sqlparser-rs/pull/2565) (LucaCappelletti94) +- Differential Fuzzing (1/3): Check `SQLiteDialect` against SQLite's own parser [#2562](https://github.com/apache/datafusion-sqlparser-rs/pull/2562) (LucaCappelletti94) +- Differential Fuzzing (2/3): Check `PostgreSqlDialect` against PostgreSQL's own grammar [#2563](https://github.com/apache/datafusion-sqlparser-rs/pull/2563) (LucaCappelletti94) +- Differential Fuzzing (3/3): Check `DuckDbDialect` against DuckDB's own parser [#2564](https://github.com/apache/datafusion-sqlparser-rs/pull/2564) (LucaCappelletti94) +- Snowflake: Parse structured ARRAY types [#2488](https://github.com/apache/datafusion-sqlparser-rs/pull/2488) (osipovartem) +- Postgres: Support TRIM FROM syntax [#2493](https://github.com/apache/datafusion-sqlparser-rs/pull/2493) (BenSatori) +- Replace benchmark flamegraph.svg with png [#2497](https://github.com/apache/datafusion-sqlparser-rs/pull/2497) (alamb) +- Run the dialect labeler on pull request pushes and reopens [#2550](https://github.com/apache/datafusion-sqlparser-rs/pull/2550) (LucaCappelletti94) +- Snowflake: parse ORDER BY ALL [#2502](https://github.com/apache/datafusion-sqlparser-rs/pull/2502) (osipovartem) +- Snowflake: preserve reluctant MATCH_RECOGNIZE quantifiers [#2510](https://github.com/apache/datafusion-sqlparser-rs/pull/2510) (osipovartem) +- Snowflake: parse nested COPY transformation paths [#2518](https://github.com/apache/datafusion-sqlparser-rs/pull/2518) (osipovartem) +- Refactor: replace `dialect_of!` table partition check with `Dialect` trait method [#2526](https://github.com/apache/datafusion-sqlparser-rs/pull/2526) (jerguslejko) +- ClickHouse: Support ALTER TABLE ... MODIFY ORDER BY [#2569](https://github.com/apache/datafusion-sqlparser-rs/pull/2569) (jordiori) +- Check in Cargo.lock [#2482](https://github.com/apache/datafusion-sqlparser-rs/pull/2482) (alamb) +- Databricks: support collated data types [#2553](https://github.com/apache/datafusion-sqlparser-rs/pull/2553) (EthanVieira) +- Enable GitHub Discussions [#2581](https://github.com/apache/datafusion-sqlparser-rs/pull/2581) (LucaCappelletti94) +- Ignore libFuzzer worker logs in fuzz/ [#2583](https://github.com/apache/datafusion-sqlparser-rs/pull/2583) (LucaCappelletti94) +- Remove homepage metadata duplicating repository [#2582](https://github.com/apache/datafusion-sqlparser-rs/pull/2582) (LucaCappelletti94) +- PostgreSQL: Support CREATE FOREIGN TABLE [#2515](https://github.com/apache/datafusion-sqlparser-rs/pull/2515) (fmguerreiro) +- Snowflake: Parse structured OBJECT types [#2489](https://github.com/apache/datafusion-sqlparser-rs/pull/2489) (osipovartem) +- ClickHouse: Support tuple element access by index [#2574](https://github.com/apache/datafusion-sqlparser-rs/pull/2574) (s5dsn-eqee) +- MSSQL: Support PROC as CREATE PROCEDURE abbreviation [#2448](https://github.com/apache/datafusion-sqlparser-rs/pull/2448) (t8y2) +- PostgreSQL: Remove test `parse_create_table_with_inherit` [#2595](https://github.com/apache/datafusion-sqlparser-rs/pull/2595) (LucaCappelletti94) +- Bump bigdecimal from 0.4.10 to 0.4.11 [#2602](https://github.com/apache/datafusion-sqlparser-rs/pull/2602) (dependabot[bot]) +- Update SECURITY policy to conform to ASF guidelines [#2601](https://github.com/apache/datafusion-sqlparser-rs/pull/2601) (alamb) +- Gate fuzz oracle targets behind features [#2585](https://github.com/apache/datafusion-sqlparser-rs/pull/2585) (LucaCappelletti94) +- Add a fuzz target that flags superlinear parsing and printing [#2580](https://github.com/apache/datafusion-sqlparser-rs/pull/2580) (LucaCappelletti94) +- ClickHouse: Support GLOBAL IN / GLOBAL NOT IN [#2598](https://github.com/apache/datafusion-sqlparser-rs/pull/2598) (s5dsn-eqee) +- ci: raise the merge queue status check timeout to 360 minutes [#2638](https://github.com/apache/datafusion-sqlparser-rs/pull/2638) (alamb) +- MySQL: Add support for `ZEROFILL` on numeric data types [#2636](https://github.com/apache/datafusion-sqlparser-rs/pull/2636) (davisjc) +- Postgres: support OVERRIDING { SYSTEM | USER } VALUE in INSERT [#2626](https://github.com/apache/datafusion-sqlparser-rs/pull/2626) (zvonimir-dd) +- Bump serde_json from 1.0.151 to 1.0.154 [#2637](https://github.com/apache/datafusion-sqlparser-rs/pull/2637) (dependabot[bot]) +- Deny `clippy::manual_assert_eq` [#2644](https://github.com/apache/datafusion-sqlparser-rs/pull/2644) (LucaCappelletti94) +- Parser: Fix array suffixes after a `>>` that closes two nested types [#2643](https://github.com/apache/datafusion-sqlparser-rs/pull/2643) (kdn36) +- Commit the fuzz crate's Cargo.lock [#2647](https://github.com/apache/datafusion-sqlparser-rs/pull/2647) (LucaCappelletti94) +- Deny `clippy::should_panic_without_expect` [#2648](https://github.com/apache/datafusion-sqlparser-rs/pull/2648) (LucaCappelletti94) +- Postgres: Support aliases for JOIN USING [#2492](https://github.com/apache/datafusion-sqlparser-rs/pull/2492) (BenSatori) +- Deny `clippy::ignore_without_reason` [#2652](https://github.com/apache/datafusion-sqlparser-rs/pull/2652) (LucaCappelletti94) +- Deny `clippy::allow_attributes` and `allow_attributes_without_reason` [#2653](https://github.com/apache/datafusion-sqlparser-rs/pull/2653) (LucaCappelletti94) +- replaces the hard-coded dialect list in the tokenizer with a `supports_hash_comment` dialect method [#2674](https://github.com/apache/datafusion-sqlparser-rs/pull/2674) (s5dsn-eqee) +- Docs: Require a fuzz seed per bug fix in AGENTS.md [#2690](https://github.com/apache/datafusion-sqlparser-rs/pull/2690) (s5dsn-eqee) +- Snowflake: Support ALTER TABLE ADD COLUMN IF NOT EXISTS [#2639](https://github.com/apache/datafusion-sqlparser-rs/pull/2639) (sabir-akhadov-localstack) +- CI: Remove ClusterFuzzLite from PR, daily schedule only. [#2697](https://github.com/apache/datafusion-sqlparser-rs/pull/2697) (LucaCappelletti94) +- CI: Use a Python release available on Ubuntu 26.04 for RAT [#2711](https://github.com/apache/datafusion-sqlparser-rs/pull/2711) (LucaCappelletti94) +- CI: Prepare required checks for lint consolidation [#2704](https://github.com/apache/datafusion-sqlparser-rs/pull/2704) (LucaCappelletti94) +- CI: Reduce redundant Rust checks [#2703](https://github.com/apache/datafusion-sqlparser-rs/pull/2703) (LucaCappelletti94) +- Capture the `COPY ... FROM STDIN` payload verbatim [#2428](https://github.com/apache/datafusion-sqlparser-rs/pull/2428) (LucaCappelletti94) +- Reject unquoted reserved keywords as table names [#2633](https://github.com/apache/datafusion-sqlparser-rs/pull/2633) (LucaCappelletti94) +- Add ordered bind placeholder dialect metadata [#2457](https://github.com/apache/datafusion-sqlparser-rs/pull/2457) (LucaCappelletti94) +- PostgreSQL: parse `ALTER TRIGGER RENAME TO` and `DEPENDS ON EXTENSION` [#2430](https://github.com/apache/datafusion-sqlparser-rs/pull/2430) (LucaCappelletti94) +- Spark: Share CACHE TABLE parsing [#2714](https://github.com/apache/datafusion-sqlparser-rs/pull/2714) (LucaCappelletti94) +- MySQL: Remove duplicate string-introducer arm [#2716](https://github.com/apache/datafusion-sqlparser-rs/pull/2716) (LucaCappelletti94) +- MSSQL: Share alias keyword exclusions [#2717](https://github.com/apache/datafusion-sqlparser-rs/pull/2717) (LucaCappelletti94) +- PostgreSQL: Share operator-function formatting [#2721](https://github.com/apache/datafusion-sqlparser-rs/pull/2721) (LucaCappelletti94) +- Parser: Share foreign-key reference clause parsing [#2715](https://github.com/apache/datafusion-sqlparser-rs/pull/2715) (LucaCappelletti94) +- MySQL, Spark: Share DIV parsing [#2718](https://github.com/apache/datafusion-sqlparser-rs/pull/2718) (LucaCappelletti94) +- PostgreSQL: Share operator-purpose parsing [#2719](https://github.com/apache/datafusion-sqlparser-rs/pull/2719) (LucaCappelletti94) +- MySQL: Share column primary-key parsing [#2720](https://github.com/apache/datafusion-sqlparser-rs/pull/2720) (LucaCappelletti94) +- Tests: Share quoted-identifier assertions [#2722](https://github.com/apache/datafusion-sqlparser-rs/pull/2722) (LucaCappelletti94) +- Bump libduckdb-sys from 1.10506.1 to 1.20000.0 in /fuzz [#2726](https://github.com/apache/datafusion-sqlparser-rs/pull/2726) (dependabot[bot]) +- Bump libsqlite3-sys from 0.38.2 to 0.39.1 in /fuzz [#2754](https://github.com/apache/datafusion-sqlparser-rs/pull/2754) (dependabot[bot]) +- PostgreSQL: Parse namespaced storage parameters [#2743](https://github.com/apache/datafusion-sqlparser-rs/pull/2743) (LucaCappelletti94) +- CI: Make the coverage check advisory [#2792](https://github.com/apache/datafusion-sqlparser-rs/pull/2792) (LucaCappelletti94) +- PostgreSQL: Support column OPTIONS in CREATE FOREIGN TABLE [#2755](https://github.com/apache/datafusion-sqlparser-rs/pull/2755) (LucaCappelletti94) + +## Credits + +Thank you to everyone who contributed to this release. Here is a breakdown of commits (PRs merged) per contributor. + +``` + 141 Luca Cappelletti Review Comment: 🤑 @LucaCappelletti94 -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
