This is an automated email from the ASF dual-hosted git repository.

rusackas pushed a change to branch chore/fc-10-explore-sqllab-misc
in repository https://gitbox.apache.org/repos/asf/superset.git


    omit 77849334047 fix(SaveModal): widen onDashboardChange param to antd 
SelectValue
    omit 0732dfb5b37 test(DatasourceControl): await userEvent.click to deflake 
Edit dataset test
    omit fa37cfde2dc fix(AdhocFilterControl): reset partitionColumn on 
datasource change
    omit 1f27ae2c3b5 fix(SaveModal): guard cleared dashboard selection and 
strip OUT_OF_TAB hash
    omit f455e90a20e fix(SqlLab): retry fetchQueryResults when resultsKey 
changes
    omit 46c39601b38 fix(CopyToClipboard): guard cloneElement for non-element 
copyNode
    omit 6ddded98fcf fix(SaveModal): restore saveAction history state dropped 
in function component conversion
    omit 83b0b0fde22 fix(imports): rewrite stale @apache-superset/core bare and 
api/core imports to correct subpaths
    omit 8963498813d style: apply prettier formatting
    omit e1fb8b2d234 fix(imports): rewrite stale @apache-superset/core/ui to 
current subpaths
    omit 8f6a03050ad chore(lint): convert explore controls, SqlLab, and misc 
components to function components
     add 9a7938899e2 chore(deps): bump yargs from 17.7.2 to 18.0.0 in 
