You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@superset.apache.org by jl...@apache.org on 2026/06/03 20:37:19 UTC
(superset) branch fix-flakey-playwright-tests updated (c5125023aef -> 1eb34769198)
This is an automated email from the ASF dual-hosted git repository.
sadpandajoe pushed a change to branch fix-flakey-playwright-tests
in repository https://gitbox.apache.org/repos/asf/superset.git
from c5125023aef test(table-collection): guard header-toggle-all data-test against antd class rename
add c54990c861b fix(plugin-chart-ag-grid-table): validate filter values/operators in state converter (#40623)
add ac522ded1c4 fix(ssh-tunnel): validate server_address format (SSRF defense-in-depth) (#40665)
add 0b9764aed56 fix(mcp): honor AUTH_ROLE_ADMIN and warn on permission-less protected tools (#40659)
add 12bef03f4af fix(jinja): apply consistent escaping to url_param values from request args (#40633)
add df21fe65718 chore(mcp): return a generic error from the webdriver pool-stats endpoint (#40559)
add fa41769a08a fix(embedded): enforce configured allowed domains for postMessage origin (#40629)
add b9dc9d722e6 fix(export): sanitize user-supplied CSV export filename (charts + SQL Lab) (#40632)
add 8e4a460cc71 fix(charts): apply DISALLOWED_SQL_FUNCTIONS gate to adhoc expressions (#40568)
add faa76f67412 fix(embedding): add optional dataset allowlist to guest tokens (#39302)
add 725f5ed2a90 fix(api): enforce per-object ownership validation in chart, dataset, and report commands (#39303)
add f7f50a79770 fix(sqllab): quote CTAS target identifiers and validate tmp_table_name format (#40245)
add cf08a5ebf75 feat(docker): add environment-based debugger control (#40327)
add 3191b0fdcd5 fix: apply dashboard access check in related_objects endpoints (#40333)
add 61b32d1b7d0 fix(chart): standardize dashboard validation across chart create/update (#40336)
add 56fd991efde fix(dataset): unify validation for stored and adhoc SQL expressions (#40392)
add 77c2bed5f72 fix(dashboards): narrow datasets payload to callers with read access (#40396)
add b8a2f925ee4 fix(views): enforce per-chart access check in legacy form_data endpoint (#40497)
add e3ba85b1a5e fix(redirect): normalize browser-stripped whitespace before protocol-relative check (#40566)
add c914df5a67c ci: harden CI against Docker Hub registry flakes (retries + auth) (#40700)
add accc94da516 fix(users): show 0 for null login_count and fail_login_count (#40281)
add e5ff6de790b chore: correct typos in config.py and models_test.py comments (#40706)
add cb2a56d16e0 chore: guard recursive merge keys and invoke subprocess without a shell (#40558)
add e5c7200551a ci: gate expensive test workflows at the job level (#40718)
add 001834470b8 fix(mcp): escape LIKE wildcards in MCP list tool search filters (#40682)
add f4dfb7f0266 fix(mcp): fall back to form_data spatial query for Deck.gl charts (#40339)
add fcb1e299ace fix(nvd3): sanitize generateMultiLineTooltipContent output (#40612)
add 6ea4e227856 refactor(nvd3): extract testable generateAnnotationTooltipContent helper (#40620)
add 80ea36c852f fix(db_engine_specs): escape schema name in regex; document safe filter pattern (#40642)
add c373da1bb91 ci: add cancel-in-progress concurrency to PR helper workflows (#40725)
add 80a5f6b787e fix(calendar): Fix day offset in Calendar Heatmap visualization (#34564)
add 2be2246a003 chore(deps-dev): bump gevent from 24.2.1 to 26.4.0 (#40378)
add 1eb34769198 Merge branch 'master' into fix-flakey-playwright-tests
No new revisions were added by this update.
Summary of changes:
.github/workflows/check-python-deps.yml | 13 +
.github/workflows/github-action-validator.yml | 5 +
.github/workflows/labeler.yml | 5 +
.github/workflows/pr-lint.yml | 5 +
.github/workflows/superset-e2e.yml | 50 +-
.github/workflows/superset-playwright.yml | 36 +-
.../workflows/superset-python-integrationtest.yml | 70 ++-
.github/workflows/superset-python-presto-hive.yml | 47 +-
.github/workflows/superset-python-unittest.yml | 28 +-
UPDATING.md | 6 +
docker/docker-bootstrap.sh | 18 +-
docs/admin_docs/installation/pypi.mdx | 9 +-
.../version-6.1.0/installation/pypi.mdx | 9 +-
.../contributing/development-setup.md | 2 +
pyproject.toml | 3 +-
requirements/base.txt | 2 +-
requirements/development.txt | 4 +-
scripts/uv-pip-compile.sh | 23 +-
superset-frontend/.eslintrc.js | 2 +-
.../legacy-plugin-chart-calendar/src/utils.ts | 4 +-
.../src/vendor/cal-heatmap.ts | 27 +-
.../test/utils.test.ts | 125 ++--
.../plugins/legacy-preset-chart-nvd3/src/utils.ts | 36 +-
.../legacy-preset-chart-nvd3/test/utils.test.ts | 79 +++
.../src/stateConversion.ts | 30 +-
.../test/stateConversion.test.ts | 73 +++
.../BigNumberWithTrendline/transformProps.test.ts | 4 +-
.../plugin-chart-echarts/src/components/Echart.tsx | 7 +-
superset-frontend/src/embedded/index.tsx | 30 +-
.../src/embedded/originValidation.test.ts | 112 ++++
superset-frontend/src/embedded/originValidation.ts | 91 +++
.../controls/CollectionControl/index.tsx | 4 +-
superset-frontend/src/pages/UsersList/index.tsx | 4 +-
superset-frontend/src/types/bootstrapTypes.ts | 3 +
superset/charts/api.py | 11 +-
superset/charts/data/api.py | 7 +
superset/commands/chart/create.py | 5 +
superset/commands/chart/fave.py | 8 +-
superset/commands/chart/unfave.py | 8 +-
superset/commands/chart/update.py | 21 +-
superset/commands/chart/warm_up_cache.py | 19 +-
superset/commands/dashboard/delete.py | 5 +-
superset/commands/dataset/create.py | 8 +
superset/commands/dataset/duplicate.py | 8 +-
superset/commands/dataset/update.py | 51 +-
superset/commands/dataset/warm_up_cache.py | 12 +-
superset/commands/report/base.py | 46 +-
superset/commands/tag/create.py | 35 ++
superset/commands/tag/delete.py | 40 +-
superset/commands/tag/utils.py | 17 +-
superset/config.py | 2 +-
superset/connectors/sqla/models.py | 75 ++-
superset/daos/base.py | 37 +-
superset/daos/dashboard.py | 2 +-
superset/dashboards/api.py | 26 +-
superset/databases/api.py | 2 +
superset/databases/schemas.py | 18 +-
superset/datasets/api.py | 2 +
superset/db_engine_specs/base.py | 6 +-
superset/embedded/view.py | 4 +
superset/jinja_context.py | 28 +-
superset/mcp_service/auth.py | 17 +-
superset/mcp_service/bin/superset-mcp.js | 4 +-
superset/mcp_service/chart/chart_helpers.py | 153 +++++
superset/mcp_service/chart/tool/get_chart_data.py | 25 +-
.../mcp_service/screenshot/webdriver_config.py | 16 +-
superset/mcp_service/utils/permissions_utils.py | 19 +-
superset/models/dashboard.py | 8 +-
superset/models/helpers.py | 47 ++
superset/security/api.py | 17 +-
superset/security/guest_token.py | 15 +-
superset/security/manager.py | 27 +-
superset/sql/parse.py | 14 +-
superset/sqllab/api.py | 8 +
superset/sqllab/schemas.py | 14 +-
superset/utils/link_redirect.py | 14 +-
superset/views/api.py | 19 +-
superset/views/base_api.py | 14 +-
superset/views/datasource/utils.py | 17 +-
superset/views/datasource/views.py | 24 +
superset/views/sql_lab/schemas.py | 7 +-
superset/views/sql_lab/views.py | 53 +-
superset/views/users/api.py | 4 +
superset/views/utils.py | 4 +-
tests/integration_tests/celery_tests.py | 138 +----
tests/integration_tests/charts/api_tests.py | 46 ++
tests/integration_tests/charts/commands_tests.py | 23 +-
tests/integration_tests/dao/base_dao_test.py | 69 +++
tests/integration_tests/dashboards/api_tests.py | 26 +
tests/integration_tests/datasets/commands_tests.py | 20 +-
tests/integration_tests/embedded/test_view.py | 33 ++
tests/integration_tests/tags/commands_tests.py | 4 +
tests/unit_tests/charts/test_chart_data_api.py | 31 +
.../commands/chart/test_access_checks.py | 147 +++++
.../commands/chart/warm_up_cache_test.py | 6 +
tests/unit_tests/commands/dataset/test_create.py | 9 +-
.../unit_tests/commands/dataset/test_duplicate.py | 103 ++++
.../commands/dataset/test_warm_up_cache.py | 115 ++++
tests/unit_tests/commands/dataset/update_test.py | 160 +++++
.../commands/report/test_create_recipients.py | 14 +-
tests/unit_tests/connectors/sqla/models_test.py | 125 +++-
tests/unit_tests/databases/schema_tests.py | 15 +
tests/unit_tests/db_engine_specs/test_base.py | 56 ++
tests/unit_tests/jinja_context_test.py | 19 +
.../mcp_service/chart/test_chart_helpers.py | 651 +++++++++++++++++++++
.../mcp_service/utils/test_permissions_utils.py | 37 +-
tests/unit_tests/models/helpers_test.py | 144 +++++
.../security/test_guest_token_dataset_allowlist.py | 273 +++++++++
.../common => tests/unit_tests/server}/__init__.py | 0
.../server/test_gunicorn_gevent_smoke.py | 162 +++++
tests/unit_tests/sql/parse_tests.py | 24 +-
tests/unit_tests/sql_lab_execution_context.py | 3 +-
.../common => tests/unit_tests/sqllab}/__init__.py | 0
tests/unit_tests/sqllab/api_test.py | 64 ++
tests/unit_tests/utils/test_link_redirect.py | 29 +
115 files changed, 4024 insertions(+), 531 deletions(-)
create mode 100644 superset-frontend/plugins/plugin-chart-ag-grid-table/test/stateConversion.test.ts
create mode 100644 superset-frontend/src/embedded/originValidation.test.ts
create mode 100644 superset-frontend/src/embedded/originValidation.ts
create mode 100644 tests/unit_tests/commands/chart/test_access_checks.py
create mode 100644 tests/unit_tests/commands/dataset/test_duplicate.py
create mode 100644 tests/unit_tests/commands/dataset/test_warm_up_cache.py
create mode 100644 tests/unit_tests/security/test_guest_token_dataset_allowlist.py
copy {superset-core/src/superset_core/common => tests/unit_tests/server}/__init__.py (100%)
create mode 100644 tests/unit_tests/server/test_gunicorn_gevent_smoke.py
copy {superset-core/src/superset_core/common => tests/unit_tests/sqllab}/__init__.py (100%)
create mode 100644 tests/unit_tests/sqllab/api_test.py