sadpandajoe and Claude Sonnet 5
d86607a875
test(sql): cover new schema/catalog quoting and SHOW helpers
...
superset/sql/parse.py added has_quoted_table_location() and
is_show_statement()/has_show_statement() in a32225646c but the coverage
gate for tests/unit_tests/sql/ requires 100%; add direct unit tests
for the base-class defaults and the SQLStatement/SQLScript overrides.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com >
2026-08-19 21:25:12 +00:00
1e65d93a83
fix(sql): handle ORDER BY in embedded MSSQL queries ( #43127 )
...
Co-authored-by: Bexultan Mustafin <bexultan.mustafin@ffins.kz >
Co-authored-by: Amin Ghadersohi <amin.ghadersohi@gmail.com >
2026-08-14 14:07:10 -04:00
ʈᵃᵢ
b8ca729f9f
fix(sql): only force a LIMIT onto query expressions ( #43097 )
2026-08-13 10:43:45 -07:00
Evan Rusackas and Claude Code
ed696b9933
test(sql): pin optimizer hint blocks survive format() round-trip ( #38189 ) ( #42733 )
...
Co-authored-by: Claude Code <noreply@anthropic.com >
2026-08-12 14:49:55 -07:00
onheap and keyao_yang
a501fed560
fix(rls): handle same-named CTEs and quoted aliases in the SQL rewrite ( #43005 )
...
Co-authored-by: keyao_yang <keyao.yang@airbnb.com >
2026-08-12 10:38:36 -03:00
Evan Rusackas and Claude Code
b4f3fae288
fix(sql): guard FORCE_LIMIT against SHOW statements ( #36939 ) ( #42588 )
...
Co-authored-by: Claude Code <noreply@anthropic.com >
2026-08-11 23:33:15 -07:00
Evan Rusackas and Claude Opus 4.8
584466e02b
fix(sql-lab): improved SQL statement parsing and validation ( #42928 )
...
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com >
2026-08-11 19:35:43 -07:00
Shaitan and Claude Opus 4.8
b6504eb111
fix(sql): resolve schema/catalog-qualified table references in CTE detection ( #42717 )
...
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com >
2026-08-10 12:28:31 -07:00
Evan Rusackas and Claude Code
2f9bde5579
fix(sql): preserve quoted-identifier casing for the HANA dialect ( #39328 ) ( #42731 )
...
Co-authored-by: Claude Code <noreply@anthropic.com >
2026-08-04 20:39:35 -07:00
bcf0361a91
feat(KustoKQL): Add support for NULL / IS NOT NULL operator ( #37890 )
...
Co-authored-by: ag-ramachandran <ramacg@microsoft.com >
Co-authored-by: Joe Li <joe@preset.io >
2026-07-23 18:28:37 -07:00
Damian Pendrak
1392fbc9b2
fix(sql): validate Custom SQL metric has an aggregate under GROUP BY ( #42199 )
2026-07-22 09:28:57 +02:00
Evan Rusackas and Claude Sonnet 5
666b6805c4
test(sql): prove Oracle GROUP BY stays explicit for virtual-dataset charts ( #42255 )
...
Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com >
2026-07-21 09:59:34 -07:00
Evan Rusackas and Claude Code
7b0969131f
test(sql): prove ClickHouse parametric aggregates parse cleanly ( #37285 ) ( #41836 )
...
Co-authored-by: Claude Code <noreply@anthropic.com >
2026-07-07 08:53:49 -07:00
Evan Rusackas and Claude Code
de5a31a2cf
test(sql): prove Oracle GROUP BY is no longer rewritten to ordinals ( #35414 ) ( #41834 )
...
Co-authored-by: Claude Code <noreply@anthropic.com >
2026-07-07 08:53:05 -07:00
Evan Rusackas and Claude Code
2aa43f6f0f
fix(sql): stop sanitize_clause from rewriting user SQL semantics ( #36113 ) ( #41125 )
...
Co-authored-by: Claude Code <noreply@anthropic.com >
2026-07-06 18:03:26 -07:00
Shaitan and Claude Opus 4.8
2da2db6c7c
feat(sql): schema-qualified table denylist + information_schema/lo_* defaults ( #41120 )
...
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-07-01 16:57:45 +01:00
3651020014
fix(sql): cap parser input length via SQL_MAX_PARSE_LENGTH config ( #40499 )
...
Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com >
Co-authored-by: sha174n <pedro.sousa@preset.io >
Co-authored-by: Evan Rusackas <evan@preset.io >
2026-07-01 16:32:12 +01:00
215b207ae4
fix(sql): detect set operations and nested selects in subquery check ( #38452 )
...
Co-authored-by: sha174n <pedro.sousa@preset.io >
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-22 20:27:32 -07:00
Jean Dupuis
b2e5f80db2
fix(sql): preserve multi-arg DISTINCT in sanitize_clause and format ( #39340 )
2026-06-19 13:02:50 -07:00
6a1091d576
fix(sql): broaden mutating-statement detection in SQL Lab parser ( #40421 )
...
Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com >
Co-authored-by: sha174n <pedro.sousa@preset.io >
2026-06-16 15:07:34 -07:00
b85a2cdab1
fix: ODPS (MaxCompute) data source table preview failed ( #38174 )
...
Co-authored-by: zhutong6688 <zhutong66@163.com >
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com >
2026-06-05 17:57:44 -07:00
Shaitan and Claude Opus 4.7
56fd991efd
fix(dataset): unify validation for stored and adhoc SQL expressions ( #40392 )
...
Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com >
2026-06-03 12:55:50 +01:00
Shaitan and Claude Sonnet 4.6
f7f50a7977
fix(sqllab): quote CTAS target identifiers and validate tmp_table_name format ( #40245 )
...
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-03 12:55:25 +01:00
Shaitan and Claude Opus 4.7
6eaee211aa
fix(sqllab): require dataset match for raw query access ( #40409 )
...
Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com >
2026-06-02 21:50:27 +01:00
Evan Rusackas and Claude Code
b97d3ef520
fix(api,sql): use json_response in Api.query and log dialect fallback ( #40644 )
...
Co-authored-by: Claude Code <noreply@anthropic.com >
2026-06-02 11:48:46 -07:00
Evan Rusackas and Claude Code
c39a47cbac
test(sql-parser): pin WITH+UNION as non-mutating across dialects ( #25659 ) ( #40138 )
...
Co-authored-by: Claude Code <noreply@anthropic.com >
2026-05-20 10:08:21 -07:00
Alexandru Soare
b98bd2a07a
fix(mcp): Block destructive DDL (DROP, TRUNCATE, ALTER) in execute_sql ( #39621 )
2026-05-20 14:29:15 +03:00
Evan Rusackas and Claude Code
b5ad4a7a07
test(sql-parser): pin TimescaleDB hyperfunctions parse on postgresql ( #32028 ) ( #40142 )
...
Co-authored-by: Claude Code <noreply@anthropic.com >
2026-05-19 19:53:33 -07:00
Evan Rusackas and Claude Code
9bfa0642a1
test(sql-parser): pin quoted identifiers with spaces are not subqueries ( #32541 , #32684 ) ( #40143 )
...
Co-authored-by: Claude Code <noreply@anthropic.com >
2026-05-18 14:21:59 -07:00
Luiz Otavio
0b419a07f5
fix: add comments to SQL clause validation ( #39167 )
2026-04-16 09:19:39 -03:00
Beto Dealmeida
a854fa60a2
feat: apply RLS conservatively ( #38683 )
2026-03-17 10:20:09 -04:00
Michael S. Molina
c41942a38a
chore(deps): Upgrade sqlglot from 27.15.2 to 28.10.0 ( #37841 )
2026-02-10 13:13:11 -03:00
Amin Ghadersohi
15b3c96f8e
fix(security): Add table blocklist and fix MCP SQL validation bypass ( #37411 )
2026-02-09 14:12:06 +01:00
ankitajhanwar2001
d8f7ae83ee
fix(sqlglot): use Athena dialect for awsathena parsing ( #36747 )
2026-01-12 10:06:46 -08:00
Evan Rusackas and Claude
c7a4d4f2cc
fix(sql): handle backtick-quoted identifiers with base dialect ( #36545 )
...
Co-authored-by: Claude <noreply@anthropic.com >
2025-12-15 13:00:13 -08:00
Beto Dealmeida
f3e620cd0f
fix: RLS in virtual datasets ( #36061 )
2025-11-14 14:21:09 -05:00
Vitor Avila
6701d0ae0c
fix: Use singlestoredb dialect for sqlglot ( #36096 )
2025-11-13 16:10:55 -03:00
Beto Dealmeida
62dc5c0306
fix(cache): ensure SQL is sanitized before cache key generation ( #35419 )
2025-10-02 13:25:54 -04:00
Beto Dealmeida
5ec8f9d886
chore: bump sqlglot to 27.15.2 ( #35176 )
2025-09-22 12:40:16 -04:00
Michael S. Molina
e1234b2264
fix: User-provided Jinja template parameters causing SQL parsing errors ( #34802 )
2025-08-22 14:39:14 -03:00
Beto Dealmeida
6fc734da51
fix: prevent anonymous code in Postgres ( #34412 )
2025-07-31 08:33:34 -04:00
Beto Dealmeida
122bb68e5a
fix: subquery alias in RLS ( #34374 )
2025-07-28 22:58:15 -04:00
Đỗ Trọng Hải
1a54b761c1
feat(db): remove Rockset DB support ( #33929 )
2025-06-27 23:12:54 +07:00
Beto Dealmeida
404f7c1043
feat: initial Dremio sqlglot dialect ( #33847 )
2025-06-20 12:05:45 -07:00
Beto Dealmeida
edc60914f6
chore: 100% test coverage for SQL parsing ( #33568 )
2025-06-04 22:18:09 -04:00
Beto Dealmeida
a26e1d822a
chore: remove sqlparse ( #33564 )
2025-06-04 19:31:41 -04:00
Beto Dealmeida
ea5a609d0b
feat: implement CVAS/CTAS in sqlglot ( #33525 )
2025-05-28 09:45:59 -04:00
Beto Dealmeida
0abe6eed89
feat: implement RLS in sqlglot ( #33524 )
2025-05-28 09:10:45 -04:00
Beto Dealmeida
e205846845
feat: implement CTEs logic in sqlglot ( #33518 )
2025-05-28 08:38:00 -04:00
Beto Dealmeida
0fa3feb088
chore: remove parse_sql ( #33474 )
2025-05-27 18:03:55 -04:00