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 2022/04/04 12:01:34 UTC

[superset] branch lts-v1 updated (420a63f343 -> f20bf6baae)

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

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


    from 420a63f343 fix(sqllab): Un-render deselected tabs (#18934)
     add e20788c0e1 chore: add intersect method from backend to fontend for upload extensions (#18811)
     add 4167cfa30e fix Metadata browser in SQL not render nicely in Safari (#18855)
     add b78bced141 fix: Monospacing errors in dashboards & charts (#18796)
     add 77c8987bbe test(Native Filter): User can create parent filters using "Filter is hierarchical (#18915)
     add ce61dbc2bc fix(native-filter): fix required filters of a dashboard won't load properly (#18695)
     add 2fc2e275d4 fix(deck.gl): multiple layers map size is shrunk (#18939)
     add 419ca75412 chore: Moves components out of the commons folder (#18931)
     add a76ae2edb6 fix: null schema issue in saved queries (#18849)
     add 5b465c2ff1 fix: bump Helm chart release version (#18751) (#18758)
     add 9375ebfbff fix(sql Lab tabs): Empty SQL Lab tabs (#18817)
     add 268ce0ae8b fix(dataset): handle missing database in migration (#18948)
     add ee3b3aea5d docs: fix sql templating typos (#18955)
     add 335a90a5ac feat(legacy-preset-chart-deckgl): Add ,.1f and ,.2f value formats to deckgl charts (#18945)
     add da64e7966f fix(Explore): Pivot table V2 sort by failure with D&D enabled (#18835)
     add 46015e2c66 feat(TimeTableViz): sort by first metric (#18896)
     add 10d382de56 chore(security): Remove obsolete FAB metric_access permission (#16860)
     add 928309841c fix: add/find owners from report/alert modal (#18971)
     add 1f4ff51322 fix(plugin-chart-echarts): fix customize margin (#18958)
     add f7b72d9486 fix(native-filters): Default value not shown in native filters (#18963)
     add fe0f1de64b fix(external-link): change the external link in creating chart dashboard (#18982)
     add 178736ad27 fix(tooltip-not-dissapeared): make the tooltip disappear when mouse away (#18892)
     add 8bfb2f854e chore(native-filters): Add unit tests for filter cards (#18967)
     add 603f43bd95 bump and harmonize urijs and xss (#18922)
     add 4a91f76798 refactor: converted QueryAutoRefresh to functional component (#18179)
     add e8cf9446a6 docs: renamed yugabytedb to yugabyte as per request by Yugabyte team (#18983)
     add 3c90220cf6 fix(packages): Fixing users packages (#18973)
     add 6d2b583fee fix(chart): deprecate persisting url_params (#18960)
     add 5a8cd3477b chore(cache): default to SimpleCache in debug mode (#18976)
     add 3b2b6674f6 fix(sqllab): Replace stringified 'null' schema column values with NULL (#18992)
     add 75afb3a7b6 feat: show user email in dashboard API (#19004)
     add 78e85aed02 feat: remove loading indicator when typing in select (#18799)
     add fcf98ec889 chore(deps): bump url-parse from 1.5.7 to 1.5.10 in /docs (#19019)
     add 3500b31551 fix(nested-tab-available): make the another tabs into one tabs available (#18877)
     add 8951e23ac6 fix: remove unneeded complexity in migration (#19022)
     add 073be5d74f chore: change case for upload selection (#19021)
     add ea534e2386 feat: Adds support to multiple dependencies to the native filters (#18793)
     add 00a53dae73 fix(SQL Editor): names new query tabs correctly (#18951)
     add 8640814a92 fix(plugin-chart-echarts): Apply temporary filters to Query B in explore (#18998)
     add 6178f0515a refactor: Deletes the common/components folder (#18999)
     add fb5d77e404 feat: Allow users to bust cache in report dashboard + alerts charts + alert dashboards (#18795)
     add 585b032a1a chore: Fix deprecated unittest aliases. (#19042)
     add 9777e6d148 Update impala.mdx (#19040)
     add 1eac8712a4 fix(big-number): Big Number with Trendline Chart is not working if Time Grain is set to Month (#19043)
     add 4e78efcf07 chore: Moves CRUD components to the Datasource component (#19032)
     add 45dc7b5984 chore: adding Dutch language translations (NL) (#18965)
     add 02d9825b11 chore(plugin-chart-echarts): bump echarts 5.3.1 (#19041)
     add 379676e1f6 fix: improve cypress flakiness (#19044)
     add 1658a9f6b4 docs(building): link frontend asset instructions correctly (#19050)
     add 05f25d350c Install and use vm-browserify for sandboxedEval (#19059)
     add 219fa570b0 chore: Moves Chart to the components folder (#19029)
     add 032f560c2c feat(select): sort exact and startsWith match to first (#18856)
     add 29b46d00f9 fix: remove unnecessary divider (#19048)
     add 4b8fc06e5f fix: Update time grain expressions for Spark >= 3.x (#18690)
     add 8bef059624 Add previous line hotkey to SQL editor for macOS (#19052)
     add 3ce4f051d5 docs: renamed yugabyte to yugabytedb (#19068)
     add bc65cf4509 fix: ensure validation for db modal for googlesheets (#19018)
     add e97b123961 fix(time-series table): display null values in time-series table and sortable (#19024)
     add 253f80ab6d chore: log multiple errors (#14064)
     add 56b1144abd fix: Dataset search when creating a chart (#19065)
     add 3729df2653 fix: Select clear and loading icons overlap (#19070)
     add 4bff8fe95e Control sortby based on series limit (#18950)
     add 005949f6b9 fix: show the total row count in the SQL Lab Query History tab when limited by DISPLAY_MAX_ROW (#19054)
     add 4c9785f3e3 fix: enable find text browser functionality inside SQL Lab editor (#19061)
     add 4462cfeb0f fix(altered-modal): make specified text fields wrap in table (#18822)
     add cd2a958ce3 perf(dashboard): Improve performance of complex dashboards (#19064)
     add 67d7a7b115 fix(allow-db-explore): make that the set the allow-db-explore option (#19030)
     add 0aba34a807 fix: Pivot Table Conditional Formatting Doesn't Show All Options (#19071)
     add 2c151f352e fix autocomplete (#19047)
     add dae9e7c020 fix database import error (#19037)
     add 2193e17940 fix: Show Totals error with sort and group by together (#19072)
     add 36561b7943 fix(dashboard): import handle missing excluded charts (#19088)
     add d0c9df4d7b fix(plugin-chart-echarts): make to allow the custome of x & y axis title margin i… (#18947)
     add 088f6f75ff perf(dashboard): Send chart requests before native filter requests (#19077)
     add 89edf8a7a9 fix(dashboard): Empty states overflowing small chart containers (#19095)
     add 7d0ee284fa Modified alerts and reports docs for clarity (#19091)
     add cb5d814fd7 fix: cache key with guest token rls  (#19110)
     add 891798b871 fix(dashobard-edge-cutting): make to be not cut without Filter (#19080)
     add a2fc96a9c3 refactor(TimezoneSelector): simplify override logics and tests (#19090)
     add 877ee42a1c feat(viz-gallery): add 'feature' tag and fuzzy search weighting (#18662)
     add 2b8b9b366a feat(embedded): add optional dashboard ui configuration (#19031)
     add fcca027b88 feat(select): keep options order when in single mode (#19085)
     add 20fd7a7cd5 fix: Add perm for showing DBC-UI in Global Nav (#19023)
     add 2e6bd1590d feat: helper functions for RLS (#19055)
     add 0598e95b1b chore(embedded): refresh the guest token (#19132)
     add 37162a923b test(native filter): add new native filter test (#19115)
     add ba57cb410e fix(dashboard): scrolling table viz overlaps next chart (#19121)
     add a0138af7f8 fix(dbs-dropdown): make to allow the search in supported db dropdown (#19125)
     add db8b6af7c7 fix(dashboard-css): make to stay custom css when reload (#19084)
     add 337ea4f59d fix: clean up chart metadata config (#19143)
     add 3f1074e6a3 fix(sqllab): Updated blank states for query results and query history (#19111)
     add ca0c12f2b3 fix: Logic for showing extension in Global Nav (#19158)
     add a68b1fd686 test: fix TimezoneSelector tests on daylight saving time (#19156)
     add 2979ff26cc fix: Revert "refactor: converted QueryAutoRefresh to functional component … (#19226)
     add 90f4d77422 feat: add export_related flag (#19215)
     add 8c102174b8 feat: add permalink to dashboard and explore (#19078)
     add 7bc6e14151 chore: refactor import command (#19216)
     add ff277e0517 fix: auto-complete of tables and names are not working in SQL lab (#19152)
     add 28be2311a0 fix: Popovers in Explore not attached to the fields they are triggered by (#19139)
     add 71338cab57 feat: scroll to bottom when adding a new native filter and the page is filled (#19053)
     add a1b9b2946d feat(sqllab): Add a configuration option to disable data preview (#19104)
     add f91f9f5aae feat(ui): Adding manifest prefix config (#19141)
     add 823b9b2ff2 fix(select): make to consider the case sensitive in case of d3 format selector (#19159)
     add 0522296607 fix: allow to select <NULL> in a native filter single mode (#19076)
     add 2651c1d925 chore: upgrade mypy (#19227)
     add 3de8370ead feat: import/export assets commands (#19217)
     add f2541429cd fix(sql lab): deleting the last saved query or the last executed from history (#19225)
     add f1ea0ad56c fix: adhoc column in legacy chart (#19234)
     add 33beba96e3 chore: use order_desc shared control consistently (#19172)
     add 1c53a76bcc docs: fix broken links in the documentation (#19235)
     add 1834a268a1 fix(explore comma): make that the comma can be added by removing it from token separators… (#18926)
     add 1953233b68 update changelog and updating files from 1.4.1 (#18648)
     add c793b7bfe9 fix: allow subquery in ad-hoc SQL (WIP) (#19242)
     add fed1c24252 fix(chart-crud): make to update Viz type Filter label to Chart type (#19140)
     add f6346d627b fix: custom SQL in Sort By Breaks Bar Chart (#19069)
     add 408573d4d6 feat: add support for comments in adhoc clauses (#19248)
     add 7d239b8958 feat: improve color consistency (save all labels) (#19038)
     add 565d83f9ec Update README.md (#19270)
     add 70facad1b2 Various docstring fixes (#18221)
     add 910679aad5 fix dataset update table (#19269)
     add dc0153151c feat: SupersetClient config to override 401 behavior (#19144)
     add 81a1abfab4 fix(presto/trino): Add TIME/TIMESTAMP WITH TIME ZONE (#19263)
     add f3172010d5 feat(key-value): add superset metastore cache (#19232)
     add e1964a8dfe feat: allow uploads in crud view (#18953)
     add 2a2105c8c8 chore: add missing keys to components inside lists (#19161)
     add 792473f6db fix(dashboard): make to show the correct owned objects (#19223)
     add 712212be6d fix: most Recently Selected Table Should Appear at the Top of the List on the Left Panel (#19258)
     add 55aac5a3cb allow overriding the guest token PyJWT instance (#19293)
     add c6a4d75954 Update ToastPresenter.tsx (#19296)
     add 19ee561092 chore: Make font-weights themable, fix font faces (#19236)
     add 46dbf6c50c fix: Don't allow duplicated tag values in the Select (#19283)
     add d4223d7dc4 feat: API for asset sync (#19220)
     add f0630a6ea7 fix(cache): only warn about fallback cache for non-debug mode (#19305)
     add 12759ec264 chore: fixing a pluralization typo (#19295)
     add f8a92de75c docusearch (#19289)
     add 9bc76337cf feat(advanced analysis): support MultiIndex column in post processing stage (#19116)
     add 3a9435df72 fix(dashboard): fix default filter bar visibility + add docs (#18741)
     add 0664a05afb ci: add more code owners to helm chart source (#19322)
     add b51eadd657 chore: bump FAB to 3.4.5 (#19323)
     add d429bbd3b2 docs: SECRET_KEY Rotation Documentation (#19233)
     add bf92b2067e chore: add type checking in package tests directory (#19320)
     add 52f9b718f2 fix: regression on Select component when handling null values (#19326)
     add baeb36f8c6 fix(explore): make to convert null to N/A in view results (#19316)
     add 158d442f0c fix(dashboard): Chart stuck in loading state when when datasets request and chart request fail (#19327)
     add b21d4f841c fix(embedded): download chart as image (#19339)
     add 99f36f73d2 Correcting some typos (#19338)
     add 6ccc1c86fa Use three backticks for code blocks (#19331)
     add a81b1ab374 fix: Null values on Explore filter (#19341)
     add 3b0b60c57f feat: external management flags in CRUD (#19318)
     add 89b7b3784a feat: add duckdb as DataSource - Fixes #14563 (#19317)
     add 069d42ed14 fix: typo on doc string (#19346)
     add a591eccfc2 docs: update lock + general cleanup (#19350)
     add d9377559f6 feat: import external management columns (#19315)
     add 18f82411c9 fix: Adaptive formatting spelling (#19359)
     add a6a2def6d3 feat: introduce hashids permalink keys (#19324)
     add 549b475a94 Fix NoAuthorizationError (#19355)
     add 0439d8db40 fix: Remove gap from SQLLab results bottom (#19138)
     add d65954994c fix(report-add): make to add error toast message when already attached report is added again into dashboard or chart (#19122)
     add da4a79f276 fix: number format should editable when AA in time comparison (#19351)
     add 7af92ed337 fix(explore-sqllab): make that Timestamp column keep the Is temporal flagged when overwriting (#19010)
     add 2f497190ed feat(explore): Dataset panel option tooltips (#19259)
     add 25c5e2b4c7 chore: add support for npm8 (#19365)
     add dead7c253c fix(caching): support metastore cache for non-required caches (#19369)
     add 029cf73b75 Fix add-driver-docker in Readme (#19321)
     add 0c75d9ede0 fix(database): make to allow the expose db as default in sqlalchemy form db (#19337)
     add fb0ae24c6b chore: add type checking in plugin test directory (#19387)
     add ae2763af53 docs: Correcting the document font size (#19390)
     add 56e78b9ef7 chore: Eslint custom plugin to warn about hex and literal colors (#19239)
     add 5f2ffb3ba4 feat: linear imputation in Resample (#19393)
     add 495b29a4eb chore: bump storybook to 6.4.19, migrating config, and linting storybook config (#19245)
     add cccec50454 feat: disable edits on external assets (#19344)
     add 1edd5f1343 chore: Removes direct theme imports (#19368)
     add a70f4dc52f chore: upgrade black (#19410)
     add fb929ab649 run black on remaining files
     add ba22905610 chore: update slack invite url (#19412)
     add 038d114b07 perf: improve perf in SIP-68 migration (#19416)
     add 625555ac7e chore: attempt to force docs deploy (#19424)
     add 7aba89c486 fix: add missing init on python pkg key_value (#19428)
     add bfa203aee0 fix: missing init on importexport pkg (#19435)
     add 0c78522bfe chore: Disables no literal colors for the theme configuration (#19437)
     add a7ee677154 docs: add 1.4.2 changelog entries (#19411)
     add 795ed3c719 feat: Embedded dashboard configuration (#19364)
     add 3c09690ed2 fix: can't save dataset modal (#19452)
     add e93d64d58e fix(dashboard): make to show the correct owned objects (#19372)
     add 91bf9bd68b chore: Removes hard-coded colors from legacy-preset-chart-nvd3 (#19443)
     add 99c8f9bd13 chore: Removes plugin-chart-pivot-table hard-coded colors (#19439)
     add 70d800dc27 refactor: Removes the CSS files from the Calendar Heatmap plugin (#19436)
     add a96ff005fd refactor: Removes the CSS files from the Heatmap plugin (#19417)
     add e4cbbdc653 fix(drill): specify an SA URL parm of `impersonation_target` for drill+sadrill (#19252)
     add 840be9972f feat: improve adhoc SQL validation (#19454)
     add af0dc75207 feat(sql lab): enable ACE editor search in SQL editors (#19328)
     add 3eece91378 test(native filter): add new test for dependent filter (#19392)
     add 3c627bdc61 fix: request samples with default row limit (#19456)
     add 3ff9cdeb65 fix: can't sync temporal flag on virtual table (#19366)
     add 90f49e261e fix: flaky test for dashboard changed on (#19483)
     add f44ed063e8 chore(plugin-chart-echarts): upgrade echarts 5.3.2 (#19481)
     add dba4610f9b fix(dashboard list): do not show favorite star for anonymous users  #18210 (#19409)
     new 39ac32daf4 add noop endpoint migration
     new f20bf6baae fix bad conflict resolution

The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .github/CODEOWNERS                                 |     2 +-
 .github/workflows/embedded-sdk-test.yml            |     1 +
 .gitignore                                         |     2 +
 .pre-commit-config.yaml                            |     4 +-
 CHANGELOG.md                                       |   361 +-
 CODE_OF_CONDUCT.md                                 |     2 +-
 CONTRIBUTING.md                                    |    10 +-
 README.md                                          |     8 +-
 RELEASING/README.md                                |     2 +
 RELEASING/changelog.py                             |    12 +-
 RELEASING/send_email.py                            |     7 +-
 UPDATING.md                                        |    17 +-
 docker/docker-init.sh                              |     2 +-
 docs/README.md                                     |     2 +-
 docs/docs/api.mdx                                  |    30 +-
 docs/docs/contributing/contributing-page.mdx       |     6 +-
 docs/docs/contributing/hooks-and-linting.mdx       |     6 +-
 docs/docs/contributing/local-backend.mdx           |     2 +-
 .../creating-your-first-dashboard.mdx              |    20 +
 docs/docs/databases/impala.mdx                     |     2 +-
 .../docs/databases/installing-database-drivers.mdx |     2 +-
 docs/docs/databases/mysql.mdx                      |     2 +-
 .../databases/{yugabyte.mdx => yugabytedb.mdx}     |     2 +-
 docs/docs/installation/alerts-reports.mdx          |     3 +
 docs/docs/installation/cache.mdx                   |    41 +-
 docs/docs/installation/configuring-superset.mdx    |    22 +-
 docs/docs/installation/running-on-kubernetes.mdx   |    29 +
 docs/docs/installation/sql-templating.mdx          |    20 +-
 docs/docusaurus.config.js                          |    19 +-
 docs/package-lock.json                             | 11303 -------------
 docs/package.json                                  |    19 +-
 docs/src/pages/community.tsx                       |     2 +-
 docs/static/resources/openapi.json                 | 13094 +++++++++------
 docs/yarn.lock                                     |  2194 ++-
 helm/superset/Chart.yaml                           |     2 +-
 helm/superset/values.yaml                          |     5 +
 requirements/base.txt                              |     4 +-
 scripts/benchmark_migration.py                     |     5 +-
 scripts/cancel_github_workflows.py                 |     9 +-
 setup.py                                           |     6 +-
 superset-embedded-sdk/README.md                    |     1 +
 superset-embedded-sdk/package-lock.json            | 13729 ++++++++++++----
 superset-embedded-sdk/package.json                 |     6 +-
 .../src/guestTokenRefresh.test.ts                  |    96 +
 superset-embedded-sdk/src/guestTokenRefresh.ts     |    32 +
 superset-embedded-sdk/src/index.ts                 |    38 +-
 superset-frontend/.eslintrc.js                     |    21 +-
 superset-frontend/.storybook/main.js               |     1 +
 superset-frontend/cypress-base/cypress.json        |     4 +-
 .../integration/dashboard/dashboard.helper.ts      |   120 +
 .../integration/dashboard/key_value.test.ts        |    14 +-
 .../integration/dashboard/nativeFilters.test.ts    |   149 +-
 .../cypress/integration/explore/control.test.ts    |     2 +-
 .../cypress/integration/sqllab/query.test.ts       |     4 +-
 .../cypress/integration/sqllab/tabs.test.js        |     4 +-
 .../cypress-base/cypress/support/directories.ts    |     5 +
 .../cypress-base/cypress/support/index.d.ts        |    14 +
 .../cypress-base/cypress/support/index.ts          |    86 +
 superset-frontend/package-lock.json                | 15181 +++++++++---------
 superset-frontend/package.json                     |    32 +-
 .../superset-ui-chart-controls/package.json        |    41 +-
 .../src/components/ColumnOption.tsx                |    20 +-
 .../src/components/MetricOption.tsx                |    19 +-
 .../src/components/Tooltip.tsx                     |     8 +
 .../src/components/labelUtils.tsx                  |    99 +-
 .../src/operators/boxplotOperator.ts               |    10 +-
 .../src/operators/contributionOperator.ts          |    25 +-
 ...{contributionOperator.ts => flattenOperator.ts} |    20 +-
 .../src/operators/index.ts                         |     1 +
 .../src/operators/pivotOperator.ts                 |    15 +-
 .../src/operators/prophetOperator.ts               |     7 +-
 .../src/operators/resampleOperator.ts              |    23 +-
 .../src/operators/rollingWindowOperator.ts         |    28 +-
 .../src/operators/sortOperator.ts                  |     7 +-
 .../src/operators/timeCompareOperator.ts           |    41 +-
 .../src/operators/timeComparePivotOperator.ts      |    66 +-
 .../src/sections/advancedAnalytics.tsx             |     1 +
 .../src/shared-controls/dndControls.tsx            |     2 +-
 .../src/shared-controls/index.tsx                  |    79 +-
 .../superset-ui-chart-controls/src/types.ts        |     9 +
 .../src/utils/D3Formatting.ts                      |     6 +-
 .../test/components/ColumnOption.test.tsx          |     7 +-
 .../test/components/MetricOption.test.tsx          |     9 +-
 .../test/components/labelUtils.test.tsx            |   209 +-
 .../superset-ui-chart-controls/test/types.test.ts  |     1 +
 .../test/utils/operators/flattenOperator.test.ts   |    59 +
 .../test/utils/operators/pivotOperator.test.ts     |    44 +-
 .../test/utils/operators/resampleOperator.test.ts  |    81 +-
 .../utils/operators/rollingWindowOperator.test.ts  |    45 +-
 .../utils/operators/timeCompareOperator.test.ts    |   129 +-
 ...or.test.ts => timeComparePivotOperator.test.ts} |   147 +-
 .../packages/superset-ui-core/package.json         |     2 +
 .../src/chart/components/NoResultsComponent.tsx    |    65 +-
 .../src/chart/components/SuperChart.tsx            |     2 +
 .../src/chart/models/ChartMetadata.ts              |    24 +-
 .../src/chart/models/ChartProps.ts                 |    10 +
 .../superset-ui-core/src/chart/types/Base.ts       |    21 +
 .../src/color/CategoricalColorScale.ts             |    17 +-
 .../src/color/SharedLabelColorSingleton.ts         |   130 +
 .../packages/superset-ui-core/src/color/index.ts   |     4 +
 .../src/connection/SupersetClient.ts               |     2 +-
 .../src/connection/SupersetClientClass.ts          |    21 +-
 .../superset-ui-core/src/connection/types.ts       |     4 +-
 .../superset-ui-core/src/dashboard/types/Base.ts   |    20 +-
 .../src/query/api/v1/handleError.ts                |     2 +-
 .../superset-ui-core/src/query/buildQueryObject.ts |    12 +-
 .../superset-ui-core/src/query/processFilters.ts   |    12 +-
 .../src/query/types/AnnotationLayer.ts             |     7 +-
 .../superset-ui-core/src/query/types/Column.ts     |     6 +-
 .../src/query/types/PostProcessing.ts              |    71 +-
 .../src/query/types/QueryFormData.ts               |     6 +-
 .../packages/superset-ui-core/src/style/index.tsx  |     3 +-
 .../packages/superset-ui-core/src/utils/index.ts   |     1 +
 .../src/utils/isEqualArray.test.ts}                |    24 +-
 .../superset-ui-core}/src/utils/isEqualArray.ts    |     6 +-
 .../chart/components/ChartDataProvider.test.tsx    |    26 +-
 .../test/chart/components/SuperChart.test.tsx      |    19 +-
 .../components/createLoadableRenderer.test.tsx     |     6 +-
 .../test/chart/components/reactify.test.tsx        |     4 +-
 .../test/color/SharedLabelColorSingleton.test.ts   |   110 +
 .../test/connection/SupersetClientClass.test.ts    |   112 +-
 .../test/connection/callApi/callApi.test.ts        |    36 +-
 .../test/query/api/v1/makeApi.test.ts              |     2 +-
 .../test/query/buildQueryObject.test.ts            |    25 +
 .../test/query/getColumnLabel.test.ts              |     2 +
 .../test/query/normalizeOrderBy.test.ts            |     1 +
 .../test/query/processExtraFormData.test.ts        |     4 +-
 .../test/query/processFilters.test.ts              |    10 +-
 .../test/query/types/PostProcessing.test.ts        |     3 -
 .../packages/superset-ui-core/test/tsconfig.json   |     6 +-
 .../legacy-plugin-chart-calendar/package.json      |    34 +-
 .../legacy-plugin-chart-calendar/src/Calendar.js   |     1 -
 .../src/ReactCalendar.jsx                          |   207 +-
 .../src/vendor/cal-heatmap.css                     |   129 -
 .../src/vendor/cal-heatmap.js                      |     1 -
 .../src/vendor/d3tip.css                           |    74 -
 .../plugins/legacy-plugin-chart-chord/src/Chord.js |     6 +-
 .../src/transformProps.js                          |     3 +-
 .../src/CountryMap.js                              |    21 +-
 .../src/transformProps.js                          |    10 +-
 .../legacy-plugin-chart-heatmap/package.json       |    37 +-
 .../legacy-plugin-chart-heatmap/src/Heatmap.css    |    72 -
 .../legacy-plugin-chart-heatmap/src/Heatmap.js     |     3 -
 .../src/ReactHeatmap.jsx                           |   148 +
 .../src/vendor/d3tip.css                           |    74 -
 .../src/Histogram.jsx                              |     3 +-
 .../src/transformProps.js                          |     2 +
 .../src/controlPanel.ts                            |    12 +-
 .../src/controlPanel.ts                            |    12 +-
 .../src/controlPanel.ts                            |    14 +-
 .../legacy-plugin-chart-partition/src/Partition.js |     3 +-
 .../src/controlPanel.tsx                           |    12 +-
 .../src/transformProps.js                          |     2 +
 .../src/controlPanel.ts                            |    14 +-
 .../plugins/legacy-plugin-chart-rose/src/Rose.js   |     9 +-
 .../legacy-plugin-chart-rose/src/controlPanel.tsx  |    12 +-
 .../legacy-plugin-chart-rose/src/transformProps.js |     2 +
 .../src/SankeyLoop.js                              |     4 +-
 .../src/transformProps.js                          |     3 +-
 .../legacy-plugin-chart-sankey/src/ReactSankey.jsx |     1 -
 .../legacy-plugin-chart-sankey/src/Sankey.js       |     4 +-
 .../src/transformProps.js                          |     3 +-
 .../legacy-plugin-chart-sunburst/src/Sunburst.js   |     9 +-
 .../src/transformProps.js                          |     4 +-
 .../legacy-plugin-chart-treemap/src/Treemap.js     |     3 +-
 .../src/controlPanel.ts                            |    14 +-
 .../src/transformProps.js                          |     3 +-
 .../legacy-plugin-chart-world-map/src/WorldMap.js  |    24 +-
 .../src/controlPanel.ts                            |     4 +
 .../src/transformProps.js                          |    12 +-
 .../legacy-preset-chart-deckgl/package.json        |     4 +-
 .../src/CategoricalDeckGLContainer.jsx             |     4 +-
 .../legacy-preset-chart-deckgl/src/Multi/Multi.jsx |     4 +-
 .../src/utilities/Shared_DeckGL.jsx                |     7 +-
 .../src/utilities/controls.jsx                     |    17 -
 .../plugins/legacy-preset-chart-nvd3/package.json  |     2 +-
 .../src/Bar/controlPanel.ts                        |    38 +-
 .../src/DistBar/controlPanel.ts                    |    14 +-
 .../legacy-preset-chart-nvd3/src/NVD3Controls.tsx  |    14 +-
 .../legacy-preset-chart-nvd3/src/NVD3Vis.js        |     5 +-
 .../legacy-preset-chart-nvd3/src/ReactNVD3.jsx     |    12 +-
 .../legacy-preset-chart-nvd3/src/transformProps.js |     2 +
 .../plugins/plugin-chart-echarts/package.json      |     2 +-
 .../src/BigNumber/BigNumberViz.tsx                 |     3 -
 .../BigNumber/BigNumberWithTrendline/buildQuery.ts |    30 +-
 .../src/BoxPlot/transformProps.ts                  |    16 +-
 .../plugin-chart-echarts/src/BoxPlot/types.ts      |     3 +-
 .../src/Funnel/transformProps.ts                   |     3 +-
 .../plugin-chart-echarts/src/Funnel/types.ts       |     3 +-
 .../src/Gauge/transformProps.ts                    |     5 +-
 .../plugin-chart-echarts/src/Gauge/types.ts        |     5 +-
 .../src/Graph/transformProps.ts                    |     3 +-
 .../plugin-chart-echarts/src/Graph/types.ts        |    43 +-
 .../src/MixedTimeseries/buildQuery.ts              |     4 +-
 .../src/MixedTimeseries/transformProps.ts          |    25 +-
 .../plugin-chart-echarts/src/Pie/transformProps.ts |     3 +-
 .../plugins/plugin-chart-echarts/src/Pie/types.ts  |     2 +-
 .../src/Radar/controlPanel.tsx                     |     5 +-
 .../src/Radar/transformProps.ts                    |     3 +-
 .../src/Timeseries/Area/controlPanel.tsx           |    14 +-
 .../src/Timeseries/Regular/Bar/controlPanel.tsx    |    14 +-
 .../Timeseries/Regular/Scatter/controlPanel.tsx    |    14 +-
 .../src/Timeseries/Regular/controlPanel.tsx        |    14 +-
 .../src/Timeseries/Step/controlPanel.tsx           |    14 +-
 .../src/Timeseries/buildQuery.ts                   |    63 +-
 .../src/Timeseries/controlPanel.tsx                |    14 +-
 .../src/Timeseries/transformProps.ts               |    25 +-
 .../src/Timeseries/transformers.ts                 |    19 +-
 .../plugin-chart-echarts/src/Timeseries/types.ts   |     3 +-
 .../src/Treemap/transformProps.ts                  |     5 +-
 .../plugin-chart-echarts/src/Treemap/types.ts      |     3 +-
 .../src/utils/convertInteger.ts}                   |     8 +-
 .../plugin-chart-echarts/src/utils/forecast.ts     |     4 +-
 .../test/BigNumber/transformProps.test.ts          |     2 +-
 .../test/BoxPlot/buildQuery.test.ts                |    11 +-
 .../test/BoxPlot/transformProps.test.ts            |     7 +-
 .../test/Funnel/transformProps.test.ts             |     7 +-
 .../test/Gauge/buildQuery.test.ts                  |     2 +-
 .../test/Gauge/transformProps.test.ts              |    32 +-
 .../test/Pie/transformProps.test.ts                |     4 +-
 .../test/Timeseries/transformProps.test.ts         |    38 +-
 .../test/Treemap/transformProps.test.ts            |     3 +-
 .../src/plugin/controlPanel.tsx                    |     1 +
 .../src/react-pivottable/Styles.js                 |   235 +-
 .../test/plugin/buildQuery.test.ts                 |     4 +-
 .../plugins/plugin-chart-table/package.json        |     2 +-
 .../plugins/plugin-chart-table/src/Styles.tsx      |   140 +-
 .../plugins/plugin-chart-table/src/buildQuery.ts   |     2 +
 .../plugin-chart-table/src/controlPanel.tsx        |    14 +-
 .../plugins/plugin-chart-table/src/types.ts        |     2 +-
 .../plugin-chart-table/src/utils/isEqualColumns.ts |     2 +-
 .../plugins/plugin-chart-table/test/testData.ts    |     2 +
 .../plugins/plugin-chart-table/tsconfig.json       |    11 +-
 .../src/chart/WordCloud.tsx                        |    15 +-
 .../src/legacyPlugin/transformProps.ts             |     2 +
 .../src/plugin/transformProps.ts                   |     3 +-
 .../spec/fixtures/mockNativeFilters.ts             |     6 +-
 superset-frontend/spec/helpers/reducerIndex.ts     |     2 +-
 .../Slider/index.tsx => GlobalStyles.tsx}          |    27 +-
 superset-frontend/src/SqlLab/App.jsx               |     2 +
 superset-frontend/src/SqlLab/actions/sqlLab.js     |    65 +-
 .../src/SqlLab/actions/sqlLab.test.js              |    44 +-
 .../SqlLab/components/AceEditorWrapper/index.tsx   |    14 +-
 .../src/SqlLab/components/App/index.jsx            |    12 +-
 .../src/SqlLab/components/ColumnElement/index.tsx  |     8 +-
 .../components/QueryHistory/QueryHistory.test.tsx} |    44 +-
 .../src/SqlLab/components/QueryHistory/index.tsx   |    22 +-
 .../src/SqlLab/components/ResultSet/index.tsx      |    16 +-
 .../RunQueryActionButton.test.jsx                  |     9 +-
 .../components/RunQueryActionButton/index.tsx      |    10 +-
 .../SaveDatasetModal/SaveDatasetModal.test.tsx     |     3 +-
 .../SqlLab/components/SaveDatasetModal/index.tsx   |     4 +-
 .../src/SqlLab/components/SaveQuery/index.tsx      |     3 +-
 .../components/ScheduleQueryButton/index.tsx       |     3 +-
 .../SqlLab/components/SouthPane/SouthPane.test.jsx |    50 +-
 .../src/SqlLab/components/SouthPane/index.tsx      |    22 +-
 .../SqlLab/components/SqlEditor/SqlEditor.test.jsx |     4 +-
 .../src/SqlLab/components/SqlEditor/index.jsx      |    48 +-
 .../SqlLab/components/SqlEditorLeftBar/index.tsx   |    42 +-
 .../TabbedSqlEditors/TabbedSqlEditors.test.jsx     |    16 +
 .../SqlLab/components/TabbedSqlEditors/index.jsx   |    63 +-
 superset-frontend/src/SqlLab/fixtures.ts           |    40 +-
 superset-frontend/src/SqlLab/reducers/sqlLab.js    |     6 +-
 superset-frontend/src/SqlLab/types.ts              |     3 +
 .../src/addSlice/AddSliceContainer.tsx             |     8 +-
 superset-frontend/src/addSlice/App.tsx             |     2 +
 .../src/assets/images/empty_sql_chart.svg          |    22 +
 .../assets/stylesheets/less/cosmo/variables.less   |     6 +-
 .../src/assets/stylesheets/less/fonts.less         |     9 +-
 .../src/assets/stylesheets/less/variables.less     |     2 +-
 superset-frontend/src/components/Alert/index.tsx   |     5 +-
 .../src/components/AlteredSliceTag/index.jsx       |     3 +
 .../src/components/AnchorLink/AnchorLink.test.jsx  |     8 +-
 .../src/components/AnchorLink/index.jsx            |    11 +-
 .../src/components/AsyncAceEditor/index.tsx        |     4 +-
 superset-frontend/src/components/Button/index.tsx  |    22 +-
 .../src/components/CertifiedBadge/index.tsx        |     9 +-
 .../src/{chart => components/Chart}/Chart.jsx      |    30 +-
 .../{chart => components/Chart}/ChartContainer.jsx |     4 +-
 .../Chart}/ChartErrorMessage.tsx                   |     0
 .../{chart => components/Chart}/ChartRenderer.jsx  |    44 +-
 .../Chart}/ChartRenderer.test.jsx                  |     2 +-
 .../src/{chart => components/Chart}/chartAction.js |     0
 .../Chart}/chartActions.test.js                    |     2 +-
 .../{chart => components/Chart}/chartReducer.ts    |     0
 .../Chart}/chartReducers.test.js                   |     4 +-
 .../components/CronPicker/CronPicker.stories.tsx   |     3 +-
 .../DatabaseSelector/DatabaseSelector.test.tsx     |     4 +
 .../Datasource/ChangeDatasourceModal.tsx           |     3 +-
 .../Datasource}/CollectionTable.test.jsx           |     2 +-
 .../Datasource}/CollectionTable.tsx                |     0
 .../src/components/Datasource/DatasourceEditor.jsx |    13 +-
 .../src/components/Datasource/DatasourceModal.tsx  |    13 +-
 .../{CRUD => components/Datasource}/Field.test.tsx |     0
 .../src/{CRUD => components/Datasource}/Field.tsx  |     0
 .../{CRUD => components/Datasource}/Fieldset.tsx   |     0
 .../src/{CRUD => components/Datasource}/crud.less  |     2 +-
 .../src/{CRUD => components/Datasource}/utils.js   |     0
 .../src/components/DeleteModal/index.tsx           |     2 +-
 .../src/components/Dropdown/Dropdown.stories.tsx   |     2 +-
 .../src/components/Dropdown/index.tsx              |    19 +-
 .../DropdownButton/DropdownButton.stories.tsx      |     2 +-
 .../src/components/DropdownButton/index.tsx        |     6 +-
 .../src/components/EmptyState/index.tsx            |     2 +-
 .../src/components/FacePile/FacePile.test.tsx      |     2 +-
 .../src/components/FacePile/index.tsx              |     2 +-
 superset-frontend/src/components/Form/Form.tsx     |     4 +-
 .../src/components/Form/LabeledErrorBoundInput.tsx |     2 +-
 .../src/components/FormRow/FormRow.test.jsx        |     2 +-
 superset-frontend/src/components/FormRow/index.jsx |     2 +-
 superset-frontend/src/components/Icons/Icon.tsx    |     2 +-
 .../components/ImportModal/ImportModal.test.tsx    |     2 +-
 .../src/components/ImportModal/index.tsx           |     2 +-
 .../components/{Form/Form.tsx => Input/index.tsx}  |    25 +-
 superset-frontend/src/components/Label/index.tsx   |     2 +-
 .../src/components/ListView/Filters/Search.tsx     |     4 +-
 .../src/components/ListView/ListView.test.jsx      |     2 +-
 .../src/components/ListView/ListView.tsx           |     2 +-
 .../ListViewCard/ListViewCard.stories.tsx          |     7 +-
 .../src/components/ListViewCard/index.tsx          |    14 +-
 .../components => components/Menu}/index.tsx       |   104 +-
 .../{ToastContainer.jsx => ToastContainer.tsx}     |     6 +-
 .../components/MessageToasts/ToastPresenter.tsx    |    29 +-
 .../src/components/MessageToasts/withToasts.tsx    |     3 +-
 superset-frontend/src/components/Modal/Modal.tsx   |     5 +-
 superset-frontend/src/components/Popover/index.tsx |     3 +
 .../src/components/PopoverDropdown/index.tsx       |     7 +-
 .../HeaderReportActionsDropdown/index.tsx          |     3 +-
 .../src/components/ReportModal/index.tsx           |    35 +-
 .../src/components/ReportModal/styles.tsx          |    26 +-
 .../src/components/Select/Select.stories.tsx       |    48 +-
 .../src/components/Select/Select.test.tsx          |   277 +-
 superset-frontend/src/components/Select/Select.tsx |   536 +-
 superset-frontend/src/components/Select/styles.tsx |     4 +-
 superset-frontend/src/components/Select/utils.ts   |    44 +-
 superset-frontend/src/components/Slider/index.tsx  |     4 +-
 .../src/components/TableCollection/index.tsx       |    27 +-
 .../TableSelector/TableSelector.test.tsx           |    80 +-
 .../src/components/TableSelector/index.tsx         |     7 +-
 .../src/components/TableView/TableView.stories.tsx |    28 +-
 .../src/components/TableView/TableView.test.tsx    |    18 +
 .../src/components/TableView/TableView.tsx         |     5 +-
 superset-frontend/src/components/Tabs/Tabs.tsx     |     8 +-
 .../TimezoneSelector/TimezoneSelector.stories.tsx  |     4 +-
 .../TimezoneSelector/TimezoneSelector.test.tsx     |   180 +-
 .../src/components/TimezoneSelector/index.tsx      |    71 +-
 .../URLShortLinkButton/URLShortLinkButton.test.tsx |    52 +-
 .../src/components/URLShortLinkButton/index.jsx    |    27 +-
 .../src/components/UiConfigContext/index.tsx       |     2 +-
 superset-frontend/src/components/index.ts          |    56 +
 superset-frontend/src/constants.ts                 |    29 +
 .../src/dashboard/actions/dashboardInfo.ts         |    27 +-
 .../src/dashboard/actions/dashboardLayout.js       |     6 +-
 .../src/dashboard/actions/dashboardState.js        |    82 +-
 .../src/dashboard/actions/dashboardState.test.js   |     8 +-
 superset-frontend/src/dashboard/actions/hydrate.js |    28 +-
 .../src/dashboard/components/AddSliceCard.jsx      |     1 -
 .../CrossFilterScopingForm/index.tsx               |     2 +-
 .../CrossFilterScopingModal.tsx                    |     4 +-
 .../CrossFilterScopingModal/utils/index.ts         |     2 +-
 .../src/dashboard/components/CssEditor/index.jsx   |     7 +-
 .../DashboardBuilder/DashboardBuilder.tsx          |    16 +-
 .../DashboardBuilder/DashboardContainer.tsx        |    68 +-
 .../dashboard/components/DashboardBuilder/state.ts |    21 +-
 .../components/DashboardEmbedControls.tsx          |   228 +
 .../components/FiltersBadge/FiltersBadge.test.tsx  |     2 +-
 .../dashboard/components/FiltersBadge/Styles.tsx   |   100 +-
 .../dashboard/components/FiltersBadge/selectors.ts |    36 +-
 .../HeaderActionsDropdown.test.tsx                 |     7 +-
 .../Header/HeaderActionsDropdown/index.jsx         |    23 +-
 .../src/dashboard/components/Header/index.jsx      |    43 +-
 .../dashboard/components/PropertiesModal/index.tsx |    49 +-
 .../src/dashboard/components/SaveModal.tsx         |     3 +-
 .../src/dashboard/components/SliceAdder.jsx        |     2 +-
 .../SliceHeaderControls.test.tsx                   |     4 +-
 .../components/SliceHeaderControls/index.tsx       |    10 +-
 .../components/filterscope/FilterScopeSelector.jsx |     4 +-
 .../dashboard/components/gridComponents/Chart.jsx  |    31 +-
 .../components/gridComponents/Chart.test.jsx       |    10 +-
 .../components/gridComponents/ChartHolder.jsx      |    12 +-
 .../components/gridComponents/ChartHolder.test.tsx |     4 +-
 .../dashboard/components/gridComponents/Tab.jsx    |     2 +
 .../dashboard/components/gridComponents/Tabs.jsx   |     4 +-
 .../components/gridComponents/Tabs.test.jsx        |     4 +-
 .../menu/ShareMenuItems/ShareMenuItems.test.tsx    |    18 +-
 .../components/menu/ShareMenuItems/index.tsx       |    68 +-
 .../CascadeFilterControl.test.tsx                  |    95 -
 .../CascadeFilters/CascadeFilterControl/index.tsx  |    77 -
 .../CascadeFilters/CascadePopover/index.tsx        |   247 -
 .../FilterBar/FilterControls/FilterControl.tsx     |    43 +-
 .../FilterBar/FilterControls/FilterControls.tsx    |    68 +-
 .../FilterBar/FilterControls/FilterValue.tsx       |    74 +-
 .../FilterBar/FilterControls/state.ts              |    22 +-
 .../FilterBar/FilterControls/types.ts              |     1 +
 .../FilterBar/FilterControls/utils.ts              |    26 -
 .../FilterBar/FilterSets/EditSection.tsx           |     6 +-
 .../FilterBar/FilterSets/FilterSetUnit.tsx         |    15 +-
 .../FilterBar/FilterSets/FiltersHeader.tsx         |    22 +-
 .../nativeFilters/FilterBar/Header/index.tsx       |     4 +-
 .../components/nativeFilters/FilterBar/index.tsx   |   263 +-
 .../nativeFilters/FilterBar/keyValue.tsx           |    17 +-
 .../components/nativeFilters/FilterBar/state.ts    |     2 +-
 .../components/nativeFilters/FilterBar/utils.ts    |    24 +-
 .../nativeFilters/FilterCard/DependenciesRow.tsx   |    23 +-
 .../nativeFilters/FilterCard/FilterCard.test.tsx   |   306 +
 .../nativeFilters/FilterCard/ScopeRow.tsx          |    51 +-
 .../components/nativeFilters/FilterCard/Styles.ts  |     4 +
 .../components/nativeFilters/FilterCard/index.tsx  |     9 +-
 .../components/nativeFilters/FilterCard/types.ts   |     2 +-
 .../FilterCard/useFilterDependencies.ts            |     2 +-
 .../nativeFilters/FilterCard/useFilterScope.ts     |    41 +-
 .../FiltersConfigModal/DividerConfigForm.tsx       |     2 +-
 .../FiltersConfigModal/DraggableFilter.tsx         |    10 +-
 .../FiltersConfigModal/FilterConfigPane.test.tsx   |    51 +-
 .../FiltersConfigModal/FilterConfigurePane.tsx     |    16 +-
 .../FiltersConfigModal/FilterTitleContainer.tsx    |   237 +-
 .../FiltersConfigModal/FilterTitlePane.tsx         |    43 +-
 .../FiltersConfigForm/CollapsibleControl.tsx       |    12 +-
 .../FiltersConfigForm/ColumnSelect.tsx             |     3 +-
 .../FiltersConfigForm/DefaultValue.tsx             |     2 +-
 .../FiltersConfigForm/DependencyList.tsx           |   213 +
 .../FilterScope/FilterScope.test.tsx               |    14 +-
 .../FiltersConfigForm/FilterScope/FilterScope.tsx  |     4 +-
 .../FiltersConfigForm/FilterScope/ScopingTree.tsx  |     2 +-
 .../FiltersConfigForm/FiltersConfigForm.tsx        |   136 +-
 .../FiltersConfigForm/getControlItemsMap.test.tsx  |     2 +-
 .../FiltersConfigForm/getControlItemsMap.tsx       |     7 +-
 .../FiltersConfigModal/FiltersConfigForm/state.ts  |     2 +-
 .../FiltersConfigModal/FiltersConfigForm/utils.ts  |     2 +-
 .../FiltersConfigModal/FiltersConfigModal.test.tsx |    18 +-
 .../FiltersConfigModal/FiltersConfigModal.tsx      |   241 +-
 .../FiltersConfigModal/NativeFiltersModal.test.tsx |     5 +-
 .../nativeFilters/FiltersConfigModal/state.ts      |     2 +-
 .../nativeFilters/FiltersConfigModal/types.ts      |     9 +-
 .../nativeFilters/FiltersConfigModal/utils.ts      |   172 +-
 .../dashboard/components/nativeFilters/state.ts    |    41 +-
 .../dashboard/components/nativeFilters/utils.ts    |    10 +-
 .../src/dashboard/containers/Chart.jsx             |     8 +-
 .../src/dashboard/containers/Dashboard.ts          |     2 +-
 .../dashboard/containers/DashboardComponent.jsx    |     2 +
 .../src/dashboard/containers/DashboardPage.tsx     |    55 +-
 .../types.ts => containers/DashboardRoute.tsx}     |    12 +-
 .../src/dashboard/reducers/dashboardState.js       |    30 +
 .../src/dashboard/reducers/dashboardState.test.js  |     9 +-
 superset-frontend/src/dashboard/styles.ts          |     3 +
 .../dashboard/stylesheets/components/header.less   |     2 +-
 .../dashboard/stylesheets/components/markdown.less |     6 +-
 superset-frontend/src/dashboard/types.ts           |    17 +-
 .../src/dashboard/util/activeDashboardFilters.js   |     8 +-
 .../util/charts/getFormDataWithExtraFilters.ts     |     6 +
 .../src/dashboard/util/filterboxMigrationHelper.ts |     7 +-
 .../util/getChartIdsInFilterScope.ts}              |    34 +-
 .../src/dashboard/util/getDropPosition.js          |     9 -
 superset-frontend/src/embedded/index.tsx           |    85 +-
 superset-frontend/src/explore/App.jsx              |     2 +
 .../explore/components/ControlPanelsContainer.tsx  |    26 +-
 .../explore/components/DataTableControl/index.tsx  |    11 +-
 .../explore/components/DataTablesPane/index.tsx    |     2 +-
 .../explore/components/DatasourcePanel/index.tsx   |     3 +-
 .../src/explore/components/EmbedCodeButton.jsx     |    25 +-
 .../explore/components/EmbedCodeButton.test.jsx    |    10 +-
 .../explore/components/ExploreActionButtons.tsx    |    21 +-
 .../ExploreAdditionalActionsMenu.test.jsx          |     5 +-
 .../ExploreAdditionalActionsMenu.test.tsx          |     2 +-
 .../ExploreAdditionalActionsMenu/index.jsx         |     7 +-
 .../components/ExploreChartHeader/index.jsx        |    18 +-
 .../src/explore/components/ExploreChartPanel.jsx   |     2 +-
 .../components/ExploreViewContainer/index.jsx      |    12 +-
 .../components/ExportToCSVDropdown/index.tsx       |     7 +-
 .../explore/components/PropertiesModal/index.tsx   |    23 +-
 .../src/explore/components/SaveModal.test.jsx      |    12 +-
 .../src/explore/components/SaveModal.tsx           |    16 +-
 .../controls/AnnotationLayerControl/index.jsx      |    16 +-
 .../explore/components/controls/BoundsControl.tsx  |     2 +-
 .../controls/CollectionControl/index.jsx           |     2 +-
 .../FormattingPopoverContent.tsx                   |    33 +-
 .../ControlPopover/ControlPopover.test.tsx         |   126 +
 .../controls/ControlPopover/ControlPopover.tsx     |   118 +
 .../components/controls/CustomListItem/index.tsx   |     2 +-
 .../DatasourceControl/DatasourceControl.test.jsx   |    15 +-
 .../DatasourceControl/DatasourceControl.test.tsx   |     1 +
 .../controls/DatasourceControl/index.jsx           |    15 +-
 .../controls/DateFilterControl/DateFilterLabel.tsx |   120 +-
 .../DateFilterControl/components/AdvancedFrame.tsx |     2 +-
 .../DateFilterControl/components/CustomFrame.tsx   |    11 +-
 .../components/controls/DateFilterControl/types.ts |     1 -
 .../controls/DateFilterControl/utils/constants.ts  |    39 +-
 .../ColumnSelectPopoverTrigger.tsx                 |     7 +-
 .../DndColumnSelectControl/DndColumnSelect.tsx     |     1 +
 .../DndColumnSelectPopoverTitle.jsx                |     2 +-
 .../FilterBoxItemControl.test.jsx                  |     4 +-
 .../FilterBoxItemControl.test.tsx                  |     4 +-
 .../controls/FilterBoxItemControl/index.jsx        |     7 +-
 .../index.tsx                                      |    27 +-
 .../AdhocFilterPopoverTrigger.test.tsx             |     3 +-
 .../AdhocFilterPopoverTrigger/index.tsx            |     7 +-
 .../explore/components/controls/HiddenControl.tsx  |     2 +-
 .../MetricControl/AdhocMetricEditPopoverTitle.jsx  |     2 +-
 .../MetricControl/AdhocMetricOption.test.jsx       |     4 +-
 .../MetricControl/AdhocMetricPopoverTrigger.tsx    |     6 +-
 .../explore/components/controls/SelectControl.jsx  |    16 +-
 .../components/controls/SelectControl.test.jsx     |    64 +-
 .../explore/components/controls/SpatialControl.jsx |     2 +-
 .../components/controls/TextAreaControl.jsx        |     2 +-
 .../components/controls/TextAreaControl.test.jsx   |     2 +-
 .../components/controls/TextControl/index.tsx      |     2 +-
 .../controls/TimeSeriesColumnControl/index.jsx     |    11 +-
 .../explore/components/controls/ViewQueryModal.tsx |     2 +-
 .../controls/VizTypeControl/VizTypeGallery.tsx     |    88 +-
 .../src/explore/controlPanels/sections.tsx         |    12 +-
 superset-frontend/src/explore/controls.jsx         |     4 +-
 .../explore/exploreUtils/formData.test.ts}         |    20 +-
 .../src/explore/exploreUtils/formData.ts           |    18 +-
 .../src/explore/exploreUtils/index.js              |    10 +-
 .../src/explore/reducers/exploreReducer.js         |     2 +-
 superset-frontend/src/explore/reducers/index.js    |     2 +-
 .../components/GroupBy/GroupByFilterPlugin.tsx     |     5 +-
 .../filters/components/GroupBy/transformProps.ts   |    11 +-
 .../src/filters/components/GroupBy/types.ts        |     1 +
 .../filters/components/Range/RangeFilterPlugin.tsx |    16 +-
 .../src/filters/components/Range/transformProps.ts |    11 +-
 .../components/Select/SelectFilterPlugin.test.tsx  |    27 +-
 .../components/Select/SelectFilterPlugin.tsx       |     7 +-
 .../filters/components/Select/transformProps.ts    |    11 +-
 .../src/filters/components/Select/types.ts         |     4 +-
 .../filters/components/Time/TimeFilterPlugin.tsx   |     5 +-
 .../src/filters/components/Time/transformProps.ts  |    11 +-
 .../src/filters/components/Time/types.ts           |     2 +
 .../TimeColumn/TimeColumnFilterPlugin.tsx          |     5 +-
 .../components/TimeColumn/transformProps.ts        |    11 +-
 .../src/filters/components/TimeColumn/types.ts     |     1 +
 .../components/TimeGrain/TimeGrainFilterPlugin.tsx |     5 +-
 .../filters/components/TimeGrain/transformProps.ts |    12 +-
 .../src/filters/components/TimeGrain/types.ts      |     1 +
 superset-frontend/src/filters/components/types.ts  |     1 +
 .../src/hooks/apiResources/dashboards.ts           |     5 +-
 superset-frontend/src/hooks/useUrlShortener.ts     |    39 -
 superset-frontend/src/preamble.ts                  |     3 +
 superset-frontend/src/profile/App.tsx              |     2 +
 .../src/profile/components/App.test.tsx            |     2 +-
 superset-frontend/src/profile/components/App.tsx   |     2 +-
 superset-frontend/src/types/Chart.ts               |     2 +
 superset-frontend/src/types/brace.d.ts             |     1 +
 .../rankedSearchCompare.test.ts}                   |    48 +-
 .../utils/rankedSearchCompare.ts}                  |    27 +-
 .../src/utils/sortNumericValues.test.ts            |    61 +
 superset-frontend/src/utils/sortNumericValues.ts   |    52 +
 superset-frontend/src/utils/urlUtils.ts            |   107 +-
 superset-frontend/src/views/App.tsx                |     2 +
 .../src/views/CRUD/alert/AlertReportModal.test.jsx |    18 +
 .../src/views/CRUD/alert/AlertReportModal.tsx      |    38 +-
 .../src/views/CRUD/alert/ExecutionLog.tsx          |    22 +-
 .../components/AlertReportCronScheduler.test.tsx   |     3 +-
 .../alert/components/AlertReportCronScheduler.tsx  |     3 +-
 .../CRUD/alert/components/AlertStatusIcon.tsx      |     4 +-
 .../src/views/CRUD/annotation/AnnotationList.tsx   |    30 +-
 .../src/views/CRUD/chart/ChartCard.tsx             |     7 +-
 .../src/views/CRUD/chart/ChartList.tsx             |     2 +-
 superset-frontend/src/views/CRUD/chart/types.ts    |     1 +
 .../src/views/CRUD/dashboard/DashboardCard.tsx     |    21 +-
 .../views/CRUD/dashboard/DashboardList.test.jsx    |    68 +-
 .../src/views/CRUD/dashboard/DashboardList.tsx     |    79 +-
 .../views/CRUD/data/database/DatabaseList.test.jsx |    23 +
 .../src/views/CRUD/data/database/DatabaseList.tsx  |    56 +-
 .../DatabaseConnectionForm/CommonParameters.tsx    |     4 +-
 .../DatabaseConnectionForm/EncryptedField.tsx      |    30 +-
 .../data/database/DatabaseModal/ExtraOptions.tsx   |    20 +-
 .../data/database/DatabaseModal/index.test.jsx     |    17 +-
 .../CRUD/data/database/DatabaseModal/index.tsx     |    36 +-
 .../CRUD/data/database/DatabaseModal/styles.ts     |   161 +-
 .../src/views/CRUD/data/database/types.ts          |     4 +
 .../src/views/CRUD/data/dataset/types.ts           |     1 +
 superset-frontend/src/views/CRUD/hooks.ts          |    14 +-
 superset-frontend/src/views/CRUD/utils.test.tsx    |    17 +
 superset-frontend/src/views/CRUD/utils.tsx         |    55 +-
 .../src/views/CRUD/welcome/ChartTable.tsx          |     4 +-
 .../src/views/CRUD/welcome/DashboardTable.tsx      |     4 +-
 .../src/views/CRUD/welcome/EmptyState.tsx          |     2 +-
 .../src/views/CRUD/welcome/SavedQueries.tsx        |     7 +-
 .../src/views/CRUD/welcome/Welcome.tsx             |    27 +-
 .../src/views/components/LanguagePicker.test.tsx   |     2 +-
 .../src/views/components/LanguagePicker.tsx        |     2 +-
 superset-frontend/src/views/components/Menu.tsx    |    20 +-
 .../src/views/components/MenuRight.tsx             |    52 +-
 .../src/views/components/SubMenu.test.tsx          |    22 +-
 superset-frontend/src/views/components/SubMenu.tsx |    56 +-
 superset-frontend/src/views/components/types.ts    |     7 +-
 superset-frontend/src/views/routes.tsx             |     6 +-
 superset-frontend/src/views/store.ts               |     2 +-
 .../src/visualizations/TimeTable/TimeTable.jsx     |    33 +-
 .../tools/eslint-plugin-theme-colors/colors.js     |   172 +
 .../tools/eslint-plugin-theme-colors/index.js      |   114 +
 .../tools/eslint-plugin-theme-colors/package.json  |    17 +
 superset-frontend/tsconfig.json                    |     7 +-
 superset-frontend/webpack.config.js                |     6 +-
 .../annotations/commands/update.py                 |     4 +-
 superset/annotation_layers/annotations/schemas.py  |     8 +-
 superset/cachekeys/api.py                          |     6 +-
 superset/cachekeys/schemas.py                      |    15 +-
 superset/charts/api.py                             |     2 +
 superset/charts/commands/export.py                 |     8 +-
 superset/charts/data/api.py                        |    11 +-
 superset/charts/schemas.py                         |   158 +-
 superset/cli/celery.py                             |    15 +-
 superset/cli/examples.py                           |    10 +-
 superset/cli/importexport.py                       |    31 +-
 superset/cli/main.py                               |     5 +-
 superset/cli/thumbnails.py                         |     6 +-
 superset/cli/update.py                             |     3 +-
 superset/columns/models.py                         |     5 +-
 superset/commands/base.py                          |     2 +-
 superset/commands/exceptions.py                    |     7 +-
 .../export}/__init__.py                            |     0
 superset/commands/{export.py => export/assets.py}  |    53 +-
 superset/commands/{export.py => export/models.py}  |    11 +-
 superset/commands/importers/exceptions.py          |     5 +
 superset/commands/importers/v1/__init__.py         |    53 +-
 superset/commands/importers/v1/assets.py           |   164 +
 superset/commands/importers/v1/utils.py            |    58 +-
 superset/commands/utils.py                         |     4 +-
 superset/common/query_actions.py                   |    26 +-
 superset/common/query_context.py                   |    19 +-
 superset/common/query_context_factory.py           |     2 +-
 superset/common/query_context_processor.py         |    41 +-
 superset/common/query_object.py                    |    32 +-
 superset/common/query_object_factory.py            |     8 +-
 superset/common/utils/dataframe_utils.py           |     4 +-
 superset/config.py                                 |    28 +-
 superset/connectors/base/models.py                 |    13 +-
 superset/connectors/druid/models.py                |     3 +-
 superset/connectors/druid/views.py                 |    20 +-
 superset/connectors/sqla/models.py                 |   381 +-
 superset/connectors/sqla/utils.py                  |   136 +-
 superset/connectors/sqla/views.py                  |     2 +-
 superset/dao/base.py                               |    28 +-
 superset/dashboards/api.py                         |   220 +-
 superset/dashboards/commands/export.py             |    18 +-
 superset/dashboards/commands/importers/v0.py       |     3 +-
 superset/dashboards/commands/importers/v1/utils.py |     2 +-
 superset/dashboards/dao.py                         |     1 +
 superset/dashboards/filter_sets/commands/base.py   |     3 +-
 superset/dashboards/filter_sets/schemas.py         |     6 +-
 superset/dashboards/filter_state/api.py            |     8 +-
 .../dashboards/filter_state/commands/create.py     |    11 +-
 .../dashboards/filter_state/commands/delete.py     |    14 +-
 superset/dashboards/filter_state/commands/get.py   |     8 +-
 .../dashboards/filter_state/commands/update.py     |    15 +-
 superset/dashboards/filters.py                     |    42 +-
 .../permalink}/__init__.py                         |     0
 superset/dashboards/permalink/api.py               |   172 +
 .../permalink/commands}/__init__.py                |     0
 .../permalink/commands/base.py}                    |    25 +-
 superset/dashboards/permalink/commands/create.py   |    64 +
 superset/dashboards/permalink/commands/get.py      |    61 +
 .../permalink/exceptions.py}                       |    23 +-
 .../{key_value => dashboards/permalink}/schemas.py |    29 +-
 .../permalink/types.py}                            |    16 +-
 superset/dashboards/schemas.py                     |    24 +-
 superset/databases/api.py                          |     9 +-
 superset/databases/commands/create.py              |     5 +-
 superset/databases/commands/exceptions.py          |     6 +-
 superset/databases/commands/export.py              |    37 +-
 superset/databases/commands/test_connection.py     |     3 +-
 superset/databases/commands/validate.py            |     6 +-
 superset/databases/dao.py                          |     6 +-
 superset/databases/filters.py                      |     3 +-
 superset/databases/schemas.py                      |    36 +-
 superset/datasets/api.py                           |     6 +-
 superset/datasets/commands/export.py               |    43 +-
 superset/datasets/commands/importers/v0.py         |     5 +-
 superset/datasets/commands/update.py               |     3 +-
 superset/datasets/schemas.py                       |     6 +
 superset/db_engine_specs/base.py                   |    77 +-
 superset/db_engine_specs/bigquery.py               |     3 +-
 superset/db_engine_specs/databricks.py             |    25 +-
 superset/db_engine_specs/drill.py                  |     7 +-
 superset/db_engine_specs/duckdb.py                 |    80 +
 superset/db_engine_specs/gsheets.py                |    17 +-
 superset/db_engine_specs/hive.py                   |     5 +-
 superset/db_engine_specs/mysql.py                  |    48 +-
 superset/db_engine_specs/postgres.py               |    12 +-
 superset/db_engine_specs/presto.py                 |    61 +-
 superset/db_engine_specs/trino.py                  |    27 +-
 .../{annotation_layers => embedded}/__init__.py    |     0
 superset/embedded/dao.py                           |    53 +
 superset/embedded/view.py                          |    80 +
 superset/errors.py                                 |     3 +
 superset/examples/birth_names.py                   |    19 +-
 superset/examples/world_bank.py                    |     4 +-
 superset/exceptions.py                             |    14 +-
 superset/explore/form_data/api.py                  |    10 +-
 superset/explore/form_data/commands/create.py      |    14 +-
 superset/explore/form_data/commands/delete.py      |    14 +-
 superset/explore/form_data/commands/get.py         |     6 +-
 superset/explore/form_data/commands/update.py      |    23 +-
 .../permalink}/__init__.py                         |     0
 superset/explore/permalink/api.py                  |   171 +
 .../permalink/commands}/__init__.py                |     0
 .../permalink/commands/base.py}                    |    25 +-
 superset/explore/permalink/commands/create.py      |    64 +
 superset/explore/permalink/commands/get.py         |    65 +
 .../health.py => explore/permalink/exceptions.py}  |    23 +-
 .../{key_value => explore/permalink}/schemas.py    |    26 +-
 .../exceptions.py => explore/permalink/types.py}   |    17 +-
 superset/explore/{form_data => }/utils.py          |     0
 superset/{extensions.py => extensions/__init__.py} |    33 +-
 superset/extensions/metastore_cache.py             |   107 +
 .../__init__.py                                    |     0
 superset/importexport/api.py                       |   163 +
 superset/initialization/__init__.py                |    14 +-
 superset/jinja_context.py                          |     5 +-
 superset/key_value/commands/create.py              |    75 +-
 superset/key_value/commands/delete.py              |    46 +-
 .../commands/{delete.py => delete_expired.py}      |    43 +-
 superset/key_value/commands/get.py                 |    49 +-
 superset/key_value/commands/update.py              |    75 +-
 superset/key_value/commands/upsert.py              |   106 +
 superset/key_value/{commands => }/exceptions.py    |     5 +
 superset/key_value/models.py                       |    38 +
 superset/key_value/shared_entries.py               |    51 +
 .../key_value/{commands/parameters.py => types.py} |    33 +-
 superset/key_value/utils.py                        |    45 +-
 superset/migrations/shared/security_converge.py    |     4 +-
 superset/migrations/shared/utils.py                |    66 +
 ...4fbb_add_type_to_native_filter_configuration.py |     3 +-
 .../1f6dca87d1a2_security_converge_dashboards.py   |    69 +-
 .../versions/2e5a0ee25ed4_refractor_alerting.py    |    45 +-
 .../migrations/versions/2f1d15e8a6af_add_alerts.py |    25 +-
 ...9248280_add_creation_method_to_reports_model.py |     4 +-
 .../40f16acf1ba7_security_converge_reports.py      |    22 +-
 .../42b4c9e01447_security_converge_databases.py    |    42 +-
 .../45731db65d9c_security_converge_datasets.py     |    37 +-
 .../versions/49b5a32daba5_add_report_schedules.py  |    10 +-
 .../4b84f97828aa_security_converge_logs.py         |    12 +-
 ...d617f14_add_on_saved_query_delete_tab_state_.py |    69 +
 ...s_py.py => 6766938c6065_add_key_value_store.py} |    43 +-
 ...b0ca7944_change_adhoc_filter_b_from_none_to_.py |    84 +
 .../73fd22e742ab_add_dynamic_plugins_py.py         |    10 +-
 ...8ee129739cf9_security_converge_css_templates.py |    37 +-
 ...6e99fb176a0_add_import_mixing_to_saved_query.py |     5 +-
 ...978245563a02_migrate_iframe_to_dash_markdown.py |     5 +-
 ...ab9a9d86e695_deprecate_time_range_endpoints.py} |    20 +-
 ...e27eaf93db_add_extra_config_column_to_alerts.py |     7 +-
 ...208f_collapse_alerting_models_into_a_single_.py |    34 +-
 .../b4456560d4f3_change_table_unique_constraint.py |     2 +-
 ...b56500de1855_add_uuid_column_to_import_mixin.py |     5 +-
 .../b5998378c225_add_certificate_to_dbs.py         |     3 +-
 ...8e252_fix_query_and_saved_query_null_schema.py} |    54 +-
 .../versions/b8d3a24d9131_new_dataset_models.py    |   269 +-
 .../c25cb2c78727_security_converge_annotations.py  |    52 +-
 .../c501b7c653a3_add_missing_uuid_column.py        |     5 +-
 .../versions/c82ee8a39623_add_implicit_tags.py     |     5 +-
 ...c878781977c6_alert_reports_shared_uniqueness.py |     3 +-
 .../ccb74baaa89b_security_converge_charts.py       |    67 +-
 ...0d715cc_add_limiting_factor_column_to_query_.py |     6 +-
 ...e38177dbf641_security_converge_saved_queries.py |    57 +-
 ...828ac4e_add_rls_filter_type_and_grouping_key.py |     4 +-
 superset/models/core.py                            |    14 +-
 superset/models/dashboard.py                       |    10 +-
 superset/models/embedded_dashboard.py              |    57 +
 superset/models/helpers.py                         |     2 +-
 superset/models/slice.py                           |     2 +
 superset/models/sql_lab.py                         |     4 +-
 superset/queries/saved_queries/commands/export.py  |    41 +-
 superset/queries/saved_queries/schemas.py          |     6 +-
 superset/reports/commands/alert.py                 |     3 +-
 superset/reports/commands/base.py                  |     2 +-
 superset/reports/commands/execute.py               |    16 +-
 superset/reports/dao.py                            |     9 +-
 superset/reports/notifications/base.py             |     2 +-
 superset/reports/schemas.py                        |     4 +-
 superset/result_set.py                             |     8 +-
 superset/security/manager.py                       |    61 +-
 superset/sql_parse.py                              |   257 +-
 superset/sqllab/command.py                         |     7 +-
 superset/sqllab/query_render.py                    |     7 +-
 superset/stats_logger.py                           |     1 -
 superset/{typing.py => superset_typing.py}         |    28 +-
 superset/tasks/alerts/observer.py                  |     5 +-
 superset/tasks/async_queries.py                    |    11 +-
 superset/tasks/scheduler.py                        |    12 +-
 superset/tasks/schedules.py                        |    18 +-
 superset/tasks/slack_util.py                       |     3 +-
 superset/tasks/thumbnails.py                       |     5 +-
 superset/templates/superset/base.html              |     2 +-
 superset/templates/superset/basic.html             |     8 +-
 superset/templates/superset/theme.html             |     2 +-
 .../__init__.py                                    |     0
 superset/{key_value => temporary_cache}/api.py     |    29 +-
 .../commands}/__init__.py                          |     0
 .../commands/create.py                             |     8 +-
 .../commands/delete.py                             |     8 +-
 .../commands/entry.py                              |     0
 .../commands/exceptions.py                         |    10 +-
 .../{key_value => temporary_cache}/commands/get.py |     8 +-
 .../commands/parameters.py                         |     0
 .../commands/update.py                             |    11 +-
 superset/{key_value => temporary_cache}/schemas.py |    16 +-
 .../temporary_cache/utils.py                       |     7 +
 superset/translations/nl/LC_MESSAGES/messages.json |  4837 ++++++
 superset/translations/nl/LC_MESSAGES/messages.po   | 16043 +++++++++++++++++++
 superset/utils/cache.py                            |     9 +-
 superset/utils/cache_manager.py                    |    74 +-
 superset/utils/core.py                             |    51 +-
 superset/utils/date_parser.py                      |     9 +-
 superset/utils/encrypt.py                          |     3 +-
 superset/utils/log.py                              |     5 +-
 superset/utils/machine_auth.py                     |    10 +-
 superset/utils/mock_data.py                        |     7 +-
 superset/utils/pandas_postprocessing/__init__.py   |     2 +
 superset/utils/pandas_postprocessing/aggregate.py  |     2 +-
 superset/utils/pandas_postprocessing/boxplot.py    |     4 +-
 superset/utils/pandas_postprocessing/compare.py    |    31 +-
 .../utils/pandas_postprocessing/contribution.py    |     6 +-
 superset/utils/pandas_postprocessing/cum.py        |    27 +-
 superset/utils/pandas_postprocessing/diff.py       |     2 +-
 superset/utils/pandas_postprocessing/flatten.py    |    84 +
 superset/utils/pandas_postprocessing/geography.py  |    16 +-
 superset/utils/pandas_postprocessing/pivot.py      |     8 +-
 superset/utils/pandas_postprocessing/prophet.py    |    21 +-
 superset/utils/pandas_postprocessing/resample.py   |    48 +-
 superset/utils/pandas_postprocessing/rolling.py    |    34 +-
 superset/utils/pandas_postprocessing/select.py     |     2 +-
 superset/utils/pandas_postprocessing/sort.py       |     2 +-
 superset/utils/pandas_postprocessing/utils.py      |    55 +-
 superset/utils/profiler.py                         |     4 +-
 superset/views/alerts.py                           |     2 +-
 superset/views/annotations.py                      |     2 +-
 superset/views/api.py                              |     2 +-
 superset/views/base.py                             |    22 +-
 superset/views/base_api.py                         |     2 +-
 superset/views/chart/views.py                      |     2 +-
 superset/views/core.py                             |   115 +-
 superset/views/css_templates.py                    |     2 +-
 superset/views/dashboard/views.py                  |     6 +-
 superset/views/database/forms.py                   |    17 +-
 superset/views/database/mixins.py                  |     5 +-
 superset/views/database/views.py                   |    47 +-
 superset/views/datasource/schemas.py               |     4 +-
 superset/views/datasource/views.py                 |     8 +-
 superset/views/health.py                           |     2 +-
 superset/views/key_value.py                        |     2 +-
 superset/views/redirects.py                        |    23 +-
 superset/views/schedules.py                        |     2 +-
 superset/views/sql_lab.py                          |    26 +-
 superset/views/tags.py                             |     2 +-
 superset/{tasks => views/users}/__init__.py        |     0
 superset/{ => views}/users/api.py                  |    11 +-
 superset/{ => views}/users/schemas.py              |     0
 superset/views/utils.py                            |     7 +-
 superset/viz.py                                    |    43 +-
 tests/common/query_context_generator.py            |    35 +-
 tests/conftest.py                                  |     4 +-
 tests/fixtures/birth_names.py                      |     3 +-
 .../annotation_layers/fixtures.py                  |     5 +-
 tests/integration_tests/cache_tests.py             |     5 +-
 tests/integration_tests/celery_tests.py            |    10 +-
 tests/integration_tests/charts/api_tests.py        |    40 +-
 tests/integration_tests/charts/commands_tests.py   |    52 +-
 tests/integration_tests/charts/data/api_tests.py   |    53 +-
 tests/integration_tests/cli_tests.py               |    12 +-
 tests/integration_tests/commands_test.py           |   167 +
 tests/integration_tests/core_tests.py              |    59 +-
 tests/integration_tests/css_templates/api_tests.py |     5 +-
 tests/integration_tests/csv_upload_tests.py        |     4 +
 tests/integration_tests/dashboard_utils.py         |     4 +-
 tests/integration_tests/dashboards/api_tests.py    |    99 +-
 .../integration_tests/dashboards/commands_tests.py |    22 +
 .../dashboards/filter_sets/get_api_tests.py        |     4 +-
 .../dashboards/filter_state/api_tests.py           |   103 +-
 .../dashboards/permalink}/__init__.py              |     0
 .../dashboards/permalink/api_tests.py              |   111 +
 .../dashboards/security/security_dataset_tests.py  |     7 +-
 .../dashboards/security/security_rbac_tests.py     |    23 +-
 tests/integration_tests/databases/api_tests.py     |    16 +-
 .../integration_tests/databases/commands_tests.py  |    59 +
 tests/integration_tests/datasets/api_tests.py      |    17 +-
 tests/integration_tests/datasets/commands_tests.py |    20 +
 tests/integration_tests/datasource_tests.py        |    12 +-
 .../db_engine_specs/base_engine_spec_tests.py      |    10 +-
 .../db_engine_specs/bigquery_tests.py              |    17 +-
 .../db_engine_specs/hive_tests.py                  |     5 +-
 .../db_engine_specs/pinot_tests.py                 |     5 +-
 .../db_engine_specs/postgres_tests.py              |    26 +-
 .../db_engine_specs/presto_tests.py                |   129 +-
 .../integration_tests/embedded}/__init__.py        |     0
 tests/integration_tests/embedded/dao_tests.py      |    51 +
 .../explore/form_data/api_tests.py                 |   116 +-
 .../explore/permalink}/__init__.py                 |     0
 .../explore/permalink/api_tests.py                 |   135 +
 .../integration_tests/extensions}/__init__.py      |     0
 .../extensions/metastore_cache_test.py             |    77 +
 .../fixtures/birth_names_dashboard.py              |     4 +-
 .../integration_tests/fixtures/client.py           |    12 +-
 tests/integration_tests/fixtures/importexport.py   |     6 +-
 tests/integration_tests/fixtures/query_context.py  |     2 -
 tests/integration_tests/form_tests.py              |     6 +-
 tests/integration_tests/import_export_tests.py     |     6 +-
 .../integration_tests/key_value}/__init__.py       |     0
 .../key_value/commands}/__init__.py                |     0
 .../key_value/commands/create_test.py              |    58 +
 .../key_value/commands/delete_test.py              |    82 +
 .../key_value/commands/fixtures.py                 |    63 +
 .../key_value/commands/get_test.py                 |   101 +
 .../key_value/commands/update_test.py              |    95 +
 .../key_value/commands/upsert_test.py              |   101 +
 tests/integration_tests/log_api_tests.py           |    10 +-
 .../migrations/f1410ed7ec95_tests.py               |    10 +-
 tests/integration_tests/model_tests.py             |    44 +-
 .../queries/saved_queries/commands_tests.py        |    18 +
 tests/integration_tests/query_context_tests.py     |    31 +-
 tests/integration_tests/reports/commands_tests.py  |   125 +-
 tests/integration_tests/result_set_tests.py        |    20 +-
 .../security/guest_token_security_tests.py         |   110 +-
 .../security/migrate_roles_tests.py                |    61 +-
 .../security/row_level_security_tests.py           |    17 +-
 tests/integration_tests/security_tests.py          |     6 +-
 tests/integration_tests/sql_validator_tests.py     |     5 +-
 tests/integration_tests/sqla_models_tests.py       |   146 +-
 tests/integration_tests/sqllab_tests.py            |    22 +-
 tests/integration_tests/superset_test_config.py    |    16 +-
 .../superset_test_config_thumbnails.py             |     4 +-
 .../integration_tests/tasks/async_queries_tests.py |     6 +-
 .../integration_tests/users}/__init__.py           |     0
 tests/integration_tests/utils_tests.py             |    10 +-
 tests/integration_tests/viz_tests.py               |    45 +-
 .../unit_tests/charts/commands}/__init__.py        |     0
 .../charts/commands/importers}/__init__.py         |     0
 .../charts/commands/importers/v1}/__init__.py      |     0
 .../charts/commands/importers/v1/import_test.py    |    69 +
 tests/unit_tests/columns/test_models.py            |     6 +-
 .../unit_tests/commands}/__init__.py               |     0
 tests/unit_tests/commands/export_test.py           |    94 +
 tests/unit_tests/conftest.py                       |    46 +-
 tests/unit_tests/core_tests.py                     |     3 +-
 .../commands/importers/v1/import_test.py           |    67 +
 .../dashboards/commands/importers/v1/utils_test.py |    12 +-
 .../unit_tests/databases}/__init__.py              |     0
 .../unit_tests/databases/commands}/__init__.py     |     0
 .../databases/commands/importers}/__init__.py      |     0
 .../databases/commands/importers/v1}/__init__.py   |     0
 .../databases/commands/importers/v1/import_test.py |    70 +
 tests/unit_tests/dataframe_test.py                 |     2 +-
 tests/unit_tests/datasets/commands/export_test.py  |     6 +-
 .../datasets/commands/importers/v1/import_test.py  |    42 +-
 tests/unit_tests/datasets/test_models.py           |   109 +-
 tests/unit_tests/db_engine_specs/test_base.py      |     5 +-
 tests/unit_tests/db_engine_specs/test_drill.py     |    24 +-
 tests/unit_tests/db_engine_specs/test_gsheets.py   |    32 +-
 tests/unit_tests/db_engine_specs/test_kusto.py     |    10 +-
 tests/unit_tests/db_engine_specs/test_mssql.py     |    29 +-
 tests/unit_tests/db_engine_specs/test_presto.py    |    56 +
 tests/unit_tests/db_engine_specs/test_teradata.py  |     5 +-
 tests/unit_tests/db_engine_specs/test_trino.py     |    56 +
 .../explore/{form_data => }/utils_test.py          |    26 +-
 tests/unit_tests/extension_tests.py                |    51 +
 tests/unit_tests/fixtures/dataframes.py            |    18 +-
 .../fixtures/static/assets/manifest.json           |    20 +
 .../unit_tests/importexport}/__init__.py           |     0
 tests/unit_tests/importexport/api_test.py          |   254 +
 .../unit_tests/key_value}/__init__.py              |     0
 tests/unit_tests/key_value/utils_test.py           |    60 +
 .../unit_tests/migrations}/__init__.py             |     0
 .../unit_tests/migrations/shared}/__init__.py      |     0
 tests/unit_tests/migrations/shared/utils_test.py   |    56 +
 .../pandas_postprocessing/test_boxplot.py          |    10 +-
 .../pandas_postprocessing/test_compare.py          |   209 +-
 .../pandas_postprocessing/test_contribution.py     |     9 +-
 tests/unit_tests/pandas_postprocessing/test_cum.py |   133 +-
 .../unit_tests/pandas_postprocessing/test_diff.py  |     7 +-
 .../pandas_postprocessing/test_flatten.py          |    75 +
 .../unit_tests/pandas_postprocessing/test_pivot.py |    46 +-
 .../pandas_postprocessing/test_prophet.py          |    39 +-
 .../pandas_postprocessing/test_resample.py         |   213 +-
 .../pandas_postprocessing/test_rolling.py          |   165 +-
 .../pandas_postprocessing/test_select.py           |     6 +-
 .../unit_tests/pandas_postprocessing/test_sort.py  |     4 +-
 tests/unit_tests/sql_parse_tests.py                |   347 +-
 tests/unit_tests/tables/test_models.py             |     8 +-
 .../unit_tests/views}/__init__.py                  |     0
 yarn.lock                                          |     2 +
 981 files changed, 68014 insertions(+), 35483 deletions(-)
 rename docs/docs/databases/{yugabyte.mdx => yugabytedb.mdx} (95%)
 delete mode 100644 docs/package-lock.json
 create mode 100644 superset-embedded-sdk/src/guestTokenRefresh.test.ts
 create mode 100644 superset-embedded-sdk/src/guestTokenRefresh.ts
 copy superset-frontend/packages/superset-ui-chart-controls/src/operators/{contributionOperator.ts => flattenOperator.ts} (69%)
 create mode 100644 superset-frontend/packages/superset-ui-chart-controls/test/utils/operators/flattenOperator.test.ts
 copy superset-frontend/packages/superset-ui-chart-controls/test/utils/operators/{pivotOperator.test.ts => timeComparePivotOperator.test.ts} (55%)
 create mode 100644 superset-frontend/packages/superset-ui-core/src/color/SharedLabelColorSingleton.ts
 copy superset-frontend/{plugins/legacy-plugin-chart-country-map/src/transformProps.js => packages/superset-ui-core/src/utils/isEqualArray.test.ts} (62%)
 copy superset-frontend/{plugins/plugin-chart-table => packages/superset-ui-core}/src/utils/isEqualArray.ts (93%)
 create mode 100644 superset-frontend/packages/superset-ui-core/test/color/SharedLabelColorSingleton.test.ts
 delete mode 100644 superset-frontend/plugins/legacy-plugin-chart-calendar/src/vendor/cal-heatmap.css
 delete mode 100644 superset-frontend/plugins/legacy-plugin-chart-calendar/src/vendor/d3tip.css
 delete mode 100644 superset-frontend/plugins/legacy-plugin-chart-heatmap/src/Heatmap.css
 create mode 100644 superset-frontend/plugins/legacy-plugin-chart-heatmap/src/ReactHeatmap.jsx
 delete mode 100644 superset-frontend/plugins/legacy-plugin-chart-heatmap/src/vendor/d3tip.css
 rename superset-frontend/plugins/{legacy-plugin-chart-heatmap/src/ReactHeatmap.js => plugin-chart-echarts/src/utils/convertInteger.ts} (84%)
 copy superset-frontend/src/{components/Slider/index.tsx => GlobalStyles.tsx} (72%)
 copy superset-frontend/src/{chart/ChartRenderer.test.jsx => SqlLab/components/QueryHistory/QueryHistory.test.tsx} (55%)
 create mode 100644 superset-frontend/src/assets/images/empty_sql_chart.svg
 rename superset-frontend/src/{chart => components/Chart}/Chart.jsx (88%)
 rename superset-frontend/src/{chart => components/Chart}/ChartContainer.jsx (91%)
 rename superset-frontend/src/{chart => components/Chart}/ChartErrorMessage.tsx (100%)
 rename superset-frontend/src/{chart => components/Chart}/ChartRenderer.jsx (86%)
 rename superset-frontend/src/{chart => components/Chart}/ChartRenderer.test.jsx (95%)
 rename superset-frontend/src/{chart => components/Chart}/chartAction.js (100%)
 rename superset-frontend/src/{chart => components/Chart}/chartActions.test.js (99%)
 rename superset-frontend/src/{chart => components/Chart}/chartReducer.ts (100%)
 rename superset-frontend/src/{chart => components/Chart}/chartReducers.test.js (93%)
 copy superset-frontend/src/{CRUD => components/Datasource}/CollectionTable.test.jsx (96%)
 rename superset-frontend/src/{CRUD => components/Datasource}/CollectionTable.tsx (100%)
 rename superset-frontend/src/{CRUD => components/Datasource}/Field.test.tsx (100%)
 rename superset-frontend/src/{CRUD => components/Datasource}/Field.tsx (100%)
 rename superset-frontend/src/{CRUD => components/Datasource}/Fieldset.tsx (100%)
 rename superset-frontend/src/{CRUD => components/Datasource}/crud.less (95%)
 rename superset-frontend/src/{CRUD => components/Datasource}/utils.js (100%)
 copy superset-frontend/src/components/{Form/Form.tsx => Input/index.tsx} (58%)
 rename superset-frontend/src/{common/components => components/Menu}/index.tsx (61%)
 rename superset-frontend/src/components/MessageToasts/{ToastContainer.jsx => ToastContainer.tsx} (90%)
 create mode 100644 superset-frontend/src/dashboard/components/DashboardEmbedControls.tsx
 delete mode 100644 superset-frontend/src/dashboard/components/nativeFilters/FilterBar/CascadeFilters/CascadeFilterControl/CascadeFilterControl.test.tsx
 delete mode 100644 superset-frontend/src/dashboard/components/nativeFilters/FilterBar/CascadeFilters/CascadeFilterControl/index.tsx
 delete mode 100644 superset-frontend/src/dashboard/components/nativeFilters/FilterBar/CascadeFilters/CascadePopover/index.tsx
 create mode 100644 superset-frontend/src/dashboard/components/nativeFilters/FilterCard/FilterCard.test.tsx
 create mode 100644 superset-frontend/src/dashboard/components/nativeFilters/FiltersConfigModal/FiltersConfigForm/DependencyList.tsx
 rename superset-frontend/src/dashboard/{components/nativeFilters/FilterBar/CascadeFilters/types.ts => containers/DashboardRoute.tsx} (72%)
 copy superset-frontend/src/{explore/components/controls/HiddenControl.tsx => dashboard/util/getChartIdsInFilterScope.ts} (52%)
 create mode 100644 superset-frontend/src/explore/components/controls/ControlPopover/ControlPopover.test.tsx
 create mode 100644 superset-frontend/src/explore/components/controls/ControlPopover/ControlPopover.tsx
 copy superset-frontend/{plugins/legacy-plugin-chart-sankey-loop/src/transformProps.js => src/explore/exploreUtils/formData.test.ts} (75%)
 delete mode 100644 superset-frontend/src/hooks/useUrlShortener.ts
 rename superset-frontend/src/{CRUD/CollectionTable.test.jsx => utils/rankedSearchCompare.test.ts} (51%)
 rename superset-frontend/{plugins/plugin-chart-table/src/utils/isEqualArray.ts => src/utils/rankedSearchCompare.ts} (52%)
 create mode 100644 superset-frontend/src/utils/sortNumericValues.test.ts
 create mode 100644 superset-frontend/src/utils/sortNumericValues.ts
 create mode 100644 superset-frontend/tools/eslint-plugin-theme-colors/colors.js
 create mode 100644 superset-frontend/tools/eslint-plugin-theme-colors/index.js
 create mode 100644 superset-frontend/tools/eslint-plugin-theme-colors/package.json
 copy superset/{annotation_layers => commands/export}/__init__.py (100%)
 copy superset/commands/{export.py => export/assets.py} (57%)
 rename superset/commands/{export.py => export/models.py} (86%)
 create mode 100644 superset/commands/importers/v1/assets.py
 copy superset/{annotation_layers => dashboards/permalink}/__init__.py (100%)
 create mode 100644 superset/dashboards/permalink/api.py
 copy superset/{annotation_layers => dashboards/permalink/commands}/__init__.py (100%)
 copy superset/{views/health.py => dashboards/permalink/commands/base.py} (65%)
 create mode 100644 superset/dashboards/permalink/commands/create.py
 create mode 100644 superset/dashboards/permalink/commands/get.py
 copy superset/{views/health.py => dashboards/permalink/exceptions.py} (63%)
 copy superset/{key_value => dashboards/permalink}/schemas.py (53%)
 copy superset/{commands/importers/exceptions.py => dashboards/permalink/types.py} (71%)
 create mode 100644 superset/db_engine_specs/duckdb.py
 copy superset/{annotation_layers => embedded}/__init__.py (100%)
 create mode 100644 superset/embedded/dao.py
 create mode 100644 superset/embedded/view.py
 copy superset/{annotation_layers => explore/permalink}/__init__.py (100%)
 create mode 100644 superset/explore/permalink/api.py
 copy superset/{annotation_layers => explore/permalink/commands}/__init__.py (100%)
 copy superset/{views/health.py => explore/permalink/commands/base.py} (65%)
 create mode 100644 superset/explore/permalink/commands/create.py
 create mode 100644 superset/explore/permalink/commands/get.py
 copy superset/{views/health.py => explore/permalink/exceptions.py} (63%)
 copy superset/{key_value => explore/permalink}/schemas.py (57%)
 copy superset/{commands/importers/exceptions.py => explore/permalink/types.py} (70%)
 rename superset/explore/{form_data => }/utils.py (100%)
 rename superset/{extensions.py => extensions/__init__.py} (81%)
 create mode 100644 superset/extensions/metastore_cache.py
 copy superset/{annotation_layers => importexport}/__init__.py (100%)
 create mode 100644 superset/importexport/api.py
 copy superset/key_value/commands/{delete.py => delete_expired.py} (52%)
 create mode 100644 superset/key_value/commands/upsert.py
 copy superset/key_value/{commands => }/exceptions.py (90%)
 create mode 100644 superset/key_value/models.py
 create mode 100644 superset/key_value/shared_entries.py
 copy superset/key_value/{commands/parameters.py => types.py} (58%)
 create mode 100644 superset/migrations/versions/58df9d617f14_add_on_saved_query_delete_tab_state_.py
 copy superset/migrations/versions/{73fd22e742ab_add_dynamic_plugins_py.py => 6766938c6065_add_key_value_store.py} (61%)
 create mode 100644 superset/migrations/versions/7293b0ca7944_change_adhoc_filter_b_from_none_to_.py
 copy superset/{key_value/utils.py => migrations/versions/ab9a9d86e695_deprecate_time_range_endpoints.py} (74%)
 copy superset/migrations/versions/{abe27eaf93db_add_extra_config_column_to_alerts.py => b5a422d8e252_fix_query_and_saved_query_null_schema.py} (52%)
 create mode 100644 superset/models/embedded_dashboard.py
 rename superset/{typing.py => superset_typing.py} (90%)
 copy superset/{annotation_layers => temporary_cache}/__init__.py (100%)
 rename superset/{key_value => temporary_cache}/api.py (87%)
 copy superset/{annotation_layers => temporary_cache/commands}/__init__.py (100%)
 copy superset/{key_value => temporary_cache}/commands/create.py (83%)
 copy superset/{key_value => temporary_cache}/commands/delete.py (83%)
 copy superset/{key_value => temporary_cache}/commands/entry.py (100%)
 rename superset/{key_value => temporary_cache}/commands/exceptions.py (82%)
 copy superset/{key_value => temporary_cache}/commands/get.py (84%)
 rename superset/{key_value => temporary_cache}/commands/parameters.py (100%)
 copy superset/{key_value => temporary_cache}/commands/update.py (80%)
 rename superset/{key_value => temporary_cache}/schemas.py (68%)
 rename tests/unit_tests/explore/form_data/__init__.py => superset/temporary_cache/utils.py (85%)
 create mode 100644 superset/translations/nl/LC_MESSAGES/messages.json
 create mode 100644 superset/translations/nl/LC_MESSAGES/messages.po
 create mode 100644 superset/utils/pandas_postprocessing/flatten.py
 copy superset/{tasks => views/users}/__init__.py (100%)
 rename superset/{ => views}/users/api.py (86%)
 rename superset/{ => views}/users/schemas.py (100%)
 copy {superset/annotation_layers => tests/integration_tests/dashboards/permalink}/__init__.py (100%)
 create mode 100644 tests/integration_tests/dashboards/permalink/api_tests.py
 copy {superset/annotation_layers => tests/integration_tests/embedded}/__init__.py (100%)
 create mode 100644 tests/integration_tests/embedded/dao_tests.py
 copy {superset/annotation_layers => tests/integration_tests/explore/permalink}/__init__.py (100%)
 create mode 100644 tests/integration_tests/explore/permalink/api_tests.py
 copy {superset/annotation_layers => tests/integration_tests/extensions}/__init__.py (100%)
 create mode 100644 tests/integration_tests/extensions/metastore_cache_test.py
 rename superset/key_value/commands/entry.py => tests/integration_tests/fixtures/client.py (80%)
 copy {superset/annotation_layers => tests/integration_tests/key_value}/__init__.py (100%)
 copy {superset/annotation_layers => tests/integration_tests/key_value/commands}/__init__.py (100%)
 create mode 100644 tests/integration_tests/key_value/commands/create_test.py
 create mode 100644 tests/integration_tests/key_value/commands/delete_test.py
 create mode 100644 tests/integration_tests/key_value/commands/fixtures.py
 create mode 100644 tests/integration_tests/key_value/commands/get_test.py
 create mode 100644 tests/integration_tests/key_value/commands/update_test.py
 create mode 100644 tests/integration_tests/key_value/commands/upsert_test.py
 copy {superset/tasks => tests/integration_tests/users}/__init__.py (100%)
 copy {superset/annotation_layers => tests/unit_tests/charts/commands}/__init__.py (100%)
 copy {superset/annotation_layers => tests/unit_tests/charts/commands/importers}/__init__.py (100%)
 copy {superset/annotation_layers => tests/unit_tests/charts/commands/importers/v1}/__init__.py (100%)
 create mode 100644 tests/unit_tests/charts/commands/importers/v1/import_test.py
 copy {superset/annotation_layers => tests/unit_tests/commands}/__init__.py (100%)
 create mode 100644 tests/unit_tests/commands/export_test.py
 create mode 100644 tests/unit_tests/dashboards/commands/importers/v1/import_test.py
 copy {superset/annotation_layers => tests/unit_tests/databases}/__init__.py (100%)
 copy {superset/annotation_layers => tests/unit_tests/databases/commands}/__init__.py (100%)
 copy {superset/annotation_layers => tests/unit_tests/databases/commands/importers}/__init__.py (100%)
 copy {superset/annotation_layers => tests/unit_tests/databases/commands/importers/v1}/__init__.py (100%)
 create mode 100644 tests/unit_tests/databases/commands/importers/v1/import_test.py
 create mode 100644 tests/unit_tests/db_engine_specs/test_presto.py
 create mode 100644 tests/unit_tests/db_engine_specs/test_trino.py
 rename tests/unit_tests/explore/{form_data => }/utils_test.py (88%)
 create mode 100644 tests/unit_tests/extension_tests.py
 create mode 100644 tests/unit_tests/fixtures/static/assets/manifest.json
 copy {superset/annotation_layers => tests/unit_tests/importexport}/__init__.py (100%)
 create mode 100644 tests/unit_tests/importexport/api_test.py
 copy {superset/annotation_layers => tests/unit_tests/key_value}/__init__.py (100%)
 create mode 100644 tests/unit_tests/key_value/utils_test.py
 copy {superset/annotation_layers => tests/unit_tests/migrations}/__init__.py (100%)
 copy {superset/annotation_layers => tests/unit_tests/migrations/shared}/__init__.py (100%)
 create mode 100644 tests/unit_tests/migrations/shared/utils_test.py
 create mode 100644 tests/unit_tests/pandas_postprocessing/test_flatten.py
 copy {superset/annotation_layers => tests/unit_tests/views}/__init__.py (100%)
 create mode 100644 yarn.lock


[superset] 02/02: fix bad conflict resolution

Posted by vi...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

villebro pushed a commit to branch lts-v1
in repository https://gitbox.apache.org/repos/asf/superset.git

commit f20bf6baae157e15e876aa226b26f76d95089a9d
Author: Ville Brofeldt <vi...@gmail.com>
AuthorDate: Mon Apr 4 11:58:52 2022 +0300

    fix bad conflict resolution
---
 superset-frontend/src/SqlLab/components/App/index.jsx | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/superset-frontend/src/SqlLab/components/App/index.jsx b/superset-frontend/src/SqlLab/components/App/index.jsx
index f68cdd50dc..47472335ce 100644
--- a/superset-frontend/src/SqlLab/components/App/index.jsx
+++ b/superset-frontend/src/SqlLab/components/App/index.jsx
@@ -117,8 +117,7 @@ class App extends React.PureComponent {
     }
     return (
       <div className="App SqlLab">
-        <QueryAutoRefresh />
-        <TabbedSqlEditors />
+        {content}
         <ToastContainer />
       </div>
     );


[superset] 01/02: add noop endpoint migration

Posted by vi...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

villebro pushed a commit to branch lts-v1
in repository https://gitbox.apache.org/repos/asf/superset.git

commit 39ac32daf48b2aaf22f25c53e68f3940d54112b1
Author: Ville Brofeldt <vi...@gmail.com>
AuthorDate: Mon Apr 4 11:20:29 2022 +0300

    add noop endpoint migration
---
 .../ab9a9d86e695_deprecate_time_range_endpoints.py | 34 ++++++++++++++++++++++
 1 file changed, 34 insertions(+)

diff --git a/superset/migrations/versions/ab9a9d86e695_deprecate_time_range_endpoints.py b/superset/migrations/versions/ab9a9d86e695_deprecate_time_range_endpoints.py
new file mode 100644
index 0000000000..148804d258
--- /dev/null
+++ b/superset/migrations/versions/ab9a9d86e695_deprecate_time_range_endpoints.py
@@ -0,0 +1,34 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+"""deprecate time_range_endpoints
+
+Revision ID: ab9a9d86e695
+Revises: b5a422d8e252
+Create Date: 2022-02-25 08:06:14.835094
+
+"""
+# revision identifiers, used by Alembic.
+revision = "ab9a9d86e695"
+down_revision = "b5a422d8e252"
+
+
+def upgrade():
+    pass
+
+
+def downgrade():
+    pass