You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@superset.apache.org by vi...@apache.org on 2021/11/18 12:14:54 UTC

[superset] branch gallery-image-update updated (16b0b7e -> 0813cfa)

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

villebro pushed a change to branch gallery-image-update
in repository https://gitbox.apache.org/repos/asf/superset.git.


    from 16b0b7e  chore: update gallery screenshot on readme
     add a8d5342  chore: add browser info to template (#16732)
     add f032cc2  fix shared query (#16753)
     add d375538  only fetch db function when db exists in sql lab (#16754)
     add 493e804  chore: log URI before downloading data on import (#16762)
     add 48a61ba  fix: handle CTEs with comments on is_select (#16769)
     add a743526  fix: typo in log (#16767)
     add 1d5100d  fix(dataset): retain is_dttm if set on metadata sync (#16776)
     add 596e1cd  refactor: Changes the DatabaseSelector and TableSelector to use the new Select component (#16483)
     add b6d78bf  refactor: Changes the list views to use the new Select component (#16393)
     add 9b17e86  chore: Moves messageToasts to the components folder (#14431)
     add 486e0d4  chore: Upgrade Webpack to v5 (#16701)
     add 99d15b2  chore: Moves the images folder to the assets folder (#14429)
     add 77ae2e1  allow users to set port for cypress runs (#16533)
     add 5cb49d2  feat: add support for JOIN in Druid (#16770)
     add 4af5ae0  fix: encode rison characters when searching (#16768)
     add 63aadd3  test: RTL overhaul - hackathon (#16626)
     add a198dbb  feat: add certifiedby & certification details fields to the edit dataset columns fields (#16454)
     add 93fa478  Fix OpenAPI definition (#16672)
     add 997320a  chore: Update documentation on schema changes (#16784)
     add 84f7614  feat(filter-set): Add filterset resource (#14015)
     add 4086bed  chore: bump superset to 0.18.6 (#16807)
     add 6921d94  fix: show Import button only if has perms (#16763)
     add 76f0408  feat: handle temporal columns in group bys (#16795)
     add c933250  chore: Remove immutable.js (#16823)
     add 0d064f4  Be able to lookup driver by engine alias (#16800)
     add 1ff682f  fix: Updates the selected values when changing the native filter type, column or default value (#16833)
     add 55e2872  Fix 500 tab title (#16836)
     add 04f7eca  display tooltip when disabled (#16837)
     add a341319  chore: upgrade to Node 16 (#16809)
     add c520eb7  refactor: sqllab: move sqllab ralated enumns and utils to more logical place (#16843)
     add ef95458  Exit init script immediately on error (#16758)
     add 42fa548  fix(native-filters): filter indicator stale state (#16831)
     add 0a8d0c6  fix(native-filters): emitted filter label format (#16828)
     add 100760c  fix(gallery): Hide the bottom info section when no chart is being selected (#16840)
     add bbe7aa3  chore: db migrate timeseries_limit_metric to legacy_order_by in pivottable2 (#16849)
     add f703c12  chore: bump superset-ui to 0.18.8 (#16850)
     add 0f16177  fix(native-filters): ignore unset filter box time range (#16854)
     add 8ad03c4  chore: Select component refactoring - FilterControl - Iteration 5 (#15777)
     add 913df18  chore: Select component refactoring - MetricControl - Iteration 5 (#16423)
     add e40ff3a  chore: Select component refactoring - DndColumnSelectControl - Iteration 5 (#16440)
     add ab9f8cb  chore: Select component refactoring - PropertiesModal - Iteration 5 (#16445)
     add 271ec6e  chore: Select component refactoring - SaveModal - Iteration 5 (#16446)
     add 667b88c  chore: Select component refactoring - TimeSeriesColumnControl - Iteration 5 (#16442)
     add d3f6145  fix(dashboard): Fill form with the latest values when undo in native filters (#16851)
     add 6daf37b  move repro steps to front (#16819)
     add 27a40d2  chore: Upgrades Storybook to version 6.3.8 to make it compatible with Webpack 5 (#16857)
     add 9ac55d9  fix(build): enable hot reloading of linked packages (#16867)
     add b35645c  feat: added extraEnvRaw variable to load values from other secrets (#16219)
     add aa74721  feat: Add Private Google Sheets to dynamic form (#16628)
     add 0ea83c5  feat: add Databricks ODBC engine spec (#16862)
     add e3b14fe  fix: Overhead when changing the filter name (#16877)
     add 3d8cc15  fix: Clear native filters state (#16893)
     add 3f784cc  refactor: sql lab: handling command exceptions  (#16852)
     add 3272d1c  fix(sqla): allow series limit without subquery support (#16896)
     add 4da4fe4  fix: Removing parent filter causes incorrect state of child filter (#16876)
     add 904c506  fixing db connection (#16899)
     add 331de0c  fix: Fix Uniqueness check before update for Sqllab Overwrites (#16859)
     add 77e7d16  ci: check npm lockfile version (#16916)
     add 94282b7  fix: time comparison can't guarantee the accuracy (#16895)
     add 05632b9  chore: Moves the stylesheets folder to the assets folder (#16880)
     add ae26967  fix: Disable lazy loading for the Database selector (#16908)
     add 3d520f2  fix: Inclusive sign in time range display (#16906)
     add 1a38ec6  chore: Adds the drag icon (#16919)
     add c8db435  fix(Explore): Clear filter value when changing columns (#16871)
     add 7f330c9  Verify undefined operatorId (#16923)
     add c5d23fb  fix: Unable to add dataset (#16925)
     add 87290dd  fix: Native filters cyclic dependency (#16921)
     add 87baac7  fix: RBAC hide right menu (#16902)
     add 90f711f  chore: Moves spec files to the src folder - iteration 5 (#16927)
     add a07c9d5  fix(dashboard): recursive parent on dashboard components (#16933)
     add 420eff4  feat: add Firebolt DB engine spec (#16903)
     add 3f6a24f  chore: add certified columns to top of list (#16910)
     add 6225c9a  fix: replace absolute difference with difference in legacy charts (#16931)
     add f0060a6  Native_filter on by default (#16874)
     add 0d0c759  refactor: sql lab command: separate concerns into different modules (#16917)
     add c05c6b3  fix missing series validation not raised an exception (#16946)
     add ace9c78  fix(explore): Ensuring parameters key is included (#16949)
     add 387ac2b  fix: replace absolute difference with difference in compareOperator (#16930)
     add 3dee22a  fix(examples): incorrect covid row component id (#16953)
     add 6d1fbb0  fix: don't log invalid redirect URL send by user (#16955)
     add 028f6c0  chore: Moves spec files to the src folder - iteration 6 (#16935)
     add 1ab36c9  chore: Moves spec files to the src folder - iteration 7 (#16943)
     add 3f0756f  chore: Select component refactoring - SelectControl - Iteration 5 (#16510)
     add 739d841  fix(build): make npm linking work pt. 2 (#16958)
     add 50ad84b  chore: refactor header menu to show in header grid component (#16689)
     add 85e3cec  chore:upgrade superset-ui dependencies (#16965)
     add 5866d5e  fix: Revert "fix: RBAC hide right menu (#16902)" (#16968)
     add 9a8911f  test: update required tests to python 3.8 (#16973)
     add 82601ab  feat: upgrade docker image to py38 and add support for py39 (#16889)
     add 93ebe3d  fix: handle mixed time-series error (#16928)
     add 2757b93  fix: Use production build config for cypress tests (#16978)
     add 1cd0124  chore: upgrade babel (#16885)
     add 0b7704a  remove duplicate line (#16838)
     add c577191  fix: When click on "View all" from favorite tab, get error (#16988)
     add 191033c  chore: Translates the favorite filter param (#16990)
     add c993c58  fix(BigQuery): explicitly quote columns in select_star (#16822)
     add 40861b3  fix: check if owners are actually being updated in `PUT /datasets/<id>` (#16941)
     add 90cfa7f  fix: FilterableTable result div width (#16912)
     add cde4cdc  fix(sqllab): SqlJsonExecutionContext.query null pointer (#16997)
     add 66fbce9  chore: removing use of supersetTheme in favor of ThemeProvider (#17000)
     add ac50961  chore: no direct use of supersetTheme (or bad LESS vars) in SqlEditor (#16999)
     add 6dc00b3  fix: letter format of sort chart in dashboard edit (#17003)
     add fd84614  fix: rolling and cum operator on multiple series (#16945)
     add 5fc9970  chore improve response body (#16974)
     add a782a62  chore: Select component refactoring - SelectAsyncControl - Iteration 5 (#16609)
     add 6cdb324  chore: bump superset-ui 0.18.10 (#17009)
     add 45908ff  fix(dashboard): Race condition when setting activeTabs with nested tabs (#17007)
     add 66b0877  Strict undefined check SelectControl (#17008)
     add 5f73ca8  feat(linting): restrict direct use of supersetTheme in favor of ThemeProvider (#17001)
     add c471a85  fix: Unnecessary queries when changing filter values (#16994)
     add 9ef2861  Update CONTRIBUTING.md (#17016)
     add be21143  fix: Filtering db names while creating dataset is not working (#17023)
     add 50ad09b  removing paramProperties (#17024)
     add 03cdbac  fix: error alerts js crash (#17015)
     add ea70038  fix: error alerts again (#17026)
     add 9e980b6  ci: fix broken test skips (#17005)
     add 42efcdf  chore(Dashboard): Implement dedicated message for missing dataset (#16959)
     add a57ae35  fix: Verify when null value should be undefined in Select (#17013)
     add a6173f1  chore(Dashboard): Highlight errored filters on the left pane of the Native Filters form plus several enhancements (#16940)
     add e32a12f  bug fix (#17019)
     add bdbcfbc  fix: show onhover menu only in edit mode (#17034)
     add 2c8e06e  initial fix (#16998)
     add 7c1c89c  fix: Loading indicator of table and schema selectors (#17040)
     add 16a1df7  fix: clear modal state after adding dataset (#17044)
     add 14b7f6c  fix: Exclude SUPERSET_DEFAULT from the list of available color schemes (#17018)
     add f2d41dc  fix(other): column name in created content on profile page (#17029)
     add 83a783d  style: Update text for SLL Tooltip (#16993)
     add 153469d  fix: error alert levels again (#17027)
     add c734035  docs: add vscode linter instructions to CONTRIBUTING.md (#17045)
     add c2e1ab6  add logging on successful data uploads (#17065)
     add 5e85f48  chore(druid): Standardizing time grain transformations (#17050)
     add 11d52cb  Update druid.py (#17079)
     add 959fd76  fix: Owners selection in dataset edit UX (#17063)
     add b9ff85d  chore(engine): Translate fractional time grains—requires @superset-ui bump (#17078)
     add 40e9add  fix: accept headers on import (#17080)
     add 3ad7483  fix(dashboard): race condition between hydrating dashboard and set active tabs (#17084)
     add 8d54dee  build(deps): bump lodash from 4.17.19 to 4.17.21 in /docs (#14577)
     add 031f594  fix: prevent caching error pages (#17100)
     add d944503  fix: Bump FAB to 3.3.4 (#17113)
     add 83a2f83  chore: enable BQ tests (#17017)
     add 434b576  fix: escape bind-like strings in virtual table query (#17111)
     add 7a2e394  feat(config): Add none force-refresh option for auto refresh (#17039)
     add 635898a  fix(sqllab): Hover tooltip flashes in SQL Lab (#17068)
     add 732e589  test: Cypress 7.0.0 migration (#16911)
     add 5253193  fix: Update package-lock.json of superset-frontend and cypress-base (#17125)
     add c9c669d  fix for undefined userId (#17117)
     add 69604c3  chore: Include codeowners for the Select component (#17102)
     add eebc953  feat: Custom filters control (#17006)
     add e055e59  chore: remove redundant po2json dev dependency (#17129)
     add 98f6edd   upgrade to 18.3 (#17121)
     add 4a9107d  chore: upgrade highlight.js (#17067)
     add 9e6d5fc  feat(dashboard): Let users re-arrange native filters (#16154)
     add 40b88f0  feat: DBC UI Snowflake Form (#16856)
     add 37944e1  feat(Filter-sets): connect to api (#17055)
     add 57f869c  fix(explore): remove unnecessary parameters from the explore url (#17123)
     add 2ad9101  perf(native-filters): Decrease number of unnecessary rerenders in native filters (#17115)
     add ae4ced8  fix: update values for default timezone selector (#17124)
     add 565ee23  chore(druid): Explicitly cast col to TIMESTAMP (#17101)
     add d7834f1  fix(filter-indicator): show filters handled by jinja as applied (#17140)
     add 96f4421  fix: sql lab crash caused by invalid template (#17133)
     add dacf797  remove title from cancel svg (#17147)
     add d38e686  Update druid.py (#17146)
     add 4cc095c  update ui packages to 18.14 (#17151)
     add 2062775  docs: add Symmetrics to users list (#17028)
     add e32acd2  chore: Moves the datasource components to the components folder (#17130)
     add f580f6b  fix(Explore): Undefined owners (#17167)
     add aa0f4d6  use typing_extension instead (#17174)
     add 029ed90  fix: preventing sql lab None limit value (#17155)
     add cd9e994  feat: Add prettier to pre-commit workflow (#17134)
     add 4c708af  fix: avoid filters containing null value (#17168)
     add e5a0342  chore(Dashboard): Disable save button in Native Filters when an error is present (#17037)
     add 860e481  fix(explore): timestamp format when copy datatable to clipboard (#17166)
     add 91199c3  Handle undefined (#17183)
     add 80a459f  feat: support disabling domain sharding with a query param (#17177)
     add 824e62b  fix: dropdown placement for cascading filters popover (#17046)
     add 35cbcc4  fix: auto refresh interval won't be updated (#17112)
     add 2ba046f  fix(sqla): convert prequery results to native python types (#17195)
     add bedb8f4  fix(bigquery): calculated column cannot orderby in BigQuery (#17196)
     add a63a01f  small changes to dashboard->explore code (#17145)
     add b5246b2  feat: Hide nav create with RBAC (#17157)
     add 31085e3  fix: CI is blocked by mypy checking (#17213)
     add 4f1d202  chore: use official isort in pre-commmit (#17215)
     add ef3afbd  refactor: Repeated boilerplate code between upload to database forms (#16756)
     add 55be249  fix: Order of Select items when unselecting (#17169)
     add 4c96ae7  chore: Breaks the dataViewCommon folder into TableCollection and Pagination (#17132)
     add 08aab3b  use full results as csv type (#17194)
     add ef01cbb  fix: reenabling terser plugin for webpack (#17205)
     add cf284ba  fix(native-filters): Fix update ownState (#17181)
     add 48fd3c1  chore: Add docs to the Select component props (#17171)
     add 3641093  allow owners to edit chart title (#17047)
     add 5f8f67e  Fix tools position (#17221)
     add dbf5225  chore: bump to superset-ui 0.18.15 (#17232)
     add dd71035  chore: Removes the ChartIcon component (#17216)
     add 792efef  Update setup.py (#17220)
     add b7e7ef2  Revert "fix: the calculated columns explicit type convert into date (#14813)" (#16950)
     add 743f4b6  Fix resetting does not clear form (#17217)
     add 4316fe6  fix(annotataion): handle required fields properly (#17234)
     add faf7c74  chore: bump superset-ui v0.18.16 (#17251)
     add 65f1644  feat(dashboard): Add description to the native filter (#17025)
     add 93f59e0  chore: remove supersetTheme with withTheme (#17069)
     add 5aaa333  feat: Make Jinja template applied in timestamp columns (#17237)
     add be6cca5  chore: bump deckgl 0.4.13 (#17266)
     add 37909aa  feat: add possibility to set ingress class name in Helm chart (#17252)
     add ce558e0  chore: bump superset-ui to 0.18.17 (#17270)
     add 9ef9adf  test: added some sanity test for native filter (#17231)
     add f0c0ef7  fix(cli): fail CLI script on failed import/export (#16976)
     add ca6a1ec  chore(doc): Update BigQuery Connection database connection UI into doc (#17191)
     add fa44325  fix(explore): Metrics disappearing after removing metric from dataset (#17201)
     add 8ee50de  Drop constraint (#17275)
     add 0a660a1  fix: Updated connection string for Firebolt (#17242)
     add 456efc0  fix(reports): Owners no longer showing undefined in reports (#17223)
     add b7bda70  fix: revert "feat(sqla): apply time grain to all temporal groupbys" (#17239)
     add d0bad96  fix: Allow users to update database in Dataset Edit Modal (#17265)
     add 5948a9f  fix(AlertReportModal): Text Area Change (#17176)
     add 8a27c67  change to 422 for stop query (#17292)
     add 79ed0ae  docs(UPDATING): Adding downtime for #16756 (#17293)
     add 6a63a21  chore: Bumping pyarrow / pandas (#17290)
     add abf24bb  test: add native filter part2 (#17283)
     add 1f2a7a4  fix: datatable crash when column is empty string (#17303)
     add a898883  Remove redundant parentheses from setup.py (#17284)
     add bea8502  run npm install to fix a bad package version (#17314)
     add 9515ba6  chore: bump superset-ui to 0.18.17 (#17310)
     add 5491a4d  fix(Explore): Remove changes to the properties on cancel (#17184)
     add a2a457b  fix(Dashboard): Sidepanel positioning (#17200)
     add 28b494c  chore: migrate HiddenControl component from jsx to tsx (#17315)
     add b3f0abf  fix numbering on getting started with kubernetes docs (#17306)
     add 7c6d6f4  Revert "fix(native-filters): Fix update ownState (#17181)" (#17311)
     add 9a4ab10  fix: remove variables from styled component (#17228)
     add 93bafa0  feat: improve logic in is_select (#17329)
     add 2199ef2  chore: Test cases for annotations and annotation layers incorrect creation through API (#17246)
     add 33bcf82  chore(websocket): bump dependencies (#17325)
     add 85a19a9  fix: Unable to select None for Alert's log retention (#17268)
     add 59a6502  fix: Color consistency (#17089)
     add cb34a22  fix: import should accept old keys (#17330)
     add 36f489e  fix: Normalize prequery result type (#17312)
     add 1c12167  fix: Revert default series sort-by metric and enforce non-xor with series limit (#17236)
     add 4e9f812  fix: removed redundant logger definition (#17289)
     add 03a2c6e  feat: apply d3NumberFormat to table reports (#17336)
     add 1fbce88  fix: set correct schema on config import (#16041)
     add 43f4ab8  fix: clear 'delete' confirmation (#17345)
     add e5fe186  fix: Show sqllab state when deleting databases (#17331)
     add d0085b1  Check validity of control item (#17349)
     add ab1fcf3  test: add native filter e2e test part3 (#17343)
     add fa51b32  fix(dashboard): Return columns and verbose_map for groupby values of Pivot Table v2 [ID-7] (#17287)
     add ee7c34b  Make color scheme optional (#17357)
     add f05a32e  fix: Remove horizontal scroll navigation from SQL Lab (#17356)
     add ee87b01  chore: bump superset-ui 0.18.20 (#17362)
     add ed4a628  fix: Database selector overflow (#17369)
     add b58f94ad chore: bump @typescript-eslint/eslint-plugin to 5.3.0 (#17367)
     add 33a8e87  fix: failed timezone selector UT (#17370)
     add 561d1ac  feat(metrics): Provide override for disabling ad-hoc metrics (#17202)
     add 6b1de57  fix: various typo fixes in MD files (#17309)
     add 7d22c9c  feat(native_filter_migration): add transition mode (#16992)
     add 333b137  feat: Drill ODBC/JDBC Impersonation feature (#17353)
     add 8f9cea8  docs: Reorder install instructions in CONTRIBUTING.md (#17387)
     add 1beda79  fix(sqllab): Query limit dropdown number breaks to separate lines (#17382)
     add a1961cf  fix: Users being able to update datasets across DBs (#17348)
     add 675ffaf  revert: Partial revert of 17236 (#17383)
     add 0d77f36  fix: handle TIME column serialization (#16869)
     add 6431225  docs: add mishmash io to users list (#17350)
     add 2544a4a  fix(sqllab): Bugfix for tracking url transformation (#17263)
     add 0257cf7  fix: title case in menus (#17135)
     add 45480f7  refactor move ChartDataResult enums to common (#17399)
     add 8756c90  fix(dashboard): don't show report modal for anonymous user (#17106)
     add 28944f5  refactor move chart_data_apis from ChartRestApi ChartDataRestApi in seperate module (#17400)
     add 7cdd58b  Fix missing dashboardId (#17380)
     add ffa55f7  chore: add dependencies for monorepo (#17403)
     add 9ce6b7d  refactor ChartDataCommand - separate loading query_context form cache into different module (#17405)
     add 0712be4  fix(Dashboard): Only apply changes when editing properties (#17392)
     add bcef8fa1 feature: Add quarter unit to datetrunc (#17416)
     add bfc813d  Update date_parser.py (#17426)
     add f10bc6d  fix: add fallback and validation for report and cron timezones (#17338)
     add e6ff25c  fix(chart): ensure samples data is displayed (#16900)
     add aa8040e  fix: allow POST chart/data request without CSRF token (#17429)
     add ad8a7c4  fix: avoid escaping bind-like params containing colons (#17419)
     add 0ca4312  fix: rename to schemas_allowed_for_file_upload in dbs.extra (#17323)
     add d8851c9  refactor(TestChartApi):  move chart data api tests into TestChartDataApi (#17407)
     add 5d3e1b5  refactor: ChartDataCommand into two separate commands (#17425)
     add e2a429b  feat(explore): adhoc column expressions [ID-3] (#17379)
     add 7f4c240  chore: bump superset-ui 0.18.25 (#17438)
     add 9741eaa  Fix 'DataFrame' object has no attribute 'ix' (#12092)
     add 71e3fa1  use full resultType with csv download on chart in dashboard (#17431)
     add eb029ab  fix(sql lab): NULL styling in grid cell (#17385)
     add 9f1bf1c  fix: do not show migration toast if user not enable dashboard filter components (#17440)
     add 3ee9e11  feat: add a config to enable retina quality images in screenshots (#17409)
     add 211b32a  fix(mssql): week time grain should respect datefirst setting (#10811)
     add c829614  chore(deps): bump hosted-git-info from 2.8.8 to 2.8.9 in /docs (#14576)
     add c2d8b0e  chore: Notify user of custom label colors and related Dashboard color scheme (#17422)
     add 96bdcc3  chore: bumping react syntax highlighter and thusly prismjs (#17439)
     add 1e2c834  test: add native filter default value e2e (#17398)
     add 34d7f0a  chore: Ignore docs directory for dependabot (#17451)
     add 9070b6b  refactor(monorepo): stage 1 (#17427)
     add 9cfce64  fix(docker): add ecpg to docker image (#16566)
     add c54027a  fix(views/core): iteration over None type (#14305)
     add 3f2129b  refactor: chartDataCommand - remove the responsibly of creating query context from command (#17461)
     add 56d742f  chore(fr-translation): update whole French translation (based on 1.3.0 release) (#16868)
     add 0813cfa  Merge branch 'master' into gallery-image-update

No new revisions were added by this update.

Summary of changes:
 .asf.yaml                                          |     10 +-
 .github/CODEOWNERS                                 |      3 +
 .github/ISSUE_TEMPLATE/bug_report.md               |     14 +-
 .github/dependabot.yml                             |      6 +
 .github/workflows/bashlib.sh                       |      6 +-
 .github/workflows/superset-e2e.yml                 |     24 +-
 .github/workflows/superset-frontend.yml            |      7 +
 .github/workflows/superset-helm-lint.yml           |      2 +-
 .../workflows/superset-python-integrationtest.yml  |      6 +-
 .github/workflows/superset-python-misc.yml         |      7 +-
 .github/workflows/superset-python-unittest.yml     |      2 +-
 .github/workflows/superset-translations.yml        |      6 +-
 .pre-commit-config.yaml                            |     14 +-
 .rat-excludes                                      |     13 +
 CONTRIBUTING.md                                    |     64 +-
 Dockerfile                                         |      9 +-
 Makefile                                           |     16 +-
 README.md                                          |     58 +-
 RELEASING/Dockerfile.from_local_tarball            |      2 +-
 RELEASING/Dockerfile.from_svn_tarball              |      2 +-
 RELEASING/Dockerfile.make_docs                     |      2 +-
 RELEASING/Dockerfile.make_tarball                  |      2 +-
 RELEASING/README.md                                |      2 +-
 RESOURCES/INTHEWILD.md                             |      4 +
 UPDATING.md                                        |     84 +-
 docker-compose.yml                                 |      2 +-
 docs/package-lock.json                             |     67 +-
 .../docs/Connecting to Databases/databricks.mdx    |     68 +
 .../docs/Connecting to Databases/firebolt.mdx      |     28 +
 .../Connecting to Databases/google-bigquery.mdx    |     62 +-
 .../pages/docs/Connecting to Databases/index.mdx   |      1 +
 .../pages/docs/frequently-asked-questions-page.mdx |     14 +-
 .../pages/docs/installation/installing_scratch.mdx |      2 +-
 docs/src/pages/docs/installation/kubernetes.mdx    |     10 +-
 docs/src/resources/openapi.json                    |     84 +-
 helm/superset/Chart.yaml                           |      2 +-
 helm/superset/templates/deployment-beat.yaml       |      5 +-
 helm/superset/templates/deployment-worker.yaml     |      5 +-
 helm/superset/templates/deployment.yaml            |      7 +-
 helm/superset/templates/ingress.yaml               |      3 +
 helm/superset/templates/init-job.yaml              |      5 +-
 helm/superset/values.yaml                          |     19 +-
 requirements/base.txt                              |     10 +-
 requirements/development.in                        |      6 +-
 requirements/development.txt                       |      8 +-
 requirements/testing.in                            |      5 +
 requirements/testing.txt                           |     90 +-
 .../ci_check_npm_lock_version.sh                   |     22 +-
 setup.cfg                                          |      2 +-
 setup.py                                           |     14 +-
 superset-frontend/.eslintignore                    |      4 +-
 superset-frontend/.eslintrc.js                     |     66 +-
 superset-frontend/.storybook/main.js               |      6 +-
 superset-frontend/.storybook/preview.jsx           |     19 +-
 superset-frontend/.storybook/storybook.css         |      2 +-
 superset-frontend/babel.config.js                  |      2 +-
 superset-frontend/cypress-base/cypress.json        |      4 +-
 .../cypress/integration/chart_list/filter.test.ts  |     88 +-
 .../cypress/integration/dashboard/controls.test.ts |      2 +-
 .../integration/dashboard/dashboard.helper.ts      |      7 +
 .../integration/dashboard/edit_properties.test.ts  |     25 +-
 .../cypress/integration/dashboard/filter.test.ts   |      2 +-
 .../cypress/integration/dashboard/markdown.test.ts |     22 +-
 .../integration/dashboard/nativeFilters.test.ts    |    316 +-
 .../cypress/integration/dashboard/tabs.test.ts     |      2 +-
 .../integration/dashboard/url_params.test.ts       |     14 +-
 .../integration/dashboard_list/filter.test.ts      |     68 +-
 .../integration/explore/AdhocFilters.test.ts       |     10 +-
 .../integration/explore/AdhocMetrics.test.ts       |     10 +-
 .../integration/explore/advanced_analytics.test.ts |     12 +-
 .../integration/explore/annotations.test.ts        |      2 +-
 .../cypress/integration/explore/control.test.ts    |     26 +-
 .../cypress/integration/explore/link.test.ts       |     16 +-
 .../explore/visualizations/line.test.ts            |     17 +-
 .../explore/visualizations/table.test.ts           |      8 +-
 .../cypress/integration/sqllab/query.test.ts       |      2 +-
 .../cypress-base/cypress/support/directories.ts    |    648 +
 .../cypress-base/cypress/utils/parsePostForm.ts    |      2 +-
 superset-frontend/cypress-base/package-lock.json   |   4290 +-
 superset-frontend/cypress-base/package.json        |     10 +-
 superset-frontend/cypress-base/tsconfig.json       |      2 +-
 superset-frontend/package-lock.json                | 131258 +++++++++---------
 superset-frontend/package.json                     |    280 +-
 superset-frontend/spec/fixtures/mockDatasource.js  |      1 +
 .../spec/fixtures/mockNativeFilters.ts             |     38 +
 superset-frontend/spec/fixtures/mockReportState.js |      2 +-
 superset-frontend/spec/fixtures/mockState.js       |      4 +-
 .../spec/fixtures/mockStateWithoutUser.tsx         |      2 +-
 superset-frontend/spec/fixtures/mockStore.js       |      3 +-
 superset-frontend/spec/helpers/reducerIndex.ts     |      2 +-
 superset-frontend/spec/helpers/theming.ts          |      1 +
 .../javascripts/components/CachedLabel_spec.jsx    |     38 -
 .../components/ColumnTypeLabel_spec.jsx            |     77 -
 .../dashboard/actions/dashboardLayout_spec.js      |      2 +-
 .../dashboard/actions/dashboardState_spec.js       |      5 +-
 .../dashboard/components/FiltersBadge_spec.tsx     |      1 -
 ...MissingChart_spec.jsx => MissingChart_spec.tsx} |     35 +-
 .../dashboard/components/PropertiesModal_spec.jsx  |     26 +-
 .../components/RefreshIntervalModal_spec.jsx       |     80 -
 .../components/RefreshIntervalModal_spec.tsx       |    237 +
 .../components/gridComponents/ChartHolder_spec.jsx |      2 +-
 .../components/gridComponents/Chart_spec.jsx       |      2 +-
 .../components/gridComponents/Column_spec.jsx      |      2 +-
 .../components/gridComponents/Row_spec.jsx         |      2 +-
 .../components/gridComponents/Tab_spec.jsx         |      2 +-
 .../components/gridComponents/Tabs_spec.jsx        |      5 +-
 .../{HoverMenu_spec.jsx => HoverMenu_spec.tsx}     |      0
 .../nativeFilters/NativeFiltersModal_spec.tsx      |     14 +-
 ...tainer_spec.jsx => ResizableContainer_spec.tsx} |     42 +-
 ...bleHandle_spec.jsx => ResizableHandle_spec.tsx} |     24 +-
 .../dashboard/fixtures/mockNativeFilters.ts        |      5 +-
 .../util/getFormDataWithExtraFilters_spec.ts       |      6 +-
 .../util/getLeafComponentIdFromPath_spec.js        |      5 +-
 .../dashboard/util/newEntitiesFromDrop_spec.js     |      8 +-
 .../datasource/DatasourceEditor_spec.jsx           |    252 -
 .../components/AdhocMetricEditPopover_spec.jsx     |      6 +-
 ...ateOption_spec.jsx => AggregateOption_spec.tsx} |     11 +-
 ...oxControl_spec.jsx => CheckboxControl_spec.tsx} |     45 +-
 .../explore/components/ColorPickerControl_spec.jsx |     61 -
 .../explore/components/ColorPickerControl_spec.tsx |     72 +
 .../explore/components/DatasourceControl_spec.jsx  |      6 +-
 .../explore/components/SaveModal_spec.jsx          |      5 +-
 .../explore/components/SelectControl_spec.jsx      |    137 +-
 .../explore/components/TextArea_spec.jsx           |      2 +-
 .../spec/javascripts/explore/controlUtils_spec.tsx |      4 +-
 .../spec/javascripts/explore/fixtures.tsx          |     73 +-
 .../spec/javascripts/messageToasts/.eslintrc       |     30 -
 superset-frontend/src/CRUD/CollectionTable.tsx     |     22 +-
 superset-frontend/src/CRUD/crud.less               |      2 +-
 superset-frontend/src/SqlLab/App.jsx               |      2 +-
 superset-frontend/src/SqlLab/actions/sqlLab.js     |     12 +-
 .../SqlLab/actions/sqlLab.test.js}                 |     48 +-
 .../index.tsx}                                     |     17 +-
 .../SqlLab/components/App/App.test.jsx}            |      0
 .../SqlLab/components/{App.jsx => App/index.jsx}   |     22 +-
 .../ColumnElement/ColumnElement.test.tsx}          |      3 +-
 .../{ColumnElement.tsx => ColumnElement/index.tsx} |      0
 .../index.jsx}                                     |      7 +-
 .../index.jsx}                                     |      3 +-
 .../ExploreResultsButton.test.jsx}                 |      3 +-
 .../index.jsx}                                     |      8 +-
 .../HighlightedSql/HighlightedSql.test.jsx}        |      0
 .../index.tsx}                                     |      3 +-
 .../QueryAutoRefresh/QueryAutoRefresh.test.jsx}    |      3 +-
 .../index.jsx}                                     |      3 +-
 .../{QueryHistory.tsx => QueryHistory/index.tsx}   |      5 +-
 .../components/QuerySearch/QuerySearch.test.jsx}   |      2 +-
 .../{QuerySearch.tsx => QuerySearch/index.tsx}     |     18 +-
 .../QueryStateLabel/QueryStateLabel.test.jsx}      |      0
 .../index.tsx}                                     |      5 +-
 .../components/QueryTable/QueryTable.test.jsx}     |      4 +-
 .../components/ResultSet/ResultSet.test.jsx}       |      4 +-
 .../{ResultSet.tsx => ResultSet/index.tsx}         |    105 +-
 .../index.tsx}                                     |      0
 .../SaveDatasetModal/SaveDatasetModal.test.tsx}    |      0
 .../index.tsx}                                     |      0
 .../components/SaveQuery/SaveQuery.test.jsx}       |      0
 .../{SaveQuery.tsx => SaveQuery/index.tsx}         |      0
 .../ScheduleQueryButton.less                       |      0
 .../index.tsx}                                     |      0
 .../ShareSqlLabQuery/ShareSqlLabQuery.test.jsx}    |      0
 .../index.tsx}                                     |     15 +-
 .../components/{ShowSQL.tsx => ShowSQL/index.tsx}  |      5 +-
 .../components/SouthPane/SouthPane.test.jsx}       |      2 +-
 .../SouthPane/{SouthPane.tsx => index.tsx}         |      0
 .../src/SqlLab/components/SouthPane/state.ts       |      4 +-
 .../components/SqlEditor/SqlEditor.test.jsx}       |      6 +-
 .../{SqlEditor.jsx => SqlEditor/index.jsx}         |     49 +-
 .../SqlEditorLeftBar/SqlEditorLeftBar.test.jsx}    |     15 +-
 .../index.jsx}                                     |     15 +-
 .../TabStatusIcon/TabStatusIcon.test.jsx}          |      0
 .../{TabStatusIcon.tsx => TabStatusIcon/index.tsx} |      3 +-
 .../TabbedSqlEditors/TabbedSqlEditors.test.jsx}    |      3 +-
 .../index.jsx}                                     |     12 +-
 .../components/TableElement/TableElement.test.jsx} |      3 +-
 .../{TableElement.tsx => TableElement/index.tsx}   |     12 +-
 .../TemplateParamsEditor.test.tsx}                 |      2 +-
 .../index.tsx}                                     |      0
 .../javascripts/sqllab => src/SqlLab}/fixtures.ts  |      0
 superset-frontend/src/SqlLab/main.less             |      4 +-
 .../src/SqlLab/reducers/getInitialState.js         |      2 +-
 superset-frontend/src/SqlLab/reducers/index.js     |      3 +-
 .../SqlLab/reducers/sqlLab.test.js}                |      1 -
 superset-frontend/src/SqlLab/types.ts              |     13 +
 .../SqlLab/utils/emptyQueryResults.test.js}        |      0
 .../src/addSlice/AddSliceContainer.tsx             |     14 +-
 superset-frontend/src/api/dataset.ts               |     63 -
 .../{ => src/assets}/images/apache-kylin.png       |    Bin
 .../{ => src/assets}/images/apache_feather.png     |    Bin
 .../{ => src/assets}/images/babies.png             |    Bin
 .../{ => src/assets}/images/bubble.png             |    Bin
 .../assets}/images/chart-card-fallback.svg         |      0
 .../{ => src/assets}/images/clickhouse.png         |    Bin
 .../{ => src/assets}/images/cloud.png              |    Bin
 .../{ => src/assets}/images/create_role.png        |    Bin
 superset-frontend/{ => src/assets}/images/dash.png |    Bin
 .../assets}/images/dashboard-card-fallback.svg     |      0
 superset-frontend/{ => src/assets}/images/db2.png  |    Bin
 .../{ => src/assets}/images/druid.png              |    Bin
 .../{ => src/assets}/images/druid_agg.png          |    Bin
 .../{ => src/assets}/images/empty-charts.svg       |      0
 .../{ => src/assets}/images/empty-dashboard.svg    |      0
 .../{ => src/assets}/images/empty-queries.svg      |      0
 .../{ => src/assets}/images/empty-query.svg        |      0
 .../{ => src/assets}/images/empty.svg              |      0
 .../{ => src/assets}/images/error404.png           |    Bin
 .../{ => src/assets}/images/error500.png           |    Bin
 .../{ => src/assets}/images/exasol.png             |    Bin
 .../{ => src/assets}/images/favicon.png            |    Bin
 .../{ => src/assets}/images/firebird.png           |    Bin
 .../{ => src/assets}/images/google-biquery.png     |    Bin
 .../{ => src/assets}/images/greenplum.png          |    Bin
 .../{ => src/assets}/images/hologres.png           |    Bin
 .../{ => src/assets}/images/icons/alert.svg        |      0
 .../{ => src/assets}/images/icons/alert_solid.svg  |      0
 .../assets}/images/icons/alert_solid_small.svg     |      0
 .../{ => src/assets}/images/icons/ballot.svg       |      0
 .../{ => src/assets}/images/icons/binoculars.svg   |      0
 .../{ => src/assets}/images/icons/bolt.svg         |      0
 .../{ => src/assets}/images/icons/bolt_small.svg   |      0
 .../assets}/images/icons/bolt_small_run.svg        |      0
 .../{ => src/assets}/images/icons/calendar.svg     |      0
 .../{ => src/assets}/images/icons/cancel-x.svg     |      2 +-
 .../{ => src/assets}/images/icons/cancel.svg       |      0
 .../{ => src/assets}/images/icons/cancel_solid.svg |      0
 .../{ => src/assets}/images/icons/card_view.svg    |      0
 .../{ => src/assets}/images/icons/cards.svg        |      0
 .../{ => src/assets}/images/icons/cards_locked.svg |      0
 .../{ => src/assets}/images/icons/caret_down.svg   |      0
 .../{ => src/assets}/images/icons/caret_left.svg   |      0
 .../{ => src/assets}/images/icons/caret_right.svg  |      0
 .../{ => src/assets}/images/icons/caret_up.svg     |      0
 .../{ => src/assets}/images/icons/category.svg     |      0
 .../{ => src/assets}/images/icons/certified.svg    |      0
 .../{ => src/assets}/images/icons/check.svg        |      0
 .../assets}/images/icons/checkbox-half.svg         |      0
 .../{ => src/assets}/images/icons/checkbox-off.svg |      0
 .../{ => src/assets}/images/icons/checkbox-on.svg  |      0
 .../{ => src/assets}/images/icons/circle.svg       |      0
 .../{ => src/assets}/images/icons/circle_check.svg |      0
 .../assets}/images/icons/circle_check_solid.svg    |      0
 .../{ => src/assets}/images/icons/clock.svg        |      0
 .../{ => src/assets}/images/icons/close.svg        |      0
 .../{ => src/assets}/images/icons/code.svg         |      0
 .../{ => src/assets}/images/icons/cog.svg          |      0
 .../{ => src/assets}/images/icons/collapse.svg     |      0
 .../assets}/images/icons/color_palette.svg         |      0
 .../{ => src/assets}/images/icons/components.svg   |      0
 .../{ => src/assets}/images/icons/copy.svg         |      0
 .../assets}/images/icons/cross-filter-badge.svg    |      0
 .../assets}/images/icons/cursor_target.svg         |      0
 .../{ => src/assets}/images/icons/database.svg     |      0
 .../assets}/images/icons/dataset_physical.svg      |      0
 .../assets}/images/icons/dataset_virtual.svg       |      0
 .../images/icons/dataset_virtual_greyscale.svg     |      0
 .../assets}/images/icons/default_db_image.svg      |      0
 .../{ => src/assets}/images/icons/download.svg     |      0
 superset-frontend/src/assets/images/icons/drag.svg |     22 +
 .../{ => src/assets}/images/icons/edit.svg         |      0
 .../{ => src/assets}/images/icons/edit_alt.svg     |      0
 .../{ => src/assets}/images/icons/email.svg        |      0
 .../{ => src/assets}/images/icons/error.svg        |      0
 .../{ => src/assets}/images/icons/error_solid.svg  |      0
 .../assets}/images/icons/error_solid_small.svg     |      0
 .../assets}/images/icons/error_solid_small_red.svg |      0
 .../{ => src/assets}/images/icons/exclamation.svg  |      0
 .../{ => src/assets}/images/icons/expand.svg       |      0
 .../{ => src/assets}/images/icons/eye.svg          |      0
 .../{ => src/assets}/images/icons/eye_slash.svg    |      0
 .../assets}/images/icons/favorite-selected.svg     |      0
 .../assets}/images/icons/favorite-unselected.svg   |      0
 .../images/icons/favorite_small_selected.svg       |      0
 .../{ => src/assets}/images/icons/field_abc.svg    |      0
 .../assets}/images/icons/field_boolean.svg         |      0
 .../{ => src/assets}/images/icons/field_date.svg   |      0
 .../assets}/images/icons/field_derived.svg         |      0
 .../{ => src/assets}/images/icons/field_num.svg    |      0
 .../{ => src/assets}/images/icons/field_struct.svg |      0
 .../{ => src/assets}/images/icons/file.svg         |      0
 .../{ => src/assets}/images/icons/filter.svg       |      0
 .../{ => src/assets}/images/icons/filter_small.svg |      0
 .../{ => src/assets}/images/icons/folder.svg       |      0
 .../{ => src/assets}/images/icons/full.svg         |      0
 .../{ => src/assets}/images/icons/function_x.svg   |      0
 .../{ => src/assets}/images/icons/gear.svg         |      0
 .../{ => src/assets}/images/icons/grid.svg         |      0
 .../{ => src/assets}/images/icons/image.svg        |      0
 .../{ => src/assets}/images/icons/import.svg       |      0
 .../{ => src/assets}/images/icons/info-solid.svg   |      0
 .../{ => src/assets}/images/icons/info.svg         |      0
 .../assets}/images/icons/info_solid_small.svg      |      0
 .../{ => src/assets}/images/icons/join.svg         |      0
 .../{ => src/assets}/images/icons/keyboard.svg     |      0
 .../{ => src/assets}/images/icons/layers.svg       |      0
 .../{ => src/assets}/images/icons/lightbulb.svg    |      0
 .../{ => src/assets}/images/icons/link.svg         |      0
 .../{ => src/assets}/images/icons/list.svg         |      0
 .../{ => src/assets}/images/icons/list_view.svg    |      0
 .../{ => src/assets}/images/icons/location.svg     |      0
 .../{ => src/assets}/images/icons/lock_locked.svg  |      0
 .../assets}/images/icons/lock_unlocked.svg         |      0
 .../{ => src/assets}/images/icons/map.svg          |      0
 .../{ => src/assets}/images/icons/message.svg      |      0
 .../{ => src/assets}/images/icons/minus.svg        |      0
 .../{ => src/assets}/images/icons/minus_solid.svg  |      0
 .../{ => src/assets}/images/icons/more_horiz.svg   |      0
 .../{ => src/assets}/images/icons/more_vert.svg    |      0
 .../{ => src/assets}/images/icons/move.svg         |      0
 .../{ => src/assets}/images/icons/nav_charts.svg   |      0
 .../assets}/images/icons/nav_dashboard.svg         |      0
 .../{ => src/assets}/images/icons/nav_data.svg     |      0
 .../{ => src/assets}/images/icons/nav_explore.svg  |      0
 .../{ => src/assets}/images/icons/nav_home.svg     |      0
 .../{ => src/assets}/images/icons/nav_lab.svg      |      0
 .../{ => src/assets}/images/icons/note.svg         |      0
 .../{ => src/assets}/images/icons/offline.svg      |      0
 .../{ => src/assets}/images/icons/paperclip.svg    |      0
 .../{ => src/assets}/images/icons/placeholder.svg  |      0
 .../{ => src/assets}/images/icons/plus.svg         |      0
 .../{ => src/assets}/images/icons/plus_large.svg   |      0
 .../{ => src/assets}/images/icons/plus_small.svg   |      0
 .../{ => src/assets}/images/icons/plus_solid.svg   |      0
 .../{ => src/assets}/images/icons/queued.svg       |      0
 .../{ => src/assets}/images/icons/refresh.svg      |      0
 .../{ => src/assets}/images/icons/running.svg      |      0
 .../{ => src/assets}/images/icons/save.svg         |      0
 .../{ => src/assets}/images/icons/search.svg       |      0
 .../{ => src/assets}/images/icons/server.svg       |      0
 .../{ => src/assets}/images/icons/share.svg        |      0
 .../{ => src/assets}/images/icons/slack.svg        |      0
 .../{ => src/assets}/images/icons/sort.svg         |      0
 .../{ => src/assets}/images/icons/sort_asc.svg     |      0
 .../{ => src/assets}/images/icons/sort_desc.svg    |      0
 .../{ => src/assets}/images/icons/sql.svg          |      0
 .../{ => src/assets}/images/icons/table.svg        |      0
 .../{ => src/assets}/images/icons/tag.svg          |      0
 .../{ => src/assets}/images/icons/tags.svg         |      0
 .../{ => src/assets}/images/icons/transparent.svg  |      0
 .../{ => src/assets}/images/icons/trash.svg        |      0
 .../assets}/images/icons/triangle_change.svg       |      0
 .../assets}/images/icons/triangle_down.svg         |      0
 .../{ => src/assets}/images/icons/triangle_up.svg  |      0
 .../{ => src/assets}/images/icons/up-level.svg     |      0
 .../{ => src/assets}/images/icons/user.svg         |      0
 .../{ => src/assets}/images/icons/warning.svg      |      0
 .../assets}/images/icons/warning_solid.svg         |      0
 .../{ => src/assets}/images/icons/x-large.svg      |      0
 .../{ => src/assets}/images/icons/x-small.svg      |      0
 .../{ => src/assets}/images/loading.gif            |    Bin
 .../{ => src/assets}/images/mariadb.png            |    Bin
 .../{ => src/assets}/images/monet-db.png           |    Bin
 .../{ => src/assets}/images/mssql-server.png       |    Bin
 .../{ => src/assets}/images/mysql.png              |    Bin
 .../{ => src/assets}/images/netezza.png            |    Bin
 .../{ => src/assets}/images/noimg.png              |    Bin
 .../{ => src/assets}/images/oracle.png             |    Bin
 .../{ => src/assets}/images/postgresql.png         |    Bin
 .../{ => src/assets}/images/presto.png             |    Bin
 .../{ => src/assets}/images/redshift.png           |    Bin
 superset-frontend/{ => src/assets}/images/s.png    |    Bin
 .../assets}/images/screenshots/bank_dash.png       |    Bin
 .../assets}/images/screenshots/deckgl_dash.png     |    Bin
 .../assets}/images/screenshots/explore.jpg         |    Bin
 .../assets}/images/screenshots/explore.png         |    Bin
 .../images/screenshots/explore_visualizations.jpg  |    Bin 0 -> 485516 bytes
 .../assets}/images/screenshots/gallery.jpg         |    Bin
 .../assets}/images/screenshots/gallery.png         |    Bin
 .../assets}/images/screenshots/geospatial_dash.jpg |    Bin
 .../assets}/images/screenshots/slack_dash.jpg      |    Bin
 .../assets}/images/screenshots/sql_lab.jpg         |    Bin
 .../{ => src/assets}/images/screenshots/sqllab.png |    Bin
 .../assets/images/screenshots/visualizations.png   |    Bin 0 -> 485516 bytes
 .../{ => src/assets}/images/snowflake.png          |    Bin
 .../{ => src/assets}/images/sqlite.png             |    Bin
 .../{ => src/assets}/images/star-circle.svg        |      0
 .../assets}/images/superset-logo-horiz.png         |    Bin
 .../{ => src/assets}/images/superset.png           |    Bin
 .../assets}/images/superset_screenshot.png         |    Bin
 .../{ => src/assets}/images/sybase.png             |    Bin
 .../{ => src/assets}/images/trino.png              |    Bin
 .../{ => src/assets}/images/tutorial/add_db.png    |    Bin
 .../tutorial/tutorial_01_sources_database.png      |    Bin
 .../images/tutorial/tutorial_02_add_database.png   |    Bin
 .../images/tutorial/tutorial_03_database_name.png  |    Bin
 .../tutorial_04_sqlalchemy_connection_string.png   |    Bin
 .../tutorial/tutorial_05_connection_popup.png      |    Bin
 .../images/tutorial/tutorial_06_list_of_tables.png |    Bin
 .../images/tutorial/tutorial_07_save_button.png    |    Bin
 .../images/tutorial/tutorial_08_sources_tables.png |    Bin
 .../images/tutorial/tutorial_09_add_new_table.png  |    Bin
 .../images/tutorial/tutorial_10_table_name.png     |    Bin
 .../images/tutorial/tutorial_11_choose_db.png      |    Bin
 .../tutorial_12_table_creation_success_msg.png     |    Bin
 .../tutorial/tutorial_13_edit_table_config.png     |    Bin
 .../images/tutorial/tutorial_14_field_config.png   |    Bin
 .../tutorial/tutorial_15_click_table_name.png      |    Bin
 .../tutorial/tutorial_16_datasource_chart_type.png |    Bin
 .../tutorial/tutorial_17_choose_time_range.png     |    Bin
 .../images/tutorial/tutorial_18_choose_metric.png  |    Bin
 .../images/tutorial/tutorial_19_click_query.png    |    Bin
 .../tutorial/tutorial_20_count_star_result.png     |    Bin
 .../images/tutorial/tutorial_21_group_by.png       |    Bin
 .../tutorial/tutorial_22_group_by_result.png       |    Bin
 .../tutorial_23_group_by_more_dimensions.png       |    Bin
 .../images/tutorial/tutorial_24_max_metric.png     |    Bin
 .../tutorial/tutorial_25_max_temp_filter.png       |    Bin
 .../images/tutorial/tutorial_26_row_limit.png      |    Bin
 .../tutorial/tutorial_27_top_10_max_temps.png      |    Bin
 .../images/tutorial/tutorial_28_bar_chart.png      |    Bin
 .../tutorial_29_bar_chart_series_metrics.png       |    Bin
 .../tutorial/tutorial_30_bar_chart_results.png     |    Bin
 .../tutorial_31_save_slice_to_dashboard.png        |    Bin
 .../tutorial_32_save_slice_confirmation.png        |    Bin
 .../images/tutorial/tutorial_33_dashboard.png      |    Bin
 .../tutorial/tutorial_34_weather_dashboard.png     |    Bin
 .../tutorial/tutorial_35_slice_on_dashboard.png    |    Bin
 .../tutorial/tutorial_36_adjust_dimensions.gif     |    Bin
 .../{ => src/assets}/images/union.png              |    Bin
 .../{ => src/assets}/images/union.svg              |      0
 .../assets}/images/usertutorial/add_new_chart.png  |    Bin
 .../usertutorial/advanced_analytics_base.png       |    Bin
 .../assets}/images/usertutorial/annotation.png     |    Bin
 .../images/usertutorial/annotation_settings.png    |    Bin
 .../usertutorial/average_aggregate_for_cost.png    |    Bin
 .../usertutorial/blue_bar_insert_component.png     |    Bin
 .../images/usertutorial/chose_a_datasource.png     |    Bin
 .../usertutorial/csv_to_database_configuration.png |    Bin
 .../assets}/images/usertutorial/edit-record.png    |    Bin
 .../images/usertutorial/edit_annotation.png        |    Bin
 .../usertutorial/filter_on_origin_country.png      |    Bin
 .../assets}/images/usertutorial/markdown.png       |    Bin
 .../usertutorial/no_filter_on_time_filter.png      |    Bin
 .../images/usertutorial/parse_dates_column.png     |    Bin
 .../images/usertutorial/publish_dashboard.png      |    Bin
 .../assets}/images/usertutorial/resample.png       |    Bin
 .../resize_tutorial_table_on_dashboard.png         |    Bin
 .../assets}/images/usertutorial/rolling_mean.png   |    Bin
 .../images/usertutorial/save_tutorial_table.png    |    Bin
 .../usertutorial/select_dates_pivot_table.png      |    Bin
 .../select_table_visualization_type.png            |    Bin
 .../images/usertutorial/sum_cost_column.png        |    Bin
 .../time_comparison_absolute_difference.png        |    Bin
 .../usertutorial/time_comparison_two_series.png    |    Bin
 .../images/usertutorial/tutorial_line_chart.png    |    Bin
 .../images/usertutorial/tutorial_pivot_table.png   |    Bin
 .../assets}/images/usertutorial/tutorial_table.png |    Bin
 .../assets}/images/usertutorial/upload_a_csv.png   |    Bin
 .../{ => src/assets}/images/vertica.png            |    Bin
 .../assets}/images/viz_thumbnails/area.png         |    Bin
 .../{ => src/assets}/images/viz_thumbnails/bar.png |    Bin
 .../assets}/images/viz_thumbnails/big_number.png   |    Bin
 .../images/viz_thumbnails/big_number_total.png     |    Bin
 .../assets}/images/viz_thumbnails/box_plot.png     |    Bin
 .../assets}/images/viz_thumbnails/bubble.png       |    Bin
 .../assets}/images/viz_thumbnails/bullet.png       |    Bin
 .../assets}/images/viz_thumbnails/cal_heatmap.png  |    Bin
 .../assets}/images/viz_thumbnails/chord.png        |    Bin
 .../assets}/images/viz_thumbnails/compare.png      |    Bin
 .../assets}/images/viz_thumbnails/country_map.png  |    Bin
 .../assets}/images/viz_thumbnails/deck_arc.png     |    Bin
 .../assets}/images/viz_thumbnails/deck_geojson.png |    Bin
 .../assets}/images/viz_thumbnails/deck_grid.png    |    Bin
 .../assets}/images/viz_thumbnails/deck_hex.png     |    Bin
 .../assets}/images/viz_thumbnails/deck_multi.png   |    Bin
 .../assets}/images/viz_thumbnails/deck_path.png    |    Bin
 .../assets}/images/viz_thumbnails/deck_polygon.png |    Bin
 .../assets}/images/viz_thumbnails/deck_scatter.png |    Bin
 .../images/viz_thumbnails/deck_screengrid.png      |    Bin
 .../images/viz_thumbnails/directed_force.png       |    Bin
 .../assets}/images/viz_thumbnails/dist_bar.png     |    Bin
 .../assets}/images/viz_thumbnails/dual_line.png    |    Bin
 .../assets}/images/viz_thumbnails/event_flow.png   |    Bin
 .../assets}/images/viz_thumbnails/filter_box.png   |    Bin
 .../assets}/images/viz_thumbnails/heatmap.png      |    Bin
 .../assets}/images/viz_thumbnails/histogram.png    |    Bin
 .../assets}/images/viz_thumbnails/horizon.png      |    Bin
 .../assets}/images/viz_thumbnails/iframe.png       |    Bin
 .../assets}/images/viz_thumbnails/line.png         |    Bin
 .../assets}/images/viz_thumbnails/line_multi.png   |    Bin
 .../assets}/images/viz_thumbnails/mapbox.png       |    Bin
 .../assets}/images/viz_thumbnails/markup.png       |    Bin
 .../assets}/images/viz_thumbnails/multi.png        |    Bin
 .../assets}/images/viz_thumbnails/paired_ttest.png |    Bin
 .../assets}/images/viz_thumbnails/para.png         |    Bin
 .../assets}/images/viz_thumbnails/partition.png    |    Bin
 .../{ => src/assets}/images/viz_thumbnails/pie.png |    Bin
 .../assets}/images/viz_thumbnails/pivot_table.png  |    Bin
 .../assets}/images/viz_thumbnails/rose.png         |    Bin
 .../assets}/images/viz_thumbnails/sankey.png       |    Bin
 .../assets}/images/viz_thumbnails/separator.png    |    Bin
 .../assets}/images/viz_thumbnails/sunburst.png     |    Bin
 .../assets}/images/viz_thumbnails/table.png        |    Bin
 .../assets}/images/viz_thumbnails/time_pivot.png   |    Bin
 .../assets}/images/viz_thumbnails/time_table.png   |    Bin
 .../assets}/images/viz_thumbnails/treemap.png      |    Bin
 .../assets}/images/viz_thumbnails/word_cloud.png   |    Bin
 .../assets}/images/viz_thumbnails/world_map.png    |    Bin
 superset-frontend/src/assets/staticPages/404.html  |      4 +-
 superset-frontend/src/assets/staticPages/500.html  |      6 +-
 .../{ => src/assets}/stylesheets/antd/index.less   |      0
 .../assets}/stylesheets/less/cosmo/bootswatch.less |      0
 .../assets}/stylesheets/less/cosmo/cosmoTheme.js   |      1 +
 .../assets}/stylesheets/less/cosmo/variables.less  |      0
 .../{ => src/assets}/stylesheets/less/fonts.less   |      0
 .../{ => src/assets}/stylesheets/less/index.less   |      0
 .../assets}/stylesheets/less/variables.less        |      0
 .../assets}/stylesheets/reactable-pagination.less  |      2 +-
 .../{ => src/assets}/stylesheets/superset.less     |      0
 superset-frontend/src/chart/Chart.jsx              |     29 +-
 superset-frontend/src/chart/ChartRenderer.jsx      |     11 +-
 superset-frontend/src/chart/chartAction.js         |     31 +-
 superset-frontend/src/common/components/.eslintrc  |     13 +-
 .../src/common/hooks/apiResources/apiResources.ts  |     16 +-
 .../src/common/hooks/apiResources/dashboards.ts    |      3 +-
 superset-frontend/src/components/.eslintrc         |     13 +-
 .../AlteredSliceTag/AlteredSliceTag.test.jsx       |      4 +-
 .../src/components/AnchorLink/index.jsx            |      8 +-
 .../AsyncAceEditor/AsyncAceEditor.test.tsx         |      2 +-
 .../src/components/AsyncAceEditor/index.tsx        |      8 +-
 .../src/components/AsyncEsmComponent/index.tsx     |      2 +-
 superset-frontend/src/components/Badge/index.tsx   |     10 +-
 superset-frontend/src/components/Button/index.tsx  |      4 +-
 .../components/CachedLabel/CachedLabel.test.tsx    |     33 +-
 .../src/components/CachedLabel/index.tsx           |      4 +-
 .../src/components/CertifiedIcon/index.tsx         |      9 +-
 .../src/components/ChartIcon/index.tsx             |     44 -
 .../src/components/Collapse/Collapse.test.tsx      |      4 +-
 .../CopyToClipboard/CopyToClipboard.stories.tsx    |      4 +-
 .../src/components/CopyToClipboard/index.jsx       |      2 +-
 .../DatabaseSelector/DatabaseSelector.test.tsx     |    123 +-
 .../src/components/DatabaseSelector/index.tsx      |    372 +-
 .../Datasource/ChangeDatasourceModal.test.jsx}     |      2 +-
 .../Datasource}/ChangeDatasourceModal.tsx          |      4 +-
 .../Datasource}/DatasourceEditor.jsx               |    298 +-
 .../Datasource/DatasourceEditor.test.jsx           |    233 +
 .../Datasource/DatasourceModal.test.jsx}           |      4 +-
 .../Datasource}/DatasourceModal.tsx                |     29 +-
 .../index.ts => Datasource/index.tsx}              |      6 +-
 .../src/components/DatePicker/index.tsx            |      8 +-
 .../components/DeleteModal/DeleteModal.test.tsx    |     15 +-
 .../src/components/DeleteModal/index.tsx           |     34 +-
 .../src/components/EditableTitle/index.tsx         |      6 +-
 .../components/ErrorMessage/BasicErrorAlert.tsx    |     11 +-
 .../DatasetNotFoundErrorMessage.test.tsx}          |     33 +-
 .../ErrorMessage/DatasetNotFoundErrorMessage.tsx}  |     34 +-
 .../src/components/ErrorMessage/ErrorAlert.tsx     |     27 +-
 .../ErrorMessage/ParameterErrorMessage.tsx         |      9 +-
 .../ErrorMessage/TimeoutErrorMessage.tsx           |      7 +-
 .../src/components/ErrorMessage/types.ts           |     16 +-
 .../components/FilterableTable/FilterableTable.tsx |     61 +-
 .../FilterableTable/FilterableTableStyles.less     |      2 +-
 .../src/components/FlashProvider/index.tsx         |      2 +-
 .../src/components/Form/LabeledErrorBoundInput.tsx |      2 +-
 superset-frontend/src/components/Icons/Icon.tsx    |     12 +-
 superset-frontend/src/components/Icons/index.tsx   |      1 +
 .../components/ImportModal/ImportModal.test.tsx    |     33 +
 .../src/components/ImportModal/index.tsx           |      5 +-
 superset-frontend/src/components/Label/index.tsx   |     11 +-
 .../src/components/ListView/CardSortSelect.tsx     |    100 +-
 .../src/components/ListView/Filters/Base.ts        |      8 +-
 .../src/components/ListView/Filters/DateRange.tsx  |     21 +-
 .../src/components/ListView/Filters/Search.tsx     |     44 +-
 .../src/components/ListView/Filters/Select.tsx     |    148 +-
 .../src/components/ListView/Filters/index.tsx      |     29 +-
 .../src/components/ListView/ListView.test.jsx      |     30 +-
 .../src/components/ListView/ListView.tsx           |     26 +-
 superset-frontend/src/components/ListView/types.ts |     18 +-
 superset-frontend/src/components/ListView/utils.ts |      7 +-
 .../ListViewCard/ListViewCard.stories.tsx          |      4 +-
 .../src/components/Loading/Loading.stories.tsx     |      4 +-
 .../src/components/Loading/Loading.test.tsx        |      4 +-
 .../src/components/Menu/Menu.test.tsx              |     52 +
 .../src/components/Menu/MenuRight.tsx              |    269 +-
 .../components/MessageToasts/Toast.test.jsx}       |      4 +-
 .../MessageToasts}/Toast.tsx                       |      3 +-
 .../MessageToasts/ToastContainer.jsx}              |      4 +-
 .../MessageToasts/ToastPresenter.test.jsx}         |      7 +-
 .../MessageToasts}/ToastPresenter.tsx              |      2 +-
 .../MessageToasts/actions.ts}                      |      2 +-
 .../MessageToasts}/getToastsFromPyFlashMessages.js |      4 +-
 .../getToastsFromPyFlashMessages.test.js}          |      5 +-
 .../components/MessageToasts}/mockMessageToasts.js |      2 +-
 .../MessageToasts/reducers.js}                     |      2 +-
 .../components/MessageToasts/reducers.test.js}     |      4 +-
 .../MessageToasts}/types.ts                        |      0
 .../MessageToasts}/withToasts.tsx                  |      2 +-
 .../{Pagination.test.tsx => Wrapper.test.tsx}      |     16 +-
 .../Pagination/{index.tsx => Wrapper.tsx}          |      0
 .../src/components/Pagination/index.tsx            |     98 +-
 .../PopoverDropdown/PopoverDropdown.stories.tsx    |     25 +-
 .../HeaderReportActionsDropdown/index.tsx          |      6 +-
 .../src/components/ReportModal/index.tsx           |      2 +-
 .../components/SearchInput/SearchInput.stories.tsx |     62 -
 .../components/SearchInput/SearchInput.test.jsx    |     93 -
 .../src/components/SearchInput/index.tsx           |    108 -
 .../src/components/Select/DeprecatedSelect.tsx     |      7 +-
 .../src/components/Select/Select.stories.tsx       |     52 +-
 .../src/components/Select/Select.test.tsx          |     73 +-
 superset-frontend/src/components/Select/Select.tsx |    200 +-
 .../Select/WindowedSelect/WindowedMenuList.tsx     |     17 +-
 .../components/Select/WindowedSelect/windowed.tsx  |     14 +-
 superset-frontend/src/components/Select/styles.tsx |     49 +-
 .../TableCollection.test.tsx                       |      2 +-
 .../index.tsx}                                     |      0
 .../components/TableLoader/TableLoader.test.tsx    |      4 +-
 .../src/components/TableLoader/index.tsx           |      4 +-
 .../TableSelector/TableSelector.test.jsx           |    291 -
 .../TableSelector/TableSelector.test.tsx           |     96 +
 .../src/components/TableSelector/index.tsx         |    480 +-
 .../src/components/TableView/TableView.tsx         |      3 +-
 .../TimezoneSelector/TimezoneSelector.test.tsx     |     33 +-
 .../src/components/TimezoneSelector/index.tsx      |     48 +-
 .../URLShortLinkButton/URLShortLinkButton.test.tsx |      4 +-
 .../src/components/URLShortLinkButton/index.jsx    |      2 +-
 .../components/WarningIconWithTooltip/index.tsx    |      6 +-
 .../src/components/dataViewCommon/Pagination.tsx   |     48 -
 superset-frontend/src/constants.ts                 |      4 +
 .../src/dashboard/actions/dashboardInfo.ts         |     91 +-
 .../src/dashboard/actions/dashboardLayout.js       |     58 +-
 .../src/dashboard/actions/dashboardState.js        |     39 +-
 superset-frontend/src/dashboard/actions/hydrate.js |    610 +-
 .../src/dashboard/actions/nativeFilters.ts         |    408 +-
 .../src/dashboard/actions/sliceEntities.js         |     11 +-
 .../dashboard/components/BuilderComponentPane.tsx  |    106 +-
 .../components/ColorSchemeControlWrapper.jsx       |      6 +-
 .../components/CssEditor/CssEditor.test.tsx        |      4 +-
 .../src/dashboard/components/Dashboard.jsx         |      2 +
 .../DashboardBuilder/DashboardBuilder.tsx          |     70 +-
 .../DashboardBuilder/DashboardContainer.tsx        |      8 +-
 .../dashboard/components/DashboardBuilder/state.ts |     21 +-
 .../components/FilterBoxMigrationModal.tsx         |     95 +
 .../dashboard/components/FiltersBadge/selectors.ts |     15 +-
 .../dashboard/components/Header/Header.test.tsx    |     63 +-
 .../HeaderActionsDropdown.test.tsx                 |     11 +-
 .../Header/HeaderActionsDropdown/index.jsx         |     21 +-
 .../src/dashboard/components/Header/index.jsx      |     58 +-
 .../dashboard/components/PropertiesModal/index.jsx |    118 +-
 .../PublishedStatus/PublishedStatus.test.tsx       |      6 +-
 .../dashboard/components/RefreshIntervalModal.tsx  |      3 +-
 .../src/dashboard/components/SaveModal.tsx         |     12 +-
 .../src/dashboard/components/SliceAdder.jsx        |     20 +-
 .../components/filterscope/FilterScopeSelector.jsx |     28 +-
 .../filterscope/renderFilterScopeTreeNodes.jsx     |     19 +-
 .../dashboard/components/gridComponents/Chart.jsx  |     32 +-
 .../components/gridComponents/ChartHolder.jsx      |      6 +-
 .../components/gridComponents/ChartHolder.test.tsx |      7 +-
 .../dashboard/components/gridComponents/Header.jsx |      9 +-
 .../components/gridComponents/Markdown.jsx         |     18 +-
 .../dashboard/components/gridComponents/Tabs.jsx   |     19 +-
 .../src/dashboard/components/menu/HoverMenu.tsx    |     60 +-
 .../CascadeFilterControl.test.tsx                  |     41 +-
 .../CascadeFilters/CascadeFilterControl/index.tsx  |      7 +-
 .../CascadeFilters/CascadePopover/index.tsx        |     36 +-
 .../nativeFilters/FilterBar/FilterBar.test.tsx     |      3 +-
 .../FilterBar/FilterConfigurationLink/index.tsx    |      3 +
 .../FilterBar/FilterControls/FilterControl.tsx     |     95 +-
 .../FilterBar/FilterControls/FilterControls.tsx    |     78 +-
 .../FilterBar/FilterControls/FilterValue.tsx       |     77 +-
 .../FilterBar/FilterControls/state.ts              |     23 +-
 .../FilterBar/FilterControls/types.ts              |      4 +-
 .../FilterBar/FilterSets/EditSection.test.tsx      |      2 +-
 .../FilterBar/FilterSets/EditSection.tsx           |     21 +-
 .../FilterBar/FilterSets/FilterSets.test.tsx       |      3 +-
 .../FilterBar/FilterSets/FiltersHeader.tsx         |     10 +-
 .../nativeFilters/FilterBar/FilterSets/index.tsx   |    106 +-
 .../FilterSets/utils/findExistingFilterSet.test.ts |     12 +-
 .../FilterBar/FilterSets/utils/index.ts            |      1 +
 .../nativeFilters/FilterBar/Header/index.tsx       |      8 +-
 .../components/nativeFilters/FilterBar/index.tsx   |    130 +-
 .../components/nativeFilters/FilterBar/state.ts    |     88 +-
 .../components/nativeFilters/FilterBar/utils.ts    |      6 +-
 .../FiltersConfigModal/DraggableFilter.tsx         |    141 +
 .../FiltersConfigModal/FilterConfigPane.test.tsx   |    114 +
 .../FiltersConfigModal/FilterConfigurePane.tsx     |     99 +
 .../FiltersConfigModal/FilterTabs.tsx              |    251 -
 .../FiltersConfigModal/FilterTitleContainer.tsx    |    194 +
 .../FiltersConfigModal/FilterTitlePane.tsx         |    127 +
 .../FiltersConfigForm/ColumnSelect.tsx             |      7 +-
 .../FiltersConfigForm/DatasetSelect.tsx            |      6 +-
 .../FilterScope/FilterScope.test.tsx               |     12 +-
 .../FiltersConfigForm/FilterScope/FilterScope.tsx  |      1 +
 .../FiltersConfigForm/FiltersConfigForm.tsx        |    918 +-
 .../FiltersConfigForm/getControlItemsMap.test.tsx  |      1 +
 .../FiltersConfigModal/FiltersConfigModal.test.tsx |     45 +-
 .../FiltersConfigModal/FiltersConfigModal.tsx      |    243 +-
 .../FiltersConfigModal/Footer/Footer.tsx           |      3 +
 .../nativeFilters/FiltersConfigModal/state.ts      |     18 +-
 .../nativeFilters/FiltersConfigModal/types.ts      |      7 +-
 .../nativeFilters/FiltersConfigModal/utils.ts      |    286 +-
 .../dashboard/components/nativeFilters/types.ts    |      4 +
 .../src/dashboard/containers/Chart.jsx             |     29 +-
 .../src/dashboard/containers/Dashboard.ts          |      2 +
 .../dashboard/containers/DashboardComponent.jsx    |     18 +-
 .../src/dashboard/containers/DashboardHeader.jsx   |     23 +-
 .../src/dashboard/containers/DashboardPage.tsx     |    158 +-
 .../src/dashboard/containers/SliceAdder.jsx        |      7 +-
 .../src/dashboard/reducers/dashboardState.js       |      5 +-
 .../dashboard/reducers/dashboardState.test.ts}     |     33 +-
 .../src/dashboard/reducers/nativeFilters.ts        |     20 +-
 superset-frontend/src/dashboard/reducers/types.ts  |     16 +-
 .../dashboard/stylesheets/builder-sidepane.less    |      5 +-
 .../dashboard/stylesheets/components/markdown.less |      2 +-
 .../stylesheets/components/new-component.less      |      2 +-
 .../stylesheets/filter-scope-selector.less         |     11 +-
 .../src/dashboard/stylesheets/hover-menu.less      |     95 -
 .../src/dashboard/stylesheets/index.less           |      3 +-
 superset-frontend/src/dashboard/types.ts           |      4 +
 .../src/dashboard/util/activeDashboardFilters.js   |     13 +-
 .../util/charts/getFormDataWithExtraFilters.ts     |     15 +-
 superset-frontend/src/dashboard/util/constants.ts  |      1 +
 .../util/filterboxMigrationHelper.test.ts          |    144 +
 .../src/dashboard/util/filterboxMigrationHelper.ts |    526 +
 .../dashboard/util/getComponentWidthFromDrop.js    |     42 +-
 .../dashboard/util/getFilterScopeFromNodesTree.js  |      7 +-
 .../dashboard/util/getLeafComponentIdFromPath.js   |      2 +-
 .../src/dashboard/util/injectCustomCss.ts          |      2 +-
 .../src/dashboard/util/newEntitiesFromDrop.js      |      2 +-
 superset-frontend/src/dataMask/actions.ts          |     21 +-
 superset-frontend/src/dataMask/reducer.ts          |      7 +-
 superset-frontend/src/explore/App.jsx              |     14 +-
 .../src/explore/actions/exploreActions.ts          |      5 +-
 .../src/explore/components/Control.tsx             |     15 +-
 .../explore/components/DataTableControl/index.tsx  |     34 +-
 .../DataTablesPane/DataTablesPane.test.tsx         |     49 +-
 .../explore/components/DataTablesPane/index.tsx    |    170 +-
 .../DatasourcePanel/DatasourcePanel.test.tsx       |      7 +-
 .../components/DatasourcePanel}/fixtures.tsx       |      0
 .../explore/components/DatasourcePanel/index.tsx   |     15 +-
 .../explore/components/ExploreActionButtons.tsx    |     14 +-
 .../ExploreChartHeader/ExploreChartHeader.test.tsx |    125 +
 .../index.jsx}                                     |     82 +-
 .../src/explore/components/ExploreChartPanel.jsx   |      2 +
 .../explore/components/ExploreContentPopover.tsx   |      6 -
 .../explore/components/ExploreViewContainer.jsx    |     12 +-
 .../PropertiesModal/PropertiesModal.test.tsx       |      8 +-
 .../explore/components/PropertiesModal/index.tsx   |    113 +-
 .../src/explore/components/SaveModal.tsx           |     27 +-
 .../AnnotationLayerControl/AnnotationLayer.jsx     |    112 +-
 .../AnnotationLayer.test.tsx                       |    170 +-
 .../controls/AnnotationLayerControl/index.jsx      |     19 +-
 .../components/controls/ColorMapControl.jsx        |     54 -
 .../ColorSchemeControl/ColorSchemeControl.test.tsx |     68 +
 .../index.jsx}                                     |    108 +-
 .../ConditionalFormattingControl.tsx               |      6 +-
 .../FormattingPopoverContent.tsx                   |     62 +-
 .../controls/ConditionalFormattingControl/types.ts |      2 +-
 .../DatasourceControl/DatasourceControl.test.tsx   |      1 +
 .../controls/DatasourceControl/index.jsx           |     16 +-
 .../controls/DateFilterControl/DateFilterLabel.tsx |      3 +-
 .../DateFilterControl/components/CustomFrame.tsx   |      8 +-
 .../components/DateFunctionTooltip.tsx             |      2 +-
 .../components/controls/DateFilterControl/types.ts |      1 +
 .../controls/DateFilterControl/utils/constants.ts  |     47 +-
 .../DateFilterControl/utils/dateFilterUtils.ts     |      6 +-
 .../controls/DateFilterControl/utils/dateParser.ts |     24 +-
 .../DndColumnSelectControl/ColumnSelectPopover.tsx |    240 +-
 .../ColumnSelectPopoverTrigger.tsx                 |    100 +-
 .../DndColumnSelectControl/DndColumnSelect.tsx     |     29 +-
 .../DndColumnSelectPopoverTitle.jsx                |     96 +
 .../DndFilterSelect.test.tsx                       |     19 +-
 .../DndMetricSelect.test.tsx                       |    192 +-
 .../DndColumnSelectControl/DndMetricSelect.tsx     |    111 +-
 .../DndColumnSelectControl/OptionWrapper.tsx       |     24 +-
 .../controls/DndColumnSelectControl/types.ts       |     19 +-
 .../DndColumnSelectControl/utils/optionSelector.ts |     60 +-
 .../controls/FilterBoxItemControl/index.jsx        |     13 +-
 .../controls/FilterControl/AdhocFilter/index.js    |      4 +-
 .../FilterControl/AdhocFilterControl/index.jsx     |      6 +
 .../FilterControl/AdhocFilterEditPopover/index.jsx |     62 +-
 .../index.tsx                                      |    242 +-
 .../AdhocFilterEditPopoverSqlTabContent/index.jsx  |     35 +-
 .../FilterControl/AdhocFilterOption/index.jsx      |      6 +
 .../AdhocFilterPopoverTrigger/index.tsx            |      5 +
 .../controls/FixedOrMetricControl/index.jsx        |      1 +
 .../{HiddenControl.jsx => HiddenControl.tsx}       |     25 +-
 .../controls/MetricControl/AdhocMetric.js          |     17 +-
 .../AdhocMetricEditPopover.test.tsx                |     56 +-
 .../MetricControl/AdhocMetricEditPopover/index.jsx |    205 +-
 .../controls/MetricControl/AdhocMetricOption.jsx   |      6 +-
 .../MetricControl/AdhocMetricPopoverTrigger.tsx    |      8 +-
 .../MetricControl/MetricDefinitionOption.jsx       |      3 +-
 .../MetricControl/MetricDefinitionValue.jsx        |      6 +-
 .../controls/MetricControl/MetricsControl.jsx      |     95 +-
 .../SelectAsyncControl/SelectAsyncControl.test.tsx |     38 +-
 .../controls/SelectAsyncControl/index.jsx          |     92 -
 .../controls/SelectAsyncControl/index.tsx          |    117 +
 .../explore/components/controls/SelectControl.jsx  |    287 +-
 .../explore/components/controls/SpatialControl.jsx |      1 +
 .../components/controls/TextAreaControl.jsx        |     31 +-
 .../components/controls/TextControl/index.tsx      |      6 +-
 .../TimeSeriesColumnControl.test.tsx               |     10 +-
 .../controls/TimeSeriesColumnControl/index.jsx     |     28 +-
 .../VizTypeControl/VizTypeControl.test.tsx         |     33 +-
 .../controls/VizTypeControl/VizTypeGallery.tsx     |     53 +-
 .../src/explore/components/controls/index.js       |      2 -
 superset-frontend/src/explore/constants.ts         |     28 +-
 .../src/explore/controlPanels/sections.tsx         |      6 +-
 .../src/explore/controlUtils/getControlConfig.ts   |      6 +-
 .../src/explore/controlUtils/getControlState.ts    |      5 +-
 superset-frontend/src/explore/controls.jsx         |     44 +-
 .../explore/exploreUtils/getExploreLongUrl.test.ts |     29 +-
 .../src/explore/exploreUtils/index.js              |     19 +
 superset-frontend/src/explore/main.less            |      2 +-
 .../src/explore/reducers/getInitialState.ts        |      2 +-
 superset-frontend/src/explore/reducers/index.js    |      6 +-
 .../components/GroupBy/GroupByFilterPlugin.tsx     |     18 +-
 .../src/filters/components/GroupBy/controlPanel.ts |      7 +-
 .../filters/components/Range/RangeFilterPlugin.tsx |    146 +-
 .../components/Select/SelectFilterPlugin.tsx       |    101 +-
 .../src/filters/components/Select/buildQuery.ts    |     11 +-
 .../src/filters/components/Select/controlPanel.ts  |      7 +-
 .../src/filters/components/Select/types.ts         |      2 +
 .../filters/components/Time/TimeFilterPlugin.tsx   |     39 +-
 .../src/filters/components/Time/controlPanel.ts    |      6 +-
 .../filters/components/TimeGrain/transformProps.ts |     10 +-
 .../utils_spec.ts => src/filters/utils.test.ts}    |      0
 superset-frontend/src/filters/utils.ts             |     15 -
 superset-frontend/src/messageToasts/constants.ts   |     28 -
 .../middleware/asyncEvent.test.ts}                 |      0
 .../middleware/logger.test.js}                     |      0
 .../src/middleware/loggerMiddleware.js             |      8 +-
 .../dates_spec.js => src/modules/dates.test.js}    |      0
 .../utils_spec.jsx => src/modules/utils.test.jsx}  |      0
 superset-frontend/src/preamble.ts                  |      1 +
 superset-frontend/src/profile/App.tsx              |      6 +-
 .../profile/components/App.test.tsx}               |      0
 .../profile/components/CreatedContent.test.tsx}    |      0
 .../src/profile/components/CreatedContent.tsx      |     12 +-
 .../profile/components/Favorites.test.tsx}         |      0
 .../profile/components/RecentActivity.test.tsx}    |      0
 .../profile/components/Security.test.tsx}          |      0
 .../profile/components/UserInfo.test.tsx}          |      0
 .../src/profile/components/UserInfo.tsx            |      4 +-
 .../profile/components}/fixtures.tsx               |      0
 superset-frontend/src/profile/main.less            |      2 +-
 superset-frontend/src/reduxUtils.ts                |     22 +-
 superset-frontend/src/reports/actions/reports.js   |      5 +-
 superset-frontend/src/setup/setupColors.ts         |     38 +-
 superset-frontend/src/setup/setupErrorMessages.ts  |      5 +
 .../showSavedQuery/utils.test.jsx}                 |      0
 superset-frontend/src/theme.ts                     |      4 +-
 superset-frontend/src/types/Chart.ts               |      3 +
 superset-frontend/src/utils/cacheWrapper.ts        |     28 +-
 superset-frontend/src/utils/common.test.jsx        |      1 -
 superset-frontend/src/utils/downloadAsImage.ts     |      4 +-
 .../src/utils/getControlsForVizType.test.js        |     13 +-
 superset-frontend/src/utils/hostNamesConfig.js     |     12 +-
 superset-frontend/src/utils/testUtils.ts           |     39 +-
 superset-frontend/src/views/App.tsx                |      4 +-
 .../src/views/CRUD/alert/AlertList.tsx             |     15 +-
 .../src/views/CRUD/alert/AlertReportModal.test.jsx |      2 +-
 .../src/views/CRUD/alert/AlertReportModal.test.tsx |     42 +
 .../src/views/CRUD/alert/AlertReportModal.tsx      |    184 +-
 .../src/views/CRUD/alert/ExecutionLog.tsx          |      2 +-
 .../alert/components/AlertReportCronScheduler.tsx  |    118 +-
 .../src/views/CRUD/annotation/AnnotationList.tsx   |     19 +-
 .../src/views/CRUD/annotation/AnnotationModal.tsx  |     14 +-
 .../CRUD/annotationlayers/AnnotationLayerModal.tsx |     10 +-
 .../CRUD/annotationlayers/AnnotationLayersList.tsx |     24 +-
 .../src/views/CRUD/chart/ChartList.test.jsx        |      2 +-
 .../src/views/CRUD/chart/ChartList.tsx             |    282 +-
 .../views/CRUD/csstemplates/CssTemplateModal.tsx   |      8 +-
 .../views/CRUD/csstemplates/CssTemplatesList.tsx   |     23 +-
 .../views/CRUD/dashboard/DashboardList.test.jsx    |      2 +-
 .../src/views/CRUD/dashboard/DashboardList.tsx     |    179 +-
 .../components/SyntaxHighlighterCopy/index.tsx     |      2 +-
 .../views/CRUD/data/database/DatabaseList.test.jsx |     14 +-
 .../src/views/CRUD/data/database/DatabaseList.tsx  |     19 +-
 .../DatabaseModal/DatabaseConnectionForm.tsx       |    553 -
 .../DatabaseConnectionForm/CommonParameters.tsx    |    207 +
 .../DatabaseConnectionForm/EncryptedField.tsx      |    198 +
 .../DatabaseConnectionForm/TableCatalog.tsx        |    104 +
 .../DatabaseConnectionForm/ValidatedInputField.tsx |     62 +
 .../DatabaseModal/DatabaseConnectionForm/index.tsx |    172 +
 .../data/database/DatabaseModal/ExtraOptions.tsx   |     10 +-
 .../data/database/DatabaseModal/index.test.jsx     |      5 +
 .../CRUD/data/database/DatabaseModal/index.tsx     |    123 +-
 .../CRUD/data/database/DatabaseModal/styles.ts     |     12 +-
 .../src/views/CRUD/data/database/types.ts          |     16 +-
 .../views/CRUD/data/dataset/AddDatasetModal.tsx    |     64 +-
 .../views/CRUD/data/dataset/DatasetList.test.jsx   |     12 +-
 .../src/views/CRUD/data/dataset/DatasetList.tsx    |     70 +-
 .../src/views/CRUD/data/dataset/types.ts           |      3 +-
 .../src/views/CRUD/data/query/QueryList.tsx        |     10 +-
 .../views/CRUD/data/query/QueryPreviewModal.tsx    |     20 +-
 .../CRUD/data/savedquery/SavedQueryList.test.jsx   |     16 +-
 .../views/CRUD/data/savedquery/SavedQueryList.tsx  |     17 +-
 .../data/savedquery/SavedQueryPreviewModal.tsx     |    129 +-
 superset-frontend/src/views/CRUD/hooks.ts          |     14 +-
 superset-frontend/src/views/CRUD/utils.tsx         |     71 +-
 .../src/views/CRUD/welcome/ChartTable.tsx          |      6 +-
 .../src/views/CRUD/welcome/DashboardTable.tsx      |      7 +-
 .../src/views/CRUD/welcome/SavedQueries.tsx        |      2 +-
 .../src/views/CRUD/welcome/Welcome.tsx             |      2 +-
 superset-frontend/src/views/menu.tsx               |      7 +-
 superset-frontend/src/views/store.ts               |      9 +-
 .../src/visualizations/FilterBox/FilterBox.less    |      2 +-
 .../FilterBox/FilterBoxChartPlugin.js              |      5 +-
 .../TimeTable/TimeTableChartPlugin.js              |      2 +-
 superset-frontend/tsconfig.json                    |      2 +-
 superset-frontend/webpack.config.js                |    133 +-
 superset-websocket/Dockerfile                      |      2 +-
 superset-websocket/package-lock.json               |   8654 +-
 superset-websocket/package.json                    |     34 +-
 superset-websocket/spec/index.test.ts              |     30 +-
 superset-websocket/src/index.ts                    |      2 +-
 superset-websocket/utils/client-ws-app/app.js      |      2 +-
 .../utils/client-ws-app/package-lock.json          |   1969 +-
 .../utils/client-ws-app/package.json               |     12 +-
 .../client-ws-app/views/{error.jade => error.pug}  |      0
 .../client-ws-app/views/{index.jade => index.pug}  |      0
 .../views/{layout.jade => layout.pug}              |      0
 superset/annotation_layers/annotations/schemas.py  |     22 +-
 superset/annotation_layers/schemas.py              |      2 +-
 superset/charts/api.py                             |    339 +-
 superset/charts/dao.py                             |      1 +
 .../charts => superset/charts/data}/__init__.py    |      0
 superset/charts/data/api.py                        |    390 +
 .../charts/{commands/data.py => data/commands.py}  |     46 +-
 .../charts/data/query_context_cache_loader.py      |     20 +-
 superset/charts/post_processing.py                 |     27 +-
 superset/charts/schemas.py                         |     17 +-
 superset/cli.py                                    |     27 +-
 superset/commands/exceptions.py                    |     22 +-
 superset/commands/export.py                        |      6 +-
 superset/commands/importers/v1/examples.py         |      8 +-
 .../common/chart_data.py                           |     36 +-
 .../common/db_query_status.py                      |     26 +-
 .../v1/utils.py => common/not_authrized_object.py} |     35 +-
 superset/common/query_actions.py                   |     15 +-
 superset/common/query_context.py                   |     69 +-
 superset/common/query_object.py                    |     59 +-
 .../common/request_contexed_based.py               |     35 +-
 superset/common/utils.py                           |     12 +-
 superset/config.py                                 |     24 +-
 superset/connectors/base/models.py                 |     43 +-
 superset/connectors/druid/models.py                |      4 +-
 superset/connectors/sqla/models.py                 |    276 +-
 superset/connectors/sqla/views.py                  |      9 +
 superset/constants.py                              |      2 +-
 superset/dao/base.py                               |     35 +
 superset/dashboards/commands/exceptions.py         |     11 +-
 .../dashboards/filter_sets}/__init__.py            |      0
 superset/dashboards/filter_sets/api.py             |    387 +
 .../dashboards/filter_sets/commands}/__init__.py   |      0
 superset/dashboards/filter_sets/commands/base.py   |     91 +
 superset/dashboards/filter_sets/commands/create.py |     78 +
 superset/dashboards/filter_sets/commands/delete.py |     56 +
 .../dashboards/filter_sets/commands/exceptions.py  |     94 +
 superset/dashboards/filter_sets/commands/update.py |     56 +
 .../dashboards/filter_sets/consts.py               |     26 +-
 superset/dashboards/filter_sets/dao.py             |     64 +
 superset/dashboards/filter_sets/filters.py         |     58 +
 superset/dashboards/filter_sets/schemas.py         |     93 +
 superset/databases/api.py                          |     19 +-
 superset/databases/commands/export.py              |     17 +-
 superset/databases/commands/importers/v1/utils.py  |      7 +
 superset/databases/dao.py                          |     10 +-
 superset/databases/schemas.py                      |     54 +-
 superset/datasets/api.py                           |      3 +-
 superset/datasets/commands/importers/v1/utils.py   |     16 +-
 superset/datasets/commands/update.py               |      4 +-
 superset/datasets/dao.py                           |     29 +-
 superset/datasets/schemas.py                       |      2 +
 superset/db_engine_specs/__init__.py               |     11 +-
 superset/db_engine_specs/ascend.py                 |      2 +-
 superset/db_engine_specs/athena.py                 |      2 +-
 superset/db_engine_specs/base.py                   |     12 +-
 superset/db_engine_specs/bigquery.py               |    140 +-
 superset/db_engine_specs/clickhouse.py             |      4 +-
 superset/db_engine_specs/crate.py                  |      2 +-
 superset/db_engine_specs/databricks.py             |     25 +-
 superset/db_engine_specs/db2.py                    |      2 +-
 superset/db_engine_specs/dremio.py                 |      2 +-
 superset/db_engine_specs/drill.py                  |     22 +-
 superset/db_engine_specs/druid.py                  |     55 +-
 superset/db_engine_specs/exasol.py                 |      2 +-
 .../db_engine_specs/{impala.py => firebolt.py}     |     45 +-
 superset/db_engine_specs/gsheets.py                |     23 +-
 superset/db_engine_specs/hana.py                   |      2 +-
 superset/db_engine_specs/hive.py                   |     13 +-
 superset/db_engine_specs/impala.py                 |      2 +-
 superset/db_engine_specs/kylin.py                  |      2 +-
 superset/db_engine_specs/mssql.py                  |     29 +-
 superset/db_engine_specs/mysql.py                  |      2 +-
 superset/db_engine_specs/netezza.py                |      2 +-
 superset/db_engine_specs/oracle.py                 |      2 +-
 superset/db_engine_specs/pinot.py                  |      4 +-
 superset/db_engine_specs/postgres.py               |      4 +-
 superset/db_engine_specs/presto.py                 |      4 +-
 superset/db_engine_specs/rockset.py                |      2 +-
 superset/db_engine_specs/snowflake.py              |    124 +-
 superset/db_engine_specs/sqlite.py                 |      2 +-
 superset/db_engine_specs/teradata.py               |      2 +-
 superset/db_engine_specs/trino.py                  |      2 +-
 superset/errors.py                                 |      6 +
 superset/examples/bart_lines.py                    |      9 +-
 superset/examples/birth_names.py                   |     55 +-
 .../examples/configs/charts/Quarterly_Sales.yaml   |      2 +-
 .../charts/Quarterly_Sales_By_Product_Line.yaml    |      2 +-
 .../dashboards/COVID_Vaccine_Dashboard.yaml        |      2 +-
 superset/examples/country_map.py                   |      9 +-
 superset/examples/energy.py                        |      9 +-
 superset/examples/flights.py                       |      9 +-
 superset/examples/long_lat.py                      |      9 +-
 superset/examples/multiformat_time_series.py       |      9 +-
 superset/examples/paris.py                         |      9 +-
 superset/examples/random_time_series.py            |      9 +-
 superset/examples/sf_population_polygons.py        |      9 +-
 superset/examples/utils.py                         |      2 +-
 superset/examples/world_bank.py                    |     11 +-
 superset/exceptions.py                             |     25 +-
 superset/initialization/__init__.py                |     12 +-
 superset/jinja_context.py                          |      8 +
 ...e5f1dacd_rename_to_schemas_allowed_for_file_.py |     89 +
 ...1091c0ef16_add_extra_column_to_columns_model.py |     33 +-
 .../32646df09c64_update_time_grain_sqla.py         |     72 +
 .../versions/3ebe0993c770_filterset_table.py       |     56 +
 ...453f4e2e_migrate_timeseries_limit_metric_to_.py |     74 +
 .../versions/b92d69a6643c_rename_csv_to_file.py    |     69 +
 superset/models/core.py                            |     20 +-
 superset/models/dashboard.py                       |     35 +
 superset/models/filter_set.py                      |    106 +
 superset/models/helpers.py                         |     32 +-
 superset/models/slice.py                           |     13 +
 superset/models/sql_lab.py                         |     10 +-
 superset/reports/commands/execute.py               |      4 +-
 superset/reports/schemas.py                        |     13 +-
 superset/result_set.py                             |      4 +-
 superset/security/manager.py                       |      6 +-
 superset/sql_lab.py                                |     33 +-
 superset/sql_parse.py                              |     33 +-
 superset/sqllab/command.py                         |    410 +-
 superset/sqllab/exceptions.py                      |    100 +
 superset/sqllab/execution_context_convertor.py     |     67 +
 .../sqllab/limiting_factor.py                      |     15 +-
 superset/sqllab/query_render.py                    |    153 +
 superset/sqllab/sql_json_executer.py               |    207 +
 .../{utils => sqllab}/sqllab_execution_context.py  |     11 +-
 superset/sqllab/utils.py                           |     47 +
 .../database.py => superset/sqllab/validators.py   |     21 +-
 superset/tasks/async_queries.py                    |     23 +-
 superset/tasks/cron_util.py                        |     14 +-
 superset/translations/de/LC_MESSAGES/messages.json |      8 +-
 superset/translations/de/LC_MESSAGES/messages.po   |      6 +-
 superset/translations/en/LC_MESSAGES/messages.json |      8 +-
 superset/translations/en/LC_MESSAGES/messages.po   |      6 +-
 superset/translations/es/LC_MESSAGES/messages.json |      8 +-
 superset/translations/es/LC_MESSAGES/messages.po   |      6 +-
 superset/translations/fr/LC_MESSAGES/messages.json |   4066 +-
 superset/translations/fr/LC_MESSAGES/messages.po   |  11290 +-
 superset/translations/it/LC_MESSAGES/messages.json |      8 +-
 superset/translations/it/LC_MESSAGES/messages.po   |      6 +-
 superset/translations/ja/LC_MESSAGES/messages.json |      8 +-
 superset/translations/ja/LC_MESSAGES/messages.po   |      6 +-
 superset/translations/ko/LC_MESSAGES/messages.json |      8 +-
 superset/translations/ko/LC_MESSAGES/messages.po   |      6 +-
 superset/translations/messages.pot                 |      6 +-
 superset/translations/pt/LC_MESSAGES/message.json  |      8 +-
 superset/translations/pt/LC_MESSAGES/message.po    |      6 +-
 superset/translations/pt/LC_MESSAGES/messages.json |      2 +-
 .../translations/pt_BR/LC_MESSAGES/messages.json   |     10 +-
 .../translations/pt_BR/LC_MESSAGES/messages.po     |     10 +-
 superset/translations/ru/LC_MESSAGES/messages.json |      8 +-
 superset/translations/ru/LC_MESSAGES/messages.po   |      6 +-
 superset/translations/sl/LC_MESSAGES/messages.json |     10 +-
 superset/translations/sl/LC_MESSAGES/messages.po   |     10 +-
 superset/translations/zh/LC_MESSAGES/messages.json |     12 +-
 superset/translations/zh/LC_MESSAGES/messages.po   |     12 +-
 superset/typing.py                                 |      8 +
 superset/utils/core.py                             |    105 +-
 superset/utils/date_parser.py                      |      9 +-
 superset/utils/memoized.py                         |      4 +-
 superset/utils/pandas_postprocessing.py            |     69 +-
 superset/utils/webdriver.py                        |     17 +-
 superset/views/base.py                             |      8 +-
 superset/views/core.py                             |    156 +-
 superset/views/dashboard/views.py                  |     12 +-
 superset/views/database/forms.py                   |    136 +-
 superset/views/database/mixins.py                  |     12 +-
 superset/views/database/validators.py              |      6 +-
 superset/views/database/views.py                   |     30 +-
 superset/views/redirects.py                        |      2 +-
 superset/views/utils.py                            |      3 +-
 superset/viz.py                                    |    165 +-
 tests/integration_tests/access_tests.py            |     32 +-
 .../annotation_layers/api_tests.py                 |     89 +-
 .../annotation_layers/fixtures.py                  |      1 +
 tests/integration_tests/base_tests.py              |      6 +-
 tests/integration_tests/cache_tests.py             |      2 +-
 tests/integration_tests/cachekeys/api_tests.py     |     10 +-
 tests/integration_tests/celery_tests.py            |      6 +-
 tests/integration_tests/charts/api_tests.py        |    833 +-
 .../charts/data}/__init__.py                       |      0
 tests/integration_tests/charts/data/api_tests.py   |    849 +
 tests/integration_tests/cli_tests.py               |    150 +
 tests/integration_tests/core_tests.py              |     22 +-
 tests/integration_tests/csv_upload_tests.py        |    111 +-
 tests/integration_tests/dashboard_utils.py         |      3 +
 .../dashboards/filter_sets}/__init__.py            |      0
 .../dashboards/filter_sets/conftest.py             |    322 +
 .../dashboards/filter_sets/consts.py               |     18 +-
 .../dashboards/filter_sets/create_api_tests.py     |    630 +
 .../dashboards/filter_sets/delete_api_tests.py     |    210 +
 .../dashboards/filter_sets/get_api_tests.py        |    130 +
 .../dashboards/filter_sets/update_api_tests.py     |    520 +
 .../dashboards/filter_sets/utils.py                |    102 +
 .../dashboards/superset_factory_util.py            |     48 +-
 tests/integration_tests/databases/api_tests.py     |     33 +-
 .../integration_tests/databases/commands_tests.py  |     45 +-
 tests/integration_tests/datasets/api_tests.py      |     33 +-
 tests/integration_tests/datasets/commands_tests.py |      7 +-
 tests/integration_tests/datasource_tests.py        |     20 +-
 .../db_engine_specs/base_engine_spec_tests.py      |     40 +-
 .../db_engine_specs/bigquery_tests.py              |     48 +-
 .../db_engine_specs/druid_tests.py                 |      6 +-
 .../db_engine_specs/firebolt_tests.py              |     39 +
 .../db_engine_specs/mssql_tests.py                 |      2 +-
 .../fixtures/birth_names_dashboard.py              |     13 +-
 tests/integration_tests/fixtures/database.py       |      2 +-
 tests/integration_tests/fixtures/dataframes.py     |     16 +
 tests/integration_tests/fixtures/datasource.py     |      8 +-
 .../fixtures/world_bank_dashboard.py               |      7 +-
 tests/integration_tests/import_export_tests.py     |     84 +-
 tests/integration_tests/jinja_context_tests.py     |      5 +
 tests/integration_tests/model_tests.py             |     39 +-
 .../pandas_postprocessing_tests.py                 |    130 +-
 tests/integration_tests/queries/api_tests.py       |      3 +-
 tests/integration_tests/query_context_tests.py     |    110 +-
 tests/integration_tests/reports/api_tests.py       |     33 +
 tests/integration_tests/reports/commands_tests.py  |      3 +-
 tests/integration_tests/security_tests.py          |      9 +-
 tests/integration_tests/sqla_models_tests.py       |    108 +-
 tests/integration_tests/sqllab_tests.py            |     29 +-
 tests/integration_tests/superset_test_config.py    |      2 +-
 .../integration_tests/tasks/async_queries_tests.py |      4 +-
 tests/integration_tests/utils/date_parser_tests.py |      4 +
 tests/integration_tests/utils_tests.py             |     45 +-
 .../annotation_layers/fixtures.py}                 |     14 +-
 tests/unit_tests/annotation_layers/schema_tests.py |    157 +
 tests/unit_tests/charts/test_post_processing.py    |     56 +-
 tests/unit_tests/core_tests.py                     |      4 -
 tests/unit_tests/db_engine_specs/test_bigquery.py  |    147 +
 tests/unit_tests/db_engine_specs/test_drill.py     |     67 +
 tests/unit_tests/db_engine_specs/test_gsheets.py   |      6 +-
 tests/unit_tests/sql_parse_tests.py                |     93 +
 tests/unit_tests/tasks/test_cron_util.py           |     38 +
 1147 files changed, 104482 insertions(+), 91892 deletions(-)
 create mode 100644 docs/src/pages/docs/Connecting to Databases/databricks.mdx
 create mode 100644 docs/src/pages/docs/Connecting to Databases/firebolt.mdx
 copy RELEASING/Dockerfile.make_docs => scripts/ci_check_npm_lock_version.sh (68%)
 mode change 100644 => 100755
 create mode 100644 superset-frontend/cypress-base/cypress/support/directories.ts
 delete mode 100644 superset-frontend/spec/javascripts/components/CachedLabel_spec.jsx
 delete mode 100644 superset-frontend/spec/javascripts/components/ColumnTypeLabel_spec.jsx
 copy superset-frontend/spec/javascripts/dashboard/components/{MissingChart_spec.jsx => MissingChart_spec.tsx} (56%)
 delete mode 100644 superset-frontend/spec/javascripts/dashboard/components/RefreshIntervalModal_spec.jsx
 create mode 100644 superset-frontend/spec/javascripts/dashboard/components/RefreshIntervalModal_spec.tsx
 rename superset-frontend/spec/javascripts/dashboard/components/menu/{HoverMenu_spec.jsx => HoverMenu_spec.tsx} (100%)
 copy superset-frontend/spec/javascripts/dashboard/components/resizable/{ResizableContainer_spec.jsx => ResizableContainer_spec.tsx} (50%)
 rename superset-frontend/spec/javascripts/dashboard/components/resizable/{ResizableHandle_spec.jsx => ResizableHandle_spec.tsx} (68%)
 delete mode 100644 superset-frontend/spec/javascripts/datasource/DatasourceEditor_spec.jsx
 rename superset-frontend/spec/javascripts/explore/components/{AggregateOption_spec.jsx => AggregateOption_spec.tsx} (81%)
 rename superset-frontend/spec/javascripts/explore/components/{CheckboxControl_spec.jsx => CheckboxControl_spec.tsx} (61%)
 delete mode 100644 superset-frontend/spec/javascripts/explore/components/ColorPickerControl_spec.jsx
 create mode 100644 superset-frontend/spec/javascripts/explore/components/ColorPickerControl_spec.tsx
 delete mode 100644 superset-frontend/spec/javascripts/messageToasts/.eslintrc
 rename superset-frontend/{spec/javascripts/sqllab/actions/sqlLab_spec.js => src/SqlLab/actions/sqlLab.test.js} (96%)
 rename superset-frontend/src/SqlLab/components/{AceEditorWrapper.tsx => AceEditorWrapper/index.tsx} (95%)
 rename superset-frontend/{spec/javascripts/sqllab/App_spec.jsx => src/SqlLab/components/App/App.test.jsx} (100%)
 rename superset-frontend/src/SqlLab/components/{App.jsx => App/index.jsx} (84%)
 rename superset-frontend/{spec/javascripts/sqllab/ColumnElement_spec.tsx => src/SqlLab/components/ColumnElement/ColumnElement.test.tsx} (97%)
 rename superset-frontend/src/SqlLab/components/{ColumnElement.tsx => ColumnElement/index.tsx} (100%)
 rename superset-frontend/src/SqlLab/components/{EstimateQueryCostButton.jsx => EstimateQueryCostButton/index.jsx} (94%)
 rename superset-frontend/src/SqlLab/components/{ExploreCtasResultsButton.jsx => ExploreCtasResultsButton/index.jsx} (98%)
 rename superset-frontend/{spec/javascripts/sqllab/ExploreResultsButton_spec.jsx => src/SqlLab/components/ExploreResultsButton/ExploreResultsButton.test.jsx} (98%)
 rename superset-frontend/src/SqlLab/components/{ExploreResultsButton.jsx => ExploreResultsButton/index.jsx} (97%)
 rename superset-frontend/{spec/javascripts/sqllab/HighlightedSql_spec.jsx => src/SqlLab/components/HighlightedSql/HighlightedSql.test.jsx} (100%)
 rename superset-frontend/src/SqlLab/components/{HighlightedSql.tsx => HighlightedSql/index.tsx} (98%)
 rename superset-frontend/{spec/javascripts/sqllab/QueryAutoRefresh_spec.jsx => src/SqlLab/components/QueryAutoRefresh/QueryAutoRefresh.test.jsx} (96%)
 rename superset-frontend/src/SqlLab/components/{QueryAutoRefresh.jsx => QueryAutoRefresh/index.jsx} (98%)
 rename superset-frontend/src/SqlLab/components/{QueryHistory.tsx => QueryHistory/index.tsx} (93%)
 rename superset-frontend/{spec/javascripts/sqllab/QuerySearch_spec.jsx => src/SqlLab/components/QuerySearch/QuerySearch.test.jsx} (99%)
 rename superset-frontend/src/SqlLab/components/{QuerySearch.tsx => QuerySearch/index.tsx} (95%)
 rename superset-frontend/{spec/javascripts/sqllab/QueryStateLabel_spec.jsx => src/SqlLab/components/QueryStateLabel/QueryStateLabel.test.jsx} (100%)
 rename superset-frontend/src/SqlLab/components/{QueryStateLabel.tsx => QueryStateLabel/index.tsx} (92%)
 rename superset-frontend/{spec/javascripts/sqllab/QueryTable_spec.jsx => src/SqlLab/components/QueryTable/QueryTable.test.jsx} (94%)
 rename superset-frontend/{spec/javascripts/sqllab/ResultSet_spec.jsx => src/SqlLab/components/ResultSet/ResultSet.test.jsx} (98%)
 rename superset-frontend/src/SqlLab/components/{ResultSet.tsx => ResultSet/index.tsx} (91%)
 rename superset-frontend/src/SqlLab/components/{RunQueryActionButton.tsx => RunQueryActionButton/index.tsx} (100%)
 rename superset-frontend/{spec/javascripts/sqllab/SaveDatasetModal_spec.tsx => src/SqlLab/components/SaveDatasetModal/SaveDatasetModal.test.tsx} (100%)
 rename superset-frontend/src/SqlLab/components/{SaveDatasetModal.tsx => SaveDatasetModal/index.tsx} (100%)
 rename superset-frontend/{spec/javascripts/sqllab/SaveQuery_spec.jsx => src/SqlLab/components/SaveQuery/SaveQuery.test.jsx} (100%)
 rename superset-frontend/src/SqlLab/components/{SaveQuery.tsx => SaveQuery/index.tsx} (100%)
 rename superset-frontend/src/SqlLab/components/{ => ScheduleQueryButton}/ScheduleQueryButton.less (100%)
 rename superset-frontend/src/SqlLab/components/{ScheduleQueryButton.tsx => ScheduleQueryButton/index.tsx} (100%)
 rename superset-frontend/{spec/javascripts/sqllab/ShareSqlLabQuery_spec.jsx => src/SqlLab/components/ShareSqlLabQuery/ShareSqlLabQuery.test.jsx} (100%)
 rename superset-frontend/src/SqlLab/components/{ShareSqlLabQuery.tsx => ShareSqlLabQuery/index.tsx} (92%)
 rename superset-frontend/src/SqlLab/components/{ShowSQL.tsx => ShowSQL/index.tsx} (93%)
 rename superset-frontend/{spec/javascripts/sqllab/SouthPane_spec.jsx => src/SqlLab/components/SouthPane/SouthPane.test.jsx} (98%)
 rename superset-frontend/src/SqlLab/components/SouthPane/{SouthPane.tsx => index.tsx} (100%)
 rename superset-frontend/{spec/javascripts/sqllab/SqlEditor_spec.jsx => src/SqlLab/components/SqlEditor/SqlEditor.test.jsx} (95%)
 rename superset-frontend/src/SqlLab/components/{SqlEditor.jsx => SqlEditor/index.jsx} (95%)
 rename superset-frontend/{spec/javascripts/sqllab/SqlEditorLeftBar_spec.jsx => src/SqlLab/components/SqlEditorLeftBar/SqlEditorLeftBar.test.jsx} (89%)
 rename superset-frontend/src/SqlLab/components/{SqlEditorLeftBar.jsx => SqlEditorLeftBar/index.jsx} (95%)
 rename superset-frontend/{spec/javascripts/sqllab/TabStatusIcon_spec.jsx => src/SqlLab/components/TabStatusIcon/TabStatusIcon.test.jsx} (100%)
 rename superset-frontend/src/SqlLab/components/{TabStatusIcon.tsx => TabStatusIcon/index.tsx} (95%)
 rename superset-frontend/{spec/javascripts/sqllab/TabbedSqlEditors_spec.jsx => src/SqlLab/components/TabbedSqlEditors/TabbedSqlEditors.test.jsx} (99%)
 rename superset-frontend/src/SqlLab/components/{TabbedSqlEditors.jsx => TabbedSqlEditors/index.jsx} (98%)
 rename superset-frontend/{spec/javascripts/sqllab/TableElement_spec.jsx => src/SqlLab/components/TableElement/TableElement.test.jsx} (98%)
 rename superset-frontend/src/SqlLab/components/{TableElement.tsx => TableElement/index.tsx} (95%)
 rename superset-frontend/{spec/javascripts/sqllab/TemplateParamsEditor_spec.tsx => src/SqlLab/components/TemplateParamsEditor/TemplateParamsEditor.test.tsx} (96%)
 rename superset-frontend/src/SqlLab/components/{TemplateParamsEditor.tsx => TemplateParamsEditor/index.tsx} (100%)
 rename superset-frontend/{spec/javascripts/sqllab => src/SqlLab}/fixtures.ts (100%)
 rename superset-frontend/{spec/javascripts/sqllab/reducers/sqlLab_spec.js => src/SqlLab/reducers/sqlLab.test.js} (99%)
 rename superset-frontend/{spec/javascripts/sqllab/utils/emptyQueryResults_spec.js => src/SqlLab/utils/emptyQueryResults.test.js} (100%)
 delete mode 100644 superset-frontend/src/api/dataset.ts
 rename superset-frontend/{ => src/assets}/images/apache-kylin.png (100%)
 rename superset-frontend/{ => src/assets}/images/apache_feather.png (100%)
 rename superset-frontend/{ => src/assets}/images/babies.png (100%)
 rename superset-frontend/{ => src/assets}/images/bubble.png (100%)
 rename superset-frontend/{ => src/assets}/images/chart-card-fallback.svg (100%)
 rename superset-frontend/{ => src/assets}/images/clickhouse.png (100%)
 rename superset-frontend/{ => src/assets}/images/cloud.png (100%)
 rename superset-frontend/{ => src/assets}/images/create_role.png (100%)
 rename superset-frontend/{ => src/assets}/images/dash.png (100%)
 rename superset-frontend/{ => src/assets}/images/dashboard-card-fallback.svg (100%)
 rename superset-frontend/{ => src/assets}/images/db2.png (100%)
 rename superset-frontend/{ => src/assets}/images/druid.png (100%)
 rename superset-frontend/{ => src/assets}/images/druid_agg.png (100%)
 rename superset-frontend/{ => src/assets}/images/empty-charts.svg (100%)
 rename superset-frontend/{ => src/assets}/images/empty-dashboard.svg (100%)
 rename superset-frontend/{ => src/assets}/images/empty-queries.svg (100%)
 rename superset-frontend/{ => src/assets}/images/empty-query.svg (100%)
 rename superset-frontend/{ => src/assets}/images/empty.svg (100%)
 rename superset-frontend/{ => src/assets}/images/error404.png (100%)
 rename superset-frontend/{ => src/assets}/images/error500.png (100%)
 rename superset-frontend/{ => src/assets}/images/exasol.png (100%)
 rename superset-frontend/{ => src/assets}/images/favicon.png (100%)
 rename superset-frontend/{ => src/assets}/images/firebird.png (100%)
 rename superset-frontend/{ => src/assets}/images/google-biquery.png (100%)
 rename superset-frontend/{ => src/assets}/images/greenplum.png (100%)
 rename superset-frontend/{ => src/assets}/images/hologres.png (100%)
 rename superset-frontend/{ => src/assets}/images/icons/alert.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/alert_solid.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/alert_solid_small.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/ballot.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/binoculars.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/bolt.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/bolt_small.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/bolt_small_run.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/calendar.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/cancel-x.svg (97%)
 rename superset-frontend/{ => src/assets}/images/icons/cancel.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/cancel_solid.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/card_view.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/cards.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/cards_locked.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/caret_down.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/caret_left.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/caret_right.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/caret_up.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/category.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/certified.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/check.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/checkbox-half.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/checkbox-off.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/checkbox-on.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/circle.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/circle_check.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/circle_check_solid.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/clock.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/close.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/code.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/cog.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/collapse.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/color_palette.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/components.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/copy.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/cross-filter-badge.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/cursor_target.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/database.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/dataset_physical.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/dataset_virtual.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/dataset_virtual_greyscale.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/default_db_image.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/download.svg (100%)
 create mode 100644 superset-frontend/src/assets/images/icons/drag.svg
 rename superset-frontend/{ => src/assets}/images/icons/edit.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/edit_alt.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/email.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/error.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/error_solid.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/error_solid_small.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/error_solid_small_red.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/exclamation.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/expand.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/eye.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/eye_slash.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/favorite-selected.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/favorite-unselected.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/favorite_small_selected.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/field_abc.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/field_boolean.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/field_date.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/field_derived.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/field_num.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/field_struct.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/file.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/filter.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/filter_small.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/folder.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/full.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/function_x.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/gear.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/grid.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/image.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/import.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/info-solid.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/info.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/info_solid_small.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/join.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/keyboard.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/layers.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/lightbulb.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/link.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/list.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/list_view.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/location.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/lock_locked.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/lock_unlocked.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/map.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/message.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/minus.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/minus_solid.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/more_horiz.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/more_vert.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/move.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/nav_charts.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/nav_dashboard.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/nav_data.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/nav_explore.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/nav_home.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/nav_lab.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/note.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/offline.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/paperclip.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/placeholder.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/plus.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/plus_large.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/plus_small.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/plus_solid.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/queued.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/refresh.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/running.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/save.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/search.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/server.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/share.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/slack.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/sort.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/sort_asc.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/sort_desc.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/sql.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/table.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/tag.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/tags.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/transparent.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/trash.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/triangle_change.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/triangle_down.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/triangle_up.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/up-level.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/user.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/warning.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/warning_solid.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/x-large.svg (100%)
 rename superset-frontend/{ => src/assets}/images/icons/x-small.svg (100%)
 rename superset-frontend/{ => src/assets}/images/loading.gif (100%)
 rename superset-frontend/{ => src/assets}/images/mariadb.png (100%)
 rename superset-frontend/{ => src/assets}/images/monet-db.png (100%)
 rename superset-frontend/{ => src/assets}/images/mssql-server.png (100%)
 rename superset-frontend/{ => src/assets}/images/mysql.png (100%)
 rename superset-frontend/{ => src/assets}/images/netezza.png (100%)
 rename superset-frontend/{ => src/assets}/images/noimg.png (100%)
 rename superset-frontend/{ => src/assets}/images/oracle.png (100%)
 rename superset-frontend/{ => src/assets}/images/postgresql.png (100%)
 rename superset-frontend/{ => src/assets}/images/presto.png (100%)
 rename superset-frontend/{ => src/assets}/images/redshift.png (100%)
 rename superset-frontend/{ => src/assets}/images/s.png (100%)
 rename superset-frontend/{ => src/assets}/images/screenshots/bank_dash.png (100%)
 rename superset-frontend/{ => src/assets}/images/screenshots/deckgl_dash.png (100%)
 rename superset-frontend/{ => src/assets}/images/screenshots/explore.jpg (100%)
 rename superset-frontend/{ => src/assets}/images/screenshots/explore.png (100%)
 create mode 100644 superset-frontend/src/assets/images/screenshots/explore_visualizations.jpg
 rename superset-frontend/{ => src/assets}/images/screenshots/gallery.jpg (100%)
 rename superset-frontend/{ => src/assets}/images/screenshots/gallery.png (100%)
 rename superset-frontend/{ => src/assets}/images/screenshots/geospatial_dash.jpg (100%)
 rename superset-frontend/{ => src/assets}/images/screenshots/slack_dash.jpg (100%)
 rename superset-frontend/{ => src/assets}/images/screenshots/sql_lab.jpg (100%)
 rename superset-frontend/{ => src/assets}/images/screenshots/sqllab.png (100%)
 create mode 100644 superset-frontend/src/assets/images/screenshots/visualizations.png
 rename superset-frontend/{ => src/assets}/images/snowflake.png (100%)
 rename superset-frontend/{ => src/assets}/images/sqlite.png (100%)
 rename superset-frontend/{ => src/assets}/images/star-circle.svg (100%)
 rename superset-frontend/{ => src/assets}/images/superset-logo-horiz.png (100%)
 rename superset-frontend/{ => src/assets}/images/superset.png (100%)
 rename superset-frontend/{ => src/assets}/images/superset_screenshot.png (100%)
 rename superset-frontend/{ => src/assets}/images/sybase.png (100%)
 rename superset-frontend/{ => src/assets}/images/trino.png (100%)
 rename superset-frontend/{ => src/assets}/images/tutorial/add_db.png (100%)
 rename superset-frontend/{ => src/assets}/images/tutorial/tutorial_01_sources_database.png (100%)
 rename superset-frontend/{ => src/assets}/images/tutorial/tutorial_02_add_database.png (100%)
 rename superset-frontend/{ => src/assets}/images/tutorial/tutorial_03_database_name.png (100%)
 rename superset-frontend/{ => src/assets}/images/tutorial/tutorial_04_sqlalchemy_connection_string.png (100%)
 rename superset-frontend/{ => src/assets}/images/tutorial/tutorial_05_connection_popup.png (100%)
 rename superset-frontend/{ => src/assets}/images/tutorial/tutorial_06_list_of_tables.png (100%)
 rename superset-frontend/{ => src/assets}/images/tutorial/tutorial_07_save_button.png (100%)
 rename superset-frontend/{ => src/assets}/images/tutorial/tutorial_08_sources_tables.png (100%)
 rename superset-frontend/{ => src/assets}/images/tutorial/tutorial_09_add_new_table.png (100%)
 rename superset-frontend/{ => src/assets}/images/tutorial/tutorial_10_table_name.png (100%)
 rename superset-frontend/{ => src/assets}/images/tutorial/tutorial_11_choose_db.png (100%)
 rename superset-frontend/{ => src/assets}/images/tutorial/tutorial_12_table_creation_success_msg.png (100%)
 rename superset-frontend/{ => src/assets}/images/tutorial/tutorial_13_edit_table_config.png (100%)
 rename superset-frontend/{ => src/assets}/images/tutorial/tutorial_14_field_config.png (100%)
 rename superset-frontend/{ => src/assets}/images/tutorial/tutorial_15_click_table_name.png (100%)
 rename superset-frontend/{ => src/assets}/images/tutorial/tutorial_16_datasource_chart_type.png (100%)
 rename superset-frontend/{ => src/assets}/images/tutorial/tutorial_17_choose_time_range.png (100%)
 rename superset-frontend/{ => src/assets}/images/tutorial/tutorial_18_choose_metric.png (100%)
 rename superset-frontend/{ => src/assets}/images/tutorial/tutorial_19_click_query.png (100%)
 rename superset-frontend/{ => src/assets}/images/tutorial/tutorial_20_count_star_result.png (100%)
 rename superset-frontend/{ => src/assets}/images/tutorial/tutorial_21_group_by.png (100%)
 rename superset-frontend/{ => src/assets}/images/tutorial/tutorial_22_group_by_result.png (100%)
 rename superset-frontend/{ => src/assets}/images/tutorial/tutorial_23_group_by_more_dimensions.png (100%)
 rename superset-frontend/{ => src/assets}/images/tutorial/tutorial_24_max_metric.png (100%)
 rename superset-frontend/{ => src/assets}/images/tutorial/tutorial_25_max_temp_filter.png (100%)
 rename superset-frontend/{ => src/assets}/images/tutorial/tutorial_26_row_limit.png (100%)
 rename superset-frontend/{ => src/assets}/images/tutorial/tutorial_27_top_10_max_temps.png (100%)
 rename superset-frontend/{ => src/assets}/images/tutorial/tutorial_28_bar_chart.png (100%)
 rename superset-frontend/{ => src/assets}/images/tutorial/tutorial_29_bar_chart_series_metrics.png (100%)
 rename superset-frontend/{ => src/assets}/images/tutorial/tutorial_30_bar_chart_results.png (100%)
 rename superset-frontend/{ => src/assets}/images/tutorial/tutorial_31_save_slice_to_dashboard.png (100%)
 rename superset-frontend/{ => src/assets}/images/tutorial/tutorial_32_save_slice_confirmation.png (100%)
 rename superset-frontend/{ => src/assets}/images/tutorial/tutorial_33_dashboard.png (100%)
 rename superset-frontend/{ => src/assets}/images/tutorial/tutorial_34_weather_dashboard.png (100%)
 rename superset-frontend/{ => src/assets}/images/tutorial/tutorial_35_slice_on_dashboard.png (100%)
 rename superset-frontend/{ => src/assets}/images/tutorial/tutorial_36_adjust_dimensions.gif (100%)
 rename superset-frontend/{ => src/assets}/images/union.png (100%)
 rename superset-frontend/{ => src/assets}/images/union.svg (100%)
 rename superset-frontend/{ => src/assets}/images/usertutorial/add_new_chart.png (100%)
 rename superset-frontend/{ => src/assets}/images/usertutorial/advanced_analytics_base.png (100%)
 rename superset-frontend/{ => src/assets}/images/usertutorial/annotation.png (100%)
 rename superset-frontend/{ => src/assets}/images/usertutorial/annotation_settings.png (100%)
 rename superset-frontend/{ => src/assets}/images/usertutorial/average_aggregate_for_cost.png (100%)
 rename superset-frontend/{ => src/assets}/images/usertutorial/blue_bar_insert_component.png (100%)
 rename superset-frontend/{ => src/assets}/images/usertutorial/chose_a_datasource.png (100%)
 rename superset-frontend/{ => src/assets}/images/usertutorial/csv_to_database_configuration.png (100%)
 rename superset-frontend/{ => src/assets}/images/usertutorial/edit-record.png (100%)
 rename superset-frontend/{ => src/assets}/images/usertutorial/edit_annotation.png (100%)
 rename superset-frontend/{ => src/assets}/images/usertutorial/filter_on_origin_country.png (100%)
 rename superset-frontend/{ => src/assets}/images/usertutorial/markdown.png (100%)
 rename superset-frontend/{ => src/assets}/images/usertutorial/no_filter_on_time_filter.png (100%)
 rename superset-frontend/{ => src/assets}/images/usertutorial/parse_dates_column.png (100%)
 rename superset-frontend/{ => src/assets}/images/usertutorial/publish_dashboard.png (100%)
 rename superset-frontend/{ => src/assets}/images/usertutorial/resample.png (100%)
 rename superset-frontend/{ => src/assets}/images/usertutorial/resize_tutorial_table_on_dashboard.png (100%)
 rename superset-frontend/{ => src/assets}/images/usertutorial/rolling_mean.png (100%)
 rename superset-frontend/{ => src/assets}/images/usertutorial/save_tutorial_table.png (100%)
 rename superset-frontend/{ => src/assets}/images/usertutorial/select_dates_pivot_table.png (100%)
 rename superset-frontend/{ => src/assets}/images/usertutorial/select_table_visualization_type.png (100%)
 rename superset-frontend/{ => src/assets}/images/usertutorial/sum_cost_column.png (100%)
 rename superset-frontend/{ => src/assets}/images/usertutorial/time_comparison_absolute_difference.png (100%)
 rename superset-frontend/{ => src/assets}/images/usertutorial/time_comparison_two_series.png (100%)
 rename superset-frontend/{ => src/assets}/images/usertutorial/tutorial_line_chart.png (100%)
 rename superset-frontend/{ => src/assets}/images/usertutorial/tutorial_pivot_table.png (100%)
 rename superset-frontend/{ => src/assets}/images/usertutorial/tutorial_table.png (100%)
 rename superset-frontend/{ => src/assets}/images/usertutorial/upload_a_csv.png (100%)
 rename superset-frontend/{ => src/assets}/images/vertica.png (100%)
 rename superset-frontend/{ => src/assets}/images/viz_thumbnails/area.png (100%)
 rename superset-frontend/{ => src/assets}/images/viz_thumbnails/bar.png (100%)
 rename superset-frontend/{ => src/assets}/images/viz_thumbnails/big_number.png (100%)
 rename superset-frontend/{ => src/assets}/images/viz_thumbnails/big_number_total.png (100%)
 rename superset-frontend/{ => src/assets}/images/viz_thumbnails/box_plot.png (100%)
 rename superset-frontend/{ => src/assets}/images/viz_thumbnails/bubble.png (100%)
 rename superset-frontend/{ => src/assets}/images/viz_thumbnails/bullet.png (100%)
 rename superset-frontend/{ => src/assets}/images/viz_thumbnails/cal_heatmap.png (100%)
 rename superset-frontend/{ => src/assets}/images/viz_thumbnails/chord.png (100%)
 rename superset-frontend/{ => src/assets}/images/viz_thumbnails/compare.png (100%)
 rename superset-frontend/{ => src/assets}/images/viz_thumbnails/country_map.png (100%)
 rename superset-frontend/{ => src/assets}/images/viz_thumbnails/deck_arc.png (100%)
 rename superset-frontend/{ => src/assets}/images/viz_thumbnails/deck_geojson.png (100%)
 rename superset-frontend/{ => src/assets}/images/viz_thumbnails/deck_grid.png (100%)
 rename superset-frontend/{ => src/assets}/images/viz_thumbnails/deck_hex.png (100%)
 rename superset-frontend/{ => src/assets}/images/viz_thumbnails/deck_multi.png (100%)
 rename superset-frontend/{ => src/assets}/images/viz_thumbnails/deck_path.png (100%)
 rename superset-frontend/{ => src/assets}/images/viz_thumbnails/deck_polygon.png (100%)
 rename superset-frontend/{ => src/assets}/images/viz_thumbnails/deck_scatter.png (100%)
 rename superset-frontend/{ => src/assets}/images/viz_thumbnails/deck_screengrid.png (100%)
 rename superset-frontend/{ => src/assets}/images/viz_thumbnails/directed_force.png (100%)
 rename superset-frontend/{ => src/assets}/images/viz_thumbnails/dist_bar.png (100%)
 rename superset-frontend/{ => src/assets}/images/viz_thumbnails/dual_line.png (100%)
 rename superset-frontend/{ => src/assets}/images/viz_thumbnails/event_flow.png (100%)
 rename superset-frontend/{ => src/assets}/images/viz_thumbnails/filter_box.png (100%)
 rename superset-frontend/{ => src/assets}/images/viz_thumbnails/heatmap.png (100%)
 rename superset-frontend/{ => src/assets}/images/viz_thumbnails/histogram.png (100%)
 rename superset-frontend/{ => src/assets}/images/viz_thumbnails/horizon.png (100%)
 rename superset-frontend/{ => src/assets}/images/viz_thumbnails/iframe.png (100%)
 rename superset-frontend/{ => src/assets}/images/viz_thumbnails/line.png (100%)
 rename superset-frontend/{ => src/assets}/images/viz_thumbnails/line_multi.png (100%)
 rename superset-frontend/{ => src/assets}/images/viz_thumbnails/mapbox.png (100%)
 rename superset-frontend/{ => src/assets}/images/viz_thumbnails/markup.png (100%)
 rename superset-frontend/{ => src/assets}/images/viz_thumbnails/multi.png (100%)
 rename superset-frontend/{ => src/assets}/images/viz_thumbnails/paired_ttest.png (100%)
 rename superset-frontend/{ => src/assets}/images/viz_thumbnails/para.png (100%)
 rename superset-frontend/{ => src/assets}/images/viz_thumbnails/partition.png (100%)
 rename superset-frontend/{ => src/assets}/images/viz_thumbnails/pie.png (100%)
 rename superset-frontend/{ => src/assets}/images/viz_thumbnails/pivot_table.png (100%)
 rename superset-frontend/{ => src/assets}/images/viz_thumbnails/rose.png (100%)
 rename superset-frontend/{ => src/assets}/images/viz_thumbnails/sankey.png (100%)
 rename superset-frontend/{ => src/assets}/images/viz_thumbnails/separator.png (100%)
 rename superset-frontend/{ => src/assets}/images/viz_thumbnails/sunburst.png (100%)
 rename superset-frontend/{ => src/assets}/images/viz_thumbnails/table.png (100%)
 rename superset-frontend/{ => src/assets}/images/viz_thumbnails/time_pivot.png (100%)
 rename superset-frontend/{ => src/assets}/images/viz_thumbnails/time_table.png (100%)
 rename superset-frontend/{ => src/assets}/images/viz_thumbnails/treemap.png (100%)
 rename superset-frontend/{ => src/assets}/images/viz_thumbnails/word_cloud.png (100%)
 rename superset-frontend/{ => src/assets}/images/viz_thumbnails/world_map.png (100%)
 rename superset-frontend/{ => src/assets}/stylesheets/antd/index.less (100%)
 rename superset-frontend/{ => src/assets}/stylesheets/less/cosmo/bootswatch.less (100%)
 rename superset-frontend/{ => src/assets}/stylesheets/less/cosmo/cosmoTheme.js (99%)
 rename superset-frontend/{ => src/assets}/stylesheets/less/cosmo/variables.less (100%)
 rename superset-frontend/{ => src/assets}/stylesheets/less/fonts.less (100%)
 rename superset-frontend/{ => src/assets}/stylesheets/less/index.less (100%)
 rename superset-frontend/{ => src/assets}/stylesheets/less/variables.less (100%)
 rename superset-frontend/{ => src/assets}/stylesheets/reactable-pagination.less (97%)
 rename superset-frontend/{ => src/assets}/stylesheets/superset.less (100%)
 delete mode 100644 superset-frontend/src/components/ChartIcon/index.tsx
 rename superset-frontend/{spec/javascripts/datasource/ChangeDatasourceModal_spec.jsx => src/components/Datasource/ChangeDatasourceModal.test.jsx} (98%)
 rename superset-frontend/src/{datasource => components/Datasource}/ChangeDatasourceModal.tsx (98%)
 rename superset-frontend/src/{datasource => components/Datasource}/DatasourceEditor.jsx (83%)
 create mode 100644 superset-frontend/src/components/Datasource/DatasourceEditor.test.jsx
 rename superset-frontend/{spec/javascripts/datasource/DatasourceModal_spec.jsx => src/components/Datasource/DatasourceModal.test.jsx} (96%)
 rename superset-frontend/src/{datasource => components/Datasource}/DatasourceModal.tsx (88%)
 rename superset-frontend/src/components/{dataViewCommon/index.ts => Datasource/index.tsx} (83%)
 copy superset-frontend/src/{explore/components/controls/DndColumnSelectControl/DndMetricSelect.test.tsx => components/ErrorMessage/DatasetNotFoundErrorMessage.test.tsx} (55%)
 rename superset-frontend/{spec/javascripts/dashboard/components/resizable/ResizableContainer_spec.jsx => src/components/ErrorMessage/DatasetNotFoundErrorMessage.tsx} (61%)
 rename superset-frontend/{spec/javascripts/messageToasts/components/Toast_spec.jsx => src/components/MessageToasts/Toast.test.jsx} (94%)
 rename superset-frontend/src/{messageToasts/components => components/MessageToasts}/Toast.tsx (97%)
 rename superset-frontend/src/{messageToasts/containers/ToastPresenter.jsx => components/MessageToasts/ToastContainer.jsx} (91%)
 rename superset-frontend/{spec/javascripts/messageToasts/components/ToastPresenter_spec.jsx => src/components/MessageToasts/ToastPresenter.test.jsx} (90%)
 rename superset-frontend/src/{messageToasts/components => components/MessageToasts}/ToastPresenter.tsx (97%)
 rename superset-frontend/src/{messageToasts/actions/index.ts => components/MessageToasts/actions.ts} (98%)
 rename superset-frontend/src/{messageToasts/utils => components/MessageToasts}/getToastsFromPyFlashMessages.js (93%)
 rename superset-frontend/{spec/javascripts/messageToasts/utils/getToastsFromPyFlashMessages_spec.js => src/components/MessageToasts/getToastsFromPyFlashMessages.test.js} (90%)
 rename superset-frontend/{spec/javascripts/messageToasts => src/components/MessageToasts}/mockMessageToasts.js (93%)
 rename superset-frontend/src/{messageToasts/reducers/index.js => components/MessageToasts/reducers.js} (96%)
 rename superset-frontend/{spec/javascripts/messageToasts/reducers/messageToasts_spec.js => src/components/MessageToasts/reducers.test.js} (90%)
 rename superset-frontend/src/{messageToasts => components/MessageToasts}/types.ts (100%)
 rename superset-frontend/src/{messageToasts/enhancers => components/MessageToasts}/withToasts.tsx (98%)
 rename superset-frontend/src/components/Pagination/{Pagination.test.tsx => Wrapper.test.tsx} (86%)
 copy superset-frontend/src/components/Pagination/{index.tsx => Wrapper.tsx} (100%)
 delete mode 100644 superset-frontend/src/components/SearchInput/SearchInput.stories.tsx
 delete mode 100644 superset-frontend/src/components/SearchInput/SearchInput.test.jsx
 delete mode 100644 superset-frontend/src/components/SearchInput/index.tsx
 rename superset-frontend/src/components/{dataViewCommon => TableCollection}/TableCollection.test.tsx (98%)
 rename superset-frontend/src/components/{dataViewCommon/TableCollection.tsx => TableCollection/index.tsx} (100%)
 delete mode 100644 superset-frontend/src/components/TableSelector/TableSelector.test.jsx
 create mode 100644 superset-frontend/src/components/TableSelector/TableSelector.test.tsx
 delete mode 100644 superset-frontend/src/components/dataViewCommon/Pagination.tsx
 create mode 100644 superset-frontend/src/dashboard/components/FilterBoxMigrationModal.tsx
 create mode 100644 superset-frontend/src/dashboard/components/nativeFilters/FiltersConfigModal/DraggableFilter.tsx
 create mode 100644 superset-frontend/src/dashboard/components/nativeFilters/FiltersConfigModal/FilterConfigPane.test.tsx
 create mode 100644 superset-frontend/src/dashboard/components/nativeFilters/FiltersConfigModal/FilterConfigurePane.tsx
 delete mode 100644 superset-frontend/src/dashboard/components/nativeFilters/FiltersConfigModal/FilterTabs.tsx
 create mode 100644 superset-frontend/src/dashboard/components/nativeFilters/FiltersConfigModal/FilterTitleContainer.tsx
 create mode 100644 superset-frontend/src/dashboard/components/nativeFilters/FiltersConfigModal/FilterTitlePane.tsx
 rename superset-frontend/{spec/javascripts/dashboard/components/MissingChart_spec.jsx => src/dashboard/reducers/dashboardState.test.ts} (57%)
 delete mode 100644 superset-frontend/src/dashboard/stylesheets/hover-menu.less
 create mode 100644 superset-frontend/src/dashboard/util/filterboxMigrationHelper.test.ts
 create mode 100644 superset-frontend/src/dashboard/util/filterboxMigrationHelper.ts
 rename superset-frontend/{spec/javascripts/datasource => src/explore/components/DatasourcePanel}/fixtures.tsx (100%)
 create mode 100644 superset-frontend/src/explore/components/ExploreChartHeader/ExploreChartHeader.test.tsx
 rename superset-frontend/src/explore/components/{ExploreChartHeader.jsx => ExploreChartHeader/index.jsx} (79%)
 delete mode 100644 superset-frontend/src/explore/components/controls/ColorMapControl.jsx
 create mode 100644 superset-frontend/src/explore/components/controls/ColorSchemeControl/ColorSchemeControl.test.tsx
 rename superset-frontend/src/explore/components/controls/{ColorSchemeControl.jsx => ColorSchemeControl/index.jsx} (54%)
 create mode 100644 superset-frontend/src/explore/components/controls/DndColumnSelectControl/DndColumnSelectPopoverTitle.jsx
 rename superset-frontend/src/explore/components/controls/{HiddenControl.jsx => HiddenControl.tsx} (69%)
 delete mode 100644 superset-frontend/src/explore/components/controls/SelectAsyncControl/index.jsx
 create mode 100644 superset-frontend/src/explore/components/controls/SelectAsyncControl/index.tsx
 rename superset-frontend/{spec/javascripts/filters/utils_spec.ts => src/filters/utils.test.ts} (100%)
 delete mode 100644 superset-frontend/src/messageToasts/constants.ts
 rename superset-frontend/{spec/javascripts/middleware/asyncEvent_spec.ts => src/middleware/asyncEvent.test.ts} (100%)
 rename superset-frontend/{spec/javascripts/middleware/logger_spec.js => src/middleware/logger.test.js} (100%)
 rename superset-frontend/{spec/javascripts/modules/dates_spec.js => src/modules/dates.test.js} (100%)
 rename superset-frontend/{spec/javascripts/modules/utils_spec.jsx => src/modules/utils.test.jsx} (100%)
 rename superset-frontend/{spec/javascripts/profile/App_spec.tsx => src/profile/components/App.test.tsx} (100%)
 rename superset-frontend/{spec/javascripts/profile/CreatedContent_spec.tsx => src/profile/components/CreatedContent.test.tsx} (100%)
 rename superset-frontend/{spec/javascripts/profile/Favorites_spec.tsx => src/profile/components/Favorites.test.tsx} (100%)
 rename superset-frontend/{spec/javascripts/profile/RecentActivity_spec.tsx => src/profile/components/RecentActivity.test.tsx} (100%)
 rename superset-frontend/{spec/javascripts/profile/Security_spec.tsx => src/profile/components/Security.test.tsx} (100%)
 rename superset-frontend/{spec/javascripts/profile/UserInfo_spec.tsx => src/profile/components/UserInfo.test.tsx} (100%)
 rename superset-frontend/{spec/javascripts/profile => src/profile/components}/fixtures.tsx (100%)
 rename superset-frontend/{spec/javascripts/showSavedQuery/utils_spec.jsx => src/showSavedQuery/utils.test.jsx} (100%)
 create mode 100644 superset-frontend/src/views/CRUD/alert/AlertReportModal.test.tsx
 delete mode 100644 superset-frontend/src/views/CRUD/data/database/DatabaseModal/DatabaseConnectionForm.tsx
 create mode 100644 superset-frontend/src/views/CRUD/data/database/DatabaseModal/DatabaseConnectionForm/CommonParameters.tsx
 create mode 100644 superset-frontend/src/views/CRUD/data/database/DatabaseModal/DatabaseConnectionForm/EncryptedField.tsx
 create mode 100644 superset-frontend/src/views/CRUD/data/database/DatabaseModal/DatabaseConnectionForm/TableCatalog.tsx
 create mode 100644 superset-frontend/src/views/CRUD/data/database/DatabaseModal/DatabaseConnectionForm/ValidatedInputField.tsx
 create mode 100644 superset-frontend/src/views/CRUD/data/database/DatabaseModal/DatabaseConnectionForm/index.tsx
 rename superset-websocket/utils/client-ws-app/views/{error.jade => error.pug} (100%)
 rename superset-websocket/utils/client-ws-app/views/{index.jade => index.pug} (100%)
 rename superset-websocket/utils/client-ws-app/views/{layout.jade => layout.pug} (100%)
 copy {tests/unit_tests/charts => superset/charts/data}/__init__.py (100%)
 create mode 100644 superset/charts/data/api.py
 rename superset/charts/{commands/data.py => data/commands.py} (68%)
 copy tests/integration_tests/fixtures/database.py => superset/charts/data/query_context_cache_loader.py (63%)
 copy requirements/development.in => superset/common/chart_data.py (65%)
 copy requirements/development.in => superset/common/db_query_status.py (69%)
 copy superset/{databases/commands/importers/v1/utils.py => common/not_authrized_object.py} (52%)
 copy requirements/development.in => superset/common/request_contexed_based.py (55%)
 copy {tests/unit_tests/charts => superset/dashboards/filter_sets}/__init__.py (100%)
 create mode 100644 superset/dashboards/filter_sets/api.py
 copy {tests/unit_tests/charts => superset/dashboards/filter_sets/commands}/__init__.py (100%)
 create mode 100644 superset/dashboards/filter_sets/commands/base.py
 create mode 100644 superset/dashboards/filter_sets/commands/create.py
 create mode 100644 superset/dashboards/filter_sets/commands/delete.py
 create mode 100644 superset/dashboards/filter_sets/commands/exceptions.py
 create mode 100644 superset/dashboards/filter_sets/commands/update.py
 copy requirements/development.in => superset/dashboards/filter_sets/consts.py (66%)
 create mode 100644 superset/dashboards/filter_sets/dao.py
 create mode 100644 superset/dashboards/filter_sets/filters.py
 create mode 100644 superset/dashboards/filter_sets/schemas.py
 copy superset/db_engine_specs/{impala.py => firebolt.py} (59%)
 create mode 100644 superset/migrations/versions/0ca9e5f1dacd_rename_to_schemas_allowed_for_file_.py
 copy tests/integration_tests/fixtures/database.py => superset/migrations/versions/181091c0ef16_add_extra_column_to_columns_model.py (54%)
 create mode 100644 superset/migrations/versions/32646df09c64_update_time_grain_sqla.py
 create mode 100644 superset/migrations/versions/3ebe0993c770_filterset_table.py
 create mode 100644 superset/migrations/versions/60dc453f4e2e_migrate_timeseries_limit_metric_to_.py
 create mode 100644 superset/migrations/versions/b92d69a6643c_rename_csv_to_file.py
 create mode 100644 superset/models/filter_set.py
 create mode 100644 superset/sqllab/exceptions.py
 create mode 100644 superset/sqllab/execution_context_convertor.py
 copy tests/integration_tests/fixtures/database.py => superset/sqllab/limiting_factor.py (79%)
 create mode 100644 superset/sqllab/query_render.py
 create mode 100644 superset/sqllab/sql_json_executer.py
 rename superset/{utils => sqllab}/sqllab_execution_context.py (95%)
 create mode 100644 superset/sqllab/utils.py
 copy tests/integration_tests/fixtures/database.py => superset/sqllab/validators.py (64%)
 copy tests/{unit_tests/charts => integration_tests/charts/data}/__init__.py (100%)
 create mode 100644 tests/integration_tests/charts/data/api_tests.py
 copy tests/{unit_tests/charts => integration_tests/dashboards/filter_sets}/__init__.py (100%)
 create mode 100644 tests/integration_tests/dashboards/filter_sets/conftest.py
 copy requirements/development.in => tests/integration_tests/dashboards/filter_sets/consts.py (74%)
 create mode 100644 tests/integration_tests/dashboards/filter_sets/create_api_tests.py
 create mode 100644 tests/integration_tests/dashboards/filter_sets/delete_api_tests.py
 create mode 100644 tests/integration_tests/dashboards/filter_sets/get_api_tests.py
 create mode 100644 tests/integration_tests/dashboards/filter_sets/update_api_tests.py
 create mode 100644 tests/integration_tests/dashboards/filter_sets/utils.py
 create mode 100644 tests/integration_tests/db_engine_specs/firebolt_tests.py
 copy tests/{integration_tests/fixtures/database.py => unit_tests/annotation_layers/fixtures.py} (78%)
 create mode 100644 tests/unit_tests/annotation_layers/schema_tests.py
 create mode 100644 tests/unit_tests/db_engine_specs/test_bigquery.py
 create mode 100644 tests/unit_tests/db_engine_specs/test_drill.py
 create mode 100644 tests/unit_tests/sql_parse_tests.py