/superset-frontend (#36584)
     add 6ad1583eb57 fix(security): bump authlib to 1.6.9 (#39598)
     add a216b23d5a3 fix(i18n): Update Japanese translations (#39022)
     add ea8a8f8ac7f feat(i18n): improve pt_BR translations (#38826)
     add dece5415a79 chore(deps): bump memoize-one from 5.2.1 to 6.0.0 in 
/superset-frontend/plugins/plugin-chart-table (#39312)
     add 4cc4d62486f chore(deps): bump antd from 6.3.6 to 6.3.7 in /docs 
(#39670)
     add 41823a30575 chore(deps): bump @ant-design/icons from 6.1.1 to 6.2.0 in 
/docs (#39673)
     add 0b78ffbb9c8 chore(deps): bump react-syntax-highlighter from 16.1.0 to 
16.1.1 in /superset-frontend (#39672)
     add 37bf729f754 chore(deps-dev): bump jsdom from 29.0.2 to 29.1.0 in 
/superset-frontend (#39678)
     add 7c242148579 chore(deps): bump caniuse-lite from 1.0.30001790 to 
1.0.30001791 in /docs (#39674)
     add 2b13e075218 fix(ci): resolve OOM issues when building docs locally 
with Docusaurus Faster + sync docs with latest build result (#38486)
     add 4c4905f689c fix: d3 format for table (#37454)
     add b9de3dba95d fix(docs): fix 404s in documentation (#38974)
     add 44d1f50b7c7 chore(deps): bump baseline-browser-mapping from 2.10.21 to 
2.10.23 in /docs (#39671)
     add b791f4c2cd2 chore(deps): bump d3-cloud from 1.2.8 to 1.2.9 in 
/superset-frontend (#39677)
     add 9ccd37de1ce chore(ci): update Node.js version used in building CI 
image (#38635)
     add 7c4b2b137c7 fix(explore): ensure unsaved-changes dialog renders above 
View SQL modal (#39569)
     add 6da04fa51d8 fix(Modal): prevent title overlapping with close button in 
long header titles (#36536)
     add 7774ec7e3c5 fix(mcp): database filter columns, timeseries SQL, and 
unsaved chart datasource name (#39636)
     add 90f8fafbb46 docs(rls): adding additional rls filter documentation 
(#38829)
     add 5fe3a1c2cd3 fix(dev): revert `react-checkbox-tree` from 2.1.0 to 1.8.0 
in /superset-frontend (#39660)
     add 523ecb65a4a chore(deps-dev): bump typescript-eslint from 8.59.0 to 
8.59.1 in /superset-websocket (#39687)
     add cf587caca7c fix(plugin-chart-handlebars): preserve template on explore 
open (#39442)
     add 3f28f5d012b fix(mcp): surface structured errors for generate_chart 
validation failures (#39484)
     add 3395620b6ee fix(table chart): fix rerender bug that continuously 
cleared search box (#39707)
     add c4a8b34b11f fix(query-history): enable sorting by Duration column 
(#39637)
     add 7bee2afa8e4 fix(theme): set color-scheme on html to fix dark mode 
scrollbars (#39704)
     add 6947881ba70 fix(mcp): classify user errors as WARNING, system errors 
as ERROR (#39634)
     add 09c7e1fc089 fix(mcp): rename _FastMCPValidationFilter to public symbol 
(#39722)
     add 3aa99c577ed chore(deps): bump python-dotenv from 1.1.0 to 1.2.2 
(#39723)
     add ef50b688eef fix(docs): add split Get Started button to main docs page 
with audience links  (#39467)
     add d0abb66fdfd fix(mcp): default chart previews to ascii (#39719)
     add ea3a1955b7e chore(deps): bump @swc/core from 1.15.30 to 1.15.32 in 
/docs (#39695)
     add 4b42f82f136 fix(mcp): restore typed ChartConfig in tool schemas for 
LLM visibility (#39732)
     add dbd7984ce9b chore(deps-dev): bump oxlint from 1.61.0 to 1.62.0 in 
/superset-frontend (#39701)
     add 171414f1653 fix(chart): use categorical axis for bar charts with 
numeric x-axis (#39141)
     add eba08ae52ad fix(ci): switch Dependabot Python ecosystem from uv to pip 
(#39726)
     add 1dd28c6fcd2 chore(deps-dev): bump @typescript-eslint/eslint-plugin 
from 8.59.0 to 8.59.1 in /superset-frontend (#39696)
     add 7b02c21bff8 chore(deps): bump @ant-design/icons from 6.1.1 to 6.2.2 in 
/superset-frontend (#39697)
     add 2a884e84565 chore(deps-dev): bump @swc/core from 1.15.30 to 1.15.32 in 
/superset-frontend (#39692)
     add 54f1e327639 fix(dashboard): escape emoji in position_json before 
saving to prevent truncation (#39737)
     add c7c9a17d6b8 fix(mysql): fallback to pymysql when MySQLdb is not 
installed in get_datatype() (#39729)
     add 549aff7cf98 fix(mcp): clarify chart preview URL metadata (#39731)
     add fe074c0d768 docs(mcp): update MCP server docs for 6.1 (#39422)
     add 2b623fd09ae docs: Superset 6.1 documentation catch-up — batch 2 
(#39441)
     add b4f595953e4 docs: Superset 6.1 documentation catch-up — batch 3 
(#39445)
     add 8d17c34068b feat(mcp): restore self-lookup via created_by_me flag 
(#39638)
     add 6ce3885f2ee chore(build): remove thread-loader from webpack build 
(#39763)
     add 979f60a6d4a docs: Superset 6.1 documentation catch-up — batch 4 
(#39446)
     add 4c4f3341de6 chore(deps): bump dawidd6/action-download-artifact from 20 
to 21 (#39742)
     add ebb43404c8d chore(deps): bump baseline-browser-mapping from 2.10.23 to 
2.10.24 in /docs (#39741)
     add e3e834bbf7b fix(mcp): fall back to title match when dashboard slug 
lookup misses (#39567)
     add 81a08f0a0e0 chore(deps): bump fastmcp from 3.1.0 to 3.2.4 (#39349)
     add c2b9272f4c9 fix(mcp): sanitize read path output for LLM context 
(#39738)
     add 49c249c7a9d fix(cache-warmup): add missing dashboard context in 
DashboardTagsStrategy (#39531)
     add ae4c765d7d6 fix(docs): fix embedding page frontmatter and title 
capitalization (#39765)
     add e4fe08ab9ef feat(mcp): add generate_bug_report tool with PII 
sanitization (#39595)
     add df396aa6e9d fix(drill-to-detail): drill to detail by correctly 
filtering by metric (#39766)
     add 9c3c8dcc0bf fix(table): restore dropdown arrow visibility on paginated 
table page… (#39305)
     add f7c955f81ad feat: provide full endpoint URL construction for plugin 
developers (#37360)
     add 2c26914c2eb chore(deps-dev): bump typescript-eslint from 8.59.0 to 
8.59.1 in /docs (#39694)
     add ce3f19d373a chore(deps): bump swagger-ui-react from 5.32.4 to 5.32.5 
in /docs (#39693)
     add c895c4ffa90 chore(deps): bump yeoman-generator from 8.1.2 to 8.2.2 in 
/superset-frontend (#39744)
     add 43a2cd36604 chore(deps-dev): bump psycopg2-binary from 2.9.9 to 2.9.12 
(#39749)
     add a4532844f49 chore(deps): bump msgpack from 1.0.8 to 1.1.2 (#39752)
     add 9001e7dcf27 chore(deps): bump pandas from 2.1.4 to 2.3.3 (#39754)
     add bfacc3b5ac7 chore(deps): bump xlsxwriter from 3.0.9 to 3.2.9 (#39757)
     add 1061b0612cc chore(deps-dev): bump eslint-plugin-no-only-tests from 
3.3.0 to 3.4.0 in /superset-frontend (#39768)
     add 7842a9b05d1 fix(playwright): remove Google Sheets dependency from 
dataset tests (#39143)
     add bc875aa3e32 feat: Latvian localization (#38965)
     add a135e290355 fix(time-format): handle string input in TimeFormatter to 
fix pivot table NaN dates (#38949)
     add 56e9331dada chore: add Aadhar Housing Finance Limited to INTHEWILD 
(#38366)
     add 6ad503201b8 chore(deps): bump zod from 4.3.6 to 4.4.1 in 
/superset-frontend (#39770)
     add c15b208fdaa chore(deps): bump react-map-gl from 8.1.0 to 8.1.1 in 
/superset-frontend (#39745)
     add 9faeda5723a chore(deps): bump @ant-design/icons from 6.2.0 to 6.2.2 in 
/docs (#39691)
     add 3f681040076 chore(deps-dev): bump @swc/plugin-emotion from 14.8.0 to 
14.9.0 in /superset-frontend (#39715)
     add 4fcb3144ff1 fix(dashboard): prevent duplicate screenshot downloads 
(#39525)
     add 12f69760f90 fix(table): conditionally render search dropdown only when 
search input is enabled (#35204)
     add f57ba7645dd fix(CountryMap): ISO updated for France overseas (complete 
run) (#36055)
     add 512ba43e764 feat(i18n): add Czech translations (#36153)
     add 4244ae87bf7 fix(deps): regenerate pinned requirements for 
psycopg2-binary 2.9.12 (#39790)
     add 86eb6176d11 fix: Enforce per-user caching on legacy API endpoint 
(#39789)
     add 3f550f166f3 fix(GSheets OAuth2): Re-add UnauthenticatedError (#39785)
     add f29d82b3b1d feat(mcp): add query_dataset tool to query datasets using 
semantic layer (#39727)
     add 957b298ae1e fix(mcp): add default request parameter to list_charts and 
list_dashboards (#39730)
     add e585406fff6 chore(codeowners): notify @sfirke on translation changes 
(#39794)
     add d23b0cad920 chore: Bump core packages to 0.1.0 RC3 (#39823)
     add 2ec53c0694b chore(deps): bump mapbox-gl from 3.22.0 to 3.23.0 in 
/superset-frontend (#39769)
     add de45f3a928e chore(deps): bump 
aws-actions/amazon-ecs-deploy-task-definition from 2.6.1 to 2.6.2 (#39806)
     add 6bfdee98cd9 chore(deps-dev): bump @docusaurus/tsconfig from 3.10.0 to 
3.10.1 in /docs (#39811)
     add 1ac113fd449 chore(deps): bump 
aws-actions/amazon-ecs-render-task-definition from 1.8.4 to 1.8.5 (#39809)
     add e77fb5e3fcb feat(i18n): updated Ukrainian translation  (#39720)
     add cb744388652 fix(viz): correct table chart drill-to-detail temporal 
boundaries and null handling (#39668)
     add 98eaaaa6d66 fix(mcp): clear stale thread-local DB session in sync tool 
wrapper (#39798)
     add dbe26d81ce0 chore(deps-dev): bump baseline-browser-mapping from 
2.10.21 to 2.10.24 in /superset-frontend (#39759)
     add d8dd2d99b3f fix(time-comparison): use chart row_limit instead of 
instance config in offset queries (#39490)
     add 9d4384e49ee chore(deps-dev): bump @babel/preset-env from 7.29.2 to 
7.29.3 in /superset-frontend (#39822)
     add b14cca15f6b fix(table): preserve decimals in totals row when Time 
Comparison is enabled (#39747)
     add c90c8612ade chore(deps): bump @docusaurus/faster from 3.10.0 to 3.10.1 
in /docs (#39804)
     add 867e173427b chore(deps): drop stale legacy-plugin-chart-map-box 
lockfile entry (#39825)
     add ad73395c894 chore(deps-dev): bump yeoman-test from 11.3.1 to 11.4.2 in 
/superset-frontend (#39816)
     add dc1c0f6ba19 docs: add user-facing Handlebars chart page with full 
helpers reference (#39591)
     add 6205afbaa08 chore(deps-dev): bump webpack-sources from 3.4.0 to 3.4.1 
in /superset-frontend (#39851)
     add 28239c18d40 feat(mcp): warn when execute_sql template_params used with 
templating disabled (#39858)
     add 41a22d79184 chore: Upgrade to React 18 (#38563)
     add 673634f7af7 fix(mcp): point get_dataset_info url to explore view 
instead of legacy tablemodelview edit (#39838)
     add af8d15fdfcf chore(deps): bump yeoman-generator from 8.1.2 to 8.2.2 in 
/superset-frontend (#39852)
     add 812f4ae0804 chore(deps): update zod requirement from ^4.4.1 to ^4.4.3 
in /superset-frontend/plugins/plugin-chart-echarts (#39850)
     add 2be971ce770 chore(deps): bump docusaurus-plugin-openapi-docs from 
5.0.1 to 5.0.2 in /docs (#39849)
     add 319b8a1124d chore(deps-dev): bump globals from 17.5.0 to 17.6.0 in 
/docs (#39847)
     add ebb02d0ecf0 chore(deps): bump @swc/core from 1.15.32 to 1.15.33 in 
/docs (#39845)
     add 2f605724e72 chore(deps-dev): bump globals from 17.5.0 to 17.6.0 in 
/superset-websocket (#39844)
     add c2725e86f37 fix(markdown): Allow "target" attribute (#39868)
     add e76318633e3 fix(helm): allow chart to work out-of-the-box with legacy 
Bitnami images (#39839)
     add 5325b87e73e fix(clickhouse): prevent expensive table scan (#39867)
     add 76955017eb0 chore: bump shillelagh to 1.4.4 (#39870)
     add e80207218b8 chore(deps-dev): bump eslint from 10.2.1 to 10.3.0 in 
/superset-websocket (#39843)
     add 2edae162f07 chore(deps): bump baseline-browser-mapping from 2.10.24 to 
2.10.27 in /docs (#39848)
     add d6188374b4f chore(deps): bump docusaurus-theme-openapi-docs from 5.0.1 
to 5.0.2 in /docs (#39846)
     add 586de12a05e fix(embedded): prevent duplicate React root on rehandshake 
(#39860)
     add 8173cfe9e3b fix(CollectionControl): assign stable ids to keyless items 
(#39862)
     add 5b5f23d1272 test(plugin-chart-echarts): regression guards for temporal 
x-axis labels on timeseries charts (#39208)
     add 9e91ae8cfff fix(colors): reassign colliding series when dashboard 
locks shared dimension color (#39297)
     add cb53745d43c feat: semantic layer extension (#37815)
     add 9459bc7bf4b fix(mcp): warn on invalid chart preview form data key 
(#39891)
     add 4a21a5365f8 fix(mcp): validate column refs in generate_explore_link, 
update_chart_preview, and update_chart (#39797)
     add 4b17ac26296 fix(explore): add matrixify_enable guard to prevent stale 
validators on pre-revamp charts (#38765)
     add 3745e37182b fix(OAuth2): Support OAuth2 exception with legacy endpoint 
(#39897)
     add d0ef19953ac chore(deps): bump memoize-one from 5.2.1 to 6.0.0 in 
/superset-frontend/plugins/plugin-chart-ag-grid-table (#37910)
     add c06aee85136 chore(deps-dev): bump jsdom from 29.1.0 to 29.1.1 in 
/superset-frontend (#39815)
     add 14d28c34fdc chore(deps-dev): update cx-oracle requirement from 
<8.1,>8.0.0 to >8.0.0,<8.4 (#39753)
     add d578fa1949d chore(deps): bump @deck.gl/mapbox from 9.3.1 to 9.3.2 in 
/superset-frontend (#39814)
     add b305c8681c9 chore(deps-dev): update impyla requirement from 
<0.17,>0.16.2 to >0.16.2,<0.23 (#39833)
     add 5e2c6d8c9e4 chore(deps): bump nanoid from 5.1.9 to 5.1.11 in 
/superset-frontend (#39820)
     add f018b678950 chore(deps-dev): update sqlalchemy-vertica-python 
requirement from <0.6,>=0.5.9 to >=0.5.9,<0.7 (#39831)
     add d7beffcec12 chore(deps-dev): bump 
eslint-plugin-react-you-might-not-need-an-effect from 0.9.3 to 0.10.0 in 
/superset-frontend (#39853)
     add 7290d3c452a chore(deps-dev): update pyathena requirement from <3,>=2 
to >=2,<4 (#39830)
     add d7663a9a1cc chore(deps-dev): update denodo-sqlalchemy requirement from 
~=1.0.6 to >=1.0.6,<2.1.0 (#39832)
     add adfbbf1433c fix(sql): quote identifiers in transpile_to_dialect to fix 
case-sensitive column filters (#39521)
     add 9aaa12c7d44 fix(reports): preserve urlParams in multi-tab report 
fan-out (#39884)
     add e667ceb6cfa feat(themes): expose active theme mode via data-theme-mode 
attribute (#39063)
     add 4aa4415d8fd fix(i18n): update Russian translations (#39589)
     add 5b5dd010285 fix(sqla): parenthesize calculated column expressions in 
WHERE clause (#39793)
     add b5186d1c65c fix(reports): keep body sized so standalone screenshots 
don't time out (#39944)
     add d3c44e311eb chore(deps): bump aws-actions/amazon-ecr-login from 2.1.4 
to 2.1.5 (#39931)
     add 7593d2a164d chore(deps): bump caniuse-lite from 1.0.30001791 to 
1.0.30001792 in /docs (#39933)
     add 9ac4711ac8c fix(mcp): prevent DetachedInstanceError in 
get_chart_preview (#39921)
     add 9b520312a1a fix(mcp): use tiktoken for response-size-guard token 
estimation (#39912)
     add 8088c5d1dea fix(dashboard): match auto-refresh paused-dot outline to 
icon color (#39909)
     add 8c80caefa37 fix(explore): preserve preview chart name on save (#39908)
     add aa710672edb fix(ui): remove makeUrl() double-prefix bugs under 
subdirectory deployment (#39503)
     add ad5e3170dd8 fix: OpenSearch dialect identifier delimiters (#39953)
     add d3784879c29 fix(embedded-sdk): grant fullscreen and clipboard-write by 
default (#39943)
     add 69fbbfd7cef fix(table): consolidate visual column options under Visual 
formatting section (#39856)
     add 5bde86785f6 fix(docs): read capability flags from engine specs in 
database docs generator (#39449)
     add 2f82236b297 feat(docs): expand docs:screenshots generator with 
manifest and tutorial captures (#39444)
     add b8995561300 docs: Superset 6.1 documentation catch-up (security, 
alerts/reports, theming, config) (#39440)
     add 4311a15eb2b feat(sqlglot): Vertica dialect (#39969)
     add 0250092378c chore(frontend): TypeScript 6.0 readiness — declaration 
emit fixes (Phase A) (#39530)
     add dc22b82d88a chore(deps-dev): bump @typescript-eslint/parser from 
8.59.1 to 8.59.2 in /superset-websocket (#39874)
     add dce3317bc9f chore(deps-dev): bump typescript-eslint from 8.59.1 to 
8.59.2 in /docs (#39876)
     add ff7dc538536 fix(mcp): get_chart_sql drops x_axis on 
echarts_timeseries_* and only renders one query for mixed_timeseries (#39865)
     add cfb0b6e8119 fix(mcp): clarify request wrapper in list_datasets, 
list_charts, list_dashboards (#39920)
     add e934f2af927 fix(tests): prevent jest hangs caused by 
MessageChannel-mocked React scheduler (#39957)
     add 547660dcc42 fix(mcp): ASCII chart crashes with NaN when dataset 
contains null values (#39916)
     add d023fe17035 fix(trino/presto): use equality for boolean filters to 
support computed columns (#39500)
     add a60860c9692 fix(table): fall back to datasource columns for 
conditional formatting when query results are empty (#39345)
     add 68fa8e2733c fix(viz): flatten MultiIndex columns in Time-Series Table 
for multiple Group By (#37869)
     add f67dd4a8f3a chore(deps): bump geostyler from 18.5.0 to 18.5.1 in 
/superset-frontend (#39702)
     add f81821086a4 chore(releasing): fix email parsing in verify_release.py 
(#39602)
     add d83b0c5ce33 feat: support creating datasets for schema-less databases 
(#39433)
     add 372b50e19d7 fix(dashboard): row limit warning missing for non-table 
charts (#39911)
     add 245fffca799 fix(dashboard): Clear All filters now stages changes until 
Apply (#39778)
     add 5a453fe95d5 chore(deps-dev): bump wait-on from 9.0.5 to 9.0.6 in 
/superset-frontend (#40014)
     add 2adb6f64eb6 chore(deps): bump baseline-browser-mapping from 2.10.27 to 
2.10.29 in /docs (#40013)
     add 2cf4a2c31f3 chore(deps-dev): bump databricks-sql-connector from 4.1.2 
to 4.2.6 (#39989)
     add 6271272e601 chore(deps): bump nh3 from 0.2.21 to 0.3.5 (#39988)
     add 1c795418d28 chore(deps-dev): bump pyinstrument from 4.4.0 to 5.1.2 
(#39987)
     add 14ba6665948 chore(deps-dev): update ibm-db-sa requirement from 
<=0.4.0,>0.3.8 to >0.3.8,<=0.4.4 (#39986)
     add fcf3f6c0d52 chore(deps-dev): update pinotdb requirement from 
<6.0.0,>=5.0.0 to >=5.0.0,<10.0.0 (#39985)
     add 3e1cfc6d697 chore(deps): bump @babel/plugin-transform-modules-systemjs 
from 7.27.1 to 7.29.4 in /docs (#39981)
     add ad7075d2aae chore(deps): bump fast-uri from 3.0.6 to 3.1.2 in /docs 
(#39979)
     add 494c29f5bf0 chore(deps-dev): bump @typescript-eslint/eslint-plugin 
from 8.59.1 to 8.59.2 in /superset-frontend (#39878)
     add 1d1a0e6fecc chore(deps-dev): update sqlalchemy-firebird requirement 
from <0.8,>=0.7.0 to >=0.7.0,<2.2 (#39755)
     add eed7098093e perf(sql-lab): use useDeferredValue for schema browser 
search (#39928)
     add 3e3c5c36c34 perf(explore): use useDeferredValue for datasource panel 
search (#39970)
     add 2cc20d3284b perf(explore): use useDeferredValue for explore menu 
search and JS editor parse (#39975)
     add 516bb19e105 feat(frontend): enable React StrictMode at root (#39893)
     add 96ad20318d5 chore(superset-core): forward-compat fixes for TypeScript 
6.0 - Phase C (#39537)
     add db0c5b32da9 chore(lint): convert SuperChart and SuperChartCore to 
function components (#39457)
     add a7aa854968a fix(big-number): guard against null colorPicker in 
transformProps (#39110)
     add 26ef4b7ed37 fix(sqla): pass catalog and schema to get_sqla_engine in 
values_for_column (#38681)
     add 2fe6269c22b chore(lint): convert ChartDataProvider and StatefulChart 
to function components (#39456)
     add 006a1800bec chore(lint): convert react-pivottable components to 
function components (#39453)
     add 6ee4d694bcb fix(sqllab): include template_params when overwriting a 
dataset (#39501)
     add d90d3a2dea4 fix(importexport): honor overwrite flag on 
/api/v1/assets/import (#39502)
     add 785a08c7d5c chore(frontend): export typed useAppDispatch / 
useAppSelector hooks (#40027)
     add e77f6ece92e fix(ci): serialize Docs Deployment runs to avoid push 
races (#40030)
     add cfb704dbeb7 test(sqllab): stabilize SaveDatasetModal overwrite-flow 
test helper (#40036)
     add 187bb416e76 fix(plugin-chart-ag-grid-table): use display text for 
filter and sort on HTML cells (#39885)
     add df97568bd05 chore(lint): convert explore controls, SqlLab, and misc 
components to function components
     add 3d7ef7d1419 fix(imports): rewrite stale @apache-superset/core/ui to 
current subpaths
     add 4ae36b4b6fa style: apply prettier formatting
     add ce989a20d13 fix(imports): rewrite stale @apache-superset/core bare and 
api/core imports to correct subpaths
     add 82bab7b039a fix(SaveModal): restore saveAction history state dropped 
in function component conversion
     add cec4d766863 fix(CopyToClipboard): guard cloneElement for non-element 
copyNode
     add 03cdd206c5b fix(SqlLab): retry fetchQueryResults when resultsKey 
changes
     add 81123abec68 fix(SaveModal): guard cleared dashboard selection and 
strip OUT_OF_TAB hash
     add 8132732e32d fix(AdhocFilterControl): reset partitionColumn on 
datasource change
     add e02b709dbcd test(DatasourceControl): await userEvent.click to deflake 
Edit dataset test
     add 499893e4b38 fix(SaveModal): widen onDashboardChange param to antd 
SelectValue
     add c32da200ef1 revert(CollectionControl): drop stale FC conversion; 
master already converted

This update added new revisions after undoing existing revisions.
That is to say, some revisions that were in the old version of the
branch are not in the new version.  This situation occurs
when a user --force pushes a change and generates a repository
containing something like this:

 * -- * -- B -- O -- O -- O   (77849334047)
            \
             N -- N -- N   refs/heads/chore/fc-10-explore-sqllab-misc 
(c32da200ef1)

You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.

Any revisions marked "omit" are not gone; other references still
refer to them.  Any revisions marked "discard" are gone forever.

No new revisions were added by this update.

Summary of changes:
 .github/CODEOWNERS                                 |     4 +
 .github/dependabot.yml                             |    12 +-
 .github/labeler.yml                                |    10 +
 .github/workflows/bashlib.sh                       |    14 +
 .github/workflows/ephemeral-env-pr-close.yml       |     2 +-
 .github/workflows/ephemeral-env.yml                |     8 +-
 .github/workflows/superset-docs-deploy.yml         |    14 +-
 .github/workflows/superset-docs-verify.yml         |     2 +-
 .github/workflows/superset-python-unittest.yml     |     1 +
 Dockerfile                                         |     2 +-
 RELEASING/verify_release.py                        |    62 +-
 RESOURCES/INTHEWILD.yaml                           |     4 +
 UPDATING.md                                        |     7 +
 docker/pythonpath_dev/superset_config.py           |     8 +-
 docs/admin_docs/configuration/alerts-reports.mdx   |    81 +
 docs/admin_docs/configuration/cache.mdx            |    39 +-
 .../configuration/configuring-superset.mdx         |    52 +
 .../importing-exporting-datasources.mdx            |     4 +
 docs/admin_docs/configuration/mcp-server.mdx       |   136 +-
 .../configuration/networking-settings.mdx          |     4 +-
 docs/admin_docs/configuration/theming.mdx          |    62 +-
 docs/admin_docs/configuration/timezones.mdx        |     2 +-
 docs/admin_docs/installation/kubernetes.mdx        |     2 +-
 docs/admin_docs/security/security.mdx              |   197 +-
 docs/developer_docs/api.mdx                        |   124 +-
 .../components/design-system/dropdowncontainer.mdx |     2 +-
 .../components/design-system/flex.mdx              |     2 +-
 .../components/design-system/grid.mdx              |     2 +-
 .../components/design-system/layout.mdx            |     2 +-
 .../components/design-system/metadatabar.mdx       |     2 +-
 .../components/design-system/space.mdx             |     2 +-
 .../components/design-system/table.mdx             |     2 +-
 docs/developer_docs/components/index.mdx           |    24 +-
 docs/developer_docs/components/ui/autocomplete.mdx |     2 +-
 docs/developer_docs/components/ui/avatar.mdx       |     2 +-
 docs/developer_docs/components/ui/badge.mdx        |     2 +-
 docs/developer_docs/components/ui/breadcrumb.mdx   |     2 +-
 docs/developer_docs/components/ui/button.mdx       |     8 +-
 docs/developer_docs/components/ui/buttongroup.mdx  |     2 +-
 docs/developer_docs/components/ui/cachedlabel.mdx  |     2 +-
 docs/developer_docs/components/ui/card.mdx         |     2 +-
 docs/developer_docs/components/ui/checkbox.mdx     |     2 +-
 docs/developer_docs/components/ui/collapse.mdx     |     2 +-
 docs/developer_docs/components/ui/datepicker.mdx   |     2 +-
 docs/developer_docs/components/ui/divider.mdx      |     2 +-
 .../developer_docs/components/ui/editabletitle.mdx |     2 +-
 docs/developer_docs/components/ui/emptystate.mdx   |     2 +-
 docs/developer_docs/components/ui/favestar.mdx     |     2 +-
 docs/developer_docs/components/ui/iconbutton.mdx   |     2 +-
 docs/developer_docs/components/ui/icons.mdx        |     2 +-
 docs/developer_docs/components/ui/icontooltip.mdx  |     2 +-
 docs/developer_docs/components/ui/infotooltip.mdx  |     2 +-
 docs/developer_docs/components/ui/input.mdx        |     2 +-
 docs/developer_docs/components/ui/label.mdx        |     2 +-
 docs/developer_docs/components/ui/list.mdx         |     2 +-
 docs/developer_docs/components/ui/listviewcard.mdx |     2 +-
 docs/developer_docs/components/ui/loading.mdx      |     2 +-
 docs/developer_docs/components/ui/menu.mdx         |     2 +-
 docs/developer_docs/components/ui/modal.mdx        |     2 +-
 docs/developer_docs/components/ui/modaltrigger.mdx |     2 +-
 docs/developer_docs/components/ui/popover.mdx      |     2 +-
 docs/developer_docs/components/ui/progressbar.mdx  |     2 +-
 docs/developer_docs/components/ui/radio.mdx        |     2 +-
 docs/developer_docs/components/ui/safemarkdown.mdx |     2 +-
 docs/developer_docs/components/ui/select.mdx       |     2 +-
 docs/developer_docs/components/ui/skeleton.mdx     |     2 +-
 docs/developer_docs/components/ui/slider.mdx       |     2 +-
 docs/developer_docs/components/ui/steps.mdx        |     2 +-
 docs/developer_docs/components/ui/switch.mdx       |     2 +-
 .../components/ui/tablecollection.mdx              |     6 -
 docs/developer_docs/components/ui/tableview.mdx    |     2 +-
 docs/developer_docs/components/ui/tabs.mdx         |     2 +-
 docs/developer_docs/components/ui/timer.mdx        |     2 +-
 docs/developer_docs/components/ui/tooltip.mdx      |     2 +-
 docs/developer_docs/components/ui/tree.mdx         |     2 +-
 docs/developer_docs/components/ui/treeselect.mdx   |     2 +-
 docs/developer_docs/components/ui/typography.mdx   |     2 +-
 .../components/ui/unsavedchangesmodal.mdx          |     2 +-
 docs/developer_docs/components/ui/upload.mdx       |     2 +-
 .../contributing/development-setup.md              |     2 +-
 .../extensions/contribution-types.md               |    49 +
 docs/developer_docs/extensions/overview.md         |     2 +-
 .../creating-your-first-dashboard.mdx              |    50 +-
 docs/docs/using-superset/embedding.mdx             |     9 +-
 docs/docs/using-superset/handlebars-chart.mdx      |   143 +
 docs/docs/using-superset/sql-templating.mdx        |    24 +
 .../docs/using-superset/using-ai-with-superset.mdx |    37 +-
 docs/docusaurus.config.ts                          |    51 +-
 docs/package.json                                  |    39 +-
 docs/scripts/generate-database-docs.mjs            |   317 +-
 docs/scripts/generate-superset-components.mjs      |    98 +-
 docs/src/components/GetStartedSplitButton.tsx      |   155 +
 docs/src/data/databases.json                       |  9952 ++--
 docs/src/pages/index.tsx                           |    22 +-
 docs/src/styles/main.css                           |    46 +-
 docs/src/theme/NavbarItem/ComponentTypes.tsx       |    41 +
 .../theme/NavbarItem/GetStartedSplitNavbarItem.tsx |    17 +-
 docs/src/theme/Root.js                             |     4 +-
 docs/static/feature-flags.json                     |     6 +
 docs/static/img/screenshots/dashboard.jpg          |   Bin 136723 -> 134621 
bytes
 docs/static/img/screenshots/explore.jpg            |   Bin 106386 -> 118936 
bytes
 docs/static/img/screenshots/gallery.jpg            |   Bin 121316 -> 121175 
bytes
 docs/static/img/screenshots/sql_lab.jpg            |   Bin 101650 -> 98906 
bytes
 docs/static/img/tutorial/create_pivot.png          |   Bin 80625 -> 245987 
bytes
 .../img/tutorial/publish_button_dashboard.png      |   Bin 85940 -> 39607 bytes
 .../img/tutorial/tutorial_08_sources_tables.png    |   Bin 52421 -> 134075 
bytes
 docs/static/img/tutorial/tutorial_chart_resize.png |   Bin 86804 -> 12623 bytes
 docs/static/img/tutorial/tutorial_edit_button.png  |   Bin 14099 -> 2176 bytes
 .../img/tutorial/tutorial_first_dashboard.png      |   Bin 99255 -> 37504 bytes
 docs/static/img/tutorial/tutorial_save_slice.png   |   Bin 144443 -> 21738 
bytes
 docs/yarn.lock                                     |  1559 +-
 helm/superset/Chart.yaml                           |     2 +-
 helm/superset/README.md                            |     2 +-
 helm/superset/values.yaml                          |     7 +
 pyproject.toml                                     |    48 +-
 requirements/base.txt                              |     9 +-
 requirements/development.txt                       |    19 +-
 scripts/oxlint.sh                                  |    12 +-
 superset-core/pyproject.toml                       |     4 +-
 .../src/superset_core/semantic_layers/config.py    |    73 +
 .../src/superset_core/semantic_layers/daos.py      |   169 +
 .../superset_core/semantic_layers/decorators.py    |   102 +
 .../src/superset_core/semantic_layers/layer.py     |   129 +
 .../src/superset_core/semantic_layers/models.py    |    85 +
 .../src/superset_core/semantic_layers/types.py     |   209 +
 .../src/superset_core/semantic_layers/view.py      |   113 +
 superset-embedded-sdk/src/index.ts                 |    13 +-
 superset-extensions-cli/pyproject.toml             |     2 +-
 superset-frontend/package-lock.json                | 47241 +++++++++----------
 superset-frontend/package.json                     |    55 +-
 .../packages/generator-superset/package.json       |     2 +-
 .../packages/superset-core/package.json            |    13 +-
 .../packages/superset-core/src/testing.tsx         |     4 +-
 .../superset-core/src/theme/GlobalStyles.tsx       |     6 +
 .../packages/superset-core/src/theme/Theme.tsx     |    14 +-
 .../src/theme/utils/themeUtils.test.ts             |     2 +-
 .../packages/superset-core/types/external.d.ts     |     7 +
 .../superset-ui-chart-controls/package.json        |     9 +-
 .../src/shared-controls/matrixifyControls.test.ts  |     5 +-
 .../src/shared-controls/matrixifyControls.tsx      |     9 +-
 .../superset-ui-chart-controls/src/types.ts        |     1 +
 .../shared-controls/matrixifyControls.test.tsx     |   238 +
 .../packages/superset-ui-core/package.json         |    13 +-
 .../src/chart/components/ChartDataProvider.tsx     |   204 +-
 .../src/chart/components/SuperChart.tsx            |   439 +-
 .../src/chart/components/SuperChartCore.tsx        |   376 +-
 .../src/color/CategoricalColorScale.ts             |    47 +-
 .../src/components/ActionButton/index.tsx          |    10 +-
 .../AsyncAceEditor/useJsonValidation.test.ts       |     4 +-
 .../src/components/AsyncEsmComponent/index.tsx     |    18 +-
 .../src/components/Button/types.ts                 |     3 +-
 .../DropdownContainer.stories.tsx                  |     2 +-
 .../src/components/DropdownContainer/types.ts      |     3 +-
 .../DynamicEditableTitle.regression.test.tsx       |    80 +
 .../src/components/DynamicEditableTitle/index.tsx  |    43 +-
 .../src/components/EmptyState/types.ts             |     3 +-
 .../superset-ui-core/src/components/Form/Form.tsx  |     2 +-
 .../src/components/Label/Label.test.tsx            |     1 -
 .../components/Label/reusable/DatasetTypeLabel.tsx |    18 +-
 .../src/components/ListViewCard/types.ts           |     1 +
 .../src/components/MetadataBar/MetadataBar.tsx     |     2 +-
 .../src/components/Modal/FormModal.tsx             |     2 +-
 .../src/components/Modal/Modal.tsx                 |   211 +-
 .../superset-ui-core/src/components/Modal/types.ts |     5 +-
 .../src/components/PageHeaderWithActions/index.tsx |   114 +-
 .../src/components/Select/Select.test.tsx          |     2 +-
 .../TableCollection/TableCollection.test.tsx       |     2 +-
 .../src/components/TableCollection/utils.tsx       |     4 +-
 .../src/components/TableView/TableView.test.tsx    |    41 +-
 .../src/components/TableView/TableView.tsx         |    52 +-
 .../src/components/TruncatedList/index.tsx         |     4 +-
 .../src/components/UnsavedChangesModal/index.tsx   |     7 +
 .../src/connection/SupersetClient.ts               |     1 +
 .../superset-ui-core/src/connection/types.ts       |     1 +
 .../hooks/useChangeEffect/useChangeEffect.test.ts  |     2 +-
 .../useComponentDidMount.test.ts                   |     2 +-
 .../useComponentDidUpdate.test.ts                  |     2 +-
 .../useElementOnScreen/useElementOnScreen.test.ts  |    16 +-
 .../src/hooks/usePrevious/usePrevious.test.ts      |     2 +-
 .../useTruncation/useCSSTextTruncation.test.tsx    |     2 +-
 .../useChildElementTruncation.test.ts              |     2 +-
 .../superset-ui-core/src/query/DatasourceKey.ts    |    12 +-
 .../superset-ui-core/src/query/types/Datasource.ts |     8 +
 .../src/time-format/TimeFormatter.ts               |     8 +-
 .../src/time-format/utils/stringifyTimeInput.ts    |     8 +-
 .../superset-ui-core/src/ui-overrides/types.ts     |     3 +-
 .../superset-ui-core/src/utils/featureFlags.ts     |     1 +
 .../test/chart/components/SuperChart.test.tsx      |    24 +-
 .../test/chart/components/SuperChartCore.test.tsx  |    27 +-
 .../test/color/CategoricalColorScale.test.ts       |   179 +
 .../test/connection/SupersetClient.test.ts         |    36 +-
 .../test/query/types/Datasource.test.ts            |     3 +-
 .../test/time-format/TimeFormatter.test.ts         |    15 +
 .../components/modals/ImportDatasetModal.ts        |    18 +
 .../playwright/fixtures/dataset_export.zip         |   Bin 5261 -> 0 bytes
 .../generators/docs/docs-screenshots.spec.ts       |   509 +-
 .../generators/docs/screenshot-manifest.yaml       |  1393 +
 .../playwright/generators/playwright.config.ts     |     1 +
 .../playwright/helpers/api/assertions.ts           |    32 +-
 .../playwright/helpers/api/dataset.ts              |    15 +
 .../helpers/api/{savedQuery.ts => sqllab.ts}       |    40 +-
 .../playwright/pages/CreateDatasetPage.ts          |     2 +-
 .../playwright/tests/chart/chart-list.spec.ts      |    29 +-
 .../tests/dashboard/clear-all-filters.spec.ts      |   220 +
 .../tests/dashboard/dashboard-list.spec.ts         |    50 +-
 .../tests/dataset/create-dataset.spec.ts           |   297 +-
 .../playwright/tests/dataset/dataset-list.spec.ts  |   126 +-
 .../legacy-plugin-chart-calendar/package.json      |     2 +-
 .../legacy-plugin-chart-country-map/package.json   |     2 +-
 .../scripts/Country Map GeoJSON Generator.ipynb    |   Bin 2319015 -> 10614906 
bytes
 .../src/countries/afghanistan.geojson              |   Bin 116233 -> 116055 
bytes
 .../src/countries/algeria.geojson                  |   Bin 72436 -> 72143 bytes
 .../src/countries/angola.geojson                   |   Bin 91061 -> 90836 bytes
 .../src/countries/antarctica.geojson               |   Bin 249319 -> 245701 
bytes
 .../src/countries/argentina.geojson                |   Bin 92396 -> 91982 bytes
 .../src/countries/central_african_republic.geojson |   Bin 76367 -> 76280 bytes
 .../src/countries/chad.geojson                     |   Bin 59200 -> 59068 bytes
 .../src/countries/chile.geojson                    |   Bin 155583 -> 152109 
bytes
 .../src/countries/colombia.geojson                 |   Bin 172825 -> 172427 
bytes
 .../src/countries/cook_islands.geojson             |   Bin 4932 -> 4793 bytes
 .../democratic_republic_of_the_congo.geojson       |   Bin 60598 -> 60421 bytes
 .../src/countries/ecuador.geojson                  |   Bin 72252 -> 71984 bytes
 .../src/countries/egypt.geojson                    |   Bin 63171 -> 62737 bytes
 .../src/countries/ethiopia.geojson                 |   Bin 74208 -> 74123 bytes
 .../src/countries/fiji.geojson                     |   Bin 16252 -> 14845 bytes
 .../src/countries/finland.geojson                  |   Bin 131137 -> 130221 
bytes
 .../src/countries/france.geojson                   |   Bin 293304 -> 292411 
bytes
 .../src/countries/france_overseas.geojson          |   Bin 319670 -> 318427 
bytes
 .../src/countries/france_regions.geojson           |   Bin 125649 -> 125270 
bytes
 .../src/countries/french_polynesia.geojson         |   Bin 23524 -> 21933 bytes
 .../src/countries/greenland.geojson                |   Bin 183222 -> 180051 
bytes
 .../src/countries/iran.geojson                     |   Bin 134537 -> 134245 
bytes
 .../src/countries/italy.geojson                    |   Bin 239052 -> 238139 
bytes
 .../src/countries/italy_regions.geojson            |   Bin 107344 -> 106568 
bytes
 .../src/countries/japan.geojson                    |   Bin 125219 -> 123030 
bytes
 .../src/countries/kazakhstan.geojson               |   Bin 97047 -> 96827 bytes
 .../src/countries/libya.geojson                    |   Bin 44004 -> 43958 bytes
 .../src/countries/malaysia.geojson                 |   Bin 61681 -> 61384 bytes
 .../src/countries/mexico.geojson                   |   Bin 155798 -> 153935 
bytes
 .../src/countries/mongolia.geojson                 |   Bin 66140 -> 66008 bytes
 .../src/countries/mozambique.geojson               |   Bin 70273 -> 70096 bytes
 .../src/countries/myanmar.geojson                  |   Bin 122123 -> 121555 
bytes
 .../src/countries/namibia.geojson                  |   Bin 51744 -> 51566 bytes
 .../src/countries/new_zealand.geojson              |   Bin 51553 -> 50769 bytes
 .../src/countries/niger.geojson                    |   Bin 24447 -> 24404 bytes
 .../src/countries/nigeria.geojson                  |   Bin 132145 -> 131937 
bytes
 .../src/countries/norway.geojson                   |   Bin 193186 -> 190978 
bytes
 .../src/countries/pakistan.geojson                 |   Bin 71260 -> 71132 bytes
 .../src/countries/papua_new_guinea.geojson         |   Bin 93153 -> 92488 bytes
 .../src/countries/peru.geojson                     |   Bin 121913 -> 121731 
bytes
 .../src/countries/philippines.geojson              |   Bin 201029 -> 199021 
bytes
 .../src/countries/philippines_regions.geojson      |   Bin 137441 -> 135628 
bytes
 .../src/countries/portugal.geojson                 |   Bin 54433 -> 54121 bytes
 .../src/countries/saudi_arabia.geojson             |   Bin 49793 -> 49541 bytes
 .../src/countries/somalia.geojson                  |   Bin 17724 -> 17637 bytes
 .../src/countries/spain.geojson                    |   Bin 197369 -> 196796 
bytes
 .../src/countries/sudan.geojson                    |   Bin 50604 -> 50472 bytes
 .../src/countries/sweden.geojson                   |   Bin 122167 -> 121208 
bytes
 .../src/countries/tanzania.geojson                 |   Bin 108762 -> 108542 
bytes
 .../src/countries/thailand.geojson                 |   Bin 206445 -> 205568 
bytes
 .../src/countries/turkey.geojson                   |   Bin 204145 -> 203575 
bytes
 .../src/countries/turkey_regions.geojson           |   Bin 107486 -> 107269 
bytes
 .../src/countries/turkmenistan.geojson             |   Bin 34959 -> 34870 bytes
 .../src/countries/uk.geojson                       |   Bin 478985 -> 477503 
bytes
 .../src/countries/ukraine.geojson                  |   Bin 173452 -> 173064 
bytes
 .../united_states_minor_outlying_islands.geojson   |   Bin 3957 -> 3552 bytes
 .../src/countries/uzbekistan.geojson               |   Bin 50378 -> 50250 bytes
 .../src/countries/venezuela.geojson                |   Bin 119692 -> 118980 
bytes
 .../src/countries/vietnam.geojson                  |   Bin 138908 -> 138005 
bytes
 .../legacy-plugin-chart-horizon/package.json       |     2 +-
 .../legacy-plugin-chart-paired-t-test/package.json |     2 +-
 .../package.json                                   |     2 +-
 .../legacy-plugin-chart-partition/package.json     |     6 +-
 .../plugins/legacy-plugin-chart-rose/package.json  |     2 +-
 .../legacy-plugin-chart-world-map/package.json     |     2 +-
 .../plugins/legacy-preset-chart-nvd3/package.json  |     2 +-
 .../plugin-chart-ag-grid-table/package.json        |    11 +-
 .../src/AgGridTable/index.tsx                      |     8 +-
 .../src/AgGridTableChart.tsx                       |     2 +-
 .../src/controlPanel.tsx                           |    18 +-
 .../src/renderers/TextCellRenderer.tsx             |     6 +-
 .../src/utils/getInitialSortState.ts               |     2 +-
 .../src/utils/htmlTextFilterValueGetter.test.ts    |    83 +
 .../src/utils/htmlTextFilterValueGetter.ts         |    74 +
 .../src/utils/useColDefs.ts                        |    21 +
 .../test/memoization.test.ts                       |    99 +
 .../test/utils/useColDefs.test.ts                  |     2 +-
 .../plugins/plugin-chart-cartodiagram/package.json |     4 +-
 .../src/components/ChartLayer.tsx                  |    19 +-
 .../test/components/chartLayer.test.ts             |     5 +
 .../plugins/plugin-chart-echarts/package.json      |     4 +-
 .../BigNumberWithTrendline/transformProps.test.ts  |    27 +
 .../BigNumberWithTrendline/transformProps.ts       |    10 +-
 .../src/MixedTimeseries/EchartsMixedTimeseries.tsx |     2 +-
 .../src/MixedTimeseries/transformProps.ts          |    10 +-
 .../src/Timeseries/transformProps.ts               |     7 +-
 .../src/Treemap/EchartsTreemap.tsx                 |     6 +-
 .../plugin-chart-echarts/src/utils/series.ts       |     7 +-
 .../test/MixedTimeseries/transformProps.test.ts    |   132 +
 .../test/Timeseries/transformProps.test.ts         |   113 +
 .../test/utils/formatters.test.ts                  |    52 +
 .../plugin-chart-echarts/test/utils/series.test.ts |    35 +
 .../plugins/plugin-chart-handlebars/README.md      |    95 -
 .../plugins/plugin-chart-handlebars/package.json   |     4 +-
 .../src/plugin/controls/handlebarTemplate.tsx      |    51 +-
 .../src/plugin/controls/style.tsx                  |     6 +-
 .../test/plugin/controls.test.ts                   |   116 +
 .../plugins/plugin-chart-pivot-table/package.json  |     4 +-
 .../src/react-pivottable/PivotTable.tsx            |    10 +-
 .../src/react-pivottable/TableRenderers.tsx        |  1969 +-
 .../test/react-pivottable/tableRenders.test.tsx    |  1380 +-
 .../plugin-chart-point-cluster-map/package.json    |     8 +-
 .../plugins/plugin-chart-table/package.json        |    11 +-
 .../plugin-chart-table/src/DataTable/DataTable.tsx |    23 +-
 .../plugins/plugin-chart-table/src/Styles.tsx      |     5 +
 .../plugins/plugin-chart-table/src/TableChart.tsx  |   126 +-
 .../plugin-chart-table/src/controlPanel.tsx        |   102 +-
 .../plugin-chart-table/src/transformProps.ts       |     9 +-
 .../plugin-chart-table/test/TableChart.test.tsx    |   310 +
 .../plugin-chart-table/test/controlPanel.test.tsx  |   145 +-
 .../plugins/plugin-chart-word-cloud/package.json   |     4 +-
 .../plugins/preset-chart-deckgl/package.json       |     6 +-
 .../src/CategoricalDeckGLContainer.tsx             |     3 +-
 .../preset-chart-deckgl/src/DeckGLContainer.tsx    |     2 +-
 .../preset-chart-deckgl/src/layers/common.test.ts  |     4 +-
 superset-frontend/scripts/build.js                 |     7 +-
 superset-frontend/spec/helpers/testing-library.tsx |     1 +
 superset-frontend/src/SqlLab/actions/sqlLab.ts     |     8 +-
 .../src/SqlLab/components/AppLayout/index.tsx      |     2 +-
 .../ColumnElement/ColumnElement.test.tsx           |    10 +-
 .../EditorWrapper/EditorWrapper.test.tsx           |    28 +-
 .../EditorWrapper/useAnnotations.test.ts           |     8 +-
 .../components/EditorWrapper/useKeywords.test.ts   |     8 +-
 .../components/KeyboardShortcutButton/index.tsx    |     4 +-
 .../src/SqlLab/components/PopEditorTab/index.tsx   |     4 +-
 .../QueryAutoRefresh/QueryAutoRefresh.test.tsx     |     2 +-
 .../src/SqlLab/components/QueryTable/index.tsx     |    25 +-
 .../components/RunQueryActionButton/index.tsx      |     8 +-
 .../SaveDatasetModal/SaveDatasetModal.test.tsx     |   168 +-
 .../SqlLab/components/SaveDatasetModal/index.tsx   |    93 +-
 .../src/SqlLab/components/SouthPane/index.tsx      |     2 +-
 .../src/SqlLab/components/SqlEditor/index.tsx      |     5 +-
 .../SqlEditorTopBar/useDatabaseSelector.test.ts    |     2 +-
 .../SqlLab/components/TableExploreTree/index.tsx   |    20 +-
 .../hooks/useQueryEditor/useQueryEditor.test.ts    |     2 +-
 .../useDeckLayerMetadata.test.ts                   |    64 +-
 superset-frontend/src/components/Chart/Chart.tsx   |    16 +-
 .../Chart/ChartContextMenu/useContextMenu.test.tsx |    74 +-
 .../components/Chart/DrillBy/DrillBySubmenu.tsx    |     6 +-
 .../Chart/DrillBy/useResultsTableView.test.ts      |     2 +-
 .../Chart/DrillDetail/DrillDetailPane.tsx          |     3 +-
 .../Chart/DrillDetail/DrillDetailTableControls.tsx |     4 +-
 .../Chart/useDrillDetailMenuItems/index.tsx        |     2 +-
 .../src/components/DatabaseSelector/index.tsx      |    34 +-
 .../src/components/DatabaseSelector/types.ts       |     2 +
 .../ChangeDatasourceModal.test.tsx                 |    34 +
 .../Datasource/ChangeDatasourceModal/index.tsx     |    50 +-
 .../DatasourceModal/DatasourceModal.test.tsx       |    27 +-
 .../FoldersEditor/hooks/useDragHandlers.test.ts    |     2 +-
 .../DatasourceEditor/DatasourceEditor.tsx          |     4 +-
 .../Datasource/components/Field/index.tsx          |     2 +-
 .../src/components/DynamicPlugins/index.tsx        |    13 +-
 .../ErrorMessage/DatasetNotFoundErrorMessage.tsx   |     3 +-
 .../src/components/FilterableTable/index.tsx       |    20 +-
 .../FilterableTable/useCellContentParser.test.ts   |     2 +-
 .../src/components/GridTable/Header.tsx            |    10 +-
 .../src/components/GridTable/index.tsx             |    11 +-
 .../src/components/ListView/Filters/index.tsx      |     6 +
 .../src/components/ListView/ListView.tsx           |    31 +-
 .../components/Modal/useModalValidation.test.ts    |     2 +-
 .../ResizableSidebar/useStoredSidebarWidth.test.ts |     2 +-
 .../useStreamingExport.test.ts                     |     3 +-
 .../TableSelector/TableSelector.test.tsx           |    46 +
 .../src/components/TableSelector/index.tsx         |     9 +-
 .../components/AddSliceCard/AddSliceCard.tsx       |     3 +-
 .../AutoRefreshStatus/StatusIndicatorDot.test.tsx  |    12 +-
 .../AutoRefreshStatus/StatusIndicatorDot.tsx       |    12 +-
 .../src/dashboard/components/Dashboard.tsx         |     2 +-
 .../DashboardBuilder/DashboardBuilder.tsx          |     5 +-
 .../DashboardBuilder/DashboardContainer.tsx        |     5 +-
 .../src/dashboard/components/DashboardGrid.tsx     |     2 +-
 .../dashboard/components/Header/Header.test.tsx    |    18 +-
 .../dashboard/components/PropertiesModal/index.tsx |     2 +-
 .../src/dashboard/components/SliceAdder.tsx        |     3 +-
 .../components/SliceHeader/SliceHeader.test.tsx    |   117 +
 .../src/dashboard/components/SliceHeader/index.tsx |    11 +-
 .../components/filterscope/FilterScope.test.tsx    |    48 +-
 .../components/filterscope/FilterScopeSelector.tsx |     2 +-
 .../components/gridComponents/Chart/Chart.tsx      |     5 +-
 .../gridComponents/ChartHolder/ChartHolder.tsx     |     5 +-
 .../components/gridComponents/Column/Column.tsx    |     2 +-
 .../DynamicComponent/DynamicComponent.tsx          |     4 +-
 .../gridComponents/Header/Header.test.tsx          |     1 +
 .../gridComponents/Markdown/Markdown.test.tsx      |    46 +-
 .../gridComponents/Markdown/Markdown.tsx           |    10 +-
 .../components/gridComponents/Tab/Tab.tsx          |     2 +-
 .../components/gridComponents/Tabs/Tabs.tsx        |     2 +-
 .../new/DraggableNewComponent.test.tsx             |     1 +
 .../useCrossFiltersScopingModal.test.ts            |     6 +-
 .../nativeFilters/FilterBar/FilterBar.test.tsx     |   131 +-
 .../FilterBar/FilterBarSettings/index.tsx          |     2 +-
 .../FilterBar/FilterControls/FilterControls.tsx    |     8 +-
 .../FilterBar/FilterControls/GroupByFilterCard.tsx |    16 +-
 .../FilterBar/FilterControls/state.test.ts         |    11 +-
 .../components/nativeFilters/FilterBar/index.tsx   |    13 +-
 .../FiltersConfigForm/DatasetSelect.tsx            |    11 +-
 .../FiltersConfigForm/FilterScope/FilterScope.tsx  |     2 +-
 .../__tests__/TreeInitialization.test.tsx          |     2 +-
 .../FilterScope/__tests__/TreeSelection.test.tsx   |     2 +-
 .../FiltersConfigForm/FiltersConfigForm.tsx        |    21 +-
 .../FiltersConfigForm/TimeGrainPreFilter.test.tsx  |     2 +-
 .../FiltersConfigForm/getControlItemsMap.tsx       |    15 +-
 .../transformers/filterTransformer.ts              |    11 +-
 .../components/nativeFilters/state.test.ts         |     2 +-
 .../components/resizable/ResizableContainer.tsx    |     4 +-
 .../dashboard/contexts/AutoRefreshContext.test.tsx |     2 +-
 .../hooks/useAutoRefreshTabPause.test.tsx          |     2 +-
 .../src/dashboard/hooks/useCurrentTime.test.ts     |     2 +-
 .../dashboard/hooks/useDownloadScreenshot.test.ts  |   110 +-
 .../src/dashboard/hooks/useDownloadScreenshot.ts   |    22 +-
 .../src/dashboard/hooks/useTabVisibility.test.ts   |     2 +-
 .../src/dashboard/reducers/dashboardFilters.ts     |     2 +-
 .../src/dashboard/reducers/dashboardInfo.ts        |     8 +-
 superset-frontend/src/dataMask/reducer.ts          |     6 +-
 .../src/embedded/EmbeddedContextProviders.tsx      |     5 +-
 superset-frontend/src/embedded/index.tsx           |    55 +-
 .../src/explore/actions/exploreActions.test.ts     |   105 +
 .../src/explore/actions/exploreActions.ts          |    85 +
 .../src/explore/actions/hydrateExplore.test.ts     |    82 +
 .../src/explore/actions/hydrateExplore.ts          |    15 +-
 .../src/explore/actions/saveModalActions.ts        |     7 +-
 .../src/explore/components/ChartPills.tsx          |     6 +-
 .../src/explore/components/ControlHeader.tsx       |     2 +
 .../DataTableControl/useFilteredTableData.test.ts  |     2 +-
 .../DataTableControl/useTableColumns.test.ts       |     2 +-
 .../DataTablesPane/components/SamplesPane.tsx      |     6 +-
 .../DatasourcePanelDragOption.test.tsx             |     4 +-
 .../DatasourcePanelDragOption/index.tsx            |    40 +-
 .../DatasourcePanel/DatasourcePanelItem.test.tsx   |     2 +-
 .../explore/components/DatasourcePanel/index.tsx   |    13 +-
 .../components/ExploreChartHeader/index.tsx        |   171 +-
 .../explore/components/ExploreChartPanel/index.tsx |     4 +-
 .../explore/components/ExploreContainer/index.tsx  |     3 +-
 .../components/ExploreViewContainer/index.tsx      |    48 +-
 .../src/explore/components/SaveModal.test.tsx      |    27 +
 .../components/StashFormDataContainer/index.tsx    |     3 +-
 .../controls/CollectionControl/index.tsx           |   341 +-
 .../ColumnConfigConstants.test.tsx}                |    28 +-
 .../components/controls/CustomListItem/index.tsx   |    61 +-
 .../DateFilterControl/tests/CustomFrame.test.tsx   |     2 +-
 .../DndColumnSelectControl/ColumnSelectPopover.tsx |    55 +-
 .../DndAdhocFilterOption.tsx                       |     6 +-
 .../DndColumnMetricSelect.tsx                      |    20 +-
 .../DndColumnSelectControl/DndColumnSelect.tsx     |    25 +-
 .../DndColumnSelectPopoverTitle.tsx                |     2 +-
 .../DndFilterSelect.test.tsx                       |     2 +-
 .../DndMetricSelect.test.tsx                       |    20 +-
 .../DndColumnSelectControl/DndMetricSelect.tsx     |    47 +-
 .../controls/DndColumnSelectControl/Option.tsx     |     2 +-
 .../FilterControl/AdhocFilterControl/index.tsx     |     2 +-
 .../utils/useDatePickerInAdhocfilter.test.ts       |     2 +-
 .../utils/useGetTimeRangeLabel.test.ts             |    22 +-
 .../components/controls/JSEditorControl.test.tsx   |     4 -
 .../components/controls/JSEditorControl.tsx        |     9 +-
 .../AdhocMetricEditPopover.test.tsx                |    80 +-
 .../MetricControl/AdhocMetricOption.test.tsx       |     6 +-
 .../controls/MetricControl/MetricsControl.test.tsx |     9 +-
 .../controls/MetricControl/MetricsControl.tsx      |     2 +-
 .../VizTypeControl/VizTypeControl.test.tsx         |     2 +-
 .../useExploreAdditionalActionsMenu/index.tsx      |    11 +-
 superset-frontend/src/explore/controls.tsx         |     3 +-
 .../src/explore/reducers/exploreReducer.ts         |    20 +
 superset-frontend/src/explore/store.test.tsx       |   400 +-
 superset-frontend/src/explore/store.ts             |    58 +-
 superset-frontend/src/explore/types.ts             |     5 +
 .../cssTemplates/CssTemplateModal.test.tsx         |   104 +
 .../databases/DatabaseModal/index.test.tsx         |    12 +-
 .../src/features/databases/DatabaseModal/index.tsx |     5 +-
 .../src/features/databases/DatabaseModal/styles.ts |     9 +-
 .../DatasetPanel/DatasetPanelWrapper.test.tsx}     |    49 +-
 .../datasets/AddDataset/DatasetPanel/index.tsx     |    17 +-
 .../datasets/hooks/useDatasetLists.test.ts         |    62 +-
 .../src/features/datasets/hooks/useDatasetLists.ts |    11 +-
 .../metadataBar/useDatasetMetadataBar.test.tsx     |     2 +-
 superset-frontend/src/features/home/EmptyState.tsx |     5 +-
 superset-frontend/src/features/home/Menu.tsx       |    13 +-
 .../src/features/home/RightMenu.test.tsx           |     9 +-
 superset-frontend/src/features/home/RightMenu.tsx  |     7 +-
 superset-frontend/src/features/home/SubMenu.tsx    |    33 +-
 superset-frontend/src/features/home/types.ts       |     2 +
 .../src/features/reports/ReportModal/index.tsx     |     2 +-
 .../src/features/reports/ReportModal/styles.tsx    |     5 +-
 .../src/features/roles/RoleListEditModal.test.tsx  |     5 +
 .../src/features/roles/RoleListEditModal.tsx       |    76 +-
 .../semanticLayers/SemanticLayerModal.test.tsx     |   130 +
 .../features/semanticLayers/SemanticLayerModal.tsx |   408 +
 .../semanticLayers/jsonFormsHelpers.test.ts        |   150 +
 .../features/semanticLayers/jsonFormsHelpers.tsx   |   386 +
 .../src/features/semanticLayers/label.ts           |    65 +
 .../semanticViews/AddSemanticViewModal.test.tsx    |   264 +
 .../semanticViews/AddSemanticViewModal.tsx         |   541 +
 .../semanticViews/SemanticViewEditModal.test.tsx   |   267 +
 .../semanticViews/SemanticViewEditModal.tsx        |   241 +
 .../src/features/users/UserListModal.tsx           |   259 +-
 .../components/Select/SelectFilterPlugin.test.tsx  |    18 +-
 .../src/hooks/apiResources/apiResources.test.ts    |     2 +-
 .../src/hooks/apiResources/dashboards.test.ts      |    19 +-
 .../hooks/apiResources/databaseFunctions.test.ts   |     6 +-
 .../src/hooks/apiResources/datasets.test.ts        |    89 +-
 .../src/hooks/apiResources/queries.test.ts         |    19 +-
 .../hooks/apiResources/queryValidations.test.ts    |     6 +-
 .../src/hooks/apiResources/schemas.test.ts         |    10 +-
 .../src/hooks/apiResources/sqlEditorTabs.test.ts   |    47 +-
 .../src/hooks/apiResources/sqlLab.test.ts          |    19 +-
 .../src/hooks/apiResources/tables.test.ts          |    41 +-
 superset-frontend/src/hooks/apiResources/tables.ts |    19 +-
 .../hooks/useBeforeUnload/useBeforeUnload.test.ts  |     2 +-
 .../hooks/useConfirmModal/useConfirmModal.test.tsx |    98 +-
 .../src/hooks/useDebounceValue.test.ts             |     2 +-
 .../src/hooks/usePermissions.test.tsx              |     2 +-
 .../useUnsavedChangesPrompt.test.tsx               |    19 +-
 superset-frontend/src/logger/useLogAction.test.ts  |     2 +-
 superset-frontend/src/pages/Chart/Chart.test.tsx   |    21 +-
 superset-frontend/src/pages/ChartList/index.tsx    |     5 +-
 superset-frontend/src/pages/DatabaseList/index.tsx |   501 +-
 .../src/pages/DatasetCreation/index.tsx            |     1 +
 .../DatasetList/DatasetList.behavior.test.tsx      |    39 +-
 .../DatasetList/DatasetList.integration.test.tsx   |    23 +-
 .../DatasetList/DatasetList.listview.test.tsx      |   233 +-
 .../DatasetList/DatasetList.permissions.test.tsx   |    17 +-
 .../src/pages/DatasetList/DatasetList.test.tsx     |    85 +-
 .../pages/DatasetList/DatasetList.testHelpers.tsx  |    28 +-
 superset-frontend/src/pages/DatasetList/index.tsx  |   801 +-
 .../src/pages/FileHandler/index.test.tsx           |    39 +-
 .../pages/SavedQueryList/SavedQueryList.test.tsx   |    47 +-
 .../src/pages/SavedQueryList/index.tsx             |    12 +-
 .../src/pages/SqlLab/LocationContext.tsx           |     4 +-
 superset-frontend/src/theme/ThemeController.ts     |    16 +-
 superset-frontend/src/theme/ThemeProvider.tsx      |    14 +-
 .../src/theme/hooks/useThemeValidation.test.ts     |     2 +-
 .../src/theme/tests/ThemeController.test.ts        |    35 +
 .../src/theme/tests/ThemeProvider.test.tsx         |    58 +-
 superset-frontend/src/types/Dataset.ts             |    11 +-
 superset-frontend/src/views/CRUD/hooks.test.tsx    |     2 +-
 .../src/views/RootContextProviders.tsx             |     5 +-
 superset-frontend/src/views/index.tsx              |    10 +-
 superset-frontend/src/views/menu.tsx               |    46 +-
 superset-frontend/src/views/store.ts               |    14 +
 superset-frontend/webpack.config.js                |    24 +-
 superset-frontend/webpack.proxy-config.js          |     4 +-
 superset-websocket/package-lock.json               |   576 +-
 superset-websocket/package.json                    |     8 +-
 superset/commands/dashboard/update.py              |     4 +
 superset/commands/database/tables.py               |     4 +-
 .../commands/datasource}/__init__.py               |     0
 superset/commands/datasource/list.py               |   245 +
 superset/commands/explore/get.py                   |     6 +-
 superset/commands/importers/v1/assets.py           |    86 +-
 superset/commands/report/execute.py                |    59 +-
 .../commands/semantic_layer}/__init__.py           |     0
 superset/commands/semantic_layer/create.py         |   104 +
 superset/commands/semantic_layer/delete.py         |   115 +
 superset/commands/semantic_layer/exceptions.py     |    76 +
 superset/commands/semantic_layer/update.py         |   126 +
 superset/common/query_object.py                    |    34 +-
 superset/config.py                                 |     5 +
 superset/connectors/sqla/models.py                 |    27 +-
 superset/core/api/core_api_injection.py            |    35 +
 superset/daos/chart.py                             |    50 +-
 superset/daos/dashboard.py                         |    24 +-
 superset/daos/dataset.py                           |    25 +-
 superset/daos/datasource.py                        |   160 +-
 superset/daos/semantic_layer.py                    |   220 +
 superset/dashboards/permalink/types.py             |     6 +-
 superset/databases/schemas.py                      |     3 +
 superset/datasets/datetime_format_detector.py      |    11 +-
 superset/datasource/api.py                         |   183 +-
 superset/datasource/schemas.py                     |   155 +
 superset/db_engine_specs/base.py                   |     9 +-
 superset/db_engine_specs/gsheets.py                |     4 +-
 superset/db_engine_specs/lib.py                    |    10 +
 superset/db_engine_specs/mysql.py                  |     9 +-
 superset/db_engine_specs/presto.py                 |     4 +
 superset/db_engine_specs/ydb.py                    |     1 +
 superset/explorables/base.py                       |   168 +-
 superset/importexport/api.py                       |    11 +
 superset/initialization/__init__.py                |    11 +-
 superset/mcp_service/CLAUDE.md                     |    19 +-
 superset/mcp_service/app.py                        |    43 +-
 superset/mcp_service/auth.py                       |     9 +
 superset/mcp_service/chart/ascii_charts.py         |    43 +-
 superset/mcp_service/chart/compile.py              |   362 +
 superset/mcp_service/chart/schemas.py              |   268 +-
 superset/mcp_service/chart/tool/generate_chart.py  |   165 +-
 superset/mcp_service/chart/tool/get_chart_data.py  |   233 +-
 superset/mcp_service/chart/tool/get_chart_info.py  |    44 +-
 .../mcp_service/chart/tool/get_chart_preview.py    |   114 +-
 superset/mcp_service/chart/tool/get_chart_sql.py   |   225 +-
 .../chart/tool/get_chart_type_schema.py            |    25 +-
 superset/mcp_service/chart/tool/list_charts.py     |    28 +-
 superset/mcp_service/chart/tool/update_chart.py    |   121 +-
 .../mcp_service/chart/tool/update_chart_preview.py |   117 +-
 .../chart/validation/dataset_validator.py          |   161 +-
 superset/mcp_service/chart/validation/pipeline.py  |    22 +-
 superset/mcp_service/common/cache_schemas.py       |    67 +-
 superset/mcp_service/dashboard/schemas.py          |   293 +-
 .../dashboard/tool/get_dashboard_info.py           |    52 +-
 .../mcp_service/dashboard/tool/list_dashboards.py  |    28 +-
 superset/mcp_service/database/schemas.py           |     7 +-
 .../mcp_service/database/tool/list_databases.py    |     1 +
 superset/mcp_service/dataset/schemas.py            |   347 +-
 superset/mcp_service/dataset/tool/__init__.py      |     2 +
 .../dataset/tool/create_virtual_dataset.py         |     2 +-
 superset/mcp_service/dataset/tool/list_datasets.py |    21 +-
 superset/mcp_service/dataset/tool/query_dataset.py |   489 +
 .../explore/tool/generate_explore_link.py          |    80 +-
 superset/mcp_service/mcp_config.py                 |    10 +-
 superset/mcp_service/mcp_core.py                   |   222 +-
 superset/mcp_service/middleware.py                 |   134 +-
 superset/mcp_service/privacy.py                    |    31 +
 superset/mcp_service/server.py                     |    38 +-
 superset/mcp_service/sql_lab/schemas.py            |     8 +
 superset/mcp_service/sql_lab/tool/execute_sql.py   |    24 +-
 .../sql_lab/tool/open_sql_lab_with_context.py      |    88 +-
 superset/mcp_service/system/schemas.py             |    87 +-
 superset/mcp_service/system/tool/__init__.py       |     2 +
 .../mcp_service/system/tool/generate_bug_report.py |   325 +
 superset/mcp_service/system/tool/get_schema.py     |     2 +-
 superset/mcp_service/utils/__init__.py             |     5 +
 superset/mcp_service/utils/sanitization.py         |   136 +
 superset/mcp_service/utils/schema_utils.py         |     5 +-
 superset/mcp_service/utils/token_utils.py          |    93 +-
 ...6_33d7e0e21daa_add_semantic_layers_and_views.py |   168 +
 superset/models/helpers.py                         |    34 +-
 superset/models/sql_lab.py                         |    21 +-
 superset/queries/api.py                            |     1 +
 superset/queries/schemas.py                        |     1 +
 superset/security/manager.py                       |   318 +-
 .../semantic_layers}/__init__.py                   |     0
 superset/semantic_layers/api.py                    |  1147 +
 superset/semantic_layers/labels.py                 |   105 +
 superset/semantic_layers/mapper.py                 |   912 +
 superset/semantic_layers/models.py                 |   556 +
 .../utils.py => semantic_layers/registry.py}       |     9 +-
 superset/semantic_layers/schemas.py                |    45 +
 superset/sql/dialects/__init__.py                  |    11 +-
 superset/sql/dialects/opensearch.py                |     6 +-
 superset/sql/dialects/vertica.py                   |    87 +
 superset/sql/parse.py                              |     7 +-
 superset/superset_typing.py                        |    51 +-
 superset/tasks/async_queries.py                    |     5 +
 superset/tasks/cache.py                            |     2 +-
 superset/templates/superset/spa.html               |     7 +
 .../{ca => cs}/LC_MESSAGES/messages.po             | 11114 ++---
 superset/translations/ja/LC_MESSAGES/messages.po   |  7284 ++-
 .../{de => lv}/LC_MESSAGES/messages.po             | 11682 +++--
 .../translations/pt_BR/LC_MESSAGES/messages.po     |  3835 +-
 superset/translations/ru/LC_MESSAGES/messages.po   |   733 +-
 superset/translations/uk/LC_MESSAGES/messages.po   | 10465 ++--
 superset/utils/cache_keys.py                       |    54 +
 superset/utils/core.py                             |    37 +-
 superset/views/core.py                             |    11 +-
 superset/viz.py                                    |    25 +
 tests/integration_tests/charts/api_tests.py        |     6 +-
 tests/integration_tests/core_tests.py              |    55 +-
 .../dashboards/test_update_emoji.py                |   111 +
 tests/integration_tests/databases/api_tests.py     |     8 +
 tests/integration_tests/datasource/api_tests.py    |    52 +
 tests/integration_tests/queries/api_tests.py       |    80 +
 tests/integration_tests/query_context_tests.py     |   226 +-
 tests/integration_tests/strategy_tests.py          |    20 +-
 tests/integration_tests/viz_tests.py               |    39 +
 tests/unit_tests/commands/databases/tables_test.py |    72 +
 .../unit_tests/commands/datasource}/__init__.py    |     0
 tests/unit_tests/commands/datasource/list_test.py  |   162 +
 .../commands/importers/v1/assets_test.py           |   335 +-
 tests/unit_tests/commands/report/execute_test.py   |   111 +
 .../commands/semantic_layer}/__init__.py           |     0
 .../commands/semantic_layer/create_test.py         |   230 +
 .../commands/semantic_layer/delete_test.py         |   164 +
 .../commands/semantic_layer/exceptions_test.py     |    91 +
 .../commands/semantic_layer/update_test.py         |   326 +
 .../common/test_query_context_processor.py         |   227 +
 tests/unit_tests/databases/api_test.py             |     2 +
 .../datasets/test_datetime_format_detector.py      |    57 +
 tests/unit_tests/datasource/dao_tests.py           |    29 +
 tests/unit_tests/db_engine_specs/test_gsheets.py   |    31 +
 tests/unit_tests/db_engine_specs/test_mysql.py     |    41 +
 tests/unit_tests/db_engine_specs/test_presto.py    |    44 +
 tests/unit_tests/db_engine_specs/test_trino.py     |    44 +
 tests/unit_tests/extension_tests.py                |    47 +
 tests/unit_tests/importexport/api_test.py          |    54 +-
 .../mcp_service/chart/test_ascii_charts.py         |   175 +
 .../mcp_service/chart/test_chart_schemas.py        |    66 +-
 tests/unit_tests/mcp_service/chart/test_compile.py |   445 +
 .../mcp_service/chart/tool/test_generate_chart.py  |   119 +-
 .../mcp_service/chart/tool/test_get_chart_data.py  |   132 +-
 .../mcp_service/chart/tool/test_get_chart_info.py  |    92 +
 .../chart/tool/test_get_chart_preview.py           |   397 +-
 .../mcp_service/chart/tool/test_get_chart_sql.py   |   539 +-
 .../chart/tool/test_get_chart_type_schema.py       |    18 +
 .../mcp_service/chart/tool/test_list_charts.py     |    12 +
 .../mcp_service/chart/tool/test_update_chart.py    |   201 +-
 .../chart/tool/test_update_chart_preview.py        |   383 +-
 .../validation/test_column_name_normalization.py   |    13 +
 .../validation/test_pipeline_error_surface.py      |    11 +-
 .../dashboard/test_dashboard_schemas.py            |    82 +-
 .../dashboard/tool/test_dashboard_tools.py         |   416 +-
 .../database/tool/test_database_tools.py           |    47 +-
 .../mcp_service/dataset/tool/test_dataset_tools.py |   308 +-
 .../mcp_service/dataset/tool/test_query_dataset.py |   831 +
 .../explore/tool/test_generate_explore_link.py     |   131 +
 .../mcp_service/sql_lab/tool/test_execute_sql.py   |    99 +
 .../sql_lab/tool/test_open_sql_lab_with_context.py |   305 +
 .../system/tool/test_generate_bug_report.py        |   455 +
 .../system/tool/test_get_current_user.py           |     4 +-
 .../mcp_service/system/tool/test_mcp_core.py       |   194 +
 .../mcp_service/test_auth_user_resolution.py       |    37 +
 tests/unit_tests/mcp_service/test_mcp_core.py      |   314 +
 tests/unit_tests/mcp_service/test_middleware.py    |   329 +-
 .../mcp_service/test_tool_search_transform.py      |     2 +-
 .../mcp_service/utils/test_sanitization.py         |   346 +
 .../mcp_service/utils/test_token_utils.py          |    64 +-
 tests/unit_tests/models/core_test.py               |     6 +-
 tests/unit_tests/models/helpers_test.py            |   394 +
 tests/unit_tests/queries/query_object_test.py      |    55 +-
 tests/unit_tests/security/api_test.py              |     2 +-
 tests/unit_tests/semantic_layers/api_test.py       |  2321 +
 tests/unit_tests/semantic_layers/dao_test.py       |    85 +
 .../unit_tests/semantic_layers/decorators_test.py  |   103 +
 tests/unit_tests/semantic_layers/labels_test.py    |    52 +
 tests/unit_tests/semantic_layers/mapper_test.py    |  2743 ++
 tests/unit_tests/semantic_layers/models_test.py    |  1267 +
 tests/unit_tests/semantic_layers/schemas_test.py   |   296 +
 tests/unit_tests/sql/dialects/opensearch_tests.py  |    81 +-
 tests/unit_tests/sql/dialects/vertica_tests.py     |   197 +
 tests/unit_tests/sql/transpile_to_dialect_test.py  |   124 +
 tests/unit_tests/sql_lab_test.py                   |     2 +-
 tests/unit_tests/tasks/test_async_queries.py       |   174 +-
 tests/unit_tests/test_viz_cache_key.py             |   111 +
 tests/unit_tests/test_viz_get_df_payload.py        |   111 +
 tests/unit_tests/utils/test_core.py                |    42 +
 .../utils/test_impersonation_cache_key.py          |   107 +
 743 files changed, 95967 insertions(+), 58850 deletions(-)
 create mode 100644 docs/docs/using-superset/handlebars-chart.mdx
 create mode 100644 docs/src/components/GetStartedSplitButton.tsx
 create mode 100644 docs/src/theme/NavbarItem/ComponentTypes.tsx
 copy superset-frontend/src/dashboard/util/componentIsResizable.ts => 
docs/src/theme/NavbarItem/GetStartedSplitNavbarItem.tsx (73%)
 create mode 100644 superset-core/src/superset_core/semantic_layers/config.py
 create mode 100644 superset-core/src/superset_core/semantic_layers/daos.py
 create mode 100644 
superset-core/src/superset_core/semantic_layers/decorators.py
 create mode 100644 superset-core/src/superset_core/semantic_layers/layer.py
 create mode 100644 superset-core/src/superset_core/semantic_layers/models.py
 create mode 100644 superset-core/src/superset_core/semantic_layers/types.py
 create mode 100644 superset-core/src/superset_core/semantic_layers/view.py
 create mode 100644 
superset-frontend/packages/superset-ui-chart-controls/test/shared-controls/matrixifyControls.test.tsx
 create mode 100644 
superset-frontend/packages/superset-ui-core/src/components/DynamicEditableTitle/DynamicEditableTitle.regression.test.tsx
 delete mode 100644 superset-frontend/playwright/fixtures/dataset_export.zip
 create mode 100644 
superset-frontend/playwright/generators/docs/screenshot-manifest.yaml
 copy superset-frontend/playwright/helpers/api/{savedQuery.ts => sqllab.ts} 
(56%)
 create mode 100644 
superset-frontend/playwright/tests/dashboard/clear-all-filters.spec.ts
 create mode 100644 
superset-frontend/plugins/plugin-chart-ag-grid-table/src/utils/htmlTextFilterValueGetter.test.ts
 create mode 100644 
superset-frontend/plugins/plugin-chart-ag-grid-table/src/utils/htmlTextFilterValueGetter.ts
 create mode 100644 
superset-frontend/plugins/plugin-chart-ag-grid-table/test/memoization.test.ts
 delete mode 100644 superset-frontend/plugins/plugin-chart-handlebars/README.md
 create mode 100644 
superset-frontend/plugins/plugin-chart-handlebars/test/plugin/controls.test.ts
 copy 
superset-frontend/{packages/superset-ui-core/src/components/Slider/Slider.test.tsx
 => 
src/explore/components/controls/ColumnConfigControl/ColumnConfigConstants.test.tsx}
 (59%)
 create mode 100644 
superset-frontend/src/features/cssTemplates/CssTemplateModal.test.tsx
 copy 
superset-frontend/src/{components/ErrorMessage/DatasetNotFoundErrorMessage.test.tsx
 => features/datasets/AddDataset/DatasetPanel/DatasetPanelWrapper.test.tsx} 
(53%)
 create mode 100644 
superset-frontend/src/features/semanticLayers/SemanticLayerModal.test.tsx
 create mode 100644 
superset-frontend/src/features/semanticLayers/SemanticLayerModal.tsx
 create mode 100644 
superset-frontend/src/features/semanticLayers/jsonFormsHelpers.test.ts
 create mode 100644 
superset-frontend/src/features/semanticLayers/jsonFormsHelpers.tsx
 create mode 100644 superset-frontend/src/features/semanticLayers/label.ts
 create mode 100644 
superset-frontend/src/features/semanticViews/AddSemanticViewModal.test.tsx
 create mode 100644 
superset-frontend/src/features/semanticViews/AddSemanticViewModal.tsx
 create mode 100644 
superset-frontend/src/features/semanticViews/SemanticViewEditModal.test.tsx
 create mode 100644 
superset-frontend/src/features/semanticViews/SemanticViewEditModal.tsx
 copy {superset-core/src/superset_core/common => 
superset/commands/datasource}/__init__.py (100%)
 create mode 100644 superset/commands/datasource/list.py
 copy {superset-core/src/superset_core/common => 
superset/commands/semantic_layer}/__init__.py (100%)
 create mode 100644 superset/commands/semantic_layer/create.py
 create mode 100644 superset/commands/semantic_layer/delete.py
 create mode 100644 superset/commands/semantic_layer/exceptions.py
 create mode 100644 superset/commands/semantic_layer/update.py
 create mode 100644 superset/daos/semantic_layer.py
 create mode 100644 superset/datasource/schemas.py
 create mode 100644 superset/mcp_service/chart/compile.py
 create mode 100644 superset/mcp_service/dataset/tool/query_dataset.py
 create mode 100644 superset/mcp_service/system/tool/generate_bug_report.py
 create mode 100644 
superset/migrations/versions/2025-11-04_11-26_33d7e0e21daa_add_semantic_layers_and_views.py
 copy {superset-core/src/superset_core/common => 
superset/semantic_layers}/__init__.py (100%)
 create mode 100644 superset/semantic_layers/api.py
 create mode 100644 superset/semantic_layers/labels.py
 create mode 100644 superset/semantic_layers/mapper.py
 create mode 100644 superset/semantic_layers/models.py
 copy superset/{temporary_cache/utils.py => semantic_layers/registry.py} (84%)
 create mode 100644 superset/semantic_layers/schemas.py
 create mode 100644 superset/sql/dialects/vertica.py
 copy superset/translations/{ca => cs}/LC_MESSAGES/messages.po (50%)
 copy superset/translations/{de => lv}/LC_MESSAGES/messages.po (50%)
 create mode 100644 superset/utils/cache_keys.py
 create mode 100644 tests/integration_tests/dashboards/test_update_emoji.py
 copy {superset-core/src/superset_core/common => 
tests/unit_tests/commands/datasource}/__init__.py (100%)
 create mode 100644 tests/unit_tests/commands/datasource/list_test.py
 copy {superset-core/src/superset_core/common => 
tests/unit_tests/commands/semantic_layer}/__init__.py (100%)
 create mode 100644 tests/unit_tests/commands/semantic_layer/create_test.py
 create mode 100644 tests/unit_tests/commands/semantic_layer/delete_test.py
 create mode 100644 tests/unit_tests/commands/semantic_layer/exceptions_test.py
 create mode 100644 tests/unit_tests/commands/semantic_layer/update_test.py
 create mode 100644 tests/unit_tests/mcp_service/chart/test_ascii_charts.py
 create mode 100644 tests/unit_tests/mcp_service/chart/test_compile.py
 create mode 100644 
tests/unit_tests/mcp_service/dataset/tool/test_query_dataset.py
 create mode 100644 
tests/unit_tests/mcp_service/sql_lab/tool/test_open_sql_lab_with_context.py
 create mode 100644 
tests/unit_tests/mcp_service/system/tool/test_generate_bug_report.py
 create mode 100644 tests/unit_tests/mcp_service/test_mcp_core.py
 create mode 100644 tests/unit_tests/semantic_layers/api_test.py
 create mode 100644 tests/unit_tests/semantic_layers/dao_test.py
 create mode 100644 tests/unit_tests/semantic_layers/decorators_test.py
 create mode 100644 tests/unit_tests/semantic_layers/labels_test.py
 create mode 100644 tests/unit_tests/semantic_layers/mapper_test.py
 create mode 100644 tests/unit_tests/semantic_layers/models_test.py
 create mode 100644 tests/unit_tests/semantic_layers/schemas_test.py
 create mode 100644 tests/unit_tests/sql/dialects/vertica_tests.py
 create mode 100644 tests/unit_tests/test_viz_cache_key.py
 create mode 100644 tests/unit_tests/test_viz_get_df_payload.py
 create mode 100644 tests/unit_tests/utils/test_impersonation_cache_key.py

Reply via email to