You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@superset.apache.org by su...@apache.org on 2022/01/13 23:44:16 UTC
[superset] branch guest-token-rls updated (a3f2e37 -> 378709d)
This is an automated email from the ASF dual-hosted git repository.
suddjian pushed a change to branch guest-token-rls
in repository https://gitbox.apache.org/repos/asf/superset.git.
from a3f2e37 rls rules for guest tokens
add 2141f2d move row level security tests to their own file
add bfdbad5 a bit of refactoring
add 36a1224 add guest token security tests
add 7181333 refactor tests
add 27a2ec3 clean imports
add 09aed96 variable names can be too long apparently
add c7bfa96 missing argument to get_user_roles
add aa672b9 don't redefine builtins
add 091786d remove unused imports
add 5e23ce9 fix test import
add a62b2f5 default to global user when getting roles
add 89d0d38 fix(Mixed Timeseries Chart): Custom Metric Label (#17649)
add 07bbe84 refactor(monorepo): change coverage of core to 100% (#17698)
add e2e7992 chore: bump FAB to 3.4.1 (#17723)
add 2633bcc fix: import dashboard stale filter_scopes (#17741)
add 215ee08 feat: Update makefile with frontend build (#17734)
add 63d9693 feat: add main datetime column to dataset editor (#17739)
add 2a6e5e5 fix: import DB errors (#17748)
add 37cc2c4 fix: column extra in import/export (#17738)
add 142b5bc fix: local warning in the frontend development (#17727)
add 124af4c chore(explore): Migrate BigNumber to v1 api [ID-28][ID-55] (#17587)
add 6d97e89 chore: bump react-resize-detector (#17764)
add ec24256 fix: add __init__.py to key_value (#17730)
add 274fb37 fix: Remove positions from json_metadata (#17766)
add 82b47ca fix(plugin-chart-table): sort alphanumeric columns case insensitive (#17765)
add 71e4131 fix: miss-spelling on CONTRIBUTING.md line 1351 (#17760)
add 3aa1161 fix: change 401 response to a 403 for Security Exceptions (#17768)
add b3db614 fix(alembic): Making Alembic logger config optional (#17774)
add c18d486 chore: skip flaky test (#17772)
add 961766e fix(filter-sets): 404 on dashboard load (#17777)
add a01c4c9 fix: [alert] should run alert query from report account (#17499)
add 4fd6df9 fix: running dev-server on a different port (#17775)
add 73ae892 feat: don't ask for password when DB exists (#17776)
add bcd698d chore: print test runtime (#17770)
add 3657cbe fix(dashboard): commit update once (#17781)
add d9acb28 fix: New Members per Month time range (#17783)
add afd2e9f chore: update fixtures scope that are loading data into the analytical db (#17780)
add 4beaa81 docs: Fix typo on line 967 (#17785)
add c5af7a4 fix: [alert] allow decimal for alert threshold value (#17751)
add 9c9edbe chore(plugin-chart-pivot-table): migrate react-pivottable into superset codebase (#17769)
add b5dca4e chore(plugin-chart-pivot-table): swap order of Columns and Rows controls (#17798)
add a2d8b94 chore(plugin-chart-table): move adhoc filters control closer to the metrics (#17797)
add f396818 fix(docs): bump broken packages (#17800)
add 53e2fa6 chore: updated screenshots in README.md and added recent events (#17650)
add dc50578 doc: update contribuing docs (#17754)
add b82da5c accept null params for validation (#17788)
add 61a6aa0f Map schemes json to SequentialScheme (#17813)
add 0199104 fix: import typeddict from extensions (#17823)
add 8fe2f5f refactor(monorepo): migrate plugins release workflow (#17827)
add 0a33fcf chore: add lerna version (#17828)
add e3b44f4 feat: Add Helm chart option for configOverrides through file (#17811)
add 6edc183 chore: Refactor localstorage into typesafe version (#17832)
add 5b0aa27 feat: Persist SQL Lab autocomplete setting across tabs and visits (#17708)
add d5768ab fix(explore): make SORT-Descending visible if Sort-by has value (#17726)
add 19daf65 chore(generator-superset): migrate to monorepo (#17829)
add 2c3f39f feat(plugin-chart-pivot-table): support series limit (#17803)
add cfd851a fix: replace datamask with key from new key value api (#17680)
add ec48dd5 fix(dashboard): update native filter info in metadata is not updated (#17842)
add 9840fbf refactor(monorepo): update plugin dependencies (#17837)
add b7707e8 feat: bypass cache on screenshots for alerts (#17695)
add c49545a fix: dataset extra import/export (#17740)
add d2ed1b7 chore: Help user to find the input fields in the dataset editor (#17824)
add 30c0459 fix: extra column in metrics (#17784)
add cb0b7a2 corrected misspelling in percent_metrics (#17856)
add 2cd8054 feat: add force option to report screenshots (#17853)
add 9baeafe feat: configure force_screenshot (#17855)
add 52f5dcb fix(deckgl): deckgl unable to load map (#17851)
add f8a65f8 Update UPDATING.md (#17717)
add c6c4143 fix: show SCHEDULED_QUERIES when defined (#17854)
add ef57bd1 fix: failed mypy (#17886)
add 886e4ef fix: tests can failed on different order executions (#17885)
add 8ebec60 fix: Removes duplicated import in dashboard filter state tests (#17887)
add 4954d52 ci: make presto hive tests to cover only chartData and sqljson (#17782)
add 07998fe fix(explore): simple tab content input problem (#17872)
add 6e59a51 bump gunicorn 20.1.0 (#17894)
add 6991417 feat: Helm - custom service account creation and management (#17880)
add e0bd937 Compile translations (#17877)
add 48d5dc1 fix(helm): service account apiVersion indent (#17920)
add eff4d38 fix(cypress): flake cypress test case (#17918)
add cac704d chore: fix misspelling of button (#17924)
add de3d397 fix: process color scheme configs correctly (#17786)
add 4479fc9 fix: force_screenshot migration (#17928)
add 97a78d3 refactor(storybok): upgrade to webpack5 in storybook of plugins (#17909)
add ceecc70 chore: remove unused eslintrc (#17860)
add 9e69940 feat: Update query states to use spinner vs. progress bar (#17804)
add f75908b Fixed spelling error (#17942)
add 79b6dc2 fix: package.json local file dependencies (#17957)
add 3b5cee4 chore(deps): bump urijs from 1.19.6 to 1.19.7 in /superset-frontend (#17962)
add 53d8d38 chore: Moves the hooks folder to the src folder (#17896)
add aa91662 chore: Moves the Menu to views/components folder (#17897)
add e6ef7da chore: Moves spec files to the src folder - iteration 8 (#17899)
add eeaa573 chore: unbreak pip-compile-multi (#17963)
add ea3a583 chore: bump FAB to 3.4.3 (#17964)
add 2ae29c9 fix(Select): options will be overwritten due to seState (#17951)
add 2098898 chore: Adding more viz category mappings for viz picker (#17956)
add c95d6bf Update clickhouse.mdx (#17937)
add bb7e979 chore: Moves spec files to the src folder - iteration 9 (#17901)
add 647bbf1 chore: Moves spec files to the src folder - iteration 10 (#17902)
add 5bf9634 chore(deps): bump @storybook/addon-actions in /superset-frontend (#17904)
add 765c72a fix: update slug name (#17961)
add be20b0d chore(deps): bump babel from 2.5.3 to 2.9.1 in /superset/translations (#17958)
add 8b1e44c chore(deps): bump underscore from 1.12.0 to 1.12.1 in /superset-frontend (#17959)
add cb97e37 refactor: import value name from root of superset-ui/core (#17947)
add fecb6d9 chore: fixing annoying warning about escaping in Emotion styling (#17972)
add c0a7695 chore: bump typescript to 4.5.4, and adjust storybook story. (#17971)
add d2d4f8e feat: Add support for Azure Data Explorer (Kusto) db engine spec (#17898)
add d35da1f fix: css template API response, less data (#17980)
add 7964465 Close bracket on Helm chart reference (#17975)
add 35f4c33 fix(native-filters): apply default value correctly when it's set (#17982)
add 7329e3c docs(contributing): update contributing section on docs page to match CONTRIBUTING.md (#17718)
add bd9e123 fix(dashboard): scope status of filter not update in dashboard metadata (#17945)
add 3a9bd12 fix: Returns 404 instead of 500 for unknown dashboard filter state keys (#17878)
add 1e544ce fix: null dates in table chart (#17974)
add 05d9cde feat: update time comparison choices (again) (#17968)
add f6b9393 Tooltip no longer dancing (#17931)
add df69920 Moved dataset editor lock to top of component (#17930)
add c139312 fix: dashboard full screen layout (#17985)
add f7add54 Fixed error handling in Report modal (#17988)
add 3d829fc fix: dashboard reload crash (#17992)
add e91b9a6 refactor: move superset-ui dependencies to peerDependencies (#17965)
add d8d47ce chore: reenable lint for test files (#17979)
add cdcdf11 fix(helm): pin correct psycopg2 version (#17999)
add 44df04f chore: use new FAB functionality for component schemas update OAS (#17967)
add 3a58424 fix: API logger output (#17981)
add 7fc6a2f refactor: examples data loading for tests (#17893)
add 412189f fix: Change default SECRET_KEY, improve docs and banner warning (#17984)
add 46715b2 refactor: remove unused ts-jest (#17996)
add bdc35a2 feat(alerts): Select tabs to send backend (#17749)
add ce614ea fix: Adhere to series limit ordering for prequery (#17388)
add 63ca09e fix: Workaround for sqlparse issue #652 (#17995)
add f451081 feat(chart): add Mexico to country map viz (#18007)
add 5e84fd1 refactor: Migration for Tabbed Sql Editor (#17925)
add 536ca1f chore(DatasourceEditor): Create Datasource Legacy Editor Feature Flag (#18003)
add 27000da fix: SQL Lab sorting of non-numbers (#18006)
add 6bd4dd2 feat(timeseries-chart): add percentage threshold input control (#17758)
add 51090c3 feat: shorter timeout on test_connection (#18001)
add 14b9298 fix: revert #17654 to fix subselect table name parsing (#18017)
add 343d3f8 fix: Disable filtering on wide result sets (#18021)
add d2774e4 Merge branch 'master' into embedded
add e9d50c2 Merge branch 'embedded' into guest-token-authz
add 4c74e53 correct import
add 67affe4 Merge branch 'embedded' into guest-token-authz
add 378709d Merge branch 'guest-token-authz' into guest-token-rls
No new revisions were added by this update.
Summary of changes:
.codecov.yml | 2 +-
.../.github => .github}/workflows/release.yml | 12 +-
.github/workflows/superset-python-misc.yml | 5 +-
.github/workflows/superset-python-presto-hive.yml | 4 +-
.github/workflows/superset-python-unittest.yml | 2 +-
CONTRIBUTING.md | 82 +-
Dockerfile | 3 +-
Makefile | 3 +
README.md | 79 +-
UPDATING.md | 2 +
docs/doczrc.js | 2 +-
docs/gatsby-node.js | 2 +-
docs/installation.rst | 17 +
docs/package-lock.json | 34513 ++++++++++++++++++-
docs/package.json | 6 +-
docs/src/components/footer.tsx | 2 +-
.../docs/Connecting to Databases/clickhouse.mdx | 2 +-
.../pages/docs/Connecting to Databases/index.mdx | 1 +
.../pages/docs/Connecting to Databases/kusto.mdx | 21 +
.../pages/docs/Connecting to Databases/pinot.mdx | 2 +-
.../pages/docs/Contributing/contributing-page.mdx | 21 +
.../docs/Contributing/conventions-and-typing.mdx | 58 +
.../pages/docs/Contributing/hooks-and-linting.mdx | 62 +
docs/src/pages/docs/Contributing/local-backend.mdx | 107 +
.../docs/Contributing/pull-request-guidelines.mdx | 97 +
docs/src/pages/docs/Contributing/style-guide.mdx | 55 +
.../pages/docs/Contributing/testing-locally.mdx | 276 +
docs/src/pages/docs/Contributing/translations.mdx | 104 +
.../docs/Contributing/types-of-contributions.mdx | 61 +
docs/src/pages/docs/Miscellaneous/chart-params.mdx | 148 +
docs/src/pages/docs/contributing-page.mdx | 24 -
.../src/pages/docs/installation/alerts_reports.mdx | 2 +-
.../docs/installation/async_queries_celery.mdx | 2 +-
.../docs/installation/building-viz-plugins.mdx | 2 +-
docs/src/pages/docs/installation/caching.mdx | 2 +-
docs/src/pages/docs/installation/configuring.mdx | 7 +-
.../pages/docs/installation/event-logging-page.mdx | 2 +-
.../pages/docs/installation/frontend-assets.mdx | 92 +
.../pages/docs/installation/installing_scratch.mdx | 2 +-
docs/src/pages/docs/installation/kubernetes.mdx | 4 +-
.../docs/installation/networking_settings.mdx | 2 +-
.../src/pages/docs/installation/sql_templating.mdx | 4 +-
.../pages/docs/installation/upgrading_superset.mdx | 2 +-
docs/src/resources/openapi.json | 8504 +++--
helm/superset/Chart.yaml | 2 +-
helm/superset/templates/_helpers.tpl | 19 +
helm/superset/templates/deployment-beat.yaml | 1 +
helm/superset/templates/deployment-worker.yaml | 5 +-
helm/superset/templates/deployment.yaml | 5 +-
helm/superset/templates/init-job.yaml | 3 +
.../{Chart.yaml => templates/service-account.yaml} | 33 +-
helm/superset/values.yaml | 14 +-
requirements/base.in | 1 +
requirements/base.txt | 12 +-
requirements/integration.in | 1 -
requirements/integration.txt | 10 +-
requirements/testing.in | 1 -
requirements/testing.txt | 2 +-
scripts/python_tests.sh | 3 +-
setup.py | 10 +-
superset-frontend/.eslintrc.js | 89 +-
superset-frontend/.prettierignore | 2 +
.../integration/dashboard/key_value.test.ts | 54 +
.../integration/dashboard/nativeFilters.test.ts | 19 +-
.../cypress/integration/explore/control.test.ts | 6 +-
.../explore/visualizations/big_number.test.js | 12 +-
.../visualizations/big_number_total.test.js | 17 +-
.../cypress-base/cypress/plugins/index.js | 1 +
.../cypress-base/cypress/utils/vizPlugins.ts | 2 +
superset-frontend/cypress-base/package-lock.json | 24 +
superset-frontend/cypress-base/package.json | 2 +
superset-frontend/jest.config.js | 32 +-
superset-frontend/lerna.json | 14 +-
superset-frontend/package-lock.json | 18481 ++++------
superset-frontend/package.json | 76 +-
.../generator-superset/generators/app/index.js | 27 +-
.../generator-superset/generators/package/index.js | 78 -
.../generators/package/templates/README.md | 46 -
.../generators/package/templates/_package.json | 23 -
.../generators/package/templates/src/index.txt | 2 -
.../generators/package/templates/test/index.txt | 5 -
.../generators/plugin-chart/index.js | 35 +-
.../generators/plugin-chart/templates/README.erb | 4 +-
.../plugin-chart/templates/babel.config.erb | 20 +
.../plugin-chart/templates/jest.config.erb | 6 +
.../generators/plugin-chart/templates/package.erb | 41 +-
.../plugin-chart/templates/src/MyChart.erb | 38 +-
.../templates}/test/__mocks__/mockExportString.js | 0
.../templates/test/plugin/buildQuery.test.erb | 2 +-
.../plugin-chart/templates/tsconfig.json | 43 +-
.../generator-superset/test/package.test.js | 60 -
.../generator-superset/test/plugin-chart.test.js | 3 +
.../superset-ui-chart-controls/package.json | 5 +-
.../src/components/Tooltip.tsx | 4 +-
.../src/sections/advancedAnalytics.tsx | 2 +
.../superset-ui-chart-controls/src/types.ts | 8 +-
.../packages/superset-ui-core/package.json | 5 +-
.../packages/superset-ui-core/src/chart/index.ts | 2 +-
.../src/color/CategoricalColorNamespace.ts | 7 +-
.../packages/superset-ui-core/src/color/index.ts | 4 +
.../src/connection/SupersetClientClass.ts | 15 +-
.../src/query/types/QueryResponse.ts | 4 +-
.../superset-ui-core/src/utils/featureFlags.ts | 1 +
.../packages/superset-ui-core/src/utils/random.ts | 9 +-
.../test/chart-composition/ChartFrame.test.tsx | 2 +-
.../chart-composition/legend/WithLegend.test.tsx | 3 +-
.../tooltip/TooltipFrame.test.tsx | 2 +-
.../tooltip/TooltipTable.test.tsx | 2 +-
.../test/chart/clients/ChartClient.test.ts | 8 +-
.../chart/components/ChartDataProvider.test.tsx | 12 +-
.../chart/components/FallbackComponent.test.tsx | 2 +-
.../test/chart/components/MockChartPlugins.tsx | 3 +-
.../chart/components/NoResultsComponent.test.tsx | 4 +-
.../test/chart/components/SuperChart.test.tsx | 9 +-
.../test/chart/components/SuperChartCore.test.tsx | 5 +-
.../components/createLoadableRenderer.test.tsx | 4 +-
.../test/chart/components/reactify.test.tsx | 5 +-
.../superset-ui-core/test/chart/index.test.ts | 2 +-
.../test/chart/models/ChartMetadata.test.ts | 2 +-
.../test/chart/models/ChartPlugin.test.tsx | 5 +-
.../test/chart/models/ChartProps.test.ts | 2 +-
.../test/color/CategoricalColorNameSpace.test.ts | 11 +-
.../test/color/CategoricalColorScale.test.ts | 2 +-
.../CategoricalSchemeRegistrySingleton.test.ts | 2 +-
.../test/color/ColorScheme.test.ts | 2 +-
.../test/color/ColorSchemeRegistry.test.ts | 2 +-
.../test/color/SequentialScheme.test.ts | 2 +-
.../SequentialSchemeRegistrySingleton.test.ts | 2 +-
.../test/color/colorSchemes.test.ts | 41 +-
.../superset-ui-core/test/color/index.test.ts | 2 +-
.../superset-ui-core/test/color/utils.test.ts | 2 +-
.../test/connection/SupersetClient.test.ts | 5 +-
.../test/connection/SupersetClientClass.test.ts | 49 +-
.../test/connection/callApi/callApi.test.ts | 11 +-
.../callApi/callApiAndParseWithTimeout.test.ts | 8 +-
.../test/connection/callApi/parseResponse.test.ts | 4 +-
.../connection/callApi/rejectAfterTimeout.test.ts | 2 +-
.../test/dimension/computeMaxFontSize.test.ts | 2 +-
.../dimension/getMultipleTextDimensions.test.ts | 5 +-
.../test/dimension/getTextDimension.test.ts | 2 +-
.../test/dimension/mergeMargin.test.ts | 2 +-
.../test/dimension/parseLength.test.ts | 2 +-
.../test/dimension/svg/LazyFactory.test.ts | 2 +-
.../test/dimension/svg/getBBoxCeil.test.ts | 4 +-
.../test/dimension/svg/updateTextNode.test.ts | 13 +-
.../packages/superset-ui-core/test/fixtures.ts | 2 +-
.../packages/superset-ui-core/test/index.test.ts | 2 +-
.../test/math-expression/index.test.ts | 5 +-
.../test/models/ExtensibleFunction.test.ts | 2 +-
.../superset-ui-core/test/models/Plugin.test.ts | 2 +-
.../superset-ui-core/test/models/Preset.test.ts | 2 +-
.../superset-ui-core/test/models/Registry.test.ts | 2 +-
.../test/models/RegistryWithDefaultKey.test.ts | 2 +-
.../test/number-format/NumberFormatter.test.ts | 2 +-
.../number-format/NumberFormatterRegistry.test.ts | 2 +-
.../NumberFormatterRegistrySingleton.test.ts | 2 +-
.../factories/createD3NumberFormatter.test.ts | 2 +-
.../factories/createDurationFormatter.test.ts | 5 +-
.../createSiAtMostNDigitFormatter.test.ts | 2 +-
.../factories/createSmartNumberFormatter.test.ts | 5 +-
.../test/number-format/index.test.ts | 2 +-
.../test/query/DatasourceKey.test.ts | 2 +-
.../test/query/api/legacy/fetchExploreJson.test.ts | 2 +-
.../query/api/legacy/getDatasourceMetadata.test.ts | 2 +-
.../test/query/api/legacy/getFormData.test.ts | 2 +-
.../test/query/api/setupClientForTest.ts | 2 +-
.../test/query/api/v1/getChartData.test.ts | 2 +-
.../test/query/api/v1/handleError.test.ts | 10 +-
.../test/query/api/v1/makeApi.test.ts | 7 +-
.../test/query/buildQueryContext.test.ts | 2 +-
.../test/query/buildQueryObject.test.ts | 4 +-
.../test/query/convertFilter.test.ts | 2 +-
.../test/query/extractExtras.test.ts | 2 +-
.../test/query/extractQueryFields.test.ts | 5 +-
.../test/query/extractTimegrain.test.ts | 3 +-
.../test/query/getColumnLabel.test.ts | 2 +-
.../test/query/getMetricLabel.test.ts | 2 +-
.../test/query/normalizeOrderBy.test.ts | 2 +-
.../test/query/processExtraFormData.test.ts | 2 +-
.../test/query/processFilters.test.ts | 2 +-
.../test/query/types/AnnotationLayer.test.ts | 2 +-
.../test/query/types/Filter.test.ts | 2 +-
.../test/query/types/PostProcessing.test.ts | 2 +-
.../test/time-format/TimeFormatter.test.ts | 4 +-
.../test/time-format/TimeFormatterRegistry.test.ts | 8 +-
.../TimeFormatterRegistrySingleton.test.ts | 15 +-
.../factories/createD3TimeFormatter.test.ts | 8 +-
.../factories/createMultiFormatter.test.ts | 2 +-
.../test/time-format/formatters/smartDate.test.ts | 3 +-
.../formatters/smartDateDetailed.test.ts | 3 +-
.../formatters/smartDateVerbose.test.ts | 3 +-
.../test/time-format/index.test.ts | 2 +-
.../test/time-format/utils/createTime.test.ts | 2 +-
.../utils/createTimeRangeFromGranularity.test.ts | 4 +-
.../test/time-format/utils/d3Time.test.ts | 2 +-
.../test/translation/Translator.test.ts | 6 +-
.../test/translation/TranslatorSingleton.test.ts | 21 +-
.../test/translation/index.test.ts | 2 +-
.../test/translation/languagePacks/en.ts | 2 +-
.../test/translation/languagePacks/zh.ts | 2 +-
.../test/utils/convertKeysToCamelCase.test.ts | 2 +-
.../test/utils/ensureIsArray.test.ts | 2 +-
.../test/utils/ensureIsInt.test.ts | 2 +-
.../test/utils/featureFlag.test.ts | 2 +-
.../superset-ui-core/test/utils/isDefined.test.ts | 2 +-
.../superset-ui-core/test/utils/isRequired.test.ts | 2 +-
.../superset-ui-core/test/utils/logging.test.ts | 39 +-
.../test/utils/makeSingleton.test.ts | 2 +-
.../test/utils/promiseTimeout.test.ts | 2 +-
.../superset-ui-core/test/utils/random.test.ts | 2 +-
.../test/utils/removeDuplicates.test.ts | 2 +-
.../test/validator/legacyValidateInteger.test.ts | 2 +-
.../test/validator/legacyValidateNumber.test.ts | 2 +-
.../superset-ui-core/test/validator/setup.ts | 2 +-
.../test/validator/validateInteger.test.ts | 2 +-
.../test/validator/validateNonEmpty.test.ts | 2 +-
.../test/validator/validateNumber.test.ts | 2 +-
.../packages/superset-ui-demo/.storybook/main.js | 79 +-
.../packages/superset-ui-demo/package.json | 59 +-
.../BigNumber/BigNumberStories.tsx | 4 +-
.../BigNumberTotal/BigNumberTotalStories.tsx | 2 +-
.../plugin-chart-echarts/Timeseries/Stories.tsx | 3 +
.../stories/plugins/plugin-chart-table/testData.ts | 7 +-
.../superset-ui-chart/ChartDataProviderStories.tsx | 6 +-
.../superset-ui-chart/SuperChartStories.tsx | 2 +-
.../superset-ui-connection/ConnectionStories.tsx | 2 +-
.../packages/superset-ui-demo/tsconfig.json | 2 +
.../legacy-plugin-chart-calendar/package.json | 4 +-
.../plugins/legacy-plugin-chart-chord/package.json | 6 +-
.../legacy-plugin-chart-country-map/package.json | 6 +-
.../scripts/Country Map GeoJSON Generator.ipynb | 656 +-
.../src/countries.ts | 95 +-
.../src/countries/australia.geojson | 136 +-
.../src/countries/belgium.geojson | 8 +-
.../src/countries/bulgaria.geojson | 12 +-
.../src/countries/canada.geojson | 2 +-
.../src/countries/china.geojson | 69 +-
.../src/countries/egypt.geojson | 8 +-
.../src/countries/estonia.geojson | 22 +-
.../src/countries/finland.geojson | 31 +-
.../src/countries/france.geojson | 8 +-
.../src/countries/germany.geojson | 18 +-
.../src/countries/india.geojson | 71 +-
.../src/countries/indonesia.geojson | 66 +-
.../src/countries/iran.geojson | 6 +-
.../src/countries/italy.geojson | 12 +-
.../src/countries/japan.geojson | 22 +-
.../src/countries/korea.geojson | 8 +-
.../src/countries/malaysia.geojson | 12 +-
.../src/countries/mexico.geojson | 39 +
.../src/countries/morocco.geojson | 10 +-
.../src/countries/myanmar.geojson | 10 +-
.../src/countries/netherlands.geojson | 10 +-
.../src/countries/poland.geojson | 4 +-
.../src/countries/portugal.geojson | 22 +-
.../src/countries/russia.geojson | 171 +-
.../src/countries/slovenia.geojson | 56 +-
.../src/countries/spain.geojson | 22 +-
.../src/countries/sweden.geojson | 6 +-
.../src/countries/switzerland.geojson | 14 +-
.../src/countries/syria.geojson | 16 +-
.../src/countries/thailand.geojson | 6 +-
.../src/countries/uk.geojson | 28 +-
.../src/countries/ukraine.geojson | 8 +-
.../src/countries/uruguay.geojson | 10 +-
.../src/countries/zambia.geojson | 6 +-
.../src/geojson.d.ts | 2 +-
.../legacy-plugin-chart-event-flow/package.json | 6 +-
.../package.json | 4 +-
.../legacy-plugin-chart-heatmap/package.json | 6 +-
.../legacy-plugin-chart-histogram/package.json | 4 +-
.../legacy-plugin-chart-horizon/package.json | 4 +-
.../src/controlPanel.ts | 2 +
.../legacy-plugin-chart-map-box/package.json | 8 +-
.../legacy-plugin-chart-paired-t-test/package.json | 4 +-
.../src/controlPanel.ts | 2 +
.../package.json | 4 +-
.../src/controlPanel.ts | 2 +
.../legacy-plugin-chart-partition/package.json | 7 +-
.../src/controlPanel.tsx | 4 +
.../legacy-plugin-chart-pivot-table/package.json | 6 +-
.../src/controlPanel.ts | 2 +
.../plugins/legacy-plugin-chart-rose/package.json | 4 +-
.../legacy-plugin-chart-rose/src/controlPanel.tsx | 4 +
.../legacy-plugin-chart-sankey-loop/package.json | 6 +-
.../legacy-plugin-chart-sankey/package.json | 4 +-
.../legacy-plugin-chart-sunburst/package.json | 6 +-
.../legacy-plugin-chart-treemap/package.json | 6 +-
.../src/controlPanel.ts | 2 +
.../legacy-plugin-chart-world-map/package.json | 4 +-
.../legacy-preset-chart-big-number/README.md | 67 -
.../legacy-preset-chart-big-number/package.json | 42 -
.../src/BigNumber/transformProps.ts | 187 -
.../legacy-preset-chart-big-number/src/preset.ts | 33 -
.../src/types/external.d.ts | 21 -
.../test/tsconfig.json | 19 -
.../legacy-preset-chart-big-number/tsconfig.json | 25 -
.../legacy-preset-chart-deckgl/package.json | 10 +-
.../src/DeckGLContainer.jsx | 1 -
.../plugins/legacy-preset-chart-nvd3/package.json | 4 +-
.../legacy-preset-chart-nvd3/src/Bar/index.js | 2 +
.../src/DistBar/controlPanel.ts | 2 +
.../legacy-preset-chart-nvd3/src/DistBar/index.js | 1 +
.../legacy-preset-chart-nvd3/src/DualLine/index.js | 2 +-
.../legacy-preset-chart-nvd3/src/NVD3Controls.tsx | 4 +
.../legacy-preset-chart-nvd3/src/ReactNVD3.jsx | 5 +-
.../plugins/plugin-chart-echarts/package.json | 7 +-
.../src/BigNumber/BigNumberTotal/buildQuery.ts} | 6 +-
.../src/BigNumber}/BigNumberTotal/controlPanel.ts | 47 +-
.../BigNumber}/BigNumberTotal/images/BigNumber.jpg | Bin
.../BigNumberTotal/images/BigNumber2.jpg | Bin
.../BigNumber}/BigNumberTotal/images/thumbnail.png | Bin
.../BigNumberTotal/images/thumbnailLarge.png | Bin
.../src/BigNumber}/BigNumberTotal/index.ts | 15 +-
.../src/BigNumber/BigNumberTotal/transformProps.ts | 76 +
.../src/BigNumber/BigNumberViz.tsx} | 122 +-
.../BigNumber/BigNumberWithTrendline/buildQuery.ts | 92 +
.../BigNumberWithTrendline}/controlPanel.tsx | 45 +-
.../images/Big_Number_Trendline.jpg | Bin
.../BigNumberWithTrendline}/images/thumbnail.png | Bin
.../images/thumbnailLarge.png | Bin
.../src/BigNumber/BigNumberWithTrendline}/index.ts | 20 +-
.../BigNumberWithTrendline/transformProps.ts | 252 +
.../src/BigNumber}/CHANGELOG.md | 0
.../src/BigNumber}/index.ts | 5 +-
.../src/BigNumber}/sharedControls.ts | 2 +-
.../plugin-chart-echarts/src/BigNumber/types.ts | 57 +
.../plugin-chart-echarts/src/BigNumber/utils.ts} | 52 +-
.../src/MixedTimeseries/transformProps.ts | 25 +-
.../src/Timeseries/Area/controlPanel.tsx | 2 +
.../src/Timeseries/Regular/Bar/controlPanel.tsx | 2 +
.../Timeseries/Regular/Scatter/controlPanel.tsx | 2 +
.../src/Timeseries/Regular/controlPanel.tsx | 2 +
.../src/Timeseries/Step/controlPanel.tsx | 2 +
.../src/Timeseries/controlPanel.tsx | 2 +
.../src/Timeseries/transformProps.ts | 4 +
.../src/Timeseries/transformers.ts | 10 +-
.../plugin-chart-echarts/src/Timeseries/types.ts | 2 +
.../plugins/plugin-chart-echarts/src/controls.tsx | 20 +
.../plugins/plugin-chart-echarts/src/index.ts | 1 +
.../test/BigNumber}/transformProps.test.ts | 21 +-
.../test/Timeseries/transformProps.test.ts | 226 +-
.../plugins/plugin-chart-pivot-table/package.json | 11 +-
.../src/PivotTableChart.tsx | 151 +-
.../src/plugin/buildQuery.ts | 34 +-
.../src/plugin/controlPanel.tsx | 49 +-
.../src/react-pivottable/PivotTable.jsx} | 27 +-
.../src/react-pivottable/Styles.js | 139 +
.../src/react-pivottable/TableRenderers.jsx | 890 +
.../src/react-pivottable/index.js} | 3 +-
.../src/react-pivottable/utilities.js | 853 +
.../plugins/plugin-chart-table/package.json | 5 +-
.../plugin-chart-table/src/DataTable/DataTable.tsx | 6 +
.../utils/sortAlphanumericCaseInsensitive.ts} | 28 +-
.../plugin-chart-table/src/controlPanel.tsx | 2 +-
.../plugin-chart-table/src/utils/formatValue.ts | 8 +-
.../plugin-chart-table/test/TableChart.test.tsx | 3 +-
.../test/sortAlphanumericCaseInsensitive.test.ts | 135 +
.../plugins/plugin-chart-table/test/testData.ts | 9 +-
.../plugins/plugin-chart-word-cloud/package.json | 4 +-
.../plugins/preset-chart-xy/package.json | 4 +-
superset-frontend/scripts/lernaVersion.sh | 6 +-
superset-frontend/spec/fixtures/mockDatasource.js | 1 +
superset-frontend/spec/fixtures/mockState.js | 2 +-
.../spec/fixtures/mockStateWithoutUser.tsx | 2 +-
.../SqlLab/components/ResultSet/ResultSet.test.jsx | 18 +
.../src/SqlLab/components/ResultSet/index.tsx | 20 +-
.../RunQueryActionButton.test.jsx} | 0
.../src/SqlLab/components/SqlEditor/index.jsx | 22 +-
.../components/TemplateParamsEditor/index.tsx | 2 +-
superset-frontend/src/assets/images/firebolt.png | Bin 0 -> 27249 bytes
superset-frontend/src/assets/images/rockset.png | Bin 0 -> 23189 bytes
.../src/assets/images/screenshots/bank_dash.png | Bin 379892 -> 0 bytes
.../src/assets/images/screenshots/deckgl_dash.png | Bin 493439 -> 0 bytes
.../src/assets/images/screenshots/explore.png | Bin 445619 -> 0 bytes
.../images/screenshots/explore_visualizations.jpg | Bin 485516 -> 0 bytes
.../src/assets/images/screenshots/gallery.jpg | Bin 281558 -> 413974 bytes
.../src/assets/images/screenshots/gallery.png | Bin 281558 -> 0 bytes
.../assets/images/screenshots/geospatial_dash.jpg | Bin 493439 -> 0 bytes
.../src/assets/images/screenshots/slack_dash.jpg | Bin 379892 -> 360464 bytes
.../src/assets/images/screenshots/sqllab.png | Bin 415938 -> 0 bytes
.../assets/images/screenshots/visualizations.png | Bin 485516 -> 0 bytes
superset-frontend/src/assets/images/timescale.png | Bin 0 -> 16120 bytes
superset-frontend/src/chart/Chart.jsx | 6 +-
superset-frontend/src/chart/ChartErrorMessage.tsx | 2 +-
superset-frontend/src/common/components/index.tsx | 19 +-
superset-frontend/src/components/.eslintrc | 34 -
.../src/components/Datasource/DatasourceEditor.jsx | 124 +-
.../Datasource/DatasourceEditor.test.jsx | 35 +-
.../components/Datasource/DatasourceModal.test.jsx | 7 +-
.../src/components/Datasource/DatasourceModal.tsx | 6 +-
.../src/components/FaveStar/index.tsx | 2 +-
.../FilterableTable/FilterableTable.test.tsx | 59 +
.../components/FilterableTable/FilterableTable.tsx | 21 +-
.../src/components/FlashProvider/index.tsx | 2 +-
superset-frontend/src/components/Form/Form.tsx | 2 +-
superset-frontend/src/components/Form/index.tsx | 3 +-
superset-frontend/src/components/Icons/index.tsx | 2 +-
.../ModalTrigger/ModalTrigger.stories.tsx | 2 +-
.../src/components/OmniContainer/index.tsx | 2 +-
.../src/components/ReportModal/index.tsx | 77 +-
.../src/components/Select/DeprecatedSelect.tsx | 4 +-
.../src/components/Select/NativeSelect.tsx | 2 +-
superset-frontend/src/components/Select/Select.tsx | 45 +-
superset-frontend/src/components/Select/styles.tsx | 6 +-
superset-frontend/src/components/Slider/index.tsx | 2 +-
superset-frontend/src/components/Switch/index.tsx | 2 +-
superset-frontend/src/constants.ts | 4 +
superset-frontend/src/dashboard/.eslintrc | 31 -
.../dashboard/actions/dashboardLayout.test.js} | 0
.../src/dashboard/actions/dashboardState.js | 7 +
.../dashboard/actions/dashboardState.test.js} | 0
superset-frontend/src/dashboard/actions/hydrate.js | 6 +-
.../src/dashboard/actions/nativeFilters.ts | 28 +-
.../dashboard/components/Dashboard.test.jsx} | 0
.../DashboardBuilder/DashboardBuilder.test.jsx} | 0
.../DashboardBuilder/DashboardBuilder.tsx | 4 +-
.../dashboard/components/DashboardBuilder/utils.ts | 2 +-
.../src/dashboard/components/DashboardGrid.jsx | 4 +-
.../dashboard/components/DashboardGrid.test.jsx} | 0
.../components/FiltersBadge/FiltersBadge.test.tsx} | 0
.../dashboard/components/FiltersBadge/index.tsx | 2 +-
.../Header/HeaderActionsDropdown/index.jsx | 4 +-
.../src/dashboard/components/Header/index.jsx | 30 +-
.../dashboard/components/MissingChart.test.tsx} | 0
.../PropertiesModal/PropertiesModal.test.jsx} | 0
.../dashboard/components/PropertiesModal/index.tsx | 7 +-
.../components/RefreshIntervalModal.test.tsx} | 0
.../dashboard/components/SliceAdder.test.jsx} | 0
.../components/dnd/DragDroppable.test.jsx} | 0
.../components/gridComponents/Chart.test.jsx} | 0
.../components/gridComponents/ChartHolder.jsx | 3 +-
.../gridComponents/ChartHolder.test.jsx} | 11 +-
.../components/gridComponents/ChartHolder.test.tsx | 2 +-
.../components/gridComponents/Column.test.jsx} | 0
.../components/gridComponents/Divider.test.jsx} | 0
.../components/gridComponents/Header.test.jsx} | 0
.../components/gridComponents/Markdown.test.jsx} | 0
.../components/gridComponents/Row.test.jsx} | 0
.../components/gridComponents/Tab.test.jsx} | 0
.../components/gridComponents/Tabs.test.jsx} | 0
.../components/gridComponents/Tabs.test.tsx | 2 +-
.../new/DraggableNewComponent.test.jsx} | 0
.../gridComponents/new/NewColumn.test.jsx} | 0
.../gridComponents/new/NewDivider.test.jsx} | 0
.../gridComponents/new/NewHeader.test.jsx} | 0
.../components/gridComponents/new/NewRow.test.jsx} | 0
.../gridComponents/new/NewTabs.test.jsx} | 0
.../dashboard/components/menu/HoverMenu.test.tsx} | 0
.../menu/ShareMenuItems/ShareMenuItems.test.tsx | 4 +-
.../components/menu/ShareMenuItems/index.tsx | 32 +-
.../components/menu/WithPopoverMenu.test.jsx} | 0
.../CascadeFilterControl.test.tsx | 2 +-
.../components/nativeFilters/FilterBar/index.tsx | 38 +-
.../nativeFilters/FilterBar/keyValue.tsx | 54 +
.../components/nativeFilters/FilterBar/state.ts | 1 -
.../components/nativeFilters/FilterBar/utils.ts | 1 -
.../FiltersConfigForm/ColumnSelect.tsx | 2 +-
.../FiltersConfigForm/FilterScope/FilterScope.tsx | 2 +-
.../NativeFiltersModal.test.tsx} | 0
.../nativeFilters/FiltersConfigModal/state.ts | 2 +-
.../resizable/ResizableContainer.test.tsx} | 0
.../components/resizable/ResizableHandle.test.tsx} | 0
.../src/dashboard/containers/Dashboard.ts | 4 +-
.../src/dashboard/containers/DashboardPage.tsx | 61 +-
.../dashboard/fixtures/mockNativeFilters.ts | 0
.../dashboard/reducers/dashboardFilters.test.js} | 0
.../dashboard/reducers/dashboardLayout.test.js} | 0
.../dashboard/reducers/dashboardState.test.js} | 0
.../dashboard/reducers/sliceEntities.test.js} | 0
.../dashboard/util/componentIsResizable.test.ts} | 0
.../dashboard/util/dnd-reorder.test.js} | 0
.../dashboard/util/dropOverflowsParent.test.js} | 0
.../util/findFirstParentContainer.test.js} | 0
.../dashboard/util/findParentId.test.js} | 0
.../util/findTabIndexByComponentId.test.js} | 0
.../getChartAndLabelComponentIdFromPath.test.js} | 0
.../dashboard/util/getChartIdsFromLayout.test.js} | 0
.../dashboard/util/getDashboardUrl.test.js} | 28 +-
.../src/dashboard/util/getDashboardUrl.ts | 14 +-
.../util/getDetailedComponentWidth.test.js} | 0
.../dashboard/util/getDropPosition.test.js} | 0
.../util/getEffectiveExtraFilters.test.js} | 0
.../util/getFilterConfigsFromFormdata.test.js} | 0
.../util/getFilterScopeFromNodesTree.test.js} | 0
.../util/getFormDataWithExtraFilters.test.ts} | 4 +-
.../util/getLeafComponentIdFromPath.test.js} | 0
.../dashboard/util/isDashboardEmpty.test.ts} | 0
.../dashboard/util/isValidChild.test.ts} | 0
.../dashboard/util/newComponentFactory.test.js} | 0
.../dashboard/util/newEntitiesFromDrop.test.js} | 0
.../util/updateComponentParentsList.test.js} | 0
superset-frontend/src/dataMask/actions.ts | 6 +
superset-frontend/src/dataMask/reducer.ts | 9 +-
.../explore/actions/exploreActions.test.js} | 0
.../components/ControlPanelsContainer.test.tsx} | 0
.../explore/components/ControlRow.test.tsx} | 0
.../explore/components/DataTablesPane/index.tsx | 13 +-
.../explore/components/EmbedCodeButton.test.jsx} | 0
.../components/ExploreActionButtons.test.jsx} | 0
.../explore/components/ExploreActionButtons.tsx | 2 +-
.../ExploreAdditionalActionsMenu.test.jsx} | 18 +-
.../src/explore/components/ExploreChartPanel.jsx | 17 +-
.../explore/components/ExploreChartPanel.test.jsx} | 0
.../explore/components/ExploreViewContainer.jsx | 38 +-
.../components/ExploreViewContainer.test.jsx} | 0
.../explore/components/QueryAndSaveBtns.test.jsx} | 0
.../explore/components/RowCountLabel.test.jsx} | 0
.../explore/components/SaveModal.test.jsx} | 0
.../components/controls/BoundsControl.test.jsx} | 0
.../components/controls/CheckboxControl.test.tsx} | 0
.../controls/ColorPickerControl.test.tsx} | 0
.../ColorSchemeControl/ColorScheme.test.jsx} | 0
.../ConditionalFormattingControl.tsx | 2 +-
.../DatasourceControl/DatasourceControl.test.jsx} | 0
.../DndColumnSelectControl/DndColumnSelect.tsx | 2 +-
.../DndColumnSelectControl/DndMetricSelect.tsx | 2 +-
.../FilterBoxItemControl.test.jsx} | 0
.../index.tsx | 4 +-
.../controls/MetricControl/AdhocMetric.test.js} | 0
.../AdhocMetricEditPopover.test.jsx} | 0
.../AdhocMetricEditPopoverTitle.test.jsx} | 0
.../MetricControl/AdhocMetricOption.test.jsx} | 0
.../MetricControl/AggregateOption.test.tsx} | 0
.../MetricControl/FilterDefinitionOption.test.jsx} | 0
.../MetricControl/MetricDefinitionOption.test.jsx} | 0
.../MetricControl/MetricDefinitionValue.test.jsx} | 0
.../controls/MetricControl/MetricsControl.jsx | 2 +-
.../MetricControl/MetricsControl.test.jsx} | 0
.../components/controls/SelectControl.test.jsx} | 0
.../components/controls/TextAreaControl.test.jsx} | 0
.../components/controls/ViewportControl.test.jsx} | 0
.../VizTypeControl/VizTypeControl.test.jsx} | 0
.../controls/withAsyncVerification.test.tsx} | 0
superset-frontend/src/explore/constants.ts | 2 -
.../src/explore/controlPanels/sections.tsx | 4 +
.../explore/controlUtils/controlUtils.test.tsx} | 2 +-
.../explore/exploreUtils/exploreUtils.test.jsx} | 0
.../explore/exploreUtils/getExploreLongUrl.test.ts | 19 +-
.../src/explore/exploreUtils/index.js | 16 +-
.../{spec/javascripts => src}/explore/fixtures.tsx | 0
.../src/explore/reducers/getInitialState.ts | 1 +
.../store_spec.jsx => src/explore/store.test.jsx} | 0
superset-frontend/src/featureFlags.ts | 3 +-
.../hooks/apiResources/apiResources.test.ts | 0
.../hooks/apiResources/apiResources.ts | 0
.../src/{common => }/hooks/apiResources/charts.ts | 0
.../{common => }/hooks/apiResources/dashboards.ts | 0
.../src/{common => }/hooks/apiResources/index.ts | 0
.../{common => }/hooks/useChangeEffect/index.ts | 0
.../hooks/useChangeEffect/useChangeEffect.test.ts | 0
.../hooks/useChangeEffect/useChangeEffect.ts | 0
.../hooks/useComponentDidMount/index.ts | 0
.../useComponentDidMount.test.ts | 0
.../useComponentDidMount/useComponentDidMount.ts | 0
.../hooks/useComponentDidUpdate/index.ts | 0
.../useComponentDidUpdate.test.ts | 0
.../useComponentDidUpdate/useComponentDidUpdate.ts | 0
.../{common => }/hooks/useElementOnScreen/index.ts | 0
.../src/{common => }/hooks/usePrevious/index.ts | 0
.../hooks/usePrevious/usePrevious.test.ts | 0
.../{common => }/hooks/usePrevious/usePrevious.ts | 0
.../src/{common => }/hooks/useUrlShortener.ts | 4 +-
superset-frontend/src/middleware/asyncEvent.ts | 25 +-
superset-frontend/src/reports/actions/reports.js | 21 +-
superset-frontend/src/setup/setupColors.ts | 25 +-
.../utils/localStorageHelpers.test.ts} | 32 +-
superset-frontend/src/utils/localStorageHelpers.ts | 91 +-
superset-frontend/src/utils/urlUtils.ts | 5 +-
superset-frontend/src/views/App.tsx | 2 +-
.../src/views/CRUD/alert/AlertList.test.jsx | 2 +-
.../src/views/CRUD/alert/AlertList.tsx | 2 +-
.../src/views/CRUD/alert/AlertReportModal.tsx | 61 +-
.../src/views/CRUD/alert/ExecutionLog.tsx | 2 +-
superset-frontend/src/views/CRUD/alert/types.ts | 1 +
.../views/CRUD/annotation/AnnotationList.test.jsx | 2 +-
.../src/views/CRUD/annotation/AnnotationList.tsx | 2 +-
.../annotationlayers/AnnotationLayersList.test.jsx | 2 +-
.../CRUD/annotationlayers/AnnotationLayersList.tsx | 2 +-
.../src/views/CRUD/chart/ChartList.tsx | 17 +-
.../CRUD/csstemplates/CssTemplatesList.test.jsx | 2 +-
.../views/CRUD/csstemplates/CssTemplatesList.tsx | 2 +-
.../src/views/CRUD/dashboard/DashboardList.tsx | 7 +-
.../views/CRUD/data/database/DatabaseList.test.jsx | 2 +-
.../src/views/CRUD/data/database/DatabaseList.tsx | 2 +-
.../data/database/DatabaseModal/SqlAlchemyForm.tsx | 3 +
.../CRUD/data/database/DatabaseModal/index.tsx | 15 +-
.../src/views/CRUD/data/dataset/DatasetList.tsx | 2 +-
.../src/views/CRUD/data/query/QueryList.tsx | 2 +-
.../CRUD/data/savedquery/SavedQueryList.test.jsx | 2 +-
.../views/CRUD/data/savedquery/SavedQueryList.tsx | 2 +-
superset-frontend/src/views/CRUD/storageKeys.ts | 24 -
superset-frontend/src/views/CRUD/utils.test.tsx | 28 +
superset-frontend/src/views/CRUD/utils.tsx | 9 +-
.../src/views/CRUD/welcome/ActivityTable.tsx | 13 +-
.../src/views/CRUD/welcome/ChartTable.tsx | 21 +-
.../src/views/CRUD/welcome/DashboardTable.tsx | 27 +-
.../src/views/CRUD/welcome/SavedQueries.test.tsx | 2 +-
.../src/views/CRUD/welcome/SavedQueries.tsx | 2 +-
.../src/views/CRUD/welcome/Welcome.tsx | 25 +-
.../components}/LanguagePicker.test.tsx | 0
.../Menu => views/components}/LanguagePicker.tsx | 0
.../Menu => views/components}/Menu.test.tsx | 0
.../{components/Menu => views/components}/Menu.tsx | 11 +-
.../Menu => views/components}/MenuRight.tsx | 0
.../Menu => views/components}/SubMenu.test.tsx | 0
.../Menu => views/components}/SubMenu.tsx | 3 +-
superset-frontend/src/views/menu.tsx | 2 +-
.../visualizations/FilterBox/FilterBox.test.jsx} | 0
.../src/visualizations/presets/MainPreset.js | 6 +-
superset-frontend/webpack.config.js | 42 +-
superset/charts/commands/importers/v1/__init__.py | 2 +-
superset/charts/schemas.py | 10 +
superset/cli.py | 34 +-
superset/common/query_context_processor.py | 4 +
superset/config.py | 21 +-
superset/connectors/sqla/models.py | 2 +-
superset/constants.py | 1 +
superset/css_templates/api.py | 4 +-
superset/dashboards/commands/importers/v1/utils.py | 2 +
superset/dashboards/commands/update.py | 6 +-
superset/dashboards/dao.py | 3 +
superset/dashboards/filter_state/api.py | 6 +-
superset/dashboards/filter_state/commands/entry.py | 2 +-
superset/dashboards/filter_state/commands/get.py | 17 +-
superset/databases/commands/test_connection.py | 35 +-
superset/databases/schemas.py | 8 +-
superset/datasets/commands/export.py | 17 +-
superset/datasets/commands/importers/v1/utils.py | 33 +-
superset/datasets/schemas.py | 39 +-
superset/db_engine_specs/base.py | 4 +
superset/db_engine_specs/kusto.py | 164 +
superset/errors.py | 2 +
.../configs/charts/New_Members_per_Month.yaml | 2 +-
.../datasets/examples/cleaned_sales_data.yaml | 2 +-
superset/exceptions.py | 2 +-
superset/initialization/__init__.py | 16 +
.../v1 => superset/key_value}/__init__.py | 0
superset/key_value/commands/get.py | 6 +-
superset/migrations/env.py | 4 +-
...d1d2_move_pivot_table_v2_legacy_order_by_to_.py | 95 +
...aa3ff_add_force_screenshot_to_alerts_reports.py | 65 +
...8dd_add_saved_query_foreign_key_to_tab_state.py | 36 +-
...5b9441_rename_big_viz_total_form_data_fields.py | 100 +
superset/models/core.py | 8 +-
superset/models/helpers.py | 4 +
superset/models/reports.py | 14 +-
superset/reports/api.py | 2 +
superset/reports/commands/alert.py | 7 +-
superset/reports/commands/create.py | 20 +
superset/reports/commands/execute.py | 88 +-
superset/reports/notifications/base.py | 2 +-
superset/reports/notifications/email.py | 32 +-
superset/reports/notifications/slack.py | 31 +-
superset/reports/schemas.py | 6 +-
superset/security/manager.py | 33 +-
superset/sql_parse.py | 27 +-
.../fab_overrides/list_with_checkboxes.html | 2 +-
superset/translations/messages.pot | 2 +-
superset/translations/requirements.txt | 2 +-
superset/utils/async_query_manager.py | 4 +-
superset/utils/core.py | 2 +-
superset/utils/encrypt.py | 121 +-
superset/utils/webdriver.py | 6 -
superset/views/base.py | 3 +-
superset/views/base_api.py | 31 +-
superset/views/core.py | 19 +-
tests/common/example_data_generator/__init__.py | 25 +
.../example_data_generator/base_generator.py | 34 +
.../example_data_generator/birth_names/__init__.py | 33 +
.../birth_names/birth_names_generator.py | 119 +
.../birth_names/birth_names_generator_factory.py | 74 +
tests/common/example_data_generator/consts.py | 69 +
.../example_data_generator/string_generator.py | 42 +
.../string_generator_factory.py | 46 +
.../example_data_generator/tests/__init__.py | 25 +
.../tests/test_string_generator.py | 35 +
tests/integration_tests/access_tests.py | 3 +
tests/integration_tests/alerts_tests.py | 3 +
tests/integration_tests/base_api_tests.py | 1 +
tests/integration_tests/base_tests.py | 8 +-
tests/integration_tests/cache_tests.py | 1 +
tests/integration_tests/celery_tests.py | 1 +
tests/integration_tests/charts/api_tests.py | 4 +
tests/integration_tests/charts/commands_tests.py | 1 +
tests/integration_tests/charts/data/api_tests.py | 28 +-
tests/integration_tests/charts/schema_tests.py | 1 +
tests/integration_tests/cli_tests.py | 1 +
tests/integration_tests/core_tests.py | 3 +
tests/integration_tests/css_templates/api_tests.py | 20 +-
tests/integration_tests/dashboard_tests.py | 4 +
tests/integration_tests/dashboard_utils.py | 36 +-
tests/integration_tests/dashboards/api_tests.py | 2 +
.../integration_tests/dashboards/commands_tests.py | 1 +
tests/integration_tests/dashboards/dao_tests.py | 1 +
.../dashboards/filter_state/api_tests.py | 6 +-
.../dashboards/security/security_dataset_tests.py | 1 +
.../dashboards/security/security_rbac_tests.py | 7 +-
tests/integration_tests/databases/api_tests.py | 4 +
.../integration_tests/databases/commands_tests.py | 31 +-
tests/integration_tests/datasets/api_tests.py | 2 +
tests/integration_tests/datasets/commands_tests.py | 7 +-
tests/integration_tests/datasource_tests.py | 1 +
.../db_engine_specs/base_engine_spec_tests.py | 10 +-
.../db_engine_specs/bigquery_tests.py | 1 +
tests/integration_tests/fixtures/__init__.py | 2 +-
.../fixtures/birth_names_dashboard.py | 183 +-
.../integration_tests/fixtures/energy_dashboard.py | 54 +-
tests/integration_tests/fixtures/importexport.py | 2 +-
.../integration_tests/fixtures/tabbed_dashboard.py | 77 +
.../fixtures/unicode_dashboard.py | 52 +-
.../fixtures/world_bank_dashboard.py | 64 +-
tests/integration_tests/import_export_tests.py | 3 +
tests/integration_tests/model_tests.py | 18 +-
tests/integration_tests/query_context_tests.py | 1 +
tests/integration_tests/reports/api_tests.py | 80 +-
tests/integration_tests/reports/commands_tests.py | 176 +-
tests/integration_tests/reports/utils.py | 6 +-
tests/integration_tests/schedules_test.py | 1 +
.../security/guest_token_security_tests.py | 73 +
.../security/row_level_security_tests.py | 195 +
tests/integration_tests/security_tests.py | 198 +-
tests/integration_tests/sql_validator_tests.py | 31 +
tests/integration_tests/sqla_models_tests.py | 1 +
tests/integration_tests/sqllab_tests.py | 2 +
tests/integration_tests/strategy_tests.py | 8 +-
.../integration_tests/tasks/async_queries_tests.py | 1 +
tests/integration_tests/utils_tests.py | 2 +
tests/unit_tests/conftest.py | 41 +-
.../dashboards/commands/importers/v1/utils_test.py | 5 +-
.../commands/importers/v1 => datasets}/__init__.py | 0
.../importers/v1 => datasets/commands}/__init__.py | 0
tests/unit_tests/datasets/commands/export_test.py | 198 +
.../v1 => datasets/commands/importers}/__init__.py | 0
.../commands/importers/v1/__init__.py | 0
.../datasets/commands/importers/v1/import_test.py | 209 +
tests/unit_tests/db_engine_specs/test_base.py | 27 +-
tests/unit_tests/db_engine_specs/test_kusto.py | 155 +
tests/unit_tests/sql_parse_tests.py | 30 +-
tox.ini | 2 +-
740 files changed, 56871 insertions(+), 18837 deletions(-)
rename {superset-frontend/temporary_superset_ui/superset-ui/.github => .github}/workflows/release.yml (89%)
create mode 100644 docs/src/pages/docs/Connecting to Databases/kusto.mdx
create mode 100644 docs/src/pages/docs/Contributing/contributing-page.mdx
create mode 100644 docs/src/pages/docs/Contributing/conventions-and-typing.mdx
create mode 100644 docs/src/pages/docs/Contributing/hooks-and-linting.mdx
create mode 100644 docs/src/pages/docs/Contributing/local-backend.mdx
create mode 100644 docs/src/pages/docs/Contributing/pull-request-guidelines.mdx
create mode 100644 docs/src/pages/docs/Contributing/style-guide.mdx
create mode 100644 docs/src/pages/docs/Contributing/testing-locally.mdx
create mode 100644 docs/src/pages/docs/Contributing/translations.mdx
create mode 100644 docs/src/pages/docs/Contributing/types-of-contributions.mdx
create mode 100644 docs/src/pages/docs/Miscellaneous/chart-params.mdx
delete mode 100644 docs/src/pages/docs/contributing-page.mdx
create mode 100644 docs/src/pages/docs/installation/frontend-assets.mdx
copy helm/superset/{Chart.yaml => templates/service-account.yaml} (58%)
mode change 100644 => 100755
create mode 100644 superset-frontend/cypress-base/cypress/integration/dashboard/key_value.test.ts
delete mode 100644 superset-frontend/packages/generator-superset/generators/package/index.js
delete mode 100644 superset-frontend/packages/generator-superset/generators/package/templates/README.md
delete mode 100644 superset-frontend/packages/generator-superset/generators/package/templates/_package.json
delete mode 100644 superset-frontend/packages/generator-superset/generators/package/templates/src/index.txt
delete mode 100644 superset-frontend/packages/generator-superset/generators/package/templates/test/index.txt
create mode 100644 superset-frontend/packages/generator-superset/generators/plugin-chart/templates/babel.config.erb
create mode 100644 superset-frontend/packages/generator-superset/generators/plugin-chart/templates/jest.config.erb
copy superset-frontend/{temporary_superset_ui/superset-ui => packages/generator-superset/generators/plugin-chart/templates}/test/__mocks__/mockExportString.js (100%)
delete mode 100644 superset-frontend/packages/generator-superset/test/package.test.js
create mode 100644 superset-frontend/plugins/legacy-plugin-chart-country-map/src/countries/mexico.geojson
delete mode 100644 superset-frontend/plugins/legacy-preset-chart-big-number/README.md
delete mode 100644 superset-frontend/plugins/legacy-preset-chart-big-number/package.json
delete mode 100644 superset-frontend/plugins/legacy-preset-chart-big-number/src/BigNumber/transformProps.ts
delete mode 100644 superset-frontend/plugins/legacy-preset-chart-big-number/src/preset.ts
delete mode 100644 superset-frontend/plugins/legacy-preset-chart-big-number/src/types/external.d.ts
delete mode 100644 superset-frontend/plugins/legacy-preset-chart-big-number/test/tsconfig.json
delete mode 100644 superset-frontend/plugins/legacy-preset-chart-big-number/tsconfig.json
copy superset-frontend/plugins/{legacy-plugin-chart-country-map/src/geojson.d.ts => plugin-chart-echarts/src/BigNumber/BigNumberTotal/buildQuery.ts} (79%)
rename superset-frontend/plugins/{legacy-preset-chart-big-number/src => plugin-chart-echarts/src/BigNumber}/BigNumberTotal/controlPanel.ts (81%)
rename superset-frontend/plugins/{legacy-preset-chart-big-number/src => plugin-chart-echarts/src/BigNumber}/BigNumberTotal/images/BigNumber.jpg (100%)
rename superset-frontend/plugins/{legacy-preset-chart-big-number/src => plugin-chart-echarts/src/BigNumber}/BigNumberTotal/images/BigNumber2.jpg (100%)
rename superset-frontend/plugins/{legacy-preset-chart-big-number/src => plugin-chart-echarts/src/BigNumber}/BigNumberTotal/images/thumbnail.png (100%)
rename superset-frontend/plugins/{legacy-preset-chart-big-number/src => plugin-chart-echarts/src/BigNumber}/BigNumberTotal/images/thumbnailLarge.png (100%)
rename superset-frontend/plugins/{legacy-preset-chart-big-number/src => plugin-chart-echarts/src/BigNumber}/BigNumberTotal/index.ts (86%)
create mode 100644 superset-frontend/plugins/plugin-chart-echarts/src/BigNumber/BigNumberTotal/transformProps.ts
rename superset-frontend/plugins/{legacy-preset-chart-big-number/src/BigNumber/BigNumber.tsx => plugin-chart-echarts/src/BigNumber/BigNumberViz.tsx} (73%)
create mode 100644 superset-frontend/plugins/plugin-chart-echarts/src/BigNumber/BigNumberWithTrendline/buildQuery.ts
rename superset-frontend/plugins/{legacy-preset-chart-big-number/src/BigNumber => plugin-chart-echarts/src/BigNumber/BigNumberWithTrendline}/controlPanel.tsx (91%)
rename superset-frontend/plugins/{legacy-preset-chart-big-number/src/BigNumber => plugin-chart-echarts/src/BigNumber/BigNumberWithTrendline}/images/Big_Number_Trendline.jpg (100%)
rename superset-frontend/plugins/{legacy-preset-chart-big-number/src/BigNumber => plugin-chart-echarts/src/BigNumber/BigNumberWithTrendline}/images/thumbnail.png (100%)
rename superset-frontend/plugins/{legacy-preset-chart-big-number/src/BigNumber => plugin-chart-echarts/src/BigNumber/BigNumberWithTrendline}/images/thumbnailLarge.png (100%)
rename superset-frontend/plugins/{legacy-preset-chart-big-number/src/BigNumber => plugin-chart-echarts/src/BigNumber/BigNumberWithTrendline}/index.ts (80%)
create mode 100644 superset-frontend/plugins/plugin-chart-echarts/src/BigNumber/BigNumberWithTrendline/transformProps.ts
rename superset-frontend/plugins/{legacy-preset-chart-big-number => plugin-chart-echarts/src/BigNumber}/CHANGELOG.md (100%)
rename superset-frontend/plugins/{legacy-preset-chart-big-number/src => plugin-chart-echarts/src/BigNumber}/index.ts (85%)
rename superset-frontend/plugins/{legacy-preset-chart-big-number/src => plugin-chart-echarts/src/BigNumber}/sharedControls.ts (98%)
create mode 100644 superset-frontend/plugins/plugin-chart-echarts/src/BigNumber/types.ts
copy superset-frontend/{packages/superset-ui-core/test/time-format/index.test.ts => plugins/plugin-chart-echarts/src/BigNumber/utils.ts} (55%)
rename superset-frontend/plugins/{legacy-preset-chart-big-number/test => plugin-chart-echarts/test/BigNumber}/transformProps.test.ts (87%)
rename superset-frontend/{src/common/components/.eslintrc => plugins/plugin-chart-pivot-table/src/react-pivottable/PivotTable.jsx} (70%)
create mode 100644 superset-frontend/plugins/plugin-chart-pivot-table/src/react-pivottable/Styles.js
create mode 100644 superset-frontend/plugins/plugin-chart-pivot-table/src/react-pivottable/TableRenderers.jsx
copy superset-frontend/{src/common/hooks/useComponentDidMount/index.ts => plugins/plugin-chart-pivot-table/src/react-pivottable/index.js} (90%)
create mode 100644 superset-frontend/plugins/plugin-chart-pivot-table/src/react-pivottable/utilities.js
copy superset-frontend/{src/utils/localStorageHelpers.ts => plugins/plugin-chart-table/src/DataTable/utils/sortAlphanumericCaseInsensitive.ts} (66%)
create mode 100644 superset-frontend/plugins/plugin-chart-table/test/sortAlphanumericCaseInsensitive.test.ts
rename superset-frontend/{spec/javascripts/explore/components/RunQueryActionButton_spec.jsx => src/SqlLab/components/RunQueryActionButton/RunQueryActionButton.test.jsx} (100%)
create mode 100644 superset-frontend/src/assets/images/firebolt.png
create mode 100644 superset-frontend/src/assets/images/rockset.png
delete mode 100644 superset-frontend/src/assets/images/screenshots/bank_dash.png
delete mode 100644 superset-frontend/src/assets/images/screenshots/deckgl_dash.png
delete mode 100644 superset-frontend/src/assets/images/screenshots/explore.png
delete mode 100644 superset-frontend/src/assets/images/screenshots/explore_visualizations.jpg
delete mode 100644 superset-frontend/src/assets/images/screenshots/gallery.png
delete mode 100644 superset-frontend/src/assets/images/screenshots/geospatial_dash.jpg
delete mode 100644 superset-frontend/src/assets/images/screenshots/sqllab.png
delete mode 100644 superset-frontend/src/assets/images/screenshots/visualizations.png
create mode 100644 superset-frontend/src/assets/images/timescale.png
delete mode 100644 superset-frontend/src/components/.eslintrc
delete mode 100644 superset-frontend/src/dashboard/.eslintrc
rename superset-frontend/{spec/javascripts/dashboard/actions/dashboardLayout_spec.js => src/dashboard/actions/dashboardLayout.test.js} (100%)
rename superset-frontend/{spec/javascripts/dashboard/actions/dashboardState_spec.js => src/dashboard/actions/dashboardState.test.js} (100%)
rename superset-frontend/{spec/javascripts/dashboard/components/Dashboard_spec.jsx => src/dashboard/components/Dashboard.test.jsx} (100%)
rename superset-frontend/{spec/javascripts/dashboard/components/DashboardBuilder_spec.jsx => src/dashboard/components/DashboardBuilder/DashboardBuilder.test.jsx} (100%)
rename superset-frontend/{spec/javascripts/dashboard/components/DashboardGrid_spec.jsx => src/dashboard/components/DashboardGrid.test.jsx} (100%)
rename superset-frontend/{spec/javascripts/dashboard/components/FiltersBadge_spec.tsx => src/dashboard/components/FiltersBadge/FiltersBadge.test.tsx} (100%)
rename superset-frontend/{spec/javascripts/dashboard/components/MissingChart_spec.tsx => src/dashboard/components/MissingChart.test.tsx} (100%)
rename superset-frontend/{spec/javascripts/dashboard/components/PropertiesModal_spec.jsx => src/dashboard/components/PropertiesModal/PropertiesModal.test.jsx} (100%)
rename superset-frontend/{spec/javascripts/dashboard/components/RefreshIntervalModal_spec.tsx => src/dashboard/components/RefreshIntervalModal.test.tsx} (100%)
rename superset-frontend/{spec/javascripts/dashboard/components/SliceAdder_spec.jsx => src/dashboard/components/SliceAdder.test.jsx} (100%)
rename superset-frontend/{spec/javascripts/dashboard/components/dnd/DragDroppable_spec.jsx => src/dashboard/components/dnd/DragDroppable.test.jsx} (100%)
rename superset-frontend/{spec/javascripts/dashboard/components/gridComponents/Chart_spec.jsx => src/dashboard/components/gridComponents/Chart.test.jsx} (100%)
rename superset-frontend/{spec/javascripts/dashboard/components/gridComponents/ChartHolder_spec.jsx => src/dashboard/components/gridComponents/ChartHolder.test.jsx} (93%)
rename superset-frontend/{spec/javascripts/dashboard/components/gridComponents/Column_spec.jsx => src/dashboard/components/gridComponents/Column.test.jsx} (100%)
rename superset-frontend/{spec/javascripts/dashboard/components/gridComponents/Divider_spec.jsx => src/dashboard/components/gridComponents/Divider.test.jsx} (100%)
rename superset-frontend/{spec/javascripts/dashboard/components/gridComponents/Header_spec.jsx => src/dashboard/components/gridComponents/Header.test.jsx} (100%)
rename superset-frontend/{spec/javascripts/dashboard/components/gridComponents/Markdown_spec.jsx => src/dashboard/components/gridComponents/Markdown.test.jsx} (100%)
rename superset-frontend/{spec/javascripts/dashboard/components/gridComponents/Row_spec.jsx => src/dashboard/components/gridComponents/Row.test.jsx} (100%)
rename superset-frontend/{spec/javascripts/dashboard/components/gridComponents/Tab_spec.jsx => src/dashboard/components/gridComponents/Tab.test.jsx} (100%)
rename superset-frontend/{spec/javascripts/dashboard/components/gridComponents/Tabs_spec.jsx => src/dashboard/components/gridComponents/Tabs.test.jsx} (100%)
rename superset-frontend/{spec/javascripts/dashboard/components/gridComponents/new/DraggableNewComponent_spec.jsx => src/dashboard/components/gridComponents/new/DraggableNewComponent.test.jsx} (100%)
rename superset-frontend/{spec/javascripts/dashboard/components/gridComponents/new/NewColumn_spec.jsx => src/dashboard/components/gridComponents/new/NewColumn.test.jsx} (100%)
rename superset-frontend/{spec/javascripts/dashboard/components/gridComponents/new/NewDivider_spec.jsx => src/dashboard/components/gridComponents/new/NewDivider.test.jsx} (100%)
rename superset-frontend/{spec/javascripts/dashboard/components/gridComponents/new/NewHeader_spec.jsx => src/dashboard/components/gridComponents/new/NewHeader.test.jsx} (100%)
rename superset-frontend/{spec/javascripts/dashboard/components/gridComponents/new/NewRow_spec.jsx => src/dashboard/components/gridComponents/new/NewRow.test.jsx} (100%)
rename superset-frontend/{spec/javascripts/dashboard/components/gridComponents/new/NewTabs_spec.jsx => src/dashboard/components/gridComponents/new/NewTabs.test.jsx} (100%)
rename superset-frontend/{spec/javascripts/dashboard/components/menu/HoverMenu_spec.tsx => src/dashboard/components/menu/HoverMenu.test.tsx} (100%)
rename superset-frontend/{spec/javascripts/dashboard/components/menu/WithPopoverMenu_spec.jsx => src/dashboard/components/menu/WithPopoverMenu.test.jsx} (100%)
create mode 100644 superset-frontend/src/dashboard/components/nativeFilters/FilterBar/keyValue.tsx
rename superset-frontend/{spec/javascripts/dashboard/components/nativeFilters/NativeFiltersModal_spec.tsx => src/dashboard/components/nativeFilters/FiltersConfigModal/NativeFiltersModal.test.tsx} (100%)
rename superset-frontend/{spec/javascripts/dashboard/components/resizable/ResizableContainer_spec.tsx => src/dashboard/components/resizable/ResizableContainer.test.tsx} (100%)
rename superset-frontend/{spec/javascripts/dashboard/components/resizable/ResizableHandle_spec.tsx => src/dashboard/components/resizable/ResizableHandle.test.tsx} (100%)
rename superset-frontend/{spec/javascripts => src}/dashboard/fixtures/mockNativeFilters.ts (100%)
rename superset-frontend/{spec/javascripts/dashboard/reducers/dashboardFilters_spec.js => src/dashboard/reducers/dashboardFilters.test.js} (100%)
rename superset-frontend/{spec/javascripts/dashboard/reducers/dashboardLayout_spec.js => src/dashboard/reducers/dashboardLayout.test.js} (100%)
rename superset-frontend/{spec/javascripts/dashboard/reducers/dashboardState_spec.js => src/dashboard/reducers/dashboardState.test.js} (100%)
rename superset-frontend/{spec/javascripts/dashboard/reducers/sliceEntities_spec.js => src/dashboard/reducers/sliceEntities.test.js} (100%)
rename superset-frontend/{spec/javascripts/dashboard/util/componentIsResizable_spec.ts => src/dashboard/util/componentIsResizable.test.ts} (100%)
rename superset-frontend/{spec/javascripts/dashboard/util/dnd-reorder_spec.js => src/dashboard/util/dnd-reorder.test.js} (100%)
rename superset-frontend/{spec/javascripts/dashboard/util/dropOverflowsParent_spec.js => src/dashboard/util/dropOverflowsParent.test.js} (100%)
rename superset-frontend/{spec/javascripts/dashboard/util/findFirstParentContainer_spec.js => src/dashboard/util/findFirstParentContainer.test.js} (100%)
rename superset-frontend/{spec/javascripts/dashboard/util/findParentId_spec.js => src/dashboard/util/findParentId.test.js} (100%)
rename superset-frontend/{spec/javascripts/dashboard/util/findTabIndexByComponentId_spec.js => src/dashboard/util/findTabIndexByComponentId.test.js} (100%)
rename superset-frontend/{spec/javascripts/dashboard/util/getChartAndLabelComponentIdFromPath_spec.js => src/dashboard/util/getChartAndLabelComponentIdFromPath.test.js} (100%)
rename superset-frontend/{spec/javascripts/dashboard/util/getChartIdsFromLayout_spec.js => src/dashboard/util/getChartIdsFromLayout.test.js} (100%)
rename superset-frontend/{spec/javascripts/dashboard/util/getDashboardUrl_spec.js => src/dashboard/util/getDashboardUrl.test.js} (80%)
rename superset-frontend/{spec/javascripts/dashboard/util/getDetailedComponentWidth_spec.js => src/dashboard/util/getDetailedComponentWidth.test.js} (100%)
rename superset-frontend/{spec/javascripts/dashboard/util/getDropPosition_spec.js => src/dashboard/util/getDropPosition.test.js} (100%)
rename superset-frontend/{spec/javascripts/dashboard/util/getEffectiveExtraFilters_spec.js => src/dashboard/util/getEffectiveExtraFilters.test.js} (100%)
rename superset-frontend/{spec/javascripts/dashboard/util/getFilterConfigsFromFormdata_spec.js => src/dashboard/util/getFilterConfigsFromFormdata.test.js} (100%)
rename superset-frontend/{spec/javascripts/dashboard/util/getFilterScopeFromNodesTree_spec.js => src/dashboard/util/getFilterScopeFromNodesTree.test.js} (100%)
rename superset-frontend/{spec/javascripts/dashboard/util/getFormDataWithExtraFilters_spec.ts => src/dashboard/util/getFormDataWithExtraFilters.test.ts} (95%)
rename superset-frontend/{spec/javascripts/dashboard/util/getLeafComponentIdFromPath_spec.js => src/dashboard/util/getLeafComponentIdFromPath.test.js} (100%)
rename superset-frontend/{spec/javascripts/dashboard/util/isDashboardEmpty_spec.ts => src/dashboard/util/isDashboardEmpty.test.ts} (100%)
rename superset-frontend/{spec/javascripts/dashboard/util/isValidChild_spec.ts => src/dashboard/util/isValidChild.test.ts} (100%)
rename superset-frontend/{spec/javascripts/dashboard/util/newComponentFactory_spec.js => src/dashboard/util/newComponentFactory.test.js} (100%)
rename superset-frontend/{spec/javascripts/dashboard/util/newEntitiesFromDrop_spec.js => src/dashboard/util/newEntitiesFromDrop.test.js} (100%)
rename superset-frontend/{spec/javascripts/dashboard/util/updateComponentParentsList_spec.js => src/dashboard/util/updateComponentParentsList.test.js} (100%)
rename superset-frontend/{spec/javascripts/explore/exploreActions_spec.js => src/explore/actions/exploreActions.test.js} (100%)
rename superset-frontend/{spec/javascripts/explore/components/ControlPanelsContainer_spec.tsx => src/explore/components/ControlPanelsContainer.test.tsx} (100%)
rename superset-frontend/{spec/javascripts/explore/components/ControlRow_spec.tsx => src/explore/components/ControlRow.test.tsx} (100%)
rename superset-frontend/{spec/javascripts/explore/components/EmbedCodeButton_spec.jsx => src/explore/components/EmbedCodeButton.test.jsx} (100%)
rename superset-frontend/{spec/javascripts/explore/components/ExploreActionButtons_spec.jsx => src/explore/components/ExploreActionButtons.test.jsx} (100%)
rename superset-frontend/{spec/javascripts/explore/components/ExploreAdditionalActionsMenu.jsx => src/explore/components/ExploreAdditionalActionsMenu/ExploreAdditionalActionsMenu.test.jsx} (82%)
rename superset-frontend/{spec/javascripts/explore/components/ExploreChartPanel_spec.jsx => src/explore/components/ExploreChartPanel.test.jsx} (100%)
rename superset-frontend/{spec/javascripts/explore/components/ExploreViewContainer_spec.jsx => src/explore/components/ExploreViewContainer.test.jsx} (100%)
rename superset-frontend/{spec/javascripts/explore/components/QueryAndSaveBtns_spec.jsx => src/explore/components/QueryAndSaveBtns.test.jsx} (100%)
rename superset-frontend/{spec/javascripts/explore/components/RowCountLabel_spec.jsx => src/explore/components/RowCountLabel.test.jsx} (100%)
rename superset-frontend/{spec/javascripts/explore/components/SaveModal_spec.jsx => src/explore/components/SaveModal.test.jsx} (100%)
rename superset-frontend/{spec/javascripts/explore/components/BoundsControl_spec.jsx => src/explore/components/controls/BoundsControl.test.jsx} (100%)
rename superset-frontend/{spec/javascripts/explore/components/CheckboxControl_spec.tsx => src/explore/components/controls/CheckboxControl.test.tsx} (100%)
rename superset-frontend/{spec/javascripts/explore/components/ColorPickerControl_spec.tsx => src/explore/components/controls/ColorPickerControl.test.tsx} (100%)
rename superset-frontend/{spec/javascripts/explore/components/ColorScheme_spec.jsx => src/explore/components/controls/ColorSchemeControl/ColorScheme.test.jsx} (100%)
rename superset-frontend/{spec/javascripts/explore/components/DatasourceControl_spec.jsx => src/explore/components/controls/DatasourceControl/DatasourceControl.test.jsx} (100%)
rename superset-frontend/{spec/javascripts/explore/components/FilterBoxItemControl_spec.jsx => src/explore/components/controls/FilterBoxItemControl/FilterBoxItemControl.test.jsx} (100%)
rename superset-frontend/{spec/javascripts/explore/AdhocMetric_spec.js => src/explore/components/controls/MetricControl/AdhocMetric.test.js} (100%)
rename superset-frontend/{spec/javascripts/explore/components/AdhocMetricEditPopover_spec.jsx => src/explore/components/controls/MetricControl/AdhocMetricEditPopover/AdhocMetricEditPopover.test.jsx} (100%)
rename superset-frontend/{spec/javascripts/explore/components/AdhocMetricEditPopoverTitle_spec.jsx => src/explore/components/controls/MetricControl/AdhocMetricEditPopoverTitle.test.jsx} (100%)
rename superset-frontend/{spec/javascripts/explore/components/AdhocMetricOption_spec.jsx => src/explore/components/controls/MetricControl/AdhocMetricOption.test.jsx} (100%)
rename superset-frontend/{spec/javascripts/explore/components/AggregateOption_spec.tsx => src/explore/components/controls/MetricControl/AggregateOption.test.tsx} (100%)
rename superset-frontend/{spec/javascripts/explore/components/FilterDefinitionOption_spec.jsx => src/explore/components/controls/MetricControl/FilterDefinitionOption.test.jsx} (100%)
rename superset-frontend/{spec/javascripts/explore/components/MetricDefinitionOption_spec.jsx => src/explore/components/controls/MetricControl/MetricDefinitionOption.test.jsx} (100%)
rename superset-frontend/{spec/javascripts/explore/components/MetricDefinitionValue_spec.jsx => src/explore/components/controls/MetricControl/MetricDefinitionValue.test.jsx} (100%)
rename superset-frontend/{spec/javascripts/explore/components/MetricsControl_spec.jsx => src/explore/components/controls/MetricControl/MetricsControl.test.jsx} (100%)
rename superset-frontend/{spec/javascripts/explore/components/SelectControl_spec.jsx => src/explore/components/controls/SelectControl.test.jsx} (100%)
rename superset-frontend/{spec/javascripts/explore/components/TextArea_spec.jsx => src/explore/components/controls/TextAreaControl.test.jsx} (100%)
rename superset-frontend/{spec/javascripts/explore/components/ViewportControl_spec.jsx => src/explore/components/controls/ViewportControl.test.jsx} (100%)
rename superset-frontend/{spec/javascripts/explore/components/VizTypeControl_spec.jsx => src/explore/components/controls/VizTypeControl/VizTypeControl.test.jsx} (100%)
rename superset-frontend/{spec/javascripts/explore/components/withAsyncVerification_spec.tsx => src/explore/components/controls/withAsyncVerification.test.tsx} (100%)
rename superset-frontend/{spec/javascripts/explore/controlUtils_spec.tsx => src/explore/controlUtils/controlUtils.test.tsx} (99%)
rename superset-frontend/{spec/javascripts/explore/utils_spec.jsx => src/explore/exploreUtils/exploreUtils.test.jsx} (100%)
rename superset-frontend/{spec/javascripts => src}/explore/fixtures.tsx (100%)
rename superset-frontend/{spec/javascripts/explore/store_spec.jsx => src/explore/store.test.jsx} (100%)
rename superset-frontend/src/{common => }/hooks/apiResources/apiResources.test.ts (100%)
rename superset-frontend/src/{common => }/hooks/apiResources/apiResources.ts (100%)
rename superset-frontend/src/{common => }/hooks/apiResources/charts.ts (100%)
rename superset-frontend/src/{common => }/hooks/apiResources/dashboards.ts (100%)
rename superset-frontend/src/{common => }/hooks/apiResources/index.ts (100%)
rename superset-frontend/src/{common => }/hooks/useChangeEffect/index.ts (100%)
rename superset-frontend/src/{common => }/hooks/useChangeEffect/useChangeEffect.test.ts (100%)
rename superset-frontend/src/{common => }/hooks/useChangeEffect/useChangeEffect.ts (100%)
rename superset-frontend/src/{common => }/hooks/useComponentDidMount/index.ts (100%)
rename superset-frontend/src/{common => }/hooks/useComponentDidMount/useComponentDidMount.test.ts (100%)
rename superset-frontend/src/{common => }/hooks/useComponentDidMount/useComponentDidMount.ts (100%)
rename superset-frontend/src/{common => }/hooks/useComponentDidUpdate/index.ts (100%)
rename superset-frontend/src/{common => }/hooks/useComponentDidUpdate/useComponentDidUpdate.test.ts (100%)
rename superset-frontend/src/{common => }/hooks/useComponentDidUpdate/useComponentDidUpdate.ts (100%)
rename superset-frontend/src/{common => }/hooks/useElementOnScreen/index.ts (100%)
rename superset-frontend/src/{common => }/hooks/usePrevious/index.ts (100%)
rename superset-frontend/src/{common => }/hooks/usePrevious/usePrevious.test.ts (100%)
rename superset-frontend/src/{common => }/hooks/usePrevious/usePrevious.ts (100%)
rename superset-frontend/src/{common => }/hooks/useUrlShortener.ts (91%)
copy superset-frontend/{packages/superset-ui-core/test/translation/index.test.ts => src/utils/localStorageHelpers.test.ts} (60%)
delete mode 100644 superset-frontend/src/views/CRUD/storageKeys.ts
rename superset-frontend/src/{components/Menu => views/components}/LanguagePicker.test.tsx (100%)
rename superset-frontend/src/{components/Menu => views/components}/LanguagePicker.tsx (100%)
rename superset-frontend/src/{components/Menu => views/components}/Menu.test.tsx (100%)
rename superset-frontend/src/{components/Menu => views/components}/Menu.tsx (98%)
rename superset-frontend/src/{components/Menu => views/components}/MenuRight.tsx (100%)
rename superset-frontend/src/{components/Menu => views/components}/SubMenu.test.tsx (100%)
rename superset-frontend/src/{components/Menu => views/components}/SubMenu.tsx (98%)
rename superset-frontend/{spec/javascripts/explore/components/FilterBox_spec.jsx => src/visualizations/FilterBox/FilterBox.test.jsx} (100%)
create mode 100644 superset/db_engine_specs/kusto.py
copy {tests/unit_tests/dashboards/commands/importers/v1 => superset/key_value}/__init__.py (100%)
create mode 100644 superset/migrations/versions/31bb738bd1d2_move_pivot_table_v2_legacy_order_by_to_.py
create mode 100644 superset/migrations/versions/bb38f40aa3ff_add_force_screenshot_to_alerts_reports.py
copy tests/unit_tests/conftest.py => superset/migrations/versions/c53bae8f08dd_add_saved_query_foreign_key_to_tab_state.py (51%)
create mode 100644 superset/migrations/versions/fe23025b9441_rename_big_viz_total_form_data_fields.py
create mode 100644 tests/common/example_data_generator/__init__.py
create mode 100644 tests/common/example_data_generator/base_generator.py
create mode 100644 tests/common/example_data_generator/birth_names/__init__.py
create mode 100644 tests/common/example_data_generator/birth_names/birth_names_generator.py
create mode 100644 tests/common/example_data_generator/birth_names/birth_names_generator_factory.py
create mode 100644 tests/common/example_data_generator/consts.py
create mode 100644 tests/common/example_data_generator/string_generator.py
create mode 100644 tests/common/example_data_generator/string_generator_factory.py
create mode 100644 tests/common/example_data_generator/tests/__init__.py
create mode 100644 tests/common/example_data_generator/tests/test_string_generator.py
create mode 100644 tests/integration_tests/fixtures/tabbed_dashboard.py
create mode 100644 tests/integration_tests/security/guest_token_security_tests.py
create mode 100644 tests/integration_tests/security/row_level_security_tests.py
copy tests/unit_tests/{dashboards/commands/importers/v1 => datasets}/__init__.py (100%)
copy tests/unit_tests/{dashboards/commands/importers/v1 => datasets/commands}/__init__.py (100%)
create mode 100644 tests/unit_tests/datasets/commands/export_test.py
copy tests/unit_tests/{dashboards/commands/importers/v1 => datasets/commands/importers}/__init__.py (100%)
copy tests/unit_tests/{dashboards => datasets}/commands/importers/v1/__init__.py (100%)
create mode 100644 tests/unit_tests/datasets/commands/importers/v1/import_test.py
create mode 100644 tests/unit_tests/db_engine_specs/test_kusto.py