This is an automated email from the ASF dual-hosted git repository.
rusackas pushed a change to branch chore/lint-cleanup-function-components
in repository https://gitbox.apache.org/repos/asf/superset.git
discard 89951c33a34 fix(DatasourceEditor): break infinite re-render loop in
function component conversion
discard bd04c9f903e fix: apply linter auto-fixes and add missing closing div
discard 2b394f3e861 fix: resolve rebase conflict residue in DatasourceEditor
discard 3a07e04add7 fix(lint): resolve no-use-before-define errors and restore
Chart test behavior
discard 2c5ba0f33f7 fix(pivot-table): use correct react-icons import path
discard 60aef70e444 fix(types): make SuperChart theme prop optional
discard 3dbab681af9 fix: add missing theme prop to SuperChart in story files
discard db1b107f193 fix: address bot review comments for function component
conversion
discard 759b072d1d8 style: apply prettier formatting fixes
discard 2d1a9513735 fix(tests): remove unused dashboardStateActions import
discard 878a52bcf20 fix(tests): update SaveModal tests for function component
conversion
discard ddf0c90dd6d fix(tests): skip TableRenderer tests pending FC refactoring
discard 8944f5a976c fix: add theme prop to SuperChart instances in src/ files
discard 27ada4c0f45 fix(storybook): add theme prop to all SuperChart instances
in stories
discard c51e90c3d6c fix(tests): add theme prop to SuperChart test instances
discard 68a6ac0ebe3 fix: address code review comments from bot
discard 56163b20c48 fix(StatefulChart): pass theme prop to SuperChart
discard 717ee206bcd chore(lint): convert class components to function
components
add 8eb30468884 fix(docs): guard window reference in logging.ts for SSR
compatibility (#38201)
add b8459c15b86 chore(deps-dev): bump @typescript-eslint/parser from
8.56.0 to 8.56.1 in /docs (#38211)
add f60432e34cf fix: Allow non-owners to fave/unfave charts (#38095)
add fca8a495611 feat: auto refresh dashboard (#37459)
add 974bee14c3e fix(extensions): make LOCAL_EXTENSIONS loading resilient
to individual failures (#38217)
add 7b04d251d60 fix(build): restore automatic .d.ts generation in dev mode
(#38202)
add 35c135852e8 feat(extensions): add mandatory publisher field to
extension metadata (#38200)
add 0d66accc377 chore(build): prevent opening Dependabot PRs for `@rjsf/*`
deps due to React 18 constraint (#37976)
add 97b8585fe5d chore(deps-dev): bump typescript-eslint from 8.56.0 to
8.56.1 in /docs (#38209)
add aa475734ef9 chore(deps-dev): bump eslint from 9.39.2 to 10.0.2 in
/superset-websocket (#38204)
add e4a7cd30c34 fix(GAQ): don't use async queries when cache timeout is -1
(#38089)
add 76a2559b2b8 fix(ci): revert "chore(deps): bump
JustinBeckwith/linkinator-action from 2.3 to 2.4" (#38164)
add 4809903bb80 chore(deps): bump markdown-to-jsx from 9.7.4 to 9.7.6 in
/superset-frontend (#38225)
add 9e4a88dfa2b chore(deps): bump antd from 6.3.0 to 6.3.1 in /docs
(#38221)
add 01c1b2eb8f0 chore(deps-dev): bump @types/lodash from 4.17.23 to
4.17.24 in /superset-frontend (#38224)
add 5eb35a47957 fix(reports): validate database field on PUT report
schedule (#38084)
add 1cd35bb1029 feat(mcp): dynamic feature availability via menus and
feature flags (#37964)
add 30849079318 feat(mcp): support unsaved state in Explore and Dashboard
tools (#37183)
add a1312a86e88 fix(mcp): normalize column names to fix time series filter
prompt issue (#37187)
add b543358d2f5 chore(deps-dev): bump @swc/core from 1.15.11 to 1.15.13 in
/superset-frontend (#38237)
add 1b605c4ddad chore(deps): bump fs-extra from 11.3.2 to 11.3.3 in
/superset-frontend (#38234)
add 79b2647481b chore(deps): bump @swc/core from 1.15.11 to 1.15.13 in
/docs (#38207)
add 37a46370181 chore(deps-dev): bump typescript-eslint from 8.56.0 to
8.56.1 in /superset-websocket (#38203)
add 438a9274206 chore(deps-dev): bump oxlint from 1.49.0 to 1.50.0 in
/superset-frontend (#38240)
add c54b21ef988 fix(mcp): add eager loading to get_info tools to prevent
N+1 query timeouts (#38129)
add cc1128a404a feat(mcp): add response size guard to prevent oversized
responses (#37200)
add eef4d95c229 fix(mcp): add dataset validation for chart tools (#37185)
add abf0b7cf4b8 fix(mcp): use broad Exception in outermost tool-level
handlers (#38254)
add 26053a8b5d3 fix(alert-modal): show the add filter button on firefox
(#38093)
add d4f34e0a474 chore(lint): convert class components to function
components
add 68860711761 fix(StatefulChart): pass theme prop to SuperChart
add 4923ee2fa98 fix: address code review comments from bot
add 023bed6b94b fix(tests): add theme prop to SuperChart test instances
add 38e27245e8c fix(storybook): add theme prop to all SuperChart instances
in stories
add fbd859fd04c fix: add theme prop to SuperChart instances in src/ files
add b38f123fec0 fix(tests): skip TableRenderer tests pending FC refactoring
add a8662d44e0f fix(tests): update SaveModal tests for function component
conversion
add d9eaacbdbd1 fix(tests): remove unused dashboardStateActions import
add e92bc222283 style: apply prettier formatting fixes
add 442feb7574a fix: address bot review comments for function component
conversion
add 68055720ada fix: add missing theme prop to SuperChart in story files
add a4222cab494 fix(types): make SuperChart theme prop optional
add d8c1b68372b fix(pivot-table): use correct react-icons import path
add 1a5dcdf2342 fix(lint): resolve no-use-before-define errors and restore
Chart test behavior
add 43359650b6d fix: resolve rebase conflict residue in DatasourceEditor
add e9e0b201eab fix: apply linter auto-fixes and add missing closing div
add 9717d9bb8ec fix(DatasourceEditor): break infinite re-render loop in
function component conversion
This update added new revisions after undoing existing revisions.
That is to say, some revisions that were in the old version of the
branch are not in the new version. This situation occurs
when a user --force pushes a change and generates a repository
containing something like this:
* -- * -- B -- O -- O -- O (89951c33a34)
\
N -- N -- N refs/heads/chore/lint-cleanup-function-components
(9717d9bb8ec)
You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.
Any revisions marked "omit" are not gone; other references still
refer to them. Any revisions marked "discard" are gone forever.
No new revisions were added by this update.
Summary of changes:
.github/dependabot.yml | 1 +
.github/workflows/superset-docs-verify.yml | 2 +-
docs/developer_portal/extensions/quick-start.md | 73 +-
docs/package.json | 8 +-
docs/yarn.lock | 309 ++++---
.../src/superset_core/extensions}/constants.py | 27 +-
.../src/superset_core/extensions/types.py | 26 +-
.../src/superset_extensions_cli/cli.py | 197 +++--
.../templates/extension.json.j2 | 8 +-
.../templates/frontend/package.json.j2 | 2 +-
.../templates/frontend/webpack.config.js.j2 | 2 +-
.../src/superset_extensions_cli/types.py | 25 +-
.../src/superset_extensions_cli/utils.py | 226 ++++--
superset-extensions-cli/tests/conftest.py | 39 +-
superset-extensions-cli/tests/test_cli_build.py | 85 +-
superset-extensions-cli/tests/test_cli_bundle.py | 19 +-
superset-extensions-cli/tests/test_cli_dev.py | 29 +-
superset-extensions-cli/tests/test_cli_init.py | 158 ++--
.../tests/test_name_transformations.py | 834 ++++++++++---------
superset-extensions-cli/tests/test_templates.py | 138 ++--
superset-frontend/package-lock.json | 268 +++----
superset-frontend/package.json | 6 +-
.../packages/superset-core/package.json | 2 +-
.../packages/superset-core/src/utils/logging.ts | 3 +-
.../packages/superset-ui-core/package.json | 2 +-
.../src/components/Icons/AntdEnhanced.tsx | 10 +-
.../plugin-chart-echarts/src/BigNumber/types.ts | 1 +
.../plugin-chart-echarts/src/Graph/buildQuery.ts | 21 +-
.../plugin-chart-echarts/src/Heatmap/Heatmap.tsx | 3 +-
.../plugin-chart-echarts/src/Sankey/buildQuery.ts | 19 +-
.../plugin-chart-echarts/src/Timeseries/types.ts | 1 +
.../plugin-chart-echarts/src/Tree/buildQuery.ts | 15 +-
.../src/Tree/transformProps.ts | 10 +-
.../src/Treemap/EchartsTreemap.tsx | 2 +-
.../plugin-chart-echarts/src/Treemap/buildQuery.ts | 16 +-
.../plugin-chart-echarts/src/components/Echart.tsx | 30 +-
.../plugins/plugin-chart-echarts/src/types.ts | 1 +
.../src/utils/orderby.test.ts} | 19 +-
.../plugin-chart-echarts/src/utils/orderby.ts | 51 ++
.../plugin-chart-echarts/src/utils/series.ts | 6 +-
.../test/Graph/buildQuery.test.ts | 2 +
.../test/Timeseries/transformProps.test.ts | 2 +-
.../test/Tree/buildQuery.test.ts | 33 +-
.../plugin-chart-echarts/test/utils/series.test.ts | 2 +-
.../plugins/plugin-chart-handlebars/package.json | 2 +-
.../src/plugin/buildQuery.ts | 17 +-
superset-frontend/src/components/Chart/Chart.tsx | 23 +-
.../src/components/Chart/ChartRenderer.test.tsx | 70 +-
.../src/components/Chart/ChartRenderer.tsx | 21 +-
.../src/components/Chart/chartAction.ts | 24 +-
.../src/components/Chart/chartReducer.ts | 8 +
.../src/components/Chart/chartReducers.test.ts | 30 +-
.../src/dashboard/actions/autoRefresh.ts | 124 +++
.../src/dashboard/actions/dashboardState.test.ts | 164 ++++
.../src/dashboard/actions/dashboardState.ts | 63 +-
superset-frontend/src/dashboard/actions/hydrate.ts | 2 +
.../components/AutoRefreshIndicator/index.tsx | 169 ++++
.../AutoRefreshStatus/StatusIndicatorDot.test.tsx | 114 +++
.../AutoRefreshStatus/StatusIndicatorDot.tsx | 168 ++++
.../StatusTooltipContent.test.tsx | 180 +++++
.../AutoRefreshStatus/StatusTooltipContent.tsx | 178 +++++
.../components/FiltersBadge/FiltersBadge.test.tsx | 251 ++++--
.../dashboard/components/FiltersBadge/index.tsx | 27 +-
.../dashboard/components/Header/Header.test.tsx | 128 ++-
.../src/dashboard/components/Header/index.tsx | 383 ++++-----
.../src/dashboard/components/Header/types.ts | 26 +-
.../Header/useHeaderActionsDropdownMenu.tsx | 13 +-
.../components/Header/useHeaderAutoRefresh.ts | 410 ++++++++++
.../dashboard/components/PropertiesModal/index.tsx | 18 +-
.../PropertiesModal/sections/RefreshSection.tsx | 2 +-
.../dashboard/components/RefreshButton/index.tsx | 81 ++
.../{index.ts => RefreshFrequencySelect.test.tsx} | 25 +-
.../RefreshFrequency/RefreshFrequencySelect.tsx | 67 +-
.../dashboard/components/RefreshIntervalModal.tsx | 81 +-
.../components/gridComponents/Chart/Chart.tsx | 5 +-
.../components/gridComponents/Tab/Tab.test.tsx | 2 +
.../components/gridComponents/Tab/Tab.tsx | 17 +-
.../src/dashboard/containers/DashboardPage.tsx | 15 +-
.../dashboard/contexts/AutoRefreshContext.test.tsx | 137 ++++
.../src/dashboard/contexts/AutoRefreshContext.tsx | 101 +++
.../hooks/useAutoRefreshTabPause.test.tsx | 378 +++++++++
.../src/dashboard/hooks/useAutoRefreshTabPause.ts | 146 ++++
.../src/dashboard/hooks/useCurrentTime.test.ts | 182 +++++
.../src/dashboard/hooks/useCurrentTime.ts | 67 ++
.../dashboard/hooks/useRealTimeDashboard.test.ts | 175 ++++
.../src/dashboard/hooks/useRealTimeDashboard.ts | 245 ++++++
.../src/dashboard/hooks/useTabVisibility.test.ts | 175 ++++
.../src/dashboard/hooks/useTabVisibility.ts | 102 +++
.../dashboard/reducers/autoRefreshReducer.test.ts | 246 ++++++
.../src/dashboard/reducers/dashboardState.ts | 81 ++
superset-frontend/src/dashboard/types.ts | 16 +-
.../src/dashboard/types/autoRefresh.ts | 64 ++
.../src/features/alerts/AlertReportModal.tsx | 43 +-
superset-frontend/webpack.config.js | 21 +-
superset-websocket/package-lock.json | 888 ++++++++++-----------
superset-websocket/package.json | 4 +-
superset/charts/data/api.py | 19 +-
superset/commands/chart/fave.py | 8 -
superset/commands/chart/unfave.py | 8 -
superset/commands/report/exceptions.py | 12 +
superset/commands/report/update.py | 18 +-
superset/daos/base.py | 11 +-
superset/daos/database.py | 6 +-
superset/extensions/api.py | 35 +-
superset/extensions/utils.py | 36 +-
superset/mcp_service/CLAUDE.md | 37 +
superset/mcp_service/app.py | 4 +
superset/mcp_service/chart/chart_utils.py | 120 ++-
superset/mcp_service/chart/schemas.py | 68 +-
superset/mcp_service/chart/tool/generate_chart.py | 33 +-
superset/mcp_service/chart/tool/get_chart_data.py | 146 +++-
superset/mcp_service/chart/tool/get_chart_info.py | 96 ++-
.../mcp_service/chart/tool/get_chart_preview.py | 73 +-
.../chart/validation/dataset_validator.py | 153 +++-
superset/mcp_service/chart/validation/pipeline.py | 86 +-
.../mcp_service}/constants.py | 6 +-
superset/mcp_service/dashboard/schemas.py | 43 +-
.../dashboard/tool/get_dashboard_info.py | 114 ++-
.../mcp_service/dataset/tool/get_dataset_info.py | 12 +
.../explore/tool/generate_explore_link.py | 15 +-
superset/mcp_service/mcp_config.py | 49 ++
superset/mcp_service/mcp_core.py | 24 +-
superset/mcp_service/middleware.py | 170 ++++
superset/mcp_service/server.py | 12 +-
superset/mcp_service/system/schemas.py | 22 +
superset/mcp_service/system/system_utils.py | 29 +
.../mcp_service/system/tool/get_instance_info.py | 2 +
superset/mcp_service/utils/token_utils.py | 424 ++++++++++
superset/reports/schemas.py | 2 +-
tests/integration_tests/charts/commands_tests.py | 17 +-
tests/integration_tests/reports/api_tests.py | 294 ++++++-
.../unit_tests/commands/report}/__init__.py | 0
tests/unit_tests/commands/report/update_test.py | 254 ++++++
tests/unit_tests/extensions/test_types.py | 108 ++-
.../mcp_service/chart/test_chart_utils.py | 101 ++-
.../validation/test_column_name_normalization.py | 681 ++++++++++++++++
.../explore/tool/test_generate_explore_link.py | 149 ++++
.../mcp_service/system/test_system_utils.py | 60 ++
.../system/tool/test_get_current_user.py | 2 +
.../mcp_service/system/tool/test_mcp_core.py | 4 +-
tests/unit_tests/mcp_service/test_mcp_config.py | 9 +
tests/unit_tests/mcp_service/test_middleware.py | 343 ++++++++
.../mcp_service/utils/test_token_utils.py | 358 +++++++++
143 files changed, 10784 insertions(+), 2201 deletions(-)
copy {superset/mcp_service/dashboard =>
superset-core/src/superset_core/extensions}/constants.py (53%)
copy superset-frontend/{src/explore/exploreUtils/getLegacyEndpointType.test.ts
=> plugins/plugin-chart-echarts/src/utils/orderby.test.ts} (65%)
create mode 100644
superset-frontend/plugins/plugin-chart-echarts/src/utils/orderby.ts
create mode 100644 superset-frontend/src/dashboard/actions/autoRefresh.ts
create mode 100644
superset-frontend/src/dashboard/components/AutoRefreshIndicator/index.tsx
create mode 100644
superset-frontend/src/dashboard/components/AutoRefreshStatus/StatusIndicatorDot.test.tsx
create mode 100644
superset-frontend/src/dashboard/components/AutoRefreshStatus/StatusIndicatorDot.tsx
create mode 100644
superset-frontend/src/dashboard/components/AutoRefreshStatus/StatusTooltipContent.test.tsx
create mode 100644
superset-frontend/src/dashboard/components/AutoRefreshStatus/StatusTooltipContent.tsx
create mode 100644
superset-frontend/src/dashboard/components/Header/useHeaderAutoRefresh.ts
create mode 100644
superset-frontend/src/dashboard/components/RefreshButton/index.tsx
copy superset-frontend/src/dashboard/components/RefreshFrequency/{index.ts =>
RefreshFrequencySelect.test.tsx} (58%)
create mode 100644
superset-frontend/src/dashboard/contexts/AutoRefreshContext.test.tsx
create mode 100644
superset-frontend/src/dashboard/contexts/AutoRefreshContext.tsx
create mode 100644
superset-frontend/src/dashboard/hooks/useAutoRefreshTabPause.test.tsx
create mode 100644
superset-frontend/src/dashboard/hooks/useAutoRefreshTabPause.ts
create mode 100644 superset-frontend/src/dashboard/hooks/useCurrentTime.test.ts
create mode 100644 superset-frontend/src/dashboard/hooks/useCurrentTime.ts
create mode 100644
superset-frontend/src/dashboard/hooks/useRealTimeDashboard.test.ts
create mode 100644
superset-frontend/src/dashboard/hooks/useRealTimeDashboard.ts
create mode 100644
superset-frontend/src/dashboard/hooks/useTabVisibility.test.ts
create mode 100644 superset-frontend/src/dashboard/hooks/useTabVisibility.ts
create mode 100644
superset-frontend/src/dashboard/reducers/autoRefreshReducer.test.ts
create mode 100644 superset-frontend/src/dashboard/types/autoRefresh.ts
copy {superset-extensions-cli/src/superset_extensions_cli =>
superset/mcp_service}/constants.py (78%)
create mode 100644 superset/mcp_service/utils/token_utils.py
copy {superset-core/src/superset_core/api =>
tests/unit_tests/commands/report}/__init__.py (100%)
create mode 100644 tests/unit_tests/commands/report/update_test.py
create mode 100644
tests/unit_tests/mcp_service/chart/validation/test_column_name_normalization.py
create mode 100644 tests/unit_tests/mcp_service/system/test_system_utils.py
create mode 100644 tests/unit_tests/mcp_service/test_middleware.py
create mode 100644 tests/unit_tests/mcp_service/utils/test_token_utils.py