You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 5216fce
Browse filesBrowse the repository at this point in the historyBrowse files
feat: expand native PostgreSQL expressions, queries, DML and DDL
Replace shallow handling of common PostgreSQL statements with validated,
traversable AST productions. Keep all production parsing inside ParserSQL;
libpg_query remains a test oracle, with no runtime dependency or fallback.
Add EXTRACT, SQL SUBSTRING/TRIM, time-zone expressions, interval qualifiers,
qualified operators, expression-valued type modifiers, ARRAY subqueries,
IS DISTINCT FROM, quantified comparison operands and NORMALIZE. Preserve
special datetime precision and MERGE_ACTION grammar while rejecting reserved
function names and malformed delimiters or wildcard operands.
Add grouping sets, ROLLUP/CUBE, grouping quantifiers, OFFSET/LIMIT ordering,
FETCH, table-function ordinality and typed output columns. Preserve ONLY and
explicit inheritance sources, nested WITH operands, quoted names and CASE
branches in reconstructed SQL. Enforce restricted FETCH/OFFSET ROWS operands.
Parse MERGE actions and RETURNING, modifying CTE bodies and main statements,
SEARCH/CYCLE, INSERT OVERRIDING and compound sources, assignment indirection,
and RETURNING options. Guard unsupported local DML/query semantics before
execution and propagate arena exhaustion instead of dropping syntax.
Add structured common table/schema/database creation, ALTER TABLE, DROP,
index/view/function/procedure/trigger definitions, privileges, TRUNCATE and
maintenance statements. Add explicit SQL/JSON and XML constructors, query
functions, aggregates and table columns, including behavior/default clauses.
Unsupported variants remain errors or incomplete input, not opaque AST tails.
Append statement/node kinds without changing the existing AST layout. Update
compatibility type mappings, focused positive/negative/AST tests, allocation
regressions and coverage documentation. Leave benchmark code/results and
benchmark-only README/.gitignore edits outside this commit.
Validation: force-rebuilt full GoogleTest suite and corpus runner, focused
ASan/UBSan grammar tests, PostgreSQL 18.4 parse/emit AST comparisons, malformed
input mutation checks and a replay of the pinned 51,415-statement corpus.
0 commit comments