This is an automated email from the ASF dual-hosted git repository.
aminghadersohi pushed a change to branch sc-119163-mcp-gauge-gap-fixes
in repository https://gitbox.apache.org/repos/asf/superset.git
from 307f84d5bc2 fix(mcp): preserve raw Gauge rows and refine preview
geometry
add 87f138cc80a docs(mcp): add theme management tools to AI/MCP tools
reference (#43899)
add df3abe474c4 docs(theming): document new component sizing tokens and
HIDE_NAVBAR_LOGO (#43639)
add 7d09490bb82 fix(security): grant SQL Lab query authors an explore
access bypass (#39296) (#42590)
add 0db9ca74012 chore(deps): bump @ant-design/icons from 6.3.2 to 6.3.3 in
/docs (#43951)
add 7c9c32651c7 chore(deps): bump react-error-boundary from 6.1.3 to 6.1.4
in /superset-frontend (#43959)
add 07052752b68 chore(deps-dev): bump tsx from 4.23.12 to 4.23.13 in
/superset-frontend (#43958)
add b8fb5a268c9 chore(deps): bump zod from 4.4.3 to 4.5.4 in
/superset-frontend (#43957)
add e5e6d748195 chore(deps-dev): bump webpack from 5.110.1 to 5.110.2 in
/superset-frontend (#43956)
add a5377541c92 chore(deps): bump zizmorcore/zizmor-action from 0.6.2 to
0.6.3 (#43954)
add 06913244de4 chore(deps-dev): bump webpack from 5.110.1 to 5.110.2 in
/docs (#43952)
add 4eff13b81e9 chore(deps-dev): bump webpack from 5.110.0 to 5.110.2 in
/superset-embedded-sdk (#43953)
add 92bd2ba0572 chore(deps): bump @ant-design/icons from 6.3.2 to 6.3.3 in
/superset-frontend (#43955)
add 53070fa4c04 fix(dashboard): resolve metric Label in Chart Data (View
as table) results grid (#43719)
add 4440887dc2b fix(security): use self-repository syntax for
setup-backend action ref (#43968)
add 233f6379ae5 fix(ci): use self-repository syntax for supersetbot setup
in tag-release (#43965)
add d22069a7af3 fix(security): use GitHub self-repository syntax for local
action refs (#43969)
add 574d121cd86 fix(security): use self-repository uses syntax in
supersetbot workflow (#43962)
add 8d6044a1475 fix(sqllab): wrap cost-estimate JSON parse to prevent raw
JSONDecodeError leak (#43888)
add 1fb6b989413 fix: downgrade md5 namespace-fallback deprecation log to
info (#43884)
add 1b3758d2a4d ci: add ASF GitHub Actions allowlist check (#43844)
add bd3ab309073 chore(deps): bump @ant-design/icons from 6.3.3 to 6.3.4 in
/superset-frontend (#43982)
add 89786160f97 chore(deps): bump @ant-design/icons from 6.3.3 to 6.3.4 in
/docs (#43981)
add cdb6c8e0c90 chore(deps-dev): bump the typescript-eslint group in
/superset-frontend with 2 updates (#43980)
add c4e145b071f fix(sql_lab): raise 400 not 500 on malformed Jinja during
CSV export access check (#43866)
add 7d0cf1acfc8 docs(scarf-404): replace dead links by the Scarf homepage
(#43973)
add 7382ee0bfec fix(dashboard): prevent header metadata bar from
overlapping action buttons at narrow widths (#43845)
add ad319bd8a3c fix(docs): unbreak Netlify docs preview build (#44001)
add 056fd218d44 fix: handle missing table element in downloadAsPivotExcel
(#39386)
add 08694d64cb8 fix(plugin-chart-table): declare DataTable hooks before
the early return (#43150)
add 204ccc7ce7f fix(datasets): apply Schema filter on the combined
datasource list (#43829)
add 33c6df77c99 fix(database): don't reattach stored connection details
when the effective destination changes (#44003)
add c45fc6a31a2 feat(embedded): diagnose guest-token header size budgets
(#43944)
add 57eafd75e0c docs(handlebars): correct helper names that are not
registered (#44020)
add 067a356b6f0 fix(chart): include echart_options in Matrixify
render-trigger allowlist (#43946)
add 3ccab2ea7aa fix(time-format): share DateWithFormatter and stop reading
four-digit years as epoch offsets (#43909)
add a114b4cc468 fix(import): skip redundant has_table check when dataset
import has no data URI (#43808)
add 85ea6e900a4 docs(mcp): document MCP_STATELESS_HTTP and its multi-pod
tradeoff (#43902)
add 60553b4326a docs(ag-grid): document Show summary support for Raw
Records mode (#43905)
add 7029c468c4d fix(reports): bound CSV transport retries and sanitize
failures (#43977)
add bc35151350c docs(handlebars): correct helper names in the 6.1.0
versioned docs (#44024)
add 04ab089962f chore(deps): bump @swc/html from 1.15.43 to 1.16.2 in
/docs in the security group across 1 directory (#44023)
add 5986fe92c2f fix(rls): roll back db.session after RLS failure in
get_from_clause (#43883)
add e6d088d6b1b fix(mcp): surface rejected filter columns in get_chart_sql
(#43680)
add f8962a5d69a Merge master into Gauge follow-up, preserving query error
checks
add dfeb3922517 fix(mcp): distinguish non-finite values from null in XLSX
exports
No new revisions were added by this update.
Summary of changes:
.github/actions/change-detector/label-draft-pr.yml | 23 --
.github/actions/setup-docker/action.yml | 6 +-
.github/workflows/asf-allowlist-check.yml | 46 ++++
.github/workflows/github-action-validator.yml | 2 +-
.github/workflows/superset-translations.yml | 12 +-
.github/workflows/supersetbot.yml | 2 +-
.github/workflows/tag-release.yml | 2 +-
.pre-commit-config.yaml | 2 +-
docs/admin_docs/configuration/alerts-reports.mdx | 33 +++
docs/admin_docs/configuration/mcp-server.mdx | 5 +-
docs/admin_docs/configuration/theming.mdx | 124 +++++++++
docs/admin_docs/installation/docker-compose.mdx | 2 +-
docs/admin_docs/installation/kubernetes.mdx | 2 +-
.../version-6.1.0/installation/docker-compose.mdx | 2 +-
.../version-6.1.0/installation/kubernetes.mdx | 2 +-
.../creating-your-first-dashboard.mdx | 9 +
docs/docs/using-superset/embedding.mdx | 48 ++++
docs/docs/using-superset/handlebars-chart.mdx | 76 ++++--
.../docs/using-superset/using-ai-with-superset.mdx | 8 +
docs/netlify.toml | 7 +-
docs/package.json | 4 +-
.../version-6.0.0/installation/docker-compose.mdx | 2 +-
.../version-6.0.0/installation/kubernetes.mdx | 2 +-
.../using-superset/handlebars-chart.mdx | 76 ++++--
docs/yarn.lock | 235 ++++++----------
superset-embedded-sdk/package-lock.json | 8 +-
superset-embedded-sdk/package.json | 2 +-
superset-frontend/package-lock.json | 160 +++++------
superset-frontend/package.json | 6 +-
.../superset-ui-chart-controls/package.json | 2 +-
.../packages/superset-ui-core/package.json | 4 +-
.../src/chart/components/StatefulChart.test.tsx | 98 +++++++
.../src/chart/components/StatefulChart.tsx | 30 +++
.../PageHeaderWithActions.stories.tsx | 102 +++++++
.../PageHeaderWithActions.test.tsx | 19 +-
.../src/components/PageHeaderWithActions/index.tsx | 6 +-
.../src/time-format}/DateWithFormatter.ts | 13 +-
.../superset-ui-core/src/time-format/index.ts | 1 +
.../src/time-format/utils/stringifyTimeInput.ts | 15 +-
.../test/time-format}/DateWithFormatter.test.ts | 23 +-
.../time-format/utils/stringifyTimeInput.test.ts | 23 ++
.../src/transformProps.ts | 2 +-
.../src/utils/formatValue.ts | 2 +-
.../src/utils/useColDefs.ts | 7 +-
...rmatter.test.ts => formatDurationValue.test.ts} | 23 +-
.../plugins/plugin-chart-echarts/package.json | 2 +-
.../src/react-pivottable/TableRenderers.tsx | 34 +--
.../test/react-pivottable/tableRenders.test.tsx | 39 +++
.../plugin-chart-table/src/DataTable/DataTable.tsx | 154 ++++++-----
.../plugins/plugin-chart-table/src/TableChart.tsx | 2 +-
.../plugin-chart-table/src/transformProps.ts | 2 +-
.../src/utils/DateWithFormatter.ts | 62 -----
.../plugin-chart-table/src/utils/formatValue.ts | 2 +-
.../test/DataTable/DataTable.test.tsx | 129 +++++++++
.../plugin-chart-table/test/TableChart.test.tsx | 2 +-
...rmatter.test.ts => formatDurationValue.test.ts} | 23 +-
.../ChartContextMenu/ChartContextMenu.test.tsx | 70 ++++-
.../Chart/ChartContextMenu/ChartContextMenu.tsx | 11 +-
.../SliceHeaderControls.test.tsx | 114 ++++++++
.../components/SliceHeaderControls/index.tsx | 15 +-
.../src/embedded/guestTokenDiagnostics.test.ts | 101 +++++++
.../src/embedded/guestTokenDiagnostics.ts | 71 +++++
superset-frontend/src/embedded/index.test.tsx | 191 ++++++++++---
superset-frontend/src/embedded/index.tsx | 46 +++-
.../src/hooks/apiResources/datasets.test.ts | 115 +++++++-
.../src/hooks/apiResources/datasets.ts | 52 +++-
superset-frontend/src/hooks/usePermissions.ts | 1 +
superset-frontend/src/types/bootstrapTypes.ts | 5 +-
.../src/utils/downloadAsPivotExcel.test.ts | 19 ++
.../src/utils/downloadAsPivotExcel.ts | 7 +
superset/commands/database/exceptions.py | 29 ++
superset/commands/database/importers/v1/utils.py | 60 ++---
superset/commands/database/test_connection.py | 41 ++-
superset/commands/database/update.py | 87 ++++++
superset/commands/database/utils.py | 96 +++++++
superset/commands/database/validate.py | 47 +++-
superset/commands/dataset/importers/v1/utils.py | 34 ++-
superset/commands/datasource/list.py | 112 +++++++-
superset/commands/explore/get.py | 50 +++-
superset/commands/report/chart_data.py | 194 ++++++++++++++
superset/commands/report/execute.py | 91 ++++---
superset/commands/sql_lab/estimate.py | 14 +-
superset/commands/sql_lab/export.py | 10 +
superset/common/query_actions.py | 78 ++++--
superset/config.py | 6 +
superset/daos/database.py | 17 +-
superset/daos/datasource.py | 4 +
superset/datasets/api.py | 2 +
superset/datasets/schemas.py | 50 ++--
superset/embedded/view.py | 7 +-
superset/explore/utils.py | 7 +-
superset/key_value/utils.py | 6 +-
superset/mcp_service/chart/chart_helpers.py | 70 +++++
superset/mcp_service/chart/tool/get_chart_data.py | 68 +----
superset/mcp_service/chart/tool/get_chart_sql.py | 19 +-
superset/models/helpers.py | 13 +-
superset/security/api.py | 24 +-
superset/security/guest_token.py | 19 ++
superset/security/manager.py | 68 +++++
superset/tasks/scheduler.py | 16 +-
superset/utils/csv.py | 9 +-
tests/integration_tests/datasets/api_tests.py | 60 ++++-
tests/integration_tests/datasource/api_tests.py | 62 +++++
tests/integration_tests/embedded/test_view.py | 17 +-
.../explore/form_data/commands_tests.py | 186 ++++++++++++-
tests/integration_tests/reports/commands_tests.py | 109 +++++++-
tests/integration_tests/sql_lab/commands_tests.py | 16 ++
.../charts/commands/data/test_get_data_command.py | 15 +-
.../commands/databases/test_connection_test.py | 60 +++++
tests/unit_tests/commands/databases/update_test.py | 297 ++++++++++++++++++++
.../unit_tests/commands/databases/validate_test.py | 205 ++++++++++++++
tests/unit_tests/commands/datasource/list_test.py | 224 ++++++++++++++++
.../explore/test_get_query_authorship_bypass.py | 93 +++++++
.../unit_tests/commands/report/chart_data_test.py | 298 +++++++++++++++++++++
tests/unit_tests/commands/report/execute_test.py | 148 +++++++++-
tests/unit_tests/commands/sql_lab/test_estimate.py | 42 +++
tests/unit_tests/common/test_query_actions.py | 97 +++++++
tests/unit_tests/dao/datasource_test.py | 31 +++
.../databases/commands/importers/v1/import_test.py | 43 +++
.../datasets/commands/importers/v1/import_test.py | 142 ++++++++++
tests/unit_tests/datasets/schema_tests.py | 95 +++++++
tests/unit_tests/explore/utils_test.py | 117 ++++++++
tests/unit_tests/key_value/utils_test.py | 12 +-
.../mcp_service/chart/tool/test_get_chart_data.py | 45 +++-
.../mcp_service/chart/tool/test_get_chart_sql.py | 102 +++++++
.../models/test_virtual_dataset_format.py | 25 ++
.../unit_tests/security/guest_token_audit_test.py | 87 ++++++
.../tasks/test_scheduler_soft_timeout.py | 44 ++-
tests/unit_tests/utils/csv_tests.py | 27 +-
129 files changed, 5663 insertions(+), 931 deletions(-)
delete mode 100644 .github/actions/change-detector/label-draft-pr.yml
create mode 100644 .github/workflows/asf-allowlist-check.yml
create mode 100644
superset-frontend/packages/superset-ui-core/src/components/PageHeaderWithActions/PageHeaderWithActions.stories.tsx
rename superset-frontend/{plugins/plugin-chart-ag-grid-table/src/utils =>
packages/superset-ui-core/src/time-format}/DateWithFormatter.ts (82%)
copy superset-frontend/{plugins/plugin-chart-table/test/utils =>
packages/superset-ui-core/test/time-format}/DateWithFormatter.test.ts (65%)
rename
superset-frontend/plugins/plugin-chart-ag-grid-table/test/utils/{DateWithFormatter.test.ts
=> formatDurationValue.test.ts} (63%)
delete mode 100644
superset-frontend/plugins/plugin-chart-table/src/utils/DateWithFormatter.ts
create mode 100644
superset-frontend/plugins/plugin-chart-table/test/DataTable/DataTable.test.tsx
rename
superset-frontend/plugins/plugin-chart-table/test/utils/{DateWithFormatter.test.ts
=> formatDurationValue.test.ts} (63%)
create mode 100644 superset-frontend/src/embedded/guestTokenDiagnostics.test.ts
create mode 100644 superset-frontend/src/embedded/guestTokenDiagnostics.ts
create mode 100644 superset/commands/report/chart_data.py
create mode 100644
tests/unit_tests/commands/explore/test_get_query_authorship_bypass.py
create mode 100644 tests/unit_tests/commands/report/chart_data_test.py