sqlparser-rs 0.63.0 Changelog

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

Implemented enhancements:

  • feat: add PostgreSQL EXCLUDE constraint parsing #2307 (fmguerreiro)

Other:

  • Databricks: Add support for UPDATE SET * and INSERT * in MERGE statements #2325 (finchxxia)
  • Snowflake: Fix COPY INTO transformation parsing for cast expressions #2328 (97nitt)
  • Snowflake: Accept COPY GRANTS after CREATE VIEW column list #2327 (97nitt)
  • Fix panic in EscapeQuotedString and parse_flush, clean up a few unwraps #2330 (Mrmaxmeier)
  • Teradata: Add CREATE TABLE options #2329 (iffyio)
  • Add support for PostgreSQL's ORDER BY ... USING clause #2246 (LucaCappelletti94)
  • BigQuery: Parse WITH CONNECTION on CREATE EXTERNAL TABLE #2326 (97nitt)
  • Add ASYNC keyword support for CREATE INDEX #2302 (amaksimo)
  • PostgreSQL: add support for ABORT TRANSACTION #2332 (sunng87)
  • Snowflake: Add support for PUT #2341 (ramnes)
  • Make visitor feature no_std-compatible #2343 (LucaCappelletti94)
  • Parser: fix exponential parse time on compound chains #2344 (LucaCappelletti94)
  • MySQL: Add support for group by with rollup #2347 (yoavcloud)
  • Hive: Support MAP<K, V> column types #2346 (wugeer)
  • Snowflake: Add support for CREATE FILE FORMAT #2336 (ramnes)
  • Expose Parser::into_comments #2354 (xitep)
  • Improve accuracy of supports_string_literal_concatenation_with_newline #2348 (yoavcloud)
  • Spark: enable SQL pipe operator (|>) #2358 (moshap-firebolt)
  • Support multiple targets for SELECT INTO #2360 (iffyio)
  • Fix issue #2353: Incorrect canonicalization of NATURAL JOIN #2355 (revitalkr)
  • Microsoft sql server: Escape quotes in national string display #2365 (lovasoa)
  • Parser: fix exponential parse time on compound keyword chains #2350 (LucaCappelletti94)
  • Parser: fix exponential parse time on speculative prefix parsing #2352 (LucaCappelletti94)
  • Support aliased function arguments (expr AS name) #2368 (LucaCappelletti94)
  • Forbid unsafe code #2369 (LucaCappelletti94)
  • sqlite: Support GLOB operator #2362 (connyay)
  • Parser: fix exponential parse time on table-factor paren chains #2372 (moshap-firebolt)
  • Disable supports_left_associative_joins_without_parens for MySQL and Redshift #2357 (revitalkr)
  • Add PostgreSQL CREATE/ALTER TEXT SEARCH DDL Parsing #2250 (LucaCappelletti94)
  • Do not consume statement terminator in unparenthesized option lists #2376 (LucaCappelletti94)
  • Parse ALTER USER as a synonym for ALTER ROLE #2374 (LucaCappelletti94)
  • Add pre_visit_ident / post_visit_ident hooks to the Visitor trait #2370 (sabir-akhadov-localstack)
  • Handle nested parentheses in INSERT subquery detection #2387 (sabir-akhadov-localstack)
  • PostgreSQL UNLOGGED Table Support and ALTER TABLE ... SET LOGGED|UNLOGGED #2251 (LucaCappelletti94)
  • ClickHouse: Support unparenthesized IN right-hand side #2385 (dinmukhamedm)
  • Parser: fix exponential parse time on expression-named function arguments #2392 (moshap-firebolt)
  • CI: Add cargo audit security workflow #2373 (LucaCappelletti94)
  • Postgres: parse LIMIT after the row-locking clause #2391 (truffle-dev)
  • Fix clippy lints for Rust 1.97 #2402 (takaebato)
  • PostgreSQL: support right-deep join chains (deferred ON clauses) #2377 (moshap-firebolt)
  • Dialects: implement identifier_quote_style for remaining dialect #2401 (takaebato)
  • Support inline aggregate WHERE filter (AGG(expr WHERE cond)) #2404 (moshap-firebolt)
  • Snowflake: parse CREATE WAREHOUSE #2388 (sabir-akhadov-localstack)
  • PostgreSQL: Support SQL standard ARRAY keyword in type declarations #2356 (LucaCappelletti94)
  • Accept CREATE OR REPLACE SCHEMA #2396 (sabir-akhadov-localstack)
  • ClickHouse: Fix MATERIALIZED column option docs typo #2410 (Hashim1999164)
  • Adding support for IS JSON & IS NOT JSON #2256 (LucaCappelletti94)
  • Support numeric underscore separators for DuckDB and SQLite #2412 (nuno-faria)
  • Add visitors for ORDER BY and GROUP BY #2406 (rs-sac)
  • PostgreSQL: support INCLUDE on PRIMARY KEY / UNIQUE table constraints #2366 (amaksimo)
  • Honour operator precedence in SQLite REGEXP, MATCH and GLOB #2419 (LucaCappelletti94)
  • Add recursion checks for parse_interval #2422 (shuvamk)
  • Added support for unpivot in Redshift with expression and bracketsless #2375 (kfirSatori)
  • Add XMLPARSE expression #2371 (LucaCappelletti94)
  • BigQuery: enable FROM-first SELECT #2439 (moshap-firebolt)
  • Reject invalid numeric underscore separators #2426 (fyrsta7)
  • Keep the quoting and span of a function argument name #2447 (LucaCappelletti94)
  • Improved AGENTS.md to address the problematics of slop PRs & reviews #2444 (LucaCappelletti94)
  • Support PostgreSQL's RESET SESSION AUTHORIZATION #2413 (LucaCappelletti94)
  • Support NO INHERIT modifier on CHECK constraints #2435 (LucaCappelletti94)
  • Print GRANT clauses in the order the parser reads them #2415 (LucaCappelletti94)
  • Inline Word::to_ident #2427 (fyrsta7)
  • Parse REVOKE GRANT OPTION FOR #2431 (LucaCappelletti94)
  • Redshift: allow INTERVAL as a column name #2456 (BenSatori)
  • Honour operator precedence in IS [NOT] DISTINCT FROM #2436 (zvonimir-dd)
  • Stop printing a trailing space after PUBLIC in GRANT and REVOKE #2416 (LucaCappelletti94)
  • PostgreSQL: Allow non-reserved keywords as table aliases #2479 (BenSatori)
  • Honour operator precedence in MySQL and Spark DIV #2471 (zvonimir-dd)
  • MySQL: print a space before PARTITION when displaying a table factor #2423 (shuvamk)
  • Preserve numeric compound field access display #2463 (LucaCappelletti94)
  • Visit CreateView name as a relation #2442 (sabir-akhadov-localstack)
  • Apply recursion limit without std #2465 (LucaCappelletti94)
  • Parse PostgreSQL MERGE DO NOTHING actions #2468 (LucaCappelletti94)
  • Add recursion checks for parse_data_type #2411 (iffyio)
  • Parse expression-valued LIKE ESCAPE clauses #2476 (lovasoa)
  • Databricks: enable query and nested type syntax #2478 (EthanVieira)
  • Visit function clauses in source order #2477 (lovasoa)
  • Update sqlparser_derive to syn 3.0 #2483 (alamb)

Credits

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

    26	Luca Cappelletti
     9	Andrew Lamb
     6	Mosha Pasumansky
     5	sabir-akhadov-localstack
     3	Corey Fritz
     3	Ifeanyi Ubah
     3	Ophir LOJKINE
     2	Aleksandar Maksimovic
     2	Ben Herzberg
     2	Guillaume Gelin
     2	Shuvam Kumar
     2	Takahiro Ebato
     2	Yoav Cohen
     2	Yuwei Zhao
     2	Zvonimir
     2	revitalkr
     1	Connor Hindley
     1	Dinmukhamed Mailibay
     1	Ethan Vieira
     1	Filipe Guerreiro
     1	Hashim Khan
     1	Mrmaxmeier
     1	Ning Sun
     1	Nuno Faria
     1	Sidney Cammeresi
     1	Truffle
     1	finchxxia
     1	kfirSatori
     1	wugeer
     1	xitep

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