This is an automated email from the ASF dual-hosted git repository.
rusackas pushed a change to branch feat/db-engine-docs
in repository https://gitbox.apache.org/repos/asf/superset.git
omit c4b4a54e11 fix(docs): use CSS class for database logo object-fit
styling
omit ac3e77d760 fix(docs): remove style attribute from database logo images
omit 3055386d51 fix(docs): remove unused imports and parameters
omit df1990dced feat(db-engine-specs): add docs for DynamoDB, MotherDuck,
IBM Db2 for i
omit 5febab6725 fix(docs): restore logos for Greenplum, MonetDB, and SAP
Sybase
omit fc05637fad feat(db-engine-specs): add Greenplum, MonetDB, and SAP
Sybase support
omit ad26092cb0 chore(docs): clean up database logos and add IBM Db2
omit 9980773688 chore(docs): remove sqlite.jpg (using png for transparency)
omit 2b2e61f088 fix(docs): use SQLite PNG logo for transparency support
omit 1ad7804d48 fix(docs): use dependency-free AST extraction for
DATABASE_DOCS
omit a0d9ac7613 chore(docs): remove unused language prop from CodeBlock
omit dfeccc16d8 chore(docs): remove unused CodeOutlined import
omit a2ac1e5155 fix(docs): use composite rowKey for compatible databases
omit 956d7af841 fix(docs): use spawnSync in all extraction functions
omit e4c2722a6c fix(docs): use spawnSync to avoid shell command injection
omit a19e38d008 fix(docs): escape backslashes in MDX frontmatter
descriptions
omit 6116b8383f fix(docs): make README update opt-in to avoid CI issues
omit c6eae72c3c feat(docs): auto-generate README database logos from
DATABASE_DOCS
omit e1fa7a8464 feat(docs): promote Databases to top-level nav and improve
documentation
omit 5154fb5d6e feat(docs): generate individual pages per database
omit 1e39af1686 feat(docs): show compatible databases in overview table
omit b3ba2a1028 fix(docs): populate database scores with full diagnostics
omit eb035a466a feat(docs): auto-generate database documentation from lib.py
add ae491aee00 docs: Add SQL Lab Query Comparison to community extensions
registry (#36769)
add c026ae2ce7 fix(dashboard): prevent table chart infinite reload loop
(#36686)
add e3e6b0e18b fix(mcp): use SQLScript for all SQL parsing in execute_sql
(#36599)
add 0ced20457b chore(deps-dev): bump webpack from 5.104.0 to 5.104.1 in
/docs (#36758)
add 5cd8e1e736 chore(deps): bump caniuse-lite from 1.0.30001760 to
1.0.30001761 in /docs (#36757)
add 8d070f5cb6 chore(deps-dev): bump @types/node from 25.0.2 to 25.0.3 in
/superset-frontend (#36726)
add e0ea807031 chore(deps-dev): bump baseline-browser-mapping from 2.9.8
to 2.9.9 in /superset-frontend (#36725)
add c0bcf28947 chore(deps-dev): bump @playwright/test from 1.56.0 to
1.57.0 in /superset-frontend (#36571)
add 6b25d0663e refactor: Migrates the MCP `execute_sql` tool to use the
SQL execution API (#36739)
add 32c98d02d3 fix: UI cut off (#36531)
add 54eb6317ef fix(margin): Fixing margin issues (#36479)
add ff24e2f27d fix: fix error with dashboard filters when global async
queries is enabled and user navigates quickly (#36639)
add ff3dab9b3b docs: Add Query Estimator to community extensions registry
(#36814)
add 8f8fe19e3e docs: Add SQL Snippets to community extensions registry
(#36797)
add 9e04c3471d docs: Add SQL Lab Result Stats to community extensions
registry (#36796)
add c399fd2801 fix: Stale editor content in @apache-superset/core (#36813)
add ba8d6eb9ac docs: Adds a new "Dependencies" page to the Developer
Portal (#36817)
add f8cb935105 feat(reports): add webhook option for notifications (#36127)
add ecb4e483df fix: apply `EXCLUDE_USERS_FROM_LISTS` to
`/api/v1/security/users/` (#36742)
add bd8d4ddbee chore(deps-dev): bump typescript-eslint from 8.50.0 to
8.50.1 in /superset-websocket (#36802)
add fd67d3190a chore(deps-dev): bump typescript-eslint from 8.50.0 to
8.50.1 in /docs (#36801)
add f95f125c4c chore(deps-dev): bump html-webpack-plugin from 5.6.4 to
5.6.5 in /superset-frontend (#36787)
add 100789200a chore(deps): bump hot-shots from 11.4.0 to 12.0.0 in
/superset-websocket (#36786)
add bf5070471d chore(deps): bump storybook from 8.6.14 to 8.6.15 in /docs
(#36727)
add 362b5e3b89 chore(deps-dev): bump js-yaml from 3.14.1 to 3.14.2 in
/superset-frontend (#36711)
add 28c802fb6c fix(TableCollection): only apply highlight class when
defined (#36809)
add 1697cf733b chore(deps): bump antd from 6.1.1 to 6.1.2 in /docs (#36823)
add 02411ffde0 docs: Add EnquiryLabs to INTHEWILD.yaml (#36843)
add fe5d5fdae6 fix(chart-creation): use exact match when loading dataset
from URL parameter (#36831)
add e112d863bf fix(dashboard): resolve tab reorder state sync issues
(#36855)
add 7cd76e4647 fix: SqlLab error when collapsing the left panel preview
(#36858)
add d4ba44fce2 fix: Query history view button in SqlLab (#36540)
add 85e830de46 fix: Clear database form errors (#36854)
add c31224c891 fix(TableChart): render cell bars for columns with NULL
values (#36819)
add 12aa425049 fix(logout): clicking logout displays an error
notification "invalid username or password" (#36490)
add e5489bd30f fix(SavedQueries): unify query card actions styling across
all home page cards (#36671)
add 1b1be96274 chore(deps-dev): bump globals from 16.5.0 to 17.0.0 in
/docs (#36886)
add dd2eb6293d chore(deps-dev): bump globals from 16.5.0 to 17.0.0 in
/superset-websocket (#36885)
add 4451e8db05 chore(deps): bump qs from 6.14.0 to 6.14.1 in /docs (#36884)
add aed95453b3 chore(deps): bump qs from 6.14.0 to 6.14.1 in
/superset-websocket/utils/client-ws-app (#36883)
add d07a452e9b fix(RightMenu): fix inconsistent icon alignment in
RightMenu items (#36532)
add 52af489d8f docs: Add Rogow to INTHEWILD.yaml (#36879)
add 1334040fd6 chore(docs): Include VLMedia logo to intothewild (#36868)
add fdef8fa50a chore(deps-dev): bump @typescript-eslint/parser from 8.50.1
to 8.51.0 in /docs (#36866)
add 53fa65fe67 chore(deps): bump caniuse-lite from 1.0.30001761 to
1.0.30001762 in /docs (#36865)
add ac27c0aa3c chore(deps-dev): bump @typescript-eslint/parser from 8.50.1
to 8.51.0 in /superset-websocket (#36861)
add 2080633e57 other: resolve frontend dep vulns (#36820)
add 740ddc03e2 fix(plugin-chart-table): remove column misalignment when no
scrollbars are present (#36891)
add c76ddcbbec fix(deck.gl): Fix Scatterplot chart error when using fixed
point size (#36890)
add 61986100bd chore(deps): bump hot-shots from 12.0.0 to 12.1.0 in
/superset-websocket (#36899)
add dcc556a9a7 chore(CHANGELOG): add link to 6.0.0 CHANGELOG (#36832)
add 5909e90081 feat(security): add built-in Public role for anonymous
dashboard access (#36548)
add 12a266fd2f fix(trino): update query progress using cursor stats
(#36872)
add cedc35e39f fix(SQLLab): remove error icon displayed when writing Jinja
SQL even when the script is correct (#36422)
add f9fde87e85 feat(native filters): add filter type icons in config modal
(#36905)
add 1949d1bb96 feat(dev): add make ports and make open commands (#36906)
add aaa174f820 docs: add Netlify configuration for PR deploy previews
(#36908)
add 9aff89c1b4 chore(frontend): migrate SqlLab and explore JS/JSX files to
TypeScript (#36760)
add 9968393e4c feat(ci): add container security scan for image built for
commits merged to mainline (#36604)
add d7d94ba640 fix(ag-grid): Ag Grid Date Filter timezone correction
(#36270)
add 861e5cd013 fix(security): enforce datasource access control in
get_samples() (#36550)
add 5edaed2e5b fix(alerts): wrong alert trigger with custom query (#35871)
add 7a5441bc7a refactor: Remove unimplemented APIs from
@apache-superset/core (#36952)
add 0c1edd4568 chore: Bump @apache-superset/core (0.0.1-rc9) (#36953)
add dfdf8e75d8 fix: handle undefined template variables safely in query
rendering. (#35009)
add f9be2b816a feat(docs): add resources admonition with external links
(#36761)
add 64ee48f147 fix(mcp): use chart.query_context for get_chart_data like
the API does (#36937)
add 6f67b05375 chore: Update INTHEWILD.yaml for PlaidCloud (#36741)
add 03caa7b337 docs(INTHEWILD): add Cirrus Assessment (#36871)
add 84279acd2f feat(mcp): add unified get_schema tool for schema discovery
(#36458)
add a6d85dccf8 fix: streaming export losing g context (#36950)
add a13d24368a feat(docs): auto-generate database documentation from lib.py
add a798f60903 fix(docs): populate database scores with full diagnostics
add 1938464fc5 feat(docs): show compatible databases in overview table
add 7dce882c18 feat(docs): generate individual pages per database
add b736fc8734 feat(docs): promote Databases to top-level nav and improve
documentation
add 2db5974a9c feat(docs): auto-generate README database logos from
DATABASE_DOCS
add 3b6f581afa fix(docs): make README update opt-in to avoid CI issues
add 4ac813e8f2 fix(docs): escape backslashes in MDX frontmatter
descriptions
add d85460c59b fix(docs): use spawnSync to avoid shell command injection
add 6d383e9167 fix(docs): use spawnSync in all extraction functions
add b57ac4f9a4 fix(docs): use composite rowKey for compatible databases
add 57f194c767 chore(docs): remove unused CodeOutlined import
add bf3237c2e0 chore(docs): remove unused language prop from CodeBlock
add 96d65198bd fix(docs): use dependency-free AST extraction for
DATABASE_DOCS
add 819469ea26 fix(docs): use SQLite PNG logo for transparency support
add bdf23e0b79 chore(docs): remove sqlite.jpg (using png for transparency)
add bb847d3c7d chore(docs): clean up database logos and add IBM Db2
add 09b71baf69 feat(db-engine-specs): add Greenplum, MonetDB, and SAP
Sybase support
add 60cc351697 fix(docs): restore logos for Greenplum, MonetDB, and SAP
Sybase
add 2cfcd9f9e0 feat(db-engine-specs): add docs for DynamoDB, MotherDuck,
IBM Db2 for i
add ee81e3392d fix(docs): remove unused imports and parameters
add 5493884784 fix(docs): remove style attribute from database logo images
add 13aa6d262e fix(docs): use CSS class for database logo object-fit
styling
add ed40346710 fix(lint): add E501 ignore for db_engine_specs/lib.py
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 (c4b4a54e11)
\
N -- N -- N refs/heads/feat/db-engine-docs (ed40346710)
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/workflows/docker.yml | 17 +
CHANGELOG.md | 1 +
Dockerfile | 2 +-
Makefile | 8 +-
RESOURCES/INTHEWILD.yaml | 26 +-
RESOURCES/STANDARD_ROLES.md | 379 +++++-----
.../contributing/development-setup.md | 2 +
docs/developer_portal/extensions/architecture.md | 16 +-
.../extensions/contribution-types.md | 2 +-
docs/developer_portal/extensions/dependencies.md | 166 +++++
docs/developer_portal/extensions/deployment.md | 2 +-
docs/developer_portal/extensions/development.md | 6 +-
docs/developer_portal/extensions/mcp.md | 2 +-
docs/developer_portal/extensions/overview.md | 1 +
docs/developer_portal/extensions/registry.md | 18 +-
docs/developer_portal/extensions/security.md | 2 +-
docs/developer_portal/sidebars.js | 1 +
docs/docs/api.mdx | 5 +
docs/docs/configuration/alerts-reports.mdx | 5 +
docs/docs/configuration/async-queries-celery.mdx | 4 +
docs/docs/configuration/cache.mdx | 5 +
docs/docs/configuration/configuring-superset.mdx | 4 +
docs/docs/configuration/networking-settings.mdx | 16 +-
docs/docs/configuration/sql-templating.mdx | 4 +
docs/docs/configuration/theming.mdx | 8 +
docs/docs/contributing/contributing.mdx | 4 +
docs/docs/contributing/development.mdx | 7 +-
docs/docs/databases/_category_.json | 2 +-
docs/docs/installation/kubernetes.mdx | 5 +
docs/docs/quickstart.mdx | 6 +
docs/docs/security/securing_superset.mdx | 5 +
docs/docs/security/security.mdx | 100 ++-
.../creating-your-first-dashboard.mdx | 23 +-
docs/docs/using-superset/exploring-data.mdx | 9 +
docs/docusaurus.config.ts | 12 +
docs/netlify.toml | 56 ++
docs/package.json | 14 +-
docs/sidebarTutorials.js | 1 +
docs/src/styles/custom.css | 39 +
docs/src/theme/Admonition/Types.js | 63 ++
docs/static/img/extensions/query-comparison.png | Bin 0 -> 611336 bytes
docs/static/img/extensions/query-estimator.png | Bin 0 -> 443733 bytes
docs/static/img/extensions/result-stats.png | Bin 0 -> 403058 bytes
docs/static/img/extensions/sql-snippets.png | Bin 0 -> 366481 bytes
docs/static/img/logos/cirrus.svg | Bin 0 -> 1809 bytes
docs/static/img/logos/plaidcloud.svg | Bin 0 -> 81228 bytes
docs/static/img/logos/vlmedia.svg | Bin 0 -> 10468 bytes
docs/yarn.lock | 327 ++++----
pyproject.toml | 2 +
scripts/docker-compose-up.sh | 77 +-
superset-core/src/superset_core/api/models.py | 12 +-
superset-frontend/cypress-base/package-lock.json | 354 ++++++++-
superset-frontend/cypress-base/package.json | 5 +
.../netlify.toml | 22 +-
superset-frontend/package-lock.json | 225 +++---
superset-frontend/package.json | 12 +-
.../packages/superset-core/package.json | 7 +-
.../packages/superset-core/src/api/environment.ts | 153 ----
.../packages/superset-core/src/api/index.ts | 2 -
.../packages/superset-core/src/api/sqlLab.ts | 109 ---
.../packages/superset-ui-core/package.json | 2 +-
.../src/components/Icons/AntdEnhanced.tsx | 2 +
.../TableCollection/TableCollection.test.tsx | 83 +++
.../src/components/TableCollection/index.tsx | 4 +-
.../superset-ui-core/src/components/Tabs/Tabs.tsx | 5 +-
.../superset-ui-core/src/utils/featureFlags.ts | 1 +
.../playwright/tests/experimental/README.md | 7 +
.../src/layers/Scatter/Scatter.tsx | 18 +-
.../src/layers/Scatter/buildQuery.test.ts | 312 ++++++++
.../src/layers/Scatter/buildQuery.ts | 26 +-
.../src/layers/Scatter/transformProps.test.ts | 303 ++++++++
.../src/layers/Scatter/transformProps.ts | 19 +-
.../src/layers/transformUtils.test.ts | 184 +++++
.../src/layers/transformUtils.ts | 12 +-
.../src/layers/utils/metricUtils.test.ts | 121 +++
.../src/layers/utils/metricUtils.ts | 120 +++
.../src/utils/dateFilterComparator.ts | 58 +-
.../src/utils/useColDefs.ts | 21 +-
.../test/utils/dateFilterComparator.test.ts | 124 ++++
.../src/DataTable/hooks/useSticky.tsx | 2 +-
.../plugins/plugin-chart-table/src/TableChart.tsx | 3 +-
.../plugin-chart-table/test/TableChart.test.tsx | 72 ++
superset-frontend/spec/helpers/shim.tsx | 6 +
.../src/SqlLab/actions/sqlLab.test.js | 195 ++++-
.../src/SqlLab/actions/{sqlLab.js => sqlLab.ts} | 822 +++++++++++++++------
.../AceEditorWrapper/useKeywords.test.ts | 6 +-
.../components/AceEditorWrapper/useKeywords.ts | 6 +-
.../SqlLab/components/QueryAutoRefresh/index.tsx | 2 +-
.../components/QueryTable/QueryTable.test.tsx | 97 ++-
.../src/SqlLab/components/QueryTable/index.tsx | 110 ++-
.../src/SqlLab/components/QueryTable/styles.ts | 7 +
.../src/SqlLab/components/ResultSet/index.tsx | 50 +-
.../SqlLab/components/SaveDatasetModal/index.tsx | 6 +-
.../src/SqlLab/components/SouthPane/index.tsx | 4 +-
.../src/SqlLab/components/SqlEditor/index.tsx | 9 +-
.../SqlLab/components/SqlEditorLeftBar/index.tsx | 5 +-
.../src/SqlLab/components/TableElement/index.tsx | 2 +-
.../middlewares/persistSqlLabStateEnhancer.js | 136 ----
.../middlewares/persistSqlLabStateEnhancer.ts | 185 +++++
.../src/SqlLab/reducers/{sqlLab.js => sqlLab.ts} | 333 +++++----
.../src/components/Chart/chartAction.js | 14 +-
.../src/components/Chart/chartActions.test.js | 22 +
superset-frontend/src/core/authentication/index.ts | 6 +-
superset-frontend/src/core/commands/index.ts | 10 +-
superset-frontend/src/core/environment/index.ts | 57 --
superset-frontend/src/core/extensions/index.ts | 11 +-
superset-frontend/src/core/index.ts | 1 -
superset-frontend/src/core/sqlLab/index.ts | 139 ++--
.../src/dashboard/components/Dashboard.test.jsx | 69 ++
.../components/gridComponents/Tabs/Tabs.jsx | 2 +-
.../gridComponents/TabsRenderer/TabsRenderer.tsx | 30 +-
.../FiltersConfigModal/FilterTitleContainer.tsx | 17 +
.../FiltersConfigForm/FiltersConfigForm.tsx | 4 +-
.../util/activeAllDashboardFilters.test.ts | 150 ++++
.../dashboard/util/activeAllDashboardFilters.ts | 17 +-
.../src/explore/components/ControlHeader.tsx | 8 +
.../components/ExploreViewContainer/index.jsx | 4 +
.../AnnotationLayer.test.tsx | 39 +-
.../{AnnotationLayer.jsx => AnnotationLayer.tsx} | 417 +++++++----
.../{AnnotationTypes.js => AnnotationTypes.ts} | 40 +-
...undsControl.test.jsx => BoundsControl.test.tsx} | 0
.../{CheckboxControl.jsx => CheckboxControl.tsx} | 52 +-
.../CollectionControl/{index.jsx => index.tsx} | 90 ++-
.../DatasourceControl/DatasourceControl.test.tsx | 110 +--
.../DatasourceControl/{index.jsx => index.tsx} | 157 +++-
.../DndColumnMetricSelect.tsx | 15 +-
...erTitle.jsx => DndColumnSelectPopoverTitle.tsx} | 11 +-
.../DndFilterSelect.test.tsx | 14 +-
.../DndColumnSelectControl/DndMetricSelect.tsx | 23 +-
.../{AdhocFilter.test.js => AdhocFilter.test.ts} | 0
.../AdhocFilter/{index.js => index.ts} | 110 ++-
.../AdhocFilterControl/AdhocFilterControl.test.tsx | 49 +-
.../AdhocFilterControl/{index.jsx => index.tsx} | 160 ++--
...er.test.jsx => AdhocFilterEditPopover.test.tsx} | 24 +-
.../{index.jsx => index.tsx} | 159 +++-
...AdhocFilterEditPopoverSimpleTabContent.test.tsx | 133 +++-
.../index.tsx | 88 ++-
.../FilterControl/AdhocFilterOption/index.tsx | 25 +-
.../AdhocFilterPopoverTrigger/index.tsx | 2 +-
.../utils/useDatePickerInAdhocFilter.tsx | 6 +-
.../FilterControl/utils/useGetTimeRangeLabel.tsx | 31 +-
.../FixedOrMetricControl/{index.jsx => index.tsx} | 88 ++-
.../{AdhocMetric.test.js => AdhocMetric.test.ts} | 4 +-
.../{AdhocMetric.js => AdhocMetric.ts} | 102 ++-
.../{index.jsx => index.tsx} | 162 +++-
...cOption.test.jsx => AdhocMetricOption.test.tsx} | 27 +-
...AdhocMetricOption.jsx => AdhocMetricOption.tsx} | 46 +-
.../MetricControl/AdhocMetricPopoverTrigger.tsx | 20 +-
...on.test.jsx => FilterDefinitionOption.test.tsx} | 6 +-
...nitionOption.jsx => FilterDefinitionOption.tsx} | 21 +-
...lue.test.jsx => MetricDefinitionValue.test.tsx} | 26 +-
...finitionValue.jsx => MetricDefinitionValue.tsx} | 31 +-
...icsControl.test.jsx => MetricsControl.test.tsx} | 17 +-
.../{MetricsControl.jsx => MetricsControl.tsx} | 93 ++-
.../{adhocMetricType.js => adhocMetricType.ts} | 0
.../components/controls/MetricControl/types.ts | 2 +
.../components/controls/OptionControls/index.tsx | 4 +-
...lectControl.test.jsx => SelectControl.test.tsx} | 34 +-
.../{SelectControl.jsx => SelectControl.tsx} | 152 +++-
.../{SpatialControl.jsx => SpatialControl.tsx} | 123 +--
...eaControl.test.jsx => TextAreaControl.test.tsx} | 0
.../{TextAreaControl.jsx => TextAreaControl.tsx} | 104 ++-
.../components/controls/TextControl/index.tsx | 4 +
.../{index.jsx => index.tsx} | 109 ++-
...rtControl.test.jsx => ViewportControl.test.tsx} | 0
.../{ViewportControl.jsx => ViewportControl.tsx} | 82 +-
.../components/controls/VizTypeControl/VizTile.tsx | 2 +-
.../components/controls/XAxisSortControl.tsx | 16 +-
.../explore/controlUtils/standardizedFormData.ts | 24 +-
.../src/explore/{controls.jsx => controls.tsx} | 79 +-
.../src/explore/{store.test.jsx => store.test.tsx} | 5 +-
.../src/explore/{store.js => store.ts} | 62 +-
.../src/extensions/ExtensionsStartup.test.tsx | 1 -
.../src/extensions/ExtensionsStartup.tsx | 11 +-
.../src/features/alerts/AlertReportModal.tsx | 1 +
.../alerts/components/NotificationMethod.tsx | 137 ++--
.../features/alerts/components/RecipientIcon.tsx | 6 +
superset-frontend/src/features/alerts/types.ts | 2 +
.../databases/DatabaseModal/ExtraOptions.tsx | 14 +-
.../databases/DatabaseModal/index.test.tsx | 81 ++
.../src/features/databases/DatabaseModal/index.tsx | 58 +-
.../datasets/AddDataset/Footer/Footer.test.tsx | 1 +
.../features/datasets/AddDataset/Footer/index.tsx | 10 +-
.../src/features/home/RightMenu.test.tsx | 7 +-
superset-frontend/src/features/home/RightMenu.tsx | 21 +-
.../src/features/home/SavedQueries.tsx | 43 +-
superset-frontend/src/features/reports/types.ts | 2 +-
.../src/pages/ChartCreation/ChartCreation.test.tsx | 227 ++++++
.../src/pages/ChartCreation/index.tsx | 39 +-
superset-websocket/package-lock.json | 569 ++++++++++----
superset-websocket/package.json | 8 +-
.../utils/client-ws-app/package-lock.json | 12 +-
superset/commands/database/validate_sql.py | 44 ++
superset/commands/report/alert.py | 66 +-
superset/commands/report/execute.py | 18 +-
superset/commands/streaming_export/base.py | 55 +-
superset/config.py | 3 +
superset/db_engine_specs/trino.py | 61 +-
superset/jinja_context.py | 19 +-
superset/mcp_service/CLAUDE.md | 6 +-
superset/mcp_service/app.py | 13 +-
superset/mcp_service/chart/schemas.py | 64 +-
superset/mcp_service/chart/tool/__init__.py | 2 -
.../chart/tool/get_chart_available_filters.py | 50 --
superset/mcp_service/chart/tool/get_chart_data.py | 95 ++-
superset/mcp_service/chart/tool/list_charts.py | 42 +-
superset/mcp_service/common/schema_discovery.py | 422 +++++++++++
superset/mcp_service/dashboard/schemas.py | 56 +-
superset/mcp_service/dashboard/tool/__init__.py | 2 -
.../tool/get_dashboard_available_filters.py | 49 --
.../mcp_service/dashboard/tool/list_dashboards.py | 68 +-
superset/mcp_service/dataset/schemas.py | 61 +-
superset/mcp_service/dataset/tool/__init__.py | 2 -
.../dataset/tool/get_dataset_available_filters.py | 49 --
superset/mcp_service/dataset/tool/list_datasets.py | 43 +-
.../mcp_service/docs/tool-search-optimization.md | 2 +-
superset/mcp_service/mcp_core.py | 120 ++-
superset/mcp_service/sql_lab/execute_sql_core.py | 221 ------
superset/mcp_service/sql_lab/schemas.py | 42 +-
superset/mcp_service/sql_lab/sql_lab_utils.py | 243 ------
superset/mcp_service/sql_lab/tool/execute_sql.py | 136 +++-
superset/mcp_service/system/resources/__init__.py | 5 +-
.../system/resources/schema_discovery.py | 196 +++++
superset/mcp_service/system/tool/__init__.py | 2 +
superset/mcp_service/system/tool/get_schema.py | 161 ++++
superset/mcp_service/utils/schema_utils.py | 21 +-
superset/reports/models.py | 1 +
superset/reports/notifications/__init__.py | 1 +
superset/reports/notifications/webhook.py | 144 ++++
superset/security/manager.py | 124 +++-
superset/sqllab/query_render.py | 23 +-
superset/views/base.py | 2 +
superset/views/datasource/utils.py | 6 +
superset/views/utils.py | 2 +-
tests/integration_tests/databases/api_tests.py | 109 +++
tests/integration_tests/fixtures/__init__.py | 1 +
tests/integration_tests/fixtures/public_role.py | 18 +
tests/integration_tests/reports/alert_tests.py | 8 +-
tests/integration_tests/security_tests.py | 99 +++
.../commands/databases/validate_sql_test.py | 279 +++++++
tests/unit_tests/commands/report/alert_test.py | 496 +++++++++++++
tests/unit_tests/db_engine_specs/test_trino.py | 309 +++++++-
tests/unit_tests/jinja_context_test.py | 54 ++
.../mcp_service/chart/tool/test_get_chart_data.py | 99 +++
.../mcp_service/chart/tool/test_list_charts.py | 48 +-
.../dashboard/tool/test_dashboard_tools.py | 135 +++-
.../mcp_service/dataset/tool/test_dataset_tools.py | 133 +++-
.../mcp_service/sql_lab/tool/test_execute_sql.py | 490 +++++++-----
.../mcp_service/system/tool/test_get_schema.py | 368 +++++++++
.../mcp_service/system/tool/test_mcp_core.py | 152 +++-
.../reports/notifications/webhook_tests.py | 225 ++++++
.../security/exclude_users_filter_test.py | 165 +++++
.../unit_tests/views/datasource}/__init__.py | 0
tests/unit_tests/views/datasource/utils_test.py | 217 ++++++
254 files changed, 12980 insertions(+), 4013 deletions(-)
create mode 100644 docs/developer_portal/extensions/dependencies.md
create mode 100644 docs/netlify.toml
create mode 100644 docs/src/theme/Admonition/Types.js
create mode 100644 docs/static/img/extensions/query-comparison.png
create mode 100644 docs/static/img/extensions/query-estimator.png
create mode 100644 docs/static/img/extensions/result-stats.png
create mode 100644 docs/static/img/extensions/sql-snippets.png
create mode 100644 docs/static/img/logos/cirrus.svg
create mode 100644 docs/static/img/logos/plaidcloud.svg
create mode 100644 docs/static/img/logos/vlmedia.svg
copy superset/charts/data/query_context_cache_loader.py =>
superset-frontend/netlify.toml (61%)
delete mode 100644
superset-frontend/packages/superset-core/src/api/environment.ts
create mode 100644
superset-frontend/plugins/legacy-preset-chart-deckgl/src/layers/Scatter/buildQuery.test.ts
create mode 100644
superset-frontend/plugins/legacy-preset-chart-deckgl/src/layers/Scatter/transformProps.test.ts
create mode 100644
superset-frontend/plugins/legacy-preset-chart-deckgl/src/layers/transformUtils.test.ts
create mode 100644
superset-frontend/plugins/legacy-preset-chart-deckgl/src/layers/utils/metricUtils.test.ts
create mode 100644
superset-frontend/plugins/legacy-preset-chart-deckgl/src/layers/utils/metricUtils.ts
create mode 100644
superset-frontend/plugins/plugin-chart-ag-grid-table/test/utils/dateFilterComparator.test.ts
rename superset-frontend/src/SqlLab/actions/{sqlLab.js => sqlLab.ts} (59%)
delete mode 100644
superset-frontend/src/SqlLab/middlewares/persistSqlLabStateEnhancer.js
create mode 100644
superset-frontend/src/SqlLab/middlewares/persistSqlLabStateEnhancer.ts
rename superset-frontend/src/SqlLab/reducers/{sqlLab.js => sqlLab.ts} (67%)
delete mode 100644 superset-frontend/src/core/environment/index.ts
rename
superset-frontend/src/explore/components/controls/AnnotationLayerControl/{AnnotationLayer.jsx
=> AnnotationLayer.tsx} (74%)
rename
superset-frontend/src/explore/components/controls/AnnotationLayerControl/{AnnotationTypes.js
=> AnnotationTypes.ts} (69%)
rename
superset-frontend/src/explore/components/controls/{BoundsControl.test.jsx =>
BoundsControl.test.tsx} (100%)
rename superset-frontend/src/explore/components/controls/{CheckboxControl.jsx
=> CheckboxControl.tsx} (68%)
rename
superset-frontend/src/explore/components/controls/CollectionControl/{index.jsx
=> index.tsx} (67%)
rename
superset-frontend/src/explore/components/controls/DatasourceControl/{index.jsx
=> index.tsx} (80%)
rename
superset-frontend/src/explore/components/controls/DndColumnSelectControl/{DndColumnSelectPopoverTitle.jsx
=> DndColumnSelectPopoverTitle.tsx} (91%)
rename
superset-frontend/src/explore/components/controls/FilterControl/AdhocFilter/{AdhocFilter.test.js
=> AdhocFilter.test.ts} (100%)
rename
superset-frontend/src/explore/components/controls/FilterControl/AdhocFilter/{index.js
=> index.ts} (56%)
rename
superset-frontend/src/explore/components/controls/FilterControl/AdhocFilterControl/{index.jsx
=> index.tsx} (70%)
rename
superset-frontend/src/explore/components/controls/FilterControl/AdhocFilterEditPopover/{AdhocFilterEditPopover.test.jsx
=> AdhocFilterEditPopover.test.tsx} (89%)
rename
superset-frontend/src/explore/components/controls/FilterControl/AdhocFilterEditPopover/{index.jsx
=> index.tsx} (74%)
rename
superset-frontend/src/explore/components/controls/FixedOrMetricControl/{index.jsx
=> index.tsx} (69%)
rename
superset-frontend/src/explore/components/controls/MetricControl/{AdhocMetric.test.js
=> AdhocMetric.test.ts} (98%)
rename
superset-frontend/src/explore/components/controls/MetricControl/{AdhocMetric.js
=> AdhocMetric.ts} (62%)
rename
superset-frontend/src/explore/components/controls/MetricControl/AdhocMetricEditPopover/{index.jsx
=> index.tsx} (79%)
rename
superset-frontend/src/explore/components/controls/MetricControl/{AdhocMetricOption.test.jsx
=> AdhocMetricOption.test.tsx} (90%)
rename
superset-frontend/src/explore/components/controls/MetricControl/{AdhocMetricOption.jsx
=> AdhocMetricOption.tsx} (63%)
rename
superset-frontend/src/explore/components/controls/MetricControl/{FilterDefinitionOption.test.jsx
=> FilterDefinitionOption.test.tsx} (94%)
rename
superset-frontend/src/explore/components/controls/MetricControl/{FilterDefinitionOption.jsx
=> FilterDefinitionOption.tsx} (81%)
rename
superset-frontend/src/explore/components/controls/MetricControl/{MetricDefinitionValue.test.jsx
=> MetricDefinitionValue.test.tsx} (83%)
rename
superset-frontend/src/explore/components/controls/MetricControl/{MetricDefinitionValue.jsx
=> MetricDefinitionValue.tsx} (67%)
rename
superset-frontend/src/explore/components/controls/MetricControl/{MetricsControl.test.jsx
=> MetricsControl.test.tsx} (92%)
rename
superset-frontend/src/explore/components/controls/MetricControl/{MetricsControl.jsx
=> MetricsControl.tsx} (76%)
rename
superset-frontend/src/explore/components/controls/MetricControl/{adhocMetricType.js
=> adhocMetricType.ts} (100%)
rename
superset-frontend/src/explore/components/controls/{SelectControl.test.jsx =>
SelectControl.test.tsx} (94%)
rename superset-frontend/src/explore/components/controls/{SelectControl.jsx =>
SelectControl.tsx} (65%)
rename superset-frontend/src/explore/components/controls/{SpatialControl.jsx
=> SpatialControl.tsx} (72%)
rename
superset-frontend/src/explore/components/controls/{TextAreaControl.test.jsx =>
TextAreaControl.test.tsx} (100%)
rename superset-frontend/src/explore/components/controls/{TextAreaControl.jsx
=> TextAreaControl.tsx} (69%)
rename
superset-frontend/src/explore/components/controls/TimeSeriesColumnControl/{index.jsx
=> index.tsx} (81%)
rename
superset-frontend/src/explore/components/controls/{ViewportControl.test.jsx =>
ViewportControl.test.tsx} (100%)
rename superset-frontend/src/explore/components/controls/{ViewportControl.jsx
=> ViewportControl.tsx} (62%)
rename superset-frontend/src/explore/{controls.jsx => controls.tsx} (87%)
rename superset-frontend/src/explore/{store.test.jsx => store.test.tsx} (95%)
rename superset-frontend/src/explore/{store.js => store.ts} (61%)
delete mode 100644
superset/mcp_service/chart/tool/get_chart_available_filters.py
create mode 100644 superset/mcp_service/common/schema_discovery.py
delete mode 100644
superset/mcp_service/dashboard/tool/get_dashboard_available_filters.py
delete mode 100644
superset/mcp_service/dataset/tool/get_dataset_available_filters.py
delete mode 100644 superset/mcp_service/sql_lab/execute_sql_core.py
delete mode 100644 superset/mcp_service/sql_lab/sql_lab_utils.py
create mode 100644 superset/mcp_service/system/resources/schema_discovery.py
create mode 100644 superset/mcp_service/system/tool/get_schema.py
create mode 100644 superset/reports/notifications/webhook.py
create mode 100644 tests/unit_tests/commands/databases/validate_sql_test.py
create mode 100644 tests/unit_tests/commands/report/alert_test.py
create mode 100644
tests/unit_tests/mcp_service/chart/tool/test_get_chart_data.py
create mode 100644 tests/unit_tests/mcp_service/system/tool/test_get_schema.py
create mode 100644 tests/unit_tests/reports/notifications/webhook_tests.py
create mode 100644 tests/unit_tests/security/exclude_users_filter_test.py
copy {superset-core/src/superset_core/api =>
tests/unit_tests/views/datasource}/__init__.py (100%)
create mode 100644 tests/unit_tests/views/datasource/utils_test.py