You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@superset.apache.org by ha...@apache.org on 2026/06/28 04:05:31 UTC

(superset) branch feat/migrate-to-vitest-for-superset-websocket updated (b11e9f5ea93 -> e62b11979c4)

This is an automated email from the ASF dual-hosted git repository.

hainenber pushed a change to branch feat/migrate-to-vitest-for-superset-websocket
in repository https://gitbox.apache.org/repos/asf/superset.git


    from b11e9f5ea93 chore: resolve `zizmor/unpinned-uses` issue
     add 99ffaf3694a chore(deps-dev): update sqlalchemy-solr requirement from >=0.2.0 to >=0.2.4.3 (#41257)
     add b612f573d75 chore(deps-dev): update ydb-sqlalchemy requirement from >=0.1.2 to >=0.1.22 (#41253)
     add defacc32373 fix(deps): declare cachetools explicitly in pyproject.toml (#40987)
     add ba339fd9c19 chore(deps): bump msgpack from 1.0.8 to 1.2.1 (#41261)
     add f33c209f7a4 chore(deps): bump flask-cors from 6.0.2 to 6.0.5 (#41260)
     add 27d9bcb7bc1 chore(deps): bump greenlet from 3.5.0 to 3.5.1 (#41258)
     add e6fffe95c24 chore(deps): bump pyyaml from 6.0.2 to 6.0.3 (#41256)
     add 3dd570cd9bc chore(deps-dev): bump trino from 0.330.0 to 0.337.0 (#41255)
     add 6d15876b139 chore(deps-dev): bump grpcio from 1.71.0 to 1.81.1 (#41254)
     add f5dd28714d1 chore(deps): bump baseline-browser-mapping from 2.10.36 to 2.10.37 in /docs (#41270)
     add 8b430caef41 chore(deps-dev): bump eslint from 10.4.1 to 10.5.0 in /superset-websocket (#41269)
     add dc8f0d7b242 chore(deps-dev): bump eslint from 10.4.1 to 10.5.0 in /superset-frontend (#41278)
     add 55190b1da05 chore(deps-dev): bump eslint-plugin-storybook from 10.4.3 to 10.4.4 in /superset-frontend (#41277)
     add 4312d67775e chore(deps): bump react-arborist from 3.10.1 to 3.10.5 in /superset-frontend (#41276)
     add b7451cd16d9 chore(deps-dev): bump yeoman-test from 11.5.3 to 11.6.0 in /superset-frontend (#41274)
     add 6118a01bc1c chore(deps): bump mapbox-gl from 3.24.0 to 3.24.1 in /superset-frontend (#41273)
     add 7128760d32b chore(deps-dev): bump baseline-browser-mapping from 2.10.36 to 2.10.37 in /superset-frontend (#41271)
     add b8aeecfc444 fix(export): dashboard export must not leak env-local chartIds (#32972) (#40588)
     add 7340d06a05b feat(reports): adding link to report content (#40525)
     add 449bd69802d fix(logging): safely render database URIs in startup warnings (#38229)
     add cb1694575c6 fix(dataset-api): disambiguate get_or_create by schema (#40494)
     add 36632c20eb3 fix(databases): apply IMPERSONATE_WITH_EMAIL_PREFIX to StarRocks engine (#37984)
     add d76b896c9c3 chore: Updates CHANGELOG.md and UPDATING.md with 6.1.0 (#41249)
     add 403e11e2efc feat(ci): add workflow to automatically sync pinned requirements for `pip` Dependabot PRs (#40557)
     add 2a7fadbd08d fix(sql-lab): use consistent icon size for schema refresh button (#41105)
     add 4b87e03e7c2 chore(deps): bump http-proxy-middleware from 2.0.9 to 2.0.10 in /docs (#41287)
     add 932bb2f1549 feat(i18n): update Spanish (es) translations (#41265)
     add 27a65257ee0 perf(screenshots): reuse Playwright browser across tasks instead of launching per-task (#41243)
     add eac5bd23bdf ci(docs): fix Netlify docs preview never skipping on non-docs PRs (#41070)
     add e34b7c2daf9 fix(gsheets): pass service_account_info via adapter_kwargs  (#38443)
     add c55c85f8244 fix(helm)!: replace dockerize initContainer with bash TCP wait (#40425)
     add 0fbace5b5d2 docs: Update INTHEWILD.yaml (#36894)
     add c49391ab08f refactor: update Connection.execute() to use queries with text() (#40277)
     add f70a2eac897 fix(dashboard): normalize legacy currentState to filterState in native_filters URL param (#40929)
     add 416fa266d9f chore(datatablecontrol): Removed unused `useTableColumns` (#41155)
     add 3b46a5f1213 fix(chart API): Consider time grain filters with the filters_dashboard_id param (#41290)
     add 215b207ae47 fix(sql): detect set operations and nested selects in subquery check (#38452)
     add 36781fbf47c fix(i18n): wrap table access error message with gettext for translation (#38489)
     add 5916ec4876a fix(plugin-chart-echarts): cross-filter horizontal bars on category not metric (#41104)
     add 133473d0f47 fix(explore): pre-populate SaveModal dashboard from chart metadata (#41181)
     add 8768e5be0fb chore(deps-dev): bump @typescript-eslint/parser from 8.61.0 to 8.61.1 in /superset-websocket (#41312)
     add 18853c6ecfc chore(deps): bump actions/setup-java from 5.2.0 to 5.3.0 (#41317)
     add da893462b8e chore(deps-dev): bump typescript-eslint from 8.61.0 to 8.61.1 in /docs (#41319)
     add 6c70f3d2751 chore(deps-dev): bump @typescript-eslint/eslint-plugin from 8.61.0 to 8.61.1 in /superset-frontend (#41320)
     add 2599bea0c2f chore(deps): bump actions/checkout from 6.0.2 to 6.0.3 (#41321)
     add b9c61a079df chore(deps-dev): bump eslint-plugin-react-you-might-not-need-an-effect from 1.0.0 to 1.0.1 in /superset-frontend (#41322)
     add ae5c08b9931 chore(deps-dev): bump @playwright/test from 1.60.0 to 1.61.0 in /superset-frontend (#41327)
     add c65c0951cf6 chore(deps-dev): bump storybook from 10.4.4 to 10.4.5 in /superset-frontend (#41330)
     add 714c5cd075d chore(deps-dev): bump oxlint from 1.69.0 to 1.70.0 in /superset-frontend (#41331)
     add b94f90e39e4 chore(deps-dev): bump @formatjs/intl-durationformat from 0.10.14 to 0.10.15 in /superset-frontend (#41332)
     add 9431381c3e1 chore(deps-dev): bump @storybook/addon-docs from 10.4.4 to 10.4.5 in /superset-frontend (#41326)
     add 92109f0f993 chore(deps-dev): bump eslint-plugin-storybook from 10.4.4 to 10.4.5 in /superset-frontend (#41316)
     add eb0d4dd601e chore(deps-dev): bump @typescript-eslint/eslint-plugin from 8.61.0 to 8.61.1 in /superset-websocket (#41315)
     add 5d06438a075 fix(docker): restore working `docker compose up` for the dev stack (#41077)
     add 3ff90bd532c fix(big-number): respect extra_form_data.time_compare in Big Number with Time Comparison (#41342)
     add 36b0ed023bb fix(viz-date-control): Just use global DEFAULT_TIME_FORMAT instead of hardcoding 'smart_date' (#28708)
     add 66f5ab2d2f6 fix(ssh-tunnel): support ed25519 and ECDSA keys, not just RSA (#24180) (#40139)
     add 5731d0874a8 fix(docker): exec gunicorn in run-server.sh so it receives SIGTERM (#41173)
     add 90fa31f3053 chore(deps-dev): bump typescript-eslint from 8.61.0 to 8.61.1 in /superset-websocket (#41313)
     add 5e8a0c0244b fix(embedded): allow guest users to sort table columns in embedded dashboards (#41218)
     add ca3c4204124 fix(trino): ignore Iceberg $partitions metadata fields in partition detection (#41055)
     add c539ae98ba9 fix(helm): enable graceful termination and overrides for celery worker (#41175)
     add e2c6dc3e1a4 fix(sqllab): shrink Template Parameters editor height and add outline (#41128)
     add 67182e255c7 fix(dashboard): prevent undo crash on new dashboard opened in edit mode (#41252)
     add 9d56b1721d4 fix(models): use Series.iloc for positional access in post_process_df (#41344)
     add 1d3daf2ac83 fix(security): return generic error and log internally in RoleRestAPI.get_list (#41295)
     add dee58595992 fix(rls): reject empty or whitespace-only RLS clauses (#41297)
     add c1787a67aac fix(extensions): log extension-init failures via the logger, not print() (#41304)
     add 386893f9f22 feat(security): record audit metadata on guest token issuance (#41305)
     add b061b5d317c chore: fix lint on untouched files (#41333)
     add 1b71c105b77 docs(meta-db): warn that SUPERSET_META_DB_LIMIT truncates tables before joins (#41302)
     add 18fea37e849 fix(SavedQueries): allow other admin users see "saved queries" (#20604) (#21769)
     add b1470bd5a59 fix(i18n): correct french translations causing build errors (#34563)
     add d3d52970250 fix(reports): preserve dashboard state in tab permalinks (#39708)
     add c1d08bf27c0 fix(table): respect row limit with server pagination (#41024)
     add acb996a3247 feat(mcp): support virtual dataset metrics and improve adhoc SQL metric discoverability (#40935)
     add 3bc3f47d67c fix(dataset): import/export jinja template bug (#28790)
     add c1f4062af6c fix(sql-lab): normalize tabViewId in QUERY_EDITOR_SET_SQL reducer (#40983)
     add 9b6d3ce775e fix(models): make naive datetime object timezone-aware before converting to unix timestamp (#39782)
     add d6ede998619 fix(tags): tags api change tag_get_objects method to be aligned with api documentation (#29338)
     add 0ec6cae45d1 feat(Boxplot): Allow configuration of y-axis range (#24380)
     add b4dfeef2fd5 fix(reports): add network timeouts so schedules can't hang forever (#41250)
     add 1d0866556f3 fix(sql_lab): serialize dict/list cell values as valid JSON strings (#41099)
     add c2fb94cedf2 perf(filters): cache column-values endpoint to skip DB on repeat requests (#40839)
     add 41ce9ca7d37 chore(deps-dev): bump @swc/plugin-emotion from 14.12.0 to 14.13.0 in /superset-frontend (#41377)
     add b77c525d4b2 chore(deps-dev): bump storybook from 10.4.5 to 10.4.6 in /superset-frontend (#41368)
     add 7ba59c2d799 chore(deps): bump @jsonforms/vanilla-renderers from 3.7.0 to 3.8.0 in /superset-frontend (#41367)
     add 420a74b01e5 chore(deps): bump actions/checkout from 6.0.3 to 7.0.0 (#41358)
     add 6bc77fecc2b feat(country-map): add cross-filters support (#35859)
     add 1ea3584dcbb fix(chart): added Big Number chart support for MAX metric with VARCHAR column (#41182)
     add 8f22b718985 feat(chart): enable cross-filter on x-axis labels for bar, line, area and scatter charts (#41111)
     add 584d41759b5 refactor: migrate test files from nested describe blocks and remove stale lint ignores (#39202)
     add d9d395bde13 fix(helm): remove unused SQLALCHEMY_TRACK_MODIFICATIONS setting (#37259)
     add 7b9bcdd9518 fix(bigquery): preserve catalog in partition metadata lookup (#40200)
     add eb60e5477b1 fix(radar): correct legend margin control in the radar chart (#39414)
     add 1b8c6d109da feat: added deterministic field generation to dashboard export (#36339)
     add caf81e71d22 feat(mcp): add typed Pydantic response schemas to generate_explore_link tool (#39900)
     add 779fa136793 fix(security): prevent duplicate items in permissions dropdown on scroll (#39292)
     add 8eb753eab22 fix(dashboard): keep native filter dropdown from covering input (#40032)
     add ac234d0fb26 fix(dashboard): prevent x-axis clipping when toggling chart description (#38307)
     add 91188a0302d fix(config): Wire LOGO_TARGET_PATH and document custom spinner usage (#36951)
     add d1b523b97f2 docs: fix placeholder text in @superset-ui/core README (#40002)
     add a57b5f60780 fix(deckgl): show dashboard filter badges for multi-layer charts (#40003)
     add 3261d102708 chore(frontend): enforce TypeScript-only source files (#41385)
     add 2d78a8733cd fix(plugin-chart-ag-grid-table): show correct percent-metric totals in summary row (#41247)
     add 7bb4e82a827 fix(dashboard): Remove 308 redirect when creating new dashboards (#41343)
     add f6ce1054508 fix(pandas-postprocessing): handle prophet errors and validate minimum data points for forecast (#41180)
     add 3ec4bd23c4d fix(deps): restore np.nan in offset_metrics_df empty branch (#41267)
     add 09c7ba14df4 fix(export): sanitize control characters in titles to prevent export failures (#39294)
     add 6f12d173133 fix(charts): show user-friendly error for HTTP 413 payload too large (#37131)
     add 73637748698 fix(theming): deep-merge partial THEME_DEFAULT overrides with built-in defaults (#41347)
     add b955c90de40 fix(sqllab): Invalid multi sorting state in table header (#40680)
     add 518cadd907c fix(mcp_service): reduce deprecated authlib.jose.errors imports (#41248)
     add 076d8c15089 docs(security): add a secrets register and rotation schedule (#41308)
     add 6166af3c3c8 fix(mcp): reject non-finite JWT exp instead of 500ing on int() overflow (#41394)
     add f40abbbefd1 fix(mcp): fail closed when the JWT verifier has no pinned algorithm (#41296)
     add da9fbadaf65 fix(logout): purge the namespaced Cache API store on logout (#41303)
     add 4519a5c52d8 fix(safe-markdown): do not mutate the shared sanitization schema (#41298)
     add 4f4663418f3 fix(tests): stabilize update_chart MCP test failing on previous-Python CI leg (#41310)
     add 1f16d10cbf9 chore(deps): bump pyjwt to 2.13.0 (CVE-2026-48526) (#41288)
     add 0fd244b5c6f fix(security): reject unknown fields on guest-token RLS rules (#41217)
     add 81f7e42f4ee fix(rls): preserve tables/roles on partial RLS rule updates (#41294)
     add 0667ba60971 chore(deps): bump dompurify and http-proxy-middleware (security) (#41289)
     add e0f3f93cd4e fix(mcp): require MCP_JWT_AUDIENCE when MCP JWT auth is enabled (#41292)
     add 2b25345ed9e chore(deps-dev): bump baseline-browser-mapping from 2.10.37 to 2.10.38 in /superset-frontend (#41413)
     add b4f43bd7e02 chore(deps): bump baseline-browser-mapping from 2.10.37 to 2.10.38 in /docs (#41405)
     add fe2424ec14a chore(deps): bump mapbox-gl from 3.24.1 to 3.25.0 in /superset-frontend (#41409)
     add a90c8e03476 feat(extensions): add Chat contribution type (SIP-214) (#41205)
     add 9a11c15a333 feat(explore): add full-range option for time-shift comparison (#41334)
     add baca76ebe0c fix(slack): fix indented triple-quoted string in v1 API deprecation warning (#41393)
     add 83f7dc9d5b3 chore(codeowners): add translation maintainers (#41429)
     add 4b9b8187b3c fix(config): make Swagger UI opt-in (off by default) (#41300)
     add d8bcc664727 feat(mcp): dashboard layout, theme, and CSS control + update_dashboard tool (#40399)
     add 9965c056995 fix(semantic layers): small fixes (#40474)
     add de01fe2ff0e fix(chart-controls): fix RadioButtonControl crash on empty options and false values (#41170)
     add aac02ab6793 fix(deck.gl): use interval notation for Polygon legend bucket labels (#41400)
     add 95ecdd37537 fix(menu): highlight active nav tab in non-English locales (#41183)
     add c94bc7178f0 fix(world-map): rely on built-in highlightOnHover to reset hover highlight (#41158)
     add 8fed514e794 fix(dashboard): keep pasted filter values outside the loaded page (#41136)
     add d763255e159 chore(i18n): update Turkish translations messages.po (#39064)
     add 2b09b6bc1df feat(mcp): list_charts accepts `dashboards` filter (#40397)
     add f08f0682409 fix(sqllab): replace native prompt with modal for tab rename (#41329)
     add 7410ff73c0a ci: schedule a weekly Docker image rebuild against the latest release (#40426)
     add 0d43c2c12c3 feat(reports): trigger alerts (#41336)
     add 7e17c70cba2 fix: Filter null child names in treeBuilder utility (#31477)
     add 35365d639d5 fix(deckgl): render legend swatch as a coloured box, not an emoji glyph (#40784)
     add 01a0c66c798 fix(sunburst): make "Show Null Values" non-breaking and cover all layers (#41442)
     add ee43d8869f6 chore(deps): bump nanoid from 5.1.11 to 5.1.14 in /superset-frontend (#41450)
     add b8f3918bcf1 chore(deps-dev): bump react-resizable from 4.0.1 to 4.0.2 in /superset-frontend (#41448)
     add 84e07df735d chore(deps): bump react-draggable from 4.6.0 to 4.7.0 in /superset-frontend (#41446)
     add f49db9e5364 fix(dashboard): restore page scrolling (#41439)
     add a5dbb394e5f fix(thumbnails): add deduplication to dashboard thumbnail Celery tasks (#38576)
     add f10315f8fcc test(databases): migrate database modal Cypress tests to RTL (#41436)
     add 667005638a5 fix(dropdown): clear search input after selection in all multi-select fields (#41074)
     add c87fdfc18fc fix(i18n): defer plugin init and menu render until language pack is ready (#40729)
     add 11d7f7fb87f fix: convert ALL CAPS button labels to sentence case (#40435)
     add 0efcbcdd81c test(security): regression coverage for #36130 FAB permission view templates (#41130)
     add c03cdade39a chore(deck.gl): remove leftover debug className from Legend (#41165)
     add bfa6cfac852 fix(database): mask SSH tunnel credentials explicitly on read paths (#41293)
     add 71c8e2f69d2 fix(config): refuse to start with an empty SECRET_KEY (#41299)
     add 068a709c140 fix(config): expose build details (git SHA/build number) to admins only (#41301)
     add eaaab614934 chore(ci): correct setup-python pin version comment to v6.2.0 (#41383)
     add 8aacb6f793c fix(async): derive async channel from guest token for embedded RLS queries (closes #31492) (#41397)
     add 98d0ccd7a7f fix(reports): reliability fixes for alert/report execution (#41177)
     add 834ccf2613d fix(chart): chart description not showing (#41453)
     add ac9bf26751c chore(deps): bump vulnerable transitive deps across lockfiles (#41307)
     add 022f66a6941 fix(country-map): update Morocco GeoJSON boundaries (#41021)
     add 6f12dbf0e1c feat(api): log rejected related/distinct field access as security events (#41306)
     add dc64716c615 fix(echarts): bring annotations in front and prevent tooltip from covering annotation labels (#41174)
     add 15626a047c4 fix(sqllab): quote autocomplete table names that need it (#41199)
     add 1280eaee18a fix(mcp): include embedded_uuid in get_dashboard_info response (#41195)
     add ebb32de625c fix(cachekey): use data_cache for chart query result invalidation (#40493)
     add a1470790438 fix(bigquery): backslash-escape apostrophes in filter values (#38835)
     add 0a18779280a fix(echarts): format mixed timeseries value labels by assigned axis (#40420)
     add 21999bb7727 fix(i18n): repair corrupted Romanian catalog so it parses again (#41467)
     add cd8ac41d169 fix(datasource): validate expressions through the shared adhoc-expression checks (#41427)
     add 3eb91855212 fix(viz): use series_limit/series_limit_metric in query_obj dict (#41002)
     add 5ec09318408 fix(pandas_postprocessing): pass string operator names to GroupBy.agg to avoid FutureWarning (#41025)
     add 97cb002f46b fix(a11y): propagate tooltip string as aria-label on IconTooltip button (#41493)
     add 7587d0778a0 chore(ci): correct actions/cache version comment to v5.0.5 (#41484)
     add 78dd400ca43 chore(ci): correct actions/cache version comment to match pinned SHA (#41483)
     add 6b4255ff78b Merge branch 'master' into feat/migrate-to-vitest-for-superset-websocket
     add e62b11979c4 chore: update typescript-eslint plugins

No new revisions were added by this update.

Summary of changes:
 .github/CODEOWNERS                                 |    2 +-
 .github/actions/setup-backend/action.yml           |    2 +-
 .github/workflows/bump-python-package.yml          |    4 +-
 .github/workflows/check-python-deps.yml            |    2 +-
 .github/workflows/check_db_migration_confict.yml   |    2 +-
 .github/workflows/codeql-analysis.yml              |    4 +-
 .github/workflows/dependency-review.yml            |    6 +-
 .github/workflows/docker.yml                       |    6 +-
 .github/workflows/embedded-sdk-release.yml         |    2 +-
 .github/workflows/embedded-sdk-test.yml            |    2 +-
 .github/workflows/generate-FOSSA-report.yml        |    4 +-
 .github/workflows/github-action-validator.yml      |    2 +-
 .github/workflows/issue_creation.yml               |    2 +-
 .github/workflows/latest-release-tag.yml           |    2 +-
 .github/workflows/license-check.yml                |    4 +-
 .github/workflows/pr-lint.yml                      |    2 +-
 .github/workflows/pre-commit.yml                   |    4 +-
 .github/workflows/release.yml                      |    6 +-
 .../workflows/scheduled-docker-image-refresh.yml   |  177 +
 .github/workflows/showtime-trigger.yml             |    2 +-
 .github/workflows/superset-app-cli.yml             |    2 +-
 .github/workflows/superset-docs-deploy.yml         |    4 +-
 .github/workflows/superset-docs-verify.yml         |    6 +-
 .github/workflows/superset-e2e.yml                 |   14 +-
 .github/workflows/superset-extensions-cli.yml      |    2 +-
 .github/workflows/superset-frontend.yml            |    4 +-
 .github/workflows/superset-helm-lint.yml           |    2 +-
 .github/workflows/superset-helm-release.yml        |    2 +-
 .github/workflows/superset-playwright.yml          |    8 +-
 .../workflows/superset-python-integrationtest.yml  |    8 +-
 .github/workflows/superset-python-presto-hive.yml  |    6 +-
 .github/workflows/superset-python-unittest.yml     |    4 +-
 .github/workflows/superset-translations.yml        |    4 +-
 .github/workflows/superset-websocket.yml           |    2 +-
 .github/workflows/supersetbot.yml                  |    2 +-
 ...sync-requirements-for-python-dep-upgrade-pr.yml |   60 +
 .github/workflows/tag-release.yml                  |   10 +-
 .github/workflows/tech-debt.yml                    |    2 +-
 CHANGELOG.md                                       |    1 +
 CHANGELOG/6.1.0.md                                 | 1563 ++++
 RESOURCES/INTHEWILD.yaml                           |   68 +-
 UPDATING.md                                        |   19 +
 docker-compose.yml                                 |   17 +-
 docker/.env                                        |    2 +
 docker/docker-bootstrap.sh                         |   16 +-
 docker/entrypoints/run-server.sh                   |    2 +-
 docs/admin_docs/configuration/alerts-reports.mdx   |    2 +-
 docs/admin_docs/security/securing_superset.mdx     |   19 +
 .../extensions/contribution-types.md               |   23 +-
 .../extensions/extension-points/chat.md            |  141 +
 docs/developer_docs/sidebars.js                    |    2 +
 docs/netlify.toml                                  |   21 +-
 docs/package.json                                  |    7 +-
 .../version-6.0.0/configuration/databases.mdx      |    4 +
 docs/yarn.lock                                     |  177 +-
 helm/superset/Chart.yaml                           |    2 +-
 helm/superset/README.md                            |    9 +-
 helm/superset/templates/_helpers.tpl               |    2 -
 helm/superset/templates/deployment-worker.yaml     |    6 +
 helm/superset/templates/deployment.yaml            |    6 +
 helm/superset/values.yaml                          |  134 +-
 pyproject.toml                                     |   23 +-
 pytest.ini                                         |    2 +-
 requirements/base.in                               |    6 +
 requirements/base.txt                              |   26 +-
 requirements/development.txt                       |   31 +-
 scripts/benchmark_migration.py                     |    4 +-
 .../cypress/e2e/database/modal.test.ts             |  118 -
 superset-frontend/cypress-base/package-lock.json   |  529 +-
 superset-frontend/cypress-base/package.json        |    1 +
 superset-frontend/package-lock.json                | 1696 ++---
 superset-frontend/package.json                     |   36 +-
 .../packages/generator-superset/package.json       |    2 +-
 .../packages/superset-core/package.json            |    8 +
 .../packages/superset-core/src/chat/index.ts       |  156 +
 .../packages/superset-core/src/common/index.ts     |    2 -
 .../superset-core/src/contributions/index.ts       |   12 +-
 .../packages/superset-core/src/index.ts            |    2 +
 .../packages/superset-core/src/navigation/index.ts |   81 +
 .../packages/superset-core/src/views/index.ts      |   10 +-
 .../src/sections/advancedAnalytics.tsx             |   20 +
 .../components/RadioButtonControl.tsx              |    2 +-
 .../components/RadioButtonControl.test.tsx         |   45 +
 .../packages/superset-ui-core/README.md            |   45 +-
 .../packages/superset-ui-core/package.json         |    2 +-
 .../src/components/IconTooltip/index.tsx           |    1 +
 .../src/components/SafeMarkdown/SafeMarkdown.tsx   |   18 +-
 .../src/components/Select/AsyncSelect.tsx          |    8 +-
 .../src/components/Select/Select.stories.tsx       |    2 +-
 .../src/components/Select/Select.test.tsx          |  121 +
 .../src/components/Select/Select.tsx               |   32 +-
 .../src/components/Select/types.ts                 |   12 +
 .../src/connection/SupersetClient.ts               |    1 +
 .../src/connection/SupersetClientClass.ts          |   20 +
 .../superset-ui-core/src/connection/types.ts       |    1 +
 .../test/components/SafeMarkdown.test.tsx          |   32 +
 .../test/connection/SupersetClient.test.ts         |    6 +-
 .../test/connection/SupersetClientClass.test.ts    |   71 +
 .../tests/chart/handlebars-format-date.spec.ts     |    9 +-
 .../tests/dashboard/clear-all-filters.spec.ts      |    5 +-
 .../mixed-chart-dashboard-filters.spec.ts          |   20 +-
 .../tests/embedded/pivot-collapse-state.spec.ts    |    5 +-
 .../src/controlPanel.ts                            |    3 +-
 .../scripts/Country Map GeoJSON Generator.ipynb    |  Bin 11215237 -> 11681332 bytes
 .../src/CountryMap.ts                              |  298 +-
 .../src/countries/morocco.geojson                  |  Bin 53627 -> 47809 bytes
 .../legacy-plugin-chart-country-map/src/index.ts   |    7 +-
 .../src/transformProps.ts                          |   19 +-
 .../test/CountryMap.test.tsx                       |   97 +-
 .../test/transformProps.test.ts                    |   76 +
 .../src/controlPanel.tsx                           |    3 +-
 .../legacy-plugin-chart-rose/src/controlPanel.tsx  |    3 +-
 .../legacy-plugin-chart-world-map/src/WorldMap.ts  |   37 +-
 .../test/WorldMap.test.ts                          |  263 +-
 .../legacy-preset-chart-nvd3/src/NVD3Controls.tsx  |    3 +-
 .../plugin-chart-ag-grid-table/src/buildQuery.ts   |   30 +-
 .../test/buildQuery.test.ts                        |   69 +
 .../BigNumberPeriodOverPeriod/buildQuery.ts        |   18 +-
 .../BigNumberPeriodOverPeriod/transformProps.ts    |    6 +-
 .../BigNumberTotal/transformProps.test.ts          |   50 +
 .../src/BigNumber/BigNumberTotal/transformProps.ts |    9 +-
 .../src/BigNumber/BigNumberViz.tsx                 |    4 +-
 .../src/BoxPlot/controlPanel.ts                    |   17 +-
 .../src/BoxPlot/transformProps.ts                  |   33 +-
 .../plugin-chart-echarts/src/BoxPlot/types.ts      |    1 +
 .../src/MixedTimeseries/controlPanel.tsx           |   19 +-
 .../src/MixedTimeseries/transformProps.ts          |   26 +-
 .../plugin-chart-echarts/src/Pie/controlPanel.tsx  |    3 +-
 .../src/Radar/controlPanel.tsx                     |    3 +-
 .../src/Radar/transformProps.ts                    |   18 +-
 .../src/Sunburst/controlPanel.tsx                  |   17 +-
 .../src/Sunburst/transformProps.ts                 |    4 +
 .../src/Timeseries/Area/controlPanel.tsx           |    1 -
 .../src/Timeseries/EchartsTimeseries.test.tsx      |  263 +-
 .../src/Timeseries/EchartsTimeseries.tsx           |   80 +-
 .../src/Timeseries/Regular/Bar/controlPanel.tsx    |    1 -
 .../src/Timeseries/Regular/Line/controlPanel.tsx   |    1 -
 .../Timeseries/Regular/Scatter/controlPanel.tsx    |    1 -
 .../Timeseries/Regular/SmoothLine/controlPanel.tsx |    1 -
 .../src/Timeseries/Step/controlPanel.tsx           |    1 -
 .../src/Timeseries/buildQuery.ts                   |    6 +
 .../src/Timeseries/transformProps.ts               |   15 +-
 .../src/Timeseries/transformers.ts                 |    4 +
 .../src/components/Echart.test.tsx                 |  223 +
 .../plugin-chart-echarts/src/components/Echart.tsx |   27 +-
 .../plugins/plugin-chart-echarts/src/constants.ts  |    4 +
 .../plugins/plugin-chart-echarts/src/controls.tsx  |    1 -
 .../plugins/plugin-chart-echarts/src/types.ts      |    8 +
 .../plugin-chart-echarts/src/utils/tooltip.ts      |   50 +-
 .../plugin-chart-echarts/src/utils/treeBuilder.ts  |   16 +-
 .../BigNumberPeriodOverPeriod/buildQuery.test.ts   |   73 +
 .../test/BoxPlot/transformProps.test.ts            |   46 +
 .../test/MixedTimeseries/transformProps.test.ts    |  195 +-
 .../test/Radar/transformProps.test.ts              |   56 +
 .../test/Sunburst/transformProps.test.ts           |   54 +-
 .../test/Timeseries/transformProps.test.ts         |    6 +-
 .../test/utils/treeBuilder.test.ts                 |  375 +
 .../plugin-chart-point-cluster-map/package.json    |    2 +-
 .../plugins/plugin-chart-table/src/buildQuery.ts   |   94 +-
 .../plugin-chart-table/test/buildQuery.test.ts     |  247 +-
 .../src/components/Legend.test.tsx                 |   71 +
 .../preset-chart-deckgl/src/components/Legend.tsx  |   58 +-
 .../plugins/preset-chart-deckgl/src/utils.test.ts  |   47 +-
 .../plugins/preset-chart-deckgl/src/utils.ts       |    9 +-
 superset-frontend/scripts/check-custom-rules.js    |   75 +-
 .../components/EditorWrapper/useKeywords.test.ts   |   62 +-
 .../SqlLab/components/EditorWrapper/useKeywords.ts |   10 +-
 .../src/SqlLab/components/SqlEditor/index.tsx      |    2 +-
 .../SqlEditorTabHeader/SqlEditorTabHeader.test.tsx |  171 +-
 .../SqlLab/components/SqlEditorTabHeader/index.tsx |   82 +-
 .../TableExploreTree/TreeNodeRenderer.tsx          |   10 +-
 .../TemplateParamsEditor.test.tsx                  |   18 +-
 .../components/TemplateParamsEditor/index.tsx      |   25 +-
 .../src/SqlLab/reducers/sqlLab.test.ts             |   21 +
 superset-frontend/src/SqlLab/reducers/sqlLab.ts    |   16 +-
 .../src/components/GridTable/Header.test.tsx       |  186 +-
 .../src/components/GridTable/Header.tsx            |   58 +-
 superset-frontend/src/core/chat/ChatHost.test.tsx  |  277 +
 superset-frontend/src/core/chat/ChatHost.tsx       |  133 +
 .../src/core/chat/ChatProvider.test.ts             |  257 +
 superset-frontend/src/core/chat/ChatProvider.ts    |  209 +
 superset-frontend/src/core/chat/index.test.ts      |   68 +
 superset-frontend/src/core/chat/index.ts           |   82 +
 .../src/core/editors/EditorProviders.test.ts       |   27 -
 .../src/core/editors/EditorProviders.ts            |   60 +-
 superset-frontend/src/core/editors/index.ts        |  135 +-
 superset-frontend/src/core/index.ts                |    2 +
 superset-frontend/src/core/menus/index.ts          |   23 +-
 .../src/core/navigation/index.test.ts              |  124 +
 superset-frontend/src/core/navigation/index.ts     |   94 +
 superset-frontend/src/core/sqlLab/index.ts         |    2 +-
 .../src/core/{utils.ts => storeUtils.ts}           |   15 +-
 superset-frontend/src/core/utils.ts                |   67 +-
 superset-frontend/src/core/views/index.ts          |   39 +-
 superset-frontend/src/dashboard/actions/hydrate.ts |    2 +-
 .../DashboardBuilder/DashboardContainer.test.tsx   |    6 +-
 .../DashboardBuilder/DashboardContainer.tsx        |   10 +-
 .../components/gridComponents/Chart/Chart.test.tsx |   73 +
 .../components/gridComponents/Chart/Chart.tsx      |   74 +-
 .../components/gridComponents/Tabs/Tabs.test.tsx   |    2 +-
 .../components/gridComponents/Tabs/Tabs.tsx        |    2 +-
 .../components/nativeFilters/selectors.test.ts     |   61 +
 .../components/nativeFilters/selectors.ts          |   18 +-
 .../dashboard/containers/DashboardPage.test.tsx    |  118 +-
 .../src/dashboard/containers/DashboardPage.tsx     |   20 +-
 .../reducers/undoableDashboardLayout.test.ts       |  160 +
 .../dashboard/reducers/undoableDashboardLayout.ts  |   58 +-
 superset-frontend/src/embedded/index.tsx           |   80 +-
 .../explore/components/DataTableControl/index.tsx  |  240 +-
 .../DataTableControl/useTableColumns.test.ts       |  224 -
 .../components/ExploreViewContainer/index.tsx      |    3 +-
 .../src/explore/components/SaveModal.test.tsx      |  166 +
 .../src/explore/components/SaveModal.tsx           |   38 +-
 .../controls/DateFilterControl/DateFilterLabel.tsx |    4 +-
 .../tests/DateFilterLabel.test.tsx                 |    6 +-
 .../controls/MapViewControl/MapViewControl.tsx     |    4 +-
 .../useExploreAdditionalActionsMenu/index.tsx      |  176 +-
 .../useExploreAdditionalActionsMenu.test.tsx       |  150 +
 .../src/explore/exploreUtils/exportChart.test.ts   |  216 +-
 .../src/explore/exploreUtils/index.ts              |   52 +-
 .../src/extensions/ExtensionsLoader.test.ts        |    1 -
 .../src/extensions/ExtensionsStartup.test.tsx      |   10 +
 .../src/extensions/ExtensionsStartup.tsx           |   29 +-
 superset-frontend/src/extensions/Namespaces.ts     |   60 +
 .../src/features/alerts/AlertReportModal.test.tsx  |   55 +
 .../src/features/alerts/AlertReportModal.tsx       |  141 +-
 .../alerts/hooks/useExecuteReportSchedule.test.ts  |  125 +
 .../alerts/hooks/useExecuteReportSchedule.ts       |   96 +
 .../databases/DatabaseModal/index.test.tsx         |  175 +-
 .../src/features/databases/DatabaseModal/index.tsx |    2 +-
 .../src/features/home/DashboardTable.test.tsx      |    2 +-
 .../src/features/home/DashboardTable.tsx           |    2 +-
 superset-frontend/src/features/home/EmptyState.tsx |    2 +-
 superset-frontend/src/features/home/Menu.test.tsx  |  110 +-
 superset-frontend/src/features/home/Menu.tsx       |   34 +-
 .../src/features/home/RightMenu.test.tsx           |   44 +-
 superset-frontend/src/features/home/RightMenu.tsx  |   18 +-
 .../src/features/roles/RoleFormItems.test.tsx      |   66 +
 .../src/features/roles/RoleFormItems.tsx           |  105 +-
 superset-frontend/src/features/roles/utils.test.ts |   10 +
 superset-frontend/src/features/roles/utils.ts      |   24 +-
 .../semanticLayers/SemanticLayerModal.test.tsx     |   99 +-
 .../features/semanticLayers/SemanticLayerModal.tsx |   77 +-
 .../features/semanticLayers/jsonFormsHelpers.tsx   |   56 +-
 .../src/features/tags/BulkTagModal.test.tsx        |  119 +-
 .../components/Select/SelectFilterPlugin.test.tsx  |   39 +
 .../components/Select/SelectFilterPlugin.tsx       |   22 +-
 .../src/hooks/useThemeMenuItems.test.tsx           |    1 -
 .../pages/AlertReportList/AlertReportList.test.tsx |   67 +
 .../src/pages/AlertReportList/index.tsx            |   61 +-
 .../src/pages/DashboardList/index.tsx              |    2 +-
 .../DatasetList/DatasetList.behavior.test.tsx      |  135 +
 superset-frontend/src/pages/DatasetList/index.tsx  |   34 +-
 .../src/pages/SavedQueryList/index.tsx             |   52 +-
 superset-frontend/src/utils/common.test.tsx        |  248 +-
 superset-frontend/src/utils/export.test.ts         |   58 +-
 superset-frontend/src/utils/export.ts              |   30 +-
 superset-frontend/src/utils/localStorageHelpers.ts |    2 +
 .../utils/sanitizeDocumentTitle.test.ts}           |   32 +-
 .../utils/sanitizeDocumentTitle.ts}                |   12 +-
 superset-frontend/src/views/App.tsx                |  171 +-
 superset-frontend/src/views/menu.tsx               |   55 +-
 superset-frontend/src/views/routePaths.ts          |   60 +
 superset-frontend/src/views/routes.tsx             |  208 +-
 superset-websocket/package-lock.json               |  526 +-
 superset-websocket/package.json                    |   11 +-
 .../advanced_data_type/plugins/internet_address.py |    6 +-
 .../advanced_data_type/plugins/internet_port.py    |    6 +-
 superset/async_events/async_query_manager.py       |   55 +-
 superset/cachekeys/api.py                          |    5 +-
 superset/charts/data/dashboard_filter_context.py   |   13 +-
 superset/charts/schemas.py                         |   12 +
 superset/cli/test_db.py                            |    5 +-
 superset/commands/dashboard/export.py              |  202 +-
 superset/commands/distributed_lock/acquire.py      |   36 +-
 superset/commands/report/exceptions.py             |   39 +
 superset/commands/report/execute.py                |  102 +-
 superset/commands/report/execute_now.py            |  134 +
 superset/commands/security/update.py               |   33 +-
 superset/common/query_object.py                    |    3 +
 superset/common/utils/dataframe_utils.py           |    9 +-
 superset/config.py                                 |   99 +-
 superset/daos/base.py                              |  108 +-
 superset/daos/chart.py                             |    1 +
 superset/daos/dataset.py                           |   21 +
 superset/dashboards/api.py                         |    2 -
 superset/databases/api.py                          |   14 +-
 superset/datasets/api.py                           |   56 +-
 superset/datasets/schemas.py                       |   14 +
 superset/datasource/api.py                         |   94 +-
 superset/db_engine_specs/bigquery.py               |   98 +-
 superset/db_engine_specs/databricks.py             |   10 +-
 superset/db_engine_specs/doris.py                  |    4 +-
 superset/db_engine_specs/duckdb.py                 |    4 +-
 superset/db_engine_specs/gsheets.py                |   30 +-
 superset/db_engine_specs/hive.py                   |    2 +-
 superset/db_engine_specs/impala.py                 |    4 +-
 superset/db_engine_specs/postgres.py               |    6 +-
 superset/db_engine_specs/presto.py                 |   19 +-
 superset/db_engine_specs/snowflake.py              |    4 +-
 superset/db_engine_specs/starrocks.py              |   16 +-
 superset/db_engine_specs/trino.py                  |  122 +-
 superset/distributed_lock/__init__.py              |    6 +-
 superset/exceptions.py                             |    8 +
 superset/extensions/metadb.py                      |    2 +-
 superset/extensions/ssh.py                         |   51 +-
 superset/extensions/utils.py                       |    1 +
 superset/initialization/__init__.py                |   62 +-
 superset/mcp_service/app.py                        |    2 +
 .../chart/prompts/create_chart_guided.py           |   10 +
 superset/mcp_service/chart/schemas.py              |    7 +-
 .../chart/tool/get_chart_type_schema.py            |    1 +
 superset/mcp_service/dashboard/schemas.py          |  246 +-
 superset/mcp_service/dashboard/tool/__init__.py    |    2 +
 .../dashboard/tool/generate_dashboard.py           |  154 +-
 .../dashboard/tool/get_dashboard_info.py           |    3 +-
 .../mcp_service/dashboard/tool/update_dashboard.py |  269 +
 superset/mcp_service/dataset/schemas.py            |   40 +-
 .../dataset/tool/create_virtual_dataset.py         |   84 +-
 superset/mcp_service/explore/schemas.py            |   92 +
 .../explore/tool/generate_explore_link.py          |  203 +-
 superset/mcp_service/jwt_verifier.py               |   67 +-
 superset/mcp_service/mcp_config.py                 |   28 +-
 superset/mcp_service/server.py                     |    7 +
 superset/migrations/shared/utils.py                |    4 +-
 ...fdf31bdd4_add_published_column_to_dashboards.py |    2 +-
 ...14-38_a9422eeaae74_new_dataset_models_take_2.py |    6 +-
 ..._13-00_c747c78868b6_migrating_legacy_treemap.py |    5 +-
 ...-16_a39867932713_query_context_to_mediumtext.py |    5 +-
 ...2af1b_drop_postgres_enum_constrains_for_tags.py |    9 +-
 ...-08_10-22_4c5da39be729_migrate_treemap_chart.py |    5 +-
 superset/models/core.py                            |    2 +-
 superset/models/helpers.py                         |   95 +-
 superset/queries/saved_queries/api.py              |    2 +
 superset/queries/saved_queries/filters.py          |   15 +-
 superset/reports/api.py                            |   81 +
 superset/reports/notifications/webhook.py          |   21 +-
 superset/reports/schemas.py                        |   12 +
 superset/result_set.py                             |   18 +-
 superset/row_level_security/schemas.py             |   25 +-
 superset/security/api.py                           |   62 +-
 superset/security/guest_token.py                   |   35 +-
 superset/security/manager.py                       |  174 +-
 superset/sql/parse.py                              |   15 +-
 superset/superset_typing.py                        |    1 +
 superset/tags/api.py                               |   23 +-
 superset/tasks/thumbnails.py                       |   10 +-
 superset/translations/es/LC_MESSAGES/messages.po   |   69 +-
 superset/translations/fr/LC_MESSAGES/messages.po   |   72 +-
 superset/translations/lv/LC_MESSAGES/messages.po   |    6 +
 superset/translations/messages.pot                 |    6 +
 superset/translations/ro/LC_MESSAGES/messages.po   |   11 +-
 superset/translations/tr/LC_MESSAGES/messages.po   | 7734 +++++++++++---------
 superset/utils/core.py                             |   33 +-
 superset/utils/csv.py                              |   14 +-
 superset/utils/encrypt.py                          |    2 +-
 superset/utils/excel.py                            |    6 +-
 superset/utils/file.py                             |   13 +
 superset/utils/mock_data.py                        |   13 +-
 superset/utils/pandas_postprocessing/prophet.py    |   18 +-
 superset/utils/pandas_postprocessing/utils.py      |   26 +-
 superset/utils/screenshots.py                      |  104 +-
 superset/utils/slack.py                            |   12 +-
 superset/utils/version.py                          |   17 +
 superset/utils/webdriver.py                        |  109 +-
 superset/views/base.py                             |   26 +-
 superset/views/base_api.py                         |   27 +-
 superset/views/health.py                           |   19 +-
 superset/views/log/api.py                          |    5 +-
 superset/viz.py                                    |   60 +-
 tests/common/assert_utils.py                       |   59 +
 .../data_loading/pandas/pandas_data_loader.py      |    3 +-
 tests/integration_tests/base_api_tests.py          |   10 +-
 tests/integration_tests/cachekeys/api_tests.py     |   47 +-
 tests/integration_tests/celery_tests.py            |    5 +-
 tests/integration_tests/conftest.py                |   29 +-
 tests/integration_tests/core_tests.py              |   16 +
 .../integration_tests/dashboards/commands_tests.py |   67 +-
 tests/integration_tests/databases/api_tests.py     |   71 +
 .../databases/commands/upload_test.py              |   11 +-
 tests/integration_tests/datasets/api_tests.py      |  173 +-
 tests/integration_tests/datasets/commands_tests.py |    7 +-
 tests/integration_tests/datasource/api_tests.py    |  127 +
 tests/integration_tests/datasource_tests.py        |   20 +-
 .../db_engine_specs/hive_tests.py                  |   10 +-
 .../db_engine_specs/presto_tests.py                |   22 +-
 tests/integration_tests/email_tests.py             |   40 +-
 .../integration_tests/fixtures/energy_dashboard.py |    4 +-
 .../fixtures/unicode_dashboard.py                  |    4 +-
 .../fixtures/world_bank_dashboard.py               |    4 +-
 .../queries/saved_queries/api_tests.py             |   74 +-
 .../queries/saved_queries/commands_tests.py        |   45 +-
 tests/integration_tests/reports/api_tests.py       |   96 +-
 tests/integration_tests/reports/commands_tests.py  |   19 +-
 tests/integration_tests/security/api_tests.py      |   37 +-
 tests/integration_tests/sqllab_tests.py            |   14 +-
 tests/integration_tests/superset_test_config.py    |    4 +
 tests/integration_tests/viz_tests.py               |   75 +-
 .../async_events/async_query_manager_tests.py      |   93 +-
 tests/unit_tests/charts/test_chart_data_api.py     |   96 +
 .../cli/test_db_test.py}                           |   25 +-
 tests/unit_tests/commands/dashboard/export_test.py |  526 +-
 tests/unit_tests/commands/export_test.py           |   28 +-
 tests/unit_tests/commands/report/execute_test.py   |  315 +
 .../unit_tests/commands/report/test_execute_now.py |  198 +
 tests/unit_tests/commands/security/rls_test.py     |   91 +
 .../common/test_query_context_factory.py           |    4 +-
 tests/unit_tests/common/test_time_shifts.py        |   88 +
 tests/unit_tests/config_swagger_ui_test.py         |   77 +
 tests/unit_tests/config_test.py                    |   37 +
 .../daos/test_base_relationship_filters.py         |  203 +
 .../dashboards/export_append_charts_tests.py       |   60 +
 .../datasets/commands/importers/v1/import_test.py  |   58 +
 .../datasets/test_datetime_format_detector.py      |    4 +-
 tests/unit_tests/db_engine_specs/test_bigquery.py  |  286 +
 tests/unit_tests/db_engine_specs/test_doris.py     |    6 +-
 tests/unit_tests/db_engine_specs/test_gsheets.py   |   45 +-
 tests/unit_tests/db_engine_specs/test_sqlite.py    |    7 +-
 tests/unit_tests/db_engine_specs/test_starrocks.py |   75 +-
 tests/unit_tests/db_engine_specs/test_trino.py     |  156 +-
 tests/unit_tests/extensions/ssh_test.py            |  180 +
 tests/unit_tests/extensions/test_sqlalchemy.py     |   47 +-
 tests/unit_tests/initialization_test.py            |   55 +-
 .../mcp_service/chart/tool/test_list_charts.py     |   23 +
 .../mcp_service/chart/tool/test_update_chart.py    |    5 +-
 .../dashboard/test_dashboard_schemas.py            |  291 +-
 .../dashboard/tool/test_dashboard_generation.py    |  269 +-
 .../dashboard/tool/test_dashboard_tools.py         |   96 +
 .../dashboard/tool/test_update_dashboard.py        |  311 +
 .../mcp_service/dataset/tool/test_dataset_tools.py |  268 +-
 .../explore/tool/test_generate_explore_link.py     |  281 +-
 tests/unit_tests/mcp_service/test_jwt_verifier.py  |   77 +
 tests/unit_tests/mcp_service/test_mcp_config.py    |   47 +
 tests/unit_tests/mcp_service/test_mcp_server.py    |   28 +
 tests/unit_tests/models/core_test.py               |   16 +
 .../unit_tests/models/test_validate_expression.py  |   42 +-
 .../pandas_postprocessing/test_aggregate.py        |   28 +
 .../pandas_postprocessing/test_prophet.py          |   38 +
 tests/unit_tests/queries/query_object_test.py      |    1 +
 .../reports/notifications/webhook_tests.py         |  155 +
 tests/unit_tests/result_set_test.py                |   90 +
 .../unit_tests/row_level_security}/__init__.py     |    0
 tests/unit_tests/row_level_security/schema_test.py |   64 +
 tests/unit_tests/security/api_test.py              |   59 +-
 tests/unit_tests/security/guest_rls_test.py        |    4 +-
 .../unit_tests/security/guest_token_audit_test.py  |   74 +
 tests/unit_tests/security/manager_test.py          |  139 +-
 tests/unit_tests/sql/parse_tests.py                |   11 +
 tests/unit_tests/tasks/test_thumbnails.py          |  145 +
 tests/unit_tests/test_check_secret_key.py          |   74 +
 tests/unit_tests/test_init_extensions_logging.py   |   55 +
 tests/unit_tests/test_viz_cache_key.py             |    4 +-
 tests/unit_tests/utils/csv_tests.py                |   87 +-
 tests/unit_tests/utils/test_core.py                |    5 +-
 tests/unit_tests/utils/test_file.py                |   22 +-
 .../utils/test_playwright_migration_working.py     |   99 +
 .../unit_tests/utils/test_screenshot_cache_fix.py  |  115 +-
 tests/unit_tests/utils/version_test.py             |   60 +
 tests/unit_tests/utils/webdriver_test.py           |  101 +-
 tests/unit_tests/views/test_base.py                |   54 +
 tests/unit_tests/views/test_base_theme_helpers.py  |   74 +-
 tests/unit_tests/views/test_health.py              |   69 +
 tests/unit_tests/views/test_utils.py               |    2 +-
 463 files changed, 27172 insertions(+), 8444 deletions(-)
 create mode 100644 .github/workflows/scheduled-docker-image-refresh.yml
 create mode 100644 .github/workflows/sync-requirements-for-python-dep-upgrade-pr.yml
 create mode 100644 CHANGELOG/6.1.0.md
 create mode 100644 docs/developer_docs/extensions/extension-points/chat.md
 delete mode 100644 superset-frontend/cypress-base/cypress/e2e/database/modal.test.ts
 create mode 100644 superset-frontend/packages/superset-core/src/chat/index.ts
 create mode 100644 superset-frontend/packages/superset-core/src/navigation/index.ts
 create mode 100644 superset-frontend/plugins/legacy-plugin-chart-country-map/test/transformProps.test.ts
 create mode 100644 superset-frontend/plugins/plugin-chart-echarts/src/components/Echart.test.tsx
 create mode 100644 superset-frontend/plugins/plugin-chart-echarts/test/BigNumber/BigNumberPeriodOverPeriod/buildQuery.test.ts
 create mode 100644 superset-frontend/plugins/preset-chart-deckgl/src/components/Legend.test.tsx
 create mode 100644 superset-frontend/src/core/chat/ChatHost.test.tsx
 create mode 100644 superset-frontend/src/core/chat/ChatHost.tsx
 create mode 100644 superset-frontend/src/core/chat/ChatProvider.test.ts
 create mode 100644 superset-frontend/src/core/chat/ChatProvider.ts
 create mode 100644 superset-frontend/src/core/chat/index.test.ts
 create mode 100644 superset-frontend/src/core/chat/index.ts
 create mode 100644 superset-frontend/src/core/navigation/index.test.ts
 create mode 100644 superset-frontend/src/core/navigation/index.ts
 copy superset-frontend/src/core/{utils.ts => storeUtils.ts} (77%)
 create mode 100644 superset-frontend/src/dashboard/reducers/undoableDashboardLayout.test.ts
 delete mode 100644 superset-frontend/src/explore/components/DataTableControl/useTableColumns.test.ts
 create mode 100644 superset-frontend/src/explore/components/useExploreAdditionalActionsMenu/useExploreAdditionalActionsMenu.test.tsx
 create mode 100644 superset-frontend/src/extensions/Namespaces.ts
 create mode 100644 superset-frontend/src/features/alerts/hooks/useExecuteReportSchedule.test.ts
 create mode 100644 superset-frontend/src/features/alerts/hooks/useExecuteReportSchedule.ts
 create mode 100644 superset-frontend/src/features/roles/RoleFormItems.test.tsx
 copy superset-frontend/{packages/superset-ui-core/src/utils/makeSingleton.ts => src/utils/sanitizeDocumentTitle.test.ts} (59%)
 copy superset-frontend/{packages/superset-ui-core/src/utils/ensureIsArray.ts => src/utils/sanitizeDocumentTitle.ts} (71%)
 create mode 100644 superset-frontend/src/views/routePaths.ts
 create mode 100644 superset/commands/report/execute_now.py
 create mode 100644 superset/mcp_service/dashboard/tool/update_dashboard.py
 create mode 100644 superset/mcp_service/explore/schemas.py
 create mode 100644 tests/common/assert_utils.py
 copy tests/{integration_tests/superset_test_config_sqllab_backend_persist_off.py => unit_tests/cli/test_db_test.py} (53%)
 create mode 100644 tests/unit_tests/commands/report/test_execute_now.py
 create mode 100644 tests/unit_tests/config_swagger_ui_test.py
 create mode 100644 tests/unit_tests/daos/test_base_relationship_filters.py
 create mode 100644 tests/unit_tests/dashboards/export_append_charts_tests.py
 create mode 100644 tests/unit_tests/mcp_service/dashboard/tool/test_update_dashboard.py
 copy {superset-core/src/superset_core/common => tests/unit_tests/row_level_security}/__init__.py (100%)
 create mode 100644 tests/unit_tests/row_level_security/schema_test.py
 create mode 100644 tests/unit_tests/security/guest_token_audit_test.py
 create mode 100644 tests/unit_tests/tasks/test_thumbnails.py
 create mode 100644 tests/unit_tests/test_check_secret_key.py
 create mode 100644 tests/unit_tests/test_init_extensions_logging.py
 create mode 100644 tests/unit_tests/utils/version_test.py
 create mode 100644 tests/unit_tests/views/test_health.py