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

github-bot pushed a change to branch 
dependabot/npm_and_yarn/superset-frontend/distributions-2.1.0
in repository https://gitbox.apache.org/repos/asf/superset.git


 discard 29ba9d2d25 build(deps): bump distributions in /superset-frontend
     add d5814003dd chore: update redis to >= 4.6.0 (#27250)
     add ad6327db95 fix: Migration for single metric in Big Number with Time 
Comparison (#27351)
     add 7353055e45 chore(docs): remove filterbox section from Exploring docs 
page (#27356)
     add 60c486a8af build(deps): bump @ant-design/icons from 5.3.0 to 5.3.1 in 
/docs (#27331)
     add ae8ec9c2b4 fix(sqllab): Missing empty query result state (#27313)
     add fe2f5a7be9 fix: Heatmap numeric sorting (#27360)
     add 8a46694ce9 fix: Missing SQL Lab permission (#27361)
     add f453d5d7e7 chore: numexpr to fix CVE-2023-39631⁠ (2.8.4 => 2.9.0) 
(#27187)
     add 5915851ba3 fix(deps): resolving canvg and html2canvas module not found 
(#27315)
     add ecaf201fd0 build(deps): bump express from 4.18.2 to 4.18.3 in 
/superset-websocket/utils/client-ws-app (#27337)
     add aca1d107a9 build(deps): bump react-lines-ellipsis from 0.15.0 to 
0.15.4 in /superset-frontend (#27342)
     add 3b18706d45 build(deps-dev): bump prettier from 3.2.4 to 3.2.5 in 
/superset-websocket (#27328)
     add e89ec4d593 feat: datediff in datetime_parser (#27368)
     add 2c00cc534c feat: support to fetch multiple date time in time_range 
endpoint (#27370)
     add 5de2530e3c feat: Responsive UI for Big Number with Time Comparison 
(#27375)
     add 231e659b56 fix: Results section in Explore shows an infinite spinner 
(#27366)
     add 32179f1a85 fix(Alerts & Reports): Fixing bug that resets cron value to 
default when empty   (#27262)
     add 06cfd97bb9 build(deps-dev): bump @typescript-eslint/eslint-plugin from 
5.61.0 to 5.62.0 in /superset-websocket (#27324)
     add 42eeaad25d build(deps-dev): bump @types/jsonwebtoken from 9.0.5 to 
9.0.6 in /superset-websocket (#27325)
     add d2f7dec208 feat: Add repo activity stats to README.md (#27372)
     add 721977a474 docs(import_datasources): Remove legacy documentation and 
update current use (#27290)
     add a3d2e0bf44 fix: improve explore REST api validations (#27395)
     add a4c771e013 fix: Allow only dttm columns in comparison filter in Period 
over Period chart (#27209)
     add 69d870cb7a feat(translations): Turkish translation files added (#27244)
     add 66bf70172f fix(API): Updating assets via the API should preserve 
ownership configuration (#27364)
     add 5107cc0fd9 fix(sqllab): Close already removed tab (#27391)
     add a54a24e3b5 fix: Re-enable CI checks on release branches (#27390)
     add ce0b70cc86 fix: typescript errors in 4.0 (#27402)
     add 9ced2552db fix: missing shared color in mixed timeseries (#27403)
     add fde93dcf08 fix(dashboard): Only fetch CSS templates for dashboard 
header menu when in edit mode (#27411)
     add 89e89de341 fix: SSH Tunnel configuration settings  (#27186)
     add 372cac9527 chore: upgrade setuptools/pip in Dockerfile (#27405)
     add 91781ca045 build(deps): bump @storybook/types from 7.6.13 to 7.6.17 in 
/superset-frontend (#27347)
     add 6f1cbfa12d build(deps-dev): bump @types/node from 20.11.16 to 20.11.24 
in /superset-websocket (#27326)
     add b1adede1ee feat: docker-compose to work off repo Dockerfile (#27434)
     add fbc8943fbd feat: show more information when loading chart (#27255)
     add 2a5b5fe049 build(deps-dev): bump eslint from 8.56.0 to 8.57.0 in 
/superset-websocket (#27327)
     add 6a7e5c2faf chore: add unit test for `values_for_column` (#27469)
     add 47ae9d4cc3 fix(webpack): remove double-dotted file extensions in 
webpack config (#27471)
     add 85d0d88fc2 test(Migration to RTL): Refactor ChartTable.test.tsx from 
Enzyme to RTL (#27429)
     add 735b895dd5 fix: check if guest user modified query (#27484)
     add a75bb7685d chore: Add an extension for Home submenu (#27480)
     add 26d8077e97 chore: improve SQL parsing (#26767)
     add 24cb06285c feat(supersetbot): introduce `supersetbot` as its own npm 
package, CLI and comment-operated bot (#27046)
     add 2fdf6d7b64 fix: docker builds in master fail (#27503)
     add fb39951d2a chore(docs): relocating the edit page button a tad. (#27486)
     add 2948abc55e fix: master docker build is broken (#27507)
     add 6e22275c26 fix: another attempt at fixing docker master builds (#27514)
     add 16fcdb1ff3 fix: master build 4th attempt (#27515)
     add 7f19d296b1 fix(postprocessing): resample with holes (#27487)
     add 6b529a4b68 feat: Add Turkey's regions to country map visualization 
(#27455)
     add d2c90013fc fix(big-number-chart): number format is not applying to 
percentage number of the time comparison (#27502)
     add 024b88a40d chore: add annotations to `sql_parse.py` (#27520)
     add 30e7ad929e build(deps): bump follow-redirects from 1.15.4 to 1.15.6 in 
/docs (#27517)
     add b8f4d8099f build(deps-dev): bump follow-redirects from 1.15.4 to 
1.15.6 in /superset-embedded-sdk (#27516)
     add 05d97b02e3 build(deps-dev): bump follow-redirects from 1.15.4 to 
1.15.6 in /superset-frontend (#27518)
     add 13b6489b37 chore(docs): fix last broken Slack join link in docs 
(#27533)
     add ad9024b040 fix(alerts/reports): implementing custom_width as an Antd 
number input (#27260)
     add ae294274c7 feat(plugins):  add color options for big number with time 
comparison (#27524)
     add 1c155e8591 fix(explore): Allow only saved metrics and columns (#27539)
     add d820c9c2ff fix: typo in configuring-superset.mdx (#27541)
     add 36fd3c0bf8 feat: `improve _extract_tables_from_sql` (#26748)
     add 376bfd05bd fix: pass valid SQL to SM (#27464)
     add f4bdcb5743 perf(sqllab): reduce bootstrap data delay by queries 
(#27488)
     add 56a6660c16 chore: 2nd try - simplify python dependencies (#27505)
     add 8341afbcf0 chore(helm): Bumping app version to 3.1.1 in helm chart 
(#27569)
     add 36290ce72f fix: guest queries (#27566)
     add 86aa8bde8b feat(maps): Add Italy regions code to the map generator 
notebook (#27542)
     add ad7bd09819 chore: Update required jobs in asf.yml (#27574)
     add d5680ad376 feat(supersetbot): label PRs and issues with author's 
public org (#27571)
     add 5e8459bb91 fix: Hive integration test (#27523)
     add d0d9fc5bdf fix: bump sqlglot to support materialized CTEs (#27576)
     add f274c4785d fix: skip another Hive test (#27595)
     add 718cd64657 fix: Skips Hive tests that are blocking PRs (#27605)
     add e32b1c861f docs: make k8s top item in Installation section (#27540)
     add fcceaf081c fix(db_engine_specs): Update convert_dttm to work correctly 
with CrateDB (#27567)
     add 6e528426dd feat: Adds option to disable drill to detail per database 
(#27536)
     add 6f3afab01d fix(docker): error around missing requirements/base.txt 
(#27608)
     add 72a41c1642 fix: sqlglot SQL Server (#27577)
     add bfe55b9ded fix: Volatile datasource ordering in dashboard export 
(#19595)
     add d4d8625ab8 fix(utils): fix off-by-one error in how rolling window's 
min_periods truncates dataframe (#27388)
     add a8c01f4cad build(deps-dev): bump webpack-dev-middleware from 5.3.3 to 
5.3.4 in /superset-frontend (#27610)
     add b25dd0c055 fix(sql_parse): Ensure table extraction handles Jinja 
templating (#27470)
     add 842b0939f6 fix(Dashboard): Add editMode conditional for translate3d 
fix on charts to allow intended Fullscreen (#27613)
     add a47469f4c5 chore(examples): organizing example chart yaml files into 
dashboard folders (#27572)
     add ec6bfcbaa0 chore(docs): clarifying doc comments about LOGO_TARGET_PATH 
(#27579)
     add 8a715cc1b5 feat(bar_chart): Stacked Bar chart with Time comparison in 
separated stacks (#27589)
     add 5083ca0e81 fix: Persist query params appended to permalink (#27601)
     add cd7972d05b feat: support for KQL in `SQLScript` (#27522)
     add 30b497e758 feat(alerts-reports): adding pdf filetype to email and 
slack reports (#27497)
     add 0f6e4041c7 fix(AlertReports): clearing custom_width when disabled 
(#27551)
     add 3f073dcd98 refactor: Migrate CopyToClipboard to typescript (#27309)
     add 20007355d1 fix(dashboard,css): center align 'waiting on database' 
(#27611)
     add bcfb8f4349 build(deps): bump webpack-dev-middleware from 5.3.1 to 
5.3.4 in /docs (#27609)
     add f94f08eddd docs: updates list of countries in country-map-tools.mdx 
(#27596)
     add 0df7832639 chore: replace "dashboard" -> "report" in chart email 
report modal (#25540)
     add 22e823b5f9 build(deps-dev): bump webpack from 5.90.1 to 5.91.0 in 
/docs (#27626)
     add 235670244e test(Migration to RTL): Refactor ActivityTable.test.tsx 
from Enzyme to RTL (#27422)
     add d87422527b feat(jinja): metric macro (#27582)
     add 33c2d98e66 feat: use the local supersetbot (#27615)
     add a2fd83367e refactor: Migrate CssEditor to typescript (#27498)
     add 4fce940a9c fix(AlertReports): defaulting grace period to undefined 
(#27552)
     add 560097931d chore(🤖): bump python "markdown==3.6" (#27649)
     add b07c07de05 build(deps): bump express from 4.18.2 to 4.19.2 in /docs 
(#27652)
     add bd281ee51c build(deps): bump express from 4.18.3 to 4.19.2 in 
/superset-websocket/utils/client-ws-app (#27651)
     add a19398445b build(deps-dev): bump express from 4.17.3 to 4.19.2 in 
/superset-frontend (#27653)
     add 4720b4f0e6 chore(🤖): bump python "alembic==1.13.1" (#27650)
     add 6aee58fad6 chore: fix master builds + bump python library 
"cryptography" (#27641)
     add cf010b63e3 chore(🤖): bump python "sqlalchemy==1.4.52" (#27655)
     add ce210eebde fix(Chart Annotation modal): Table and Superset annotation 
options will paginate, exceeding previous max limit 100 (#27022)
     add fa3fea9dd8 fix(sqllab): unable to remove table (#27636)
     add ed9e542781 fix(AlertReports): disabling value when not null option is 
active (#27550)
     add 28cbedb82f fix: Leverage actual database for rendering Jinjarized SQL 
(#27646)
     add 12921e6ec3 chore(🤖): bump python "flask==2.3.3" (#27657)
     add 3ae74d1f2d fix: Provide more inclusive error handling for saved 
queries (#27644)
     add 46fcfd80d7 chore(🦾): bump python "pyarrow==14.0.2" (#27684)
     add 2c833b507c chore(🦾): bump python "polyline==2.0.2" (#27681)
     add 9960c78923 chore(🦾): bump python "click==8.1.7" (#27682)
     add a0cf91dad0 chore(🦾): bump python "croniter==2.0.3" (#27693)
     add c2183e47ec chore(🦾): bump python "pyparsing==3.1.2" (#27692)
     add 4b971ec7a9 chore(🦾): bump python "backoff==2.2.1" (#27698)
     add 349e496da5 chore(🦾): bump python "geopy==2.4.1" (#27699)
     add 6db94e98b5 other: Add TechAuditBI to supersetbot metadata.js (#27634)
     add 47adcd7f32 chore(🦾): bump python "wtforms==3.1.2" (#27688)
     add 86bd7a93b5 chore(🦾): bump python "msgpack==1.0.8" (#27696)
     add a48f770195 chore: bump pylint (#27711)
     add 7369754192 fix(explore): drag and drop indicator UX (#27558)
     add 7b44b8b7e1 chore(🦾): bump python "isodate==0.6.1" (#27680)
     add c73b24ad08 chore(🦾): bump python "nh3==0.2.17" (#27687)
     add 38eecfc5d4 perf(explore): virtualized datasource field sections 
(#27625)
     add 585144578e chore(🦾): bump python "sqlalchemy==1.4.52" (#27695)
     add 528946d3cc fix: Revert "chore: bump pylint (#27711)" (#27714)
     add 883e455e12 fix: Pylint errors on master (#27710)
     add bccd654b01 chore(🦾): bump python thrift 0.16.0 -> 0.20.0 (#27730)
     add 40a4806857 chore(🦾): bump python pydruid 0.6.5 -> 0.6.6 (#27731)
     add 5dbee13b3e chore(🦾): bump python playwright 1.41.2 -> 1.42.0 (#27726)
     add 0c192232ca chore(🦾): bump python typing-extensions 4.4.0 -> 4.10.0 
(#27742)
     add 0710242f22 chore(🦾): bump python click-option-group 0.5.5 -> 0.5.6 
(#27741)
     add c9d98a5679 chore(🦾): bump python pyjwt 2.4.0 -> 2.8.0 (#27737)
     add 1e3393cfa0 chore(🦾): bump python python-dateutil 2.8.2 -> 2.9.0.post0 
(#27736)
     add 2ed5a346c4 chore(🦾): bump python mako 1.2.4 -> 1.3.2 (#27735)
     add bc62a80b8c chore(🦾): bump python tabulate 0.8.9 -> 0.8.10 (#27733)
     add fa76262b01 chore(🦾): bump python tableschema 1.20.2 -> 1.20.10 (#27732)
     add e5ebfd5c50 chore(🦾): bump python sqlalchemy-bigquery 1.6.1 -> 1.10.0 
(#27727)
     add 34dca0eb31 chore(🦾): bump python mysqlclient 2.1.0 -> 2.2.4 (#27729)
     add a4c5446d2f chore(🦾): bump python flask-compress 1.13 -> 1.14 (#27740)
     add 96dde34cdc chore(🦾): bump python gevent 23.9.1 -> 24.2.1 (#27728)
     add 9065a4e7d2 chore(🦾): bump python google-cloud-bigquery 3.10.0 -> 
3.20.0 (#27752)
     add 70da454bbc fix: reduce alert error to warning (#27744)
     add 6cc1391173 chore(🦾): bump python packaging 23.1 -> 23.2 (#27753)
     add 84b01a312f chore(🦾): bump python flask-talisman 1.0.0 -> 1.1.0 (#27755)
     add 0804c424c0 chore(🦾): bump python humanize 3.11.0 -> 4.9.0 (#27756)
     add 424afe09f5 chore(🦾): bump python sqlglot 23.0.2 -> 23.2.0 (#27749)
     add ca033efc6c chore(🦾): bump python cron-descriptor 1.2.24 -> 1.4.3 
(#27746)
     add fcfdb819f2 chore(🦾): bump python flask-cors 3.0.10 -> 4.0.0 (#27748)
     add 10785e301e chore(🦾): bump python python-dotenv 0.19.0 -> 1.0.1 (#27759)
     add e1e3b99d03 chore(🦾): bump python google-cloud-bigquery 3.10.0 -> 
3.20.0 (#27758)
     add a52f0d6947 chore(🦾): bump python xlsxwriter 3.0.7 -> 3.0.9 (#27747)
     add 951d7d66ac chore(🦾): bump python pandas-gbq 0.19.1 -> 0.22.0 (#27750)
     add bbcb722e50 fix: Removes filter plugins from viz gallery (#27763)
     add d69a1870a0 fix: Select onChange is fired when the same item is 
selected in single mode (#27706)
     add 546d48adbb feat: Adds the ECharts Heatmap chart (#25353)
     add 8ae4662f17 chore(docs): Cleanup UPDATING.md (#27768)
     add fcf90dffa8 feat(db_engine): Add custom_user_agent when connecting to 
MotherDuck (#27665)
     add 79cf2060e5 docs: simplify the Quickstart guide (#27612)
     add c0f8dfc7f9 chore(🦾): bump python thrift 0.16.0 -> 0.20.0 (#27754)
     add 356b0d8ee5 feat: Adds Heatmap chart migration logic (#27771)
     add 5b1d6b2850 fix: Select's storybook (#27785)
     add a23bfeda0a chore: Updates translation owners (#27839)
     add a664e21054 chore(🦾): bump python simplejson 3.17.3 -> 3.19.2 (#27757)
     add ca47717eb0 chore: Adds the 4.0 release notes (#27441)
     add 0d0e47acf7 chore(🦾): bump python flask-session 0.5.0 -> 0.8.0 (#27751)
     add 3e147f8693 fix: alembic's 'superset db migrate' fails with 
CompileError (#27846)
     add 9fece4f811 build(deps): bump actions/github-script from 5 to 7 (#27802)
     add 8bdf457dfa feat(db): Adding DB_SQLA_URI_VALIDATOR (#27847)
     add f25795c4e4 fix(dashboard): missing null check in error extra (#27845)
     add 3a34c7ff7c chore: Bump to Python3.10 (#24112)
     add 9fea3154fa fix: pkg-config dependency in Dockerfile (#27855)
     add 12fe2929a4 fix: row limits & row count labels are confusing (#27700)
     add 48bff6b352 build(deps-dev): bump @tsconfig/docusaurus from 2.0.2 to 
2.0.3 in /docs (#27823)
     add e2b708e8f7 build(deps-dev): bump @docusaurus/module-type-aliases from 
3.1.1 to 3.2.0 in /docs (#27818)
     add 29a5b72d5f build(deps-dev): bump typescript from 5.3.3 to 5.4.3 in 
/docs (#27814)
     add 5603453c18 chore(node): bumping Superset to Node 18 (#27198)
     add 1c742f5866 feat: setup a pyproject.toml (#27859)
     add 5ab95aaf7d chore(sql_parse): Strip leading/trailing whitespace in 
Jinja macro extraction (#27842)
     add fa74d32a6a build(deps): bump @ant-design/icons from 5.3.1 to 5.3.6 in 
/docs (#27819)
     add fdc2dbe7db build(deps-dev): bump react-test-renderer from 16.9.0 to 
16.14.0 in /superset-frontend (#27808)
     add 9022f5c519 feat(SIP-85): OAuth2 for databases (#27631)
     add 8e3cecda9f feat: move supersetbot out of repo (#27647)
     add 59f0057017 build(deps): update xss requirement from ^1.0.14 to ^1.0.15 
in /superset-frontend/plugins/plugin-chart-table (#27835)
     add c990baf96a fix: GHA update-monorepo-lockfiles (#27860)
     add ad752f04c7 docs: small cleanup (#27791)
     add 6683d292ce fix: run pip-compile-multi --no-upgrade (#27861)
     add 08700f8cb9 chore(🦾): bump python pre-commit 3.3.3 -> 3.7.0 (#27865)
     add e39bb57c07 chore(🦾): bump python pillow 10.2.0 -> 10.3.0 (#27873)
     add 9c3915d42c chore(🦾): bump python freezegun 1.2.2 -> 1.4.0 (#27869)
     add 976b098421 chore(🦾): bump python docker 6.1.1 -> 7.0.0 (#27870)
     add 271fbc064e chore(🦾): bump python sqlglot 23.2.0 -> 23.6.3 (#27875)
     add 1d3fdc74dc chore(🦾): bump python sqloxide 0.1.33 -> 0.1.43 (#27871)
     add 9d0928633a chore(🦾): bump python pytest-cov 4.0.0 -> 5.0.0 (#27866)
     add 87e1c3f2fd chore(🦾): bump python google-cloud-bigquery 3.20.0 -> 
3.20.1 (#27868)
     add 6052ef656d chore(🦾): bump python grpcio 1.60.1 -> 1.62.1 (#27872)
     add 208afc96a1 chore(🦾): bump python pyfakefs 5.2.2 -> 5.3.5 (#27874)
     add d318df96ae build(deps): bump dompurify from 2.4.9 to 3.0.11 in 
/superset-frontend/plugins/legacy-preset-chart-nvd3 (#27816)
     add c3149994ac feat(viz picker): Remove some tags, refactor Recommended 
section (#27708)
     add 848a7ffbf3 build(deps): bump @algolia/client-search from 4.22.1 to 
4.23.2 in /docs (#27824)
     add c38529741e chore(sql_parse): Provide more meaningful SQLGlot errors 
(#27858)
     add 6e8ea2753b build(deps-dev): bump @types/redux-mock-store from 1.0.2 to 
1.0.6 in /superset-frontend (#27836)
     add 2a06c08c6b chore(🦾): bump python pylint 2.17.7 -> 3.1.0 (#27867)
     add 24fc2b67d8 chore: Updates CHANGELOG.md with 3.1.2 data (#27878)
     add 30bc8f06dc chore: Default to engine specification regarding using 
wildcard (#27843)
     add a498d6d10f refactor: Move fetchTimeRange to core package (#27852)
     add 1b9e2581d2 build(deps-dev): bump @types/underscore from 1.11.6 to 
1.11.15 in /superset-frontend (#27343)
     add 870e94809c chore(🦾): bump python pytest 7.3.1 -> 7.4.4 (#27864)
     add c661518bb1 build(deps): bump @docsearch/react from 3.5.2 to 3.6.0 in 
/docs (#27813)
     add ebdf1bbdd5 build(deps): update @types/react-table requirement from 
^7.7.19 to ^7.7.20 in /superset-frontend/plugins/plugin-chart-table (#27833)
     add 5cde275965 build(deps-dev): update @types/jest requirement from 
^29.5.11 to ^29.5.12 in /superset-frontend/plugins/plugin-chart-pivot-table 
(#26975)
     add 3f24083ed6 build(deps): bump bootstrap-slider from 10.6.2 to 11.0.2 in 
/superset-frontend/plugins/legacy-preset-chart-deckgl (#27317)
     add 9a4bdeabbd build(deps): update lodash requirement from ^4.17.15 to 
^4.17.21 in /superset-frontend/plugins/legacy-preset-chart-deckgl (#27318)
     add 394abced43 build(deps-dev): update @types/lodash requirement from 
^4.14.202 to ^4.17.0 in /superset-frontend/plugins/plugin-chart-handlebars 
(#27800)
     add 5beda309ab build(deps): bump winston from 3.11.0 to 3.13.0 in 
/superset-websocket (#27804)
     add 27acc0b133 chore: Cleanup table access check naming (#27772)
     add cfa0556df7 fix(bar-chart): change legend padding for horizontal 
orientation (#27883)
     add 949e6b52e6 build(deps): bump fetch-retry from 4.1.1 to 6.0.0 in 
/superset-frontend (#27887)
     add e5837b46e5 build(deps): bump @types/lodash from 4.14.202 to 4.17.0 in 
/superset-websocket (#27805)
     add a9681fa3f3 build(deps-dev): bump @types/node from 20.11.24 to 20.12.4 
in /superset-websocket (#27888)
     add 601432ad82 fix(pylint): Address errors/warnings introduced by #27867 
(#27889)
     add 5ed48760fb chore(sqllab): Do not strip comments when executing SQL 
statements (#27725)
     add ebcf4e044b fix: corrects some inaccuracies zh translation (#27794)
     add 265390c243 fix(Dashboard): Add border to row when hovering HoverMenu 
in edit mode (#27593)
     add fb919c718d docs: replace broken david badges with libraries.io (#27903)
     add 47d629f50c build(deps): update @types/d3-time requirement from ^3.0.0 
to ^3.0.3 in /superset-frontend/packages/superset-ui-core (#27319)
     add 104299a211 build(deps): bump memoize-one from 5.2.1 to 6.0.0 in 
/superset-frontend/packages/superset-ui-demo (#27322)
     add 31d0c542e2 build(deps-dev): bump fork-ts-checker-webpack-plugin from 
5.2.1 to 9.0.2 in /superset-frontend/packages/superset-ui-demo (#27321)
     add 559605e393 fix: add mariadb engine spec same as MySQL (#27919)
     add 3e6d966513 fix(docs): restoring search capability with new public key 
(#27912)
     add bbe209a9e8 build(deps-dev): update @babel/types requirement from 
^7.23.9 to ^7.24.0 in /superset-frontend/plugins/plugin-chart-pivot-table 
(#27334)
     add 62433c14a7 chore(helm): Bumping app version to 3.1.2 in helm chart 
(#27915)
     add 9377227e06 chore(OAuth2): refactor for custom OAuth2 clients (#27880)
     add eda304bda9 chore(explore): Hide non-droppable metric and column list 
(#27717)
     add a1983e468b fix(frontend): allow "constructor" property in response 
data (#25407)
     add 4428bde024 docs: fix broken OS Dependencies link in CONTRIBUTING.md 
(#27932)
     add 662c1ed618 chore: Adds 4.0.0 data to CHANGELOG.md and UPDATING.md 
(#27937)
     add 34b1db219c feat(accessibility): add tabbing to chart menu in dashboard 
(#26138)
     add c5b7f7a08c fix: fix-zh-translation-2 (#27922)
     add 5377b6cb2f fix: docker-release GHA fails with pathspec error (#27925)
     add 996cced3d4 fix: Locale sent to frontend (#27926)
     add 7c8e1bb46e fix(docs): CSP mods to re-enable Algolia search (#27942)
     add e80d194b8f fix: improve change detection for GHAs (#27904)
     add 4ecfce98f6 feat(explore): Clear temporal filter value (#27788)
     add ae0f2ce3c1 fix: useTruncation infinite loop, reenable dashboard cross 
links on ChartList (#27701)
     add 481a63da55 chore(tests): Remove ineffectual login (#27149)
     add 93b83febc2 chore(helm): bumping app version to 4.0.0 in helm chart 
(#27946)
     add a5e65d572a fix(node): missed one bump from node 16 to 18. (#27955)
     add 71d174bad6 build(deps-dev): update @types/mapbox__geojson-extent 
requirement from ^1.0.0 to ^1.0.3 in 
/superset-frontend/plugins/legacy-preset-chart-deckgl (#27810)
     add 4202fba0f1 fix(Dashboard): Add aria-label to filters and search forms 
(#27968)
     add 717a3991f4 fix(asf): removing google hosted analytics and fonts 
(#27963)
     add c5c5f4dbc1 docs(k8s): making it clear users MUST update secrets for 
prod instances. (#27954)
     add 601d011986 fix(node): bump node version in nvmrc files (#27974)
     add 8200261506 chore(docs): adding ASF Privacy Link. (#27975)
     add eb4ca010ae fix(alerts/reports): removing duplicate notification method 
options (#27239)
     add cbfdba2ca6 chore(docs): removing Superset Community Newsletter archive 
(#27977)
     add 9423d59132 chore(docs): remove seemingly unused unpkg domain from CSPs 
(#27976)
     add dea430649d chore: [proposal] de-matrix python-version in GHAs (#27906)
     add a6d16ed477 docs: deploy docs when merging to master (#27956)
     add a29cdefedf chore(ci): make pre-commit step faster by skipping superset 
install (#27979)
     add cd136ad847 feat: GHA to bump python packages using supersetbot (#27863)
     add 9998a11fdd chore: remove no-op.yml as it's not needed anymore (#27980)
     add aef325a416 feat(alert report tabs): adding feature flag (#27773)
     add 7e679d56ea fix(superset-frontend): remove unused 
`@superset-ui/plugin-chart-period-over-period-kpi` package (#27994)
     add 4f363e1180 feat: add option to disable rendering of html in sql lab 
and table chart (#27969)
     add 35c8b7a162 fix(drillby): Enable DrillBy in charts w/o filters 
(dimensions) (#27941)
     add 02b69709bb fix(docs): add missing code formatting, fix broken link 
(#27992)
     add 6844735a45 fix(time_offset): improved LIMIT-handling in advanced 
analytics (#27934)
     add 06077d42a8 fix: Incorrect onChange value when an unloaded value is 
pasted into AsyncSelect (#27996)
     add 99a1601aea refactor: rename get_sqla_engine_with_context (#28012)
     add 8afe973968 chore: Revert "chore(ci): make pre-commit step faster by 
skipping superset install" (#27999)
     add 40e77be813 feat: optimize docker-compose up for faster boot time 
(#27953)
     add 54387b4589 feat: new CSV upload form and API (#27840)
     add caad29b5b3 fix: Select is accepting unknown pasted values when 
`allowNewOptions` is false (#28017)
     add 08aaebbf7c feat(dbview): Add token request button to DuckDB and 
MotherDuck database modal (#27908)
     add 2a62c40526 chore(Dashboard): Accessibility filters Popover (#28015)
     add 8538796128 docs: Updated NOTICE to 2024 (#28040)
     add 0c12369084 fix: support docker/.env-local for docker-compose (#28039)
     add 99c414e4da fix: bump client side chart timeouts to use the 
SUPERSET_WEBSERVER_TIMEOUT (#28018)
     add c225e17a75 chore: consolidate the Superset python package metadata 
(#27884)
     add de9daf7ad9 chore: stabilize MySQL tests by aligning isolation levels 
(#28028)
     add 4b0452b87b chore(docs): disable bugherd for now (#28045)
     add 6e01a68276 fix: Dynamic filter does not show all values on blur/clear 
events (#28036)
     add e9c0ca545f feat: Slack Avatar integration (#27849)
     add aab645e01c chore: Updates release related assets (#28041)
     add 181a901f75 chore(ASF): adds DOAP file and bumping apache-rat (#27978)
     add 5a9ddbba2e docs: move mp4 video to superset-site/tree/lfs (#27998)
     add 89da4f82d3 fix(Dashboard): Support "Edit chart" click on a new window 
(#28054)
     add 80f76947d1 chore(csp): nix bugherd, add githubusercontent (#28064)
     add 3310315d4b fix: switch off dependabot for pip/python (#28061)
     add 594e5a50a3 docs: add more warnings for default secrets and 
docker-compose (#27921)
     add 19170d94c8 chore(asf): disable calendar display by default, click to 
show (#28048)
     add c457add848 build(deps-dev): bump typescript from 5.4.3 to 5.4.5 in 
/docs (#28074)
     add cd15655ed3 build(deps): bump @algolia/client-search from 4.23.2 to 
4.23.3 in /docs (#28077)
     add f3c538a3dd fix: Upgrade eyes-cypress to latest (#27195)
     add 8a390f03e3 chore(docs): splitting out "stable" feature flags by intent 
(config vs feature dev) (#28016)
     add 5ece57bd34 fix: db migrations on downgrade (#28106)
     add 0e096e8001 chore(asf): setting website staging server to point at 
superset-site's lfs branch (#28099)
     add 69a7bfc88d chore(Dashboard): Improve Table accessibility (#28059)
     add 68a982dfe6 feat(sip-95): new endpoint for extra table metadata (#28063)
     add fda9c60e25 docs: small fixes and update of README screenshots (#28102)
     add 84ef17d818 build(deps-dev): bump @types/react-gravatar from 2.6.8 to 
2.6.14 in /superset-frontend (#28092)
     add 9967f52657 build(deps-dev): bump babel-loader from 8.3.0 to 9.1.3 in 
/superset-frontend (#28090)
     add 96cea5aa1f build(deps): bump react-intersection-observer from 9.6.0 to 
9.8.2 in /superset-frontend (#28081)
     add 9ee56bbc5b chore(Dashboard): Improve accessibility chart descriptions 
(#28127)
     add 7263c7cb47 refactor: add "button" role to clickable UI elements for 
improved accessibility (#26602)
     add 2f11f66167 fix(sql_parse): Support Jinja format() filter when 
extracting latest[_sub]_partition (#28117)
     add 7e91d18853 build(deps): update @types/lodash requirement from 
^4.14.149 to ^4.17.0 in /superset-frontend/packages/superset-ui-core (#28066)
     add 6748c4361f build(deps): update dompurify requirement from ^3.0.11 to 
^3.1.0 in /superset-frontend/plugins/legacy-preset-chart-nvd3 (#28065)
     add 4c1e2bcc7a build(deps-dev): bump @types/node from 20.12.4 to 20.12.7 
in /superset-websocket (#28070)
     add 947391778e feat: label PR with release tags (#28107)
     add 6c045f4228 build(deps): bump azure/setup-helm from 3 to 4 (#27340)
     add 0f0f299b3e build(deps): bump @types/d3-scale from 2.2.10 to 4.0.8 in 
/superset-frontend/plugins/plugin-chart-word-cloud (#28067)
     add 17a65b1e03 build(deps-dev): bump esbuild-loader from 4.0.3 to 4.1.0 in 
/superset-frontend (#28088)
     add 95b3f31d9c build(deps-dev): bump jsdom from 20.0.0 to 24.0.0 in 
/superset-frontend (#28089)
     add 3f86df1445 build(deps-dev): bump eslint-plugin-storybook from 0.6.15 
to 0.8.0 in /superset-frontend (#28086)
     add 76568807c4 build(deps-dev): bump @applitools/eyes-storybook from 
3.46.0 to 3.49.0 in /superset-frontend (#28084)
     add 7b21e8fbae build(deps-dev): bump @docusaurus/module-type-aliases from 
3.2.0 to 3.2.1 in /docs (#28080)
     add b168520ad2 build(deps-dev): bump @types/js-levenshtein from 1.1.0 to 
1.1.3 in /superset-frontend (#26563)
     add 529954fbcb build(deps-dev): bump babel-plugin-jsx-remove-data-test-id 
from 2.1.3 to 3.0.0 in /superset-frontend (#26564)
     add 452e26ea79 build(deps): bump d3-interpolate and @types/d3-interpolate 
in /superset-frontend (#26896)
     add 783dbb5040 build(deps): bump chrono-node from 2.2.6 to 2.7.5 in 
/superset-frontend (#26746)
     add 37f900a264 docs: Updated quick start page. Docker compose command had 
a typo (#28131)
     add e465876ed4 feat: new Excel upload form and API (#28105)
     add bfa2c46430 build(deps): bump deck.gl from 8.8.27 to 9.0.6 in 
/superset-frontend/plugins/legacy-preset-chart-deckgl (#27965)
     add 86d7b04eaa build(deps): update xss requirement from ^1.0.10 to ^1.0.15 
in /superset-frontend/plugins/legacy-preset-chart-deckgl (#28071)
     add 11dbae78cb build(deps): bump @types/node from 18.0.0 to 20.12.7 in 
/superset-frontend (#28083)
     add 7906e7b5ff build(deps-dev): bump fs-extra from 10.1.0 to 11.2.0 in 
/superset-frontend/packages/generator-superset (#28068)
     add f5bd183cc5 build(deps): update prop-types requirement from ^15.6.0 to 
^15.8.1 in /superset-frontend/plugins/legacy-preset-chart-deckgl (#28075)
     add 1ef839ca6d build(deps): update underscore requirement from ^1.12.1 to 
^1.13.6 in /superset-frontend/plugins/legacy-preset-chart-deckgl (#28069)
     add fe2be5ffea build(deps): bump react-virtualized-auto-sizer from 1.0.7 
to 1.0.24 in /superset-frontend (#28085)
     add c23876d536 build(deps): bump match-sorter from 6.3.3 to 6.3.4 in 
/superset-frontend (#28082)
     add e889f17421 chore(translations): fix translations order (#28031)
     add cddcff2c63 chore(translations): add Arabic translations stub (#28129)
     add 83fedcc9ea chore: change deprecation versions post 4.0 (#28019)
     add cfc440c56c feat: improve event logging for queries + refactor (#27943)
     add de82d90b9c chore: refactor file upload commands (#28164)
     add b7f3e0bb50 fix(AlertsReports): making log retention "None" option 
valid  (#27554)
     add 063914af04 chore: get websocket service to start in docker-compose 
(#28135)
     add 68c77d6e9f chore: clean up console upon firing up the CLI (#28134)
     add efc1ab83d4 build(deps): bump gh-pages from 3.2.3 to 5.0.0 in 
/superset-frontend (#28177)
     add f155138659 build(deps): update @types/fetch-mock requirement from 
^7.3.3 to ^7.3.8 in /superset-frontend/packages/superset-ui-core (#27831)
     add 9db431b430 docs: add dynamic entity-relationship diagram to docs 
(#28130)
     add cf90def462 feat: custom refresh frequency (#24449)
     add 8baf754615 fix(docs): ERD docs fail on master (#28189)
     add a9075fdb1f fix: Remove deprecated ignoreTestFiles from Applitools 
Cypress (#28197)
     add bc65c245fe chore(tests): Remove unnecessary/problematic app contexts 
(#28159)
     add e8a678b75a docs: Refactor Documentation Structure (#28161)
     add 2d63722150 chore: set up ruff as a new linter/formatter (#28158)
     add 7b40b6426c chore: add pylint to pre-commit hook (#28137)
     add 52f8734662 docs: update README.md to avoid 404 issue (#28217)
     add 6cf681df68 feat(SIP-95): new endpoint for table metadata (#28122)
     add 4afeabe042 feat(translations): Traditional Chinese translation files 
added (#28169)
     add ce1d18e534 feat(country-map): Adds Philippines regional map and 
updates/cleans existing Philippines provincial map (#27933)
     add 63afa24c11 feat: Add Czech Republic country map. (#28035)
     add 271510f0a8 chore(plugin-chart-country-map): fix broken urls (#28223)
     add 1e47e65ac5 fix(maps): adds Crimea back to Ukraine 🇺🇦 (#28226)
     add c5e7d870f0 fix(sql_parse): Provide more lenient logic when extracting 
latest[_sub]_partition (#28152)
     add 173d5d09bf fix: Dremio alias (#28222)
     add cdbf8f394a chore: Add custom keywords for SQL Lab autocomplete (#28153)
     add 7e94dc5b40 fix(sqllab): invalid css scope for ace editor autocomplete 
(#28156)
     add 3a2a930ad3 chore(docs): reorder pages in the Configuring Superset 
section (#28237)
     add 4463b399f0 build(deps): bump distributions in /superset-frontend

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   (29ba9d2d25)
            \
             N -- N -- N   
refs/heads/dependabot/npm_and_yarn/superset-frontend/distributions-2.1.0 
(4463b399f0)

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:
 .asf.yaml                                          |    16 +-
 .github/CODEOWNERS                                 |     4 +-
 .github/ISSUE_TEMPLATE/bug-report.yml              |     5 +-
 .github/actions/change-detector/action.yml         |    31 +
 .github/actions/setup-backend/action.yml           |    51 +
 .github/actions/setup-supersetbot/action.yml       |    40 +
 .github/dependabot.yml                             |    13 +-
 .github/labeler.yml                                |     5 +
 .github/workflows/bashlib.sh                       |    18 +-
 .github/workflows/bump-python-package.yml          |    68 +
 .github/workflows/check_db_migration_confict.yml   |     3 +-
 .github/workflows/codeql-analysis.yml              |    19 +-
 .github/workflows/dependency-review.yml            |    21 +-
 .github/workflows/docker.yml                       |    55 +-
 .github/workflows/embedded-sdk-release.yml         |     5 +-
 .github/workflows/embedded-sdk-test.yml            |     2 +-
 .github/workflows/generate-FOSSA-report.yml        |     5 +-
 .github/workflows/issue_creation.yml               |    34 +
 .github/workflows/no-op.yml                        |    54 -
 .github/workflows/pre-commit.yml                   |    25 +-
 .github/workflows/prefer-typescript.yml            |     3 +-
 .github/workflows/release.yml                      |     5 +-
 .github/workflows/superset-applitool-cypress.yml   |    25 +-
 .../workflows/superset-applitools-storybook.yml    |     2 +-
 .github/workflows/superset-cli.yml                 |    39 +-
 .github/workflows/superset-docs-deploy.yml         |    27 +-
 .github/workflows/superset-docs-verify.yml         |     4 +-
 .github/workflows/superset-e2e.yml                 |    48 +-
 .github/workflows/superset-frontend.yml            |    39 +-
 .github/workflows/superset-helm-lint.yml           |     7 +-
 .github/workflows/superset-helm-release.yml        |     3 +-
 .../workflows/superset-python-integrationtest.yml  |   113 +-
 .github/workflows/superset-python-misc.yml         |    65 +-
 .github/workflows/superset-python-presto-hive.yml  |    87 +-
 .github/workflows/superset-python-unittest.yml     |    47 +-
 .github/workflows/superset-translations.yml        |    39 +-
 .github/workflows/superset-websocket.yml           |     3 +-
 .github/workflows/supersetbot.yml                  |    56 +
 .../{docker-release.yml => tag-release.yml}        |    57 +-
 .github/workflows/tech-debt.yml                    |     5 +-
 .github/workflows/update-monorepo-lockfiles.yml    |     7 +-
 .gitignore                                         |     1 +
 .pre-commit-config.yaml                            |    43 +-
 .pylintrc                                          |     3 +-
 .rat-excludes                                      |     4 +
 ASF/doap_Superset.rdf                              |    63 +
 CHANGELOG.md                                       |     2 +
 CHANGELOG/3.1.2.md                                 |    93 +
 CHANGELOG/4.0.0.md                                 |   472 +
 CONTRIBUTING.md                                    |    12 +-
 Dockerfile                                         |    36 +-
 Makefile                                           |    12 +-
 NOTICE                                             |     2 +-
 README.md                                          |    22 +-
 RELEASING/Dockerfile.from_local_tarball            |     2 +-
 RELEASING/Dockerfile.from_svn_tarball              |     2 +-
 RELEASING/Dockerfile.make_docs                     |     2 +-
 RELEASING/Dockerfile.make_tarball                  |     2 +-
 RELEASING/changelog.py                             |    10 +-
 RELEASING/email_templates/announce.j2              |     4 +-
 RELEASING/email_templates/result_pmc.j2            |     3 +-
 RELEASING/email_templates/vote_pmc.j2              |     6 +-
 RELEASING/generate_email.py                        |     2 +-
 RELEASING/release-notes-4-0/README.md              |   151 +
 .../release-notes-4-0/media/alert-modal-1.png      |   Bin 0 -> 156064 bytes
 .../release-notes-4-0/media/alert-modal-2.png      |   Bin 0 -> 146949 bytes
 .../release-notes-4-0/media/alert-modal-3.png      |   Bin 0 -> 158396 bytes
 .../release-notes-4-0/media/dashboard-dnd-1.png    |   Bin 0 -> 626066 bytes
 .../release-notes-4-0/media/dashboard-dnd-2.png    |   Bin 0 -> 451634 bytes
 RELEASING/release-notes-4-0/media/explore-dnd.png  |   Bin 0 -> 640684 bytes
 RELEASING/release-notes-4-0/media/sunburst.png     |   Bin 0 -> 383032 bytes
 RELEASING/release-notes-4-0/media/tags-1.png       |   Bin 0 -> 273468 bytes
 RELEASING/release-notes-4-0/media/tags-2.png       |   Bin 0 -> 301495 bytes
 RESOURCES/FEATURE_FLAGS.md                         |    28 +-
 RESOURCES/STANDARD_ROLES.md                        |   418 +-
 UPDATING.md                                        |    26 +-
 ...ose-non-dev.yml => docker-compose-image-tag.yml |    37 +-
 docker-compose-non-dev.yml                         |    58 +-
 docker-compose.yml                                 |    85 +-
 docker/.env                                        |    12 +
 docker/.env-non-dev                                |    53 -
 docker/docker-bootstrap.sh                         |     8 -
 docker/docker-frontend.sh                          |    20 +-
 docker/superset-websocket/config.json              |    22 +
 .../alerts-reports.mdx                             |    10 +-
 .../async-queries-celery.mdx                       |     2 +-
 .../docs/{installation => configuration}/cache.mdx |     6 +-
 .../configuring-superset.mdx                       |    22 +-
 .../country-map-tools.mdx                          |   132 +-
 .../event-logging.mdx                              |     2 +-
 .../importing-exporting-datasources.mdx            |    32 +-
 .../networking-settings.mdx                        |     2 +-
 .../setup-ssh-tunneling.mdx                        |     2 +-
 .../sql-templating.mdx                             |    18 +-
 .../{miscellaneous => configuration}/timezones.mdx |     2 +-
 docs/docs/contributing/_category_.json             |     4 -
 docs/docs/contributing/erd.mdx                     |    11 +
 docs/docs/contributing/hooks-and-linting.mdx       |     2 +-
 docs/docs/contributing/local-backend.mdx           |    13 +-
 docs/docs/contributing/pull-request-guidelines.mdx |     4 +-
 docs/docs/contributing/testing-locally.mdx         |    17 +-
 .../creating-charts-dashboards/_category_.json     |     4 -
 docs/docs/databases/_category_.json                |     4 -
 .../docs/databases/installing-database-drivers.mdx |     4 +-
 docs/docs/frequently-asked-questions.mdx           |    10 +-
 docs/docs/installation/_category_.json             |     4 -
 .../installation/{docker.mdx => docker-builds.mdx} |     9 +-
 docs/docs/installation/docker-compose.mdx          |   220 +
 .../installing-superset-using-docker-compose.mdx   |   156 -
 .../{running-on-kubernetes.mdx => kubernetes.mdx}  |    18 +-
 ...{installing-superset-from-pypi.mdx => pypi.mdx} |    10 +-
 docs/docs/installation/upgrading-superset.mdx      |     2 +-
 docs/docs/intro.mdx                                |     9 +-
 docs/docs/miscellaneous/_category_.json            |     4 -
 docs/docs/quickstart.mdx                           |    93 +-
 docs/docs/security/_category_.json                 |     4 -
 docs/docs/security/cves.mdx                        |    18 +-
 docs/docs/security/security.mdx                    |     2 +-
 .../chart-params.mdx                               |     0
 .../creating-your-first-dashboard.mdx              |     4 +-
 .../exploring-data.mdx                             |    27 -
 .../issue-codes.mdx                                |     2 +-
 docs/docusaurus.config.js                          |    44 +-
 docs/package.json                                  |    16 +-
 docs/sidebars.js                                   |    87 +-
 .../src/components/InteractiveERDSVG.jsx           |    23 +-
 docs/src/fonts/Roboto-Bold.woff                    |   Bin 0 -> 94476 bytes
 docs/src/fonts/Roboto-Bold.woff2                   |   Bin 0 -> 63920 bytes
 docs/src/fonts/Roboto-Regular.woff                 |   Bin 0 -> 94220 bytes
 docs/src/fonts/Roboto-Regular.woff2                |   Bin 0 -> 63748 bytes
 docs/src/pages/community.tsx                       |    40 +-
 docs/src/pages/index.tsx                           |     2 +-
 docs/src/styles/custom.css                         |    15 +-
 docs/src/theme/DocItem/index.js                    |     5 +-
 docs/static/.asf.yaml                              |     2 +-
 docs/static/.htaccess                              |     2 +-
 docs/static/img/erd.svg                            |     1 +
 docs/static/resources/openapi.json                 |     7 +-
 docs/static/video/superset-video-4k.mp4            |   Bin 66845979 -> 0 bytes
 docs/yarn.lock                                     |   371 +-
 helm/superset/Chart.yaml                           |     4 +-
 helm/superset/README.md                            |     2 +-
 pyproject.toml                                     |   473 +
 requirements/base.in                               |     1 +
 requirements/base.txt                              |    97 +-
 requirements/development.in                        |     9 +-
 requirements/development.txt                       |   249 +-
 requirements/docker.in                             |    19 -
 requirements/docker.txt                            |    23 -
 requirements/integration.in                        |    19 -
 requirements/integration.txt                       |    68 -
 requirements/local.in                              |    17 -
 requirements/local.txt                             |    15 -
 requirements/testing.in                            |    31 -
 requirements/testing.txt                           |   145 -
 scripts/build_docker.py                            |    14 +-
 scripts/cancel_github_workflows.py                 |     1 +
 scripts/change_detector.py                         |   155 +
 scripts/check_license.sh                           |     2 +-
 scripts/ci_check_no_file_changes.sh                |    68 -
 scripts/erd/erd.puml                               |   676 +
 scripts/erd/erd.py                                 |   211 +
 docs/static/.nojekyll => scripts/erd/erd.svg       |     0
 scripts/erd/erd.template.puml                      |    57 +
 scripts/templates/erd.plantuml.template            |    57 +
 setup.cfg                                          |    52 -
 setup.py                                           |   162 +-
 superset-embedded-sdk/README.md                    |     3 +
 superset-embedded-sdk/package-lock.json            |    12 +-
 superset-frontend/.nvmrc                           |     2 +-
 superset-frontend/cypress-base/cypress.config.ts   |    91 +-
 .../cypress/e2e/chart_list/list.test.ts            |     9 +-
 .../cypress/e2e/dashboard/drilltodetail.test.ts    |    18 +-
 .../cypress/e2e/dashboard/editmode.test.ts         |    26 +-
 .../cypress/e2e/explore/AdhocMetrics.test.ts       |     2 +-
 .../cypress-base/cypress/e2e/explore/chart.test.js |     4 +-
 .../e2e/explore/visualizations/table.test.ts       |     4 +-
 superset-frontend/cypress-base/package-lock.json   | 19000 +++++------
 superset-frontend/cypress-base/package.json        |     2 +-
 superset-frontend/cypress-base/tsconfig.json       |     2 +-
 superset-frontend/package-lock.json                |  8432 +++--
 superset-frontend/package.json                     |    37 +-
 .../packages/generator-superset/README.md          |     2 +-
 .../packages/generator-superset/package.json       |     2 +-
 .../packages/superset-ui-chart-controls/README.md  |     2 +-
 .../src/operators/index.ts                         |     1 +
 .../src/operators/{types.ts => rankOperator.ts}    |    15 +-
 .../src/operators/types.ts                         |     2 +-
 .../test/operators/rankOperator.test.ts}           |    45 +-
 .../packages/superset-ui-core/README.md            |     2 +-
 .../packages/superset-ui-core/package.json         |    14 +-
 .../src/connection/callApi/parseResponse.ts        |     6 +-
 .../superset-ui-core/src/connection/constants.ts   |     5 +
 .../superset-ui-core/src/connection/index.ts       |     1 +
 .../useChildElementTruncation.test.ts              |   196 +-
 .../useTruncation/useChildElementTruncation.ts     |   122 +-
 .../superset-ui-core/src/query/api/v1/makeApi.ts   |     4 +-
 .../src/query}/getClientErrorObject.ts             |    54 +-
 .../packages/superset-ui-core/src/query/index.ts   |     1 +
 .../src/query/types/PostProcessing.ts              |    12 +-
 .../superset-ui-core/src/query/types/Query.ts      |    21 +-
 .../src/query/types/QueryResponse.ts               |     1 +
 .../src/time-comparison/fetchTimeRange.ts}         |    38 +-
 .../superset-ui-core/src/time-comparison/index.ts  |     1 +
 .../superset-ui-core/src/ui-overrides/types.ts     |    65 +-
 .../superset-ui-core/src/utils/featureFlags.ts     |     1 +
 .../chart/components/ChartDataProvider.test.tsx    |    13 +-
 .../test/color/SharedLabelColorSingleton.test.ts   |    14 +-
 .../test/connection/callApi/parseResponse.test.ts  |    12 +-
 .../test/query/getClientErrorObject.test.ts        |   233 +
 .../test/time-comparison/fetchTimeRange.test.ts    |   118 +
 .../packages/superset-ui-demo/README.md            |     3 +-
 .../packages/superset-ui-demo/package.json         |    10 +-
 .../plugins/legacy-plugin-chart-calendar/README.md |     4 +-
 .../plugins/legacy-plugin-chart-chord/README.md    |     4 +-
 .../plugins/legacy-plugin-chart-chord/src/index.js |     8 +-
 .../legacy-plugin-chart-country-map/README.md      |     4 +-
 .../scripts/Country Map GeoJSON Generator.ipynb    |   943 +-
 .../src/countries.ts                               |     9 +
 .../src/countries/czech_republic.geojson           |    20 +
 .../src/countries/france_regions.geojson           |    36 +-
 .../src/countries/italy_regions.geojson            |    40 +-
 .../src/countries/philippines_regions.geojson      |    23 +
 .../src/countries/turkey_regions.geojson           |    18 +
 .../src/countries/ukraine.geojson                  |     6 +-
 .../legacy-plugin-chart-event-flow/README.md       |     4 +-
 .../plugins/legacy-plugin-chart-heatmap/README.md  |     4 +-
 .../legacy-plugin-chart-heatmap/src/Heatmap.js     |    15 +-
 .../legacy-plugin-chart-heatmap/src/index.js       |     9 +-
 .../src/transformProps.js                          |     8 +-
 .../legacy-plugin-chart-histogram/README.md        |     4 +-
 .../plugins/legacy-plugin-chart-horizon/README.md  |     4 +-
 .../plugins/legacy-plugin-chart-map-box/README.md  |     4 +-
 .../legacy-plugin-chart-paired-t-test/README.md    |     4 +-
 .../README.md                                      |     4 +-
 .../src/index.js                                   |     2 +-
 .../legacy-plugin-chart-partition/README.md        |     4 +-
 .../plugins/legacy-plugin-chart-rose/README.md     |     4 +-
 .../legacy-plugin-chart-sankey-loop/README.md      |     4 +-
 .../plugins/legacy-plugin-chart-sankey/README.md   |     4 +-
 .../legacy-plugin-chart-world-map/README.md        |     4 +-
 .../legacy-plugin-chart-world-map/src/index.js     |     1 -
 .../plugins/legacy-preset-chart-deckgl/README.md   |     4 +-
 .../legacy-preset-chart-deckgl/package.json        |    16 +-
 .../src/components/Legend.tsx                      |     1 +
 .../src/layers/Contour/index.ts                    |     2 +-
 .../src/layers/Geojson/index.ts                    |     2 +-
 .../src/layers/Grid/index.ts                       |     2 +-
 .../src/layers/Heatmap/index.ts                    |     2 +-
 .../src/layers/Hex/index.ts                        |     2 +-
 .../src/layers/Polygon/index.ts                    |     8 +-
 .../src/layers/Screengrid/index.ts                 |     8 +-
 .../plugins/legacy-preset-chart-nvd3/README.md     |     4 +-
 .../plugins/legacy-preset-chart-nvd3/package.json  |     2 +-
 .../legacy-preset-chart-nvd3/src/Area/index.js     |     2 -
 .../legacy-preset-chart-nvd3/src/Bar/index.js      |     2 -
 .../legacy-preset-chart-nvd3/src/Bubble/index.js   |     2 -
 .../legacy-preset-chart-nvd3/src/DistBar/index.js  |     4 -
 .../legacy-preset-chart-nvd3/src/Line/index.js     |     2 +-
 .../legacy-preset-chart-nvd3/src/Pie/index.js      |     2 +-
 .../plugins/plugin-chart-echarts/README.md         |     4 +-
 .../plugins/plugin-chart-echarts/package.json      |    35 +-
 .../BigNumber/BigNumberPeriodOverPeriod/PopKPI.tsx |   146 +-
 .../BigNumberPeriodOverPeriod/controlPanel.ts      |    78 +-
 .../BigNumber/BigNumberPeriodOverPeriod/index.ts   |     1 -
 .../BigNumberPeriodOverPeriod/transformProps.ts    |     9 +-
 .../BigNumber/BigNumberPeriodOverPeriod/types.ts   |     6 +
 .../useOverflowDetection.ts                        |    63 +
 .../src/BigNumber/BigNumberTotal/index.ts          |     1 -
 .../src/BigNumber/BigNumberWithTrendline/index.ts  |     1 -
 .../plugin-chart-echarts/src/Bubble/index.ts       |     1 -
 .../plugin-chart-echarts/src/Graph/index.ts        |     1 -
 .../plugin-chart-echarts/src/Heatmap/Heatmap.tsx}  |    21 +-
 .../plugin-chart-echarts/src/Heatmap/buildQuery.ts |    68 +
 .../src/Heatmap/controlPanel.tsx                   |   304 +
 .../src/Heatmap/images/example1.png                |   Bin 0 -> 69070 bytes
 .../src/Heatmap/images/example2.png                |   Bin 0 -> 101622 bytes
 .../src/Heatmap/images/example3.png                |   Bin 0 -> 76688 bytes
 .../src/Heatmap/images/thumbnail.png               |   Bin 0 -> 66135 bytes
 .../src/Heatmap/index.ts}                          |    23 +-
 .../src/Heatmap/transformProps.ts                  |   243 +
 .../plugin-chart-echarts/src/Heatmap/types.ts      |    53 +
 .../src/MixedTimeseries/index.ts                   |     2 -
 .../src/MixedTimeseries/transformProps.ts          |     5 +-
 .../plugins/plugin-chart-echarts/src/Pie/index.ts  |     1 -
 .../plugin-chart-echarts/src/Radar/index.ts        |     1 -
 .../plugin-chart-echarts/src/Sunburst/index.ts     |     7 +-
 .../src/Timeseries/Area/index.ts                   |     1 -
 .../src/Timeseries/Regular/Bar/index.ts            |     2 -
 .../src/Timeseries/Regular/Line/index.ts           |     1 -
 .../src/Timeseries/Regular/Scatter/index.ts        |     1 -
 .../src/Timeseries/Regular/SmoothLine/index.ts     |     1 -
 .../src/Timeseries/Step/index.ts                   |     1 -
 .../plugin-chart-echarts/src/Timeseries/index.ts   |     1 -
 .../src/Timeseries/transformProps.ts               |     1 +
 .../src/Timeseries/transformers.ts                 |    21 +-
 .../plugin-chart-echarts/src/Treemap/index.ts      |     1 -
 .../plugins/plugin-chart-echarts/src/index.ts      |     2 +
 .../plugin-chart-echarts/src/utils/series.ts       |    38 +-
 .../plugin-chart-echarts/test/utils/series.test.ts |    31 +
 .../plugins/plugin-chart-handlebars/README.md      |     3 +-
 .../plugins/plugin-chart-handlebars/package.json   |     2 +-
 .../plugins/plugin-chart-pivot-table/README.md     |     3 +-
 .../plugins/plugin-chart-pivot-table/package.json  |     4 +-
 .../src/react-pivottable/TableRenderers.jsx        |     7 +
 .../plugins/plugin-chart-table/README.md           |     4 +-
 .../plugins/plugin-chart-table/package.json        |     4 +-
 .../plugin-chart-table/src/DataTable/DataTable.tsx |     8 +-
 .../src/DataTable/hooks/useSticky.tsx              |    20 +-
 .../plugins/plugin-chart-table/src/TableChart.tsx  |    12 +-
 .../plugin-chart-table/src/controlPanel.tsx        |    12 +
 .../plugins/plugin-chart-table/src/index.ts        |     1 -
 .../plugin-chart-table/src/transformProps.ts       |     2 +
 .../plugins/plugin-chart-table/src/types.ts        |     1 +
 .../plugins/plugin-chart-table/test/testData.ts    |     1 +
 .../plugins/plugin-chart-word-cloud/README.md      |     4 +-
 .../plugins/plugin-chart-word-cloud/package.json   |     2 +-
 .../plugin-chart-word-cloud/src/plugin/index.ts    |     9 +-
 superset-frontend/src/SqlLab/actions/sqlLab.js     |    32 +-
 .../src/SqlLab/actions/sqlLab.test.js              |    29 +-
 .../SqlLab/components/AceEditorWrapper/index.tsx   |    62 +-
 .../AceEditorWrapper/useAnnotations.test.ts        |     2 +-
 .../components/AceEditorWrapper/useAnnotations.ts  |     4 +-
 .../AceEditorWrapper/useKeywords.test.ts           |    41 +
 .../components/AceEditorWrapper/useKeywords.ts     |    24 +-
 .../components/QueryHistory/QueryHistory.test.tsx  |    73 +-
 .../src/SqlLab/components/QueryHistory/index.tsx   |   106 +-
 .../src/SqlLab/components/ResultSet/index.tsx      |     6 +
 .../components/ScheduleQueryButton/index.tsx       |     4 +-
 .../SqlLab/components/ShareSqlLabQuery/index.tsx   |     2 +-
 .../src/SqlLab/components/SouthPane/Results.tsx    |     2 +-
 .../SqlLab/components/SouthPane/SouthPane.test.tsx |    13 +
 .../src/SqlLab/components/SouthPane/index.tsx      |    14 +-
 .../src/SqlLab/components/SqlEditor/index.tsx      |    16 +
 .../SqlEditorLeftBar/SqlEditorLeftBar.test.tsx     |     4 +-
 .../components/TableElement/TableElement.test.tsx  |     5 +-
 superset-frontend/src/SqlLab/fixtures.ts           |     1 +
 .../src/SqlLab/reducers/getInitialState.test.ts    |    21 +-
 .../src/SqlLab/reducers/getInitialState.ts         |     7 +-
 superset-frontend/src/assets/images/doris.png      |   Bin 11539 -> 23896 bytes
 .../src/assets/images/icons/ballot.svg             |     4 +-
 .../src/assets/images/icons/category.svg           |     4 +-
 superset-frontend/src/assets/images/icons/tags.svg |     4 +-
 .../src/assets/images/screenshots/explore.jpg      |   Bin 445619 -> 651168 
bytes
 .../src/assets/images/screenshots/gallery.jpg      |   Bin 413974 -> 965607 
bytes
 .../src/assets/images/screenshots/slack_dash.jpg   |   Bin 360464 -> 506319 
bytes
 .../src/assets/images/screenshots/sql_lab.jpg      |   Bin 415938 -> 455005 
bytes
 .../AlteredSliceTag/AlteredSliceTagMocks.ts        |     2 +-
 .../src/components/AlteredSliceTag/index.tsx       |     6 +-
 superset-frontend/src/components/Chart/Chart.jsx   |    66 +-
 .../Chart/ChartContextMenu/ChartContextMenu.tsx    |     4 +
 .../src/components/Chart/ChartErrorMessage.tsx     |     2 +-
 .../Chart/DrillBy/DrillByMenuItems.test.tsx        |     4 +-
 .../components/Chart/DrillBy/DrillByMenuItems.tsx  |     4 +-
 .../Chart/DrillBy/useDrillByBreadcrumbs.tsx        |    42 +-
 .../Chart/DrillBy/useResultsTableView.tsx          |     2 +
 .../DrillDetail/DrillDetailMenuItems.test.tsx      |    44 +-
 .../Chart/DrillDetail/DrillDetailMenuItems.tsx     |   201 +-
 .../Chart/DrillDetail/DrillDetailPane.tsx          |     4 +-
 .../src/components/Chart/chartAction.js            |    23 +-
 .../src/components/Chart/chartActions.test.js      |   117 +-
 .../CopyToClipboard/{index.jsx => index.tsx}       |    54 +-
 .../DatabaseSelector/DatabaseSelector.test.tsx     |     4 +
 .../Datasource/ChangeDatasourceModal.tsx           |     8 +-
 .../src/components/Datasource/DatasourceEditor.jsx |     2 +-
 .../src/components/Datasource/DatasourceModal.tsx  |     4 +-
 .../src/components/Dropdown/Dropdown.test.tsx      |    65 +
 .../src/components/Dropdown/index.tsx              |    22 +-
 .../src/components/EditableTitle/index.tsx         |     1 +
 .../ErrorMessage/BasicErrorAlert.test.tsx          |     3 +-
 .../components/ErrorMessage/BasicErrorAlert.tsx    |     3 +-
 .../ErrorMessage/DatabaseErrorMessage.test.tsx     |    11 +-
 .../ErrorMessage/DatabaseErrorMessage.tsx          |     4 +-
 .../DatasetNotFoundErrorMessage.test.tsx           |     2 +-
 .../components/ErrorMessage/ErrorAlert.test.tsx    |     3 +-
 .../src/components/ErrorMessage/ErrorAlert.tsx     |    40 +-
 .../ErrorMessageWithStackTrace.test.tsx            |     2 +-
 .../ErrorMessage/ErrorMessageWithStackTrace.tsx    |     3 +-
 .../ErrorMessage/MarshmallowErrorMessage.test.tsx  |     8 +-
 .../ErrorMessage/OAuth2RedirectMessage.test.tsx    |   171 +
 .../ErrorMessage/OAuth2RedirectMessage.tsx         |   179 +
 .../ErrorMessage/ParameterErrorMessage.test.tsx    |     2 +-
 .../ErrorMessage/TimeoutErrorMessage.test.tsx      |     2 +-
 .../src/components/ErrorMessage/types.ts           |    87 +-
 .../src/components/FacePile/index.tsx              |    16 +-
 .../src/components/FilterableTable/index.tsx       |     7 +-
 .../src/components/Form/LabeledErrorBoundInput.tsx |    18 +
 .../src/components/Icons/AntdEnhanced.tsx          |     7 +-
 superset-frontend/src/components/Icons/Icon.tsx    |     3 +
 .../src/components/Label/Label.test.tsx            |    11 +
 superset-frontend/src/components/Label/index.tsx   |     1 +
 .../src/components/ListView/CrossLinks.tsx         |    25 +-
 .../ListView/DashboardCrossLinks.tsx}              |    24 +-
 superset-frontend/src/components/Menu/index.tsx    |    29 +
 .../components/MetadataBar/MetadataBar.test.tsx    |    22 +
 .../src/components/MetadataBar/MetadataBar.tsx     |     1 +
 .../src/components/ModalTrigger/index.tsx          |     3 +-
 .../src/components/PageHeaderWithActions/index.tsx |     3 +
 .../src/components/Select/AsyncSelect.test.tsx     |    82 +-
 .../src/components/Select/AsyncSelect.tsx          |    50 +-
 .../src/components/Select/CustomTag.tsx            |     7 +-
 .../src/components/Select/Select.stories.tsx       |   269 +-
 .../src/components/Select/Select.test.tsx          |    26 +
 superset-frontend/src/components/Select/Select.tsx |    26 +-
 superset-frontend/src/components/Select/utils.tsx  |    18 +-
 .../src/components/TableSelector/index.tsx         |    11 +-
 superset-frontend/src/components/Tags/Tag.tsx      |     8 +-
 superset-frontend/src/components/Tags/utils.tsx    |    11 +-
 .../src/components/TelemetryPixel/index.tsx        |     1 +
 .../src/components/TruncatedList/index.tsx         |    10 +-
 superset-frontend/src/constants.ts                 |     8 +
 .../src/dashboard/actions/dashboardInfo.ts         |     8 +-
 .../src/dashboard/actions/dashboardState.js        |     2 +-
 .../src/dashboard/actions/sliceEntities.ts         |     8 +-
 .../components/CssEditor/CssEditor.test.tsx        |    54 +-
 .../components/CssEditor/{index.jsx => index.tsx}  |    69 +-
 .../DashboardBuilder/DashboardBuilder.tsx          |     5 +
 .../DashboardBuilder/DashboardContainer.tsx        |    13 +
 .../DetailsPanel/DetailsPanel.test.tsx             |    92 +-
 .../components/FiltersBadge/DetailsPanel/index.tsx |    86 +-
 .../FiltersBadge/FilterIndicator/index.tsx         |    69 +-
 .../dashboard/components/FiltersBadge/Styles.tsx   |     3 +-
 .../dashboard/components/FiltersBadge/index.tsx    |    41 +-
 .../Header/HeaderActionsDropdown/index.jsx         |    65 +-
 .../src/dashboard/components/Header/index.jsx      |     4 +-
 .../dashboard/components/PropertiesModal/index.tsx |     2 +-
 .../components/RefreshIntervalModal.test.tsx       |    17 +
 .../dashboard/components/RefreshIntervalModal.tsx  |   200 +-
 .../SliceHeaderControls.test.tsx                   |   198 +-
 .../components/SliceHeaderControls/index.tsx       |   476 +-
 .../components/URLShortLinkButton/index.tsx        |     5 +-
 .../src/dashboard/components/dnd/DragDroppable.jsx |     5 +-
 .../dashboard/components/gridComponents/Chart.jsx  |     6 +-
 .../dashboard/components/gridComponents/Row.jsx    |    16 +-
 .../DownloadMenuItems/DownloadAsImage.test.tsx     |     6 +
 .../menu/DownloadMenuItems/DownloadAsPdf.test.tsx  |     6 +
 .../dashboard/components/menu/HoverMenu.test.tsx   |    16 +-
 .../src/dashboard/components/menu/HoverMenu.tsx    |    19 +
 .../components/menu/ShareMenuItems/index.tsx       |    31 +-
 .../FilterBar/CrossFilters/CrossFilter.test.tsx    |     2 +-
 .../FilterBar/CrossFilters/CrossFilterTag.test.tsx |    12 +-
 .../FilterBar/CrossFilters/CrossFilterTag.tsx      |     3 +
 .../ScopingModal/ChartsScopingListPanel.test.tsx   |     9 +
 .../ScopingModal/ChartsScopingListPanel.tsx        |     1 +
 .../CrossFilters/VerticalCollapse.test.tsx         |     2 +-
 .../FilterBar/FilterControls/FilterControl.tsx     |     1 +
 .../FilterBar/FilterControls/FilterValue.tsx       |     6 +-
 .../nativeFilters/FilterBar/Vertical.tsx           |     1 +
 .../nativeFilters/FilterCard/DependenciesRow.tsx   |    10 +-
 .../nativeFilters/FilterCard/NameRow.tsx           |     5 +-
 .../nativeFilters/FilterCard/ScopeRow.tsx          |    12 +-
 .../FiltersConfigForm/ColumnSelect.test.tsx        |     4 +-
 .../FiltersConfigForm/ColumnSelect.tsx             |     9 +-
 .../FiltersConfigForm/DatasetSelect.tsx            |     7 +-
 .../FiltersConfigForm/DependencyList.tsx           |     2 +-
 .../FiltersConfigForm/FiltersConfigForm.tsx        |     6 +-
 .../src/dashboard/containers/DashboardPage.tsx     |     4 +
 superset-frontend/src/dashboard/styles.ts          |    42 +
 superset-frontend/src/dashboard/types.ts           |    31 +
 .../src/explore/actions/datasourcesActions.test.ts |     4 +-
 .../src/explore/actions/datasourcesActions.ts      |     3 +-
 .../src/explore/components/ChartPills.tsx          |     2 +-
 .../explore/components/ControlPanelsContainer.tsx  |    27 +-
 .../explore/components/DataTableControl/index.tsx  |    23 +-
 .../components/DataTablesPane/DataTablesPane.tsx   |     3 +-
 .../components/DataTableControls.tsx               |     7 +-
 .../DataTablesPane/components/SamplesPane.tsx      |     4 +
 .../components/SingleQueryResultPane.tsx           |     2 +
 .../DataTablesPane/components/useResultsPane.tsx   |     5 +-
 .../DataTablesPane/test/DataTablesPane.test.tsx    |     5 +
 .../test/ResultsPaneOnDashboard.test.tsx           |     4 +
 .../DataTablesPane/test/SamplesPane.test.tsx       |     2 +
 .../src/explore/components/DataTablesPane/types.ts |     2 +
 .../DatasourcePanel/DatasourcePanel.test.tsx       |    95 +-
 .../DatasourcePanel/DatasourcePanelItem.test.tsx   |   199 +
 .../DatasourcePanel/DatasourcePanelItem.tsx        |   269 +
 .../explore/components/DatasourcePanel/index.tsx   |   403 +-
 .../ExploreContainer/ExploreContainer.test.tsx     |   123 +
 .../explore/components/ExploreContainer/index.tsx  |    88 +
 .../components/ExploreViewContainer/index.jsx      |    44 +-
 .../explore/components/PropertiesModal/index.tsx   |     2 +-
 .../RowCountLabel/RowCountLabel.test.tsx           |     2 +-
 .../src/explore/components/RowCountLabel/index.tsx |    10 +-
 .../AnnotationLayerControl/AnnotationLayer.jsx     |   350 +-
 .../AnnotationLayer.test.tsx                       |   125 +-
 .../explore/components/controls/BoundsControl.tsx  |    14 +-
 .../controls/DateFilterControl/DateFilterLabel.tsx |     2 +-
 .../DateFilterControl/components/AdvancedFrame.tsx |     3 +-
 .../controls/DateFilterControl/tests/utils.test.ts |    33 -
 .../DateFilterControl/utils/dateFilterUtils.ts     |    47 +-
 .../controls/DateFilterControl/utils/dateParser.ts |     2 +-
 .../DndFilterSelect.test.tsx                       |   298 +-
 .../DndColumnSelectControl/DndFilterSelect.tsx     |    47 +-
 .../DndMetricSelect.test.tsx                       |   121 +
 .../DndColumnSelectControl/DndMetricSelect.tsx     |    32 +-
 .../DndColumnSelectControl/DndSelectLabel.test.tsx |    40 +
 .../DndColumnSelectControl/DndSelectLabel.tsx      |    37 +-
 .../FilterControl/AdhocFilterControl/index.jsx     |     2 +-
 .../utils/useGetTimeRangeLabel.test.ts             |     6 +-
 .../FilterControl/utils/useGetTimeRangeLabel.tsx   |     3 +-
 .../controls/FixedOrMetricControl/index.jsx        |     2 +-
 .../components/controls/OptionControls/index.tsx   |    92 +-
 .../controls/SelectAsyncControl/index.tsx          |     3 +-
 .../explore/components/controls/ViewQueryModal.tsx |     8 +-
 .../controls/VizTypeControl/VizTypeGallery.tsx     |    62 +-
 .../components/controls/VizTypeControl/index.tsx   |     5 +-
 .../DashboardsSubMenu.test.tsx                     |     2 +-
 .../useExploreAdditionalActionsMenu/index.jsx      |     2 +-
 superset-frontend/src/explore/types.ts             |     1 +
 .../src/features/alerts/AlertReportModal.test.tsx  |     9 +-
 .../src/features/alerts/AlertReportModal.tsx       |   118 +-
 .../alerts/components/NotificationMethod.tsx       |    10 +-
 superset-frontend/src/features/alerts/types.ts     |     6 +
 .../DatabaseConnectionForm/CommonParameters.tsx    |    45 +-
 .../DatabaseConnectionForm/EncryptedField.tsx      |     2 +-
 .../DatabaseConnectionForm/TableCatalog.tsx        |     3 +-
 .../DatabaseConnectionForm/ValidatedInputField.tsx |     2 +-
 .../DatabaseModal/DatabaseConnectionForm/index.tsx |   132 +-
 .../databases/DatabaseModal/ExtraOptions.tsx       |    16 +
 .../databases/DatabaseModal/ModalHeader.tsx        |     3 +-
 .../databases/DatabaseModal/SSHTunnelForm.tsx      |    12 +-
 .../DatabaseModal/SSHTunnelSwitch.test.tsx         |   162 +
 .../databases/DatabaseModal/SSHTunnelSwitch.tsx    |    82 +-
 .../databases/DatabaseModal/index.test.tsx         |    11 +-
 .../src/features/databases/DatabaseModal/index.tsx |   132 +-
 .../databases/UploadDataModel/ColumnsPreview.tsx   |    54 +
 .../UploadDataModel/StyledFormItemWithTip.tsx}     |    45 +-
 .../UploadDataModel/UploadDataModal.test.tsx       |   599 +
 .../features/databases/UploadDataModel/index.tsx   |  1035 +
 .../features/databases/UploadDataModel/styles.ts   |   100 +
 superset-frontend/src/features/databases/types.ts  |    83 +-
 .../datasets/AddDataset/DatasetPanel/index.tsx     |     4 +-
 .../AddDataset/LeftPanel/LeftPanel.test.tsx        |     4 +
 .../src/features/home/ActivityTable.test.tsx       |   137 +-
 .../src/features/home/ChartTable.test.tsx          |   126 +-
 superset-frontend/src/features/home/Menu.tsx       |     8 +-
 .../src/features/home/RightMenu.test.tsx           |    14 +-
 superset-frontend/src/features/home/RightMenu.tsx  |     6 +-
 superset-frontend/src/features/home/SubMenu.tsx    |    18 +-
 .../src/features/reports/ReportModal/index.tsx     |     7 +-
 .../components/Select/SelectFilterPlugin.tsx       |     6 +-
 .../src/hooks/apiResources/queries.test.ts         |   154 +
 .../src/hooks/apiResources/queries.ts              |   176 +
 .../src/hooks/apiResources/queryApi.ts             |    12 +-
 superset-frontend/src/hooks/apiResources/tables.ts |    12 +-
 .../src/middleware/asyncEvent.test.ts              |     5 +-
 superset-frontend/src/middleware/asyncEvent.ts     |     8 +-
 .../src/pages/AnnotationList/index.tsx             |     9 +-
 superset-frontend/src/pages/Chart/Chart.test.tsx   |     3 +
 superset-frontend/src/pages/Chart/index.tsx        |     2 +-
 .../src/pages/ChartCreation/index.tsx              |     6 +-
 superset-frontend/src/pages/ChartList/index.tsx    |    19 +-
 .../src/pages/DashboardList/index.tsx              |     3 +
 superset-frontend/src/pages/DatabaseList/index.tsx |    49 +-
 superset-frontend/src/pages/Home/Home.test.tsx     |    16 +
 superset-frontend/src/pages/Home/index.tsx         |     7 +-
 superset-frontend/src/setup/setupApp.ts            |     4 +-
 superset-frontend/src/setup/setupErrorMessages.ts  |     7 +-
 superset-frontend/src/types/Database.ts            |     1 +
 superset-frontend/src/types/bootstrapTypes.ts      |     1 +
 .../src/utils/getClientErrorObject.test.ts         |    83 -
 superset-frontend/src/utils/localStorageHelpers.ts |     2 +
 superset-frontend/src/views/CRUD/hooks.ts          |    16 +-
 superset-frontend/src/views/CRUD/utils.tsx         |     6 +-
 .../src/visualizations/presets/MainPreset.js       |    17 +-
 superset-frontend/webpack.config.js                |     4 +-
 superset-websocket/.nvmrc                          |     2 +-
 superset-websocket/package-lock.json               |   526 +-
 superset-websocket/package.json                    |    14 +-
 superset-websocket/src/index.ts                    |    13 +-
 superset-websocket/utils/client-ws-app/.nvmrc      |     2 +-
 .../utils/client-ws-app/package-lock.json          |   368 +-
 .../utils/client-ws-app/package.json               |     2 +-
 superset/__init__.py                               |    15 +-
 .../advanced_data_type/plugins/internet_port.py    |     6 +-
 superset/advanced_data_type/schemas.py             |     1 +
 superset/annotation_layers/filters.py              |     4 +-
 superset/cachekeys/api.py                          |     6 +-
 superset/charts/filters.py                         |     4 +-
 superset/cli/main.py                               |     3 +-
 superset/cli/viz_migrations.py                     |     3 +
 superset/columns/models.py                         |     1 +
 superset/commands/base.py                          |    22 +-
 superset/commands/chart/data/get_data_command.py   |     1 -
 superset/commands/chart/export.py                  |     7 +-
 superset/commands/chart/importers/v1/__init__.py   |     3 +-
 superset/commands/chart/update.py                  |     5 +-
 superset/commands/dashboard/export.py              |     7 +-
 .../commands/dashboard/importers/v1/__init__.py    |     4 +-
 superset/commands/dashboard/update.py              |     9 +-
 superset/commands/database/create.py               |     9 +-
 superset/commands/database/exceptions.py           |    21 +
 superset/commands/database/export.py               |    14 +-
 .../commands/database/importers/v1/__init__.py     |     3 +-
 superset/commands/database/ssh_tunnel/create.py    |    11 +
 .../commands/database/ssh_tunnel/exceptions.py     |     4 +
 superset/commands/database/ssh_tunnel/update.py    |    25 +-
 superset/commands/database/tables.py               |     2 +
 superset/commands/database/test_connection.py      |    49 +-
 superset/commands/database/update.py               |    88 +-
 .../database/uploaders}/__init__.py                |     0
 superset/commands/database/uploaders/base.py       |   168 +
 superset/commands/database/uploaders/csv_reader.py |   102 +
 .../commands/database/uploaders/excel_reader.py    |    86 +
 superset/commands/database/validate.py             |     2 +-
 superset/commands/database/validate_sql.py         |     3 +-
 superset/commands/dataset/create.py                |    13 +-
 superset/commands/dataset/export.py                |     7 +-
 superset/commands/dataset/importers/v1/__init__.py |     3 +-
 superset/commands/dataset/importers/v1/utils.py    |    10 +-
 superset/commands/dataset/update.py                |     9 +-
 superset/commands/explore/get.py                   |    17 +-
 superset/commands/importers/v1/__init__.py         |    12 +-
 superset/commands/importers/v1/assets.py           |     1 -
 superset/commands/importers/v1/examples.py         |     1 -
 superset/commands/importers/v1/utils.py            |    12 +-
 superset/commands/query/export.py                  |     7 +-
 superset/commands/query/importers/v1/__init__.py   |     4 +-
 superset/commands/report/alert.py                  |     2 +-
 superset/commands/report/exceptions.py             |     4 +
 superset/commands/report/execute.py                |    23 +-
 superset/commands/report/log_prune.py              |     1 +
 superset/commands/report/update.py                 |     7 +-
 superset/commands/sql_lab/estimate.py              |    25 +-
 superset/commands/sql_lab/execute.py               |     4 +-
 superset/commands/temporary_cache/create.py        |     3 +-
 superset/commands/temporary_cache/delete.py        |     3 +-
 superset/commands/temporary_cache/get.py           |     3 +-
 superset/commands/temporary_cache/update.py        |     3 +-
 superset/commands/utils.py                         |    21 +-
 superset/common/query_actions.py                   |     2 +
 superset/common/query_context.py                   |     2 +-
 superset/common/query_context_factory.py           |     2 +-
 superset/common/query_context_processor.py         |     8 +
 superset/common/query_object.py                    |     5 +-
 superset/common/utils/query_cache_manager.py       |     5 +
 superset/config.py                                 |   114 +-
 superset/connectors/sqla/__init__.py               |     2 +-
 superset/connectors/sqla/models.py                 |   146 +-
 superset/connectors/sqla/utils.py                  |    30 +-
 superset/connectors/sqla/views.py                  |     4 +-
 superset/constants.py                              |     2 +
 superset/daos/base.py                              |     2 +-
 superset/daos/chart.py                             |     2 +-
 superset/daos/database.py                          |     8 +-
 superset/daos/dataset.py                           |    28 +-
 .../user.py}                                       |    35 +-
 superset/dashboards/api.py                         |     6 +-
 superset/dashboards/schemas.py                     |     1 +
 superset/databases/api.py                          |   469 +-
 superset/databases/decorators.py                   |     4 +-
 superset/databases/schemas.py                      |   329 +-
 superset/databases/utils.py                        |    54 +-
 superset/dataframe.py                              |     4 +-
 superset/datasets/models.py                        |     1 -
 superset/db_engine_specs/README.md                 |    63 +-
 superset/db_engine_specs/__init__.py               |     3 +-
 superset/db_engine_specs/base.py                   |   378 +-
 superset/db_engine_specs/bigquery.py               |   115 +-
 superset/db_engine_specs/crate.py                  |     2 +-
 superset/db_engine_specs/db2.py                    |    10 +-
 superset/db_engine_specs/dremio.py                 |     7 +
 superset/db_engine_specs/drill.py                  |     6 +-
 superset/db_engine_specs/duckdb.py                 |   218 +-
 superset/db_engine_specs/gsheets.py                |    38 +-
 superset/db_engine_specs/hive.py                   |    60 +-
 superset/db_engine_specs/impala.py                 |    13 +-
 superset/db_engine_specs/lib.py                    |    10 +-
 .../db_engine_specs/mariadb.py                     |     8 +-
 superset/db_engine_specs/ocient.py                 |     6 +-
 superset/db_engine_specs/postgres.py               |     9 +-
 superset/db_engine_specs/presto.py                 |   120 +-
 superset/db_engine_specs/trino.py                  |    54 +-
 superset/errors.py                                 |     9 +-
 superset/examples/bart_lines.py                    |     5 +-
 superset/examples/birth_names.py                   |     7 +-
 .../Vaccine_Candidates_per_Approach__Stage.yaml    |     0
 .../Vaccine_Candidates_per_Country.yaml            |     0
 .../Vaccine_Candidates_per_Country_261.yaml        |     0
 .../Vaccine_Candidates_per_Country__Stage.yaml     |     0
 .../Vaccine_Candidates_per_Country__Stage_749.yaml |     0
 .../Vaccine_Candidates_per_Phase.yaml              |     0
 .../Vaccine_Candidates_per_Phase_587.yaml          |     0
 .../Age_distribution_of_respondents.yaml           |     0
 .../Are_you_an_ethnic_minority_in_your_city.yaml   |     0
 .../Breakdown_of_Developer_Type.yaml               |     0
 .../{ => FCC New Coder Survey}/Commute_Time.yaml   |     0
 .../Country_of_Citizenship.yaml                    |     0
 ...elopers_Is_this_your_first_development_job.yaml |     0
 .../Degrees_vs_Income.yaml                         |     0
 .../Ethnic_Minority__Gender.yaml                   |     0
 .../First_Time_Developer.yaml                      |     0
 .../First_Time_Developer__Commute_Time.yaml        |     0
 .../charts/{ => FCC New Coder Survey}/Gender.yaml  |     0
 .../Highest_degree_held.yaml                       |     0
 .../How_do_you_prefer_to_work.yaml                 |     0
 .../How_much_do_you_expect_to_earn_0_-_100k.yaml   |     0
 .../Last_Year_Income_Distribution.yaml             |     0
 .../Location_of_Current_Developers.yaml            |     0
 .../Number_of_Aspiring_Developers.yaml             |     0
 .../Preferred_Employment_Style.yaml                |     0
 .../Relocation_ability.yaml                        |     0
 .../Top_15_Languages_Spoken_at_Home.yaml           |     0
 .../Work_Location_Preference.yaml                  |     0
 .../Cross_Channel_Relationship.yaml                |     0
 .../Cross_Channel_Relationship_heatmap_2786.yaml   |     0
 .../{ => Slack Dashboard}/Members_per_Channel.yaml |     0
 .../Messages_per_Channel.yaml                      |     0
 .../New_Members_per_Month.yaml                     |     0
 .../{ => Slack Dashboard}/Number_of_Members.yaml   |     0
 .../{ => Slack Dashboard}/Top_Timezones.yaml       |     0
 .../{ => Slack Dashboard}/Weekly_Messages.yaml     |     0
 .../{ => Slack Dashboard}/Weekly_Threads.yaml      |     0
 .../{ => Unicode Test}/Unicode_Cloud.test.yaml     |     0
 .../Number_of_Deals_for_each_Combination.yaml      |     0
 .../Overall_Sales_By_Product_Line.yaml             |     0
 .../Proportion_of_Revenue_by_Product_Line.yaml     |     0
 .../{ => Vehicle Sales}/Quarterly_Sales.yaml       |     0
 .../Quarterly_Sales_By_Product_Line.yaml           |     0
 .../{ => Vehicle Sales}/Revenue_by_Deal_Size.yaml  |     0
 .../Seasonality_of_Revenue_per_Product_Line.yaml   |     0
 .../{ => Vehicle Sales}/Total_Items_Sold.yaml      |     0
 .../Total_Items_Sold_By_Product_Line.yaml          |     0
 .../charts/{ => Vehicle Sales}/Total_Revenue.yaml  |     0
 .../charts/{ => Video Game Sales}/Games.yaml       |     0
 .../{ => Video Game Sales}/Games_per_Genre.yaml    |     0
 .../Games_per_Genre_over_time.yaml                 |     0
 .../Most_Dominant_Platforms.yaml                   |     0
 ...mes_That_Hit_100k_in_Sales_By_Release_Year.yaml |     0
 .../Popular_Genres_Across_Platforms.yaml           |     0
 .../Publishers_With_Most_Titles.yaml               |     0
 .../Rise__Fall_of_Video_Game_Consoles.yaml         |     0
 ...op_10_Games_Proportion_of_Sales_in_Markets.yaml |     0
 .../Total_Sales_per_Market_Grouped_by_Genre.yaml   |     0
 superset/examples/countries.py                     |     3 +-
 superset/examples/country_map.py                   |     5 +-
 superset/examples/data_loading.py                  |    22 +-
 superset/examples/energy.py                        |     6 +-
 superset/examples/flights.py                       |     9 +-
 superset/examples/helpers.py                       |     1 +
 superset/examples/long_lat.py                      |     5 +-
 superset/examples/multiformat_time_series.py       |     5 +-
 superset/examples/paris.py                         |     5 +-
 superset/examples/random_time_series.py            |     5 +-
 superset/examples/sf_population_polygons.py        |     5 +-
 superset/examples/supported_charts_dashboard.py    |     5 +-
 superset/examples/tabbed_dashboard.py              |     1 +
 superset/examples/world_bank.py                    |     6 +-
 superset/exceptions.py                             |    93 +
 superset/extensions/metadb.py                      |     9 +-
 superset/forms.py                                  |    26 +-
 superset/initialization/__init__.py                |    12 +-
 superset/jinja_context.py                          |    81 +-
 superset/key_value/types.py                        |     7 +-
 superset/legacy.py                                 |     1 +
 superset/migrations/migration_utils.py             |     2 +-
 superset/migrations/shared/migrate_viz/__init__.py |     2 +-
 superset/migrations/shared/migrate_viz/base.py     |     2 +-
 .../migrations/shared/migrate_viz/processors.py    |    15 +
 superset/migrations/shared/utils.py                |     5 +-
 .../versions/2015-09-21_17-30_4e6a06bad7a8_init.py |     4 +-
 .../versions/2015-10-05_10-32_5a7bad26f2a7_.py     |     4 +-
 .../versions/2015-10-05_22-11_1e2841a4128_.py      |     4 +-
 ...0-54_2929af7925ed_tz_offsets_in_data_sources.py |     4 +-
 ...12-04_09-42_1a48a5411020_adding_slug_to_dash.py |     6 +-
 ...15-12-04_11-16_315b3f4da9b0_adding_log_model.py |     4 +-
 .../2015-12-13_08-38_55179c7f25c7_sqla_descr.py    |     4 +-
 .../2015-12-14_13-37_12d55656cbca_is_featured.py   |     4 +-
 .../2015-12-15_17-02_2591d77e9831_user_id.py       |     4 +-
 .../versions/2016-01-13_20-24_8e80a26a31db_.py     |     5 +-
 ...6-01-17_22-00_7dbf98566af7_slice_description.py |     4 +-
 .../2016-01-18_23-43_43df8de3a5f4_dash_json.py     |     4 +-
 .../2016-02-03_17-41_d827694c7555_css_templates.py |     4 +-
 .../2016-02-10_08-47_430039611635_log_more.py      |     1 +
 ...3-13_09-56_a2d606a761d9_adding_favstar_model.py |     4 +-
 ...-13_21-30_18e88e1cc004_making_audit_nullable.py |     1 +
 ...2016-03-17_08-40_836c0bf75904_cache_timeouts.py |     5 +-
 ...016-03-24_14-13_763d4b211ec9_fixing_audit_fk.py |     8 +-
 .../2016-03-25_14-35_1d2ddd543133_log_dt.py        |     5 +-
 ...4f117f9_adding_extra_field_to_database_model.py |     5 +-
 ...22-41_bb51420eaf83_add_schema_to_table_model.py |     4 +-
 ..._b4456560d4f3_change_table_unique_constraint.py |     1 +
 ...04-15_17-58_4fa88fe24e94_owners_many_to_many.py |     5 +-
 ..._08-54_c3a8f8611885_materializing_permission.py |     1 +
 ...bf6129e13_adding_verbose_name_to_tablecolumn.py |     4 +-
 ...5-11_17-28_956a063c52b3_adjusting_key_length.py |     1 +
 ...9ee0e3_fix_wrong_constraint_on_table_columns.py |     3 +-
 ...d8bc074f7aad_add_new_field_is_restricted_to_.py |    10 +-
 .../versions/2016-06-16_14-15_960c69cb1f5b_.py     |     4 +-
 ...06-27_08-43_27ae655e4247_make_creator_owners.py |    16 +-
 ...-07-06_22-04_f162a1dea4c4_d3format_by_metric.py |     4 +-
 ...016-07-25_17-48_ad82a75afd82_add_query_model.py |     4 +-
 ...8_14-06_3c3ffe173e4f_add_sql_string_to_table.py |     4 +-
 ...26_41f6a59a61f2_database_options_for_sql_lab.py |     1 +
 ...-09-07_23-50_33d996bcc382_update_slice_model.py |     1 +
 ..._17-39_5e4a03ef0bf0_add_request_access_model.py |     1 +
 ...9-12_23-33_4500485bde7d_allow_run_sync_async.py |     4 +-
 .../versions/2016-09-19_17-22_b347b202819b_.py     |     1 +
 ...09-22_10-21_3b626e2a6783_sync_db_with_models.py |     1 +
 ...2_11-31_eca4694defa7_sqllab_setting_defaults.py |     2 +-
 ...d66c4246e_add_cache_timeout_to_druid_cluster.py |     4 +-
 .../versions/2016-10-02_10-35_ef8843b41dac_.py     |     1 +
 ...0-05_11-30_b46fa1b0b39e_add_params_to_tables.py |     6 +-
 ...0-14_11-17_7e3ddad2a00b_results_key_to_query.py |     4 +-
 ...2016-10-25_10-16_ad4d656d92bc_add_avg_metric.py |     4 +-
 .../2016-11-02_17-36_c611f2b591b8_dim_spec.py      |     4 +-
 ...6-11-14_15-23_e46f2d27a08e_materialize_perms.py |     5 +-
 .../versions/2016-11-23_10-27_f1f2d4af5b90_.py     |     4 +-
 .../2016-12-06_17-40_1296d28ec131_druid_exports.py |     4 +-
 .../2016-12-13_16-19_525c854f0005_log_this_plus.py |     4 +-
 .../versions/2016-12-19_09-57_6414e83d82b7_.py     |     4 +-
 .../2017-01-10_11-47_bcf3126872fc_add_keyvalue.py  |     4 +-
 ...4_12-31_db0c65b146bd_update_slice_model_json.py |    10 +-
 ...2-40_f18570e03440_add_query_result_key_index.py |     1 +
 ...7c195a_rewriting_url_from_shortner_with_new_.py |    15 +-
 .../versions/2017-02-10_17-58_d6db5a5cdb5d_.py     |     4 +-
 ...9-15_732f1c06bcbf_add_fetch_values_predicate.py |     4 +-
 ...dfe5fb6c_adding_verbose_name_to_druid_column.py |     4 +-
 .../versions/2017-03-16_14-55_ea033256294a_.py     |     3 -
 ...03-16_18-10_db527d8c4c78_add_db_verbose_name.py |     6 +-
 .../versions/2017-03-21_15-41_979c03af3341_.py     |     3 -
 ..._11-28_a6c18f869a4e_query_start_running_time.py |     1 +
 .../2017-03-29_15-04_2fcdcb35e487_saved_queries.py |     1 +
 ...a65458420354_add_result_backend_time_logging.py |     1 +
 .../2017-07-26_20-09_ca69c70ec99b_tracking_url.py  |     5 +-
 ...-35_a9c47e2c1547_add_impersonate_user_to_dbs.py |     5 +-
 .../2017-09-13_16-36_ddd6ebdd853b_annotations.py   |     1 +
 ...5-09_19a814813610_adding_metric_warning_text.py |     4 +-
 .../versions/2017-09-19_15-09_d39b1e37131d_.py     |     3 -
 .../versions/2017-09-21_18-37_472d2f73dfd4_.py     |     3 -
 .../versions/2017-09-24_20-18_f959a6652acd_.py     |     3 -
 ...-08_08-19_67a6ac9b727b_update_spatial_params.py |     1 +
 ...2-17_11-06_21e88bc06c02_annotation_migration.py |     1 +
 .../2018-02-13_08-07_e866bd2d4976_smaller_grid.py  |     2 +-
 ...8c4473c581_allow_multi_schema_metadata_fetch.py |     1 +
 .../versions/2018-03-20_19-47_f231d82b9b26_.py     |     1 +
 ...fdf31bdd4_add_published_column_to_dashboards.py |     4 +-
 ...-04-03_08-19_130915240929_is_sqllab_viz_flow.py |     1 +
 .../versions/2018-04-08_07-34_30bb17c0dc76_.py     |     6 +-
 ...9_bf706ae5eb46_cal_heatmap_metric_to_metrics.py |     1 +
 .../versions/2018-04-10_20-46_c9495751e314_.py     |     4 +-
 .../versions/2018-04-12_16-00_5ccf602336a0_.py     |     4 +-
 ...5_e502db2af7be_add_template_params_to_tables.py |     6 +-
 ..._20-28_6c7537a6004a_models_for_email_reports.py |     4 +-
 ...018-06-04_11-12_c5756bec8b47_time_grain_sqla.py |    10 +-
 ...6-07_09-52_afb7730f6a9c_remove_empty_filters.py |    10 +-
 ...13_10-20_4451805bbaa1_remove_double_percents.py |    10 +-
 .../2018-06-13_14-54_bddc498dd179_adhoc_filters.py |    12 +-
 ...4_14-31_80a67c5192fa_single_pie_chart_metric.py |    10 +-
 .../versions/2018-07-16_18-04_1d9e835a84f9_.py     |     1 +
 .../2018-07-19_23-41_c617da68de7d_form_nullable.py |    10 +-
 ...07-20_15-31_7f2635b51f5d_update_base_columns.py |    10 +-
 ...07-20_15-57_e9df189e5c7e_update_base_metrics.py |    10 +-
 ...-07-20_16-08_937d04c16b64_update_datasources.py |     4 +-
 .../versions/2018-07-22_08-49_c829ff0b37d0_.py     |     3 -
 .../2018-07-22_08-50_7467e77870e4_remove_aggs.py   |     1 +
 .../versions/2018-07-22_09-32_e3970889f38e_.py     |     3 -
 .../versions/2018-07-22_11-50_fc480c87706c_.py     |     3 -
 ..._bebcf3fed1fe_convert_dashboard_v1_positions.py |     6 +-
 .../versions/2018-07-22_21-51_705732c70154_.py     |     4 +-
 .../versions/2018-07-23_11-20_46ba6aaaac97_.py     |     3 -
 ...8-07-26_11-10_c82ee8a39623_add_implicit_tags.py |    14 +-
 ...14-38_0c5070e96b57_add_user_attributes_table.py |     4 +-
 .../2018-08-13_11-30_1a1d627ebd8e_position_json.py |     1 -
 ...826_add_metadata_column_to_annotation_model_.py |     4 +-
 ...08-42_0b1f1ab473c0_add_extra_column_to_query.py |     1 +
 ...08545_migrate_time_range_for_default_filters.py |     6 +-
 ...8b9b7_remove_coordinator_from_druid_cluster_.py |     1 +
 ...-27_11-53_a61b40f9f57f_remove_allow_run_sync.py |     1 +
 ...2018-12-11_22-03_fb13d49b72f9_better_filters.py |     5 +-
 ...d38_increase_size_of_name_column_in_ab_view_.py |     4 +-
 .../versions/2018-12-18_22-45_de021a1ca60d_.py     |     1 +
 .../versions/2018-12-22_17-26_fbd55e0f83eb_.py     |     3 -
 ..._a33a03f16c4a_add_extra_column_to_savedquery.py |     4 +-
 .../versions/2019-01-17_08-31_8b70aa3d0f87_.py     |     3 -
 .../versions/2019-01-18_14-56_18dc26817ad2_.py     |     3 -
 ...2-01_16-07_e553e78e90c5_add_druid_auth_py_py.py |     5 +-
 .../versions/2019-02-16_17-44_45e7da7cfeba_.py     |     3 -
 .../2019-03-21_10-22_d94d33dbe938_form_strip.py    |    10 +-
 ...a3f04bc82_add_parent_ids_in_dashboard_layout.py |     3 +-
 ...er_sql_column_data_type_in_query_mysql_table.py |     1 +
 ...1a0d6f2da_remove_limit_used_from_query_model.py |     4 +-
 ...5_b4a38aa87893_deprecate_database_expression.py |     4 +-
 .../2019-06-28_13-17_ab8c66efdd01_resample.py      |    14 +-
 ...9-02_def97f26fdfb_add_index_to_tagged_object.py |     2 +-
 ...ng_unique_constraint_on_dashboard_slices_tbl.py |     3 +-
 ...50_11c737c17cc6_deprecate_restricted_metrics.py |     1 +
 ...5afa9079866a_serialize_schema_permissions_py.py |     1 -
 ...e_form_strip_leading_and_trailing_whitespace.py |     1 +
 ...2_00-29_b6fa807eac07_make_names_non_nullable.py |     1 +
 ...5-05_cca2f5d568c8_add_encrypted_extra_to_dbs.py |     4 +-
 .../2019-10-10_13-52_1495eb914ad3_time_range.py    |     1 +
 ...acd2cf3df2_alter_type_of_dbs_encrypted_extra.py |     1 -
 ...127d0d1d_reconvert_legacy_filters_into_adhoc.py |    17 +-
 ...05_db4b49eb0782_add_tables_for_sql_lab_state.py |     5 +-
 ...e1c9b09d0_add_not_null_to_dbs_sqlalchemy_url.py |     1 +
 ...8ea_change_table_schema_description_to_long_.py |     8 +-
 ...4_17-07_0a6f12f60c73_add_role_level_security.py |     4 +-
 ...-08_01-17_e96dbf2cfef0_datasource_cluster_fk.py |     2 +-
 ..._14-13_3325d4caccc8_dashboard_scoped_filters.py |     2 +-
 ...a401_add_tmp_schema_name_to_the_query_object.py |     4 +-
 ...10-42_f9a30386bd74_cleanup_time_grainularity.py |    10 +-
 ...25_10-49_b5998378c225_add_certificate_to_dbs.py |     6 +-
 ...57699a813e_add_tables_relation_to_row_level_.py |     6 +-
 ...29_09-24_620241d1153f_update_time_grain_sqla.py |    12 +-
 ...5-12_12-59_ea396d202291_ctas_method_in_query.py |     4 +-
 ...21-01_743a117f0d98_add_slack_to_the_schedule.py |     4 +-
 .../2020-05-26_23-21_2f1d15e8a6af_add_alerts.py    |     5 +-
 ...09_17-12_73fd22e742ab_add_dynamic_plugins_py.py |     4 +-
 ...08-08_18-10_f2672aa8350a_add_slack_to_alerts.py |     4 +-
 ...978245563a02_migrate_iframe_to_dash_markdown.py |     3 +-
 ...acb39_add_extra_column_to_tables_and_metrics.py |     4 +-
 .../versions/2020-08-12_15-47_f80a3b88324b_.py     |     3 -
 .../2020-08-28_17-16_175ea3592453_cache_lookup.py  |     4 +-
 ...-08-31_20-30_2e5a0ee25ed4_refractor_alerting.py |     6 +-
 ...828ac4e_add_rls_filter_type_and_grouping_key.py |    10 +-
 ...654_fix_data_access_permissions_for_virtual_.py |    13 +-
 ...d70ab98_fix_table_unique_constraint_in_mysql.py |     8 +-
 ...b56500de1855_add_uuid_column_to_import_mixin.py |     1 +
 ..._585b0b1a7b18_add_exec_info_to_saved_queries.py |     4 +-
 ...6e99fb176a0_add_import_mixing_to_saved_query.py |     2 +-
 ...1-04_11-06_49b5a32daba5_add_report_schedules.py |     7 +-
 ...20-11-15_16-08_a8173232b786_add_path_to_logs.py |     6 +-
 ...e38177dbf641_security_converge_saved_queries.py |     8 +-
 ...15-25_40f16acf1ba7_security_converge_reports.py |     8 +-
 ...8ee129739cf9_security_converge_css_templates.py |     8 +-
 ...ced1f0e76_reports_add_working_timeout_column.py |     4 +-
 ...-03_16-21_811494c0cc23_remove_path_from_logs.py |     5 +-
 ..._14-13_ccb74baaa89b_security_converge_charts.py |     8 +-
 ...5-05_45731db65d9c_security_converge_datasets.py |     8 +-
 ...45_1f6dca87d1a2_security_converge_dashboards.py |     8 +-
 ...-49_42b4c9e01447_security_converge_databases.py |     9 +-
 ...9-07_ab104a954a8f_reports_alter_crontab_size.py |     4 +-
 ...12-15_e37912a26567_security_converge_queries.py |     8 +-
 ...c878781977c6_alert_reports_shared_uniqueness.py |    12 +-
 ...cdd12658_add_roles_relationship_to_dashboard.py |     5 +-
 ...60bf0649a77_migrate_x_dateunit_in_time_range.py |    26 +-
 ...2fdb_add_granularity_to_charts_where_missing.py |    12 +-
 ...-10_12-32_41ce8799acc3_rename_pie_label_type.py |    10 +-
 ...1412ec1e5a7b_legacy_force_directed_to_echart.py |     4 +-
 ...8_09-13_c501b7c653a3_add_missing_uuid_column.py |    18 +-
 ...2_67da9ef1ef9c_add_hide_left_bar_to_tabstate.py |     7 +-
 ...411006_add_execution_id_to_report_execution_.py |     6 +-
 ...989bbe479899_rename_filter_configuration_in_.py |    10 +-
 ...021-03-29_11-15_3ebe0993c770_filterset_table.py |     4 +-
 ...e1b9c3_add_report_format_to_report_schedule_.py |     4 +-
 ...ea61c5e7_remove_dataset_health_check_message.py |    12 +-
 ...88938_country_map_use_lowercase_country_name.py |     1 +
 ...3a3a8ff221_migrate_filter_sets_to_new_format.py |    14 +-
 ...0d715cc_add_limiting_factor_column_to_query_.py |     4 +-
 ...ed7ec95_migrate_native_filters_to_new_schema.py |    14 +-
 ...530256cea_add_save_option_column_to_db_model.py |     4 +-
 ...ae1ed299413b_add_timezone_to_report_schedule.py |     4 +-
 ...9248280_add_creation_method_to_reports_model.py |     4 +-
 ...-09_030c840e3a1c_add_query_context_to_slices.py |     5 +-
 ...27_08-25_31b2a1039d4a_drop_tables_constraint.py |     1 -
 ...3605f370a_fix_schemas_allowed_for_csv_upload.py |     1 +
 ...d20ba9ecb33_add_last_saved_at_to_slice_model.py |     4 +-
 ...15da_migrate_pivot_table_v2_heatmaps_to_new_.py |    10 +-
 ...13dd52_change_fetch_values_predicate_to_text.py |    12 +-
 ...1091c0ef16_add_extra_column_to_columns_model.py |     4 +-
 ...4fbb_add_type_to_native_filter_configuration.py |    16 +-
 ...-09-19_14-42_b92d69a6643c_rename_csv_to_file.py |     6 +-
 ...453f4e2e_migrate_timeseries_limit_metric_to_.py |    10 +-
 ...12_11-15_32646df09c64_update_time_grain_sqla.py |    10 +-
 ...cbaac5_change_datatype_of_type_in_basecolumn.py |     4 +-
 ...e5f1dacd_rename_to_schemas_allowed_for_file_.py |    12 +-
 ...-11-11_16-41_b8d3a24d9131_new_dataset_models.py |     1 +
 ...e27eaf93db_add_extra_config_column_to_alerts.py |     8 +-
 ...aa3ff_add_force_screenshot_to_alerts_reports.py |     8 +-
 ...5b9441_rename_big_viz_total_form_data_fields.py |    12 +-
 ...8dd_add_saved_query_foreign_key_to_tab_state.py |     4 +-
 ...d1d2_move_pivot_table_v2_legacy_order_by_to_.py |    12 +-
 ...9410a97a_add_columns_for_external_management.py |     4 +-
 ...03_5afbb1a5849b_add_embedded_dahshoard_table.py |     8 +-
 ..._ab9a9d86e695_deprecate_time_range_endpoints.py |     1 +
 ...b0ca7944_change_adhoc_filter_b_from_none_to_.py |    10 +-
 ...03-04_09-59_6766938c6065_add_key_value_store.py |     8 +-
 ...3_sql_lab_models_database_constraint_updates.py |     6 +-
 ...d617f14_add_on_saved_query_delete_tab_state_.py |     6 +-
 ...14-38_a9422eeaae74_new_dataset_models_take_2.py |    49 +-
 ...d0249074e4_deprecate_time_range_endpoints_v2.py |     1 +
 .../versions/2022-04-06_14-10_9d8a8d575284_.py     |     3 -
 ...07e4fdbaba_rm_time_range_endpoints_from_qc_3.py |    10 +-
 ...-39_cbe71abde154_fix_report_schedule_and_log.py |    10 +-
 ...8_16-07_e786798587de_delete_none_permissions.py |     8 +-
 ...-14_15-28_e09b4ae78457_resize_key_value_blob.py |     4 +-
 ..._16-17_f3afaf1f11f0_add_unique_name_desc_rls.py |     8 +-
 ...59_7fb8bca906d2_permalink_rename_filterstate.py |    14 +-
 ...5-48_409c7b420ab0_add_created_by_fk_as_owner.py |     6 +-
 ...cf3d64daf4_add_user_id_dttm_idx_to_log_model.py |     2 +-
 ..._13-00_c747c78868b6_migrating_legacy_treemap.py |     1 +
 ...-07_14-00_06e1e70058c7_migrating_legacy_area.py |     1 +
 ...61a56_rename_report_schedule_extra_to_extra_.py |     4 +-
 ...-16_a39867932713_query_context_to_mediumtext.py |     1 +
 ...665d_fix_table_chart_conditional_formatting_.py |     1 +
 ...rop_column_allow_multi_schema_metadata_fetch.py |     4 +-
 ...-34_deb4c9d4a4ef_parameters_in_saved_queries.py |     4 +-
 ...c2d8ec8595_create_ssh_tunnel_credentials_tbl.py |    12 +-
 ...1_4ce1d9b25135_remove_filter_bar_orientation.py |    10 +-
 ...4-46_c0a3ea245b61_remove_show_native_filters.py |    10 +-
 ...ac08bb5b83_invert_horizontal_bar_chart_order.py |    11 +-
 ...7_13-24_b5ea9d343307_bar_chart_stack_options.py |    11 +-
 ...03-27_12-30_7e67aecbf3f1_chart_ds_constraint.py |    12 +-
 ...2af1b_drop_postgres_enum_constrains_for_tags.py |     4 +-
 ...2a5681ddfd_convert_key_value_entries_to_json.py |    18 +-
 ...-41_4ea966691069_cross_filter_global_scoping.py |    22 +-
 ...06-01_13-13_83e1abbe777f_drop_access_request.py |     4 +-
 ...02_9ba2ce3086e5_migrate_pivot_table_v1_to_v2.py |     1 +
 ...-08_10-22_4c5da39be729_migrate_treemap_chart.py |     1 +
 ...e58e1e58e5c_migrate_dual_line_to_mixed_chart.py |     3 +-
 ..._90139bf715e4_add_currency_column_to_metrics.py |     4 +-
 ..._add_on_delete_cascade_for_tables_references.py |     2 +-
 .../2023-06-28_19-49_bf646a0c1501_json_metadata.py |     1 -
 ..._240d23c7f86f_update_tag_model_w_description.py |     5 +-
 ...2a3124dd66_drop_rouge_constraints_and_tables.py |     6 +-
 ..._add_on_delete_cascade_for_owners_references.py |     2 +-
 ...0-34_e0f6f91c2055_create_user_favorite_table.py |     5 +-
 ...delete_obsolete_druid_nosql_slice_parameters.py |    12 +-
 ...6f8b1280_cleanup_erroneous_parent_filter_ids.py |    12 +-
 ...9_17-54_ee179a490af9_deckgl_path_width_units.py |     1 +
 ...23_0769ef90fddd_fix_schema_perm_for_datasets.py |    10 +-
 .../2023-08-08_14-14_2e826adca42c_log_json.py      |     1 -
 ...3_add_on_delete_cascade_for_dashboard_slices.py |     2 +-
 ...on_delete_cascade_for_embedded_dashboards.py.py |     2 +-
 ...086c2676_add_normalize_columns_to_sqla_model.py |    11 +-
 ...54aca4c8a2_increase_ab_user_email_field_size.py |     4 +-
 ...317970b4400c_added_time_secondary_column_to_.py |    11 +-
 ...91_add_on_delete_cascade_for_dashboard_roles.py |     2 +-
 ...12-01_12-03_b7851ee5522f_replay_317970b4400c.py |     4 +-
 ...ff00fe8_add_percent_calculation_type_funnel_.py |     1 +
 ...20_65a167d4c62e_add_indexes_to_report_models.py |     4 +-
 ...16_13-14_59a1450b3c10_drop_filter_sets_table.py |     3 +-
 ...96164e3017c6_tagged_object_unique_constraint.py |     3 +-
 ...4-01-18_12-12_15a2c68a2e6b_merging_two_heads.py |     3 -
 ...18_14-41_a32e0c4d8646_migrate_sunburst_chart.py |     6 +-
 ...d09c9_migrate_filter_boxes_to_native_filters.py |    15 +-
 .../2024-01-19_08-42_1cf8e4344e2b_merging.py       |     3 -
 ...2024-01-19_10-03_e863403c0c50_drop_url_table.py |     7 +-
 ...d83218_migrate_can_view_and_drill_permission.py |     8 +-
 ...14-43_17fcea065655_change_text_to_mediumtext.py |     8 +-
 ...7_be1b217cd8cd_big_number_kpi_single_metric.py} |    31 +-
 ...0_16-02_678eefb4ab44_add_access_token_table.py} |    55 +-
 ...-01_22-44_c22cb5c2e546_user_attr_avatar_url.py} |    23 +-
 ..._15-43_5ad7321c2169_mig_new_csv_upload_perm.py} |    28 +-
 ...04-11_15-41_5f57af97bc3f_add_catalog_column.py} |    40 +-
 ...4-04_d60591c5515f_mig_new_excel_upload_perm.py} |    30 +-
 superset/models/__init__.py                        |     2 +-
 superset/models/annotations.py                     |     1 +
 superset/models/cache.py                           |     1 -
 superset/models/core.py                            |   401 +-
 superset/models/dashboard.py                       |    21 +-
 superset/models/helpers.py                         |    63 +-
 superset/models/slice.py                           |    12 +-
 superset/models/sql_lab.py                         |    51 +-
 superset/models/user_attributes.py                 |     6 +-
 superset/queries/api.py                            |    19 +-
 superset/queries/saved_queries/filters.py          |     4 +-
 superset/reports/models.py                         |     8 +-
 superset/reports/notifications/__init__.py         |     4 +-
 superset/reports/notifications/base.py             |     1 +
 superset/reports/notifications/email.py            |    12 +-
 superset/reports/notifications/slack.py            |    23 +-
 superset/reports/schemas.py                        |     6 +-
 superset/result_set.py                             |     6 +-
 superset/row_level_security/api.py                 |     2 +-
 superset/security/api.py                           |     6 +-
 superset/security/manager.py                       |   116 +-
 superset/sql_lab.py                                |    72 +-
 superset/sql_parse.py                              |   601 +-
 superset/sql_validators/__init__.py                |     2 +-
 superset/sql_validators/base.py                    |    17 +-
 superset/sql_validators/postgres.py                |     9 +-
 superset/sql_validators/presto_db.py               |    29 +-
 superset/sqllab/api.py                             |     4 +-
 superset/sqllab/execution_context_convertor.py     |     2 -
 superset/sqllab/query_render.py                    |     3 +-
 superset/sqllab/schemas.py                         |     1 +
 superset/sqllab/sqllab_execution_context.py        |     1 -
 superset/sqllab/utils.py                           |    16 +-
 superset/superset_typing.py                        |    49 +
 superset/tags/models.py                            |     8 +-
 superset/tasks/celery_app.py                       |     3 +-
 superset/tasks/slack_util.py                       |     1 +
 .../templates/superset/form_view/csv_macros.html   |    75 -
 .../templates/superset/form_view/csv_scripts.html  |    39 -
 .../form_view/csv_to_database_view/edit.html       |   137 -
 .../form_view/excel_to_database_view/edit.html     |    25 -
 .../templates/superset/oauth2.html                 |    23 +-
 superset/temporary_cache/api.py                    |    12 +-
 superset/translations/ar/LC_MESSAGES/messages.json |  4883 +++
 .../{messages.pot => ar/LC_MESSAGES/messages.po}   |   107 +-
 superset/translations/de/LC_MESSAGES/messages.po   | 33430 +++++++++---------
 superset/translations/en/LC_MESSAGES/messages.po   | 23183 ++++++-------
 superset/translations/es/LC_MESSAGES/messages.po   | 30723 ++++++++---------
 superset/translations/fr/LC_MESSAGES/messages.po   | 33488 ++++++++++---------
 superset/translations/it/LC_MESSAGES/messages.po   | 28042 ++++++++--------
 superset/translations/ja/LC_MESSAGES/messages.po   | 28930 ++++++++--------
 superset/translations/ko/LC_MESSAGES/messages.po   | 27339 +++++++--------
 superset/translations/messages.pot                 | 23164 ++++++-------
 superset/translations/nl/LC_MESSAGES/messages.po   | 29216 ++++++++--------
 superset/translations/pt/LC_MESSAGES/messages.po   | 29039 ++++++++--------
 .../translations/pt_BR/LC_MESSAGES/messages.po     | 33151 +++++++++---------
 superset/translations/ru/LC_MESSAGES/messages.po   | 32462 +++++++++---------
 superset/translations/sk/LC_MESSAGES/messages.po   | 23754 ++++++-------
 superset/translations/sl/LC_MESSAGES/messages.po   | 32561 +++++++++---------
 superset/translations/tr/LC_MESSAGES/messages.json |  4864 +++
 .../{sk => tr}/LC_MESSAGES/messages.po             | 25234 +++++++-------
 superset/translations/uk/LC_MESSAGES/messages.po   | 32844 +++++++++---------
 superset/translations/zh/LC_MESSAGES/messages.json |  2598 +-
 superset/translations/zh/LC_MESSAGES/messages.po   | 31715 +++++++++---------
 .../translations/zh_TW/LC_MESSAGES/messages.json   |  5593 ++++
 .../{zh => zh_TW}/LC_MESSAGES/messages.po          |  6524 ++--
 superset/utils/core.py                             |    26 +-
 superset/utils/date_parser.py                      |    83 +-
 superset/utils/decorators.py                       |     3 +-
 superset/utils/hashing.py                          |     4 +-
 superset/utils/lock.py                             |    99 +
 superset/utils/log.py                              |    62 +-
 superset/utils/logging_configurator.py             |     2 +-
 superset/utils/mock_data.py                        |     9 +-
 superset/utils/oauth2.py                           |   182 +
 superset/utils/pandas_postprocessing/__init__.py   |     2 +
 superset/utils/pandas_postprocessing/prophet.py    |     2 +-
 .../pandas_postprocessing/rank.py}                 |    52 +-
 superset/utils/pandas_postprocessing/resample.py   |     5 +-
 superset/utils/pandas_postprocessing/rolling.py    |     2 +-
 .../pdf.py}                                        |    41 +-
 superset/utils/retries.py                          |     4 +-
 superset/utils/slack.py                            |    53 +
 superset/utils/webdriver.py                        |     4 +-
 superset/views/__init__.py                         |    14 +
 superset/views/api.py                              |    33 +-
 superset/views/base.py                             |    21 +-
 superset/views/base_api.py                         |    13 +-
 superset/views/chart/mixin.py                      |     2 +-
 superset/views/chart/views.py                      |     4 +-
 superset/views/core.py                             |     8 +-
 superset/views/dashboard/views.py                  |     4 +-
 superset/views/database/forms.py                   |   323 +-
 superset/views/database/mixins.py                  |     6 +-
 superset/views/database/views.py                   |   288 +-
 superset/views/datasource/views.py                 |     8 +-
 superset/views/filters.py                          |     2 -
 superset/views/key_value.py                        |     5 +-
 superset/views/sql_lab/views.py                    |    24 +-
 superset/views/users/api.py                        |    71 +-
 superset/views/utils.py                            |    14 +-
 superset/viz.py                                    |    42 +-
 tests/common/logger_utils.py                       |     3 +-
 tests/conftest.py                                  |     5 +-
 .../example_data/data_generator/base_generator.py  |     3 +-
 .../birth_names/birth_names_generator_factory.py   |     3 +-
 .../example_data/data_loading/base_data_loader.py  |     6 +-
 .../data_loading/data_definitions/types.py         |     3 +-
 .../data_loading/pandas/pandas_data_loader.py      |     3 +-
 tests/integration_tests/access_tests.py            |    58 +-
 .../advanced_data_type/api_tests.py                |     7 +-
 .../annotation_layers/api_tests.py                 |    74 +-
 .../annotation_layers/fixtures.py                  |    60 +-
 tests/integration_tests/async_events/api_tests.py  |     9 +-
 tests/integration_tests/base_api_tests.py          |    45 +-
 tests/integration_tests/base_tests.py              |    14 +-
 tests/integration_tests/cache_tests.py             |    14 +-
 tests/integration_tests/cachekeys/api_tests.py     |     7 +-
 tests/integration_tests/celery_tests.py            |    51 +-
 tests/integration_tests/charts/api_tests.py        |   236 +-
 tests/integration_tests/charts/commands_tests.py   |    17 +-
 tests/integration_tests/charts/data/api_tests.py   |    88 +-
 tests/integration_tests/charts/schema_tests.py     |     8 +-
 tests/integration_tests/cli_tests.py               |     6 +-
 tests/integration_tests/conftest.py                |    17 +-
 .../integration_tests/constants.py                 |    12 +-
 tests/integration_tests/core_tests.py              |   146 +-
 tests/integration_tests/css_templates/api_tests.py |    45 +-
 tests/integration_tests/csv_upload_tests.py        |   336 +-
 tests/integration_tests/dashboard_tests.py         |    85 +-
 tests/integration_tests/dashboard_utils.py         |     2 +-
 tests/integration_tests/dashboards/api_tests.py    |   239 +-
 tests/integration_tests/dashboards/base_case.py    |    21 +-
 .../integration_tests/dashboards/commands_tests.py |     6 +-
 tests/integration_tests/dashboards/consts.py       |     3 -
 tests/integration_tests/dashboards/dao_tests.py    |     7 +-
 .../dashboards/filter_state/api_tests.py           |    14 +-
 .../dashboards/permalink/api_tests.py              |    16 +-
 .../dashboards/security/base_case.py               |     4 +-
 .../dashboards/security/security_dataset_tests.py  |    87 +-
 .../dashboards/security/security_rbac_tests.py     |   154 +-
 tests/integration_tests/databases/api_tests.py     |   476 +-
 .../databases/commands}/__init__.py                |     0
 .../databases/commands/upload_test.py              |   203 +
 .../integration_tests/databases/commands_tests.py  |    21 +-
 .../ssh_tunnel/commands/commands_tests.py          |     3 -
 tests/integration_tests/datasets/api_tests.py      |   306 +-
 tests/integration_tests/datasets/commands_tests.py |    26 +-
 tests/integration_tests/datasource/api_tests.py    |    37 +-
 tests/integration_tests/datasource_tests.py        |    58 +-
 .../db_engine_specs/base_engine_spec_tests.py      |    24 +-
 .../db_engine_specs/base_tests.py                  |     2 +-
 .../db_engine_specs/bigquery_tests.py              |    27 +-
 .../db_engine_specs/hive_tests.py                  |    58 +-
 .../db_engine_specs/postgres_tests.py              |     2 +-
 .../db_engine_specs/presto_tests.py                |    44 +-
 .../integration_tests/dict_import_export_tests.py  |     1 +
 tests/integration_tests/dynamic_plugins_tests.py   |     9 +-
 tests/integration_tests/email_tests.py             |     1 +
 tests/integration_tests/embedded/api_tests.py      |    10 +-
 tests/integration_tests/embedded/dao_tests.py      |     7 +-
 tests/integration_tests/embedded/test_view.py      |    14 +-
 tests/integration_tests/event_logger_tests.py      |     8 +-
 tests/integration_tests/explore/api_tests.py       |    62 +-
 .../explore/form_data/api_tests.py                 |    16 +-
 .../explore/form_data/commands_tests.py            |     6 +-
 .../explore/permalink/api_tests.py                 |    18 +-
 .../explore/permalink/commands_tests.py            |     5 +-
 .../extensions/metastore_cache_test.py             |     2 +-
 tests/integration_tests/fixtures/__init__.py       |    16 +-
 tests/integration_tests/fixtures/datasource.py     |    66 +-
 .../integration_tests/fixtures/energy_dashboard.py |     4 +-
 tests/integration_tests/fixtures/public_role.py    |    27 +-
 tests/integration_tests/fixtures/tags.py           |    16 +-
 .../fixtures/unicode_dashboard.py                  |     4 +-
 tests/integration_tests/fixtures/users.py          |    44 +-
 .../fixtures/world_bank_dashboard.py               |    17 +-
 tests/integration_tests/import_export_tests.py     |    28 +-
 .../key_value/commands/create_test.py              |    10 +-
 .../key_value/commands/delete_test.py              |     8 +-
 .../key_value/commands/fixtures.py                 |     3 +-
 .../key_value/commands/get_test.py                 |     9 +-
 .../key_value/commands/update_test.py              |    14 +-
 .../key_value/commands/upsert_test.py              |    14 +-
 tests/integration_tests/log_api_tests.py           |    37 +-
 tests/integration_tests/log_model_view_tests.py    |     8 +-
 ...ef90fddd_fix_schema_perm_for_datasets__tests.py |     4 +-
 .../7e67aecbf3f1_chart_ds_constraint__tests.py     |     2 +-
 ...migrate_can_view_and_drill_permission__tests.py |    37 +-
 ...baba_rm_time_range_endpoints_from_qc_3__test.py |     2 +-
 tests/integration_tests/model_tests.py             |   108 +-
 tests/integration_tests/queries/api_tests.py       |    30 +-
 .../queries/saved_queries/api_tests.py             |    83 +-
 .../queries/saved_queries/commands_tests.py        |     1 +
 tests/integration_tests/query_context_tests.py     |   160 +-
 tests/integration_tests/reports/alert_tests.py     |    62 +-
 tests/integration_tests/reports/api_tests.py       |   201 +-
 .../commands/create_dashboard_report_tests.py      |     6 +-
 .../commands/execute_dashboard_report_tests.py     |     6 +-
 tests/integration_tests/reports/commands_tests.py  |   503 +-
 tests/integration_tests/reports/scheduler_tests.py |   249 +-
 tests/integration_tests/reports/utils.py           |     6 +-
 tests/integration_tests/result_set_tests.py        |     2 +-
 .../security/analytics_db_safety_tests.py          |    12 +-
 tests/integration_tests/security/api_tests.py      |    20 +-
 .../security/guest_token_security_tests.py         |    15 +-
 .../security/migrate_roles_tests.py                |     3 +-
 .../security/row_level_security_tests.py           |    71 +-
 tests/integration_tests/security_tests.py          |    44 +-
 tests/integration_tests/sql_lab/api_tests.py       |   131 +-
 tests/integration_tests/sql_lab/commands_tests.py  |     2 +-
 tests/integration_tests/sql_validator_tests.py     |    24 +-
 tests/integration_tests/sqla_models_tests.py       |   129 +-
 tests/integration_tests/sqllab_tests.py            |   168 +-
 tests/integration_tests/stats_logger_tests.py      |     1 +
 tests/integration_tests/strategy_tests.py          |    36 +-
 tests/integration_tests/superset_test_config.py    |    34 +-
 .../superset_test_config_thumbnails.py             |    22 +-
 .../superset_test_custom_template_processors.py    |     2 +-
 tests/integration_tests/tagging_tests.py           |     2 +-
 tests/integration_tests/tags/api_tests.py          |    94 +-
 tests/integration_tests/tags/commands_tests.py     |    50 +-
 tests/integration_tests/tags/dao_tests.py          |    20 +-
 .../integration_tests/tasks/async_queries_tests.py |     7 +-
 tests/integration_tests/test_jinja_context.py      |     2 +-
 tests/integration_tests/thumbnails_tests.py        |   112 +-
 tests/integration_tests/users/api_tests.py         |    34 +-
 .../integration_tests/utils/cache_manager_tests.py |     6 +-
 tests/integration_tests/utils/core_tests.py        |     4 +-
 tests/integration_tests/utils/csv_tests.py         |     2 +-
 tests/integration_tests/utils/encrypt_tests.py     |    14 +-
 tests/integration_tests/utils/hashing_tests.py     |     2 +-
 tests/integration_tests/utils_tests.py             |    61 +-
 tests/integration_tests/viz_tests.py               |     4 +-
 tests/unit_tests/annotation_layers/schema_tests.py |     2 +-
 .../charts/commands/importers/v1/import_test.py    |     2 +-
 tests/unit_tests/charts/test_post_processing.py    |     3 +-
 .../unit_tests/commands/databases}/__init__.py     |     0
 .../commands/databases/csv_reader_test.py          |   313 +
 .../commands/databases/excel_reader_test.py        |   209 +
 .../unit_tests/commands/dataset}/__init__.py       |     0
 tests/unit_tests/commands/test_utils.py            |   117 +
 .../unit_tests/common/test_query_object_factory.py |     4 +-
 tests/unit_tests/conftest.py                       |     2 +
 .../unit_tests/connectors}/__init__.py             |     0
 .../unit_tests/connectors/sqla}/__init__.py        |     0
 tests/unit_tests/connectors/sqla/models_test.py    |    66 +
 tests/unit_tests/dao/dataset_test.py               |    10 +-
 tests/unit_tests/dao/tag_test.py                   |    17 +-
 tests/unit_tests/dao/user_test.py                  |    93 +
 .../commands/importers/v1/import_test.py           |     2 +-
 tests/unit_tests/databases/api_test.py             |  1109 +-
 tests/unit_tests/databases/schema_tests.py         |    43 +-
 .../databases/ssh_tunnel/commands/create_test.py   |    46 +-
 .../databases/ssh_tunnel/commands/update_test.py   |    35 +-
 tests/unit_tests/databases/ssh_tunnel/dao_tests.py |     6 +-
 tests/unit_tests/datasets/commands/export_test.py  |     4 +-
 .../datasets/commands/importers/v1/import_test.py  |     6 +-
 tests/unit_tests/datasource/dao_tests.py           |     1 -
 tests/unit_tests/db_engine_specs/test_athena.py    |     6 +-
 tests/unit_tests/db_engine_specs/test_base.py      |    76 +-
 tests/unit_tests/db_engine_specs/test_bigquery.py  |    17 +-
 .../unit_tests/db_engine_specs/test_clickhouse.py  |    16 +-
 tests/unit_tests/db_engine_specs/test_crate.py     |     8 +-
 tests/unit_tests/db_engine_specs/test_crdb.py      |     6 +-
 tests/unit_tests/db_engine_specs/test_databend.py  |    12 +-
 .../unit_tests/db_engine_specs/test_databricks.py  |     6 +-
 tests/unit_tests/db_engine_specs/test_db2.py       |     9 +-
 tests/unit_tests/db_engine_specs/test_dremio.py    |     6 +-
 tests/unit_tests/db_engine_specs/test_drill.py     |    14 +-
 tests/unit_tests/db_engine_specs/test_druid.py     |     6 +-
 tests/unit_tests/db_engine_specs/test_duckdb.py    |    93 +-
 tests/unit_tests/db_engine_specs/test_dynamodb.py  |     6 +-
 .../db_engine_specs/test_elasticsearch.py          |    13 +-
 tests/unit_tests/db_engine_specs/test_firebird.py  |     6 +-
 tests/unit_tests/db_engine_specs/test_firebolt.py  |     6 +-
 tests/unit_tests/db_engine_specs/test_gsheets.py   |   205 +
 tests/unit_tests/db_engine_specs/test_hana.py      |     6 +-
 tests/unit_tests/db_engine_specs/test_hive.py      |     6 +-
 tests/unit_tests/db_engine_specs/test_impala.py    |     6 +-
 tests/unit_tests/db_engine_specs/test_kusto.py     |    10 +-
 tests/unit_tests/db_engine_specs/test_kylin.py     |     6 +-
 tests/unit_tests/db_engine_specs/test_mssql.py     |     4 +-
 tests/unit_tests/db_engine_specs/test_mysql.py     |     8 +-
 tests/unit_tests/db_engine_specs/test_oracle.py    |     6 +-
 tests/unit_tests/db_engine_specs/test_postgres.py  |     6 +-
 tests/unit_tests/db_engine_specs/test_presto.py    |     6 +-
 tests/unit_tests/db_engine_specs/test_redshift.py  |     6 +-
 tests/unit_tests/db_engine_specs/test_rockset.py   |     6 +-
 tests/unit_tests/db_engine_specs/test_snowflake.py |     6 +-
 tests/unit_tests/db_engine_specs/test_sqlite.py    |     6 +-
 tests/unit_tests/db_engine_specs/test_trino.py     |    26 +-
 tests/unit_tests/explore/api_test.py               |     2 -
 tests/unit_tests/explore/utils_test.py             |    11 +-
 tests/unit_tests/extensions/ssh_test.py            |     3 +-
 tests/unit_tests/extensions/test_sqlalchemy.py     |    10 +-
 tests/unit_tests/fixtures/common.py                |    34 +
 tests/unit_tests/forms_tests.py                    |    70 -
 tests/unit_tests/jinja_context_test.py             |   730 +-
 tests/unit_tests/legacy_tests.py                   |     2 +-
 .../migrations/viz/heatmap_v1_v2_test.py           |    78 +
 tests/unit_tests/models/core_test.py               |    11 +-
 tests/unit_tests/models/helpers_test.py            |    72 +
 tests/unit_tests/models/sql_lab_test.py            |    59 +
 tests/unit_tests/notifications/slack_tests.py      |     4 +-
 .../pandas_postprocessing/test_resample.py         |    54 +-
 .../pandas_postprocessing/test_rolling.py          |     4 +-
 tests/unit_tests/queries/query_object_test.py      |     1 -
 tests/unit_tests/reports/schemas_test.py           |     2 +-
 tests/unit_tests/scripts/docker_build.py           |     5 +-
 .../unit_tests/scripts/tag_latest_release_test.py  |     1 -
 tests/unit_tests/security/manager_test.py          |   267 +-
 tests/unit_tests/sql_lab_test.py                   |    16 +-
 tests/unit_tests/sql_parse_tests.py                |   527 +-
 tests/unit_tests/tags/commands/create_test.py      |    12 +-
 tests/unit_tests/tags/commands/update_test.py      |     8 +-
 tests/unit_tests/tasks/test_utils.py               |     2 +-
 tests/unit_tests/test_jinja_context.py             |   305 -
 tests/unit_tests/thumbnails/test_digest.py         |    34 +-
 tests/unit_tests/utils/date_parser_tests.py        |    32 +
 tests/unit_tests/utils/docker.py                   |     3 +-
 tests/unit_tests/utils/lock_tests.py               |    79 +
 tests/unit_tests/utils/oauth2_tests.py             |    95 +
 tests/unit_tests/utils/test_core.py                |     2 -
 tests/unit_tests/utils/urls_tests.py               |     1 -
 tox.ini                                            |   177 -
 1373 files changed, 315490 insertions(+), 277330 deletions(-)
 create mode 100644 .github/actions/change-detector/action.yml
 create mode 100644 .github/actions/setup-backend/action.yml
 create mode 100644 .github/actions/setup-supersetbot/action.yml
 create mode 100644 .github/workflows/bump-python-package.yml
 create mode 100644 .github/workflows/issue_creation.yml
 delete mode 100644 .github/workflows/no-op.yml
 create mode 100644 .github/workflows/supersetbot.yml
 rename .github/workflows/{docker-release.yml => tag-release.yml} (63%)
 create mode 100644 ASF/doap_Superset.rdf
 create mode 100644 CHANGELOG/3.1.2.md
 create mode 100644 CHANGELOG/4.0.0.md
 create mode 100644 RELEASING/release-notes-4-0/README.md
 create mode 100644 RELEASING/release-notes-4-0/media/alert-modal-1.png
 create mode 100644 RELEASING/release-notes-4-0/media/alert-modal-2.png
 create mode 100644 RELEASING/release-notes-4-0/media/alert-modal-3.png
 create mode 100644 RELEASING/release-notes-4-0/media/dashboard-dnd-1.png
 create mode 100644 RELEASING/release-notes-4-0/media/dashboard-dnd-2.png
 create mode 100644 RELEASING/release-notes-4-0/media/explore-dnd.png
 create mode 100644 RELEASING/release-notes-4-0/media/sunburst.png
 create mode 100644 RELEASING/release-notes-4-0/media/tags-1.png
 create mode 100644 RELEASING/release-notes-4-0/media/tags-2.png
 copy docker-compose-non-dev.yml => docker-compose-image-tag.yml (71%)
 delete mode 100644 docker/.env-non-dev
 create mode 100644 docker/superset-websocket/config.json
 rename docs/docs/{installation => configuration}/alerts-reports.mdx (98%)
 rename docs/docs/{installation => configuration}/async-queries-celery.mdx (99%)
 rename docs/docs/{installation => configuration}/cache.mdx (96%)
 rename docs/docs/{installation => configuration}/configuring-superset.mdx (92%)
 rename docs/docs/{miscellaneous => configuration}/country-map-tools.mdx (52%)
 rename docs/docs/{installation => configuration}/event-logging.mdx (98%)
 rename docs/docs/{miscellaneous => 
configuration}/importing-exporting-datasources.mdx (69%)
 rename docs/docs/{installation => configuration}/networking-settings.mdx (99%)
 rename docs/docs/{installation => configuration}/setup-ssh-tunneling.mdx (98%)
 rename docs/docs/{installation => configuration}/sql-templating.mdx (93%)
 rename docs/docs/{miscellaneous => configuration}/timezones.mdx (99%)
 delete mode 100644 docs/docs/contributing/_category_.json
 create mode 100644 docs/docs/contributing/erd.mdx
 delete mode 100644 docs/docs/creating-charts-dashboards/_category_.json
 delete mode 100644 docs/docs/databases/_category_.json
 delete mode 100644 docs/docs/installation/_category_.json
 rename docs/docs/installation/{docker.mdx => docker-builds.mdx} (95%)
 create mode 100644 docs/docs/installation/docker-compose.mdx
 delete mode 100644 
docs/docs/installation/installing-superset-using-docker-compose.mdx
 rename docs/docs/installation/{running-on-kubernetes.mdx => kubernetes.mdx} 
(95%)
 rename docs/docs/installation/{installing-superset-from-pypi.mdx => pypi.mdx} 
(91%)
 delete mode 100644 docs/docs/miscellaneous/_category_.json
 delete mode 100644 docs/docs/security/_category_.json
 rename docs/docs/{miscellaneous => using-superset}/chart-params.mdx (100%)
 rename docs/docs/{creating-charts-dashboards => 
using-superset}/creating-your-first-dashboard.mdx (97%)
 rename docs/docs/{creating-charts-dashboards => 
using-superset}/exploring-data.mdx (91%)
 rename docs/docs/{miscellaneous => using-superset}/issue-codes.mdx (99%)
 copy superset-frontend/src/dashboard/components/menu/HoverMenu.test.tsx => 
docs/src/components/InteractiveERDSVG.jsx (67%)
 create mode 100644 docs/src/fonts/Roboto-Bold.woff
 create mode 100644 docs/src/fonts/Roboto-Bold.woff2
 create mode 100644 docs/src/fonts/Roboto-Regular.woff
 create mode 100644 docs/src/fonts/Roboto-Regular.woff2
 create mode 100644 docs/static/img/erd.svg
 delete mode 100644 docs/static/video/superset-video-4k.mp4
 create mode 100644 pyproject.toml
 delete mode 100644 requirements/docker.in
 delete mode 100644 requirements/docker.txt
 delete mode 100644 requirements/integration.in
 delete mode 100644 requirements/integration.txt
 delete mode 100644 requirements/local.in
 delete mode 100644 requirements/local.txt
 delete mode 100644 requirements/testing.in
 delete mode 100644 requirements/testing.txt
 create mode 100755 scripts/change_detector.py
 delete mode 100755 scripts/ci_check_no_file_changes.sh
 create mode 100644 scripts/erd/erd.puml
 create mode 100644 scripts/erd/erd.py
 copy docs/static/.nojekyll => scripts/erd/erd.svg (100%)
 create mode 100644 scripts/erd/erd.template.puml
 create mode 100644 scripts/templates/erd.plantuml.template
 delete mode 100644 setup.cfg
 copy 
superset-frontend/packages/superset-ui-chart-controls/src/operators/{types.ts 
=> rankOperator.ts} (72%)
 copy 
superset-frontend/{src/SqlLab/components/QueryHistory/QueryHistory.test.tsx => 
packages/superset-ui-chart-controls/test/operators/rankOperator.test.ts} (52%)
 rename superset-frontend/{src/utils => 
packages/superset-ui-core/src/query}/getClientErrorObject.ts (97%)
 copy 
superset-frontend/{src/explore/components/controls/DateFilterControl/utils/dateFilterUtils.ts
 => packages/superset-ui-core/src/time-comparison/fetchTimeRange.ts} (67%)
 create mode 100644 
superset-frontend/packages/superset-ui-core/test/query/getClientErrorObject.test.ts
 create mode 100644 
superset-frontend/packages/superset-ui-core/test/time-comparison/fetchTimeRange.test.ts
 create mode 100644 
superset-frontend/plugins/legacy-plugin-chart-country-map/src/countries/czech_republic.geojson
 create mode 100644 
superset-frontend/plugins/legacy-plugin-chart-country-map/src/countries/philippines_regions.geojson
 create mode 100644 
superset-frontend/plugins/legacy-plugin-chart-country-map/src/countries/turkey_regions.geojson
 create mode 100644 
superset-frontend/plugins/plugin-chart-echarts/src/BigNumber/BigNumberPeriodOverPeriod/useOverflowDetection.ts
 rename superset-frontend/{src/utils/errorMessages.ts => 
plugins/plugin-chart-echarts/src/Heatmap/Heatmap.tsx} (68%)
 create mode 100644 
superset-frontend/plugins/plugin-chart-echarts/src/Heatmap/buildQuery.ts
 create mode 100644 
superset-frontend/plugins/plugin-chart-echarts/src/Heatmap/controlPanel.tsx
 create mode 100644 
superset-frontend/plugins/plugin-chart-echarts/src/Heatmap/images/example1.png
 create mode 100644 
superset-frontend/plugins/plugin-chart-echarts/src/Heatmap/images/example2.png
 create mode 100644 
superset-frontend/plugins/plugin-chart-echarts/src/Heatmap/images/example3.png
 create mode 100644 
superset-frontend/plugins/plugin-chart-echarts/src/Heatmap/images/thumbnail.png
 copy superset-frontend/plugins/{legacy-plugin-chart-heatmap/src/index.js => 
plugin-chart-echarts/src/Heatmap/index.ts} (71%)
 create mode 100644 
superset-frontend/plugins/plugin-chart-echarts/src/Heatmap/transformProps.ts
 create mode 100644 
superset-frontend/plugins/plugin-chart-echarts/src/Heatmap/types.ts
 rename superset-frontend/src/components/CopyToClipboard/{index.jsx => 
index.tsx} (74%)
 create mode 100644 superset-frontend/src/components/Dropdown/Dropdown.test.tsx
 create mode 100644 
superset-frontend/src/components/ErrorMessage/OAuth2RedirectMessage.test.tsx
 create mode 100644 
superset-frontend/src/components/ErrorMessage/OAuth2RedirectMessage.tsx
 copy superset-frontend/src/{dashboard/components/menu/HoverMenu.test.tsx => 
components/ListView/DashboardCrossLinks.tsx} (58%)
 rename superset-frontend/src/dashboard/components/CssEditor/{index.jsx => 
index.tsx} (69%)
 create mode 100644 
superset-frontend/src/explore/components/DatasourcePanel/DatasourcePanelItem.test.tsx
 create mode 100644 
superset-frontend/src/explore/components/DatasourcePanel/DatasourcePanelItem.tsx
 create mode 100644 
superset-frontend/src/explore/components/ExploreContainer/ExploreContainer.test.tsx
 create mode 100644 
superset-frontend/src/explore/components/ExploreContainer/index.tsx
 create mode 100644 
superset-frontend/src/features/databases/DatabaseModal/SSHTunnelSwitch.test.tsx
 create mode 100644 
superset-frontend/src/features/databases/UploadDataModel/ColumnsPreview.tsx
 rename 
superset-frontend/src/{explore/components/DataTableControl/RowCount.test.tsx => 
features/databases/UploadDataModel/StyledFormItemWithTip.tsx} (58%)
 create mode 100644 
superset-frontend/src/features/databases/UploadDataModel/UploadDataModal.test.tsx
 create mode 100644 
superset-frontend/src/features/databases/UploadDataModel/index.tsx
 create mode 100644 
superset-frontend/src/features/databases/UploadDataModel/styles.ts
 create mode 100644 superset-frontend/src/hooks/apiResources/queries.test.ts
 create mode 100644 superset-frontend/src/hooks/apiResources/queries.ts
 delete mode 100644 superset-frontend/src/utils/getClientErrorObject.test.ts
 copy superset/{advanced_data_type => commands/database/uploaders}/__init__.py 
(100%)
 create mode 100644 superset/commands/database/uploaders/base.py
 create mode 100644 superset/commands/database/uploaders/csv_reader.py
 create mode 100644 superset/commands/database/uploaders/excel_reader.py
 copy 
superset/{migrations/versions/2016-09-30_18-01_ab3d66c4246e_add_cache_timeout_to_druid_cluster.py
 => daos/user.py} (52%)
 copy docs/static/.asf.yaml => superset/db_engine_specs/mariadb.py (83%)
 rename superset/examples/configs/charts/{ => COVID 
Vaccines}/Vaccine_Candidates_per_Approach__Stage.yaml (100%)
 rename superset/examples/configs/charts/{ => COVID 
Vaccines}/Vaccine_Candidates_per_Country.yaml (100%)
 rename superset/examples/configs/charts/{ => COVID 
Vaccines}/Vaccine_Candidates_per_Country_261.yaml (100%)
 rename superset/examples/configs/charts/{ => COVID 
Vaccines}/Vaccine_Candidates_per_Country__Stage.yaml (100%)
 rename superset/examples/configs/charts/{ => COVID 
Vaccines}/Vaccine_Candidates_per_Country__Stage_749.yaml (100%)
 rename superset/examples/configs/charts/{ => COVID 
Vaccines}/Vaccine_Candidates_per_Phase.yaml (100%)
 rename superset/examples/configs/charts/{ => COVID 
Vaccines}/Vaccine_Candidates_per_Phase_587.yaml (100%)
 rename superset/examples/configs/charts/{ => FCC New Coder 
Survey}/Age_distribution_of_respondents.yaml (100%)
 rename superset/examples/configs/charts/{ => FCC New Coder 
Survey}/Are_you_an_ethnic_minority_in_your_city.yaml (100%)
 rename superset/examples/configs/charts/{ => FCC New Coder 
Survey}/Breakdown_of_Developer_Type.yaml (100%)
 rename superset/examples/configs/charts/{ => FCC New Coder 
Survey}/Commute_Time.yaml (100%)
 rename superset/examples/configs/charts/{ => FCC New Coder 
Survey}/Country_of_Citizenship.yaml (100%)
 rename superset/examples/configs/charts/{ => FCC New Coder 
Survey}/Current_Developers_Is_this_your_first_development_job.yaml (100%)
 rename superset/examples/configs/charts/{ => FCC New Coder 
Survey}/Degrees_vs_Income.yaml (100%)
 rename superset/examples/configs/charts/{ => FCC New Coder 
Survey}/Ethnic_Minority__Gender.yaml (100%)
 rename superset/examples/configs/charts/{ => FCC New Coder 
Survey}/First_Time_Developer.yaml (100%)
 rename superset/examples/configs/charts/{ => FCC New Coder 
Survey}/First_Time_Developer__Commute_Time.yaml (100%)
 rename superset/examples/configs/charts/{ => FCC New Coder Survey}/Gender.yaml 
(100%)
 rename superset/examples/configs/charts/{ => FCC New Coder 
Survey}/Highest_degree_held.yaml (100%)
 rename superset/examples/configs/charts/{ => FCC New Coder 
Survey}/How_do_you_prefer_to_work.yaml (100%)
 rename superset/examples/configs/charts/{ => FCC New Coder 
Survey}/How_much_do_you_expect_to_earn_0_-_100k.yaml (100%)
 rename superset/examples/configs/charts/{ => FCC New Coder 
Survey}/Last_Year_Income_Distribution.yaml (100%)
 rename superset/examples/configs/charts/{ => FCC New Coder 
Survey}/Location_of_Current_Developers.yaml (100%)
 rename superset/examples/configs/charts/{ => FCC New Coder 
Survey}/Number_of_Aspiring_Developers.yaml (100%)
 rename superset/examples/configs/charts/{ => FCC New Coder 
Survey}/Preferred_Employment_Style.yaml (100%)
 rename superset/examples/configs/charts/{ => FCC New Coder 
Survey}/Relocation_ability.yaml (100%)
 rename superset/examples/configs/charts/{ => FCC New Coder 
Survey}/Top_15_Languages_Spoken_at_Home.yaml (100%)
 rename superset/examples/configs/charts/{ => FCC New Coder 
Survey}/Work_Location_Preference.yaml (100%)
 rename superset/examples/configs/charts/{ => Slack 
Dashboard}/Cross_Channel_Relationship.yaml (100%)
 rename superset/examples/configs/charts/{ => Slack 
Dashboard}/Cross_Channel_Relationship_heatmap_2786.yaml (100%)
 rename superset/examples/configs/charts/{ => Slack 
Dashboard}/Members_per_Channel.yaml (100%)
 rename superset/examples/configs/charts/{ => Slack 
Dashboard}/Messages_per_Channel.yaml (100%)
 rename superset/examples/configs/charts/{ => Slack 
Dashboard}/New_Members_per_Month.yaml (100%)
 rename superset/examples/configs/charts/{ => Slack 
Dashboard}/Number_of_Members.yaml (100%)
 rename superset/examples/configs/charts/{ => Slack 
Dashboard}/Top_Timezones.yaml (100%)
 rename superset/examples/configs/charts/{ => Slack 
Dashboard}/Weekly_Messages.yaml (100%)
 rename superset/examples/configs/charts/{ => Slack 
Dashboard}/Weekly_Threads.yaml (100%)
 rename superset/examples/configs/charts/{ => Unicode 
Test}/Unicode_Cloud.test.yaml (100%)
 rename superset/examples/configs/charts/{ => Vehicle 
Sales}/Number_of_Deals_for_each_Combination.yaml (100%)
 rename superset/examples/configs/charts/{ => Vehicle 
Sales}/Overall_Sales_By_Product_Line.yaml (100%)
 rename superset/examples/configs/charts/{ => Vehicle 
Sales}/Proportion_of_Revenue_by_Product_Line.yaml (100%)
 rename superset/examples/configs/charts/{ => Vehicle 
Sales}/Quarterly_Sales.yaml (100%)
 rename superset/examples/configs/charts/{ => Vehicle 
Sales}/Quarterly_Sales_By_Product_Line.yaml (100%)
 rename superset/examples/configs/charts/{ => Vehicle 
Sales}/Revenue_by_Deal_Size.yaml (100%)
 rename superset/examples/configs/charts/{ => Vehicle 
Sales}/Seasonality_of_Revenue_per_Product_Line.yaml (100%)
 rename superset/examples/configs/charts/{ => Vehicle 
Sales}/Total_Items_Sold.yaml (100%)
 rename superset/examples/configs/charts/{ => Vehicle 
Sales}/Total_Items_Sold_By_Product_Line.yaml (100%)
 rename superset/examples/configs/charts/{ => Vehicle Sales}/Total_Revenue.yaml 
(100%)
 rename superset/examples/configs/charts/{ => Video Game Sales}/Games.yaml 
(100%)
 rename superset/examples/configs/charts/{ => Video Game 
Sales}/Games_per_Genre.yaml (100%)
 rename superset/examples/configs/charts/{ => Video Game 
Sales}/Games_per_Genre_over_time.yaml (100%)
 rename superset/examples/configs/charts/{ => Video Game 
Sales}/Most_Dominant_Platforms.yaml (100%)
 rename superset/examples/configs/charts/{ => Video Game 
Sales}/Number_of_Games_That_Hit_100k_in_Sales_By_Release_Year.yaml (100%)
 rename superset/examples/configs/charts/{ => Video Game 
Sales}/Popular_Genres_Across_Platforms.yaml (100%)
 rename superset/examples/configs/charts/{ => Video Game 
Sales}/Publishers_With_Most_Titles.yaml (100%)
 rename superset/examples/configs/charts/{ => Video Game 
Sales}/Rise__Fall_of_Video_Game_Consoles.yaml (100%)
 rename superset/examples/configs/charts/{ => Video Game 
Sales}/Top_10_Games_Proportion_of_Sales_in_Markets.yaml (100%)
 rename superset/examples/configs/charts/{ => Video Game 
Sales}/Total_Sales_per_Market_Grouped_by_Genre.yaml (100%)
 copy 
superset/migrations/versions/{2018-06-14_14-31_80a67c5192fa_single_pie_chart_metric.py
 => 2024-03-01_10-47_be1b217cd8cd_big_number_kpi_single_metric.py} (73%)
 copy 
superset/migrations/versions/{2020-07-09_17-12_73fd22e742ab_add_dynamic_plugins_py.py
 => 2024-03-20_16-02_678eefb4ab44_add_access_token_table.py} (52%)
 copy 
superset/migrations/versions/{2016-10-14_11-17_7e3ddad2a00b_results_key_to_query.py
 => 2024-04-01_22-44_c22cb5c2e546_user_attr_avatar_url.py} (70%)
 copy 
superset/migrations/versions/{2024-02-07_17-13_87d38ad83218_migrate_can_view_and_drill_permission.py
 => 2024-04-08_15-43_5ad7321c2169_mig_new_csv_upload_perm.py} (74%)
 copy 
superset/migrations/versions/{2018-11-26_00-01_46f444d8b9b7_remove_coordinator_from_druid_cluster_.py
 => 2024-04-11_15-41_5f57af97bc3f_add_catalog_column.py} (54%)
 copy 
superset/migrations/versions/{2024-02-07_17-13_87d38ad83218_migrate_can_view_and_drill_permission.py
 => 2024-04-17_14-04_d60591c5515f_mig_new_excel_upload_perm.py} (73%)
 delete mode 100644 superset/templates/superset/form_view/csv_macros.html
 delete mode 100644 superset/templates/superset/form_view/csv_scripts.html
 delete mode 100644 
superset/templates/superset/form_view/csv_to_database_view/edit.html
 delete mode 100644 
superset/templates/superset/form_view/excel_to_database_view/edit.html
 copy superset-frontend/src/assets/images/icons/tags.svg => 
superset/templates/superset/oauth2.html (59%)
 create mode 100644 superset/translations/ar/LC_MESSAGES/messages.json
 copy superset/translations/{messages.pot => ar/LC_MESSAGES/messages.po} (99%)
 create mode 100644 superset/translations/tr/LC_MESSAGES/messages.json
 copy superset/translations/{sk => tr}/LC_MESSAGES/messages.po (89%)
 create mode 100644 superset/translations/zh_TW/LC_MESSAGES/messages.json
 copy superset/translations/{zh => zh_TW}/LC_MESSAGES/messages.po (83%)
 create mode 100644 superset/utils/lock.py
 create mode 100644 superset/utils/oauth2.py
 copy 
superset/{migrations/versions/2023-12-01_12-03_b7851ee5522f_replay_317970b4400c.py
 => utils/pandas_postprocessing/rank.py} (57%)
 copy 
superset/{migrations/versions/2016-10-05_11-30_b46fa1b0b39e_add_params_to_tables.py
 => utils/pdf.py} (51%)
 create mode 100644 superset/utils/slack.py
 copy docs/static/.asf.yaml => tests/integration_tests/constants.py (79%)
 copy {superset/advanced_data_type => 
tests/integration_tests/databases/commands}/__init__.py (100%)
 create mode 100644 tests/integration_tests/databases/commands/upload_test.py
 copy {superset/advanced_data_type => 
tests/unit_tests/commands/databases}/__init__.py (100%)
 create mode 100644 tests/unit_tests/commands/databases/csv_reader_test.py
 create mode 100644 tests/unit_tests/commands/databases/excel_reader_test.py
 copy {superset/advanced_data_type => 
tests/unit_tests/commands/dataset}/__init__.py (100%)
 create mode 100644 tests/unit_tests/commands/test_utils.py
 copy {superset/advanced_data_type => tests/unit_tests/connectors}/__init__.py 
(100%)
 copy {superset/advanced_data_type => 
tests/unit_tests/connectors/sqla}/__init__.py (100%)
 create mode 100644 tests/unit_tests/connectors/sqla/models_test.py
 create mode 100644 tests/unit_tests/dao/user_test.py
 delete mode 100644 tests/unit_tests/forms_tests.py
 create mode 100644 tests/unit_tests/migrations/viz/heatmap_v1_v2_test.py
 create mode 100644 tests/unit_tests/models/helpers_test.py
 create mode 100644 tests/unit_tests/models/sql_lab_test.py
 delete mode 100644 tests/unit_tests/test_jinja_context.py
 create mode 100644 tests/unit_tests/utils/lock_tests.py
 create mode 100644 tests/unit_tests/utils/oauth2_tests.py
 delete mode 100644 tox.ini


Reply via email to