You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@superset.apache.org by hu...@apache.org on 2023/03/31 00:08:58 UTC

[superset] branch dm/chore/migrate-user-fav-slices-to-api-v1 updated (4a027f2742 -> 7f3e9a68e1)

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

hugh pushed a change to branch dm/chore/migrate-user-fav-slices-to-api-v1
in repository https://gitbox.apache.org/repos/asf/superset.git


    from 4a027f2742 improvements
     add c53c3aa23d chore(superset-ui-chart-controls): refactor pivot and rename operator (#22963)
     add deb51090d2 build(deps): bump http-cache-semantics from 4.1.0 to 4.1.1 in /superset-frontend (#22958)
     add ad1ffbd723 fix(explore): unable to update linked charts (#22896)
     add 78ede590ee chore(frontend): Spelling (#19676)
     add 56d4bd063c chore: add waitress for win32 platform (#22935)
     add 4b05a1eddd fix(datasets): Include expression and description in duplicated dataset columns (#22943)
     add c05871eb37 feat: add tabs to edit dataset page (#22043)
     add deba0fd7c1 docs: add Caizin to the user list (#22961)
     add 39f15b8d95 test: Fix act errors in DatabaseList test (#22970)
     add 4970df0a65 test: Clean up QueryList test warnings (#22972)
     add 32d497785a fix(native-filters): Don't include description icon in truncation calc (#22941)
     add b63ea6386f fix: Prevents last temporal filter removal (#22982)
     add 5d550f449a fix(explore): Mark time range dashboard filter with warning icon (#22984)
     add a299b4789b docs(alerts & reports): clarify nature of "-dev" labeled container images (#22988)
     add ae155611dc chore: bump python version to 3.8.16 in Dockerfile (#22934)
     add c9b9b7404a fix: Form data was not being passed to save/update slice (#22989)
     add cf395ac2d8 feat(ssh_tunnel): SSH Tunnel Switch extension (#22967)
     add 5bafb5c950 chore: Fix grammar (#22831)
     add 79114bcd29 docs: added Orange inside the inthewild.md doc (#22986)
     add 7a0f350028 fix: add new config to allow for specific import data urls (#22942)
     add 2dff0009e9 build(deps): bump pre-commit from 2.20.0 to 3.0.4 in /requirements (#22996)
     add 7d5c86b44c fix(explore): Save button incorrectly disabled when adding new metric with dnd (#23000)
     add aa0a07859e build(deps): bump http-cache-semantics from 4.1.0 to 4.1.1 in /docs (#22956)
     add 9dfaad772d fix: Make cte_alias a property of db engine spec (#22947)
     add a2c3ef8130 fix(migrations): Flask-Migrate output is not logged during alembic migrations #17991 (#22991)
     add efe6d22d4a fix(dashboard): export & import chart description and certification details (#22471)
     add ce6dd158a1 chore: updating link to sandbox.js (#23005)
     add a1b7eb3870 fix(sqllab): clean unwanted scrollbar (#22990)
     add 773d2a54a3 chore: Localization of superset pt. 3 (#22938)
     add c5b25ebf17 chore(deps): bump ajv and react-jsonschema-form in /superset-frontend (#21809)
     add 1a34876e35 build(deps-dev): bump eslint-config-prettier from 7.2.0 to 8.6.0 in /superset-websocket (#22767)
     add b12bb568ac build(deps): bump http-cache-semantics from 4.1.0 to 4.1.1 in /superset-frontend/cypress-base (#22955)
     add 50f1e2ee29 build(deps-dev): bump @types/node from 18.11.13 to 18.11.19 in /superset-websocket (#22997)
     add 32fac77b5f feat(datasets): Populate Usage tab in Edit Dataset view (#22670)
     add 4f590befae build(deps-dev): bump @typescript-eslint/parser from 5.48.1 to 5.51.0 in /superset-websocket (#23013)
     add 438cd1c150 build(deps-dev): bump typescript from 4.9.4 to 4.9.5 in /superset-websocket (#22933)
     add 183c5f9589 chore(tests): Cypress optimizations to help with fails (#23023)
     add 493181c977 chore: refactor SliceAdder for react 17 and react 18 (#23009)
     add 98bf878d6e fix(explore): Enable saving metric after changing title (#23020)
     add 7bb9b810ee fix: dataset import error message (#23025)
     add ddd8d17aa4 fix(ssh_tunnel): Fix bug on database edition for databases with ssh tunnels (#23006)
     add 5e64211bdb fix: Handles disabled options on Select All (#22830)
     add 684b8888b1 fix(dashboard): Stop updating chart owners for charts removed from dashboard (#21720)
     add 85f07798bf docs(teradata): fix connection string (#23051)
     add 464ddee4b4 fix: Time Column on Generic X-axis (#23021)
     add 17fbb2dbb2 fix: Menu items are not disappearing when deleting a dashboard (#23039)
     add a7bb14e433 fix(i18n): improve Russian translation (#22939)
     add d3d59ee0ae fix(sqllab): Invalid schema fetch by deprecated value (#22968)
     add 49aa9b4ca8 chore: Removes icon warnings from tests (#23054)
     add 4980621902 feat(sqllab): Add event logger (#23040)
     add f3bdcdc79b chore(datasets): Refactor DatasetDAO update to leverage bulk logic for create, update, and delete operations (#22957)
     add 65fffe974b chore: remove db_engines (#22444)
     add a307223857 feat(helm): allow persisting nodePort for services (#22713)
     add 52da9fcbe7 build(deps-dev): bump @typescript-eslint/eslint-plugin from 5.49.0 to 5.52.0 in /superset-websocket (#23073)
     add 50ae48103e build(deps): bump hot-shots from 9.3.0 to 10.0.0 in /superset-websocket (#23031)
     add c59a77e3ca build(deps-dev): bump prettier from 2.8.3 to 2.8.4 in /superset-websocket (#23030)
     add 0ec1e6e0b4 build(deps-dev): bump @types/node from 18.11.19 to 18.13.0 in /superset-websocket (#23029)
     add e755b4f417 fix: cache warmup solution non legacy charts. (#23012)
     add 7d7e3e4ade docs: remove duplicate navbar item (#22486)
     add 3fae7dbc34 chore: Migrate get_or_create_table endpoint to api v1 (#22931)
     add e5a4c78dc7 chore: Migrate /superset/csv/<client_id> to API v1 (#22913)
     add c39cf36d27 fix: css template permissions for gamma role (#23083)
     add f46aacae71 build(deps): bump ws from 8.12.0 to 8.12.1 in /superset-websocket (#23080)
     add a7dac13ded build(deps-dev): bump eslint from 8.33.0 to 8.34.0 in /superset-websocket (#23079)
     add 1324135697 chore(style): make brand icon max width customizable (#23081)
     add 76f7a3fb4e chore: Remove dependency warnings from SqlEditorLeftBar/index.tsx (#22975)
     add 861ecf65d4 chore: Remove dependency warnings from SqlEditor/index.jsx (#22974)
     add 5b5b534e89 chore: Remove dependency warnings from DatasetList.tsx (#22973)
     add b1296a195c test: Convert DatasetList test from jsx to tsx (#22971)
     add f6c304437a test: Clean up SelectAsyncControl test warnings (#22969)
     add 4ddf67fc14 chore: move dashboard screenshot standalone logic (#23003)
     add 21dd1601bf fix: dict bug on QueryContextFactory (#23093)
     add f4ffed24ba chore: Improve greeting message (#23077)
     add 92b9c06e59 chore: Updating connection URI for MS SQL Server (#22903)
     add 434b445e31 chore: increment statsd as warn (#23041)
     add 75495d1601 fix: removing pyproject.toml (#23101)
     add 7160daecf3 chore: change AlertQueryError to 400 (#23102)
     add 4b03d2553c fix: missing __init__ on module sqllab commands (#23107)
     add dec6ac49f6 chore(backend): Spelling (#19677)
     add 22a648755b chore: Remove yarn.lock from the root folder (#23108)
     add f851e992cf chore(sqla): Address performance tradeoff with eager loading (#23113)
     add 5482f78a9c fix(ci): explicity set yaml Loader (#23126)
     add c7823e32ff fix: Validate jinja rendered query (#22851)
     add d4362a3676 fix: reorganize role permissions (#23096)
     add 8f8fba2056 fix: gamma sql_json test (#23135)
     add eb8386e3f0 fix(dashboard): Chart's empty state not centered (#23022)
     add a40c12d63e feat: Frontend tagging (#20876)
     add fbf10c35a9 feat: return UUID on database creation (#23143)
     add a0ca0c04ff chore: Add docs for ssh tunneling (#23131)
     add 871cab8cbe feat: Enable cross fitlers in WorldMap and Graph charts (#22886)
     add 95eb8d79d0 chore: Bump cryptography to 39.0.1 (#23158)
     add ee1952e488 feat(dashboard): Add cross filter from context menu (#23141)
     add 6338ea5d42 chore: revert "feat(native_filter_migration): add transition mode (#16992)" (#23144)
     add 9a4839f45c build: Add helm chart option to deploy sidecars with node and worker (#23160)
     add 89576f8a87 fix(rbac): show objects accessible by database access perm (#23118)
     add f0f27a486d fix: bump FAB to 4.3.0 (#23184)
     add d0c54cddb0 fix(clickhouse): add clickhouse connect driver (#23185)
     add 967383853c fix(clickhouse): add missing default format (#23192)
     add 3484e8ea7b feat(ssh_tunnel): Import/Export Databases with SSHTunnel credentials (#23099)
     add a70b7ac3b0 chore: refactor SparklineCell for react 17 and react 18 upgrade (#23145)
     add 218de6e6a4 fix(ssh_tunnel): Display SSHTunnel Switch when editing a DB that was created with the Dynamic Form (#23195)
     add 196e3eac8b fix(sshtunnel): argument params to properly setting `server_port` (#23196)
     add cb9bff72d6 fix(ssh-tunnel): add password to `from_private_key` function (#23175)
     add 6a484b1553 fix: Pagination of VirtualTable (#23130)
     add 7d4aee956e fix(dashboard): Focusing charts and native filters from filters badge (#23190)
     add 9e9f9dcae5 fix(docs): Change postgres to postgresql in brew install command (#23202)
     add 718f6877d1 build(deps-dev): bump @typescript-eslint/parser from 5.51.0 to 5.53.0 in /superset-websocket (#23133)
     add a9fe40d38b build(deps-dev): bump @types/node from 18.13.0 to 18.14.1 in /superset-websocket (#23180)
     add 9f97c7d028 test: Remove test playgrounds (#23203)
     add c80d6b1451 build(deps-dev): bump @typescript-eslint/eslint-plugin from 5.52.0 to 5.53.0 in /superset-websocket (#23132)
     add 64ad70cc8d build(deps): bump express and @applitools/eyes-cypress in /superset-frontend/cypress-base (#22342)
     add 37766b9527 docs: fix typo (#23207)
     add dcd3e00f39 feat: Cross Filters in FilterBar (#23138)
     add ad5ee1ce38 fix(dashboard): Page crashing when cross filter applied on adhoc column (#23215)
     add 79274eb5bc fix: memoized decorator memory leak (#23139)
     add 62634bd77b build(deps-dev): bump @types/uuid from 9.0.0 to 9.0.1 in /superset-websocket (#23152)
     add 14879d93fb build(deps-dev): bump eslint from 8.34.0 to 8.35.0 in /superset-websocket (#23211)
     add 8f972d6875 chore: adding code owners for github actions/workflows (#23201)
     add 88167772e9 build(deps): bump ua-parser-js from 0.7.28 to 0.7.33 in /superset-frontend (#22859)
     add 42db7e562d build(deps): bump pre-commit from 3.0.4 to 3.1.0 in /requirements (#23168)
     add b479e93b49 fix: add disallowed query params for engines specs (#23217)
     add 0a7016df2e chore: Add statsd logger for ssh tunneling creation (#23225)
     add 473a69a704 fix(dashboard): Don't show cross filters checkbox to users without write permissions (#23237)
     add ae8aa60844 docs: update installation docs to include frontend asset build (#23199)
     add aba6900994 build(deps): bump pip-compile-multi from 2.6.1 to 2.6.2 in /requirements (#23122)
     add 7196e87833 fix(dashboard): Cross-filters not working properly for new dashboards (#23194)
     add b180319bbf fix: refuse to start with default secret on non debug envs (#23186)
     add 5a099e0762 fix(dao): use explicit id filter (#23246)
     add 6076457b90 fix(explore): Dashboard filters on adhoc cols not working in Explore (#23239)
     add d16eda6e56 refactor: Organizes the pages in their own folder (#23241)
     add 022df93422 fix: Video Game Sales dashboard default filters (#23242)
     add 5f0c320415 chore: Deprecate show_native_filters (#23228)
     add 134acba99a chore: Remove the ability to add filter-box charts when DASHBOARD_NATIVE_FILTERS feature is enabled (#23142)
     add 2ba9d1b79e fix(dashboard): Cross-filter search icon in filter bar (#23250)
     add d3e698eb54 chore(webdriver): Tuning the Webdriver logging a bit (#23255)
     add 1f3eb56688 fix: customize tab on heatmap chart is blank (#23243)
     add 9d0eea9600 fix(dashboard): Missing filter card styles (#23256)
     add 7d8383cbd5 fix: ignore ts warnings from older typescript versions (#23262)
     add 006f3dd88c chore(cache): Tuning logging in cache manager (#23266)
     add 42980a69a7 fix(dashboard): Charts crashing when cross filter on adhoc column is applied (#23238)
     add 71a9d0d403 fix(plugin-chart-echarts): render horizontal categories from top (#23273)
     add 1b139d0748 feat(generic-x-axis): add x sorting on series limit metric (#23274)
     add d16512b775 fix(dashboard): Allow selecting text in cells in Table and PivotTable without triggering cross filters (#23283)
     add f7e7652270 fix(migration): Address issue in #23228 (#23276)
     add ed11123709 chore(dashboard): Cleanup example dashboard filter scopes (#23260)
     add a3d49ca335 fix(dashboard): Infinite load when filter with default first value is out of scope (#23299)
     add e0d976dcca fix(clickhouse):  Update to working clickhouse-connect version (#23296)
     add 376ad39576 chore: upgrade @ant-design/icons for react upgrade (#22890)
     add dae6a9f701 docs: typo 'admnistrators' in security.mdx (#23166)
     add 9df7812e9c build(deps-dev): bump eslint-config-prettier from 8.6.0 to 8.7.0 in /superset-websocket (#23292)
     add 56380027f4 build(deps-dev): bump @types/node from 18.14.1 to 18.14.6 in /superset-websocket (#23281)
     add 0a588d11a5 chore: bump docusaurus to latest stable (#23317)
     add eb3d5602c2 docs: add lost _filters param docs (#23316)
     add 57db8f938b feat(docs): adds BugHerd to documentation site. (#23287)
     add 989fe27a0f chore: log different selenium timeout errors differently (#23290)
     add 33b758d716 docs: improve API v1 migration documentation (#23298)
     add 2cf75cc0ce docs(alerts and reports): Update ExecutorType class (#23323)
     add 6311b40329 build(deps-dev): bump @typescript-eslint/parser from 5.53.0 to 5.54.1 in /superset-websocket (#23294)
     add c2b282ac71 feat(dashboard): Refactor FiltersBadge (#23286)
     add a8d5cb89a8 chore: use util test env for init check (#23325)
     add a591130e0b fix(trino): normalize non-iso timestamps (#23339)
     add 78ee60e227 fix(dashboard): Cross filters with time shifted series (#23347)
     add f3055fcaff feat(dashboard): Change default opacity of icon in FiltersBadge (#23350)
     add b99d38dfef fix: dashboard DAO small code improvement (#23348)
     add 82cadccced chore: Remove Cross Filter scoping modal (#23216)
     add 3919ca6060 fix(dashboard): deepmerge htmlSchemaOverrides (#23329)
     add e83f4e6f79 fix(trino): Disallow alias to source column (#23324)
     add d415eed717 fix(examples): Cleanup granularity_sqla column (#23322)
     add 9ae81b7c33 fix(sqllab): empty large query results from localStorage (#23302)
     add b820eb8235 chore: Update pre-commit packages (#23173)
     add b90a11191f fix(safari): remove autocomplete in table select (#23361)
     add 63513a5873 fix(chart-controls): Error if x_axis_sort and timeseries_limit_metric are included in main metrics (#23365)
     add db95a93f43 feat(native-filters): allow cascading from time and numeric filters (#23319)
     add df9a5bb6df build(deps-dev): bump @types/node from 18.14.6 to 18.15.3 in /superset-websocket (#23360)
     add d2c1fb95ec fix(native-filters): Caching scope (#23314)
     add 1b95da7487 fix: table schema permissions (#23356)
     add 1874f9a3b6 fix: dataset_macro (#23376)
     add 9920ab3fd9 chore: Migrate /superset/schemas_access_for_file_upload to v1 (#23227)
     add 24c472a4a3 chore: Add code-owners to Select, MetadataBar and DropdownContainer (#23371)
     add ec6318b379 fix: permission checks on import (#23200)
     add da3791ad3d fix: Table sorting reset (#23318)
     add 0c454c6442 feat(plugin-chart-echarts): add series sorting (#23392)
     add 870bf6d0b9 fix: revert back to use security manager authz for dashboard when get by uuid (#23330)
     add ad72cd3171 chore(dashboard): Disable 'Set filter mapping' when appropriate (#23261)
     add a17028c7de build(deps): bump @sideway/formula from 3.0.0 to 3.0.1 in /docs (#23369)
     add fe4f9d6232 build(deps-dev): bump @typescript-eslint/parser from 5.54.1 to 5.55.0 in /superset-websocket (#23379)
     add 635ac8e8a8 build(deps-dev): bump webpack from 5.67.0 to 5.76.0 in /superset-embedded-sdk (#23367)
     add e13fa27074 build(deps-dev): bump webpack from 5.64.0 to 5.76.0 in /docs (#23368)
     add e3a7d2014d fix(webdriver): default WEBDRIVER_OPTION_ARGS and update Firefox deps (#23388)
     add 2fe695d3cf fix: Select all issue with "Dynamically search all filter values" in FilterBar (#23400)
     add d4657f6198 fix(docker): multi-architecture image build (#23409)
     add 42e8d1b498 chore: improve schema security (#23385)
     add 2feb599a0e chore(docs): three typos (#23403)
     add 7b1ba673f2 build(deps): bump ws from 8.12.1 to 8.13.0 in /superset-websocket (#23343)
     add 067c2e35b2 build(deps-dev): bump webpack from 5.52.1 to 5.76.0 in /superset-frontend (#23366)
     add d950eb85d7 build(deps-dev): bump @typescript-eslint/eslint-plugin from 5.53.0 to 5.55.0 in /superset-websocket (#23359)
     add 022213972b fix(dashboard): `show_native_filters` leftover (#23389)
     add 8fa77adf9a chore: Hugh/migrate estimate query cost to v1 (#23226)
     add f4035e096f chore: update releasing process for testing (#23331)
     add 2c6f581fa6 feat(postgresql): dynamic schema (#23401)
     add a5c31b2426 feat(chart): Added  SriLanka country map (#23338)
     add b0d83e8c50 feat(echarts): Implement stream graph for Echarts Timeseries (#23410)
     add 3277ea83ea feat(sqllab): log error_detail on fetch failed (#23377)
     add ffc0a81e85 chore(native-filters): Fetch only the required dataset fields (#23303)
     add b021f6e05d feat: add new cache_query_by_user key (#23415)
     add b511d2c624 docs(security): note the need to set TALISMAN_ENABLED = True (#23431)
     add 7160dcb054 build(deps-dev): bump eslint from 8.35.0 to 8.36.0 in /superset-websocket (#23342)
     add aec91850e5 build(deps): bump pre-commit from 3.1.0 to 3.2.0 in /requirements (#23422)
     add 65a3a4d908 fix: database dropdown keys (#23433)
     add 2fa8f989ae chore: Update typing for `Table` component (#23398)
     add 7ef06b0a60 chore: Add DRILL_BY feature flag (#23430)
     add 226b60bc4f fix: safe check when computing chart thumbnail (#23432)
     add d01cf4300c fix: schedule query option showing up (#23386)
     add 45f045def2 fix: prevent ForeignKeyViolation error on delete (#23414)
     add 8ecf0b1c20 feat(echarts): Add x axis sort by to all series charts (#23450)
     add 9626a0d884 build(deps-dev): bump prettier from 2.8.4 to 2.8.6 in /superset-websocket (#23451)
     add fb270cbbd5 build(deps-dev): bump @types/node from 18.15.3 to 18.15.5 in /superset-websocket (#23438)
     add 8588f81855 feat(DB engine spec): `get_catalog_names` (#23447)
     add 499754a52e fix: Allow setting ingress hosts directly through yaml (#23446)
     add fae3ad0462 docs(contributing): added note for creating SECRET_KEY (#23417)
     add b1526c14e0 fix(sqllab): dedupe active_tab in tabHistory (#23265)
     add ca4dd26648 chore(sqllab): Remove schemaOptions from redux store (#23257)
     add 832e8fb0ac fix(Pivot Table v2): resolved full width issue (#23393)
     add 88684caba8 build(deps-dev): bump eslint-config-prettier from 8.7.0 to 8.8.0 in /superset-websocket (#23437)
     add 212b7330d6 docs(contributing): How create or change SECRET_KEY (#23420)
     add b0773145d6 feat: Allows reload on default filter value error (#23459)
     add 07a632891c fix(chart): non existent time grain no longer breaks the application (#23441)
     add a15e833128 fix(chart): add missing toleration for init-job (#23452)
     add 8f846b7ad0 fix: broken helm chart ingress (#23471)
     add d1947f7354 fix(sqllab): throw errors of commented out query (#23378)
     add be2eb3157c perf(postprocessing): improve pivot postprocessing operation (#23465)
     add 8c374f391d chore: Dataset specific MetadataBar (#23429)
     add 4530542ac4 fix: Chart crashing if timeseries_limit_metric is an empty array (#23480)
     add 0fa421271e feat(helm): add nodeselector and tolerations to init job (#23416)
     add 21578f74b7 chore: Changes the inputs of native filters modal to have the same width (#23477)
     add a3ffc67238 docs: Adds notes to Superset plugin generator about TypeScript errors (#23501)
     add 0cebe8bf18 fix(legacy-plugin-chart-heatmap): fix adhoc column tooltip (#23507)
     add 8db5cb18c0 fix(generic-x-axis): skip initial time filter for legacy charts (#23506)
     add 439d687e1f fix(dashboard): Add remark plugin on markdown (#23502)
     add 80d1e4ffa3 fix: Preserves selected scopes when toggling between scope types (#23475)
     add 5d910aa2e2 fix(plugin-chart-table): Invalid d3Formatter on String column (#23515)
     add 542bf25729 fix(dashboards): apply tag filter correctly (#23521)
     add 9fbfd1c1d8 feat: Implement context menu for drill by (#23454)
     add 4220d32f3d fix: Dashboard not loading with default first value in filter (#23512)
     add 97b5cdd588 feat: drill by modal (#23458)
     add f2be53dd53 chore: Migrate /superset/favstar to API v1 (#23165)
     add de42c11f99 fix(plugin-generator): Addresses linter errors in newly generated Superset plugin (#23513)
     add 41ad9442c0 fix(word cloud): series label format fixed for custom sql queries (#23517)
     add 63751c6c0f chore: Adds a tooltip to pre-filter in native filters modal (#23481)
     add ce3ba67cf6 fix(conditional formatting): controls looses on save (#23137)
     add 81b32d1045 chore: allow logs to show error levels for ssh tunnel (#23536)
     add 7f3e9a68e1 Merge branch 'master' of https://github.com/apache/superset into dm/chore/migrate-user-fav-slices-to-api-v1

No new revisions were added by this update.

Summary of changes:
 .github/CODEOWNERS                                 |   10 +-
 .github/workflows/superset-python-unittest.yml     |    2 +
 .github/workflows/welcome-new-users.yml            |    3 +-
 .pre-commit-config.yaml                            |    9 +-
 Dockerfile                                         |   16 +-
 RELEASING/Dockerfile.from_local_tarball            |    3 +-
 RELEASING/changelog.py                             |    2 +-
 RELEASING/from_tarball_entrypoint.sh               |    1 +
 RESOURCES/FEATURE_FLAGS.md                         |    2 +-
 RESOURCES/INTHEWILD.md                             |    2 +
 UPDATING.md                                        |   15 +
 docker/.env-non-dev                                |    1 +
 docs/docs/contributing/local-backend.mdx           |    2 +
 .../creating-your-first-dashboard.mdx              |    2 +-
 .../docs/databases/installing-database-drivers.mdx |    4 +-
 docs/docs/databases/teradata.mdx                   |    2 +-
 docs/docs/installation/alerts-reports.mdx          |   16 +-
 docs/docs/installation/configuring-superset.mdx    |   12 +-
 .../installing-superset-from-scratch.mdx           |   10 +-
 docs/docs/installation/setup-ssh-tunneling.mdx     |   21 +
 docs/docs/installation/sql-templating.mdx          |   47 +-
 docs/docs/miscellaneous/chart-params.mdx           |    2 +-
 docs/docs/security.mdx                             |   18 +-
 docs/docusaurus.config.js                          |   13 +-
 docs/package.json                                  |   16 +-
 docs/static/resources/openapi.json                 |  186 +-
 docs/yarn.lock                                     | 4429 ++++-----
 helm/superset/Chart.yaml                           |    2 +-
 helm/superset/README.md                            |   11 +-
 helm/superset/templates/deployment-worker.yaml     |    3 +
 helm/superset/templates/deployment.yaml            |    3 +
 helm/superset/templates/ingress.yaml               |    3 +
 helm/superset/templates/init-job.yaml              |   26 +
 helm/superset/templates/service.yaml               |    9 +
 helm/superset/values.yaml                          |   24 +-
 pyproject.toml                                     |   19 -
 requirements/base.txt                              |    4 +-
 requirements/integration.txt                       |   22 +-
 scripts/generate_frontend_ts_tasklist.js           |    4 +-
 setup.py                                           |    9 +-
 superset-embedded-sdk/package-lock.json            |  100 +-
 superset-embedded-sdk/package.json                 |    2 +-
 superset-embedded-sdk/src/index.ts                 |    2 +
 superset-frontend/.storybook/main.js               |    5 +-
 .../cypress/integration/chart_list/list.test.ts    |    8 +-
 .../cypress/integration/dashboard/load.test.ts     |    5 +-
 .../integration/dashboard/nativeFilters.test.ts    |   27 +-
 .../cypress/integration/dashboard/utils.ts         |   11 +-
 .../cypress-base/cypress/support/directories.ts    |   12 +-
 superset-frontend/cypress-base/package-lock.json   | 6610 +++++++++----
 superset-frontend/cypress-base/package.json        |    2 +-
 superset-frontend/jest.config.js                   |    5 +-
 superset-frontend/package-lock.json                | 2137 ++++-
 superset-frontend/package.json                     |   14 +-
 .../generators/plugin-chart/templates/README.erb   |   25 +
 .../generators/plugin-chart/templates/package.erb  |    2 +-
 .../plugin-chart/templates/src/MyChart.erb         |   11 +-
 .../templates/src/plugin/controlPanel.erb          |   10 +-
 .../plugin-chart/templates/src/types.erb           |    6 +-
 .../templates/test/plugin/transformProps.test.erb  |    3 +-
 .../superset-ui-chart-controls/package.json        |    2 +-
 .../src/components/ColumnOption.tsx                |    8 +-
 .../src/components/MetricOption.tsx                |    8 +-
 .../src/operators/pivotOperator.ts                 |    9 +-
 .../src/operators/renameOperator.ts                |   20 +-
 .../src/operators/sortOperator.ts                  |    4 +-
 .../src/operators/timeCompareOperator.ts           |    4 +-
 .../src/operators/timeComparePivotOperator.ts      |    3 +-
 .../{isDerivedSeries.ts => extractExtraMetrics.ts} |   34 +-
 .../src/operators/utils/index.ts                   |    1 +
 .../src/operators/utils/isDerivedSeries.ts         |    4 +-
 .../src/operators/utils/isTimeComparison.ts        |    4 +-
 .../src/sections/advancedAnalytics.tsx             |   10 +-
 .../components/ColumnConfigControl/constants.tsx   |    2 +-
 .../src/shared-controls/customControls.tsx         |   81 +-
 .../src/shared-controls/mixins.tsx                 |    4 +-
 .../src/shared-controls/sharedControls.tsx         |    4 +-
 .../superset-ui-chart-controls/src/types.ts        |    4 +-
 .../src/utils/D3Formatting.ts                      |    7 +
 .../src/utils/expandControlConfig.tsx              |    2 +-
 .../test/operators/pivotOperator.test.ts           |   61 +-
 .../test/operators/renameOperator.test.ts          |   33 +-
 .../test/operators/rollingWindowOperator.test.ts   |    4 +-
 .../test/operators/sortOperator.test.ts            |   25 +
 .../test/operators/timeCompareOperator.test.ts     |    4 +-
 .../operators/timeComparePivotOperator.test.ts     |   39 +
 .../operators/utils/extractExtraMetrics.test.ts    |  136 +
 .../test/operators/utils/isDerivedSeries.test.ts   |   18 +-
 .../packages/superset-ui-core/package.json         |    2 +
 .../src/chart/components/SuperChart.tsx            |    2 +-
 .../superset-ui-core/src/chart/types/Base.ts       |   16 +-
 .../src/components/SafeMarkdown.tsx                |   23 +-
 .../superset-ui-core/src/hooks}/index.ts           |    5 +
 .../src/hooks/useChangeEffect/index.ts             |    0
 .../hooks/useChangeEffect/useChangeEffect.test.ts  |    0
 .../src/hooks/useChangeEffect/useChangeEffect.ts   |    0
 .../src/hooks/useComponentDidMount/index.ts        |    0
 .../useComponentDidMount.test.ts                   |    0
 .../useComponentDidMount/useComponentDidMount.ts   |    0
 .../src/hooks/useComponentDidUpdate/index.ts       |    0
 .../useComponentDidUpdate.test.ts                  |    0
 .../useComponentDidUpdate/useComponentDidUpdate.ts |    0
 .../src/hooks/useElementOnScreen}/index.ts         |    2 +-
 .../useElementOnScreen/useElementOnScreen.test.ts  |  111 +
 .../useElementOnScreen/useElementOnScreen.ts}      |    0
 .../src/hooks/usePrevious/index.ts                 |    0
 .../src/hooks/usePrevious/usePrevious.test.ts      |    0
 .../src/hooks/usePrevious/usePrevious.ts           |    0
 .../src/hooks/useTruncation/index.ts               |    0
 .../useTruncation/useCSSTextTruncation.test.tsx    |   62 +
 .../hooks/useTruncation/useCSSTextTruncation.ts    |    0
 .../useChildElementTruncation.test.ts              |  102 +
 .../useTruncation/useChildElementTruncation.ts     |    0
 .../packages/superset-ui-core/src/index.ts         |    1 +
 .../superset-ui-core/src/math-expression/index.ts  |    2 +-
 .../src/query/buildQueryContext.ts                 |   17 +-
 .../superset-ui-core/src/query/buildQueryObject.ts |    2 +-
 .../superset-ui-core/src/query/normalizeOrderBy.ts |    2 +-
 .../src/query/types/AdvancedAnalytics.ts           |    4 +-
 .../src/query/types/PostProcessing.ts              |    6 +-
 .../packages/superset-ui-core/src/style/index.tsx  |    1 +
 .../superset-ui-core/src/time-format/index.ts      |    2 +
 .../src/time-format/utils/normalizeTimestamp.ts}   |   21 +-
 .../superset-ui-core/src/translation/index.ts      |    2 +-
 .../src/ui-overrides/ExtensionsRegistry.ts         |   11 +
 .../superset-ui-core/src/utils/featureFlags.ts     |    3 +-
 .../superset-ui-core/src/utils/getSelectedText.ts} |    3 +-
 .../packages/superset-ui-core/src/utils/index.ts   |    1 +
 .../test/components/SafeMarkdown.test.ts}          |   35 +-
 .../superset-ui-core/test/models/Registry.test.ts  |    2 +-
 .../factories/createD3NumberFormatter.test.ts      |    2 +-
 .../test/query/buildQueryContext.test.ts           |   37 -
 .../test/query/types/PostProcessing.test.ts        |    4 +-
 .../time-format/utils/normalizeTimestamp.test.ts   |   43 +
 .../test/utils/getSelectedText.test.ts}            |   22 +-
 .../packages/superset-ui-core/types/external.d.ts  |    2 +-
 .../Area/stories/controlsShown.tsx                 |    2 +-
 .../Area/stories/expanded.tsx                      |    2 +-
 .../Area/stories/stackedWithBounds.tsx             |    4 +-
 .../superset-ui-chart/SuperChartStories.tsx        |    2 +-
 .../superset-ui-switchboard/src/switchboard.ts     |    2 +-
 .../src/countries.ts                               |    2 +
 .../src/countries/srilanka.geojson                 | 9838 ++++++++++++++++++++
 .../legacy-plugin-chart-country-map/src/index.js   |    2 +-
 .../legacy-plugin-chart-heatmap/src/Heatmap.js     |   17 +-
 .../src/ReactParallelCoordinates.jsx               |    6 +-
 .../src/SankeyLoop.js                              |    4 +-
 .../legacy-plugin-chart-world-map/src/WorldMap.js  |  112 +-
 .../legacy-plugin-chart-world-map/src/index.js     |    6 +-
 .../src/transformProps.js                          |   17 +-
 .../src/components/PlaySlider.jsx                  |    4 +-
 .../src/layers/Polygon/Polygon.jsx                 |    4 +-
 .../src/layers/Scatter/controlPanel.ts             |    2 +-
 .../src/utilities/Shared_DeckGL.jsx                |   12 +-
 .../src/utils/fitViewport.ts                       |    2 +-
 .../legacy-preset-chart-deckgl/src/utils/time.js   |    8 +-
 .../src/Pie/controlPanel.ts                        |   10 +-
 .../src/BigNumber/BigNumberViz.tsx                 |    6 +-
 .../plugin-chart-echarts/src/BigNumber/types.ts    |    4 +-
 .../src/BoxPlot/EchartsBoxPlot.tsx                 |   51 +-
 .../src/BoxPlot/controlPanel.ts                    |    5 +-
 .../plugin-chart-echarts/src/BoxPlot/index.ts      |    8 +-
 .../src/Funnel/EchartsFunnel.tsx                   |   51 +-
 .../src/Funnel/controlPanel.tsx                    |    6 +-
 .../plugin-chart-echarts/src/Funnel/index.ts       |    6 +-
 .../src/Gauge/EchartsGauge.tsx                     |   51 +-
 .../plugin-chart-echarts/src/Gauge/index.ts        |    6 +-
 .../src/Graph/EchartsGraph.tsx                     |  110 +-
 .../plugin-chart-echarts/src/Graph/index.ts        |    8 +-
 .../src/Graph/transformProps.ts                    |   24 +-
 .../plugin-chart-echarts/src/Graph/types.ts        |    1 +
 .../src/MixedTimeseries/EchartsMixedTimeseries.tsx |  167 +-
 .../src/MixedTimeseries/buildQuery.ts              |    9 +-
 .../src/MixedTimeseries/index.ts                   |    6 +-
 .../plugin-chart-echarts/src/Pie/EchartsPie.tsx    |   51 +-
 .../plugin-chart-echarts/src/Pie/controlPanel.tsx  |    5 +-
 .../plugins/plugin-chart-echarts/src/Pie/index.ts  |    6 +-
 .../src/Radar/EchartsRadar.tsx                     |   52 +-
 .../plugin-chart-echarts/src/Radar/buildQuery.ts   |    4 +-
 .../src/Radar/controlPanel.tsx                     |    5 +-
 .../plugin-chart-echarts/src/Radar/index.ts        |    8 +-
 .../src/Sunburst/EchartsSunburst.tsx               |   99 +-
 .../src/Sunburst/controlPanel.tsx                  |    5 +-
 .../plugin-chart-echarts/src/Sunburst/index.ts     |    8 +-
 .../src/Timeseries/Area/controlPanel.tsx           |   16 +-
 .../src/Timeseries/Area/index.ts                   |    6 +-
 .../src/Timeseries/EchartsTimeseries.tsx           |  154 +-
 .../src/Timeseries/Regular/Bar/controlPanel.tsx    |   15 +-
 .../src/Timeseries/Regular/Bar/index.ts            |    6 +-
 .../src/Timeseries/Regular/Line/controlPanel.tsx   |   13 +-
 .../src/Timeseries/Regular/Line/index.ts           |    6 +-
 .../Timeseries/Regular/Scatter/controlPanel.tsx    |   13 +-
 .../src/Timeseries/Regular/Scatter/index.ts        |    6 +-
 .../Timeseries/Regular/SmoothLine/controlPanel.tsx |   13 +-
 .../src/Timeseries/Regular/SmoothLine/index.ts     |    6 +-
 .../src/Timeseries/Step/controlPanel.tsx           |   10 +-
 .../src/Timeseries/Step/index.ts                   |    6 +-
 .../src/Timeseries/buildQuery.ts                   |   35 +-
 .../src/Timeseries/constants.ts                    |    9 +
 .../plugin-chart-echarts/src/Timeseries/index.ts   |    6 +-
 .../src/Timeseries/transformProps.ts               |  109 +-
 .../src/Timeseries/transformers.ts                 |   94 +-
 .../plugin-chart-echarts/src/Timeseries/types.ts   |    1 +
 .../plugin-chart-echarts/src/Tree/controlPanel.tsx |    2 +-
 .../src/Treemap/EchartsTreemap.tsx                 |  119 +-
 .../src/Treemap/controlPanel.tsx                   |    5 +-
 .../plugin-chart-echarts/src/Treemap/index.ts      |   10 +-
 .../src/components/ExtraControls.tsx               |    4 +-
 .../plugins/plugin-chart-echarts/src/constants.ts  |   25 +-
 .../plugins/plugin-chart-echarts/src/controls.tsx  |   54 +-
 .../plugins/plugin-chart-echarts/src/types.ts      |   28 +-
 .../src/utils/eventHandlers.ts                     |  107 +-
 .../plugin-chart-echarts/src/utils/series.ts       |  115 +-
 .../test/Graph/transformProps.test.ts              |    6 +
 .../test/MixedTimeseries/buildQuery.test.ts        |    6 +-
 .../test/Timeseries/transformProps.test.ts         |  175 +
 .../plugin-chart-echarts/test/utils/series.test.ts |   52 +-
 .../test/plugin/transformProps.test.ts             |    4 +-
 .../plugins/plugin-chart-pivot-table/package.json  |    2 +-
 .../src/PivotTableChart.tsx                        |  103 +-
 .../src/plugin/controlPanel.tsx                    |    4 +-
 .../plugin-chart-pivot-table/src/plugin/index.ts   |   10 +-
 .../src/react-pivottable/Styles.js                 |    1 +
 .../src/react-pivottable/TableRenderers.jsx        |   12 +
 .../plugins/plugin-chart-pivot-table/src/types.ts  |    4 +-
 .../plugins/plugin-chart-table/package.json        |    1 +
 .../plugin-chart-table/src/DataTable/DataTable.tsx |   25 +-
 .../plugins/plugin-chart-table/src/TableChart.tsx  |  231 +-
 .../plugins/plugin-chart-table/src/buildQuery.ts   |    4 +-
 .../plugin-chart-table/src/controlPanel.tsx        |    2 +
 .../plugins/plugin-chart-table/src/index.ts        |    8 +-
 .../plugin-chart-table/src/transformProps.ts       |    3 +-
 .../plugins/plugin-chart-table/src/types.ts        |    4 +-
 .../src/utils/DateWithFormatter.ts                 |   21 +-
 .../plugin-chart-table/test/TableChart.test.tsx    |    1 +
 .../plugins/plugin-chart-table/test/testData.ts    |   14 +
 .../src/legacyPlugin/transformProps.ts             |    7 +-
 .../src/legacyPlugin/types.ts                      |    4 +-
 .../plugins/plugin-chart-word-cloud/src/types.ts   |    4 +-
 .../src/utils/convertScaleToDataUIScaleShape.ts    |    2 +-
 superset-frontend/spec/fixtures/mockCharts.ts      |   55 +
 .../spec/fixtures/mockDashboardState.js            |    2 +-
 superset-frontend/spec/helpers/shim.tsx            |   30 +
 superset-frontend/src/SqlLab/App.jsx               |    3 +-
 superset-frontend/src/SqlLab/actions/sqlLab.js     |   66 +-
 .../src/SqlLab/actions/sqlLab.test.js              |   53 +-
 .../SqlLab/components/AceEditorWrapper/index.tsx   |   35 +-
 .../src/SqlLab/components/App/App.test.jsx         |   49 +-
 .../src/SqlLab/components/App/index.jsx            |   17 +-
 .../components/ExploreCtasResultsButton/index.tsx  |    6 +-
 .../QueryLimitSelect/QueryLimitSelect.test.tsx     |    3 -
 .../src/SqlLab/components/QueryTable/index.tsx     |   15 +-
 .../src/SqlLab/components/ResultSet/index.tsx      |    7 +-
 .../components/RunQueryActionButton/index.tsx      |    5 +-
 .../src/SqlLab/components/SaveQuery/index.tsx      |    1 -
 .../src/SqlLab/components/SqlEditor/index.jsx      |  118 +-
 .../SqlEditorLeftBar/SqlEditorLeftBar.test.jsx     |   82 +-
 .../SqlLab/components/SqlEditorLeftBar/index.tsx   |   54 +-
 .../src/SqlLab/components/TableElement/index.tsx   |    3 +-
 superset-frontend/src/SqlLab/constants.ts          |    1 +
 superset-frontend/src/SqlLab/fixtures.ts           |    7 -
 .../hooks/useQueryEditor/useQueryEditor.test.ts    |    9 +-
 .../src/SqlLab/reducers/getInitialState.js         |   10 +-
 .../src/SqlLab/reducers/getInitialState.test.ts    |   19 +-
 superset-frontend/src/SqlLab/reducers/sqlLab.js    |   14 +-
 superset-frontend/src/SqlLab/types.ts              |    1 -
 .../src/SqlLab/utils/emptyQueryResults.test.js     |   43 +-
 .../SqlLab/utils/reduxStateToLocalStorageHelper.js |   21 +-
 .../src/assets/images/icons/filter.svg             |    5 +-
 .../AlteredSliceTag/AlteredSliceTag.test.jsx       |    2 -
 superset-frontend/src/components/Chart/Chart.jsx   |   25 +-
 .../src/components/Chart/ChartContextMenu.tsx      |  151 +-
 .../src/components/Chart/ChartRenderer.jsx         |    3 +-
 .../DisabledMenuItemTooltip.tsx}                   |   45 +-
 .../Chart/DrillBy/DrillByMenuItems.test.tsx        |  190 +
 .../components/Chart/DrillBy/DrillByMenuItems.tsx  |  243 +
 .../components/Chart/DrillBy/DrillByModal.test.tsx |   88 +
 .../src/components/Chart/DrillBy/DrillByModal.tsx  |  108 +
 .../Chart/DrillDetail/DrillDetailMenuItems.tsx     |   76 +-
 .../Chart/DrillDetail/DrillDetailPane.tsx          |  107 +-
 .../components/Chart/MenuItemWithTruncation.tsx    |   58 +
 .../src/components/Chart/utils.test.ts             |    3 +
 superset-frontend/src/components/Chart/utils.ts    |   38 +-
 .../DatabaseSelector/DatabaseSelector.test.tsx     |  283 +-
 .../src/components/DatabaseSelector/index.tsx      |   89 +-
 .../Datasource/DatasourceEditor.test.jsx           |   13 -
 .../DeprecatedSelect/DeprecatedSelect.tsx          |    4 +-
 .../src/components/DropdownContainer/index.tsx     |    3 +-
 .../src/components/EmptyState/index.tsx            |   24 +-
 .../ErrorBoundary/ErrorBoundary.test.tsx           |    2 -
 .../src/components/FaveStar/FaveStar.test.tsx      |    4 +-
 .../src/components/FaveStar/index.tsx              |   11 +-
 .../src/components/FlashProvider/index.tsx         |    2 +-
 .../Form/LabeledErrorBoundInput.test.jsx           |    1 -
 .../components/ImportModal/ImportModal.test.tsx    |   47 +
 .../src/components/ImportModal/index.tsx           |  188 +-
 .../src/components/ListView/CrossLinks.tsx         |    3 +-
 .../src/components/ListView/ListView.test.jsx      |    6 -
 superset-frontend/src/components/ListView/types.ts |    3 +
 superset-frontend/src/components/ListView/utils.ts |    2 +-
 .../src/components/MessageToasts/Toast.test.jsx    |    2 -
 .../PageHeaderWithActions.test.tsx                 |    2 -
 .../HeaderReportDropdown/index.test.tsx            |    6 -
 .../ReportModal/HeaderReportDropdown/index.tsx     |    2 +-
 .../components/ReportModal/ReportModal.test.tsx    |    6 -
 .../src/components/Select/AsyncSelect.tsx          |    4 +-
 .../src/components/Select/CustomTag.tsx            |    3 +-
 .../src/components/Select/Select.stories.tsx       |    2 +-
 .../src/components/Select/Select.test.tsx          |   59 +-
 superset-frontend/src/components/Select/Select.tsx |   93 +-
 superset-frontend/src/components/Select/utils.tsx  |   18 +
 .../src/components/Table/Table.stories.tsx         |    6 +-
 .../src/components/Table/VirtualTable.tsx          |   25 +-
 .../Table/cell-renderers/NullCell/index.tsx        |    8 +-
 superset-frontend/src/components/Table/index.tsx   |  126 +-
 .../TableSelector/TableSelector.test.tsx           |  103 +-
 .../src/components/TableSelector/index.tsx         |   42 +-
 .../src/components/TableView/TableView.test.tsx    |    2 -
 .../utils.test.ts => components/Tags/Tag.test.tsx} |   27 +-
 superset-frontend/src/components/Tags/Tag.tsx      |   86 +
 .../Tags/TagsList.stories.tsx}                     |   54 +-
 .../src/components/Tags/TagsList.test.tsx          |   78 +
 superset-frontend/src/components/Tags/TagsList.tsx |  112 +
 .../index.ts => components/Tags/index.tsx}         |    3 +-
 superset-frontend/src/components/Tags/utils.tsx    |   93 +
 .../src/components/TruncatedList/index.tsx         |  159 +
 superset-frontend/src/constants.ts                 |    8 -
 .../src/dashboard/actions/dashboardState.js        |   43 +-
 superset-frontend/src/dashboard/actions/hydrate.js |  130 +-
 .../src/dashboard/actions/sliceEntities.js         |   41 +-
 .../src/dashboard/actions/sliceEntities.test.js    |    4 +-
 .../CrossFilterScopingForm.test.tsx                |   60 -
 .../CrossFilterScopingForm/index.tsx               |   57 -
 .../CrossFilterScopingModal.tsx                    |  112 -
 .../DashboardBuilder/DashboardBuilder.test.tsx     |    4 -
 .../DashboardBuilder/DashboardBuilder.tsx          |   17 +-
 .../DashboardBuilder/DashboardContainer.tsx        |    2 +-
 .../dashboard/components/DashboardBuilder/state.ts |   16 +-
 .../DetailsPanel/DetailsPanel.test.tsx             |   82 +-
 .../components/FiltersBadge/DetailsPanel/index.tsx |  213 +-
 .../FilterIndicator/FilterIndicator.test.tsx       |    2 +-
 .../FiltersBadge/FilterIndicator/index.tsx         |   51 +-
 .../components/FiltersBadge/FiltersBadge.test.tsx  |   71 +-
 .../dashboard/components/FiltersBadge/Styles.tsx   |  147 +-
 .../dashboard/components/FiltersBadge/index.tsx    |  112 +-
 .../HeaderActionsDropdown.test.tsx                 |   70 +-
 .../Header/HeaderActionsDropdown/index.jsx         |   15 +-
 .../src/dashboard/components/Header/index.jsx      |   34 +-
 .../PropertiesModal/PropertiesModal.test.tsx       |   16 +-
 .../dashboard/components/PropertiesModal/index.tsx |  124 +-
 .../components/RefreshIntervalModal.test.tsx       |    1 -
 .../src/dashboard/components/SliceAdder.jsx        |   48 +-
 .../src/dashboard/components/SliceHeader/index.tsx |   42 +-
 .../components/SliceHeaderControls/index.tsx       |   46 +-
 .../components/dnd/dragDroppableConfig.js          |    2 +-
 .../dashboard/components/gridComponents/Chart.jsx  |   26 +-
 .../components/gridComponents/Markdown.jsx         |    1 +
 .../dashboard/components/gridComponents/Tabs.jsx   |   13 +-
 .../components/gridComponents/Tabs.test.jsx        |    2 +-
 .../FilterBar/CrossFilters/CrossFilter.test.tsx    |   82 +
 .../FilterBar/CrossFilters/CrossFilter.tsx         |  114 +
 .../FilterBar/CrossFilters/CrossFilterTag.test.tsx |   84 +
 .../FilterBar/CrossFilters/CrossFilterTag.tsx      |   99 +
 .../CrossFilters/CrossFilterTitle.test.tsx}        |   54 +-
 .../FilterBar/CrossFilters/CrossFilterTitle.tsx    |   95 +
 .../FilterBar/CrossFilters/Vertical.tsx            |   46 +
 .../CrossFilters/VerticalCollapse.test.tsx         |  107 +
 .../FilterBar/CrossFilters/VerticalCollapse.tsx    |  102 +
 .../FilterBar/CrossFilters/selectors.ts            |   51 +
 .../FilterBar/CrossFilters/styles.ts}              |   12 +-
 .../FilterBarSettings/FilterBarSettings.test.tsx   |    1 -
 .../FilterBar/FilterBarSettings/index.tsx          |    2 +-
 .../FilterBar/FilterControls/FilterControl.tsx     |    9 +-
 .../FilterBar/FilterControls/FilterControls.tsx    |  139 +-
 .../FilterBar/FilterControls/FilterDivider.tsx     |    8 +-
 .../FilterBar/FilterControls/FilterValue.tsx       |   43 +-
 .../FilterBar/FiltersDropdownContent/index.tsx     |   30 +-
 .../FiltersOutOfScopeCollapsible/index.tsx         |   13 +-
 .../nativeFilters/FilterBar/Horizontal.tsx         |   35 +-
 .../nativeFilters/FilterBar/Vertical.tsx           |  183 +-
 .../components/nativeFilters/FilterBar/index.tsx   |    5 +-
 .../components/nativeFilters/FilterBar/state.ts    |   29 +-
 .../components/nativeFilters/FilterBar/types.ts    |    8 +-
 .../FilterBar/useFilterControlFactory.tsx          |    9 +-
 .../nativeFilters/FilterBar/useFilterOutlined.ts}  |   31 +-
 .../nativeFilters/FilterCard/DependenciesRow.tsx   |    7 +-
 .../nativeFilters/FilterCard/FilterCard.test.tsx   |    6 +-
 .../nativeFilters/FilterCard/NameRow.tsx           |   21 +-
 .../nativeFilters/FilterCard/ScopeRow.tsx          |    3 +-
 .../FiltersConfigModal/FilterConfigurePane.tsx     |    3 +-
 .../FiltersConfigForm/ColumnSelect.test.tsx        |    6 +-
 .../FiltersConfigForm/ColumnSelect.tsx             |   28 +-
 .../FiltersConfigForm/DatasetSelect.tsx            |   12 +-
 .../FiltersConfigForm/DefaultValue.tsx             |   13 +-
 .../FiltersConfigForm/DependencyList.tsx           |   15 +-
 .../FilterScope/FilterScope.test.tsx               |    2 +-
 .../FiltersConfigForm/FilterScope/FilterScope.tsx  |   27 +-
 .../FiltersConfigForm/FiltersConfigForm.tsx        |  192 +-
 .../FiltersConfigForm/constants.ts}                |   20 +-
 .../FiltersConfigForm/getControlItemsMap.tsx       |    2 +-
 .../FiltersConfigModal/FiltersConfigForm/utils.ts  |   14 +-
 .../FiltersConfigModal/FiltersConfigModal.tsx      |   17 +-
 .../nativeFilters/FiltersConfigModal/state.ts      |    3 +-
 .../{FiltersBadge => nativeFilters}/selectors.ts   |  196 +-
 .../src/dashboard/containers/Chart.jsx             |    1 -
 .../src/dashboard/containers/DashboardHeader.jsx   |    1 -
 .../src/dashboard/containers/DashboardPage.tsx     |  139 +-
 .../src/dashboard/containers/SliceAdder.jsx        |    1 -
 superset-frontend/src/dashboard/styles.ts          |    7 +
 superset-frontend/src/dashboard/types.ts           |    1 -
 .../src/dashboard/util/crossFilters.test.ts        |  207 +
 .../src/dashboard/util/crossFilters.ts             |   61 +-
 .../util/filterboxMigrationHelper.test.ts          |  142 -
 .../src/dashboard/util/filterboxMigrationHelper.ts |  423 -
 .../src/dashboard/util/getSliceHeaderTooltip.tsx   |    2 +-
 .../src/explore/actions/exploreActions.ts          |   21 +-
 .../src/explore/components/Control.test.tsx        |    2 +-
 .../src/explore/components/Control.tsx             |    8 +-
 .../src/explore/components/ControlHeader.tsx       |   12 +-
 .../components/ControlPanelsContainer.test.tsx     |   39 +
 .../explore/components/ControlPanelsContainer.tsx  |   54 +-
 .../src/explore/components/ExploreChartPanel.jsx   |    2 +-
 .../ExploreViewContainer.test.tsx                  |    4 +-
 .../components/ExploreViewContainer/index.jsx      |   14 +-
 .../explore/components/PropertiesModal/index.tsx   |  128 +-
 .../src/explore/components/SaveModal.tsx           |   66 +-
 .../components/controls/ColorPickerControl.jsx     |    4 +-
 .../controls/ColorSchemeControl/index.tsx          |    2 +-
 .../ConditionalFormattingControl.tsx               |   30 +-
 .../controls/ConditionalFormattingControl/types.ts |    1 +
 .../DatasourceControl/DatasourceControl.test.tsx   |   19 -
 .../controls/DateFilterControl/DateFilterLabel.tsx |    2 +-
 .../components/controls/DateFilterControl/types.ts |    2 +-
 .../DndFilterSelect.test.tsx                       |    5 +-
 .../DndColumnSelectControl/DndFilterSelect.tsx     |   41 +-
 .../DndMetricSelect.test.tsx                       |    8 -
 .../DndColumnSelectControl/DndMetricSelect.tsx     |    3 +-
 .../FilterControl/AdhocFilter/AdhocFilter.test.js  |    6 +-
 .../controls/FilterControl/AdhocFilter/index.js    |   51 +-
 .../AdhocFilterControl/AdhocFilterControl.test.jsx |    6 +-
 .../FilterControl/AdhocFilterControl/index.jsx     |   34 +-
 .../AdhocFilterEditPopover.test.jsx                |    6 +-
 .../FilterControl/AdhocFilterEditPopover/index.jsx |    5 +-
 ...AdhocFilterEditPopoverSimpleTabContent.test.tsx |    6 +-
 .../index.tsx                                      |    6 +-
 .../AdhocFilterEditPopoverSqlTabContent.test.jsx   |    6 +-
 .../AdhocFilterEditPopoverSqlTabContent/index.jsx  |    6 +-
 .../AdhocFilterOption/AdhocFilterOption.test.tsx   |   14 +-
 .../AdhocFilterPopoverTrigger.test.tsx             |    6 +-
 .../controls/FilterControl/adhocFilterType.js      |    2 +-
 .../components/controls/FilterControl}/types.ts    |   12 +-
 .../controls/FilterControl/utils/translateToSQL.ts |   76 +
 .../utils/useGetTimeRangeLabel.test.ts             |    3 +-
 .../FilterControl/utils/useGetTimeRangeLabel.tsx   |    3 +-
 .../controls/MetricControl/AdhocMetric.js          |    4 -
 .../controls/MetricControl/AdhocMetric.test.js     |    6 -
 .../AdhocMetricEditPopover.test.tsx                |   22 +-
 .../MetricControl/AdhocMetricEditPopover/index.jsx |   40 +-
 .../MetricControl/AdhocMetricPopoverTrigger.tsx    |    6 +
 .../MetricControl/MetricDefinitionValue.jsx        |    2 +-
 .../controls/MetricControl/MetricsControl.jsx      |    9 +-
 .../controls/MetricControl/MetricsControl.test.jsx |    1 -
 .../SelectAsyncControl/SelectAsyncControl.test.tsx |   16 +-
 .../controls/VizTypeControl/FastVizSwitcher.tsx    |   11 +-
 .../components/controls/VizTypeControl/index.tsx   |   24 +-
 superset-frontend/src/explore/constants.ts         |   10 -
 .../getFormDataFromDashboardContext.test.ts        |   37 +
 .../getFormDataWithDashboardContext.ts             |   55 +-
 .../src/explore/exploreUtils/getHostName.test.ts   |    2 +-
 superset-frontend/src/explore/store.js             |    2 +-
 .../metadataBar/DatasetMetadataBar.stories.tsx     |   89 +
 .../metadataBar/useDatasetMetadataBar.test.tsx     |   93 +
 .../datasets/metadataBar/useDatasetMetadataBar.tsx |  107 +
 .../components/Select/SelectFilterPlugin.tsx       |   91 +-
 superset-frontend/src/filters/utils.ts             |    8 +-
 superset-frontend/src/hooks/apiResources/index.ts  |    1 +
 .../src/hooks/apiResources/schemas.test.ts         |  138 +
 .../hooks/apiResources/{tables.ts => schemas.ts}   |   72 +-
 .../src/hooks/apiResources/tables.test.ts          |  186 +-
 superset-frontend/src/hooks/apiResources/tables.ts |   17 +-
 superset-frontend/src/logger/LogUtils.ts           |    5 +
 .../src/middleware/loggerMiddleware.js             |   12 +-
 .../AlertReportList/AlertReportList.test.jsx}      |    2 +-
 .../AlertReportList/index.tsx}                     |    4 +-
 superset-frontend/src/pages/AllEntities/index.tsx  |   94 +
 .../AnnotationLayerList.test.jsx}                  |    2 +-
 .../AnnotationLayerList/index.tsx}                 |    4 +-
 .../AnnotationList}/AnnotationList.test.jsx        |    2 +-
 .../AnnotationList/index.tsx}                      |    6 +-
 .../ExplorePage.tsx => pages/Chart/index.tsx}      |   14 +-
 .../src/pages/ChartCreation/index.tsx              |   17 +-
 superset-frontend/src/pages/ChartList/index.tsx    |   92 +-
 .../CssTemplateList/CssTemplateList.test.jsx}      |    2 +-
 .../CssTemplateList/index.tsx}                     |    4 +-
 .../Dashboard/index.tsx}                           |    2 +-
 .../DashboardList}/DashboardList.test.jsx          |    2 +-
 .../DashboardList/index.tsx}                       |  109 +-
 .../DatabaseList}/DatabaseList.test.jsx            |   22 +-
 .../DatabaseList/index.tsx}                        |    9 +-
 .../DatasetCreation/DatasetCreation.test.tsx}      |    3 +-
 .../AddDataset => pages/DatasetCreation}/index.tsx |   72 +-
 .../DatasetList/DatasetList.test.tsx}              |   11 +-
 .../DatasetList/index.tsx}                         |   28 +-
 .../ExecutionLogList/ExecutionLogList.test.jsx}    |    2 +-
 .../ExecutionLogList/index.tsx}                    |    2 +-
 .../Welcome.test.tsx => pages/Home/Home.test.tsx}  |    2 +-
 .../welcome/Welcome.tsx => pages/Home/index.tsx}   |   14 +-
 .../QueryHistoryList/QueryHistoryList.test.tsx}    |    2 +-
 .../QueryHistoryList/index.tsx}                    |    2 +-
 .../SavedQueryList}/SavedQueryList.test.jsx        |    2 +-
 .../SavedQueryList/index.tsx}                      |   43 +-
 superset-frontend/src/pages/Tags/index.tsx         |  331 +
 superset-frontend/src/preamble.ts                  |    2 +-
 ...rdComponents.ts => setupDashboardComponents.ts} |    0
 superset-frontend/src/tags.ts                      |  186 +
 superset-frontend/src/types/Chart.ts               |   16 +
 .../types.ts => types/TagType.ts}                  |   16 +-
 .../types.ts => types/TaggedObject.ts}             |   11 +-
 .../types.ts => utils/cachedSupersetGet.ts}        |   13 +-
 .../src/utils/getClientErrorObject.ts              |    2 +-
 .../src/views/CRUD/alert/AlertReportModal.tsx      |    7 +-
 .../views/CRUD/allentities/AllEntitiesTable.tsx    |  125 +
 .../views/CRUD/annotation/AnnotationModal.test.jsx |    4 +-
 .../src/views/CRUD/annotation/AnnotationModal.tsx  |    8 +-
 .../ChartList => views/CRUD/chart}/ChartCard.tsx   |    0
 .../src/views/CRUD/dashboard/DashboardCard.tsx     |   51 +-
 .../DatabaseConnectionForm/EncryptedField.tsx      |    4 +-
 .../data/database/DatabaseModal/ExtraOptions.tsx   |    2 +-
 .../data/database/DatabaseModal/SSHTunnelForm.tsx  |  317 +-
 .../database/DatabaseModal/SSHTunnelSwitch.tsx     |   58 +
 .../data/database/DatabaseModal/index.test.tsx     |   72 +-
 .../CRUD/data/database/DatabaseModal/index.tsx     |  447 +-
 .../CRUD/data/database/DatabaseModal/styles.ts     |    2 +-
 .../src/views/CRUD/data/database/types.ts          |    1 +
 .../EditDataset.test.tsx}                          |   37 +-
 .../EditDataset/UsageTab/UsageTab.test.tsx         |  405 +
 .../AddDataset/EditDataset/UsageTab/index.tsx      |  263 +
 .../data/dataset/AddDataset/EditDataset/index.tsx  |   78 +
 .../AddDataset/LeftPanel/LeftPanel.test.tsx        |   18 +-
 .../CRUD/data/dataset/DatasetLayout/index.tsx      |    9 +-
 superset-frontend/src/views/CRUD/data/hooks.ts     |  127 +-
 superset-frontend/src/views/CRUD/hooks.ts          |   70 +-
 superset-frontend/src/views/CRUD/tags/TagCard.tsx  |  123 +
 superset-frontend/src/views/CRUD/types.ts          |    9 +-
 superset-frontend/src/views/CRUD/utils.test.tsx    |  163 +
 superset-frontend/src/views/CRUD/utils.tsx         |   72 +-
 .../src/views/CRUD/welcome/ActivityTable.tsx       |    4 +-
 .../src/views/CRUD/welcome/ChartTable.tsx          |    4 +-
 .../src/views/CRUD/welcome/DashboardTable.tsx      |   36 +-
 .../src/views/CRUD/welcome/EmptyState.tsx          |   18 +-
 .../src/views/CRUD/welcome/SavedQueries.tsx        |    2 +-
 superset-frontend/src/views/components/Menu.tsx    |    9 +-
 .../src/views/components/RightMenu.tsx             |    4 +-
 superset-frontend/src/views/components/types.ts    |    2 +-
 superset-frontend/src/views/routes.test.tsx        |    4 +-
 superset-frontend/src/views/routes.tsx             |  117 +-
 .../src/visualizations/TimeTable/SparklineCell.tsx |  298 +-
 .../src/visualizations/TimeTable/TimeTable.jsx     |   20 +-
 .../src/visualizations/TimeTable/transformProps.ts |    2 +
 superset-frontend/webpack.config.js                |    4 +-
 superset-websocket/package-lock.json               |  873 +-
 superset-websocket/package.json                    |   20 +-
 superset/charts/api.py                             |  151 +-
 superset/charts/commands/delete.py                 |    7 +-
 superset/charts/commands/export.py                 |    3 +-
 superset/charts/commands/importers/v1/utils.py     |    9 +-
 superset/charts/commands/update.py                 |    5 +-
 superset/charts/dao.py                             |   30 +
 superset/charts/filters.py                         |   38 +-
 superset/charts/schemas.py                         |   22 +-
 superset/cli/importexport.py                       |   10 +-
 superset/cli/test.py                               |    1 -
 superset/cli/thumbnails.py                         |    9 +-
 superset/cli/update.py                             |    2 +-
 superset/commands/export/assets.py                 |    1 -
 superset/commands/export/models.py                 |    1 -
 superset/commands/importers/v1/__init__.py         |   20 +-
 superset/commands/importers/v1/assets.py           |   17 +-
 superset/commands/importers/v1/examples.py         |   21 +-
 superset/commands/importers/v1/utils.py            |   60 +
 ...uthrized_object.py => not_authorized_object.py} |    0
 superset/common/query_actions.py                   |   26 +-
 superset/common/query_context_factory.py           |   96 +-
 superset/common/query_context_processor.py         |    2 +
 superset/common/query_object.py                    |   34 +-
 superset/common/utils/query_cache_manager.py       |   19 +-
 superset/config.py                                 |   38 +-
 superset/connectors/sqla/models.py                 |   80 +-
 superset/connectors/sqla/utils.py                  |    7 +-
 superset/connectors/sqla/views.py                  |    2 -
 superset/constants.py                              |    9 +
 superset/dao/base.py                               |   20 +-
 superset/dashboards/api.py                         |  173 +-
 superset/dashboards/commands/export.py             |    1 -
 superset/dashboards/commands/importers/v1/utils.py |   17 +-
 superset/dashboards/commands/update.py             |    2 +-
 superset/dashboards/dao.py                         |   69 +-
 superset/dashboards/filter_sets/commands/base.py   |    2 +-
 superset/dashboards/filters.py                     |   35 +-
 superset/dashboards/permalink/commands/create.py   |    4 +-
 superset/dashboards/schemas.py                     |   27 +-
 superset/databases/api.py                          |  105 +-
 superset/databases/commands/create.py              |   11 +-
 superset/databases/commands/export.py              |   11 +-
 superset/databases/commands/importers/v1/utils.py  |   21 +-
 superset/databases/commands/test_connection.py     |    1 -
 superset/databases/schemas.py                      |   85 +-
 .../databases/ssh_tunnel/commands/exceptions.py    |    8 +
 superset/databases/ssh_tunnel/models.py            |   13 +
 superset/datasets/api.py                           |  112 +
 superset/datasets/commands/delete.py               |    7 +-
 superset/datasets/commands/duplicate.py            |    2 +
 superset/datasets/commands/exceptions.py           |    4 +
 superset/datasets/commands/export.py               |   12 +-
 superset/datasets/commands/importers/v0.py         |    2 +-
 superset/datasets/commands/importers/v1/utils.py   |   41 +-
 superset/datasets/dao.py                           |  123 +-
 superset/datasets/schemas.py                       |   11 +
 superset/datasource/dao.py                         |    1 -
 superset/db_engine_specs/aurora.py                 |    2 -
 superset/db_engine_specs/base.py                   |  156 +-
 superset/db_engine_specs/clickhouse.py             |  315 +-
 superset/db_engine_specs/crate.py                  |    1 -
 superset/db_engine_specs/databricks.py             |    1 -
 superset/db_engine_specs/dremio.py                 |    1 -
 superset/db_engine_specs/drill.py                  |   29 +-
 superset/db_engine_specs/elasticsearch.py          |    2 -
 superset/db_engine_specs/gsheets.py                |    1 -
 superset/db_engine_specs/hive.py                   |   90 +-
 superset/db_engine_specs/impala.py                 |    2 +-
 superset/db_engine_specs/kylin.py                  |    4 +-
 superset/db_engine_specs/mysql.py                  |   32 +-
 superset/db_engine_specs/netezza.py                |    1 -
 superset/db_engine_specs/postgres.py               |   92 +
 superset/db_engine_specs/presto.py                 |   49 +-
 superset/db_engine_specs/rockset.py                |    1 -
 superset/db_engine_specs/snowflake.py              |   41 +-
 superset/db_engine_specs/trino.py                  |    1 +
 superset/db_engines/hive.py                        |   67 -
 .../configs/charts/Video_Game_Sales_Filter.yaml    |    2 +-
 .../dashboards/COVID_Vaccine_Dashboard.yaml        |    8 +-
 .../dashboards/FCC_New_Coder_Survey_2018.yaml      |    8 +-
 .../configs/dashboards/Sales_Dashboard.yaml        |    6 +-
 .../configs/dashboards/Video_Game_Sales.yaml       |   10 +-
 .../configs/datasets/examples/FCC_2018_Survey.yaml |    6 +-
 superset/examples/multiformat_time_series.py       |    2 +-
 superset/examples/utils.py                         |    6 +-
 superset/examples/world_bank.py                    |    1 -
 superset/exceptions.py                             |    6 +-
 superset/explore/permalink/api.py                  |    2 +-
 superset/extensions/ssh.py                         |   12 +-
 superset/importexport/api.py                       |   47 +-
 superset/initialization/__init__.py                |   43 +-
 superset/jinja_context.py                          |   12 +-
 superset/migrations/alembic.ini                    |    7 +-
 ...7c195a_rewriting_url_from_shortner_with_new_.py |    2 +-
 .../versions/2017-10-03_14-37_4736ec66ce19_.py     |    9 +-
 ...8c4473c581_allow_multi_schema_metadata_fetch.py |    1 -
 .../versions/2018-03-20_19-47_f231d82b9b26_.py     |    2 -
 ...-07-20_16-08_937d04c16b64_update_datasources.py |    2 -
 .../2019-10-10_13-52_1495eb914ad3_time_range.py    |    1 -
 ...10-42_f9a30386bd74_cleanup_time_grainularity.py |   12 +-
 ...29_09-24_620241d1153f_update_time_grain_sqla.py |    2 -
 ...b56500de1855_add_uuid_column_to_import_mixin.py |    2 +-
 ...27_08-25_31b2a1039d4a_drop_tables_constraint.py |    1 -
 ...3605f370a_fix_schemas_allowed_for_csv_upload.py |    1 -
 ...4fbb_add_type_to_native_filter_configuration.py |    2 +-
 ...cbaac5_change_datatype_of_type_in_basecolumn.py |    1 -
 ...e5f1dacd_rename_to_schemas_allowed_for_file_.py |    1 -
 ...03_5afbb1a5849b_add_embedded_dahshoard_table.py |    2 +-
 ...14-38_a9422eeaae74_new_dataset_models_take_2.py |   10 +-
 ...-46_c0a3ea245b61_remove_show_native_filters.py} |   52 +-
 ...ac08bb5b83_invert_horizontal_bar_chart_order.py |  126 +
 ...7_13-24_b5ea9d343307_bar_chart_stack_options.py |   95 +
 superset/models/core.py                            |   76 +-
 superset/models/dashboard.py                       |   35 +-
 superset/models/datasource_access_request.py       |    2 -
 superset/models/helpers.py                         |   12 +-
 superset/models/slice.py                           |   22 +-
 superset/models/sql_lab.py                         |   12 +-
 superset/queries/api.py                            |    2 +-
 superset/queries/saved_queries/api.py              |   61 +-
 superset/queries/saved_queries/commands/export.py  |    1 -
 superset/queries/saved_queries/filters.py          |   12 +-
 superset/reports/commands/base.py                  |    1 -
 superset/reports/commands/exceptions.py            |    7 +-
 superset/reports/commands/execute.py               |   11 +-
 superset/reports/notifications/email.py            |    8 +-
 superset/reports/notifications/slack.py            |    8 +-
 superset/security/manager.py                       |   80 +-
 superset/sql_parse.py                              |    4 +-
 superset/sqllab/api.py                             |  125 +-
 .../{db_engines => sqllab/commands}/__init__.py    |    0
 superset/sqllab/commands/estimate.py               |  106 +
 superset/sqllab/commands/execute.py                |    6 +-
 superset/sqllab/commands/export.py                 |  134 +
 superset/sqllab/commands/results.py                |    3 +-
 superset/sqllab/exceptions.py                      |   12 +-
 superset/sqllab/query_render.py                    |    3 +-
 superset/sqllab/schemas.py                         |    9 +
 superset/sqllab/sql_json_executer.py               |    3 +-
 superset/tags/api.py                               |  386 +
 .../commands}/__init__.py                          |    0
 superset/tags/commands/create.py                   |   65 +
 superset/tags/commands/delete.py                   |  115 +
 superset/tags/commands/exceptions.py               |   65 +
 .../__init__.py => tags/commands/utils.py}         |   13 +
 superset/tags/dao.py                               |  260 +
 .../{db_engines/__init__.py => tags/exceptions.py} |   13 +
 superset/tags/models.py                            |   19 +-
 superset/tags/schemas.py                           |   59 +
 superset/tasks/async_queries.py                    |   12 +-
 superset/tasks/thumbnails.py                       |    5 +-
 .../form_view/database_schemas_selector.html       |    5 +-
 superset/templates/tail_js_custom_extra.html       |    2 +-
 superset/translations/en/LC_MESSAGES/messages.json |    4 +-
 superset/translations/en/LC_MESSAGES/messages.po   |   16 +-
 superset/translations/messages.pot                 |   14 +-
 superset/translations/ru/LC_MESSAGES/messages.json |  212 +-
 superset/translations/ru/LC_MESSAGES/messages.po   | 3204 ++++---
 superset/translations/utils.py                     |    2 +-
 superset/utils/celery.py                           |    1 +
 superset/utils/core.py                             |   17 +-
 .../utils/dashboard_filter_scopes_converter.py     |    2 +-
 superset/utils/date_parser.py                      |    8 +-
 superset/utils/decorators.py                       |   12 +-
 superset/{views/chart => utils}/filters.py         |   33 +-
 superset/utils/machine_auth.py                     |    2 +-
 superset/utils/memoized.py                         |   81 -
 .../utils/pandas_postprocessing/contribution.py    |    2 +-
 superset/utils/pandas_postprocessing/pivot.py      |    7 +-
 superset/utils/pandas_postprocessing/prophet.py    |    2 +-
 superset/utils/screenshots.py                      |   20 +-
 superset/utils/urls.py                             |    4 +-
 superset/utils/webdriver.py                        |   78 +-
 superset/views/all_entities.py                     |   71 +
 superset/views/base.py                             |   44 +-
 superset/views/base_api.py                         |   32 +-
 superset/views/base_schemas.py                     |    2 +-
 superset/views/chart/filters.py                    |    9 +-
 superset/views/chart/mixin.py                      |    1 -
 superset/views/core.py                             |  106 +-
 superset/views/dashboard/mixin.py                  |    1 -
 superset/views/dashboard/views.py                  |    8 -
 superset/views/database/views.py                   |   24 +-
 superset/views/tags.py                             |  248 +-
 superset/viz.py                                    |   44 +-
 tests/common/logger_utils.py                       |    1 -
 .../annotation_layers/fixtures.py                  |    2 +-
 tests/integration_tests/base_tests.py              |    8 +
 tests/integration_tests/charts/api_tests.py        |  142 +-
 tests/integration_tests/charts/commands_tests.py   |   62 +-
 tests/integration_tests/charts/data/api_tests.py   |   37 +-
 tests/integration_tests/cli_tests.py               |   23 +-
 tests/integration_tests/conftest.py                |    2 +-
 tests/integration_tests/core_tests.py              |    2 +-
 tests/integration_tests/csv_upload_tests.py        |    4 +-
 tests/integration_tests/dashboards/api_tests.py    |  165 +
 .../integration_tests/dashboards/commands_tests.py |   12 +-
 .../dashboards/permalink/api_tests.py              |    3 +-
 tests/integration_tests/databases/api_tests.py     |  495 +-
 .../integration_tests/databases/commands_tests.py  |  309 +-
 tests/integration_tests/datasets/api_tests.py      |  127 +-
 tests/integration_tests/datasets/commands_tests.py |   68 +-
 .../db_engine_specs/base_engine_spec_tests.py      |    5 +-
 .../db_engine_specs/bigquery_tests.py              |    1 +
 .../db_engine_specs/postgres_tests.py              |   18 +
 tests/integration_tests/event_logger_tests.py      |    6 +-
 .../integration_tests/fixtures/energy_dashboard.py |    1 -
 tests/integration_tests/fixtures/importexport.py   |  107 +
 tests/integration_tests/fixtures/users.py          |   48 +
 tests/integration_tests/queries/api_tests.py       |    6 +-
 .../queries/saved_queries/api_tests.py             |    2 +-
 .../queries/saved_queries/commands_tests.py        |   10 +-
 tests/integration_tests/reports/alert_tests.py     |    2 -
 tests/integration_tests/reports/api_tests.py       |    4 -
 tests/integration_tests/reports/commands_tests.py  |   49 +-
 tests/integration_tests/reports/scheduler_tests.py |    2 -
 .../security/migrate_roles_tests.py                |    8 +-
 .../security/row_level_security_tests.py           |    1 -
 tests/integration_tests/security_tests.py          |   24 +-
 tests/integration_tests/sql_lab/api_tests.py       |  106 +-
 tests/integration_tests/sql_lab/commands_tests.py  |  315 +-
 tests/integration_tests/sqllab_tests.py            |   38 +
 tests/integration_tests/tagging_tests.py           |   12 -
 .../integration_tests/tags}/__init__.py            |    0
 tests/integration_tests/tags/api_tests.py          |  377 +
 tests/integration_tests/tags/commands_tests.py     |  175 +
 tests/integration_tests/tags/dao_tests.py          |  299 +
 tests/integration_tests/thumbnails_tests.py        |    1 -
 tests/integration_tests/utils/decorators_tests.py  |   61 -
 tests/integration_tests/utils_tests.py             |    1 +
 .../charts/commands/importers/v1/import_test.py    |   45 +-
 tests/unit_tests/charts/dao/dao_tests.py           |   33 +
 .../commands/importers/v1/assets_test.py           |   16 +-
 .../commands/importers/v1/import_test.py           |   46 +-
 tests/unit_tests/dashboards/dao_tests.py           |   79 +
 tests/unit_tests/databases/api_test.py             |    4 +
 .../databases/commands/importers/v1/import_test.py |   44 +-
 .../datasets/commands/importers/v1/import_test.py  |  162 +-
 tests/unit_tests/datasets/dao/dao_tests.py         |   30 +
 .../unit_tests/db_engine_specs/test_clickhouse.py  |  162 +-
 tests/unit_tests/db_engine_specs/test_drill.py     |   16 +
 tests/unit_tests/db_engine_specs/test_hive.py      |   15 +
 tests/unit_tests/db_engine_specs/test_mssql.py     |    4 +-
 tests/unit_tests/db_engine_specs/test_mysql.py     |   34 +
 tests/unit_tests/db_engine_specs/test_postgres.py  |   66 +
 tests/unit_tests/db_engine_specs/test_presto.py    |   24 +
 tests/unit_tests/db_engine_specs/test_snowflake.py |   32 +
 tests/unit_tests/explore/utils_test.py             |   19 +-
 tests/unit_tests/fixtures/assets_configs.py        |    2 -
 tests/unit_tests/importexport/api_test.py          |    8 +-
 tests/unit_tests/jinja_context_test.py             |   41 +-
 tests/unit_tests/memoized_tests.py                 |   96 -
 tests/unit_tests/models/core_test.py               |    4 +-
 .../pandas_postprocessing/test_flatten.py          |    8 +-
 .../unit_tests/queries}/__init__.py                |    0
 tests/unit_tests/queries/query_object_test.py      |  345 +
 .../unit_tests/security}/__init__.py               |    0
 tests/unit_tests/security/manager_test.py          |   90 +
 tests/unit_tests/utils/test_decorators.py          |   87 +
 tests/unit_tests/utils/urls_tests.py               |    5 +
 yarn.lock                                          |    2 -
 823 files changed, 42462 insertions(+), 13972 deletions(-)
 create mode 100644 docs/docs/installation/setup-ssh-tunneling.mdx
 delete mode 100644 pyproject.toml
 copy superset-frontend/packages/superset-ui-chart-controls/src/operators/utils/{isDerivedSeries.ts => extractExtraMetrics.ts} (59%)
 create mode 100644 superset-frontend/packages/superset-ui-chart-controls/test/operators/utils/extractExtraMetrics.test.ts
 copy superset-frontend/{src/hooks/useComponentDidUpdate => packages/superset-ui-core/src/hooks}/index.ts (82%)
 copy superset-frontend/{ => packages/superset-ui-core}/src/hooks/useChangeEffect/index.ts (100%)
 rename superset-frontend/{ => packages/superset-ui-core}/src/hooks/useChangeEffect/useChangeEffect.test.ts (100%)
 rename superset-frontend/{ => packages/superset-ui-core}/src/hooks/useChangeEffect/useChangeEffect.ts (100%)
 copy superset-frontend/{ => packages/superset-ui-core}/src/hooks/useComponentDidMount/index.ts (100%)
 copy superset-frontend/{ => packages/superset-ui-core}/src/hooks/useComponentDidMount/useComponentDidMount.test.ts (100%)
 rename superset-frontend/{ => packages/superset-ui-core}/src/hooks/useComponentDidMount/useComponentDidMount.ts (100%)
 rename superset-frontend/{ => packages/superset-ui-core}/src/hooks/useComponentDidUpdate/index.ts (100%)
 rename superset-frontend/{ => packages/superset-ui-core}/src/hooks/useComponentDidUpdate/useComponentDidUpdate.test.ts (100%)
 rename superset-frontend/{ => packages/superset-ui-core}/src/hooks/useComponentDidUpdate/useComponentDidUpdate.ts (100%)
 copy superset-frontend/{src/hooks/useChangeEffect => packages/superset-ui-core/src/hooks/useElementOnScreen}/index.ts (95%)
 create mode 100644 superset-frontend/packages/superset-ui-core/src/hooks/useElementOnScreen/useElementOnScreen.test.ts
 rename superset-frontend/{src/hooks/useElementOnScreen/index.ts => packages/superset-ui-core/src/hooks/useElementOnScreen/useElementOnScreen.ts} (100%)
 rename superset-frontend/{ => packages/superset-ui-core}/src/hooks/usePrevious/index.ts (100%)
 rename superset-frontend/{ => packages/superset-ui-core}/src/hooks/usePrevious/usePrevious.test.ts (100%)
 rename superset-frontend/{ => packages/superset-ui-core}/src/hooks/usePrevious/usePrevious.ts (100%)
 rename superset-frontend/{ => packages/superset-ui-core}/src/hooks/useTruncation/index.ts (100%)
 create mode 100644 superset-frontend/packages/superset-ui-core/src/hooks/useTruncation/useCSSTextTruncation.test.tsx
 rename superset-frontend/{ => packages/superset-ui-core}/src/hooks/useTruncation/useCSSTextTruncation.ts (100%)
 create mode 100644 superset-frontend/packages/superset-ui-core/src/hooks/useTruncation/useChildElementTruncation.test.ts
 rename superset-frontend/{ => packages/superset-ui-core}/src/hooks/useTruncation/useChildElementTruncation.ts (100%)
 rename superset-frontend/{src/dashboard/components/CrossFilterScopingModal/utils/index.ts => packages/superset-ui-core/src/time-format/utils/normalizeTimestamp.ts} (75%)
 rename superset-frontend/{src/hooks/useComponentDidMount/index.ts => packages/superset-ui-core/src/utils/getSelectedText.ts} (91%)
 copy superset-frontend/{src/views/routes.test.tsx => packages/superset-ui-core/test/components/SafeMarkdown.test.ts} (54%)
 create mode 100644 superset-frontend/packages/superset-ui-core/test/time-format/utils/normalizeTimestamp.test.ts
 rename superset-frontend/{src/hooks/useComponentDidMount/useComponentDidMount.test.ts => packages/superset-ui-core/test/utils/getSelectedText.test.ts} (60%)
 create mode 100644 superset-frontend/plugins/legacy-plugin-chart-country-map/src/countries/srilanka.geojson
 create mode 100644 superset-frontend/spec/fixtures/mockCharts.ts
 copy superset-frontend/src/components/{Table/cell-renderers/NullCell/index.tsx => Chart/DisabledMenuItemTooltip.tsx} (56%)
 create mode 100644 superset-frontend/src/components/Chart/DrillBy/DrillByMenuItems.test.tsx
 create mode 100644 superset-frontend/src/components/Chart/DrillBy/DrillByMenuItems.tsx
 create mode 100644 superset-frontend/src/components/Chart/DrillBy/DrillByModal.test.tsx
 create mode 100644 superset-frontend/src/components/Chart/DrillBy/DrillByModal.tsx
 create mode 100644 superset-frontend/src/components/Chart/MenuItemWithTruncation.tsx
 rename superset-frontend/src/{dashboard/components/CrossFilterScopingModal/utils/utils.test.ts => components/Tags/Tag.test.tsx} (66%)
 create mode 100644 superset-frontend/src/components/Tags/Tag.tsx
 copy superset-frontend/src/{views/routes.test.tsx => components/Tags/TagsList.stories.tsx} (55%)
 create mode 100644 superset-frontend/src/components/Tags/TagsList.test.tsx
 create mode 100644 superset-frontend/src/components/Tags/TagsList.tsx
 rename superset-frontend/src/{hooks/useChangeEffect/index.ts => components/Tags/index.tsx} (90%)
 create mode 100644 superset-frontend/src/components/Tags/utils.tsx
 create mode 100644 superset-frontend/src/components/TruncatedList/index.tsx
 delete mode 100644 superset-frontend/src/dashboard/components/CrossFilterScopingModal/CrossFilterScopingForm/CrossFilterScopingForm.test.tsx
 delete mode 100644 superset-frontend/src/dashboard/components/CrossFilterScopingModal/CrossFilterScopingForm/index.tsx
 delete mode 100644 superset-frontend/src/dashboard/components/CrossFilterScopingModal/CrossFilterScopingModal.tsx
 create mode 100644 superset-frontend/src/dashboard/components/nativeFilters/FilterBar/CrossFilters/CrossFilter.test.tsx
 create mode 100644 superset-frontend/src/dashboard/components/nativeFilters/FilterBar/CrossFilters/CrossFilter.tsx
 create mode 100644 superset-frontend/src/dashboard/components/nativeFilters/FilterBar/CrossFilters/CrossFilterTag.test.tsx
 create mode 100644 superset-frontend/src/dashboard/components/nativeFilters/FilterBar/CrossFilters/CrossFilterTag.tsx
 copy superset-frontend/src/{components/ErrorBoundary/ErrorBoundary.test.tsx => dashboard/components/nativeFilters/FilterBar/CrossFilters/CrossFilterTitle.test.tsx} (52%)
 create mode 100644 superset-frontend/src/dashboard/components/nativeFilters/FilterBar/CrossFilters/CrossFilterTitle.tsx
 create mode 100644 superset-frontend/src/dashboard/components/nativeFilters/FilterBar/CrossFilters/Vertical.tsx
 create mode 100644 superset-frontend/src/dashboard/components/nativeFilters/FilterBar/CrossFilters/VerticalCollapse.test.tsx
 create mode 100644 superset-frontend/src/dashboard/components/nativeFilters/FilterBar/CrossFilters/VerticalCollapse.tsx
 create mode 100644 superset-frontend/src/dashboard/components/nativeFilters/FilterBar/CrossFilters/selectors.ts
 copy superset-frontend/src/dashboard/components/{CrossFilterScopingModal/types.ts => nativeFilters/FilterBar/CrossFilters/styles.ts} (80%)
 copy superset-frontend/src/{components/Table/cell-renderers/NullCell/index.tsx => dashboard/components/nativeFilters/FilterBar/useFilterOutlined.ts} (58%)
 copy superset-frontend/src/dashboard/components/{CrossFilterScopingModal/types.ts => nativeFilters/FiltersConfigModal/FiltersConfigForm/constants.ts} (60%)
 rename superset-frontend/src/dashboard/components/{FiltersBadge => nativeFilters}/selectors.ts (70%)
 create mode 100644 superset-frontend/src/dashboard/util/crossFilters.test.ts
 delete mode 100644 superset-frontend/src/dashboard/util/filterboxMigrationHelper.test.ts
 delete mode 100644 superset-frontend/src/dashboard/util/filterboxMigrationHelper.ts
 copy superset-frontend/src/{dashboard/components/CrossFilterScopingModal => explore/components/controls/FilterControl}/types.ts (85%)
 create mode 100644 superset-frontend/src/explore/components/controls/FilterControl/utils/translateToSQL.ts
 create mode 100644 superset-frontend/src/features/datasets/metadataBar/DatasetMetadataBar.stories.tsx
 create mode 100644 superset-frontend/src/features/datasets/metadataBar/useDatasetMetadataBar.test.tsx
 create mode 100644 superset-frontend/src/features/datasets/metadataBar/useDatasetMetadataBar.tsx
 create mode 100644 superset-frontend/src/hooks/apiResources/schemas.test.ts
 copy superset-frontend/src/hooks/apiResources/{tables.ts => schemas.ts} (55%)
 rename superset-frontend/src/{views/CRUD/alert/AlertList.test.jsx => pages/AlertReportList/AlertReportList.test.jsx} (98%)
 rename superset-frontend/src/{views/CRUD/alert/AlertList.tsx => pages/AlertReportList/index.tsx} (99%)
 create mode 100644 superset-frontend/src/pages/AllEntities/index.tsx
 rename superset-frontend/src/{views/CRUD/annotationlayers/AnnotationLayersList.test.jsx => pages/AnnotationLayerList/AnnotationLayerList.test.jsx} (98%)
 rename superset-frontend/src/{views/CRUD/annotationlayers/AnnotationLayersList.tsx => pages/AnnotationLayerList/index.tsx} (98%)
 rename superset-frontend/src/{views/CRUD/annotation => pages/AnnotationList}/AnnotationList.test.jsx (98%)
 rename superset-frontend/src/{views/CRUD/annotation/AnnotationList.tsx => pages/AnnotationList/index.tsx} (98%)
 rename superset-frontend/src/{explore/ExplorePage.tsx => pages/Chart/index.tsx} (89%)
 rename superset-frontend/src/{views/CRUD/csstemplates/CssTemplatesList.test.jsx => pages/CssTemplateList/CssTemplateList.test.jsx} (98%)
 rename superset-frontend/src/{views/CRUD/csstemplates/CssTemplatesList.tsx => pages/CssTemplateList/index.tsx} (98%)
 rename superset-frontend/src/{dashboard/containers/DashboardRoute.tsx => pages/Dashboard/index.tsx} (93%)
 rename superset-frontend/src/{views/CRUD/dashboard => pages/DashboardList}/DashboardList.test.jsx (99%)
 rename superset-frontend/src/{views/CRUD/dashboard/DashboardList.tsx => pages/DashboardList/index.tsx} (86%)
 rename superset-frontend/src/{views/CRUD/data/database => pages/DatabaseList}/DatabaseList.test.jsx (93%)
 rename superset-frontend/src/{views/CRUD/data/database/DatabaseList.tsx => pages/DatabaseList/index.tsx} (98%)
 copy superset-frontend/src/{views/CRUD/data/dataset/AddDataset/AddDataset.test.tsx => pages/DatasetCreation/DatasetCreation.test.tsx} (94%)
 rename superset-frontend/src/{views/CRUD/data/dataset/AddDataset => pages/DatasetCreation}/index.tsx (63%)
 rename superset-frontend/src/{views/CRUD/data/dataset/DatasetList.test.jsx => pages/DatasetList/DatasetList.test.tsx} (97%)
 rename superset-frontend/src/{views/CRUD/data/dataset/DatasetList.tsx => pages/DatasetList/index.tsx} (96%)
 rename superset-frontend/src/{views/CRUD/alert/ExecutionLog.test.jsx => pages/ExecutionLogList/ExecutionLogList.test.jsx} (98%)
 rename superset-frontend/src/{views/CRUD/alert/ExecutionLog.tsx => pages/ExecutionLogList/index.tsx} (98%)
 rename superset-frontend/src/{views/CRUD/welcome/Welcome.test.tsx => pages/Home/Home.test.tsx} (99%)
 rename superset-frontend/src/{views/CRUD/welcome/Welcome.tsx => pages/Home/index.tsx} (97%)
 rename superset-frontend/src/{views/CRUD/data/query/QueryList.test.tsx => pages/QueryHistoryList/QueryHistoryList.test.tsx} (98%)
 rename superset-frontend/src/{views/CRUD/data/query/QueryList.tsx => pages/QueryHistoryList/index.tsx} (99%)
 rename superset-frontend/src/{views/CRUD/data/savedquery => pages/SavedQueryList}/SavedQueryList.test.jsx (99%)
 rename superset-frontend/src/{views/CRUD/data/savedquery/SavedQueryList.tsx => pages/SavedQueryList/index.tsx} (91%)
 create mode 100644 superset-frontend/src/pages/Tags/index.tsx
 rename superset-frontend/src/setup/{setupDasboardComponents.ts => setupDashboardComponents.ts} (100%)
 create mode 100644 superset-frontend/src/tags.ts
 copy superset-frontend/src/{dashboard/components/CrossFilterScopingModal/types.ts => types/TagType.ts} (72%)
 copy superset-frontend/src/{dashboard/components/CrossFilterScopingModal/types.ts => types/TaggedObject.ts} (84%)
 rename superset-frontend/src/{dashboard/components/CrossFilterScopingModal/types.ts => utils/cachedSupersetGet.ts} (74%)
 create mode 100644 superset-frontend/src/views/CRUD/allentities/AllEntitiesTable.tsx
 rename superset-frontend/src/{pages/ChartList => views/CRUD/chart}/ChartCard.tsx (100%)
 create mode 100644 superset-frontend/src/views/CRUD/data/database/DatabaseModal/SSHTunnelSwitch.tsx
 rename superset-frontend/src/views/CRUD/data/dataset/AddDataset/{AddDataset.test.tsx => EditDataset/EditDataset.test.tsx} (55%)
 create mode 100644 superset-frontend/src/views/CRUD/data/dataset/AddDataset/EditDataset/UsageTab/UsageTab.test.tsx
 create mode 100644 superset-frontend/src/views/CRUD/data/dataset/AddDataset/EditDataset/UsageTab/index.tsx
 create mode 100644 superset-frontend/src/views/CRUD/data/dataset/AddDataset/EditDataset/index.tsx
 create mode 100644 superset-frontend/src/views/CRUD/tags/TagCard.tsx
 rename superset/common/{not_authrized_object.py => not_authorized_object.py} (100%)
 delete mode 100644 superset/db_engines/hive.py
 copy superset/migrations/versions/{2021-07-27_08-25_31b2a1039d4a_drop_tables_constraint.py => 2023-02-28_14-46_c0a3ea245b61_remove_show_native_filters.py} (50%)
 create mode 100644 superset/migrations/versions/2023-03-05_10-06_d0ac08bb5b83_invert_horizontal_bar_chart_order.py
 create mode 100644 superset/migrations/versions/2023-03-17_13-24_b5ea9d343307_bar_chart_stack_options.py
 copy superset/{db_engines => sqllab/commands}/__init__.py (100%)
 create mode 100644 superset/sqllab/commands/estimate.py
 create mode 100644 superset/sqllab/commands/export.py
 create mode 100644 superset/tags/api.py
 copy superset/{advanced_data_type => tags/commands}/__init__.py (100%)
 create mode 100644 superset/tags/commands/create.py
 create mode 100644 superset/tags/commands/delete.py
 create mode 100644 superset/tags/commands/exceptions.py
 copy superset/{db_engines/__init__.py => tags/commands/utils.py} (68%)
 create mode 100644 superset/tags/dao.py
 rename superset/{db_engines/__init__.py => tags/exceptions.py} (68%)
 create mode 100644 superset/tags/schemas.py
 copy superset/{views/chart => utils}/filters.py (52%)
 delete mode 100644 superset/utils/memoized.py
 create mode 100644 superset/views/all_entities.py
 create mode 100644 tests/integration_tests/fixtures/users.py
 copy {superset/advanced_data_type => tests/integration_tests/tags}/__init__.py (100%)
 create mode 100644 tests/integration_tests/tags/api_tests.py
 create mode 100644 tests/integration_tests/tags/commands_tests.py
 create mode 100644 tests/integration_tests/tags/dao_tests.py
 delete mode 100644 tests/integration_tests/utils/decorators_tests.py
 create mode 100644 tests/unit_tests/dashboards/dao_tests.py
 delete mode 100644 tests/unit_tests/memoized_tests.py
 copy {superset/advanced_data_type => tests/unit_tests/queries}/__init__.py (100%)
 create mode 100644 tests/unit_tests/queries/query_object_test.py
 copy {superset/advanced_data_type => tests/unit_tests/security}/__init__.py (100%)
 create mode 100644 tests/unit_tests/security/manager_test.py
 create mode 100644 tests/unit_tests/utils/test_decorators.py
 delete mode 100644 yarn.lock