You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@superset.apache.org by ru...@apache.org on 2026/09/06 05:30:26 UTC
(superset) branch dependabot/npm_and_yarn/superset-frontend/testing-library/user-event-14.6.5 updated (e8164cb16f1 -> d31e374d8c9)
This is an automated email from the ASF dual-hosted git repository.
rusackas pushed a change to branch dependabot/npm_and_yarn/superset-frontend/testing-library/user-event-14.6.5
in repository https://gitbox.apache.org/repos/asf/superset.git
discard e8164cb16f1 test: await the userEvent interactions master added since the v14 migration
discard d2c09f71120 fix(tests): migrate frontend tests to @testing-library/user-event v14
discard fd4070ff074 chore(deps-dev): bump @testing-library/user-event in /superset-frontend
add cceb52e776f fix(embedded): don't let guest-user check turn error responses into 500s (#43834)
add 93df5bc3620 fix(semantic-layers): classify SemanticLayer/SemanticView in FAB role sets (#43783)
add 8d0637efadf fix(semantic-layers): serve filter-value suggestions for semantic views (#43777)
add 2aacf579323 chore(deps): bump antd from 6.6.1 to 6.6.2 in /superset-frontend (#43858)
add a6a794864bf chore(deps-dev): bump minimizer-webpack-plugin from 5.7.0 to 5.8.0 in /superset-frontend (#43857)
add 0e01b5fb4ca chore(deps): bump baseline-browser-mapping from 2.11.19 to 2.11.20 in /docs (#43851)
add 173d2173aaf chore(deps-dev): bump baseline-browser-mapping from 2.11.19 to 2.11.20 in /superset-frontend (#43856)
add 0fc410eeccd chore(deps-dev): bump @testing-library/react from 15.0.7 to 16.3.3 in /superset-frontend (#43855)
add 34286883d33 chore(deps): bump postcss from 8.5.23 to 8.5.26 in /superset-frontend (#43854)
add 0a5eddb18b0 chore(deps): bump morgan from 1.11.0 to 1.12.0 in /superset-websocket/utils/client-ws-app (#43850)
add a0685173932 chore(deps-dev): bump webpack from 5.109.2 to 5.110.1 in /superset-frontend (#43853)
add c84c7c4bdd2 chore(ci): optimize Dependabot processes (#43681)
add e9412576b20 feat(build/websocket): upgrade to Typescript 7 + migrate ESLint to TS7-compatible `oxlint` and`tsgolint` (#43703)
add 8f6caf4ff94 feat(build): upgrade to Typescript 7, Babel 8, Webpack CLI 7 and JSDOM 30 for `superset-embedded-sdk` (#43702)
add f63a0e9d9c7 feat(conditional-formatting): add manual min/max color-range bounds (#43820)
add 31a3a190373 chore(deps-dev): bump @types/node from 25.9.5 to 26.4.0 in /superset-embedded-sdk (#43881)
add d27124e5f6b chore(deps-dev): bump webpack-cli from 7.2.2 to 7.2.3 in /superset-embedded-sdk (#43882)
add 3b1e43be5c5 chore(deps-dev): bump css-loader from 7.1.4 to 7.1.5 in /superset-frontend (#43880)
add bc6ff77af01 feat(ci): broaden usage of fast-startup `ubuntu-slim` runner (#43477)
add d9b201db74c fix(explore): open version-history forks in a usable tab, not a blank one (#43830)
add 935ee5f1a65 chore(deps): bump simplejson from 4.1.1 to 4.1.2 (#43874)
add 592d378c0d6 chore(deps-dev): bump pandas-gbq from 0.35.1 to 0.35.2 (#43873)
add b925246befb chore(deps): bump click from 8.4.2 to 8.5.0 (#43872)
add b1c33e54353 chore(deps-dev): bump hdbcli from 2.29.25 to 2.29.27 (#43869)
add 297b0455f61 chore(deps): bump nh3 from 0.3.6 to 0.3.7 (#43868)
add db60f25ee9a chore(deps-dev): bump babel-jest from 30.4.1 to 30.5.0 in /superset-frontend (#43879)
add e1ce6b601c0 chore(deps-dev): bump jest-environment-jsdom from 30.4.1 to 30.5.0 in /superset-frontend (#43878)
add 635de27b259 fix(explore): prevent editable title over-truncation (#43811)
add 99a910b81c5 fix(echarts): render Plain Timeseries legends as HTML, not canvas (#43314)
add 0636ac4b114 fix(examples): correct chart metadata (#43810)
add 581ef8b7c18 chore(deps): bump antd from 6.6.1 to 6.6.2 in /docs (#43852)
add c1822666dac ci: fail when the published OpenAPI spec is stale (#43841)
add 6956da1de5d fix(sql): close StarRocks SQL parsing and mutation-detection gaps (#43809)
add c3109899e27 fix(dashboard): is_externally_managed still allows edits (#38584)
add 0d025daaf7e fix(plugin-chart-table): defer search until IME composition ends (#43756)
add ee03ee17199 test(treemap): pin border-free labels so tiles render without seams (#43890)
add 9fb02296d85 test(dashboard): migrate tabs resize E2E to Playwright (#41434)
add 67a417812d3 fix(reports): look up fetched report schedules by the list API id fields (#43365)
add db0af5c610e fix(embedded): guard guest payload check against scalar control values (#43577)
add 67605734320 fix(dashboard): show loading state on + Dashboard during the create navigation (#43683)
add b4325e2ce34 fix(handlebars): separate CSS style block from template with a blank line (#43722)
add ff90a60b09d fix(partition): normalize ancestor-path array names to leaf values (#43731)
add c1ca29fe09d fix(core): render duration values instead of NaN:NaN:NaN (#43839)
add b8cdebcaba2 chore(deps-dev): bump jest from 30.4.2 to 30.5.0 in /superset-frontend (#43877)
add ccfaa2302a5 chore(deps): bump slack-sdk from 3.43.0 to 3.44.1 (#43871)
add a49581dd76f chore(deps): bump msgpack from 1.2.1 to 1.2.2 (#43867)
add fb12d4ae120 fix(importers): catch JSONDecodeError in load_configs masked_encrypted_extra merge (#43261)
add c77efa77edf fix(sqla): normalize PostgreSQL date trunc metric units (#42095)
add 01b8eb50a0d feat(semantic-layers): hide Samples tab and disable drill-to-detail for semantic views (#42534)
add 724d9045c67 chore(api): regenerate the spec for ReportScheduleRestApi.report_format (#43910)
add ed4d413d77d ci: remove unused submoduled GHA workflows (#43865)
add 334700fc331 fix(sqla): parenthesize calculated column expressions in SELECT/GROUP BY/ORDER BY and series-limit queries (#43864)
add 0820a0ac141 fix(sqllab): correct Run dropdown crash and caret color regression (#43849)
add b2fd72559a7 feat(gunicorn): statsd support (#32487)
add a3aba2a16a3 ci: show the spec diff when the staleness check fails (#43912)
add 8fb5b8f2fbc feat: migrate Global Async Queries onto the Global Task Framework (#43407)
add 630982e2695 fix(dashboard): resolve chart datasources across types in access checks (#43781)
add 0ac1a6fade3 fix(versioning): keep the dashboard version-history panel inside the viewport (#43836)
add 8963613e920 fix(versioning): match version-history search on the change author name (#43835)
add 3b492233c71 fix(versioning): bound dashboard related history by the chart attach window (#43837)
add 48500822471 fix(dashboard): don't 500 on inconsistent position_json (#43575)
add 1e76fb60981 chore(deps-dev): update teradatasql requirement from >=20.0.0.66 to >=20.0.0.67 (#43925)
add 5c4c8b831f9 chore(deps): bump cryptography from 50.0.0 to 50.0.1 (#43923)
add 9e9a3d06ad8 chore(deps-dev): bump grpcio from 1.83.0 to 1.83.1 (#43922)
add 974f36f94f7 chore(deps-dev): bump google-cloud-bigquery from 3.43.0 to 3.45.0 (#43926)
add 1315f5ff6bc chore(deps): bump pydantic from 2.13.4 to 2.13.5 (#43924)
add 1358543827f fix(sqllab): preserve ClickHouse LIMIT BY when applying the row limit (#43578)
add fe1b368bcd8 feat: add dashed line support for derived series (timeseries comparison) on MixedTimeseries chart (#34794)
add 18d277c096d ci(playwright): make embedded and app-root E2E coverage required (#43919)
add 91ccf2ce876 chore(deps-dev): bump @testing-library/user-event in /superset-frontend
add 3123e6381d7 fix(tests): migrate frontend tests to @testing-library/user-event v14
add fd452289e72 test: await the userEvent interactions master added since the v14 migration
add d31e374d8c9 test(ChartCreation): await the remaining userEvent.dblClick calls
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 (e8164cb16f1)
\
N -- N -- N refs/heads/dependabot/npm_and_yarn/superset-frontend/testing-library/user-event-14.6.5 (d31e374d8c9)
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/actions/comment-on-pr | 1 -
.github/actions/latest-tag | 1 -
.github/dependabot.yml | 30 +
.github/workflows/check-openapi-spec-drift.yml | 99 +
.github/workflows/docker.yml | 25 +-
.github/workflows/github-action-validator.yml | 4 +-
.github/workflows/hold-label-ci-gate.yml | 4 +-
.github/workflows/latest-release-tag.yml | 42 -
.github/workflows/pre-commit.yml | 2 +-
.github/workflows/superset-e2e.yml | 33 +-
.github/workflows/superset-extensions-cli.yml | 2 +-
.github/workflows/superset-frontend.yml | 4 +-
.github/workflows/superset-playwright.yml | 32 +-
.../workflows/superset-python-integrationtest.yml | 2 +-
.github/workflows/superset-python-presto-hive.yml | 2 +-
.github/workflows/superset-python-unittest.yml | 2 +-
.../workflows/superset-translations-comment.yml | 2 +-
.github/workflows/superset-translations.yml | 2 +-
.github/workflows/superset-websocket.yml | 6 +-
.gitmodules | 6 -
.pre-commit-config.yaml | 11 +-
Dockerfile | 37 +
SECURITY.md | 10 +
UPDATING.md | 163 +
docker-compose-non-dev.yml | 35 +
docker/entrypoints/run-server.sh | 9 +
docker/entrypoints/run-websocket.sh | 44 +
docker/superset-websocket/config.example.json | 4 +-
docs/admin_docs/configuration/cache.mdx | 55 +-
docs/admin_docs/configuration/event-logging.mdx | 27 +-
docs/admin_docs/security/securing_superset.mdx | 5 +-
docs/developer_docs/api.mdx | 9 -
docs/developer_docs/extensions/tasks.md | 194 +-
.../creating-your-first-dashboard.mdx | 6 +
docs/package.json | 4 +-
docs/scripts/fix-openapi-spec.py | 1 -
docs/scripts/generate-api-index.mjs | 1 -
docs/static/resources/openapi.json | 412 +-
docs/yarn.lock | 96 +-
helm/superset/Chart.yaml | 2 +-
helm/superset/README.md | 2 +-
helm/superset/values.yaml | 5 +-
pyproject.toml | 27 +-
requirements/base.in | 2 +-
requirements/base.txt | 16 +-
requirements/development.txt | 22 +-
scripts/{check-custom-rules.sh => oxfmt.sh} | 44 +-
.../src/superset_core/tasks/decorators.py | 9 +
superset-core/src/superset_core/tasks/models.py | 71 +-
.../src/superset_core/tasks/subscription.py | 140 +
superset-core/src/superset_core/tasks/types.py | 87 +-
superset-embedded-sdk/package-lock.json | 4349 ++-
superset-embedded-sdk/package.json | 20 +-
superset-embedded-sdk/tsconfig.json | 2 +
superset-frontend/jest.config.js | 6 +-
superset-frontend/package-lock.json | 29589 +++++++++++--------
superset-frontend/package.json | 22 +-
.../packages/generator-superset/package.json | 2 +-
.../packages/superset-core/package.json | 2 +-
.../superset-ui-chart-controls/package.json | 2 +-
.../superset-ui-chart-controls/src/types.ts | 18 +
.../src/utils/getColorFormatters.ts | 204 +-
.../test/utils/getColorFormatters.test.ts | 456 +-
.../packages/superset-ui-core/package.json | 2 +-
.../src/chart/components/StatefulChart.test.tsx | 200 +-
.../src/chart/components/StatefulChart.tsx | 78 +-
.../packages/superset-ui-core/src/chart/index.ts | 4 +-
.../src/chart/models/ChartProps.ts | 22 +-
.../src/components/DeleteModal/index.tsx | 3 +
.../DropdownButton/DropdownButton.test.tsx | 14 +
.../DynamicEditableTitle.regression.test.tsx | 115 -
.../DynamicEditableTitle.test.tsx | 184 +-
.../src/components/DynamicEditableTitle/index.tsx | 23 +-
.../TableCollection/TableCollection.test.tsx | 26 +
.../src/components/TableCollection/index.tsx | 68 +-
.../src/query/buildQueryContext.ts | 4 +
.../superset-ui-core/src/query/types/Query.ts | 2 +
.../src/query/types/QueryFormData.ts | 2 +
.../src/time-format/utils/stringifyTimeInput.ts | 15 +-
.../test/query/buildQueryContext.test.ts | 13 +
.../time-format/utils/stringifyTimeInput.test.ts | 58 +
.../playwright/pages/DashboardPage.ts | 19 +
.../tests/dashboard/dashboard-tabs.spec.ts | 222 +
.../tests/dashboard/dashboard-test-helpers.ts | 19 +-
.../plugin-chart-ag-grid-table/package.json | 2 +-
.../src/controlPanel.tsx | 3 +
.../src/transformProps.ts | 2 +
.../src/utils/DateWithFormatter.ts | 7 +
.../test/transformProps.test.ts | 57 +
.../test/utils/DateWithFormatter.test.ts | 60 +
.../src/MixedTimeseries/transformProps.ts | 52 +-
.../src/Timeseries/EchartsTimeseries.test.tsx | 60 +
.../src/Timeseries/EchartsTimeseries.tsx | 125 +-
.../src/Timeseries/TimeseriesLegend.tsx | 196 +
.../src/Timeseries/transformProps.ts | 178 +-
.../src/Timeseries/transformers.ts | 73 +
.../plugin-chart-echarts/src/Timeseries/types.ts | 19 +
.../test/MixedTimeseries/transformProps.test.ts | 161 +
.../test/Timeseries/Bar/transformProps.test.ts | 138 +-
.../test/Timeseries/EchartsTimeseries.test.tsx | 223 +-
.../test/Timeseries/transformProps.test.ts | 370 +-
.../test/Treemap/transformProps.test.ts | 44 +
.../plugins/plugin-chart-handlebars/package.json | 2 +-
.../plugin-chart-handlebars/src/Handlebars.tsx | 13 +-
.../src/components/Handlebars/HandlebarsViewer.tsx | 51 +-
.../test/Handlebars.test.tsx | 194 +
.../plugins/plugin-chart-partition/package.json | 2 +-
.../plugin-chart-partition/src/Partition.ts | 29 +-
.../plugins/plugin-chart-pivot-table/package.json | 4 +-
.../plugins/plugin-chart-table/package.json | 2 +-
.../src/DataTable/components/GlobalFilter.tsx | 33 +-
.../plugins/plugin-chart-table/src/TableChart.tsx | 11 +-
.../plugin-chart-table/src/controlPanel.tsx | 3 +
.../plugin-chart-table/src/transformProps.ts | 2 +
.../src/utils/DateWithFormatter.ts | 7 +
.../plugin-chart-table/test/TableChart.test.tsx | 277 +
.../test/utils/DateWithFormatter.test.ts | 60 +
superset-frontend/spec/helpers/shim.tsx | 2 +
.../RunQueryActionButton.test.tsx | 24 +
.../components/RunQueryActionButton/index.tsx | 6 +-
superset-frontend/src/components/Chart/Chart.tsx | 6 +
.../src/components/Chart/ChartContainer.tsx | 13 +-
.../src/components/Chart/ChartRenderer.test.tsx | 34 +
.../src/components/Chart/ChartRenderer.tsx | 33 +-
.../src/components/Chart/DrillBy/DrillByModal.tsx | 17 +-
.../Chart/DrillDetail/DrillDetailPane.test.tsx | 15 +-
.../Chart/DrillDetail/DrillDetailPane.tsx | 7 +-
.../src/components/Chart/chartAction.ts | 188 +-
.../src/components/Chart/chartActions.test.ts | 117 +-
.../ErrorMessage/PreformattedErrorDescription.tsx} | 25 +-
.../src/components/ListView/ListView.tsx | 4 +
.../DashboardBuilder/DashboardBuilder.tsx | 47 +-
.../dashboard/components/PropertiesModal/index.tsx | 40 +
.../sections/AsyncModeSection.test.tsx | 48 +
.../PropertiesModal/sections/AsyncModeSection.tsx | 60 +
.../components/PropertiesModal/sections/index.ts | 1 +
.../FilterBar/FilterControls/FilterValue.test.tsx | 60 +-
.../FilterBar/FilterControls/FilterValue.tsx | 48 +-
.../FiltersConfigForm/FiltersConfigForm.tsx | 48 +-
superset-frontend/src/dashboard/types.ts | 2 +
.../src/dashboard/util/permissionUtils.test.ts | 1 +
.../DataTablesPane/components/SamplesPane.tsx | 7 +-
.../DataTablesPane/components/useResultsPane.tsx | 7 +-
.../DataTablesPane/test/DataTablesPane.test.tsx | 18 +-
.../DataTablesPane/test/SamplesPane.test.tsx | 3 +-
.../DataTablesPane/test/useResultsPane.test.tsx | 18 +
.../src/explore/components/SaveModal.test.tsx | 122 +-
.../src/explore/components/SaveModal.tsx | 16 +-
.../ConditionalFormattingControl.tsx | 3 +
.../FormattingPopover.tsx | 2 +
.../FormattingPopoverContent.test.tsx | 773 +-
.../FormattingPopoverContent.tsx | 332 +-
.../ConditionalFormattingControl/constants.ts | 17 +-
.../controls/ConditionalFormattingControl/types.ts | 12 +
.../src/explore/exploreUtils/index.ts | 18 +-
.../src/features/home/DashboardTable.test.tsx | 8 +
.../src/features/home/DashboardTable.tsx | 7 +
.../HeaderReportDropdown/index.test.tsx | 31 +
.../reports/ReportModal/ReportModal.test.tsx | 166 +
.../src/features/reports/ReportModal/actions.ts | 2 +
.../src/features/reports/ReportModal/index.tsx | 16 +-
.../features/reports/ReportModal/reducer.test.ts | 82 +-
.../src/features/reports/ReportModal/reducer.ts | 12 +-
superset-frontend/src/features/reports/types.ts | 2 +
.../src/features/tasks/LiveDuration.test.tsx | 100 +
.../src/features/tasks/LiveDuration.tsx | 57 +
.../tasks/TaskDependenciesPopover.test.tsx | 83 +
.../src/features/tasks/TaskDependenciesPopover.tsx | 141 +
.../src/features/tasks/TaskPayloadPopover.test.tsx | 74 +
.../src/features/tasks/TaskPayloadPopover.tsx | 45 +-
.../src/features/tasks/timeUtils.test.ts | 12 +-
superset-frontend/src/features/tasks/timeUtils.ts | 59 +-
superset-frontend/src/features/tasks/types.ts | 104 +-
.../versionHistory/ChartVersionPreview.test.tsx | 21 +-
.../versionHistory/ChartVersionPreview.tsx | 17 +-
.../DashboardVersionHistory.test.tsx | 55 +-
superset-frontend/src/hooks/useTabId.test.ts | 153 +
superset-frontend/src/hooks/useTabId.ts | 166 +-
.../src/middleware/asyncEvent.test.ts | 1316 +-
superset-frontend/src/middleware/asyncEvent.ts | 810 +-
superset-frontend/src/middleware/realtime.test.ts | 390 +
superset-frontend/src/middleware/realtime.ts | 451 +
.../src/pages/ChartCreation/ChartCreation.test.tsx | 6 +-
.../DashboardList/DashboardList.behavior.test.tsx | 30 +
.../src/pages/DashboardList/index.tsx | 8 +
.../src/pages/TaskList/TaskList.test.tsx | 24 +-
superset-frontend/src/pages/TaskList/index.tsx | 217 +-
superset-frontend/src/types/Dashboard.ts | 1 +
superset-frontend/src/utils/asyncMode.test.ts | 91 +
superset-frontend/src/utils/asyncMode.ts | 69 +
.../src/utils/navigationUtils.test.ts | 155 +
superset-frontend/src/utils/navigationUtils.ts | 31 +-
superset-frontend/src/views/CRUD/hooks.test.tsx | 232 +
superset-frontend/src/views/CRUD/hooks.ts | 112 +
superset-websocket/.oxfmtrc.json | 1 -
superset-websocket/Dockerfile | 8 +-
superset-websocket/README.md | 272 +-
superset-websocket/config.example.json | 4 +-
superset-websocket/config.test.json | 4 +-
superset-websocket/eslint.config.mjs | 50 -
{docs => superset-websocket}/oxlint.json | 41 +-
superset-websocket/package-lock.json | 2489 +-
superset-websocket/package.json | 24 +-
superset-websocket/spec/config.test.ts | 30 +
superset-websocket/spec/index.test.ts | 1155 +-
superset-websocket/src/config.ts | 76 +-
superset-websocket/src/index.ts | 778 +-
superset-websocket/utils/README.md | 6 +-
superset-websocket/utils/client-ws-app/app.js | 18 +-
superset-websocket/utils/client-ws-app/bin/www | 20 +-
.../utils/client-ws-app/package-lock.json | 15 +-
.../utils/client-ws-app/package.json | 3 +-
.../utils/client-ws-app/public/javascripts/app.js | 2 +-
.../utils/client-ws-app/routes/index.js | 26 +-
superset-websocket/utils/loadtest.js | 74 +-
superset/async_events/api.py | 179 -
superset/async_events/async_query_manager.py | 468 -
.../async_events/async_query_manager_factory.py | 35 -
superset/charts/data/api.py | 177 +-
superset/charts/data/query_context_cache_loader.py | 30 -
superset/charts/schemas.py | 91 +-
superset/cli/update.py | 17 +-
superset/commands/chart/create.py | 2 +-
.../chart/data/create_async_job_command.py | 43 -
superset/commands/chart/data/get_data_command.py | 4 +
superset/commands/chart/update.py | 7 +-
superset/commands/dashboard/update.py | 14 +-
superset/commands/distributed_lock/acquire.py | 32 +-
superset/commands/distributed_lock/base.py | 17 +-
superset/commands/distributed_lock/release.py | 76 +-
superset/commands/importers/v1/utils.py | 14 +
superset/commands/tasks/cancel.py | 117 +-
superset/commands/tasks/exceptions.py | 7 +
superset/commands/tasks/internal_update.py | 43 +-
superset/commands/tasks/reap.py | 187 +
superset/commands/tasks/submit.py | 292 +-
superset/common/query_context.py | 35 +-
superset/common/query_context_factory.py | 4 +
superset/common/query_context_processor.py | 199 +-
superset/common/query_object.py | 4 +
superset/common/query_object_factory.py | 13 +-
superset/common/query_serialization.py | 131 +
superset/common/utils/query_cache_manager.py | 16 +-
superset/config.py | 200 +-
superset/connectors/sqla/models.py | 30 +-
superset/constants.py | 2 +-
superset/coordination/__init__.py | 37 +
superset/coordination/base.py | 567 +
.../cache_backend.py | 267 +-
.../rank.py => coordination/exceptions.py} | 28 +-
superset/coordination/types.py | 85 +
superset/daos/base.py | 43 +-
superset/daos/database.py | 3 +-
superset/daos/key_value.py | 9 +-
superset/daos/semantic_layer.py | 6 +-
superset/daos/tasks.py | 521 +-
superset/dashboards/api.py | 1 +
superset/dashboards/filters.py | 50 +-
superset/dashboards/schemas.py | 4 +
superset/db_engine_specs/base.py | 13 +
superset/db_engine_specs/postgres.py | 16 +-
superset/db_engine_specs/snowflake.py | 10 +
superset/distributed_lock/__init__.py | 7 +-
superset/examples/birth_names.py | 55 +-
.../datasets/project_management.yaml | 2 +-
.../charts/Quarterly_Sales_By_Product_Line.yaml | 2 +-
.../charts/Revenue_by_Deal_Size.yaml | 2 +-
.../charts/Messages_per_Channel.yaml | 2 +-
.../usa_births_names/charts/Genders_by_State.yaml | 2 +-
.../charts/Top_10_Boy_Name_Share.yaml | 4 +-
.../charts/Top_10_Girl_Name_Share.yaml | 4 +-
.../examples/usa_births_names/charts/Trends.yaml | 2 +-
...op_10_Games_Proportion_of_Sales_in_Markets.yaml | 2 +-
.../Total_Sales_per_Market_Grouped_by_Genre.yaml | 2 +-
superset/examples/world_bank.py | 25 +-
.../examples/world_health/charts/Growth_Rate.yaml | 2 +-
.../world_health/charts/World_s_Pop_Growth.yaml | 2 +-
superset/extensions/__init__.py | 6 -
superset/initialization/__init__.py | 58 +-
..._7e2c9a4f1b83_create_task_dependencies_table.py | 195 +
...retire_semantic_layer_views_connections_pvms.py | 114 +
superset/models/core.py | 7 +
superset/models/dashboard.py | 128 +-
superset/models/helpers.py | 225 +-
superset/models/slice.py | 54 +
superset/models/sql_lab.py | 25 +-
superset/models/task_dependencies.py | 69 +
superset/models/task_subscribers.py | 38 +-
superset/models/tasks.py | 139 +-
superset/reports/api.py | 1 +
superset/security/manager.py | 124 +-
superset/semantic_layers/api.py | 7 +
superset/semantic_layers/models.py | 173 +-
superset/sql/dialects/__init__.py | 2 +
superset/sql/dialects/postgres.py | 79 +
superset/sql/dialects/starrocks.py | 813 +
superset/sql/metric_normalization.py | 181 +
superset/sql/parse.py | 159 +-
superset/tasks/api.py | 110 +-
superset/tasks/async_queries.py | 499 +-
superset/tasks/context.py | 394 +-
superset/tasks/decorators.py | 326 +-
superset/tasks/dependencies.py | 126 +
superset/tasks/filters.py | 20 +-
superset/tasks/guest.py | 86 +
superset/tasks/heartbeat.py | 167 +
superset/tasks/locks.py | 84 +-
superset/tasks/manager.py | 895 +-
superset/tasks/query_cancel.py | 165 +
superset/tasks/registry.py | 36 +-
superset/tasks/scheduler.py | 297 +-
superset/tasks/schemas.py | 161 +-
superset/tasks/subscription.py | 84 +
superset/tasks/utils.py | 197 +-
superset/utils/cache.py | 30 +-
superset/utils/cache_manager.py | 4 +-
superset/utils/error_sanitization.py | 22 +-
superset/utils/feature_flag_manager.py | 64 +-
superset/versioning/activity/orchestrator.py | 19 +-
superset/versioning/activity/queries.py | 83 +-
superset/views/base.py | 15 +-
superset/views/datasource/views.py | 96 +-
.../{mcp_service/theme => websocket}/__init__.py | 9 +-
superset/websocket/channel.py | 234 +
.../utils/__init__.py => websocket/permissions.py} | 23 +-
tests/integration_tests/async_events/api_tests.py | 210 -
tests/integration_tests/charts/commands_tests.py | 88 +-
tests/integration_tests/charts/data/api_tests.py | 131 +-
tests/integration_tests/dashboards/api_tests.py | 2 +
tests/integration_tests/datasource_tests.py | 10 +-
.../db_engine_specs/base_engine_spec_tests.py | 7 +-
tests/integration_tests/query_context_tests.py | 73 +
tests/integration_tests/reports/api_tests.py | 1 +
tests/integration_tests/sqla_models_tests.py | 59 +-
tests/integration_tests/superset_test_config.py | 1 -
tests/integration_tests/tasks/api_tests.py | 230 +
.../integration_tests/tasks/async_queries_tests.py | 155 -
.../tasks/commands/test_cancel.py | 174 +-
.../integration_tests/tasks/commands/test_reap.py | 170 +
.../tasks/commands/test_submit.py | 54 +
.../integration_tests/tasks/test_sync_join_wait.py | 6 +-
tests/unit_tests/async_events/__init__.py | 16 -
.../async_events/async_query_manager_tests.py | 535 -
.../charts/data/test_empty_query_context.py | 7 +
tests/unit_tests/charts/test_chart_data_api.py | 183 +-
.../test_dynamodb.py => cli/update_test.py} | 38 +-
.../chart/create_async_job_command_test.py | 51 -
tests/unit_tests/commands/dashboard/update_test.py | 82 +
.../unit_tests/commands/importers/v1/utils_test.py | 102 +
.../unit_tests/commands/tasks}/__init__.py | 0
.../commands/tasks/test_internal_update.py | 65 +
.../unit_tests/common/test_async_min_cache_ttl.py | 67 +
.../common/test_query_context_processor.py | 186 +-
.../common/test_query_context_processor_timing.py | 7 +-
.../unit_tests/common/test_query_object_factory.py | 23 +
.../unit_tests/common/test_query_serialization.py | 193 +
tests/unit_tests/connectors/sqla/models_test.py | 41 +
.../unit_tests/coordination}/__init__.py | 0
.../test_cache_backend.py | 89 +-
tests/unit_tests/coordination/test_service.py | 458 +
tests/unit_tests/daos/test_tasks.py | 424 +
tests/unit_tests/dashboards/api_test.py | 79 +
.../dashboards/semantic_view_access_test.py | 645 +
tests/unit_tests/db_engine_specs/test_base.py | 7 +
tests/unit_tests/db_engine_specs/test_postgres.py | 66 +
tests/unit_tests/db_engine_specs/test_redshift.py | 32 +
.../distributed_lock/distributed_lock_tests.py | 243 +-
tests/unit_tests/feature_flag_test.py | 82 +
.../check_async_query_secret_test.py | 140 -
.../initialization/check_encryption_engine_test.py | 2 +-
.../initialization/check_websocket_secret_test.py | 68 +
tests/unit_tests/initialization_test.py | 1 -
tests/unit_tests/jinja_context_test.py | 6 +-
tests/unit_tests/models/dashboard_test.py | 571 +
tests/unit_tests/models/helpers_test.py | 597 +-
tests/unit_tests/security/manager_test.py | 131 +
.../test_realtime_notification_permissions.py | 61 +
tests/unit_tests/semantic_layers/models_test.py | 400 +
.../semantic_layers/values_endpoint_test.py | 127 +
tests/unit_tests/sql/metric_normalization_tests.py | 255 +
tests/unit_tests/sql/parse_tests.py | 721 +
tests/unit_tests/subjects/test_raise_for_access.py | 22 +-
tests/unit_tests/tasks/test_async_queries.py | 661 +-
tests/unit_tests/tasks/test_context.py | 92 +
tests/unit_tests/tasks/test_decorators.py | 126 +-
tests/unit_tests/tasks/test_dependencies.py | 499 +
tests/unit_tests/tasks/test_filters.py | 61 +
tests/unit_tests/tasks/test_guest.py | 127 +
tests/unit_tests/tasks/test_handlers.py | 161 +-
tests/unit_tests/tasks/test_heartbeat.py | 157 +
tests/unit_tests/tasks/test_locks.py | 111 +
tests/unit_tests/tasks/test_manager.py | 881 +-
tests/unit_tests/tasks/test_models.py | 73 +
tests/unit_tests/tasks/test_query_cancel.py | 207 +
tests/unit_tests/tasks/test_reap.py | 193 +
tests/unit_tests/tasks/test_scheduler_executor.py | 185 +
tests/unit_tests/tasks/test_schemas.py | 89 +-
tests/unit_tests/tasks/test_submit.py | 126 +
tests/unit_tests/tasks/test_subscription.py | 68 +
tests/unit_tests/tasks/test_timeout.py | 335 +-
tests/unit_tests/tasks/test_utils.py | 19 +-
tests/unit_tests/utils/cache_test.py | 45 +
tests/unit_tests/utils/test_error_sanitization.py | 17 +
tests/unit_tests/versioning/test_activity.py | 127 +
tests/unit_tests/views/datasource/views_test.py | 157 +-
tests/unit_tests/views/test_base.py | 51 +
tests/unit_tests/views/test_error_handling.py | 56 +
.../unit_tests/websocket}/__init__.py | 0
tests/unit_tests/websocket/test_channel.py | 319 +
409 files changed, 53128 insertions(+), 23835 deletions(-)
delete mode 160000 .github/actions/comment-on-pr
delete mode 160000 .github/actions/latest-tag
create mode 100644 .github/workflows/check-openapi-spec-drift.yml
delete mode 100644 .github/workflows/latest-release-tag.yml
create mode 100755 docker/entrypoints/run-websocket.sh
copy scripts/{check-custom-rules.sh => oxfmt.sh} (55%)
create mode 100644 superset-core/src/superset_core/tasks/subscription.py
delete mode 100644 superset-frontend/packages/superset-ui-core/src/components/DynamicEditableTitle/DynamicEditableTitle.regression.test.tsx
create mode 100644 superset-frontend/packages/superset-ui-core/test/time-format/utils/stringifyTimeInput.test.ts
create mode 100644 superset-frontend/playwright/tests/dashboard/dashboard-tabs.spec.ts
create mode 100644 superset-frontend/plugins/plugin-chart-ag-grid-table/test/utils/DateWithFormatter.test.ts
create mode 100644 superset-frontend/plugins/plugin-chart-echarts/src/Timeseries/TimeseriesLegend.tsx
create mode 100644 superset-frontend/plugins/plugin-chart-handlebars/test/Handlebars.test.tsx
create mode 100644 superset-frontend/plugins/plugin-chart-table/test/utils/DateWithFormatter.test.ts
copy superset-frontend/{packages/superset-ui-core/src/components/Badge/index.tsx => src/components/ErrorMessage/PreformattedErrorDescription.tsx} (65%)
create mode 100644 superset-frontend/src/dashboard/components/PropertiesModal/sections/AsyncModeSection.test.tsx
create mode 100644 superset-frontend/src/dashboard/components/PropertiesModal/sections/AsyncModeSection.tsx
create mode 100644 superset-frontend/src/features/tasks/LiveDuration.test.tsx
create mode 100644 superset-frontend/src/features/tasks/LiveDuration.tsx
create mode 100644 superset-frontend/src/features/tasks/TaskDependenciesPopover.test.tsx
create mode 100644 superset-frontend/src/features/tasks/TaskDependenciesPopover.tsx
create mode 100644 superset-frontend/src/features/tasks/TaskPayloadPopover.test.tsx
create mode 100644 superset-frontend/src/hooks/useTabId.test.ts
create mode 100644 superset-frontend/src/middleware/realtime.test.ts
create mode 100644 superset-frontend/src/middleware/realtime.ts
create mode 100644 superset-frontend/src/utils/asyncMode.test.ts
create mode 100644 superset-frontend/src/utils/asyncMode.ts
delete mode 100644 superset-websocket/eslint.config.mjs
copy {docs => superset-websocket}/oxlint.json (89%)
delete mode 100644 superset/async_events/api.py
delete mode 100644 superset/async_events/async_query_manager.py
delete mode 100644 superset/async_events/async_query_manager_factory.py
delete mode 100644 superset/charts/data/query_context_cache_loader.py
delete mode 100644 superset/commands/chart/data/create_async_job_command.py
create mode 100644 superset/commands/tasks/reap.py
create mode 100644 superset/common/query_serialization.py
create mode 100644 superset/coordination/__init__.py
create mode 100644 superset/coordination/base.py
rename superset/{async_events => coordination}/cache_backend.py (75%)
copy superset/{utils/pandas_postprocessing/rank.py => coordination/exceptions.py} (58%)
create mode 100644 superset/coordination/types.py
create mode 100644 superset/migrations/versions/2026-08-21_12-00_7e2c9a4f1b83_create_task_dependencies_table.py
create mode 100644 superset/migrations/versions/2026-09-03_00-00_b3e9c1a75d24_retire_semantic_layer_views_connections_pvms.py
create mode 100644 superset/models/task_dependencies.py
create mode 100644 superset/sql/dialects/postgres.py
create mode 100644 superset/sql/dialects/starrocks.py
create mode 100644 superset/sql/metric_normalization.py
create mode 100644 superset/tasks/dependencies.py
create mode 100644 superset/tasks/guest.py
create mode 100644 superset/tasks/heartbeat.py
create mode 100644 superset/tasks/query_cancel.py
create mode 100644 superset/tasks/subscription.py
copy superset/{mcp_service/theme => websocket}/__init__.py (74%)
create mode 100644 superset/websocket/channel.py
copy superset/{mcp_service/utils/__init__.py => websocket/permissions.py} (59%)
delete mode 100644 tests/integration_tests/async_events/api_tests.py
delete mode 100644 tests/integration_tests/tasks/async_queries_tests.py
create mode 100644 tests/integration_tests/tasks/commands/test_reap.py
delete mode 100644 tests/unit_tests/async_events/__init__.py
delete mode 100644 tests/unit_tests/async_events/async_query_manager_tests.py
copy tests/unit_tests/{db_engine_specs/test_dynamodb.py => cli/update_test.py} (52%)
delete mode 100644 tests/unit_tests/commands/chart/create_async_job_command_test.py
create mode 100644 tests/unit_tests/commands/dashboard/update_test.py
rename {superset/async_events => tests/unit_tests/commands/tasks}/__init__.py (100%)
create mode 100644 tests/unit_tests/commands/tasks/test_internal_update.py
create mode 100644 tests/unit_tests/common/test_async_min_cache_ttl.py
create mode 100644 tests/unit_tests/common/test_query_serialization.py
copy {scripts => tests/unit_tests/coordination}/__init__.py (100%)
rename tests/unit_tests/{async_events => coordination}/test_cache_backend.py (56%)
create mode 100644 tests/unit_tests/coordination/test_service.py
create mode 100644 tests/unit_tests/dashboards/semantic_view_access_test.py
delete mode 100644 tests/unit_tests/initialization/check_async_query_secret_test.py
create mode 100644 tests/unit_tests/initialization/check_websocket_secret_test.py
create mode 100644 tests/unit_tests/security/test_realtime_notification_permissions.py
create mode 100644 tests/unit_tests/semantic_layers/values_endpoint_test.py
create mode 100644 tests/unit_tests/sql/metric_normalization_tests.py
create mode 100644 tests/unit_tests/tasks/test_context.py
create mode 100644 tests/unit_tests/tasks/test_dependencies.py
create mode 100644 tests/unit_tests/tasks/test_guest.py
create mode 100644 tests/unit_tests/tasks/test_heartbeat.py
create mode 100644 tests/unit_tests/tasks/test_locks.py
create mode 100644 tests/unit_tests/tasks/test_models.py
create mode 100644 tests/unit_tests/tasks/test_query_cancel.py
create mode 100644 tests/unit_tests/tasks/test_reap.py
create mode 100644 tests/unit_tests/tasks/test_scheduler_executor.py
create mode 100644 tests/unit_tests/tasks/test_submit.py
create mode 100644 tests/unit_tests/tasks/test_subscription.py
copy {scripts => tests/unit_tests/websocket}/__init__.py (100%)
create mode 100644 tests/unit_tests/websocket/test_channel.py