This is an automated email from the ASF dual-hosted git repository.
rusackas pushed a change to branch revamped-example-loading
in repository https://gitbox.apache.org/repos/asf/superset.git
from e07573baeac fix(examples): Convert virtual datasets to physical in
export
add 95c14b1fc17 chore(Matrixify): disable matrixify for incompatible viz
types (#37163)
add 9555798d37d fix(data-zoom): Data-zoom not rendered properly in
Matrixify (#37134)
add ab8df1ab345 fix: Move head_custom_extra above csrf token input (#37173)
add 54f19856de1 fix: HTML detection in tables (#37171)
add c30edaf075c feat: add tab select with save chart to dashboard (#36332)
add 4532ccf638d fix(mcp): push Flask app context in mcp_auth_hook for tool
execution (#37190)
add d0783da3e55 fix(mcp): Handle big_number charts and make semantic
warnings non-blocking (#37142)
add 2bcb66c2fc0 refactor(mcp): simplify single metric chart type check
(#37215)
add 4b1d92e5752 feat: add droppable area to tab empty state (#37210)
add 896947c7874 fix(mcp): restore select_columns filtering in list tools
(#37213)
add f4474b2e3e9 feat: Dynamic currency (#36416)
add b941be01cfc chore(deps-dev): bump @types/node from 25.0.8 to 25.0.9 in
/superset-websocket (#37193)
add 33ff127370d chore(deps-dev): bump baseline-browser-mapping from 2.9.9
to 2.9.14 in /superset-frontend (#37198)
add f00f7d1c18f chore(deps): bump ioredis from 5.9.0 to 5.9.2 in
/superset-websocket (#37194)
add a77c2d550c6 fix(mixed-timeseries): prevent duplicate legend entries
(#37217)
add f984dca5cc4 fix(sunburst): make Show Total text theme-aware (#37177)
add 6453980d8d0 chore(deps): bump react-error-boundary from 6.0.0 to 6.1.0
in /superset-frontend (#37206)
add cee5ce13e0e chore(deps-dev): bump @types/node from 25.0.3 to 25.0.9 in
/superset-frontend (#37196)
add a06e6eb6808 chore(deps): bump googleapis from 169.0.0 to 170.1.0 in
/superset-frontend (#37195)
add 4d462c76bdc chore(deps-dev): bump @types/urijs from 1.19.25 to 1.19.26
in /superset-frontend (#36636)
add 476e454384d chore(deps): update @deck.gl/extensions requirement from
~9.2.2 to ~9.2.5 in /superset-frontend/plugins/legacy-preset-chart-deckgl
(#36618)
add 39238ef8a9c feat(ag-grid-table): Enable Time Shift feature for AG Grid
Table (#37072)
add 2e29e33dd8e fix(calendar-heatmap): correct month display across
timezones (#37064)
add 2900258e051 fix(Dashboard): Auto-apply filters with default values
when extraForm… (#36927)
add c0cbbe393a0 feat(Matrixify): add matrixify tag to list view and
explore (#37247)
add 409cdad2648 fix(mcp): prevent MCP service from corrupting shared
appbuilder singleton (#37252)
add 4393db57d9f fix(native-filters): enable Apply button when selecting
Boolean FALSE value (#37017)
add f4597be341c fix(timeseries): x-axis last month was hidden (#37181)
add e4c036924a0 Merge origin/master into revamped-example-loading
add 1e04caf8aed chore(examples): Remove international_sales.py (needs
Parquet conversion)
No new revisions were added by this update.
Summary of changes:
superset-frontend/package-lock.json | 47 +--
superset-frontend/package.json | 6 +-
.../src/shared-controls/sharedControls.tsx | 3 +
.../superset-ui-chart-controls/src/types.ts | 1 +
.../packages/superset-ui-core/package.json | 4 +-
.../src/chart/components/FallbackComponent.tsx | 5 +-
.../src/chart/components/StatefulChart.test.tsx | 248 +++++++++++
.../src/chart/components/StatefulChart.tsx | 26 +-
.../CurrencyFormats.ts} | 4 +-
.../src/currency-format/CurrencyFormatter.ts | 88 +++-
.../superset-ui-core/src/currency-format/index.ts | 10 +-
.../Drawer => currency-format}/types.ts | 11 +-
.../superset-ui-core/src/currency-format/utils.ts | 129 +++++-
.../superset-ui-core/src/query/types/Datasource.ts | 1 +
.../src/query/types/QueryResponse.ts | 6 +
.../superset-ui-core/src/utils/html.test.tsx | 18 +
.../packages/superset-ui-core/src/utils/html.tsx | 129 +++---
.../chart/components/FallbackComponent.test.tsx | 9 +-
.../test/currency-format/CurrencyFormatter.test.ts | 31 ++
.../currency-format/analyzeCurrencyInData.test.ts} | 23 +-
.../currency-format/hasMixedCurrencies.test.ts} | 18 +-
.../currency-format/normalizeCurrency.test.ts} | 23 +-
.../legacy-plugin-chart-calendar/src/Calendar.js | 3 +-
.../legacy-plugin-chart-calendar/src/utils.ts | 10 +-
.../test/getFormattedUTCTime.ts | 28 --
.../test/utils.test.ts | 96 +++++
.../src/transformProps.js | 13 +-
.../legacy-preset-chart-deckgl/package.json | 4 +-
.../plugin-chart-ag-grid-table/src/buildQuery.ts | 6 +
.../src/controlPanel.tsx | 6 +-
.../src/transformProps.ts | 18 +-
.../BigNumberPeriodOverPeriod/transformProps.ts | 13 +-
.../src/BigNumber/BigNumberTotal/transformProps.ts | 16 +-
.../BigNumberWithTrendline/transformProps.ts | 11 +-
.../plugin-chart-echarts/src/BigNumber/types.ts | 2 +-
.../src/Funnel/transformProps.ts | 11 +-
.../src/Gauge/transformProps.ts | 6 +
.../src/Heatmap/transformProps.ts | 17 +-
.../src/MixedTimeseries/transformProps.ts | 54 ++-
.../plugin-chart-echarts/src/Pie/transformProps.ts | 13 +-
.../src/Sunburst/transformProps.ts | 12 +-
.../src/Timeseries/transformProps.ts | 33 +-
.../src/Treemap/transformProps.ts | 12 +-
.../test/BigNumber/transformProps.test.ts | 56 +++
.../test/Timeseries/transformProps.test.ts | 132 ++++++
.../test/Timeseries/transformers.test.ts | 49 ++-
.../src/PivotTableChart.tsx | 124 +++++-
.../src/plugin/transformProps.ts | 18 +-
.../src/react-pivottable/TableRenderers.jsx | 8 +-
.../src/react-pivottable/utilities.js | 56 ++-
.../plugins/plugin-chart-pivot-table/src/types.ts | 2 +
.../test/plugin/transformProps.test.ts | 189 +++++++++
.../plugins/plugin-chart-table/src/TableChart.tsx | 2 +-
.../plugin-chart-table/src/transformProps.ts | 35 +-
.../plugins/plugin-chart-table/src/types.ts | 1 +
.../plugin-chart-table/src/utils/formatValue.ts | 11 +-
.../plugin-chart-table/src/utils/isEqualColumns.ts | 3 +
.../test/utils/formatValue.test.ts | 155 +++++++
.../Datasource/DatasourceModal/index.tsx | 1 +
.../DatasourceEditor/DatasourceEditor.jsx | 183 ++++++---
.../tests/DatasourceEditor.test.tsx | 44 +-
.../tests/DatasourceEditorCurrency.test.tsx | 67 +++
.../dashboard/components/FiltersBadge/index.tsx | 53 +--
.../components/gridComponents/Tab/Tab.jsx | 86 ++--
.../components/gridComponents/Tab/Tab.test.tsx | 69 +++-
.../nativeFilters/FilterBar/FilterBar.test.tsx | 115 ++++++
.../components/nativeFilters/FilterBar/index.tsx | 49 ++-
.../FiltersConfigModal/FiltersConfigModal.test.tsx | 2 +-
superset-frontend/src/dashboard/constants.ts | 3 +
.../components/ControlPanelsContainer.test.tsx | 109 +++++
.../explore/components/ControlPanelsContainer.tsx | 14 +-
.../ExploreChartHeader/ExploreChartHeader.test.tsx | 28 ++
.../components/ExploreChartHeader/index.jsx | 6 +-
.../src/explore/components/SaveModal.test.jsx | 383 +++++++++++++++++
.../src/explore/components/SaveModal.tsx | 287 ++++++++++++-
.../ColumnConfigControl/ColumnConfigControl.tsx | 2 +
.../controls/ColumnConfigControl/constants.tsx | 2 +-
.../CurrencyControl.test.tsx} | 27 +-
.../controls/CurrencyControl/CurrencyControl.tsx | 80 +++-
superset-frontend/src/explore/types.ts | 19 +
superset-frontend/src/features/datasets/types.ts | 1 +
.../components/Select/SelectFilterPlugin.test.tsx | 457 ++++++++++++++++++++-
.../components/Select/SelectFilterPlugin.tsx | 2 +-
.../src/pages/ChartList/ChartList.test.tsx | 35 +-
.../src/pages/ChartList/ChartList.testHelpers.tsx | 13 +
superset-frontend/src/pages/ChartList/index.tsx | 23 +-
superset-websocket/package-lock.json | 28 +-
superset-websocket/package.json | 4 +-
superset/charts/schemas.py | 9 +
superset/common/query_actions.py | 65 +++
superset/common/query_context_factory.py | 34 ++
superset/connectors/sqla/models.py | 6 +-
superset/dashboards/schemas.py | 1 +
superset/datasets/api.py | 2 +
superset/datasets/schemas.py | 2 +
superset/mcp_service/auth.py | 83 ++--
superset/mcp_service/chart/tool/get_chart_data.py | 21 +-
superset/mcp_service/chart/tool/list_charts.py | 25 +-
.../chart/validation/runtime/__init__.py | 22 +-
.../mcp_service/dashboard/tool/list_dashboards.py | 25 +-
superset/mcp_service/dataset/tool/list_datasets.py | 25 +-
superset/mcp_service/flask_singleton.py | 82 ++--
...00_9787190b3d89_add_currency_column_support.py} | 23 +-
superset/superset_typing.py | 2 +
superset/templates/superset/spa.html | 7 +-
superset/utils/currency.py | 160 ++++++++
superset/views/core.py | 21 +-
superset/viz.py | 1 +
tests/integration_tests/datasets/commands_tests.py | 3 +
tests/integration_tests/fixtures/importexport.py | 1 +
.../common/test_query_actions_currency.py | 290 +++++++++++++
.../common/test_query_context_factory.py | 106 +++++
tests/unit_tests/connectors/sqla/models_test.py | 64 +++
tests/unit_tests/datasets/commands/export_test.py | 1 +
tests/unit_tests/datasets/schema_tests.py | 29 ++
.../mcp_service/chart/tool/test_get_chart_data.py | 130 +++++-
.../mcp_service/chart/validation}/__init__.py | 0
.../chart/validation/test_runtime_validator.py | 221 ++++++++++
tests/unit_tests/utils/currency_test.py | 332 +++++++++++++++
119 files changed, 5452 insertions(+), 598 deletions(-)
copy
superset-frontend/packages/superset-ui-core/src/{components/Divider/types.ts =>
currency-format/CurrencyFormats.ts} (90%)
copy superset-frontend/packages/superset-ui-core/src/{components/Drawer =>
currency-format}/types.ts (83%)
copy superset-frontend/{src/explore/exploreUtils/getLegacyEndpointType.test.ts
=>
packages/superset-ui-core/test/currency-format/analyzeCurrencyInData.test.ts}
(57%)
copy
superset-frontend/packages/{superset-ui-chart-controls/test/operators/utils/timeOffset.test.ts
=> superset-ui-core/test/currency-format/hasMixedCurrencies.test.ts} (60%)
copy
superset-frontend/packages/superset-ui-core/{src/components/Input/Input.test.tsx
=> test/currency-format/normalizeCurrency.test.ts} (61%)
delete mode 100644
superset-frontend/plugins/legacy-plugin-chart-calendar/test/getFormattedUTCTime.ts
create mode 100644
superset-frontend/plugins/legacy-plugin-chart-calendar/test/utils.test.ts
create mode 100644
superset-frontend/plugins/plugin-chart-table/test/utils/formatValue.test.ts
copy
superset-frontend/src/explore/components/controls/{DateFilterControl/tests/CurrentCalendarFrame.test.tsx
=> CurrencyControl/CurrencyControl.test.tsx} (62%)
copy
superset/migrations/versions/{2025-03-03_20-52_94e7a3499973_add_folders_column_to_dataset.py
=> 2025-11-18_14-00_9787190b3d89_add_currency_column_support.py} (66%)
create mode 100644 superset/utils/currency.py
create mode 100644 tests/unit_tests/common/test_query_actions_currency.py
copy {superset-core/src/superset_core/api =>
tests/unit_tests/mcp_service/chart/validation}/__init__.py (100%)
create mode 100644
tests/unit_tests/mcp_service/chart/validation/test_runtime_validator.py
create mode 100644 tests/unit_tests/utils/currency_test.py