This is an automated email from the ASF dual-hosted git repository.
jli pushed a change to branch feat-additional-dataset-playwright-tests
in repository https://gitbox.apache.org/repos/asf/superset.git
from df4cdaafa6 fix(playwright): improve CreateDatasetPage dropdown trigger
locator
add adb575be2f chore(deps-dev): bump typescript-eslint from 8.50.1 to
8.52.0 in /docs (#36913)
add fa3d4a75ca chore(deps): bump actions/download-artifact from 6 to 7
(#36699)
add 7503ee4e09 feat(sqllab): primary/secondary action extensions (#36644)
add 462fffc23c fix(docs): Update references from LLMS.md to AGENTS.md
(#37060)
add 481bfa0f68 feat(starrocks): add catalog support for StarRocks database
connections (#37026)
add 5f58241795 fix(explore): dispatch NumberControl value on blur to allow
field clearing (#37007)
add ad3812edd7 fix(table): keep d3-format semantics when applying currency
formatting (#37039)
add 936e37bd02 chore(deps-dev): bump @babel/node from 7.28.0 to 7.28.6 in
/superset-frontend (#37089)
add e17bfae6bd chore(deps-dev): bump webpack from 5.103.0 to 5.104.1 in
/superset-frontend (#37083)
add fc67569cd4 fix(datasets): ui bug fixes (#37058)
add 23a47e2f5a chore(deps-dev): bump webpack-dev-server from 5.2.2 to
5.2.3 in /superset-frontend (#37088)
add 3a3cbc2900 chore(deps-dev): bump @types/node from 25.0.3 to 25.0.7 in
/superset-websocket (#37081)
add 6c75365427 chore(deps-dev): bump typescript-eslint from 8.52.0 to
8.53.0 in /docs (#37076)
add 5d5012aa9f chore(deps-dev): bump @types/lodash from 4.17.21 to 4.17.23
in /superset-frontend (#37077)
add 560da50df8 chore(deps): bump @babel/runtime from 7.28.4 to 7.28.6 in
/superset-frontend (#37080)
add 393259bb9e chore(deps-dev): bump typescript-eslint from 8.52.0 to
8.53.0 in /superset-websocket (#37082)
add 0b4fcce03b chore(deps-dev): bump cross-env from 10.0.0 to 10.1.0 in
/superset-frontend (#36657)
add 1166df3579 docs(inthewild): Dark mode issues on InTheWild page (#37034)
add 0c490dc1ab docs(exploring-data): add overview to tutorial (#37028)
add fd3eea0557 chore(deps): bump lodash-es from 4.17.21 to 4.17.22 in
/superset-frontend (#37048)
add 0404c99e39 fix(dashboard): revert cell hover and active colors to
grayscale (#36991)
add e053418c97 fix(Matrixify): Do not clear values when saving (#37090)
add bdcc98743d chore(deps-dev): bump cheerio from 1.1.0 to 1.1.2 in
/superset-frontend (#37002)
add 91dba9dcbf chore(deps-dev): bump @babel/types from 7.28.4 to 7.28.5 in
/superset-frontend (#36652)
add 86bc493423 chore(deps-dev): bump @babel/types from 7.28.4 to 7.28.6 in
/superset-frontend (#37087)
add 4f3403b134 chore(deps): bump antd from 6.1.2 to 6.2.0 in /docs (#37079)
add 35ac4c74fd feat(dashboard): chart customizations modal and plugins
(#36062)
add a272253243 fix(table chart): time comparison totals returning null
(#37111)
add 137ebdee39 fix(prune_logs): improve performance by using id column
only for ordering log records when max_rows_per_run is provided (#37138)
add 4c01b5c324 docs: Add UserGuiding INTHEWILD.yaml (#37030)
add debdfbc835 chore(deps-dev): bump
@babel/plugin-transform-modules-commonjs from 7.27.1 to 7.28.6 in
/superset-frontend (#37117)
add 64424f1625 chore(deps-dev): bump @types/node from 25.0.7 to 25.0.8 in
/superset-websocket (#37116)
add 6ca0f7a925 chore(deps-dev): bump @babel/cli from 7.28.3 to 7.28.6 in
/superset-frontend (#37124)
add 2324b4c9e5 chore(deps-dev): bump @babel/preset-typescript from 7.26.0
to 7.28.5 in /superset-frontend (#36661)
add 6eb4db6930 fix(controls): Only initialize categorical control on
numeric x axis (#37115)
add 23b91d22ef fix(charts): properly parse error responses in
StatefulChart (#37130)
add 81fdc2bd0e feat(dates): adding handling for first of (#37098)
add c867d9379f chore(deps-dev): bump ts-loader from 9.5.2 to 9.5.4 in
/superset-frontend (#36999)
add 96a3f2a187 chore(deps-dev): bump @babel/preset-react from 7.27.1 to
7.28.5 in /superset-frontend (#37047)
add 68e917c3f6 chore(deps-dev): bump eslint-plugin-testing-library from
7.14.0 to 7.15.4 in /superset-frontend (#37052)
add db61e4f62a chore(deps-dev): bump
eslint-plugin-react-you-might-not-need-an-effect from 0.8.3 to 0.8.5 in
/superset-frontend (#37054)
add 7f6cdc5616 chore(deps-dev): bump prettier from 3.7.4 to 3.8.0 in
/superset-websocket (#37149)
add 4c267b7ee2 chore(deps-dev): bump prettier from 3.7.4 to 3.8.0 in /docs
(#37152)
add f69cd43bd0 chore(deps-dev): bump eslint-plugin-prettier from 5.5.4 to
5.5.5 in /docs (#37153)
add c6ad0dbd3a chore(deps-dev): bump prettier from 3.7.4 to 3.8.0 in
/superset-frontend (#37156)
add 89380638b0 chore(deps): bump immer from 11.0.1 to 11.1.3 in
/superset-frontend (#37159)
add 82d74d15ec chore(deps): bump react-intersection-observer from 9.16.0
to 10.0.0 in /superset-frontend (#37162)
add 129b8e10a2 chore(deps-dev): bump @babel/core from 7.28.3 to 7.28.6 in
/superset-frontend (#37154)
add e071e0c5a4 chore(deps-dev): bump eslint-plugin-prettier from 5.5.4 to
5.5.5 in /superset-frontend (#37160)
add b142f1956f chore(deps): bump chrono-node from 2.7.8 to 2.9.0 in
/superset-frontend (#36632)
add 95c14b1fc1 chore(Matrixify): disable matrixify for incompatible viz
types (#37163)
add 9555798d37 fix(data-zoom): Data-zoom not rendered properly in
Matrixify (#37134)
add ab8df1ab34 fix: Move head_custom_extra above csrf token input (#37173)
add 54f19856de fix: HTML detection in tables (#37171)
add c30edaf075 feat: add tab select with save chart to dashboard (#36332)
add 4532ccf638 fix(mcp): push Flask app context in mcp_auth_hook for tool
execution (#37190)
add d0783da3e5 fix(mcp): Handle big_number charts and make semantic
warnings non-blocking (#37142)
add 2bcb66c2fc refactor(mcp): simplify single metric chart type check
(#37215)
add 4b1d92e575 feat: add droppable area to tab empty state (#37210)
add 896947c787 fix(mcp): restore select_columns filtering in list tools
(#37213)
add f4474b2e3e feat: Dynamic currency (#36416)
add b941be01cf chore(deps-dev): bump @types/node from 25.0.8 to 25.0.9 in
/superset-websocket (#37193)
add 33ff127370 chore(deps-dev): bump baseline-browser-mapping from 2.9.9
to 2.9.14 in /superset-frontend (#37198)
add f00f7d1c18 chore(deps): bump ioredis from 5.9.0 to 5.9.2 in
/superset-websocket (#37194)
add a77c2d550c fix(mixed-timeseries): prevent duplicate legend entries
(#37217)
add f984dca5cc fix(sunburst): make Show Total text theme-aware (#37177)
add 6453980d8d chore(deps): bump react-error-boundary from 6.0.0 to 6.1.0
in /superset-frontend (#37206)
add cee5ce13e0 chore(deps-dev): bump @types/node from 25.0.3 to 25.0.9 in
/superset-frontend (#37196)
add a06e6eb680 chore(deps): bump googleapis from 169.0.0 to 170.1.0 in
/superset-frontend (#37195)
add 4d462c76bd chore(deps-dev): bump @types/urijs from 1.19.25 to 1.19.26
in /superset-frontend (#36636)
add 476e454384 chore(deps): update @deck.gl/extensions requirement from
~9.2.2 to ~9.2.5 in /superset-frontend/plugins/legacy-preset-chart-deckgl
(#36618)
add 39238ef8a9 feat(ag-grid-table): Enable Time Shift feature for AG Grid
Table (#37072)
add 2e29e33dd8 fix(calendar-heatmap): correct month display across
timezones (#37064)
add 2900258e05 fix(Dashboard): Auto-apply filters with default values when
extraForm… (#36927)
add c0cbbe393a feat(Matrixify): add matrixify tag to list view and explore
(#37247)
add 409cdad264 fix(mcp): prevent MCP service from corrupting shared
appbuilder singleton (#37252)
add 4393db57d9 fix(native-filters): enable Apply button when selecting
Boolean FALSE value (#37017)
add f4597be341 fix(timeseries): x-axis last month was hidden (#37181)
add 1f19ef92cb refactor(TimezoneSelector): Enhance timezone selection
logic and improve performance (#36486)
add 2d20079a88 fix(mcp): Remove screenshot URL functionality from MCP
chart tools (#37228)
add 6e1718910f fix(sqllab): show virtual dataset banner only when
isDataset param is true (#37184)
add fe16c828cf feat(mcp): Add support for AG Grid Interactive Table
(ag-grid-table) viz_type (#37191)
add 2187fb4ab4 fix(transpile_query): Fix export_as_csv error:
"transpile_to_dialect": ['Unknown field.'] (#37249)
add 50d0508a92 feat(mcp): Add Redis EventStore support for multi-pod
deployments (#37216)
add e1fa374517 feat(mcp): add time_grain parameter to XY chart generation
(#37182)
add 3fba967856 fix(delete-filter): deleted native filters are still shown
until [sc-96553] (#37012)
add 25647942fd fix(chart): Horizontal bar chart value labels cut off
(#36989)
add d0e80d2079 refactor: Redesigns the Results panel toolbar and enables
extensions to contribute toolbar actions (#37255)
add 2267b78a10 chore(deps): bump antd from 6.2.0 to 6.2.1 in /docs (#37301)
add 445bc403b8 chore(deps): bump diff in /superset-frontend (#37292)
add 807ff513ef chore(deps): bump fs-extra from 11.3.2 to 11.3.3 in
/superset-frontend (#37274)
add 281c0c9672 chore: add paths to backend extension stack traces (#37300)
add 238bebebec fix(extensions): prevent duplicate initialization of
LOCAL_EXTENSIONS watcher (#37250)
add 801c84f0ef chore(deps-dev): bump typescript-eslint from 8.53.0 to
8.53.1 in /superset-websocket (#37268)
add 3fa7dba094 chore(deps): bump diff from 5.2.0 to 5.2.2 in /docs (#37291)
add a1d24f1e4a chore(deps-dev): bump oxlint from 1.33.0 to 1.41.0 in
/superset-frontend (#37279)
add 13013bbd64 chore(deps-dev): bump typescript-eslint from 8.53.0 to
8.53.1 in /docs (#37272)
add 2c1a33fd32 fix(roles): allow Public role to read themes (#37295)
add b460ca94c6 feat(docs): auto-generate database documentation from
lib.py (#36805)
add 39d5511b29 chore(deps): bump csstype from 3.1.3 to 3.2.3 in
/superset-frontend (#37157)
add a33f96b2fc chore(deps): bump geolib from 2.0.24 to 3.3.4 in
/superset-frontend (#37205)
add 10ed60b4c1 chore(deps): bump caniuse-lite from 1.0.30001764 to
1.0.30001765 in /docs (#37238)
add 95169807d3 chore(deps): bump hot-shots from 12.1.0 to 13.0.0 in
/superset-websocket (#37269)
add dc15feb83d chore(deps-dev): bump @babel/types from 7.28.4 to 7.28.6 in
/superset-frontend (#37273)
add c564655f39 chore(deps): bump diff from 5.1.0 to 5.2.2 in
/superset-frontend/cypress-base (#37296)
add 212559dab2 feat(table): add tooltip to table header (#37179)
add 23fec55e3d fix(native-filters): respect filter scope in nested tabs by
prioritizing chartsInScope (#37139)
add 0fedfe03d5 feat(mcp): add stacked bar/area chart support (#37188)
add ec36791551 fix(mcp): resolve Flask app context error in MCP tools
(#37309)
add dee063a4c5 feat(examples): Modernize example data loading with Parquet
and YAML configs (#36538)
add 17d6f4ebc4 fix(table): align group headers correctly when filtering
time compari… (#37236)
add d2907b2577 docs: federate scattered markdown files into centralized
docs (#36756)
add daec330127 fix: pin remark-gfm to v3.0.1 for compatibility with
react-markdown v8 (#36388)
add 996e0e1e7a fix(docs): remove broken /docs/databases redirect to
nonexistent path (#37316)
add bb3452b43c chore(deps-dev): bump mini-css-extract-plugin from 2.9.4 to
2.10.0 in /superset-frontend (#37270)
add c3d5edbae9 chore(deps-dev): bump @babel/preset-env from 7.28.5 to
7.28.6 in /superset-frontend (#37158)
add d4723ef116 feat: Handle OAuth2 dance with TableSelector (#37315)
add 02495a130f chore(deps): bump lodash from 4.17.21 to 4.17.23 in
/superset-websocket (#37321)
add 5e7fe81cfa chore(deps-dev): bump prettier from 3.8.0 to 3.8.1 in /docs
(#37329)
add 0289028313 chore(deps-dev): bump baseline-browser-mapping from 2.9.14
to 2.9.17 in /superset-frontend (#37330)
add 3fa5bb4138 fix(echarts): restore dashed line style for time comparison
series (#37135)
add aa37e96a02 chore(deps-dev): bump @babel/eslint-parser from 7.28.5 to
7.28.6 in /superset-frontend (#37331)
add febc5d54d5 chore(deps-dev): bump prettier-plugin-packagejson from
2.5.20 to 3.0.0 in /superset-frontend (#37340)
add 7f4c260cbe chore(deps): bump mapbox-gl from 3.17.0 to 3.18.0 in
/superset-frontend (#37328)
add b576665f9a chore(deps): bump lodash-es from 4.17.22 to 4.17.23 in
/superset-frontend (#37347)
add 7888da9e30 chore(deps): bump lodash from 4.17.21 to 4.17.23 in /docs
(#37346)
add 2b647d2352 chore(deps-dev): bump @applitools/eyes-storybook from
3.63.4 to 3.63.8 in /superset-frontend (#37336)
add de6ac2a444 chore(deps-dev): bump lightningcss from 1.30.2 to 1.31.1 in
/superset-frontend (#37335)
add cc972cad5a fix: DB OAuth2 fixes (#37350)
add fadab21493 fix(api): nan is not properly handled for athena
connections (#37071)
add 9fabd7f997 docs: show Developer Portal in global navigation (#37313)
add b630830841 fix(sqllab): add colorEditorSelection token for visible
text selection (#36932)
add 87bbd54d0a feat(examples): Transpile virtual dataset SQL on import
(#37311)
add 3ca8c998ab docs(INTHEWILD): add club 25 de agosto (#37110)
add 760227d630 fix(theme): migrate APP_NAME to brandAppName theme token
with backward compatibility (#37370)
add b7a5b24a54 feat(docs): add auto-generated troubleshooting section to
database pages (#37345)
add c6821cac6f chore(deps-dev): bump prettier from 3.8.0 to 3.8.1 in
/superset-websocket (#37325)
add b1ad54220b fix: add sans-serif font fallback to fontFamily (Fixes
#37096) (#37172)
add 04c5517206 fix(dataset-editor): add missing Data type label in
calculated columns tab (#37165)
add 54919c942a fix(time-range-modal): time range modal for out of scope
filter is not displayed correctly (#36996)
add f2b54e882d fix: variable shadowing in test_connection command (#37397)
add 5e3acc2041 chore(deps): bump actions/upload-artifact from 4 to 6
(#37320)
add 01a9541a0e chore(deps): bump dawidd6/action-download-artifact from 6
to 12 (#37324)
add 8e0c584a92 chore(deps-dev): bump prettier from 3.8.0 to 3.8.1 in
/superset-frontend (#37339)
add 5f67fa45ce chore(deps): bump jquery from 3.7.1 to 4.0.0 in
/superset-frontend (#37342)
add b81543c18c chore(deps): bump lodash from 4.17.21 to 4.17.23 in
/superset-frontend/cypress-base (#37349)
add e1ce553b2b chore(deps-dev): bump @types/node from 25.0.9 to 25.0.10 in
/superset-websocket (#37351)
add ef395662aa chore(deps-dev): bump @babel/runtime-corejs3 from 7.28.4 to
7.28.6 in /superset-frontend (#37353)
add 7c69ec7f24 chore(deps): bump markdown-to-jsx from 7.7.4 to 9.6.0 in
/superset-frontend (#37354)
add 790b79541b chore(deps-dev): bump globals from 17.0.0 to 17.1.0 in
/superset-websocket (#37380)
add 6a46700721 chore(deps): bump caniuse-lite from 1.0.30001765 to
1.0.30001766 in /docs (#37381)
add eeb4065d7d chore(deps): bump unist-util-visit from 5.0.0 to 5.1.0 in
/docs (#37383)
add 8951362852 chore(deps-dev): bump globals from 17.0.0 to 17.1.0 in
/docs (#37385)
add e14931c368 chore(deps-dev): bump swc-loader from 0.2.6 to 0.2.7 in
/superset-frontend (#37387)
add f83f952221 chore(deps-dev): bump webpack-bundle-analyzer from 5.1.1 to
5.2.0 in /superset-frontend (#37388)
add bbab86a0b1 chore(deps-dev): bump @applitools/eyes-storybook from
3.63.8 to 3.63.9 in /superset-frontend (#37390)
add 56cf7a810b chore(deps-dev): bump html-webpack-plugin from 5.6.5 to
5.6.6 in /superset-frontend (#37392)
add 429d9b27f6 chore: Update outdated GitHub Actions version (#37305)
add baaa8c5f54 feat(deckgl): add auto zoom option in deck gl multi layer
(#37221)
add d823dfd2b9 feat: add interactive column sorting to pivot table (#36050)
add 5747fb1e85 feat(ListView): add pagination to card view and center row
count display (#36288)
add e8363cf606 fix(redshift): normalize table names to lowercase for CSV
uploads (#37019)
add d6328fcb42 chore(deps): bump mapbox-gl from 3.18.0 to 3.18.1 in
/superset-frontend (#37382)
add 34418d7e0b fix(datasets): respect application root in database
management link (#36986)
add 39ebf7a7ad chore(websocket): sync Node version to LTS v22 (#37102)
add d54e227e25 chore: update old MotherDuck duckdb version to follow the
official duckdb one (#36834)
add faecfafe6c Merge origin/master into
feat-additional-dataset-playwright-tests
No new revisions were added by this update.
Summary of changes:
.claude/settings.json | 15 +
.github/actions/change-detector/label-draft-pr.yml | 2 +-
.github/dependabot.yml | 3 +
.github/workflows/check_db_migration_confict.yml | 2 +-
.github/workflows/superset-docs-deploy.yml | 41 +-
.github/workflows/superset-docs-verify.yml | 62 +-
.github/workflows/superset-frontend.yml | 2 +-
.../workflows/superset-python-integrationtest.yml | 30 +
.gitignore | 1 +
.pre-commit-config.yaml | 17 +-
.rat-excludes | 3 +
AGENTS.md | 21 +
Dockerfile | 20 +-
INSTALL.md | 20 +-
LINTING_ARCHITECTURE.md | 121 -
README.md | 85 +-
RELEASING/release-notes-1-0/README.md | 2 +-
RESOURCES/FEATURE_FLAGS.md | 103 -
RESOURCES/INTHEWILD.yaml | 27 +-
UPDATING.md | 59 +-
docker-compose-light.yml | 4 -
docker-compose.yml | 5 -
docs/.gitignore | 7 +
docs/DOCS_CLAUDE.md | 2 +-
docs/README.md | 6 +-
.../contributing/development-setup.md | 2 +-
docs/developer_portal/contributing/howtos.md | 65 +-
.../guidelines/frontend-style-guidelines.md | 3 +-
docs/developer_portal/index.md | 1 -
docs/developer_portal/testing/e2e-testing.md | 215 +-
docs/docs/configuration/configuring-superset.mdx | 2 +-
docs/docs/configuration/databases.mdx | 2004 -------
docs/docs/configuration/feature-flags.mdx | 107 +
docs/docs/configuration/networking-settings.mdx | 2 +-
docs/docs/configuration/timezones.mdx | 2 +-
docs/docs/contributing/development.mdx | 105 +-
docs/docs/faq.mdx | 4 +-
docs/docs/installation/kubernetes.mdx | 2 +-
docs/docs/installation/upgrading-superset.mdx | 12 +
docs/docs/quickstart.mdx | 2 +-
docs/docs/using-superset/exploring-data.mdx | 8 +-
docs/docusaurus.config.ts | 11 +-
docs/package.json | 25 +-
docs/scripts/extract_custom_errors.py | 296 +
docs/scripts/generate-database-docs.mjs | 943 ++++
docs/sidebars.js | 14 +
docs/src/components/SectionHeader.tsx | 12 +-
docs/src/components/databases/DatabaseIndex.tsx | 592 ++
docs/src/components/databases/DatabasePage.tsx | 764 +++
.../src/components/databases/index.ts | 8 +-
docs/src/components/databases/types.ts | 255 +
docs/src/data/databases.json | 5734 ++++++++++++++++++++
docs/src/pages/inTheWild.tsx | 2 +-
docs/src/pages/index.tsx | 52 +-
docs/src/styles/custom.css | 14 +
docs/static/.htaccess | 6 +-
docs/static/feature-flags.json | 379 ++
docs/static/img/databases/altinity.png | Bin 0 -> 19819 bytes
docs/static/img/databases/amazon-redshift.jpg | Bin 16973 -> 0 bytes
docs/static/img/databases/apache-druid.jpeg | Bin 214904 -> 0 bytes
docs/static/img/databases/apache-impala.png | Bin 5216 -> 25804 bytes
docs/static/img/databases/apache-solr.png | Bin 0 -> 5584 bytes
docs/static/img/databases/apache-solr.svg | Bin 0 -> 3682 bytes
docs/static/img/databases/apache-spark.png | Bin 0 -> 26999 bytes
docs/static/img/databases/ascend.webp | Bin 0 -> 35644 bytes
docs/static/img/databases/aws-aurora.jpg | Bin 0 -> 80321 bytes
docs/static/img/databases/aws.png | Bin 0 -> 7868 bytes
docs/static/img/databases/azure.svg | Bin 0 -> 1759 bytes
docs/static/img/databases/celerdata.png | Bin 0 -> 41661 bytes
docs/static/img/databases/cloudflare.png | Bin 0 -> 2841 bytes
docs/static/img/databases/cockroachdb.png | Bin 0 -> 242795 bytes
docs/static/img/databases/cratedb.png | Bin 0 -> 1534 bytes
docs/static/img/databases/db2.png | Bin 7493 -> 0 bytes
docs/static/img/databases/duckdb.png | Bin 0 -> 8369 bytes
docs/static/img/databases/elasticsearch.png | Bin 0 -> 13770 bytes
docs/static/img/databases/google-biquery.png | Bin 15539 -> 0 bytes
docs/static/img/databases/greenplum.jpeg | Bin 7559 -> 0 bytes
docs/static/img/databases/ibmdb2.png | Bin 14127 -> 0 bytes
docs/static/img/databases/imply.png | Bin 0 -> 15978 bytes
docs/static/img/databases/kusto.png | Bin 0 -> 2493 bytes
docs/static/img/databases/monet.png | Bin 21830 -> 0 bytes
docs/static/img/databases/motherduck.png | Bin 0 -> 82556 bytes
docs/static/img/databases/mssql-server.png | Bin 695548 -> 0 bytes
docs/static/img/databases/mssql.jpg | Bin 38434 -> 0 bytes
docs/static/img/databases/mysql.jpg | Bin 42653 -> 0 bytes
docs/static/img/databases/oracle-logo.png | Bin 10347 -> 0 bytes
docs/static/img/databases/oracle.png | Bin 8231 -> 0 bytes
docs/static/img/databases/pinot.png | Bin 7127 -> 0 bytes
docs/static/img/databases/postgresql.jpg | Bin 19019 -> 0 bytes
docs/static/img/databases/risingwave.png | Bin 0 -> 1548 bytes
docs/static/img/databases/sap-hana.jpg | Bin 20343 -> 0 bytes
docs/static/img/databases/shillelagh.png | Bin 0 -> 113600 bytes
docs/static/img/databases/singlestore.png | Bin 0 -> 15978 bytes
docs/static/img/databases/snowflake.png | Bin 15635 -> 0 bytes
docs/static/img/databases/sqlite.jpg | Bin 13006 -> 0 bytes
docs/static/img/databases/starburst.png | Bin 0 -> 20343 bytes
.../superset.svg} | Bin
docs/static/img/databases/trino2.jpg | Bin 36149 -> 0 bytes
docs/static/img/logos/club25deagosto.svg | Bin 0 -> 15461 bytes
docs/static/img/logos/userguiding.svg | Bin 0 -> 5610 bytes
docs/tsconfig.json | 2 +
.../configuration/configuring-superset.mdx | 2 +-
.../configuration/networking-settings.mdx | 2 +-
.../version-6.0.0/contributing/development.mdx | 2 +-
docs/versioned_docs/version-6.0.0/intro.md | 4 +-
docs/versions-config.json | 6 +-
docs/yarn.lock | 520 +-
helm/superset/Chart.yaml | 2 +-
helm/superset/README.md | 4 +-
helm/superset/values.yaml | 2 +-
pyproject.toml | 4 +-
scripts/cypress_run.py | 7 +-
scripts/extract_feature_flags.py | 200 +
superset-core/README.md | 2 +-
superset-extensions-cli/README.md | 2 +-
superset-frontend/LINTING.md | 165 -
superset-frontend/cypress-base/cypress.config.ts | 2 +-
.../{filter.test.ts => _skip.filter.test.ts} | 8 +-
.../cypress/e2e/chart_list/list.test.ts | 9 +-
.../cypress/e2e/dashboard/_skip.controls.test.ts | 6 +-
...r.test.ts => _skip.horizontalFilterBar.test.ts} | 1 +
.../cypress/e2e/dashboard/_skip.key_value.test.ts | 2 +-
.../dashboard/{load.test.ts => _skip.load.test.ts} | 0
....ts => _skip.nativeFilters.noInitState.test.ts} | 0
...Filters.test.ts => _skip.nativeFilters.test.ts} | 35 +-
.../dashboard/{tabs.test.ts => _skip.tabs.test.ts} | 2 +-
.../cypress/e2e/dashboard/_skip.url_params.test.ts | 2 +-
.../e2e/dashboard/shared_dashboard_functions.ts | 256 +-
.../cypress-base/cypress/e2e/dashboard/utils.ts | 12 +-
.../cypress/e2e/dashboard_list/list.test.ts | 22 +-
.../cypress/e2e/explore/_skip.AdhocFilters.test.ts | 2 +-
...cMetrics.test.ts => _skip.AdhocMetrics.test.ts} | 0
...cs.test.ts => _skip.advanced_analytics.test.ts} | 0
...notations.test.ts => _skip.annotations.test.ts} | 2 +-
.../explore/{link.test.ts => _skip.link.test.ts} | 0
.../cypress-base/cypress/e2e/explore/chart.test.js | 3 +-
...big_number.test.js => _skip.big_number.test.js} | 0
...otal.test.js => _skip.big_number_total.test.js} | 0
.../{box_plot.test.js => _skip.box_plot.test.js} | 33 +-
.../{bubble.test.js => _skip.bubble.test.js} | 89 +-
.../{compare.test.js => _skip.compare.test.js} | 0
..._chart.test.js => _skip.download_chart.test.js} | 0
.../{gauge.test.js => _skip.gauge.test.js} | 0
.../{graph.test.ts => _skip.graph.test.ts} | 0
.../{pie.test.js => _skip.pie.test.js} | 0
...vot_table.test.js => _skip.pivot_table.test.js} | 0
.../{sunburst.test.js => _skip.sunburst.test.js} | 0
.../{table.test.ts => _skip.table.test.ts} | 0
.../{time_table.js => _skip.time_table.js} | 0
.../{world_map.test.js => _skip.world_map.test.js} | 0
.../e2e/explore/visualizations/shared.helper.js | 24 +
superset-frontend/cypress-base/package-lock.json | 24 +-
superset-frontend/oxlint.json | 2 +-
superset-frontend/package-lock.json | 4159 +++++++-------
superset-frontend/package.json | 77 +-
.../packages/generator-superset/package.json | 2 +-
superset-frontend/packages/superset-core/README.md | 2 +-
.../packages/superset-core/package.json | 12 +-
.../packages/superset-core/src/ui/theme/types.ts | 8 +
.../src/operators/utils/isDerivedSeries.ts | 7 +-
.../src/shared-controls/customControls.tsx | 21 +-
.../src/shared-controls/sharedControls.tsx | 3 +
.../superset-ui-chart-controls/src/types.ts | 1 +
.../test/operators/utils/isDerivedSeries.test.ts | 21 +
.../test/shared-controls/customControls.test.tsx | 57 +
.../packages/superset-ui-core/package.json | 12 +-
.../src/chart/components/FallbackComponent.tsx | 5 +-
.../src/chart/components/StatefulChart.test.tsx | 340 ++
.../src/chart/components/StatefulChart.tsx | 37 +-
.../superset-ui-core/src/chart/types/Base.ts | 1 +
.../src/components/AsyncAceEditor/index.tsx | 5 +-
.../src/components/DatePicker/index.tsx | 5 +-
.../src/components/EmptyState/index.tsx | 87 +-
.../src/components/EmptyState/types.ts | 3 +
.../src/components/Icons/AntdEnhanced.tsx | 2 +
.../src/components/Pagination/index.tsx} | 12 +-
.../src/components/SafeMarkdown/SafeMarkdown.tsx | 3 +
.../TimezoneSelector/TimezoneOptionsCache.test.tsx | 256 +
.../TimezoneSelector/TimezoneOptionsCache.ts | 159 +
.../TimezoneSelector.DaylightSavingTime.test.tsx | 12 +-
.../TimezoneSelector/TimezoneSelector.test.tsx | 36 +-
.../src/components/TimezoneSelector/index.tsx | 237 +-
.../src/components/TimezoneSelector/types.ts} | 15 +-
.../superset-ui-core/src/components/index.ts | 2 +
.../src/currency-format/CurrencyFormats.ts} | 8 +-
.../src/currency-format/CurrencyFormatter.ts | 95 +-
.../superset-ui-core/src/currency-format/index.ts | 10 +-
.../superset-ui-core/src/currency-format/types.ts} | 15 +-
.../superset-ui-core/src/currency-format/utils.ts | 129 +-
.../superset-ui-core/src/query/constants.ts | 1 +
.../packages/superset-ui-core/src/query/index.ts | 1 +
.../superset-ui-core/src/query/types/Dashboard.ts | 81 +-
.../superset-ui-core/src/query/types/Datasource.ts | 1 +
.../superset-ui-core/src/query/types/Query.ts | 2 +
.../src/query/types/QueryFormData.ts | 5 +-
.../src/query/types/QueryResponse.ts | 6 +
.../superset-ui-core/src/utils/html.test.tsx | 18 +
.../packages/superset-ui-core/src/utils/html.tsx | 129 +-
.../chart/components/FallbackComponent.test.tsx | 9 +-
.../test/components/SafeMarkdown.test.tsx | 160 +
.../test/currency-format/CurrencyFormatter.test.ts | 37 +-
.../currency-format/analyzeCurrencyInData.test.ts} | 19 +-
.../currency-format/hasMixedCurrencies.test.ts} | 18 +-
.../currency-format/normalizeCurrency.test.ts} | 20 +-
.../packages/superset-ui-demo/package.json | 12 +-
superset-frontend/playwright/README.md | 225 -
.../playwright/helpers/api/dataset.ts | 33 +-
.../playwright/pages/DashboardPage.ts | 110 +
.../tests/experimental/dashboard/export.spec.ts | 104 +
superset-frontend/playwright/utils/constants.ts | 5 +
superset-frontend/playwright/utils/urls.ts | 1 +
.../legacy-plugin-chart-calendar/src/Calendar.js | 3 +-
.../legacy-plugin-chart-calendar/src/utils.ts | 10 +-
.../test/utils.test.ts | 96 +
.../src/transformProps.js | 13 +-
.../legacy-preset-chart-deckgl/package.json | 4 +-
.../src/DeckGLContainer.tsx | 6 +-
.../src/Multi/Multi.test.tsx | 524 ++
.../legacy-preset-chart-deckgl/src/Multi/Multi.tsx | 172 +-
.../src/Multi/controlPanel.test.ts | 351 ++
.../src/Multi/controlPanel.ts | 32 +-
.../plugin-chart-ag-grid-table/src/buildQuery.ts | 6 +
.../src/controlPanel.tsx | 6 +-
.../src/styles/index.tsx | 4 +-
.../src/transformProps.ts | 18 +-
.../BigNumberPeriodOverPeriod/transformProps.ts | 13 +-
.../src/BigNumber/BigNumberTotal/transformProps.ts | 16 +-
.../BigNumberWithTrendline/transformProps.ts | 11 +-
.../plugin-chart-echarts/src/BigNumber/types.ts | 2 +-
.../src/Funnel/transformProps.ts | 11 +-
.../src/Gauge/transformProps.ts | 6 +
.../src/Heatmap/transformProps.ts | 17 +-
.../src/MixedTimeseries/transformProps.ts | 54 +-
.../plugin-chart-echarts/src/Pie/transformProps.ts | 13 +-
.../src/Sunburst/transformProps.ts | 12 +-
.../src/Timeseries/transformProps.ts | 126 +-
.../src/Treemap/transformProps.ts | 12 +-
.../plugins/plugin-chart-echarts/src/constants.ts | 2 +
.../test/BigNumber/transformProps.test.ts | 56 +
.../test/Timeseries/helpers.ts | 122 +
.../test/Timeseries/transformProps.test.ts | 738 ++-
.../test/Timeseries/transformers.test.ts | 49 +-
.../plugins/plugin-chart-handlebars/package.json | 2 +-
.../plugins/plugin-chart-pivot-table/package.json | 3 +-
.../src/PivotTableChart.tsx | 124 +-
.../src/plugin/transformProps.ts | 18 +-
.../src/react-pivottable/Styles.js | 2 +-
.../src/react-pivottable/TableRenderers.jsx | 246 +-
.../src/react-pivottable/utilities.js | 56 +-
.../plugins/plugin-chart-pivot-table/src/types.ts | 2 +
.../test/plugin/transformProps.test.ts | 189 +
.../test/react-pivottable/tableRenders.test.tsx | 591 ++
.../plugins/plugin-chart-table/src/Styles.tsx | 4 +-
.../plugins/plugin-chart-table/src/TableChart.tsx | 39 +-
.../plugin-chart-table/src/transformProps.ts | 43 +-
.../plugins/plugin-chart-table/src/types.ts | 2 +
.../plugin-chart-table/src/utils/formatValue.ts | 11 +-
.../plugin-chart-table/src/utils/isEqualColumns.ts | 3 +
.../plugin-chart-table/test/TableChart.test.tsx | 55 +
.../plugins/plugin-chart-table/test/testData.ts | 76 +
.../test/utils/formatValue.test.ts | 155 +
.../SqlLab/components/AceEditorWrapper/index.tsx | 26 +-
.../src/SqlLab/components/AppLayout/index.tsx | 22 +-
.../EstimateQueryCostButton.test.tsx | 28 +-
.../components/EstimateQueryCostButton/index.tsx | 9 +-
.../ExploreResultsButton.test.tsx | 8 +-
.../components/ExploreResultsButton/index.tsx | 12 +-
.../src/SqlLab/components/QueryHistory/index.tsx | 3 +
.../QueryLimitSelect/QueryLimitSelect.test.tsx | 3 +-
.../SqlLab/components/QueryLimitSelect/index.tsx | 28 +-
.../src/SqlLab/components/ResultSet/index.tsx | 362 +-
.../RunQueryActionButton.test.tsx | 1 -
.../components/RunQueryActionButton/index.tsx | 38 +-
.../SaveDatasetActionButton.test.tsx | 39 +-
.../components/SaveDatasetActionButton/index.tsx | 47 +-
.../SqlLab/components/SaveQuery/SaveQuery.test.tsx | 23 +-
.../src/SqlLab/components/SaveQuery/index.tsx | 23 +-
.../SqlLab/components/ShareSqlLabQuery/index.tsx | 10 +-
.../src/SqlLab/components/SouthPane/Results.tsx | 2 +-
.../src/SqlLab/components/SouthPane/index.tsx | 35 +-
.../SqlLab/components/SqlEditor/SqlEditor.test.tsx | 6 +-
.../src/SqlLab/components/SqlEditor/index.tsx | 249 +-
.../SqlLab/components/SqlEditorLeftBar/index.tsx | 90 +-
.../SqlEditorTopBar/SqlEditorTopBar.test.tsx | 106 +
.../SqlLab/components/SqlEditorTopBar/index.tsx | 51 +
.../SqlEditorTopBar/useDatabaseSelector.test.ts | 320 ++
.../SqlEditorTopBar/useDatabaseSelector.ts | 126 +
.../components/StatusBar/StatusBar.test.tsx} | 40 +-
.../src/SqlLab/components/StatusBar/index.tsx | 57 +
.../SqlLab/components/TabbedSqlEditors/index.tsx | 40 +-
superset-frontend/src/SqlLab/constants.ts | 3 +-
superset-frontend/src/SqlLab/contributions.ts | 6 +-
...ckglLayerVisibilityCustomizationPlugin.test.tsx | 484 ++
.../DeckglLayerVisibilityCustomizationPlugin.tsx | 204 +
.../DeckglLayerVisibility/buildQuery.test.ts} | 37 +-
.../DeckglLayerVisibility/buildQuery.ts} | 18 +-
.../DeckglLayerVisibility/controlPanel.ts} | 11 +-
.../components/DeckglLayerVisibility/index.ts} | 56 +-
.../DeckglLayerVisibility/transformProps.test.ts | 100 +
.../DeckglLayerVisibility/transformProps.ts} | 16 +-
.../components/DeckglLayerVisibility}/types.ts | 39 +-
.../useDeckLayerMetadata.test.ts | 195 +
.../DeckglLayerVisibility/useDeckLayerMetadata.ts | 87 +
.../DynamicGroupBy/DynamicGroupByPlugin.tsx | 140 +
.../components/DynamicGroupBy/buildQuery.ts} | 14 +-
.../components/DynamicGroupBy/controlPanel.ts | 80 +
.../DynamicGroupBy}/images/thumbnail.png | Bin
.../components/DynamicGroupBy/index.ts} | 57 +-
.../components/DynamicGroupBy}/transformProps.ts | 0
.../components/DynamicGroupBy}/types.ts | 74 +-
.../TimeColumn/TimeColumnFilterPlugin.tsx | 0
.../components/TimeColumn/buildQuery.ts | 0
.../components/TimeColumn/controlPanel.ts | 0
.../components/TimeColumn}/images/thumbnail.png | Bin
.../components/TimeColumn/index.ts} | 56 +-
.../components/TimeColumn/transformProps.ts | 0
.../components/TimeColumn/types.ts | 0
.../components/TimeGrain/TimeGrainFilterPlugin.tsx | 159 +
.../components/TimeGrain/buildQuery.ts | 0
.../components/TimeGrain/controlPanel.ts} | 41 +-
.../components/TimeGrain}/images/thumbnail.png | Bin
.../components/TimeGrain/index.ts} | 56 +-
.../components/TimeGrain/transformProps.ts | 0
.../components/TimeGrain/types.ts | 0
.../components/common.ts | 0
.../components/index.ts} | 9 +-
.../chartCustomizations/components}/types.ts | 30 +-
.../Datasource/DatasourceModal/index.tsx | 1 +
.../DatasourceEditor/DatasourceEditor.jsx | 184 +-
.../tests/DatasourceEditor.test.tsx | 65 +-
.../tests/DatasourceEditorCurrency.test.tsx | 67 +
.../src/components/ListView/ListView.tsx | 43 +-
.../src/components/PanelToolbar/index.tsx | 165 +
.../TableSelector/TableSelector.test.tsx | 41 +
.../src/components/TableSelector/index.tsx | 28 +-
.../ViewListExtension/ViewListExtension.test.tsx | 198 +
.../ViewListExtension/index.tsx} | 38 +-
superset-frontend/src/constants.ts | 7 +
.../dashboard/actions/chartCustomizationActions.ts | 378 +-
superset-frontend/src/dashboard/actions/hydrate.js | 10 +-
.../src/dashboard/actions/nativeFilters.ts | 30 +-
.../index.tsx | 206 +-
.../DashboardBuilder/DashboardContainer.test.tsx | 211 +-
.../DashboardBuilder/DashboardContainer.tsx | 152 +-
.../dashboard/components/DashboardBuilder/state.ts | 27 +-
.../dashboard/components/FiltersBadge/index.tsx | 53 +-
.../src/dashboard/components/Header/index.jsx | 2 +
.../src/dashboard/components/Header/types.ts | 2 +
.../Header/useHeaderActionsDropdownMenu.tsx | 2 +
.../src/dashboard/components/SliceHeader/index.tsx | 4 +-
.../components/SyncDashboardState/index.tsx | 5 +-
.../components/gridComponents/Chart/Chart.jsx | 6 +-
.../components/gridComponents/Tab/Tab.jsx | 86 +-
.../components/gridComponents/Tab/Tab.test.tsx | 69 +-
.../DownloadMenuItems/DownloadMenuItems.test.tsx | 8 +-
.../components/menu/DownloadMenuItems/index.tsx | 101 +-
.../ChartCustomization/ChartCustomizationForm.tsx | 1457 -----
.../ChartCustomization/ChartCustomizationModal.tsx | 700 ---
.../ChartCustomizationTitleContainer.tsx | 184 -
.../ChartCustomizationTitlePane.tsx | 124 -
.../ChartCustomization/groupBySelectors.ts | 262 -
.../nativeFilters/ChartCustomization/selectors.ts | 47 -
.../useChartCustomizationModal.tsx | 52 -
.../nativeFilters/ChartCustomization/utils.ts | 63 -
.../nativeFilters/ConfigModal/SharedStyles.tsx | 1 -
.../FilterBar/ActionButtons/index.tsx | 15 +-
.../CustomizationsOutOfScopeCollapsible/index.tsx | 67 +
.../nativeFilters/FilterBar/FilterBar.test.tsx | 160 +-
.../FilterBar/FilterBarSettings/index.tsx | 29 +-
.../useFilterConfigModal.tsx | 33 +-
.../FilterBar/FilterControls/FilterControl.tsx | 280 +-
.../{FilterControl.tsx => FilterControlShared.tsx} | 244 +-
.../FilterControls/FilterControls.test.tsx | 411 ++
.../FilterBar/FilterControls/FilterControls.tsx | 225 +-
.../FilterBar/FilterControls/FilterValue.tsx | 72 +-
.../FilterControls}/GroupByFilterCard.tsx | 403 +-
.../FilterBar/FilterControls/types.ts | 19 +-
.../nativeFilters/FilterBar/Horizontal.tsx | 15 +-
.../FilterBar/HorizontalFilterBar.test.tsx | 2 +
.../nativeFilters/FilterBar/Vertical.tsx | 23 +-
.../components/nativeFilters/FilterBar/index.tsx | 275 +-
.../components/nativeFilters/FilterBar/state.ts | 67 +-
.../components/nativeFilters/FilterBar/types.ts | 7 +
.../FilterBar/useFilterControlFactory.tsx | 5 +-
.../components/nativeFilters/FilterBar/utils.ts | 10 +-
.../nativeFilters/FilterCard/FilterCard.test.tsx | 8 +-
.../nativeFilters/FilterCard/FilterCardContent.tsx | 4 +-
.../nativeFilters/FilterCard/NameRow.tsx | 25 +-
.../nativeFilters/FilterCard/TypeRow.tsx | 8 +-
.../components/nativeFilters/FilterCard/types.ts | 5 +-
.../FilterCard/useFilterDependencies.ts | 5 +-
.../nativeFilters/FilterCard/useFilterScope.ts | 4 +-
.../ConfigModalContent/ConfigModalContent.tsx | 164 +
.../CustomizationContentRenderer.tsx | 133 +
.../ConfigModalContent/FilterContentRenderer.tsx | 136 +
.../ConfigModalContent/index.ts} | 10 +-
.../ConfigModalSidebar/ConfigModalSidebar.tsx | 192 +
.../ConfigModalSidebar/ItemSection.tsx | 77 +
.../ConfigModalSidebar/index.ts} | 8 +-
.../FiltersConfigModal/DividerConfigForm.tsx | 64 +-
.../FiltersConfigModal/DraggableFilter.test.tsx | 230 +
.../FiltersConfigModal/DraggableFilter.tsx | 74 +-
.../FiltersConfigForm/DatasetSelect.tsx | 4 +-
.../FiltersConfigForm/DefaultValue.tsx | 20 +-
.../FiltersConfigForm/FiltersConfigForm.tsx | 371 +-
.../FiltersConfigForm/constants.ts | 11 +
.../FiltersConfigForm/getControlItemsMap.tsx | 14 +-
.../FiltersConfigModal/FiltersConfigForm/state.ts | 16 +-
.../FiltersConfigModal/FiltersConfigModal.test.tsx | 151 +-
.../FiltersConfigModal/FiltersConfigModal.tsx | 956 ++--
.../FiltersConfigModal/ItemTitleContainer.tsx | 194 +
.../FiltersConfigModal/ItemTitlePane.tsx | 93 +
.../FiltersConfigModal/NativeFiltersModal.test.tsx | 9 +-
.../FiltersConfigModal/NewItemDropdown.tsx | 93 +
.../FiltersConfigModal/hooks/index.ts} | 30 +-
.../hooks/useCustomizationOperations.ts | 127 +
.../hooks/useFilterOperations.ts | 248 +
.../hooks/useItemStateManager.ts | 154 +
.../FiltersConfigModal/hooks/useModalSaveLogic.ts | 430 ++
.../nativeFilters/FiltersConfigModal/state.ts | 16 +-
.../transformers/customizationTransformer.ts | 163 +
.../transformers/filterTransformer.ts | 172 +
.../FiltersConfigModal/transformers/index.ts} | 6 +-
.../nativeFilters/FiltersConfigModal/types.ts | 80 +-
.../nativeFilters/FiltersConfigModal/utils.test.ts | 139 +
.../nativeFilters/FiltersConfigModal/utils.ts | 160 +-
.../components/nativeFilters/state.test.ts | 211 +
.../dashboard/components/nativeFilters/state.ts | 206 +-
.../dashboard/components/nativeFilters/utils.ts | 31 +-
superset-frontend/src/dashboard/constants.ts | 3 +
.../src/dashboard/containers/DashboardPage.tsx | 19 +-
.../src/dashboard/reducers/dashboardInfo.js | 101 +-
.../dashboard/reducers/groupByCustomizations.ts | 198 -
.../src/dashboard/reducers/nativeFilters.test.ts | 257 +-
.../src/dashboard/reducers/nativeFilters.ts | 66 +-
superset-frontend/src/dashboard/types.ts | 20 +-
.../dashboard/util/activeAllDashboardFilters.ts | 5 +-
.../src/dashboard/util/calculateScopes.ts | 75 +
.../util/charts/getFormDataWithExtraFilters.ts | 119 +-
.../util/getChartIdsInFilterScope.test.ts | 370 ++
.../util/getFormDataWithExtraFilters.test.ts | 114 +
.../src/dashboard/util/getRelatedCharts.ts | 13 +-
.../util/useFilterFocusHighlightStyles.test.tsx | 4 +
.../util/useFilterFocusHighlightStyles.ts | 10 +-
superset-frontend/src/dataMask/actions.ts | 3 +
superset-frontend/src/dataMask/reducer.ts | 160 +-
.../components/ControlPanelsContainer.test.tsx | 210 +
.../explore/components/ControlPanelsContainer.tsx | 29 +-
.../ExploreChartHeader/ExploreChartHeader.test.tsx | 28 +
.../components/ExploreChartHeader/index.jsx | 6 +-
.../components/ExploreViewContainer/index.jsx | 19 +-
.../src/explore/components/SaveModal.test.jsx | 383 ++
.../src/explore/components/SaveModal.tsx | 287 +-
.../ColumnConfigControl/ColumnConfigControl.tsx | 2 +
.../controls/ColumnConfigControl/constants.tsx | 2 +-
.../CurrencyControl/CurrencyControl.test.tsx} | 34 +-
.../controls/CurrencyControl/CurrencyControl.tsx | 80 +-
.../tests/DateFilterLabel.test.tsx | 43 +
.../controls/MatrixifyDimensionControl.test.tsx | 119 +
.../controls/MatrixifyDimensionControl.tsx | 36 +-
.../controls/NumberControl/NumberControl.test.tsx | 50 +-
.../components/controls/NumberControl/index.tsx | 14 +-
.../controls/SelectAsyncControl/index.tsx | 18 +-
.../components/controls/ViewportControl.test.tsx | 2 +-
.../components/controls/ViewportControl.tsx | 6 +-
superset-frontend/src/explore/types.ts | 19 +
.../src/features/alerts/AlertReportModal.test.tsx | 3 +-
.../src/features/alerts/AlertReportModal.tsx | 50 +-
.../AddDataset/DatasetPanel/DatasetPanel.tsx | 25 +-
.../AddDataset/DatasetPanel/MessageContent.tsx | 3 +-
.../datasets/AddDataset/LeftPanel/index.tsx | 3 +-
superset-frontend/src/features/datasets/types.ts | 1 +
.../components/Select/SelectFilterPlugin.test.tsx | 457 +-
.../components/Select/SelectFilterPlugin.tsx | 2 +-
superset-frontend/src/hooks/apiResources/tables.ts | 9 +-
.../src/pages/ChartList/ChartList.test.tsx | 35 +-
.../src/pages/ChartList/ChartList.testHelpers.tsx | 13 +
superset-frontend/src/pages/ChartList/index.tsx | 23 +-
.../src/pages/SqlLab/LocationContext.tsx | 3 +-
superset-frontend/src/views/store.ts | 2 -
.../src/visualizations/presets/MainPreset.js | 20 +-
superset-websocket/.nvmrc | 2 +-
superset-websocket/Dockerfile | 4 +-
superset-websocket/README.md | 2 +-
superset-websocket/package-lock.json | 331 +-
superset-websocket/package.json | 16 +-
superset/charts/schemas.py | 16 +
superset/cli/examples.py | 89 +-
superset/cli/export_example.py | 234 +
.../{examples/big_data.py => cli/test_loaders.py} | 12 +
superset/commands/dashboard/exceptions.py | 4 +
superset/commands/dashboard/export_example.py | 672 +++
superset/commands/dashboard/update.py | 18 +
superset/commands/database/importers/v1/utils.py | 12 +-
superset/commands/database/test_connection.py | 18 +-
superset/commands/database/uploaders/base.py | 6 +
superset/commands/importers/v1/examples.py | 93 +-
superset/commands/importers/v1/utils.py | 43 +
superset/commands/logs/prune.py | 6 +-
superset/common/query_actions.py | 65 +
superset/common/query_context_factory.py | 34 +
superset/config.py | 374 +-
superset/connectors/sqla/models.py | 6 +-
superset/daos/dashboard.py | 64 +
superset/dashboards/api.py | 183 +
superset/dashboards/schemas.py | 7 +
superset/dataframe.py | 7 +-
superset/datasets/api.py | 2 +
superset/datasets/schemas.py | 6 +
superset/db_engine_specs/METADATA_STATUS.md | 153 +
superset/db_engine_specs/README.md | 154 +
superset/db_engine_specs/arc.py | 80 +
superset/db_engine_specs/ascend.py | 19 +
superset/db_engine_specs/athena.py | 60 +-
superset/db_engine_specs/aurora.py | 12 +
superset/db_engine_specs/base.py | 174 +-
superset/db_engine_specs/bigquery.py | 53 +-
superset/db_engine_specs/clickhouse.py | 118 +-
superset/db_engine_specs/cockroachdb.py | 17 +
superset/db_engine_specs/couchbase.py | 30 +
superset/db_engine_specs/crate.py | 26 +-
superset/db_engine_specs/d1.py | 51 +
superset/db_engine_specs/databend.py | 39 +-
superset/db_engine_specs/databricks.py | 96 +-
superset/db_engine_specs/db2.py | 57 +-
superset/db_engine_specs/denodo.py | 36 +-
superset/db_engine_specs/doris.py | 27 +
superset/db_engine_specs/dremio.py | 36 +-
superset/db_engine_specs/drill.py | 57 +-
superset/db_engine_specs/druid.py | 74 +-
superset/db_engine_specs/duckdb.py | 84 +-
superset/db_engine_specs/dynamodb.py | 27 +-
superset/db_engine_specs/elasticsearch.py | 91 +-
superset/db_engine_specs/exasol.py | 47 +-
superset/db_engine_specs/firebird.py | 22 +-
superset/db_engine_specs/firebolt.py | 39 +-
superset/db_engine_specs/greenplum.py | 55 +
superset/db_engine_specs/gsheets.py | 17 +
superset/db_engine_specs/hana.py | 18 +
superset/db_engine_specs/hive.py | 18 +-
superset/db_engine_specs/hologres.py | 60 +
superset/db_engine_specs/ibmi.py | 6 +
superset/db_engine_specs/impala.py | 19 +-
superset/db_engine_specs/kusto.py | 66 +-
superset/db_engine_specs/kylin.py | 19 +-
superset/db_engine_specs/lib.py | 167 +-
superset/db_engine_specs/lint_metadata.py | 705 +++
superset/db_engine_specs/mariadb.py | 15 +
superset/db_engine_specs/monetdb.py | 75 +
superset/db_engine_specs/mssql.py | 56 +-
superset/db_engine_specs/mysql.py | 104 +-
superset/db_engine_specs/netezza.py | 14 +
superset/db_engine_specs/oceanbase.py | 13 +
superset/db_engine_specs/ocient.py | 13 +-
superset/db_engine_specs/oracle.py | 17 +-
superset/db_engine_specs/parseable.py | 27 +-
superset/db_engine_specs/pinot.py | 36 +-
superset/db_engine_specs/postgres.py | 143 +-
superset/db_engine_specs/presto.py | 26 +-
superset/db_engine_specs/redshift.py | 100 +-
superset/db_engine_specs/risingwave.py | 17 +
superset/db_engine_specs/shillelagh.py | 17 +
superset/db_engine_specs/singlestore.py | 36 +
superset/db_engine_specs/snowflake.py | 58 +-
superset/db_engine_specs/solr.py | 19 +-
superset/db_engine_specs/spark.py | 15 +
superset/db_engine_specs/sqlite.py | 15 +-
superset/db_engine_specs/starrocks.py | 240 +-
superset/db_engine_specs/superset.py | 17 +
superset/db_engine_specs/sybase.py | 54 +
superset/db_engine_specs/tdengine.py | 19 +-
superset/db_engine_specs/teradata.py | 31 +-
superset/db_engine_specs/timescaledb.py | 62 +
superset/db_engine_specs/trino.py | 83 +-
superset/db_engine_specs/vertica.py | 23 +
superset/db_engine_specs/ydb.py | 47 +-
superset/db_engine_specs/yugabytedb.py | 53 +
.../metadata.yaml => _shared/database.yaml} | 7 +-
.../examples/{configs => _shared}/metadata.yaml | 0
superset/examples/bart_lines.py | 71 -
.../Vaccine_Candidates_per_Approach__Stage.yaml | 50 -
.../Vaccine_Candidates_per_Country.yaml | 39 -
.../Vaccine_Candidates_per_Country_261.yaml | 59 -
.../Vaccine_Candidates_per_Country__Stage.yaml | 40 -
.../Vaccine_Candidates_per_Country__Stage_749.yaml | 46 -
.../Vaccine_Candidates_per_Phase.yaml | 46 -
.../Vaccine_Candidates_per_Phase_587.yaml | 39 -
.../configs/charts/Featured Charts/Radar.yaml | 100 -
.../configs/charts/Vehicle Sales/Items_Sold.yaml | 73 -
.../Vehicle Sales/Items_by_Product_Line.yaml | 80 -
.../Overall_Sales_By_Product_Line.yaml | 76 -
.../Proportion_of_Revenue_by_Product_Line.yaml | 99 -
.../charts/Vehicle Sales/Quarterly_Sales.yaml | 101 -
.../Quarterly_Sales_By_Product_Line_113.yaml | 103 -
.../charts/Vehicle Sales/Total_Revenue.yaml | 79 -
.../Games_per_Genre_over_time.yaml | 118 -
.../Rise__Fall_of_Video_Game_Consoles.yaml | 133 -
...op_10_Games_Proportion_of_Sales_in_Markets.yaml | 132 -
.../Total_Sales_per_Market_Grouped_by_Genre.yaml | 182 -
.../dashboards/COVID_Vaccine_Dashboard.yaml | 399 --
.../configs/dashboards/Unicode_Test.test.yaml | 52 -
.../configs/datasets/examples/FCC_2018_Survey.yaml | 1493 -----
.../datasets/examples/hierarchical_dataset.yaml | 116 -
.../datasets/examples/project_management.yaml | 293 -
.../examples/configs/datasets/examples/users.yaml | 223 -
.../examples/users_channels-uzooNNtSRO.yaml | 77 -
.../configs/datasets/examples/users_channels.yaml | 63 -
.../datasets/examples/video_game_sales.yaml | 156 -
superset/examples/country_map.py | 123 -
superset/examples/data_loading.py | 193 +-
superset/examples/deck.py | 547 --
.../charts/Deck.gl_Arcs.yaml} | 74 +-
.../charts/Deck.gl_Grid.yaml} | 74 +-
.../charts/Deck.gl_Hexagons.yaml} | 73 +-
.../charts/Deck.gl_Path.yaml} | 74 +-
.../deckgl_demo/charts/Deck.gl_Polygons.yaml | 104 +
.../charts/Deck.gl_Scatterplot.yaml} | 70 +-
.../charts/Deck.gl_Screen_grid.yaml} | 72 +-
superset/examples/deckgl_demo/dashboard.yaml | 160 +
.../examples/deckgl_demo/data/bart_lines.parquet | Bin 0 -> 9596 bytes
superset/examples/deckgl_demo/data/flights.parquet | Bin 0 -> 2059330 bytes
.../examples/deckgl_demo/data/long_lat.parquet | Bin 0 -> 11861181 bytes
.../data/sf_population_polygons.parquet | Bin 0 -> 91894 bytes
.../datasets/bart_lines.yaml} | 123 +-
.../datasets/flights.yaml} | 755 +--
.../datasets/long_lat.yaml} | 303 +-
.../datasets/sf_population_polygons.yaml} | 123 +-
superset/examples/energy.py | 147 -
.../charts}/Age_distribution_of_respondents.yaml | 17 +-
.../Are_you_an_ethnic_minority_in_your_city.yaml | 15 +-
.../charts}/Breakdown_of_Developer_Type.yaml | 13 +-
.../charts}/Commute_Time.yaml | 51 +-
.../charts}/Country_of_Citizenship.yaml | 13 +-
...elopers_Is_this_your_first_development_job.yaml | 13 +-
.../charts}/Degrees_vs_Income.yaml | 15 +-
.../charts/Ethnic_Minority_Gender.yaml} | 53 +-
.../charts}/First_Time_Developer.yaml | 15 +-
.../charts/First_Time_Developer_Commute_Time.yaml} | 71 +-
.../charts}/Gender.yaml | 15 +-
.../charts}/Highest_degree_held.yaml | 13 +-
.../charts}/How_do_you_prefer_to_work.yaml | 77 +-
.../How_much_do_you_expect_to_earn_0_-_100k.yaml | 53 +-
.../charts}/Last_Year_Income_Distribution.yaml | 53 +-
.../charts}/Location_of_Current_Developers.yaml | 13 +-
.../charts}/Number_of_Aspiring_Developers.yaml | 13 +-
.../charts}/Preferred_Employment_Style.yaml | 51 +-
.../charts}/Relocation_ability.yaml | 15 +-
.../charts}/Top_15_Languages_Spoken_at_Home.yaml | 13 +-
.../charts}/Work_Location_Preference.yaml | 15 +-
.../dashboard.yaml} | 624 +--
.../examples/fcc_new_coder_survey/data.parquet | Bin 0 -> 2829468 bytes
.../examples/fcc_new_coder_survey/dataset.yaml | 1760 ++++++
.../charts}/Area.yaml | 137 +-
.../charts}/Bar.yaml | 87 +-
.../charts}/Big_Number.yaml | 38 +-
.../charts}/Big_Number_with_Trendline.yaml | 54 +-
.../charts}/Box_Plot.yaml | 56 +-
.../charts}/Bubble.yaml | 82 +-
.../charts}/Funnel.yaml | 52 +-
.../charts}/Gantt.yaml | 63 +-
.../charts}/Gauge.yaml | 56 +-
.../charts}/Graph.yaml | 60 +-
.../charts}/Heatmap.yaml | 64 +-
.../charts}/Histogram.yaml | 46 +-
.../charts}/Line.yaml | 91 +-
.../charts}/Mixed.yaml | 153 +-
.../charts}/Pie.yaml | 64 +-
.../charts}/Pivot_Table.yaml | 104 +-
.../charts/Radar.yaml} | 105 +-
.../charts}/Sankey.yaml | 38 +-
.../charts}/Scatter_Plot.yaml | 87 +-
.../charts}/Sunburst.yaml | 48 +-
.../charts}/Table.yaml | 64 +-
.../charts}/Tree.yaml | 36 +-
.../charts/TreeMap.yaml} | 43 +-
.../charts}/Waterfall.yaml | 70 +-
.../charts}/Word_Cloud.yaml | 40 +-
.../dashboard.yaml} | 353 +-
.../data/cleaned_sales_data.parquet | Bin 0 -> 91814 bytes
.../data/hierarchical_dataset.parquet | Bin 0 -> 3298 bytes
.../data/project_management.parquet | Bin 0 -> 6348 bytes
.../datasets/cleaned_sales_data.yaml} | 507 +-
.../datasets/hierarchical_dataset.yaml} | 125 +-
.../datasets/project_management.yaml} | 155 +-
superset/examples/flights.py | 76 -
superset/examples/generic_loader.py | 244 +
superset/examples/helpers.py | 157 +-
superset/examples/international_sales/data.parquet | Bin 0 -> 9582 bytes
.../dataset.yaml} | 308 +-
superset/examples/long_lat.py | 127 -
.../Birth_in_France_by_department_in_2016.yaml} | 47 +-
.../charts/Parallel_Coordinates.yaml} | 55 +-
.../charts/Unicode_Cloud.yaml} | 49 +-
superset/examples/misc_charts/dashboard.yaml | 161 +
.../data/birth_france_by_region.parquet | Bin 0 -> 16028 bytes
.../examples/misc_charts/data/unicode_test.parquet | Bin 0 -> 9546 bytes
.../misc_charts/data/wb_health_population.parquet | Bin 0 -> 15010872 bytes
.../datasets/birth_france_by_region.yaml} | 284 +-
.../datasets/unicode_test.yaml} | 131 +-
.../misc_charts/datasets/wb_health_population.yaml | 4319 +++++++++++++++
superset/examples/misc_dashboard.py | 145 -
superset/examples/multiformat_time_series.py | 135 -
superset/examples/paris.py | 67 -
superset/examples/random_time_series.py | 102 -
.../charts/Items_Sold.yaml} | 44 +-
.../Number_of_Deals_for_each_Combination.yaml | 22 +-
.../charts/Overall_Sales_By_Product_Line.yaml} | 42 +-
.../Proportion_of_Revenue_by_Product_Line.yaml} | 114 +-
.../charts/Quarterly_Sales.yaml} | 114 +-
.../charts}/Quarterly_Sales_By_Product_Line.yaml | 78 +-
.../charts}/Revenue_by_Deal_Size.yaml | 12 +-
.../Seasonality_of_Revenue_per_Product_Line.yaml | 14 +-
.../charts}/Total_Items_Sold_By_Product_Line.yaml | 13 +-
.../charts/Total_Revenue.yaml} | 66 +-
.../dashboard.yaml} | 990 ++--
superset/examples/sales_dashboard/data.parquet | Bin 0 -> 91814 bytes
.../dataset.yaml} | 453 +-
superset/examples/sf_population_polygons.py | 71 -
.../charts}/Cross_Channel_Relationship.yaml | 13 +-
.../Cross_Channel_Relationship_heatmap_v2.yaml} | 23 +-
.../charts}/Members_per_Channel.yaml | 15 +-
.../charts}/Messages_per_Channel.yaml | 102 +-
.../charts}/New_Members_per_Month.yaml | 13 +-
.../charts}/Number_of_Members.yaml | 13 +-
.../charts}/Top_Timezones.yaml | 13 +-
.../charts}/Weekly_Messages.yaml | 13 +-
.../charts}/Weekly_Threads.yaml | 13 +-
.../dashboard.yaml} | 230 +-
.../data/members_channels_2.parquet | Bin 0 -> 29617 bytes
.../examples/slack_dashboard/data/messages.parquet | Bin 0 -> 450917 bytes
.../slack_dashboard/data/messages_channels.parquet | Bin 0 -> 271949 bytes
.../slack_dashboard/data/new_members_daily.parquet | Bin 0 -> 12439 bytes
.../examples/slack_dashboard/data/threads.parquet | Bin 0 -> 30110 bytes
.../examples/slack_dashboard/data/users.parquet | Bin 0 -> 120265 bytes
.../data/users_channels-uzooNNtSRO.parquet | Bin 0 -> 5722 bytes
.../datasets}/members_channels_2.yaml | 83 +-
.../datasets}/messages.yaml | 755 +--
.../datasets}/messages_channels.yaml | 99 +-
.../datasets}/new_members_daily.yaml | 83 +-
.../datasets}/threads.yaml | 275 +-
.../datasets/users.yaml} | 371 +-
.../datasets/users_channels-uzooNNtSRO.yaml} | 95 +-
superset/examples/supported_charts_dashboard.py | 1251 -----
superset/examples/tabbed_dashboard.py | 561 --
.../charts/Boy_Name_Cloud.yaml} | 37 +-
.../charts/Boys.yaml} | 48 +-
.../charts/Genders.yaml} | 43 +-
.../charts/Genders_by_State.yaml} | 66 +-
.../charts/Girl_Name_Cloud.yaml} | 37 +-
.../charts/Girls.yaml} | 48 +-
.../charts/Participants.yaml} | 37 +-
.../charts/Pivot_Table_v2.yaml} | 47 +-
.../charts/Top_10_Boy_Name_Share.yaml} | 67 +-
.../charts/Top_10_Girl_Name_Share.yaml} | 67 +-
.../charts/Trends.yaml} | 51 +-
superset/examples/usa_births_names/dashboard.yaml | 265 +
superset/examples/usa_births_names/data.parquet | Bin 0 -> 441750 bytes
.../threads.yaml => usa_births_names/dataset.yaml} | 236 +-
superset/examples/utils.py | 218 +-
.../charts}/Games.yaml | 13 +-
.../charts}/Games_per_Genre.yaml | 122 +-
.../charts}/Most_Dominant_Platforms.yaml | 15 +-
.../charts}/Popular_Genres_Across_Platforms.yaml | 23 +-
.../charts}/Publishers_With_Most_Titles.yaml | 13 +-
...op_10_Games_Proportion_of_Sales_in_Markets.yaml | 137 +
.../Total_Sales_per_Market_Grouped_by_Genre.yaml | 186 +
...es_That_Hit_100k_in_Sales_By_Release_Year.yaml} | 109 +-
.../dashboard.yaml} | 352 +-
superset/examples/video_game_sales/data.parquet | Bin 0 -> 484723 bytes
.../threads.yaml => video_game_sales/dataset.yaml} | 253 +-
.../charts/Box_plot.yaml} | 52 +-
.../charts/Growth_Rate.yaml} | 51 +-
.../charts/Life_Expectancy_VS_Rural.yaml} | 73 +-
.../charts/Most_Populated_Countries.yaml} | 50 +-
.../charts/Rural.yaml} | 48 +-
.../charts/Rural_Breakdown.yaml} | 62 +-
.../charts}/Treemap.yaml | 50 +-
.../charts/World_s_Pop_Growth.yaml} | 47 +-
.../charts/World_s_Population.yaml} | 47 +-
superset/examples/world_health/dashboard.yaml | 205 +
superset/examples/world_health/data.parquet | Bin 0 -> 15010872 bytes
superset/examples/world_health/dataset.yaml | 4319 +++++++++++++++
superset/extensions/discovery.py | 22 +-
superset/extensions/local_extensions_watcher.py | 12 +
superset/extensions/types.py | 3 +
superset/extensions/utils.py | 55 +-
superset/initialization/__init__.py | 5 +-
superset/mcp_service/auth.py | 115 +-
superset/mcp_service/chart/chart_utils.py | 24 +-
superset/mcp_service/chart/schemas.py | 32 +-
superset/mcp_service/chart/tool/generate_chart.py | 25 +-
superset/mcp_service/chart/tool/get_chart_data.py | 21 +-
.../mcp_service/chart/tool/get_chart_preview.py | 60 +-
superset/mcp_service/chart/tool/list_charts.py | 25 +-
superset/mcp_service/chart/tool/update_chart.py | 7 +-
.../mcp_service/chart/tool/update_chart_preview.py | 30 +-
.../chart/validation/runtime/__init__.py | 22 +-
.../mcp_service/dashboard/tool/list_dashboards.py | 25 +-
superset/mcp_service/dataset/tool/list_datasets.py | 25 +-
superset/mcp_service/flask_singleton.py | 105 +-
superset/mcp_service/mcp_config.py | 12 +-
superset/mcp_service/server.py | 99 +-
superset/mcp_service/storage.py | 71 +-
superset/mcp_service/utils/url_utils.py | 28 -
...00_9787190b3d89_add_currency_column_support.py} | 39 +-
superset/models/core.py | 25 +-
superset/models/helpers.py | 10 +
superset/security/manager.py | 3 +-
superset/sql/parse.py | 21 +-
superset/superset_typing.py | 2 +
superset/templates/superset/spa.html | 9 +-
superset/utils/currency.py | 160 +
superset/utils/date_parser.py | 109 +-
superset/utils/oauth2.py | 5 +-
superset/views/base.py | 40 +-
superset/views/core.py | 21 +-
superset/viz.py | 1 +
tests/integration_tests/charts/data/api_tests.py | 26 +-
tests/integration_tests/dashboards/api_tests.py | 404 ++
tests/integration_tests/datasets/commands_tests.py | 3 +
.../datasource/test_validate_expression_api.py | 8 +
tests/integration_tests/fixtures/importexport.py | 1 +
tests/integration_tests/query_context_tests.py | 6 +
tests/integration_tests/sqllab_tests.py | 66 +
tests/integration_tests/tagging_tests.py | 6 +-
.../commands/dashboard/export_example_test.py | 323 ++
.../commands/importers/v1/examples_test.py | 244 +
.../common/test_query_actions_currency.py | 290 +
.../common/test_query_context_factory.py | 106 +
tests/unit_tests/common/test_time_shifts.py | 33 +
tests/unit_tests/connectors/sqla/models_test.py | 64 +
.../dashboards/test_chart_customizations_dao.py | 339 ++
tests/unit_tests/dataframe_test.py | 196 +-
tests/unit_tests/datasets/commands/export_test.py | 1 +
tests/unit_tests/datasets/schema_tests.py | 29 +
tests/unit_tests/db_engine_specs/test_redshift.py | 30 +
tests/unit_tests/db_engine_specs/test_starrocks.py | 116 +-
.../mcp_service/chart/test_chart_schemas.py | 53 +
.../mcp_service/chart/test_chart_utils.py | 128 +
.../mcp_service/chart/tool/test_get_chart_data.py | 130 +-
.../mcp_service/chart/validation}/__init__.py | 0
.../chart/validation/test_runtime_validator.py | 221 +
tests/unit_tests/mcp_service/test_mcp_server.py | 126 +
tests/unit_tests/mcp_service/test_mcp_storage.py | 194 +-
tests/unit_tests/models/core_test.py | 196 +
tests/unit_tests/sql/transpile_to_dialect_test.py | 51 +
tests/unit_tests/utils/currency_test.py | 332 ++
tests/unit_tests/utils/date_parser_tests.py | 64 +
tests/unit_tests/views/test_base_theme_helpers.py | 302 ++
849 files changed, 62458 insertions(+), 27668 deletions(-)
create mode 100644 .claude/settings.json
delete mode 100644 LINTING_ARCHITECTURE.md
delete mode 100644 RESOURCES/FEATURE_FLAGS.md
delete mode 100644 docs/docs/configuration/databases.mdx
create mode 100644 docs/docs/configuration/feature-flags.mdx
create mode 100644 docs/scripts/extract_custom_errors.py
create mode 100644 docs/scripts/generate-database-docs.mjs
create mode 100644 docs/src/components/databases/DatabaseIndex.tsx
create mode 100644 docs/src/components/databases/DatabasePage.tsx
copy superset-frontend/src/SqlLab/contributions.ts =>
docs/src/components/databases/index.ts (84%)
create mode 100644 docs/src/components/databases/types.ts
create mode 100644 docs/src/data/databases.json
create mode 100644 docs/static/feature-flags.json
create mode 100644 docs/static/img/databases/altinity.png
delete mode 100644 docs/static/img/databases/amazon-redshift.jpg
delete mode 100644 docs/static/img/databases/apache-druid.jpeg
create mode 100644 docs/static/img/databases/apache-solr.png
create mode 100644 docs/static/img/databases/apache-solr.svg
create mode 100644 docs/static/img/databases/apache-spark.png
create mode 100644 docs/static/img/databases/ascend.webp
create mode 100644 docs/static/img/databases/aws-aurora.jpg
create mode 100644 docs/static/img/databases/aws.png
create mode 100644 docs/static/img/databases/azure.svg
create mode 100644 docs/static/img/databases/celerdata.png
create mode 100644 docs/static/img/databases/cloudflare.png
create mode 100644 docs/static/img/databases/cockroachdb.png
create mode 100644 docs/static/img/databases/cratedb.png
delete mode 100644 docs/static/img/databases/db2.png
create mode 100644 docs/static/img/databases/duckdb.png
create mode 100644 docs/static/img/databases/elasticsearch.png
delete mode 100644 docs/static/img/databases/google-biquery.png
delete mode 100644 docs/static/img/databases/greenplum.jpeg
delete mode 100644 docs/static/img/databases/ibmdb2.png
create mode 100644 docs/static/img/databases/imply.png
create mode 100644 docs/static/img/databases/kusto.png
delete mode 100644 docs/static/img/databases/monet.png
create mode 100644 docs/static/img/databases/motherduck.png
delete mode 100644 docs/static/img/databases/mssql-server.png
delete mode 100644 docs/static/img/databases/mssql.jpg
delete mode 100644 docs/static/img/databases/mysql.jpg
delete mode 100644 docs/static/img/databases/oracle-logo.png
delete mode 100644 docs/static/img/databases/oracle.png
delete mode 100644 docs/static/img/databases/pinot.png
delete mode 100644 docs/static/img/databases/postgresql.jpg
create mode 100644 docs/static/img/databases/risingwave.png
delete mode 100644 docs/static/img/databases/sap-hana.jpg
create mode 100644 docs/static/img/databases/shillelagh.png
create mode 100644 docs/static/img/databases/singlestore.png
delete mode 100644 docs/static/img/databases/snowflake.png
delete mode 100644 docs/static/img/databases/sqlite.jpg
create mode 100644 docs/static/img/databases/starburst.png
copy docs/static/img/{superset-logo-horiz.svg => databases/superset.svg} (100%)
delete mode 100644 docs/static/img/databases/trino2.jpg
create mode 100644 docs/static/img/logos/club25deagosto.svg
create mode 100644 docs/static/img/logos/userguiding.svg
create mode 100644 scripts/extract_feature_flags.py
delete mode 100644 superset-frontend/LINTING.md
rename superset-frontend/cypress-base/cypress/e2e/chart_list/{filter.test.ts
=> _skip.filter.test.ts} (90%)
rename
superset-frontend/cypress-base/cypress/e2e/dashboard/{horizontalFilterBar.test.ts
=> _skip.horizontalFilterBar.test.ts} (99%)
rename superset-frontend/cypress-base/cypress/e2e/dashboard/{load.test.ts =>
_skip.load.test.ts} (100%)
rename
superset-frontend/cypress-base/cypress/e2e/dashboard/{nativeFilters.noInitState.test.ts
=> _skip.nativeFilters.noInitState.test.ts} (100%)
rename
superset-frontend/cypress-base/cypress/e2e/dashboard/{nativeFilters.test.ts =>
_skip.nativeFilters.test.ts} (93%)
rename superset-frontend/cypress-base/cypress/e2e/dashboard/{tabs.test.ts =>
_skip.tabs.test.ts} (99%)
rename
superset-frontend/cypress-base/cypress/e2e/explore/{AdhocMetrics.test.ts =>
_skip.AdhocMetrics.test.ts} (100%)
rename
superset-frontend/cypress-base/cypress/e2e/explore/{advanced_analytics.test.ts
=> _skip.advanced_analytics.test.ts} (100%)
rename superset-frontend/cypress-base/cypress/e2e/explore/{annotations.test.ts
=> _skip.annotations.test.ts} (97%)
rename superset-frontend/cypress-base/cypress/e2e/explore/{link.test.ts =>
_skip.link.test.ts} (100%)
rename
superset-frontend/cypress-base/cypress/e2e/explore/visualizations/{big_number.test.js
=> _skip.big_number.test.js} (100%)
rename
superset-frontend/cypress-base/cypress/e2e/explore/visualizations/{big_number_total.test.js
=> _skip.big_number_total.test.js} (100%)
rename
superset-frontend/cypress-base/cypress/e2e/explore/visualizations/{box_plot.test.js
=> _skip.box_plot.test.js} (63%)
rename
superset-frontend/cypress-base/cypress/e2e/explore/visualizations/{bubble.test.js
=> _skip.bubble.test.js} (51%)
rename
superset-frontend/cypress-base/cypress/e2e/explore/visualizations/{compare.test.js
=> _skip.compare.test.js} (100%)
rename
superset-frontend/cypress-base/cypress/e2e/explore/visualizations/{download_chart.test.js
=> _skip.download_chart.test.js} (100%)
rename
superset-frontend/cypress-base/cypress/e2e/explore/visualizations/{gauge.test.js
=> _skip.gauge.test.js} (100%)
rename
superset-frontend/cypress-base/cypress/e2e/explore/visualizations/{graph.test.ts
=> _skip.graph.test.ts} (100%)
rename
superset-frontend/cypress-base/cypress/e2e/explore/visualizations/{pie.test.js
=> _skip.pie.test.js} (100%)
rename
superset-frontend/cypress-base/cypress/e2e/explore/visualizations/{pivot_table.test.js
=> _skip.pivot_table.test.js} (100%)
rename
superset-frontend/cypress-base/cypress/e2e/explore/visualizations/{sunburst.test.js
=> _skip.sunburst.test.js} (100%)
rename
superset-frontend/cypress-base/cypress/e2e/explore/visualizations/{table.test.ts
=> _skip.table.test.ts} (100%)
rename
superset-frontend/cypress-base/cypress/e2e/explore/visualizations/{time_table.js
=> _skip.time_table.js} (100%)
rename
superset-frontend/cypress-base/cypress/e2e/explore/visualizations/{world_map.test.js
=> _skip.world_map.test.js} (100%)
create mode 100644
superset-frontend/packages/superset-ui-chart-controls/test/shared-controls/customControls.test.tsx
copy
superset-frontend/{plugins/legacy-plugin-chart-calendar/test/getFormattedUTCTime.ts
=> packages/superset-ui-core/src/components/Pagination/index.tsx} (69%)
create mode 100644
superset-frontend/packages/superset-ui-core/src/components/TimezoneSelector/TimezoneOptionsCache.test.tsx
create mode 100644
superset-frontend/packages/superset-ui-core/src/components/TimezoneSelector/TimezoneOptionsCache.ts
copy superset-frontend/{src/SqlLab/contributions.ts =>
packages/superset-ui-core/src/components/TimezoneSelector/types.ts} (77%)
copy superset-frontend/{src/SqlLab/contributions.ts =>
packages/superset-ui-core/src/currency-format/CurrencyFormats.ts} (88%)
copy superset-frontend/{src/SqlLab/contributions.ts =>
packages/superset-ui-core/src/currency-format/types.ts} (83%)
create mode 100644
superset-frontend/packages/superset-ui-core/test/components/SafeMarkdown.test.tsx
copy
superset-frontend/{plugins/legacy-plugin-chart-calendar/test/getFormattedUTCTime.ts
=>
packages/superset-ui-core/test/currency-format/analyzeCurrencyInData.test.ts}
(56%)
copy
superset-frontend/{plugins/legacy-plugin-chart-calendar/test/getFormattedUTCTime.ts
=> packages/superset-ui-core/test/currency-format/hasMixedCurrencies.test.ts}
(59%)
copy
superset-frontend/{plugins/legacy-plugin-chart-calendar/test/getFormattedUTCTime.ts
=> packages/superset-ui-core/test/currency-format/normalizeCurrency.test.ts}
(57%)
delete mode 100644 superset-frontend/playwright/README.md
create mode 100644 superset-frontend/playwright/pages/DashboardPage.ts
create mode 100644
superset-frontend/playwright/tests/experimental/dashboard/export.spec.ts
create mode 100644
superset-frontend/plugins/legacy-plugin-chart-calendar/test/utils.test.ts
create mode 100644
superset-frontend/plugins/legacy-preset-chart-deckgl/src/Multi/Multi.test.tsx
create mode 100644
superset-frontend/plugins/legacy-preset-chart-deckgl/src/Multi/controlPanel.test.ts
create mode 100644
superset-frontend/plugins/plugin-chart-echarts/test/Timeseries/helpers.ts
create mode 100644
superset-frontend/plugins/plugin-chart-pivot-table/test/react-pivottable/tableRenders.test.tsx
create mode 100644
superset-frontend/plugins/plugin-chart-table/test/utils/formatValue.test.ts
create mode 100644
superset-frontend/src/SqlLab/components/SqlEditorTopBar/SqlEditorTopBar.test.tsx
create mode 100644
superset-frontend/src/SqlLab/components/SqlEditorTopBar/index.tsx
create mode 100644
superset-frontend/src/SqlLab/components/SqlEditorTopBar/useDatabaseSelector.test.ts
create mode 100644
superset-frontend/src/SqlLab/components/SqlEditorTopBar/useDatabaseSelector.ts
rename
superset-frontend/{packages/superset-ui-core/test/components/SafeMarkdown.test.ts
=> src/SqlLab/components/StatusBar/StatusBar.test.tsx} (53%)
create mode 100644 superset-frontend/src/SqlLab/components/StatusBar/index.tsx
create mode 100644
superset-frontend/src/chartCustomizations/components/DeckglLayerVisibility/DeckglLayerVisibilityCustomizationPlugin.test.tsx
create mode 100644
superset-frontend/src/chartCustomizations/components/DeckglLayerVisibility/DeckglLayerVisibilityCustomizationPlugin.tsx
copy
superset-frontend/{packages/superset-ui-core/test/chart/components/FallbackComponent.test.tsx
=>
src/chartCustomizations/components/DeckglLayerVisibility/buildQuery.test.ts}
(50%)
rename
superset-frontend/{plugins/legacy-plugin-chart-calendar/test/getFormattedUTCTime.ts
=> src/chartCustomizations/components/DeckglLayerVisibility/buildQuery.ts}
(64%)
copy superset-frontend/src/{SqlLab/contributions.ts =>
chartCustomizations/components/DeckglLayerVisibility/controlPanel.ts} (83%)
copy superset-frontend/src/{SqlLab/components/ExploreResultsButton/index.tsx
=> chartCustomizations/components/DeckglLayerVisibility/index.ts} (50%)
create mode 100644
superset-frontend/src/chartCustomizations/components/DeckglLayerVisibility/transformProps.test.ts
copy superset-frontend/src/{SqlLab/contributions.ts =>
chartCustomizations/components/DeckglLayerVisibility/transformProps.ts} (72%)
copy superset-frontend/src/{dashboard/components/nativeFilters/FilterCard =>
chartCustomizations/components/DeckglLayerVisibility}/types.ts (56%)
create mode 100644
superset-frontend/src/chartCustomizations/components/DeckglLayerVisibility/useDeckLayerMetadata.test.ts
create mode 100644
superset-frontend/src/chartCustomizations/components/DeckglLayerVisibility/useDeckLayerMetadata.ts
create mode 100644
superset-frontend/src/chartCustomizations/components/DynamicGroupBy/DynamicGroupByPlugin.tsx
copy superset-frontend/src/{SqlLab/contributions.ts =>
chartCustomizations/components/DynamicGroupBy/buildQuery.ts} (74%)
create mode 100644
superset-frontend/src/chartCustomizations/components/DynamicGroupBy/controlPanel.ts
copy
superset-frontend/{packages/generator-superset/generators/plugin-chart/templates/src
=> src/chartCustomizations/components/DynamicGroupBy}/images/thumbnail.png
(100%)
copy superset-frontend/src/{SqlLab/components/ExploreResultsButton/index.tsx
=> chartCustomizations/components/DynamicGroupBy/index.ts} (51%)
copy superset-frontend/src/{filters/components/TimeGrain =>
chartCustomizations/components/DynamicGroupBy}/transformProps.ts (100%)
rename
superset-frontend/src/{dashboard/components/nativeFilters/ChartCustomization =>
chartCustomizations/components/DynamicGroupBy}/types.ts (51%)
copy superset-frontend/src/{filters =>
chartCustomizations}/components/TimeColumn/TimeColumnFilterPlugin.tsx (100%)
copy superset-frontend/src/{filters =>
chartCustomizations}/components/TimeColumn/buildQuery.ts (100%)
copy superset-frontend/src/{filters =>
chartCustomizations}/components/TimeColumn/controlPanel.ts (100%)
copy
superset-frontend/{packages/generator-superset/generators/plugin-chart/templates/src
=> src/chartCustomizations/components/TimeColumn}/images/thumbnail.png (100%)
copy superset-frontend/src/{SqlLab/components/ExploreResultsButton/index.tsx
=> chartCustomizations/components/TimeColumn/index.ts} (52%)
copy superset-frontend/src/{filters =>
chartCustomizations}/components/TimeColumn/transformProps.ts (100%)
copy superset-frontend/src/{filters =>
chartCustomizations}/components/TimeColumn/types.ts (100%)
create mode 100644
superset-frontend/src/chartCustomizations/components/TimeGrain/TimeGrainFilterPlugin.tsx
copy superset-frontend/src/{filters =>
chartCustomizations}/components/TimeGrain/buildQuery.ts (100%)
copy
superset-frontend/src/{dashboard/components/nativeFilters/FilterCard/TypeRow.tsx
=> chartCustomizations/components/TimeGrain/controlPanel.ts} (56%)
copy
superset-frontend/{packages/generator-superset/generators/plugin-chart/templates/src
=> src/chartCustomizations/components/TimeGrain}/images/thumbnail.png (100%)
copy superset-frontend/src/{SqlLab/components/ExploreResultsButton/index.tsx
=> chartCustomizations/components/TimeGrain/index.ts} (52%)
copy superset-frontend/src/{filters =>
chartCustomizations}/components/TimeGrain/transformProps.ts (100%)
copy superset-frontend/src/{filters =>
chartCustomizations}/components/TimeGrain/types.ts (100%)
copy superset-frontend/src/{filters =>
chartCustomizations}/components/common.ts (100%)
copy superset-frontend/src/{SqlLab/contributions.ts =>
chartCustomizations/components/index.ts} (71%)
copy superset-frontend/{packages/superset-ui-core/src/components/EmptyState =>
src/chartCustomizations/components}/types.ts (61%)
create mode 100644 superset-frontend/src/components/PanelToolbar/index.tsx
create mode 100644
superset-frontend/src/components/ViewListExtension/ViewListExtension.test.tsx
copy
superset-frontend/src/{dashboard/components/nativeFilters/FilterCard/TypeRow.tsx
=> components/ViewListExtension/index.tsx} (52%)
rename superset-frontend/src/dashboard/components/{GroupByBadge =>
CustomizationsBadge}/index.tsx (55%)
delete mode 100644
superset-frontend/src/dashboard/components/nativeFilters/ChartCustomization/ChartCustomizationForm.tsx
delete mode 100644
superset-frontend/src/dashboard/components/nativeFilters/ChartCustomization/ChartCustomizationModal.tsx
delete mode 100644
superset-frontend/src/dashboard/components/nativeFilters/ChartCustomization/ChartCustomizationTitleContainer.tsx
delete mode 100644
superset-frontend/src/dashboard/components/nativeFilters/ChartCustomization/ChartCustomizationTitlePane.tsx
delete mode 100644
superset-frontend/src/dashboard/components/nativeFilters/ChartCustomization/groupBySelectors.ts
delete mode 100644
superset-frontend/src/dashboard/components/nativeFilters/ChartCustomization/selectors.ts
delete mode 100644
superset-frontend/src/dashboard/components/nativeFilters/ChartCustomization/useChartCustomizationModal.tsx
delete mode 100644
superset-frontend/src/dashboard/components/nativeFilters/ChartCustomization/utils.ts
create mode 100644
superset-frontend/src/dashboard/components/nativeFilters/FilterBar/CustomizationsOutOfScopeCollapsible/index.tsx
copy
superset-frontend/src/dashboard/components/nativeFilters/FilterBar/FilterControls/{FilterControl.tsx
=> FilterControlShared.tsx} (54%)
create mode 100644
superset-frontend/src/dashboard/components/nativeFilters/FilterBar/FilterControls/FilterControls.test.tsx
rename
superset-frontend/src/dashboard/components/nativeFilters/{ChartCustomization =>
FilterBar/FilterControls}/GroupByFilterCard.tsx (60%)
create mode 100644
superset-frontend/src/dashboard/components/nativeFilters/FiltersConfigModal/ConfigModalContent/ConfigModalContent.tsx
create mode 100644
superset-frontend/src/dashboard/components/nativeFilters/FiltersConfigModal/ConfigModalContent/CustomizationContentRenderer.tsx
create mode 100644
superset-frontend/src/dashboard/components/nativeFilters/FiltersConfigModal/ConfigModalContent/FilterContentRenderer.tsx
copy superset-frontend/src/{SqlLab/contributions.ts =>
dashboard/components/nativeFilters/FiltersConfigModal/ConfigModalContent/index.ts}
(63%)
create mode 100644
superset-frontend/src/dashboard/components/nativeFilters/FiltersConfigModal/ConfigModalSidebar/ConfigModalSidebar.tsx
create mode 100644
superset-frontend/src/dashboard/components/nativeFilters/FiltersConfigModal/ConfigModalSidebar/ItemSection.tsx
copy superset-frontend/src/{SqlLab/contributions.ts =>
dashboard/components/nativeFilters/FiltersConfigModal/ConfigModalSidebar/index.ts}
(76%)
create mode 100644
superset-frontend/src/dashboard/components/nativeFilters/FiltersConfigModal/DraggableFilter.test.tsx
create mode 100644
superset-frontend/src/dashboard/components/nativeFilters/FiltersConfigModal/ItemTitleContainer.tsx
create mode 100644
superset-frontend/src/dashboard/components/nativeFilters/FiltersConfigModal/ItemTitlePane.tsx
create mode 100644
superset-frontend/src/dashboard/components/nativeFilters/FiltersConfigModal/NewItemDropdown.tsx
copy superset-frontend/{playwright/utils/urls.ts =>
src/dashboard/components/nativeFilters/FiltersConfigModal/hooks/index.ts} (56%)
create mode 100644
superset-frontend/src/dashboard/components/nativeFilters/FiltersConfigModal/hooks/useCustomizationOperations.ts
create mode 100644
superset-frontend/src/dashboard/components/nativeFilters/FiltersConfigModal/hooks/useFilterOperations.ts
create mode 100644
superset-frontend/src/dashboard/components/nativeFilters/FiltersConfigModal/hooks/useItemStateManager.ts
create mode 100644
superset-frontend/src/dashboard/components/nativeFilters/FiltersConfigModal/hooks/useModalSaveLogic.ts
create mode 100644
superset-frontend/src/dashboard/components/nativeFilters/FiltersConfigModal/transformers/customizationTransformer.ts
create mode 100644
superset-frontend/src/dashboard/components/nativeFilters/FiltersConfigModal/transformers/filterTransformer.ts
copy superset-frontend/src/{SqlLab/contributions.ts =>
dashboard/components/nativeFilters/FiltersConfigModal/transformers/index.ts}
(85%)
create mode 100644
superset-frontend/src/dashboard/components/nativeFilters/FiltersConfigModal/utils.test.ts
delete mode 100644
superset-frontend/src/dashboard/reducers/groupByCustomizations.ts
create mode 100644 superset-frontend/src/dashboard/util/calculateScopes.ts
create mode 100644
superset-frontend/src/dashboard/util/getChartIdsInFilterScope.test.ts
copy
superset-frontend/src/{dashboard/components/nativeFilters/FilterCard/TypeRow.tsx
=> explore/components/controls/CurrencyControl/CurrencyControl.test.tsx} (57%)
create mode 100644 superset/cli/export_example.py
rename superset/{examples/big_data.py => cli/test_loaders.py} (87%)
create mode 100644 superset/commands/dashboard/export_example.py
create mode 100644 superset/db_engine_specs/METADATA_STATUS.md
create mode 100644 superset/db_engine_specs/arc.py
create mode 100644 superset/db_engine_specs/d1.py
create mode 100644 superset/db_engine_specs/greenplum.py
create mode 100644 superset/db_engine_specs/hologres.py
create mode 100644 superset/db_engine_specs/lint_metadata.py
create mode 100644 superset/db_engine_specs/monetdb.py
create mode 100644 superset/db_engine_specs/sybase.py
create mode 100644 superset/db_engine_specs/timescaledb.py
create mode 100644 superset/db_engine_specs/yugabytedb.py
copy superset/examples/{configs/metadata.yaml => _shared/database.yaml} (81%)
rename superset/examples/{configs => _shared}/metadata.yaml (100%)
delete mode 100644 superset/examples/bart_lines.py
delete mode 100644 superset/examples/configs/charts/COVID
Vaccines/Vaccine_Candidates_per_Approach__Stage.yaml
delete mode 100644 superset/examples/configs/charts/COVID
Vaccines/Vaccine_Candidates_per_Country.yaml
delete mode 100644 superset/examples/configs/charts/COVID
Vaccines/Vaccine_Candidates_per_Country_261.yaml
delete mode 100644 superset/examples/configs/charts/COVID
Vaccines/Vaccine_Candidates_per_Country__Stage.yaml
delete mode 100644 superset/examples/configs/charts/COVID
Vaccines/Vaccine_Candidates_per_Country__Stage_749.yaml
delete mode 100644 superset/examples/configs/charts/COVID
Vaccines/Vaccine_Candidates_per_Phase.yaml
delete mode 100644 superset/examples/configs/charts/COVID
Vaccines/Vaccine_Candidates_per_Phase_587.yaml
delete mode 100644 superset/examples/configs/charts/Featured Charts/Radar.yaml
delete mode 100644 superset/examples/configs/charts/Vehicle
Sales/Items_Sold.yaml
delete mode 100644 superset/examples/configs/charts/Vehicle
Sales/Items_by_Product_Line.yaml
delete mode 100644 superset/examples/configs/charts/Vehicle
Sales/Overall_Sales_By_Product_Line.yaml
delete mode 100644 superset/examples/configs/charts/Vehicle
Sales/Proportion_of_Revenue_by_Product_Line.yaml
delete mode 100644 superset/examples/configs/charts/Vehicle
Sales/Quarterly_Sales.yaml
delete mode 100644 superset/examples/configs/charts/Vehicle
Sales/Quarterly_Sales_By_Product_Line_113.yaml
delete mode 100644 superset/examples/configs/charts/Vehicle
Sales/Total_Revenue.yaml
delete mode 100644 superset/examples/configs/charts/Video Game
Sales/Games_per_Genre_over_time.yaml
delete mode 100644 superset/examples/configs/charts/Video Game
Sales/Rise__Fall_of_Video_Game_Consoles.yaml
delete mode 100644 superset/examples/configs/charts/Video Game
Sales/Top_10_Games_Proportion_of_Sales_in_Markets.yaml
delete mode 100644 superset/examples/configs/charts/Video Game
Sales/Total_Sales_per_Market_Grouped_by_Genre.yaml
delete mode 100644
superset/examples/configs/dashboards/COVID_Vaccine_Dashboard.yaml
delete mode 100644 superset/examples/configs/dashboards/Unicode_Test.test.yaml
delete mode 100644
superset/examples/configs/datasets/examples/FCC_2018_Survey.yaml
delete mode 100644
superset/examples/configs/datasets/examples/hierarchical_dataset.yaml
delete mode 100644
superset/examples/configs/datasets/examples/project_management.yaml
delete mode 100644 superset/examples/configs/datasets/examples/users.yaml
delete mode 100644
superset/examples/configs/datasets/examples/users_channels-uzooNNtSRO.yaml
delete mode 100644
superset/examples/configs/datasets/examples/users_channels.yaml
delete mode 100644
superset/examples/configs/datasets/examples/video_game_sales.yaml
delete mode 100644 superset/examples/country_map.py
delete mode 100644 superset/examples/deck.py
copy superset/examples/{configs/charts/Featured
Charts/Big_Number_with_Trendline.yaml => deckgl_demo/charts/Deck.gl_Arcs.yaml}
(52%)
copy superset/examples/{configs/charts/Vehicle
Sales/Number_of_Deals_for_each_Combination.yaml =>
deckgl_demo/charts/Deck.gl_Grid.yaml} (54%)
copy superset/examples/{configs/charts/Vehicle
Sales/Number_of_Deals_for_each_Combination.yaml =>
deckgl_demo/charts/Deck.gl_Hexagons.yaml} (54%)
copy superset/examples/{configs/charts/Featured
Charts/Big_Number_with_Trendline.yaml => deckgl_demo/charts/Deck.gl_Path.yaml}
(50%)
create mode 100644 superset/examples/deckgl_demo/charts/Deck.gl_Polygons.yaml
copy superset/examples/{configs/charts/Featured
Charts/Big_Number_with_Trendline.yaml =>
deckgl_demo/charts/Deck.gl_Scatterplot.yaml} (54%)
copy superset/examples/{configs/charts/Vehicle
Sales/Number_of_Deals_for_each_Combination.yaml =>
deckgl_demo/charts/Deck.gl_Screen_grid.yaml} (54%)
create mode 100644 superset/examples/deckgl_demo/dashboard.yaml
create mode 100644 superset/examples/deckgl_demo/data/bart_lines.parquet
create mode 100644 superset/examples/deckgl_demo/data/flights.parquet
create mode 100644 superset/examples/deckgl_demo/data/long_lat.parquet
create mode 100644
superset/examples/deckgl_demo/data/sf_population_polygons.parquet
copy superset/examples/{configs/datasets/examples/unicode_test.test.yaml =>
deckgl_demo/datasets/bart_lines.yaml} (75%)
copy superset/examples/{configs/datasets/examples/messages.yaml =>
deckgl_demo/datasets/flights.yaml} (62%)
rename superset/examples/{configs/datasets/examples/covid_vaccines.yaml =>
deckgl_demo/datasets/long_lat.yaml} (58%)
copy superset/examples/{configs/datasets/examples/unicode_test.test.yaml =>
deckgl_demo/datasets/sf_population_polygons.yaml} (74%)
delete mode 100644 superset/examples/energy.py
rename superset/examples/{configs/charts/FCC New Coder Survey =>
fcc_new_coder_survey/charts}/Age_distribution_of_respondents.yaml (90%)
rename superset/examples/{configs/charts/FCC New Coder Survey =>
fcc_new_coder_survey/charts}/Are_you_an_ethnic_minority_in_your_city.yaml (93%)
rename superset/examples/{configs/charts/FCC New Coder Survey =>
fcc_new_coder_survey/charts}/Breakdown_of_Developer_Type.yaml (93%)
rename superset/examples/{configs/charts/FCC New Coder Survey =>
fcc_new_coder_survey/charts}/Commute_Time.yaml (68%)
rename superset/examples/{configs/charts/FCC New Coder Survey =>
fcc_new_coder_survey/charts}/Country_of_Citizenship.yaml (94%)
rename superset/examples/{configs/charts/FCC New Coder Survey =>
fcc_new_coder_survey/charts}/Current_Developers_Is_this_your_first_development_job.yaml
(94%)
rename superset/examples/{configs/charts/FCC New Coder Survey =>
fcc_new_coder_survey/charts}/Degrees_vs_Income.yaml (94%)
rename superset/examples/{configs/charts/FCC New Coder
Survey/Ethnic_Minority__Gender.yaml =>
fcc_new_coder_survey/charts/Ethnic_Minority_Gender.yaml} (69%)
rename superset/examples/{configs/charts/FCC New Coder Survey =>
fcc_new_coder_survey/charts}/First_Time_Developer.yaml (93%)
rename superset/examples/{configs/charts/FCC New Coder
Survey/First_Time_Developer__Commute_Time.yaml =>
fcc_new_coder_survey/charts/First_Time_Developer_Commute_Time.yaml} (62%)
rename superset/examples/{configs/charts/FCC New Coder Survey =>
fcc_new_coder_survey/charts}/Gender.yaml (92%)
rename superset/examples/{configs/charts/FCC New Coder Survey =>
fcc_new_coder_survey/charts}/Highest_degree_held.yaml (95%)
rename superset/examples/{configs/charts/FCC New Coder Survey =>
fcc_new_coder_survey/charts}/How_do_you_prefer_to_work.yaml (66%)
rename superset/examples/{configs/charts/FCC New Coder Survey =>
fcc_new_coder_survey/charts}/How_much_do_you_expect_to_earn_0_-_100k.yaml (66%)
rename superset/examples/{configs/charts/FCC New Coder Survey =>
fcc_new_coder_survey/charts}/Last_Year_Income_Distribution.yaml (66%)
rename superset/examples/{configs/charts/FCC New Coder Survey =>
fcc_new_coder_survey/charts}/Location_of_Current_Developers.yaml (95%)
rename superset/examples/{configs/charts/FCC New Coder Survey =>
fcc_new_coder_survey/charts}/Number_of_Aspiring_Developers.yaml (93%)
rename superset/examples/{configs/charts/FCC New Coder Survey =>
fcc_new_coder_survey/charts}/Preferred_Employment_Style.yaml (70%)
rename superset/examples/{configs/charts/FCC New Coder Survey =>
fcc_new_coder_survey/charts}/Relocation_ability.yaml (91%)
rename superset/examples/{configs/charts/FCC New Coder Survey =>
fcc_new_coder_survey/charts}/Top_15_Languages_Spoken_at_Home.yaml (93%)
rename superset/examples/{configs/charts/FCC New Coder Survey =>
fcc_new_coder_survey/charts}/Work_Location_Preference.yaml (93%)
rename superset/examples/{configs/dashboards/FCC_New_Coder_Survey_2018.yaml =>
fcc_new_coder_survey/dashboard.yaml} (61%)
create mode 100644 superset/examples/fcc_new_coder_survey/data.parquet
create mode 100644 superset/examples/fcc_new_coder_survey/dataset.yaml
rename superset/examples/{configs/charts/Featured Charts =>
featured_charts/charts}/Area.yaml (69%)
copy superset/examples/{configs/charts/Featured Charts =>
featured_charts/charts}/Bar.yaml (90%)
copy superset/examples/{configs/charts/Featured Charts =>
featured_charts/charts}/Big_Number.yaml (87%)
rename superset/examples/{configs/charts/Featured Charts =>
featured_charts/charts}/Big_Number_with_Trendline.yaml (89%)
copy superset/examples/{configs/charts/Featured Charts =>
featured_charts/charts}/Box_Plot.yaml (86%)
copy superset/examples/{configs/charts/Featured Charts =>
featured_charts/charts}/Bubble.yaml (92%)
rename superset/examples/{configs/charts/Featured Charts =>
featured_charts/charts}/Funnel.yaml (88%)
rename superset/examples/{configs/charts/Featured Charts =>
featured_charts/charts}/Gantt.yaml (98%)
rename superset/examples/{configs/charts/Featured Charts =>
featured_charts/charts}/Gauge.yaml (87%)
rename superset/examples/{configs/charts/Featured Charts =>
featured_charts/charts}/Graph.yaml (89%)
rename superset/examples/{configs/charts/Featured Charts =>
featured_charts/charts}/Heatmap.yaml (89%)
copy superset/examples/{configs/charts/Featured Charts =>
featured_charts/charts}/Histogram.yaml (87%)
copy superset/examples/{configs/charts/Featured Charts =>
featured_charts/charts}/Line.yaml (90%)
rename superset/examples/{configs/charts/Featured Charts =>
featured_charts/charts}/Mixed.yaml (67%)
rename superset/examples/{configs/charts/Featured Charts =>
featured_charts/charts}/Pie.yaml (91%)
rename superset/examples/{configs/charts/Featured Charts =>
featured_charts/charts}/Pivot_Table.yaml (63%)
rename superset/examples/{configs/charts/Featured Charts/Bubble.yaml =>
featured_charts/charts/Radar.yaml} (67%)
copy superset/examples/{configs/charts/Featured Charts =>
featured_charts/charts}/Sankey.yaml (88%)
rename superset/examples/{configs/charts/Featured Charts =>
featured_charts/charts}/Scatter_Plot.yaml (90%)
copy superset/examples/{configs/charts/Featured Charts =>
featured_charts/charts}/Sunburst.yaml (87%)
rename superset/examples/{configs/charts/Featured Charts =>
featured_charts/charts}/Table.yaml (85%)
copy superset/examples/{configs/charts/Featured Charts =>
featured_charts/charts}/Tree.yaml (95%)
copy superset/examples/{configs/charts/Featured Charts/Treemap.yaml =>
featured_charts/charts/TreeMap.yaml} (88%)
rename superset/examples/{configs/charts/Featured Charts =>
featured_charts/charts}/Waterfall.yaml (92%)
copy superset/examples/{configs/charts/Featured Charts =>
featured_charts/charts}/Word_Cloud.yaml (87%)
rename superset/examples/{configs/dashboards/Featured_Charts.yaml =>
featured_charts/dashboard.yaml} (73%)
create mode 100644
superset/examples/featured_charts/data/cleaned_sales_data.parquet
create mode 100644
superset/examples/featured_charts/data/hierarchical_dataset.parquet
create mode 100644
superset/examples/featured_charts/data/project_management.parquet
rename superset/examples/{configs/datasets/examples/channels.yaml =>
featured_charts/datasets/cleaned_sales_data.yaml} (67%)
copy superset/examples/{configs/datasets/examples/unicode_test.test.yaml =>
featured_charts/datasets/hierarchical_dataset.yaml} (72%)
copy superset/examples/{configs/datasets/examples/unicode_test.test.yaml =>
featured_charts/datasets/project_management.yaml} (59%)
delete mode 100644 superset/examples/flights.py
create mode 100644 superset/examples/generic_loader.py
create mode 100644 superset/examples/international_sales/data.parquet
copy superset/examples/{configs/datasets/examples/threads.yaml =>
international_sales/dataset.yaml} (55%)
delete mode 100644 superset/examples/long_lat.py
copy superset/examples/{configs/charts/Featured Charts/Tree.yaml =>
misc_charts/charts/Birth_in_France_by_department_in_2016.yaml} (65%)
copy superset/examples/{configs/charts/Featured Charts/Treemap.yaml =>
misc_charts/charts/Parallel_Coordinates.yaml} (60%)
copy superset/examples/{configs/charts/Unicode Test/Unicode_Cloud.test.yaml =>
misc_charts/charts/Unicode_Cloud.yaml} (54%)
create mode 100644 superset/examples/misc_charts/dashboard.yaml
create mode 100644
superset/examples/misc_charts/data/birth_france_by_region.parquet
create mode 100644 superset/examples/misc_charts/data/unicode_test.parquet
create mode 100644
superset/examples/misc_charts/data/wb_health_population.parquet
copy superset/examples/{configs/datasets/examples/threads.yaml =>
misc_charts/datasets/birth_france_by_region.yaml} (64%)
rename superset/examples/{configs/datasets/examples/unicode_test.test.yaml =>
misc_charts/datasets/unicode_test.yaml} (81%)
create mode 100644
superset/examples/misc_charts/datasets/wb_health_population.yaml
delete mode 100644 superset/examples/misc_dashboard.py
delete mode 100644 superset/examples/multiformat_time_series.py
delete mode 100644 superset/examples/paris.py
delete mode 100644 superset/examples/random_time_series.py
rename superset/examples/{configs/charts/Vehicle Sales/Total_Items_Sold.yaml
=> sales_dashboard/charts/Items_Sold.yaml} (71%)
rename superset/examples/{configs/charts/Vehicle Sales =>
sales_dashboard/charts}/Number_of_Deals_for_each_Combination.yaml (100%)
copy superset/examples/{configs/charts/Vehicle
Sales/Seasonality_of_Revenue_per_Product_Line.yaml =>
sales_dashboard/charts/Overall_Sales_By_Product_Line.yaml} (77%)
rename superset/examples/{configs/charts/Featured Charts/Line.yaml =>
sales_dashboard/charts/Proportion_of_Revenue_by_Product_Line.yaml} (63%)
rename superset/examples/{configs/charts/Featured Charts/Bar.yaml =>
sales_dashboard/charts/Quarterly_Sales.yaml} (64%)
rename superset/examples/{configs/charts/Vehicle Sales =>
sales_dashboard/charts}/Quarterly_Sales_By_Product_Line.yaml (66%)
rename superset/examples/{configs/charts/Vehicle Sales =>
sales_dashboard/charts}/Revenue_by_Deal_Size.yaml (100%)
copy superset/examples/{configs/charts/Vehicle Sales =>
sales_dashboard/charts}/Seasonality_of_Revenue_per_Product_Line.yaml (100%)
rename superset/examples/{configs/charts/Vehicle Sales =>
sales_dashboard/charts}/Total_Items_Sold_By_Product_Line.yaml (94%)
rename superset/examples/{configs/charts/Vehicle
Sales/Seasonality_of_Revenue_per_Product_Line.yaml =>
sales_dashboard/charts/Total_Revenue.yaml} (65%)
rename superset/examples/{configs/dashboards/Sales_Dashboard.yaml =>
sales_dashboard/dashboard.yaml} (87%)
create mode 100644 superset/examples/sales_dashboard/data.parquet
rename superset/examples/{configs/datasets/examples/cleaned_sales_data.yaml =>
sales_dashboard/dataset.yaml} (81%)
delete mode 100644 superset/examples/sf_population_polygons.py
rename superset/examples/{configs/charts/Slack Dashboard =>
slack_dashboard/charts}/Cross_Channel_Relationship.yaml (94%)
rename superset/examples/{configs/charts/Slack
Dashboard/Cross_Channel_Relationship_heatmap_2786.yaml =>
slack_dashboard/charts/Cross_Channel_Relationship_heatmap_v2.yaml} (93%)
rename superset/examples/{configs/charts/Slack Dashboard =>
slack_dashboard/charts}/Members_per_Channel.yaml (91%)
rename superset/examples/{configs/charts/Slack Dashboard =>
slack_dashboard/charts}/Messages_per_Channel.yaml (57%)
rename superset/examples/{configs/charts/Slack Dashboard =>
slack_dashboard/charts}/New_Members_per_Month.yaml (94%)
rename superset/examples/{configs/charts/Slack Dashboard =>
slack_dashboard/charts}/Number_of_Members.yaml (92%)
rename superset/examples/{configs/charts/Slack Dashboard =>
slack_dashboard/charts}/Top_Timezones.yaml (93%)
rename superset/examples/{configs/charts/Slack Dashboard =>
slack_dashboard/charts}/Weekly_Messages.yaml (93%)
rename superset/examples/{configs/charts/Slack Dashboard =>
slack_dashboard/charts}/Weekly_Threads.yaml (93%)
rename superset/examples/{configs/dashboards/Slack_Dashboard.yaml =>
slack_dashboard/dashboard.yaml} (62%)
create mode 100644
superset/examples/slack_dashboard/data/members_channels_2.parquet
create mode 100644 superset/examples/slack_dashboard/data/messages.parquet
create mode 100644
superset/examples/slack_dashboard/data/messages_channels.parquet
create mode 100644
superset/examples/slack_dashboard/data/new_members_daily.parquet
create mode 100644 superset/examples/slack_dashboard/data/threads.parquet
create mode 100644 superset/examples/slack_dashboard/data/users.parquet
create mode 100644
superset/examples/slack_dashboard/data/users_channels-uzooNNtSRO.parquet
rename superset/examples/{configs/datasets/examples =>
slack_dashboard/datasets}/members_channels_2.yaml (84%)
rename superset/examples/{configs/datasets/examples =>
slack_dashboard/datasets}/messages.yaml (74%)
rename superset/examples/{configs/datasets/examples =>
slack_dashboard/datasets}/messages_channels.yaml (83%)
rename superset/examples/{configs/datasets/examples =>
slack_dashboard/datasets}/new_members_daily.yaml (84%)
copy superset/examples/{configs/datasets/examples =>
slack_dashboard/datasets}/threads.yaml (77%)
rename superset/examples/{configs/datasets/examples/exported_stats.yaml =>
slack_dashboard/datasets/users.yaml} (61%)
rename superset/examples/{configs/datasets/examples/channel_members.yaml =>
slack_dashboard/datasets/users_channels-uzooNNtSRO.yaml} (67%)
delete mode 100644 superset/examples/supported_charts_dashboard.py
delete mode 100644 superset/examples/tabbed_dashboard.py
copy superset/examples/{configs/charts/Unicode Test/Unicode_Cloud.test.yaml =>
usa_births_names/charts/Boy_Name_Cloud.yaml} (68%)
copy superset/examples/{configs/charts/Featured Charts/Big_Number.yaml =>
usa_births_names/charts/Boys.yaml} (64%)
copy superset/examples/{configs/charts/Featured Charts/Tree.yaml =>
usa_births_names/charts/Genders.yaml} (66%)
copy superset/examples/{configs/charts/Featured Charts/Treemap.yaml =>
usa_births_names/charts/Genders_by_State.yaml} (53%)
copy superset/examples/{configs/charts/Unicode Test/Unicode_Cloud.test.yaml =>
usa_births_names/charts/Girl_Name_Cloud.yaml} (68%)
rename superset/examples/{configs/charts/Featured Charts/Big_Number.yaml =>
usa_births_names/charts/Girls.yaml} (64%)
copy superset/examples/{configs/charts/Unicode Test/Unicode_Cloud.test.yaml =>
usa_births_names/charts/Participants.yaml} (66%)
copy superset/examples/{configs/charts/Featured Charts/Tree.yaml =>
usa_births_names/charts/Pivot_Table_v2.yaml} (66%)
copy superset/examples/{configs/charts/Featured Charts/Box_Plot.yaml =>
usa_births_names/charts/Top_10_Boy_Name_Share.yaml} (58%)
rename superset/examples/{configs/charts/Featured Charts/Box_Plot.yaml =>
usa_births_names/charts/Top_10_Girl_Name_Share.yaml} (58%)
copy superset/examples/{configs/charts/Featured Charts/Histogram.yaml =>
usa_births_names/charts/Trends.yaml} (62%)
create mode 100644 superset/examples/usa_births_names/dashboard.yaml
create mode 100644 superset/examples/usa_births_names/data.parquet
copy superset/examples/{configs/datasets/examples/threads.yaml =>
usa_births_names/dataset.yaml} (59%)
rename superset/examples/{configs/charts/Video Game Sales =>
video_game_sales/charts}/Games.yaml (94%)
rename superset/examples/{configs/charts/Video Game Sales =>
video_game_sales/charts}/Games_per_Genre.yaml (51%)
rename superset/examples/{configs/charts/Video Game Sales =>
video_game_sales/charts}/Most_Dominant_Platforms.yaml (95%)
rename superset/examples/{configs/charts/Video Game Sales =>
video_game_sales/charts}/Popular_Genres_Across_Platforms.yaml (92%)
rename superset/examples/{configs/charts/Video Game Sales =>
video_game_sales/charts}/Publishers_With_Most_Titles.yaml (93%)
create mode 100644
superset/examples/video_game_sales/charts/Top_10_Games_Proportion_of_Sales_in_Markets.yaml
create mode 100644
superset/examples/video_game_sales/charts/Total_Sales_per_Market_Grouped_by_Genre.yaml
rename superset/examples/{configs/charts/Video Game
Sales/Number_of_Games_That_Hit_100k_in_Sales_By_Release_Year.yaml =>
video_game_sales/charts/of_Games_That_Hit_100k_in_Sales_By_Release_Year.yaml}
(52%)
rename superset/examples/{configs/dashboards/Video_Game_Sales.yaml =>
video_game_sales/dashboard.yaml} (55%)
create mode 100644 superset/examples/video_game_sales/data.parquet
rename superset/examples/{configs/datasets/examples/threads.yaml =>
video_game_sales/dataset.yaml} (65%)
copy superset/examples/{configs/charts/Featured Charts/Histogram.yaml =>
world_health/charts/Box_plot.yaml} (61%)
rename superset/examples/{configs/charts/Featured Charts/Histogram.yaml =>
world_health/charts/Growth_Rate.yaml} (61%)
copy superset/examples/{configs/charts/Featured Charts/Treemap.yaml =>
world_health/charts/Life_Expectancy_VS_Rural.yaml} (52%)
rename superset/examples/{configs/charts/Featured Charts/Word_Cloud.yaml =>
world_health/charts/Most_Populated_Countries.yaml} (63%)
rename superset/examples/{configs/charts/Unicode Test/Unicode_Cloud.test.yaml
=> world_health/charts/Rural.yaml} (56%)
rename superset/examples/{configs/charts/Featured Charts/Sunburst.yaml =>
world_health/charts/Rural_Breakdown.yaml} (57%)
rename superset/examples/{configs/charts/Featured Charts =>
world_health/charts}/Treemap.yaml (63%)
rename superset/examples/{configs/charts/Featured Charts/Sankey.yaml =>
world_health/charts/World_s_Pop_Growth.yaml} (63%)
rename superset/examples/{configs/charts/Featured Charts/Tree.yaml =>
world_health/charts/World_s_Population.yaml} (63%)
create mode 100644 superset/examples/world_health/dashboard.yaml
create mode 100644 superset/examples/world_health/data.parquet
create mode 100644 superset/examples/world_health/dataset.yaml
copy superset/{db_engine_specs/superset.py =>
migrations/versions/2025-11-18_14-00_9787190b3d89_add_currency_column_support.py}
(52%)
create mode 100644 superset/utils/currency.py
create mode 100644 tests/unit_tests/commands/dashboard/export_example_test.py
create mode 100644 tests/unit_tests/commands/importers/v1/examples_test.py
create mode 100644 tests/unit_tests/common/test_query_actions_currency.py
create mode 100644 tests/unit_tests/dashboards/test_chart_customizations_dao.py
copy {superset-core/src/superset_core/api =>
tests/unit_tests/mcp_service/chart/validation}/__init__.py (100%)
create mode 100644
tests/unit_tests/mcp_service/chart/validation/test_runtime_validator.py
create mode 100644 tests/unit_tests/mcp_service/test_mcp_server.py
create mode 100644 tests/unit_tests/utils/currency_test.py