This is an automated email from the ASF dual-hosted git repository.
EnxDev pushed a change to branch enxdev/fix/custom-tabs
in repository https://gitbox.apache.org/repos/asf/superset.git
from dbe994d3376 Merge branch 'master' into enxdev/fix/custom-tabs
add 2926d6f6a9b chore(deps): bump actions/labeler from 6.2.0 to 7.0.0
(#42332)
add 1dd3103c246 chore(deps): bump github/codeql-action/analyze from 4.37.0
to 4.37.1 (#42331)
add 873da606ddf chore(deps): bump github/codeql-action/init from 4.37.0 to
4.37.1 (#42334)
add ab553c37ab9 chore(deps-dev): bump @formatjs/intl-durationformat from
0.10.17 to 0.10.18 in /superset-frontend (#42337)
add 66543184913 chore(deps): bump caniuse-lite from 1.0.30001805 to
1.0.30001806 in /docs (#42333)
add 2e72080a163 chore(deps): bump echarts to 6.1.0 with locale and
containLabel guards (#42315) (#42321)
add c5f6d33d211 docs: add pattern to the list of organisations using
superset (#42341)
add cc8edd22318 chore(deps): bump ag-grid from 36.0.0 to 36.0.1 in
/superset-frontend (#42338)
add cb319c9b817 fix(mcp): trust dataset is_dttm flag when applying
time_grain to VARCHAR temporal columns (#42288)
add f2848d951c4 chore(deps-dev): update taos-ws-py requirement from
>=0.6.9 to >=0.7.0 (#42344)
add 6b02a423ef8 chore(deps-dev): bump the storybook group in
/superset-frontend with 5 updates (#42355)
add df8bbb548a3 fix(native-filters): keep filter value input caret at
inline start (#42323)
add 2317d9cf918 fix(mcp): truncate query-tool responses instead of
hard-failing (#42244)
add fdb9c152f06 chore(deps): bump nh3 from 0.3.5 to 0.3.6 (#42349)
add 6317113ee85 chore(deps): bump pydantic from 2.11.7 to 2.13.4 (#42350)
add 1049826bc15 chore(deps): bump sqlalchemy-continuum from 1.6.0 to 1.7.0
(#42351)
add 206fe7ab120 fix(embedded): stop rejecting guest chart data built from
control-specific params keys (#42295)
add c43effa4a32 fix(explore): show the beginning date on time-series
x-axis line charts (#42046)
add d41f0febaee fix(api): add example to get_export_ids_schema so Swagger
"Try it out" pre-fills a valid array (#42265)
add 14c96761e55 chore: SQLAlchemy User cascade backref warnings are
irrelevant (#42360)
add 5776aff50ac fix(charts): handle async (202) chart-data responses in
StatefulChart (#42157)
add bcf0361a919 feat(KustoKQL): Add support for NULL / IS NOT NULL
operator (#37890)
add 921f75d5444 chore(deps): bump pillow from 12.2.0 to 12.3.0 (#42348)
add 49f4e84b486 chore(deps): bump flask-compress from 1.17 to 1.24 (#42346)
add cfb04a6e79e chore(deps-dev): bump databricks-sql-connector from 4.2.6
to 4.3.0 (#42347)
add 3ff5dbfe81e fix(native-filters): use FILTER_STATE_CACHE_CONFIG timeout
for dynamic filter option queries (#38910)
add 4ee500e47bf fix(explore): render Jinja before validating legacy chart
filters (#41996)
add a1142b0f915 fix(dataset): disable duplicate button when name is empty
(#42217)
add 4f017de5326 docs(gunicorn): correct dead links in values.yaml (#42385)
add 542416ac6e7 chore(deps): bump @deck.gl/mapbox from 9.3.6 to 9.3.7 in
/superset-frontend in the deckgl group (#42377)
add 5b5e5cf82da chore(deps): bump actions/checkout from 7.0.0 to 7.0.1
(#42376)
add 16de95f0246 chore(deps): bump immer from 11.1.11 to 11.1.15 in
/superset-frontend (#42378)
add 0b9a9c5d038 chore(deps): bump body-parser from 1.20.5 to 1.20.6 in
/docs (#42370)
add d2ea5e9a1a5 chore(deps-dev): bump brace-expansion from 1.1.15 to
1.1.16 in /superset-embedded-sdk (#42369)
add 67c3fea0ce7 fix(security): bump pyasn1 from 0.6.3 to 0.6.4 (#42363)
add 0792f98910d fix(security): bump pillow from 12.2.0 to 12.3.0 (#42362)
add 65528a5b761 docs(map-tiles): add Yandex Maps Tiles API configuration
(#42375)
add 3bdf134aaa2 fix(logging): stop noisy LocalProxy-not-mapped warning for
guest users (#42306)
add 7eceebce1ce feat(dbspec): Support apache datafusion dbspec (#42374)
add f7d0ec3a2c4 chore: add @rusackas to migration code owners (#42398)
add 3a53c4ebc3b chore(deps): raise SQLAlchemy lower bound to >=1.4.43
(#41123)
add 99841fb504b fix(async): include datasets and rev claims in guest
channel HMAC (#41487)
add f3fa1c7d4f6 fix(reports): write a single execution log row per report
run (#29857) (#41966)
add 134cae07ae1 fix(ui): update stale Ant Design v6 internal class
selectors (#42146)
add 52552c8278e test(dashboard): migrate dashboard force-refresh control
to Playwright (#41433)
add 5ffdac1871d fix(mcp): align pooled screenshot override signature
(#42384)
add 857a194c667 chore(deps): bump postcss from 8.5.16 to 8.5.23 in /docs
(#42397)
add e9f61c1e662 chore(deps): bump postcss from 8.5.15 to 8.5.23 in
/superset-frontend (#42396)
add 83ea9a10253 chore(deps): bump js-yaml from 5.2.1 to 5.2.2 in /docs
(#42395)
add b82ff27f9cc fix(sqllab): render each query error once on async
fallback (#42318)
add 2a07f7967d4 chore(deps): bump brace-expansion, @cypress/code-coverage
and eslint in /superset-frontend/cypress-base (#42275)
add c65bedf2d76 fix(extensions): make LOCAL_EXTENSIONS hot reload reliable
in Docker (#40084)
add 5775bdbe5ec chore(deps-dev): bump postcss from 8.5.15 to 8.5.23 in
/superset-embedded-sdk (#42394)
add 8c37d627aa9 fix: allow clearing database/schema in DatasourceModal
(#39918)
add d4652460eed chore(deps-dev): bump google-cloud-bigquery from 3.42.1 to
3.42.2 (#42422)
add 8864b7a0a31 chore(deps-dev): update oracledb requirement from
<5,>=2.0.0 to >=4.0.2,<5 (#42421)
add 9d6fbdceff8 chore(deps-dev): update ibm-db-sa requirement from
<=0.4.4,>0.3.8 to <=0.4.4,>=0.4.4 (#42419)
add 4f3a1a50582 chore(deps-dev): update snowflake-sqlalchemy requirement
from <2,>=1.10.2 to >=1.11.0,<2 (#42418)
add dd08c4f36c1 chore(deps-dev): update flightsql-dbapi requirement from
<0.3,>=0.2.0 to >=0.2.2,<0.3 (#42416)
add 4443357f334 chore(deps): bump flask-caching from 2.3.1 to 2.4.1
(#42413)
add e1ffa53d9b4 chore(deps): bump pyparsing from 3.2.3 to 3.3.2 (#42420)
add 6c2ccc44bdc chore(table): drop dead th.ant-column-cell selector
(#42407)
add e3d3262e977 chore(deps-dev): bump grpcio from 1.81.1 to 1.83.0 (#42414)
add 9a025267bdf fix(reports): positive readiness check for non-tiled
screenshots (#42253)
add ba0900d2b32 fix(semantic-layers): show a friendly warning when schema
enrichment falls back (#42400)
add 4734c0d93aa Merge branch 'master' into enxdev/fix/custom-tabs
No new revisions were added by this update.
Summary of changes:
.github/CODEOWNERS | 2 +-
.github/dependabot.yml | 4 +
.github/workflows/bump-python-package.yml | 2 +-
.github/workflows/check-python-deps.yml | 2 +-
.github/workflows/check_db_migration_confict.yml | 2 +-
.github/workflows/codeql-analysis.yml | 8 +-
.github/workflows/dependency-review.yml | 4 +-
.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 | 2 +-
.github/workflows/github-action-validator.yml | 2 +-
.github/workflows/issue_creation.yml | 2 +-
.github/workflows/labeler.yml | 2 +-
.github/workflows/latest-release-tag.yml | 2 +-
.github/workflows/license-check.yml | 2 +-
.github/workflows/pr-lint.yml | 2 +-
.github/workflows/pre-commit.yml | 2 +-
.github/workflows/release.yml | 2 +-
.../workflows/scheduled-docker-image-refresh.yml | 2 +-
.github/workflows/showtime-trigger.yml | 2 +-
.github/workflows/superset-app-cli.yml | 2 +-
.github/workflows/superset-docs-deploy.yml | 2 +-
.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-test.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 | 2 +-
.github/workflows/tag-release.yml | 4 +-
.github/workflows/tech-debt.yml | 2 +-
.gitignore | 1 +
RESOURCES/INTHEWILD.yaml | 5 +
docker-compose.yml | 1 +
docker/docker-bootstrap.sh | 4 +-
docs/admin_docs/configuration/map-tiles.mdx | 29 +
docs/package.json | 4 +-
docs/src/data/databases.json | 108 +-
docs/static/img/databases/datafusion.png | Bin 0 -> 14784 bytes
docs/static/img/logos/pattern_logo.png | Bin 0 -> 7067 bytes
docs/yarn.lock | 38 +-
helm/superset/Chart.yaml | 2 +-
helm/superset/README.md | 2 +-
helm/superset/values.yaml | 6 +-
pyproject.toml | 21 +-
pytest.ini | 4 +-
requirements/base.txt | 24 +-
requirements/development.txt | 35 +-
superset-embedded-sdk/package-lock.json | 20 +-
.../cypress-base/cypress/support/directories.ts | 14 +-
superset-frontend/cypress-base/package-lock.json | 6203 +++++++++-----------
superset-frontend/package-lock.json | 633 +-
superset-frontend/package.json | 20 +-
.../packages/superset-ui-core/package.json | 4 +-
.../src/chart/components/StatefulChart.test.tsx | 491 +-
.../src/chart/components/StatefulChart.tsx | 187 +-
.../src/chart/models/ChartProps.ts | 12 +
.../src/components/Modal/Modal.tsx | 4 +-
.../components/ProgressBar/ProgressBar.test.tsx | 22 +-
.../src/components/ProgressBar/index.tsx | 4 +-
.../src/components/Select/AsyncSelect.tsx | 2 +-
.../src/components/Select/Select.tsx | 2 +-
.../src/components/Table/VirtualTable.tsx | 2 +-
.../src/components/Table/index.tsx | 2 +-
.../src/components/TableCollection/index.tsx | 6 -
.../src/components/antdDomContract.test.tsx | 145 +-
.../playwright/components/core/Menu.ts | 20 +
.../generators/docs/docs-screenshots.spec.ts | 2 +-
.../generators/docs/screenshot-manifest.yaml | 16 +-
.../playwright/pages/DashboardPage.ts | 22 +-
.../tests/dashboard/dashboard-controls.spec.ts | 152 +
.../tests/dashboard/dashboard-load.spec.ts | 113 +-
.../tests/dashboard/dashboard-test-helpers.ts | 121 +-
.../tests/dashboard/gauge-interval-colors.spec.ts | 3 +-
superset-frontend/playwright/utils/constants.ts | 11 +-
.../src/MixedTimeseries/transformProps.ts | 17 +
.../src/Timeseries/transformProps.ts | 25 +-
.../plugin-chart-echarts/src/components/Echart.tsx | 79 +-
.../src/components/echartsLocale.ts | 108 +
.../test/MixedTimeseries/transformProps.test.ts | 55 +
.../test/Timeseries/transformProps.test.ts | 69 +
.../test/components/echartsLocale.test.ts | 82 +
.../plugins/preset-chart-deckgl/package.json | 2 +-
.../SqlLab/components/ResultSet/ResultSet.test.tsx | 29 +
.../src/SqlLab/components/ResultSet/index.tsx | 21 +-
.../src/SqlLab/components/SqlEditor/index.tsx | 2 +-
.../src/chartCustomizations/components/common.ts | 7 +
.../src/components/Chart/ChartRenderer.tsx | 14 +
.../src/components/Chart/chartAction.ts | 47 +-
.../src/components/Chart/chartActions.test.ts | 107 +
.../Datasource/DatasourceModal/index.tsx | 9 +-
.../src/components/ImportModal/styles.ts | 2 +-
.../nativeFilters/ConfigModal/ModalFooter.tsx | 2 +-
.../nativeFilters/ConfigModal/SharedStyles.tsx | 2 +-
.../Footer/CancelConfirmationAlert.tsx | 2 +-
.../src/features/databases/DatabaseModal/styles.ts | 4 +-
.../datasets/DuplicateDatasetModal.test.tsx | 28 +
.../features/datasets/DuplicateDatasetModal.tsx | 6 +-
.../src/features/groups/GroupListModal.tsx | 2 +-
.../src/features/roles/RoleFormItems.tsx | 2 +-
.../src/features/users/UserListModal.tsx | 4 +-
.../components/common.test.tsx} | 20 +-
superset-frontend/src/filters/components/common.ts | 7 +
.../src/middleware/asyncEvent.test.ts | 61 +-
superset-frontend/src/middleware/asyncEvent.ts | 51 +-
.../src/pages/ChartCreation/index.tsx | 9 +-
superset/annotation_layers/annotations/schemas.py | 6 +-
superset/annotation_layers/schemas.py | 6 +-
superset/async_events/async_query_manager.py | 5 +
superset/charts/schemas.py | 18 +-
superset/commands/report/execute.py | 47 +-
superset/common/query_context_processor.py | 70 +-
superset/config.py | 16 +-
superset/css_templates/schemas.py | 6 +-
superset/dashboards/schemas.py | 18 +-
superset/databases/schemas.py | 6 +-
superset/datasets/schemas.py | 12 +-
superset/db_engine_specs/datafusion.py | 92 +
superset/db_engine_specs/kusto.py | 111 +-
superset/extensions/api.py | 2 +-
superset/extensions/cache_middleware.py | 6 +-
superset/extensions/local_extensions_watcher.py | 211 +-
superset/extensions/utils.py | 9 +-
superset/mcp_service/chart/chart_utils.py | 87 +-
superset/mcp_service/middleware.py | 181 +-
.../mcp_service/screenshot/pooled_screenshot.py | 8 +-
superset/mcp_service/utils/token_utils.py | 244 +
superset/queries/saved_queries/schemas.py | 12 +-
superset/reports/schemas.py | 6 +-
superset/row_level_security/schemas.py | 6 +-
superset/security/manager.py | 74 +-
superset/semantic_layers/api.py | 11 +-
superset/tasks/schemas.py | 6 +-
superset/themes/schemas.py | 12 +-
superset/utils/core.py | 10 +-
superset/utils/log.py | 8 +-
superset/utils/screenshot_utils.py | 214 +-
superset/utils/webdriver.py | 219 +-
superset/viz.py | 10 -
superset_text.yml | 1 +
tests/integration_tests/charts/data/api_tests.py | 167 +-
tests/integration_tests/event_logger_tests.py | 85 +-
tests/integration_tests/reports/commands_tests.py | 64 +-
.../async_events/async_query_manager_tests.py | 38 +
tests/unit_tests/commands/report/execute_test.py | 3 +
tests/unit_tests/core_tests.py | 63 +
.../unit_tests/db_engine_specs/test_datafusion.py | 101 +
tests/unit_tests/db_engine_specs/test_kusto.py | 85 +
.../unit_tests/extensions/test_cache_middleware.py | 15 +
.../extensions/test_local_extensions_watcher.py | 59 +
.../mcp_service/chart/test_chart_utils.py | 83 +
tests/unit_tests/mcp_service/test_middleware.py | 295 +
.../mcp_service/test_pooled_screenshot.py | 34 +-
.../mcp_service/utils/test_token_utils.py | 103 +
tests/unit_tests/security/manager_test.py | 93 +
tests/unit_tests/semantic_layers/api_test.py | 7 +-
tests/unit_tests/sql/parse_tests.py | 268 +
tests/unit_tests/test_viz_query_obj.py | 57 +
tests/unit_tests/utils/test_screenshot_utils.py | 86 +-
tests/unit_tests/utils/webdriver_test.py | 400 +-
168 files changed, 9009 insertions(+), 4371 deletions(-)
create mode 100644 docs/static/img/databases/datafusion.png
create mode 100644 docs/static/img/logos/pattern_logo.png
create mode 100644
superset-frontend/playwright/tests/dashboard/dashboard-controls.spec.ts
create mode 100644
superset-frontend/plugins/plugin-chart-echarts/src/components/echartsLocale.ts
create mode 100644
superset-frontend/plugins/plugin-chart-echarts/test/components/echartsLocale.test.ts
copy
superset-frontend/src/{explore/components/controls/DateFilterControl/tests/CurrentCalendarFrame.test.tsx
=> filters/components/common.test.tsx} (50%)
create mode 100644 superset/db_engine_specs/datafusion.py
create mode 100644 tests/unit_tests/db_engine_specs/test_datafusion.py
create mode 100644 tests/unit_tests/extensions/test_local_extensions_watcher.py
copy superset/migrations/versions/2016-11-23_10-27_f1f2d4af5b90_.py =>
tests/unit_tests/mcp_service/test_pooled_screenshot.py (55%)
create mode 100644 tests/unit_tests/test_viz_query_obj.py