Port Arroyo patches to sqlparser 0.62 - #3
Merged
QnJ1c2kNCg merged 5 commits intoSep 17, 2026
Merged
Conversation
Preserve PostgreSQL-style expressions and Arroyo capabilities using dialect hooks instead of additional concrete dialect checks. Keep Arroyo type identity so generated columns do not require STORED; cover this behavior with a PostgreSQL comparison regression. Ported-from: 32b9bbe Ported-from: 83877ac
Preserve optional watermark expressions, constraint spans and formatting. Gate the syntax with a dialect capability, enabled for Arroyo and Generic; cover missing syntax, named constraints and PostgreSQL rejection. Ported-from: 2279ac9
Retain the metadata key and its source span, with a capability gate checked before consuming tokens. Cover escaped keys, round trips, malformed input and rejection by PostgreSQL. Ported-from: 8c1c36b
Retain the arroyo_partitions AST field and builder conversions for Iceberg transforms and identity partitions. Keep the existing clause position after table options, preserving upstream Hive partition column parsing. Include source spans and regression tests for round trips, builder conversions, dialect boundaries and malformed clauses. Ported-from: 7086ac7
cmackenzie1
approved these changes
Sep 17, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR takes the patches from our internal fork and applies them to a clean sqlparser 0.62 branch.
The original custom commits can be found here. I find that it's easiest to review the PR with the original commits next to it.
Colonprecedence, and capabilities already supplied upstreamSTOREDin the Arroyo dialectSTOREDWATERMARK FOR column [AS expr]table constraintsMETADATA FROMcolumn options with key spans and escapingPARTITIONED BYexpressions following table options8c009b7: A new commit addressing Clippy warnings introduced by Rust 1.98
Testing
Validated with the full sqlparser test suite, formatting, strict Clippy, and a 70-case compatibility corpus in default and bigdecimal modes; 69/70 cases pass, with the sole failure reproduced in stock 0.62 as an existing BigQuery formatter bug.