This is an automated email from the ASF dual-hosted git repository.
rusackas pushed a change to branch fix/xss-dom-and-cleartext-logging
in repository https://gitbox.apache.org/repos/asf/superset.git
discard f90264f1cc8 fix(test): replace full URL replacement with jest.spyOn
for blob helpers
discard 84ed189464e test(jest): polyfill URL constructor in JSDOM test
environment
discard c9bcb9b28e0 fix(sql-lab): restore definite assignment pattern in
ResultSet
discard cf8187fc3c9 fix(list-view-card): skip URL sanitization when `to` is
undefined
discard 313135540b9 fix(security): sanitize URL sinks and trim sensitive log
fields
add f4787a4f252 chore(deps): bump ws to 8.20.1 in docs (#40538)
add 2e7bec3646c chore(ci): harden GitHub Actions workflows per static
analysis (#40545)
add 2d6e68b5f29 fix(ci): remove deprecated ephemeral env workflows +
resolve fixable GHA-related security issues (#40121)
add 4d95a8d0348 feat(listview): compact filter pills with popover for CRUD
views (#40169)
add 87be424f9c4 feat(mcp): add list and get tools for row level security
and plugins (#40347)
add f08c35dc1b3 fix(security): sanitize URL sinks and trim sensitive log
fields
add a0bed8b1c7d fix(list-view-card): skip URL sanitization when `to` is
undefined
add a12ba263082 fix(sql-lab): restore definite assignment pattern in
ResultSet
add 2e110521ee7 test(jest): polyfill URL constructor in JSDOM test
environment
add 1b884bb9408 fix(test): replace full URL replacement with jest.spyOn
for blob helpers
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 (f90264f1cc8)
\
N -- N -- N refs/heads/fix/xss-dom-and-cleartext-logging
(1b884bb9408)
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/setup-backend/action.yml | 2 +-
.github/actions/setup-supersetbot/action.yml | 1 +
.github/dependabot.yml | 60 ++--
.github/workflows/cancel_duplicates.yml | 43 ---
.github/workflows/check_db_migration_confict.yml | 2 +
.github/workflows/claude.yml | 4 +
.github/workflows/codeql-analysis.yml | 2 +
.github/workflows/dependency-review.yml | 4 +
.github/workflows/embedded-sdk-release.yml | 2 +
.github/workflows/embedded-sdk-test.yml | 2 +
.github/workflows/ephemeral-env-pr-close.yml | 83 -----
.github/workflows/ephemeral-env.yml | 350 -------------------
.github/workflows/labeler.yml | 2 +-
.github/workflows/latest-release-tag.yml | 4 +-
.github/workflows/release.yml | 6 +
.github/workflows/showtime-trigger.yml | 2 +-
.github/workflows/superset-docs-deploy.yml | 3 +
.github/workflows/superset-docs-verify.yml | 5 +
.github/workflows/superset-extensions-cli.yml | 2 +-
.github/workflows/superset-frontend.yml | 5 +-
.../workflows/superset-python-integrationtest.yml | 6 +-
.github/workflows/superset-python-presto-hive.yml | 4 +-
.github/workflows/superset-python-unittest.yml | 2 +-
.github/workflows/tag-release.yml | 13 +-
.github/workflows/tech-debt.yml | 2 +
.github/workflows/welcome-new-users.yml | 2 +-
docs/yarn.lock | 6 +-
scripts/oxlint.sh | 2 +-
superset-frontend/spec/helpers/testing-library.tsx | 30 ++
.../src/components/Chart/chartAction.ts | 7 +-
.../components/ListView/CardSortSelect.test.tsx | 102 ++++++
.../src/components/ListView/CardSortSelect.tsx | 76 ++--
.../ListView/Filters/CompactFilterTrigger.test.tsx | 145 ++++++++
.../ListView/Filters/CompactFilterTrigger.tsx | 198 +++++++++++
.../ListView/Filters/CompactSelectPanel.test.tsx | 339 ++++++++++++++++++
.../ListView/Filters/CompactSelectPanel.tsx | 318 +++++++++++++++++
.../src/components/ListView/Filters/DateRange.tsx | 112 ------
.../ListView/Filters/FilterPopoverContent.test.tsx | 80 +++++
.../ListView/Filters/FilterPopoverContent.tsx | 74 ++++
.../components/ListView/Filters/Select.test.tsx | 267 --------------
.../src/components/ListView/Filters/Select.tsx | 154 ---------
.../components/ListView/Filters/TimeRange.test.tsx | 251 ++++++++++++++
.../src/components/ListView/Filters/TimeRange.tsx | 291 ++++++++++++++++
.../src/components/ListView/Filters/index.test.tsx | 335 +++++++++++++++++-
.../src/components/ListView/Filters/index.tsx | 385 ++++++++++++++++-----
.../src/components/ListView/ListView.test.tsx | 21 +-
.../src/components/ListView/ListView.tsx | 81 ++++-
.../src/pages/ChartList/ChartList.test.tsx | 9 +-
.../DashboardList/DashboardList.cardview.test.tsx | 16 +-
.../src/pages/DashboardList/DashboardList.test.tsx | 8 +-
.../DatasetList/DatasetList.integration.test.tsx | 6 +-
.../DatasetList/DatasetList.listview.test.tsx | 23 +-
.../src/pages/DatasetList/DatasetList.test.tsx | 7 +-
.../src/pages/GroupsList/GroupsList.test.tsx | 16 +-
.../src/pages/RolesList/RolesList.test.tsx | 7 +-
.../RowLevelSecurityList.test.tsx | 9 +-
.../src/pages/UsersList/UsersList.test.tsx | 20 +-
superset/mcp_service/app.py | 23 +-
.../mcp_service/plugin}/__init__.py | 0
.../{daos/css.py => mcp_service/plugin/dao.py} | 5 +-
superset/mcp_service/plugin/schemas.py | 213 ++++++++++++
.../mcp_service/{task => plugin}/tool/__init__.py | 8 +-
.../tool/get_plugin_info.py} | 70 ++--
superset/mcp_service/plugin/tool/list_plugins.py | 123 +++++++
superset/mcp_service/privacy.py | 2 +-
.../mcp_service/rls}/__init__.py | 0
superset/mcp_service/rls/schemas.py | 255 ++++++++++++++
.../{action_log => rls}/tool/__init__.py | 8 +-
.../tool/get_rls_filter_info.py} | 72 ++--
superset/mcp_service/rls/tool/list_rls_filters.py | 147 ++++++++
.../unit_tests/mcp_service/plugin}/__init__.py | 0
.../mcp_service/plugin/tool}/__init__.py | 0
.../mcp_service/plugin/tool/test_plugin_tools.py | 172 +++++++++
.../unit_tests/mcp_service/rls}/__init__.py | 0
.../unit_tests/mcp_service/rls/tool}/__init__.py | 0
.../mcp_service/rls/tool/test_rls_tools.py | 245 +++++++++++++
76 files changed, 4006 insertions(+), 1345 deletions(-)
delete mode 100644 .github/workflows/cancel_duplicates.yml
delete mode 100644 .github/workflows/ephemeral-env-pr-close.yml
delete mode 100644 .github/workflows/ephemeral-env.yml
create mode 100644
superset-frontend/src/components/ListView/CardSortSelect.test.tsx
create mode 100644
superset-frontend/src/components/ListView/Filters/CompactFilterTrigger.test.tsx
create mode 100644
superset-frontend/src/components/ListView/Filters/CompactFilterTrigger.tsx
create mode 100644
superset-frontend/src/components/ListView/Filters/CompactSelectPanel.test.tsx
create mode 100644
superset-frontend/src/components/ListView/Filters/CompactSelectPanel.tsx
delete mode 100644
superset-frontend/src/components/ListView/Filters/DateRange.tsx
create mode 100644
superset-frontend/src/components/ListView/Filters/FilterPopoverContent.test.tsx
create mode 100644
superset-frontend/src/components/ListView/Filters/FilterPopoverContent.tsx
delete mode 100644
superset-frontend/src/components/ListView/Filters/Select.test.tsx
delete mode 100644 superset-frontend/src/components/ListView/Filters/Select.tsx
create mode 100644
superset-frontend/src/components/ListView/Filters/TimeRange.test.tsx
create mode 100644
superset-frontend/src/components/ListView/Filters/TimeRange.tsx
copy {superset-core/src/superset_core/common =>
superset/mcp_service/plugin}/__init__.py (100%)
copy superset/{daos/css.py => mcp_service/plugin/dao.py} (88%)
create mode 100644 superset/mcp_service/plugin/schemas.py
copy superset/mcp_service/{task => plugin}/tool/__init__.py (86%)
copy superset/mcp_service/{role/tool/get_role_info.py =>
plugin/tool/get_plugin_info.py} (53%)
create mode 100644 superset/mcp_service/plugin/tool/list_plugins.py
copy {superset-core/src/superset_core/common =>
superset/mcp_service/rls}/__init__.py (100%)
create mode 100644 superset/mcp_service/rls/schemas.py
copy superset/mcp_service/{action_log => rls}/tool/__init__.py (84%)
copy superset/mcp_service/{action_log/tool/get_action_log_info.py =>
rls/tool/get_rls_filter_info.py} (53%)
create mode 100644 superset/mcp_service/rls/tool/list_rls_filters.py
copy {superset-core/src/superset_core/common =>
tests/unit_tests/mcp_service/plugin}/__init__.py (100%)
copy {superset-core/src/superset_core/common =>
tests/unit_tests/mcp_service/plugin/tool}/__init__.py (100%)
create mode 100644
tests/unit_tests/mcp_service/plugin/tool/test_plugin_tools.py
copy {superset-core/src/superset_core/common =>
tests/unit_tests/mcp_service/rls}/__init__.py (100%)
copy {superset-core/src/superset_core/common =>
tests/unit_tests/mcp_service/rls/tool}/__init__.py (100%)
create mode 100644 tests/unit_tests/mcp_service/rls/tool/test_rls_tools.py