Evan Rusackas
3e0f47afd1
fix: ODPS (MaxCompute) data source table preview failed
...
When using the ODPS (MaxCompute) data source, previewing partitioned
tables in SQLLab would fail because ODPS requires a partition to be
specified for partition tables.
This PR adds ODPS-specific handling:
- New OdpsEngineSpec with partition detection support
- Modified select_star to add partition filter for ODPS partition tables
- New Partition dataclass in sql/parse.py
- New is_odps_partitioned_table method in DatabaseDAO
Closes #32301
Co-Authored-By: zhutong6688 <zhutong66@163.com >
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
2026-02-23 19:19:44 -08:00
Evan Rusackas
c4eb7de6de
fix(excel): remove unwanted index column from Excel exports ( #38176 )
...
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com >
2026-02-23 08:28:40 -08:00
Vitor Avila
228b598409
feat: Labels for encrypted fields ( #38075 )
2026-02-23 13:23:33 -03:00
Amin Ghadersohi
6e94a6c21a
fix(mcp): fix dashboard chart placement with proper COLUMN layout and tab support ( #37970 )
...
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-23 16:41:10 +01:00
Amin Ghadersohi
2a3567d2f1
fix(mcp): Remove unsupported thumbnail/preview URLs and internal fields from MCP schemas ( #38109 )
2026-02-23 12:44:12 +01:00
Enzo Martellucci
b565128fe7
fix(charts): improve error display for failed charts in dashboards ( #37939 )
2026-02-20 15:14:48 -08:00
Ujjwaljain16
2d44f52ad1
fix(encryption): resolve SECRET_KEY lazily to fix silent re-encrypt-secrets failures ( #37982 )
2026-02-20 14:10:09 -08:00
wuqicyber
6f34ba7d4a
fix(table-chart): support orderby adhoc columns with server-side pagination ( #37521 )
2026-02-21 00:29:34 +03:00
Amin Ghadersohi
9f8b212ccc
feat(mcp): add LIKE, ILIKE, IN, NOT IN filter operators to MCP chart tools ( #38071 )
2026-02-20 11:56:40 +01:00
Amin Ghadersohi
1ecff6fe5c
fix(thumbnails): stabilize digest by sorting datasources and charts ( #38079 )
...
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-20 09:51:35 +01:00
Richard Fogaca Nienkotter
5278deaf63
fix(metrics): normalize legacy currency strings ( #37455 )
2026-02-19 21:25:44 -03:00
Kamil Gabryjelski
f5a5a804e2
perf(dashboard): skip thumbnail_url computing on single dashboard endpoint ( #38015 )
...
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-19 18:15:20 +01:00
Vitor Avila
9ec56f5f02
fix: Include app_root in next param ( #37942 )
2026-02-18 19:52:06 -03:00
Amin Ghadersohi
aec1f6edce
fix(mcp): use last data-bearing statement in execute_sql response ( #37968 )
...
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-17 13:13:55 +01:00
Amin Ghadersohi
f7218e7a19
feat(mcp): expose current user identity in get_instance_info and add created_by_fk filter ( #37967 )
2026-02-17 13:11:34 +01:00
Amin Ghadersohi
5cd829f13c
fix(mcp): handle more chart types in get_chart_data fallback query construction ( #37969 )
...
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-17 13:02:42 +01:00
Kamil Gabryjelski
3e3c9686de
perf(dashboard): Batch RLS filter lookups for dashboard digest computation ( #37941 )
2026-02-16 21:35:55 +01:00
Mehmet Salih Yavuz
7b21979fa3
fix(charts): Force refresh uses async mode when GAQ is enabled ( #37845 )
2026-02-16 21:45:10 +03:00
Türker Ziya Ercin
440602ef34
fix(utils): datetime_to_epoch function is fixed to timezone aware epoch ( #37979 )
2026-02-15 22:36:18 +07:00
Michael S. Molina
e3e2bece6b
feat(owners): display email in owner selectors ( #37906 )
2026-02-13 09:01:05 -03:00
Joe Li
6328e51620
test(examples): add tests for UUID threading and security bypass ( #37557 )
...
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com >
2026-02-12 14:12:12 -08:00
Jonathan Alberth Quispe Fuentes
88ce1425e2
fix(roles): optimize user fetching and resolve N+1 query issue ( #37235 )
2026-02-12 09:32:19 -08:00
Amin Ghadersohi
4dfece9ee5
feat(mcp): add event_logger instrumentation to MCP tools ( #37859 )
2026-02-12 16:50:20 +01:00
Amin Ghadersohi
3f64c25712
fix(mcp): Add database_name as valid filter column for list_datasets ( #37865 )
...
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-12 16:47:46 +01:00
Ville Brofeldt
00d02cb2ea
perf(gtf): improve task base filter ( #37900 )
2026-02-11 10:40:07 -08:00
Kamil Gabryjelski
26a2e12779
perf: fix N+1 query in Slice.datasource property ( #37899 )
2026-02-11 18:57:28 +01:00
Ville Brofeldt
255a0ada81
fix(gtf): add missing user_id to task commands ( #37867 )
2026-02-11 09:04:27 -08:00
Kamil Gabryjelski
98ca599eef
perf: fix N+1 query in chart list API when thumbnail_url is requested ( #37895 )
2026-02-11 17:19:48 +01:00
Luis Sánchez
88a14f2ba0
fix(FiltersBadge): world map wont show filter icon after refresh page ( #37260 )
2026-02-11 16:33:32 +03:00
Ville Brofeldt
74e1607010
fix(extensions): broken test ( #37871 )
2026-02-11 08:33:45 -03: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
Ville Brofeldt
0f1278fa61
fix(gtf): set dedup_key on atomic sql ( #37820 )
2026-02-10 06:56:14 -08:00
Ville Brofeldt
59dd2fa385
feat: add global task framework ( #36368 )
2026-02-09 10:45:56 -08:00
Amin Ghadersohi
15b3c96f8e
fix(security): Add table blocklist and fix MCP SQL validation bypass ( #37411 )
2026-02-09 14:12:06 +01:00
Alexandru Soare
9ea5ded988
fix(dashboard): Prevent fatal error when database connection is unavailable ( #37576 )
2026-02-06 20:52:17 -08:00
Amin Ghadersohi
01ac966b83
fix(mcp): remove html.escape to fix ampersand display in chart titles ( #37186 )
...
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com >
2026-02-05 19:49:37 -08:00
Amin Ghadersohi
47db185e3b
fix(mcp): include x_axis column in query context for series charts with group_by ( #37639 )
2026-02-05 19:59:44 +01:00
Amin Ghadersohi
4147d877fc
fix(mcp): prevent DATE_TRUNC on non-temporal columns in chart generation ( #37433 )
2026-02-05 09:24:31 -08:00
Amin Ghadersohi
a9dca529c1
fix(mcp): treat runtime validation warnings as informational, not errors ( #37214 )
...
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com >
2026-02-05 09:23:51 -08:00
Jamile Celento
2dfc770b0f
fix(native-filters): update TEMPORAL_RANGE filter subject when Time Column filter is applied ( #36985 )
2026-02-04 12:37:17 +03:00
Elizabeth Thompson
e9b494163b
refactor(db): use Dialect instead of Engine in select_star to avoid SSH tunnels ( #35540 )
...
Co-authored-by: Claude <noreply@anthropic.com >
2026-02-02 10:26:35 -08:00
Beto Dealmeida
5d20dc57d7
feat(oauth2): add PKCE support for database OAuth2 authentication ( #37067 )
2026-01-30 23:28:10 -05:00
Beto Dealmeida
05c2354997
feat: AWS Cross-Account IAM Authentication for Aurora ( #37585 )
2026-01-30 19:18:34 -05:00
Vitor Avila
6043e7e7e3
fix: more DB OAuth2 fixes ( #37398 )
2026-01-30 21:11:26 -03:00
Gabriel Torres Ruiz
06e4f4ff4c
fix(dashboard): catch DatasourceNotFound in get_datasets to prevent 404 ( #37503 )
2026-01-28 15:54:56 -08:00
Amin Ghadersohi
6663709a23
fix(mcp): tools not listed when JWT auth is enabled ( #37377 )
2026-01-28 11:20:20 +01:00
Amin Ghadersohi
e6d0f97aab
fix(mcp): always filter list responses by columns_requested ( #37505 )
2026-01-28 11:15:19 +01:00
Peng Ren
73d4332b51
feat(database): SIP-195 Add MongoDB database engine support ( #37368 )
...
Co-authored-by: Peng Ren <ia250@cummins.com >
2026-01-26 15:51:35 -08:00
Daniel Vaz Gaspar
290bcc1dbb
feat(cache): use configurable hash algorithm for flask-caching ( #37361 )
2026-01-26 10:19:51 -08:00
JUST.in DO IT
4db6f9e04c
chore(trino): Add progress_text for additional running state info ( #36909 )
2026-01-26 09:11:33 -08:00