You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@superset.apache.org by hu...@apache.org on 2023/03/16 19:42:57 UTC
[superset] branch hugh/chore-table updated (165f132f08 -> 5c6b028010)
This is an automated email from the ASF dual-hosted git repository.
hugh pushed a change to branch hugh/chore-table
in repository https://gitbox.apache.org/repos/asf/superset.git
from 165f132f08 Misc typing.
add a299b4789b docs(alerts & reports): clarify nature of "-dev" labeled container images (#22988)
add ae155611dc chore: bump python version to 3.8.16 in Dockerfile (#22934)
add c9b9b7404a fix: Form data was not being passed to save/update slice (#22989)
add cf395ac2d8 feat(ssh_tunnel): SSH Tunnel Switch extension (#22967)
add 5bafb5c950 chore: Fix grammar (#22831)
add 79114bcd29 docs: added Orange inside the inthewild.md doc (#22986)
add 7a0f350028 fix: add new config to allow for specific import data urls (#22942)
add 2dff0009e9 build(deps): bump pre-commit from 2.20.0 to 3.0.4 in /requirements (#22996)
add 7d5c86b44c fix(explore): Save button incorrectly disabled when adding new metric with dnd (#23000)
add aa0a07859e build(deps): bump http-cache-semantics from 4.1.0 to 4.1.1 in /docs (#22956)
add 9dfaad772d fix: Make cte_alias a property of db engine spec (#22947)
add a2c3ef8130 fix(migrations): Flask-Migrate output is not logged during alembic migrations #17991 (#22991)
add efe6d22d4a fix(dashboard): export & import chart description and certification details (#22471)
add ce6dd158a1 chore: updating link to sandbox.js (#23005)
add a1b7eb3870 fix(sqllab): clean unwanted scrollbar (#22990)
add 773d2a54a3 chore: Localization of superset pt. 3 (#22938)
add c5b25ebf17 chore(deps): bump ajv and react-jsonschema-form in /superset-frontend (#21809)
add 1a34876e35 build(deps-dev): bump eslint-config-prettier from 7.2.0 to 8.6.0 in /superset-websocket (#22767)
add b12bb568ac build(deps): bump http-cache-semantics from 4.1.0 to 4.1.1 in /superset-frontend/cypress-base (#22955)
add 50f1e2ee29 build(deps-dev): bump @types/node from 18.11.13 to 18.11.19 in /superset-websocket (#22997)
add 32fac77b5f feat(datasets): Populate Usage tab in Edit Dataset view (#22670)
add 4f590befae build(deps-dev): bump @typescript-eslint/parser from 5.48.1 to 5.51.0 in /superset-websocket (#23013)
add 438cd1c150 build(deps-dev): bump typescript from 4.9.4 to 4.9.5 in /superset-websocket (#22933)
add 183c5f9589 chore(tests): Cypress optimizations to help with fails (#23023)
add 493181c977 chore: refactor SliceAdder for react 17 and react 18 (#23009)
add 98bf878d6e fix(explore): Enable saving metric after changing title (#23020)
add 7bb9b810ee fix: dataset import error message (#23025)
add ddd8d17aa4 fix(ssh_tunnel): Fix bug on database edition for databases with ssh tunnels (#23006)
add 5e64211bdb fix: Handles disabled options on Select All (#22830)
add 684b8888b1 fix(dashboard): Stop updating chart owners for charts removed from dashboard (#21720)
add 85f07798bf docs(teradata): fix connection string (#23051)
add 464ddee4b4 fix: Time Column on Generic X-axis (#23021)
add 17fbb2dbb2 fix: Menu items are not disappearing when deleting a dashboard (#23039)
add a7bb14e433 fix(i18n): improve Russian translation (#22939)
add d3d59ee0ae fix(sqllab): Invalid schema fetch by deprecated value (#22968)
add 49aa9b4ca8 chore: Removes icon warnings from tests (#23054)
add 4980621902 feat(sqllab): Add event logger (#23040)
add f3bdcdc79b chore(datasets): Refactor DatasetDAO update to leverage bulk logic for create, update, and delete operations (#22957)
add 65fffe974b chore: remove db_engines (#22444)
add a307223857 feat(helm): allow persisting nodePort for services (#22713)
add 52da9fcbe7 build(deps-dev): bump @typescript-eslint/eslint-plugin from 5.49.0 to 5.52.0 in /superset-websocket (#23073)
add 50ae48103e build(deps): bump hot-shots from 9.3.0 to 10.0.0 in /superset-websocket (#23031)
add c59a77e3ca build(deps-dev): bump prettier from 2.8.3 to 2.8.4 in /superset-websocket (#23030)
add 0ec1e6e0b4 build(deps-dev): bump @types/node from 18.11.19 to 18.13.0 in /superset-websocket (#23029)
add e755b4f417 fix: cache warmup solution non legacy charts. (#23012)
add 7d7e3e4ade docs: remove duplicate navbar item (#22486)
add 3fae7dbc34 chore: Migrate get_or_create_table endpoint to api v1 (#22931)
add e5a4c78dc7 chore: Migrate /superset/csv/<client_id> to API v1 (#22913)
add c39cf36d27 fix: css template permissions for gamma role (#23083)
add f46aacae71 build(deps): bump ws from 8.12.0 to 8.12.1 in /superset-websocket (#23080)
add a7dac13ded build(deps-dev): bump eslint from 8.33.0 to 8.34.0 in /superset-websocket (#23079)
add 1324135697 chore(style): make brand icon max width customizable (#23081)
add 76f7a3fb4e chore: Remove dependency warnings from SqlEditorLeftBar/index.tsx (#22975)
add 861ecf65d4 chore: Remove dependency warnings from SqlEditor/index.jsx (#22974)
add 5b5b534e89 chore: Remove dependency warnings from DatasetList.tsx (#22973)
add b1296a195c test: Convert DatasetList test from jsx to tsx (#22971)
add f6c304437a test: Clean up SelectAsyncControl test warnings (#22969)
add 4ddf67fc14 chore: move dashboard screenshot standalone logic (#23003)
add 21dd1601bf fix: dict bug on QueryContextFactory (#23093)
add f4ffed24ba chore: Improve greeting message (#23077)
add 92b9c06e59 chore: Updating connection URI for MS SQL Server (#22903)
add 434b445e31 chore: increment statsd as warn (#23041)
add 75495d1601 fix: removing pyproject.toml (#23101)
add 7160daecf3 chore: change AlertQueryError to 400 (#23102)
add 4b03d2553c fix: missing __init__ on module sqllab commands (#23107)
add dec6ac49f6 chore(backend): Spelling (#19677)
add 22a648755b chore: Remove yarn.lock from the root folder (#23108)
add f851e992cf chore(sqla): Address performance tradeoff with eager loading (#23113)
add 5482f78a9c fix(ci): explicity set yaml Loader (#23126)
add c7823e32ff fix: Validate jinja rendered query (#22851)
add d4362a3676 fix: reorganize role permissions (#23096)
add 8f8fba2056 fix: gamma sql_json test (#23135)
add eb8386e3f0 fix(dashboard): Chart's empty state not centered (#23022)
add a40c12d63e feat: Frontend tagging (#20876)
add fbf10c35a9 feat: return UUID on database creation (#23143)
add a0ca0c04ff chore: Add docs for ssh tunneling (#23131)
add 871cab8cbe feat: Enable cross fitlers in WorldMap and Graph charts (#22886)
add 95eb8d79d0 chore: Bump cryptography to 39.0.1 (#23158)
add ee1952e488 feat(dashboard): Add cross filter from context menu (#23141)
add 6338ea5d42 chore: revert "feat(native_filter_migration): add transition mode (#16992)" (#23144)
add 9a4839f45c build: Add helm chart option to deploy sidecars with node and worker (#23160)
add 89576f8a87 fix(rbac): show objects accessible by database access perm (#23118)
add f0f27a486d fix: bump FAB to 4.3.0 (#23184)
add d0c54cddb0 fix(clickhouse): add clickhouse connect driver (#23185)
add 967383853c fix(clickhouse): add missing default format (#23192)
add 3484e8ea7b feat(ssh_tunnel): Import/Export Databases with SSHTunnel credentials (#23099)
add a70b7ac3b0 chore: refactor SparklineCell for react 17 and react 18 upgrade (#23145)
add 218de6e6a4 fix(ssh_tunnel): Display SSHTunnel Switch when editing a DB that was created with the Dynamic Form (#23195)
add 196e3eac8b fix(sshtunnel): argument params to properly setting `server_port` (#23196)
add cb9bff72d6 fix(ssh-tunnel): add password to `from_private_key` function (#23175)
add 6a484b1553 fix: Pagination of VirtualTable (#23130)
add 7d4aee956e fix(dashboard): Focusing charts and native filters from filters badge (#23190)
add 9e9f9dcae5 fix(docs): Change postgres to postgresql in brew install command (#23202)
add 718f6877d1 build(deps-dev): bump @typescript-eslint/parser from 5.51.0 to 5.53.0 in /superset-websocket (#23133)
add a9fe40d38b build(deps-dev): bump @types/node from 18.13.0 to 18.14.1 in /superset-websocket (#23180)
add 9f97c7d028 test: Remove test playgrounds (#23203)
add c80d6b1451 build(deps-dev): bump @typescript-eslint/eslint-plugin from 5.52.0 to 5.53.0 in /superset-websocket (#23132)
add 64ad70cc8d build(deps): bump express and @applitools/eyes-cypress in /superset-frontend/cypress-base (#22342)
add 37766b9527 docs: fix typo (#23207)
add dcd3e00f39 feat: Cross Filters in FilterBar (#23138)
add ad5ee1ce38 fix(dashboard): Page crashing when cross filter applied on adhoc column (#23215)
add 79274eb5bc fix: memoized decorator memory leak (#23139)
add 62634bd77b build(deps-dev): bump @types/uuid from 9.0.0 to 9.0.1 in /superset-websocket (#23152)
add 14879d93fb build(deps-dev): bump eslint from 8.34.0 to 8.35.0 in /superset-websocket (#23211)
add 8f972d6875 chore: adding code owners for github actions/workflows (#23201)
add 88167772e9 build(deps): bump ua-parser-js from 0.7.28 to 0.7.33 in /superset-frontend (#22859)
add 42db7e562d build(deps): bump pre-commit from 3.0.4 to 3.1.0 in /requirements (#23168)
add b479e93b49 fix: add disallowed query params for engines specs (#23217)
add 0a7016df2e chore: Add statsd logger for ssh tunneling creation (#23225)
add 473a69a704 fix(dashboard): Don't show cross filters checkbox to users without write permissions (#23237)
add ae8aa60844 docs: update installation docs to include frontend asset build (#23199)
add aba6900994 build(deps): bump pip-compile-multi from 2.6.1 to 2.6.2 in /requirements (#23122)
add 7196e87833 fix(dashboard): Cross-filters not working properly for new dashboards (#23194)
add b180319bbf fix: refuse to start with default secret on non debug envs (#23186)
add 5a099e0762 fix(dao): use explicit id filter (#23246)
add 6076457b90 fix(explore): Dashboard filters on adhoc cols not working in Explore (#23239)
add d16eda6e56 refactor: Organizes the pages in their own folder (#23241)
add 022df93422 fix: Video Game Sales dashboard default filters (#23242)
add 5f0c320415 chore: Deprecate show_native_filters (#23228)
add 134acba99a chore: Remove the ability to add filter-box charts when DASHBOARD_NATIVE_FILTERS feature is enabled (#23142)
add 2ba9d1b79e fix(dashboard): Cross-filter search icon in filter bar (#23250)
add d3e698eb54 chore(webdriver): Tuning the Webdriver logging a bit (#23255)
add 1f3eb56688 fix: customize tab on heatmap chart is blank (#23243)
add 9d0eea9600 fix(dashboard): Missing filter card styles (#23256)
add 7d8383cbd5 fix: ignore ts warnings from older typescript versions (#23262)
add 006f3dd88c chore(cache): Tuning logging in cache manager (#23266)
add 42980a69a7 fix(dashboard): Charts crashing when cross filter on adhoc column is applied (#23238)
add 71a9d0d403 fix(plugin-chart-echarts): render horizontal categories from top (#23273)
add 1b139d0748 feat(generic-x-axis): add x sorting on series limit metric (#23274)
add d16512b775 fix(dashboard): Allow selecting text in cells in Table and PivotTable without triggering cross filters (#23283)
add f7e7652270 fix(migration): Address issue in #23228 (#23276)
add ed11123709 chore(dashboard): Cleanup example dashboard filter scopes (#23260)
add a3d49ca335 fix(dashboard): Infinite load when filter with default first value is out of scope (#23299)
add e0d976dcca fix(clickhouse): Update to working clickhouse-connect version (#23296)
add 376ad39576 chore: upgrade @ant-design/icons for react upgrade (#22890)
add dae6a9f701 docs: typo 'admnistrators' in security.mdx (#23166)
add 9df7812e9c build(deps-dev): bump eslint-config-prettier from 8.6.0 to 8.7.0 in /superset-websocket (#23292)
add 56380027f4 build(deps-dev): bump @types/node from 18.14.1 to 18.14.6 in /superset-websocket (#23281)
add 0a588d11a5 chore: bump docusaurus to latest stable (#23317)
add eb3d5602c2 docs: add lost _filters param docs (#23316)
add 57db8f938b feat(docs): adds BugHerd to documentation site. (#23287)
add 989fe27a0f chore: log different selenium timeout errors differently (#23290)
add 33b758d716 docs: improve API v1 migration documentation (#23298)
add 2cf75cc0ce docs(alerts and reports): Update ExecutorType class (#23323)
add 6311b40329 build(deps-dev): bump @typescript-eslint/parser from 5.53.0 to 5.54.1 in /superset-websocket (#23294)
add c2b282ac71 feat(dashboard): Refactor FiltersBadge (#23286)
add a8d5cb89a8 chore: use util test env for init check (#23325)
add a591130e0b fix(trino): normalize non-iso timestamps (#23339)
add 78ee60e227 fix(dashboard): Cross filters with time shifted series (#23347)
add f3055fcaff feat(dashboard): Change default opacity of icon in FiltersBadge (#23350)
add b99d38dfef fix: dashboard DAO small code improvement (#23348)
add 82cadccced chore: Remove Cross Filter scoping modal (#23216)
add 3919ca6060 fix(dashboard): deepmerge htmlSchemaOverrides (#23329)
add e83f4e6f79 fix(trino): Disallow alias to source column (#23324)
add d415eed717 fix(examples): Cleanup granularity_sqla column (#23322)
add 9ae81b7c33 fix(sqllab): empty large query results from localStorage (#23302)
add b820eb8235 chore: Update pre-commit packages (#23173)
add b90a11191f fix(safari): remove autocomplete in table select (#23361)
add 63513a5873 fix(chart-controls): Error if x_axis_sort and timeseries_limit_metric are included in main metrics (#23365)
add db95a93f43 feat(native-filters): allow cascading from time and numeric filters (#23319)
add df9a5bb6df build(deps-dev): bump @types/node from 18.14.6 to 18.15.3 in /superset-websocket (#23360)
add d2c1fb95ec fix(native-filters): Caching scope (#23314)
add 1b95da7487 fix: table schema permissions (#23356)
add 1874f9a3b6 fix: dataset_macro (#23376)
add 9920ab3fd9 chore: Migrate /superset/schemas_access_for_file_upload to v1 (#23227)
add 24c472a4a3 chore: Add code-owners to Select, MetadataBar and DropdownContainer (#23371)
add ec6318b379 fix: permission checks on import (#23200)
add da3791ad3d fix: Table sorting reset (#23318)
add 0c454c6442 feat(plugin-chart-echarts): add series sorting (#23392)
add 870bf6d0b9 fix: revert back to use security manager authz for dashboard when get by uuid (#23330)
add 066b1c394b Merge branch 'master' of https://github.com/apache/superset into hugh/chore-table
add 5c6b028010 fix lint
No new revisions were added by this update.
Summary of changes:
.github/CODEOWNERS | 10 +-
.github/workflows/superset-python-unittest.yml | 2 +
.github/workflows/welcome-new-users.yml | 3 +-
.pre-commit-config.yaml | 9 +-
Dockerfile | 2 +-
RELEASING/changelog.py | 2 +-
RESOURCES/FEATURE_FLAGS.md | 2 +-
RESOURCES/INTHEWILD.md | 1 +
UPDATING.md | 14 +
docker/.env-non-dev | 1 +
.../creating-your-first-dashboard.mdx | 2 +-
.../docs/databases/installing-database-drivers.mdx | 4 +-
docs/docs/databases/teradata.mdx | 2 +-
docs/docs/installation/alerts-reports.mdx | 16 +-
docs/docs/installation/configuring-superset.mdx | 4 +-
.../installing-superset-from-scratch.mdx | 10 +-
docs/docs/installation/setup-ssh-tunneling.mdx | 21 +
docs/docs/installation/sql-templating.mdx | 47 +-
docs/docs/miscellaneous/chart-params.mdx | 2 +-
docs/docs/security.mdx | 2 +-
docs/docusaurus.config.js | 13 +-
docs/package.json | 14 +-
docs/static/resources/openapi.json | 322 +-
docs/yarn.lock | 6 +-
helm/superset/Chart.yaml | 2 +-
helm/superset/README.md | 7 +-
helm/superset/templates/deployment-worker.yaml | 3 +
helm/superset/templates/deployment.yaml | 3 +
helm/superset/templates/service.yaml | 9 +
helm/superset/values.yaml | 17 +-
pyproject.toml | 19 -
requirements/base.txt | 4 +-
requirements/integration.txt | 22 +-
scripts/benchmark_migration.py | 2 +-
setup.py | 6 +-
superset-embedded-sdk/package-lock.json | 4 +-
superset-embedded-sdk/package.json | 2 +-
superset-embedded-sdk/src/index.ts | 2 +
.../cypress/integration/dashboard/load.test.ts | 5 +-
.../integration/dashboard/nativeFilters.test.ts | 16 +-
superset-frontend/cypress-base/package-lock.json | 6610 +++++++++++++++-----
superset-frontend/cypress-base/package.json | 2 +-
superset-frontend/package-lock.json | 1328 +++-
superset-frontend/package.json | 11 +-
.../superset-ui-chart-controls/package.json | 2 +-
.../src/components/ColumnOption.tsx | 8 +-
.../src/components/MetricOption.tsx | 8 +-
.../src/operators/pivotOperator.ts | 6 +-
.../src/operators/sortOperator.ts | 4 +-
.../src/operators/utils/extractExtraMetrics.ts} | 36 +-
.../src/operators/utils/index.ts | 1 +
.../src/shared-controls/customControls.tsx | 81 +-
.../src/utils/D3Formatting.ts | 7 +
.../test/operators/pivotOperator.test.ts | 30 +
.../test/operators/sortOperator.test.ts | 25 +
.../operators/utils/extractExtraMetrics.test.ts | 126 +
.../packages/superset-ui-core/package.json | 1 +
.../superset-ui-core/src/chart/types/Base.ts | 10 +-
.../src/components/SafeMarkdown.tsx | 16 +-
.../superset-ui-core/src/hooks}/index.ts | 5 +
.../src/hooks/useChangeEffect/index.ts | 0
.../hooks/useChangeEffect/useChangeEffect.test.ts | 0
.../src/hooks/useChangeEffect/useChangeEffect.ts | 0
.../src/hooks/useComponentDidMount/index.ts | 0
.../useComponentDidMount.test.ts | 0
.../useComponentDidMount/useComponentDidMount.ts | 0
.../src/hooks/useComponentDidUpdate/index.ts | 0
.../useComponentDidUpdate.test.ts | 0
.../useComponentDidUpdate/useComponentDidUpdate.ts | 0
.../src/hooks/useElementOnScreen}/index.ts | 2 +-
.../useElementOnScreen/useElementOnScreen.test.ts | 111 +
.../useElementOnScreen/useElementOnScreen.ts} | 0
.../src/hooks/usePrevious/index.ts | 0
.../src/hooks/usePrevious/usePrevious.test.ts | 0
.../src/hooks/usePrevious/usePrevious.ts | 0
.../src/hooks/useTruncation/index.ts | 0
.../useTruncation/useCSSTextTruncation.test.tsx | 62 +
.../hooks/useTruncation/useCSSTextTruncation.ts | 0
.../useChildElementTruncation.test.ts | 102 +
.../useTruncation/useChildElementTruncation.ts | 0
.../packages/superset-ui-core/src/index.ts | 1 +
.../src/query/buildQueryContext.ts | 17 +-
.../packages/superset-ui-core/src/style/index.tsx | 1 +
.../superset-ui-core/src/time-format/index.ts | 2 +
.../src/time-format/utils/normalizeTimestamp.ts} | 21 +-
.../src/ui-overrides/ExtensionsRegistry.ts | 11 +
.../superset-ui-core/src/utils/featureFlags.ts | 2 +-
.../superset-ui-core/src/utils/getSelectedText.ts} | 3 +-
.../packages/superset-ui-core/src/utils/index.ts | 1 +
.../test/components/SafeMarkdown.test.ts} | 35 +-
.../test/query/buildQueryContext.test.ts | 37 -
.../time-format/utils/normalizeTimestamp.test.ts | 43 +
.../test/utils/getSelectedText.test.ts} | 22 +-
.../legacy-plugin-chart-world-map/src/WorldMap.js | 103 +-
.../legacy-plugin-chart-world-map/src/index.js | 2 +-
.../src/transformProps.js | 17 +-
.../src/utilities/Shared_DeckGL.jsx | 4 +-
.../src/Pie/controlPanel.ts | 8 +-
.../src/BigNumber/BigNumberViz.tsx | 6 +-
.../plugin-chart-echarts/src/BigNumber/types.ts | 4 +-
.../src/BoxPlot/EchartsBoxPlot.tsx | 51 +-
.../src/BoxPlot/controlPanel.ts | 5 +-
.../src/Funnel/EchartsFunnel.tsx | 51 +-
.../src/Funnel/controlPanel.tsx | 6 +-
.../src/Gauge/EchartsGauge.tsx | 51 +-
.../src/Graph/EchartsGraph.tsx | 105 +-
.../plugin-chart-echarts/src/Graph/index.ts | 4 +-
.../src/Graph/transformProps.ts | 24 +-
.../plugin-chart-echarts/src/Graph/types.ts | 1 +
.../src/MixedTimeseries/EchartsMixedTimeseries.tsx | 103 +-
.../plugin-chart-echarts/src/Pie/EchartsPie.tsx | 51 +-
.../plugin-chart-echarts/src/Pie/controlPanel.tsx | 5 +-
.../src/Radar/EchartsRadar.tsx | 52 +-
.../src/Radar/controlPanel.tsx | 5 +-
.../src/Sunburst/EchartsSunburst.tsx | 91 +-
.../src/Sunburst/controlPanel.tsx | 5 +-
.../src/Timeseries/Area/controlPanel.tsx | 8 +-
.../src/Timeseries/EchartsTimeseries.tsx | 100 +-
.../src/Timeseries/Regular/Bar/controlPanel.tsx | 11 +-
.../src/Timeseries/Regular/Line/controlPanel.tsx | 11 +-
.../Timeseries/Regular/Scatter/controlPanel.tsx | 11 +-
.../Timeseries/Regular/SmoothLine/controlPanel.tsx | 11 +-
.../src/Timeseries/Step/controlPanel.tsx | 8 +-
.../src/Timeseries/buildQuery.ts | 35 +-
.../src/Timeseries/constants.ts | 9 +
.../src/Timeseries/transformProps.ts | 77 +-
.../plugin-chart-echarts/src/Timeseries/types.ts | 1 +
.../src/Treemap/EchartsTreemap.tsx | 103 +-
.../src/Treemap/controlPanel.tsx | 5 +-
.../plugins/plugin-chart-echarts/src/constants.ts | 11 +-
.../plugins/plugin-chart-echarts/src/controls.tsx | 44 +-
.../plugins/plugin-chart-echarts/src/types.ts | 24 +-
.../src/utils/eventHandlers.ts | 106 +-
.../plugin-chart-echarts/src/utils/series.ts | 113 +-
.../test/Graph/transformProps.test.ts | 6 +
.../test/Timeseries/transformProps.test.ts | 69 +
.../plugin-chart-echarts/test/utils/series.test.ts | 52 +-
.../plugins/plugin-chart-pivot-table/package.json | 2 +-
.../src/PivotTableChart.tsx | 82 +-
.../src/react-pivottable/TableRenderers.jsx | 12 +
.../plugins/plugin-chart-pivot-table/src/types.ts | 4 +-
.../plugins/plugin-chart-table/package.json | 1 +
.../plugin-chart-table/src/DataTable/DataTable.tsx | 25 +-
.../plugins/plugin-chart-table/src/TableChart.tsx | 217 +-
.../plugins/plugin-chart-table/src/types.ts | 4 +-
.../src/utils/DateWithFormatter.ts | 21 +-
superset-frontend/spec/fixtures/mockCharts.ts | 55 +
.../spec/fixtures/mockDashboardState.js | 2 +-
superset-frontend/spec/helpers/shim.tsx | 30 +
superset-frontend/src/SqlLab/App.jsx | 3 +-
superset-frontend/src/SqlLab/actions/sqlLab.js | 8 +-
.../SqlLab/components/AceEditorWrapper/index.tsx | 3 +-
.../src/SqlLab/components/App/App.test.jsx | 49 +-
.../src/SqlLab/components/App/index.jsx | 17 +-
.../components/ExploreCtasResultsButton/index.tsx | 6 +-
.../QueryLimitSelect/QueryLimitSelect.test.tsx | 3 -
.../src/SqlLab/components/QueryTable/index.tsx | 15 +-
.../src/SqlLab/components/ResultSet/index.tsx | 7 +-
.../src/SqlLab/components/SqlEditor/index.jsx | 116 +-
.../SqlEditorLeftBar/SqlEditorLeftBar.test.jsx | 82 +-
.../SqlLab/components/SqlEditorLeftBar/index.tsx | 59 +-
.../src/SqlLab/components/TableElement/index.tsx | 3 +-
superset-frontend/src/SqlLab/constants.ts | 1 +
.../src/SqlLab/utils/emptyQueryResults.test.js | 39 +-
.../SqlLab/utils/reduxStateToLocalStorageHelper.js | 21 +-
.../src/assets/images/icons/filter.svg | 5 +-
.../AlteredSliceTag/AlteredSliceTag.test.jsx | 2 -
superset-frontend/src/components/Chart/Chart.jsx | 25 +-
.../src/components/Chart/ChartContextMenu.tsx | 123 +-
.../src/components/Chart/ChartRenderer.jsx | 3 +-
.../DisabledMenuItemTooltip.tsx} | 45 +-
.../Chart/DrillDetail/DrillDetailMenuItems.tsx | 42 +-
.../DatabaseSelector/DatabaseSelector.test.tsx | 282 +-
.../src/components/DatabaseSelector/index.tsx | 89 +-
.../Datasource/DatasourceEditor.test.jsx | 13 -
.../src/components/DropdownContainer/index.tsx | 3 +-
.../src/components/EmptyState/index.tsx | 24 +-
.../ErrorBoundary/ErrorBoundary.test.tsx | 2 -
.../src/components/FaveStar/index.tsx | 3 +-
.../src/components/FlashProvider/index.tsx | 2 +-
.../components/ImportModal/ImportModal.test.tsx | 47 +
.../src/components/ImportModal/index.tsx | 188 +-
.../src/components/ListView/CrossLinks.tsx | 3 +-
.../src/components/ListView/ListView.test.jsx | 6 -
superset-frontend/src/components/ListView/types.ts | 3 +
.../src/components/MessageToasts/Toast.test.jsx | 2 -
.../PageHeaderWithActions.test.tsx | 2 -
.../HeaderReportDropdown/index.test.tsx | 6 -
.../ReportModal/HeaderReportDropdown/index.tsx | 2 +-
.../components/ReportModal/ReportModal.test.tsx | 6 -
.../src/components/Select/AsyncSelect.tsx | 4 +-
.../src/components/Select/CustomTag.tsx | 3 +-
.../src/components/Select/Select.test.tsx | 59 +-
superset-frontend/src/components/Select/Select.tsx | 93 +-
superset-frontend/src/components/Select/utils.tsx | 18 +
.../src/components/Table/VirtualTable.tsx | 2 +-
.../Table/cell-renderers/NullCell/index.tsx | 8 +-
.../TableSelector/TableSelector.test.tsx | 103 +-
.../src/components/TableSelector/index.tsx | 40 +-
.../src/components/TableView/TableView.test.tsx | 2 -
.../utils.test.ts => components/Tags/Tag.test.tsx} | 27 +-
superset-frontend/src/components/Tags/Tag.tsx | 86 +
.../Tags/TagsList.stories.tsx} | 54 +-
.../src/components/Tags/TagsList.test.tsx | 78 +
superset-frontend/src/components/Tags/TagsList.tsx | 112 +
.../index.ts => components/Tags/index.tsx} | 3 +-
superset-frontend/src/components/Tags/utils.tsx | 93 +
.../src/components/TruncatedList/index.tsx | 159 +
superset-frontend/src/constants.ts | 8 -
.../src/dashboard/actions/dashboardState.js | 25 +-
superset-frontend/src/dashboard/actions/hydrate.js | 130 +-
.../src/dashboard/actions/sliceEntities.js | 41 +-
.../src/dashboard/actions/sliceEntities.test.js | 4 +-
.../CrossFilterScopingForm.test.tsx | 60 -
.../CrossFilterScopingForm/index.tsx | 57 -
.../CrossFilterScopingModal.tsx | 112 -
.../DashboardBuilder/DashboardBuilder.test.tsx | 4 -
.../DashboardBuilder/DashboardBuilder.tsx | 17 +-
.../DashboardBuilder/DashboardContainer.tsx | 2 +-
.../dashboard/components/DashboardBuilder/state.ts | 16 +-
.../DetailsPanel/DetailsPanel.test.tsx | 82 +-
.../components/FiltersBadge/DetailsPanel/index.tsx | 213 +-
.../FilterIndicator/FilterIndicator.test.tsx | 2 +-
.../FiltersBadge/FilterIndicator/index.tsx | 51 +-
.../components/FiltersBadge/FiltersBadge.test.tsx | 71 +-
.../dashboard/components/FiltersBadge/Styles.tsx | 147 +-
.../dashboard/components/FiltersBadge/index.tsx | 112 +-
.../Header/HeaderActionsDropdown/index.jsx | 25 +-
.../src/dashboard/components/Header/index.jsx | 34 +-
.../PropertiesModal/PropertiesModal.test.tsx | 14 +-
.../dashboard/components/PropertiesModal/index.tsx | 124 +-
.../components/RefreshIntervalModal.test.tsx | 1 -
.../src/dashboard/components/SliceAdder.jsx | 48 +-
.../src/dashboard/components/SliceHeader/index.tsx | 40 +-
.../components/SliceHeaderControls/index.tsx | 46 +-
.../dashboard/components/gridComponents/Chart.jsx | 24 +-
.../components/gridComponents/Markdown.jsx | 1 +
.../dashboard/components/gridComponents/Tabs.jsx | 13 +-
.../FilterBar/CrossFilters/CrossFilter.test.tsx | 82 +
.../FilterBar/CrossFilters/CrossFilter.tsx | 114 +
.../FilterBar/CrossFilters/CrossFilterTag.test.tsx | 84 +
.../FilterBar/CrossFilters/CrossFilterTag.tsx | 99 +
.../CrossFilters/CrossFilterTitle.test.tsx} | 54 +-
.../FilterBar/CrossFilters/CrossFilterTitle.tsx | 95 +
.../FilterBar/CrossFilters/Vertical.tsx | 46 +
.../CrossFilters/VerticalCollapse.test.tsx | 107 +
.../FilterBar/CrossFilters/VerticalCollapse.tsx | 102 +
.../FilterBar/CrossFilters/selectors.ts | 51 +
.../FilterBar/CrossFilters/styles.ts} | 12 +-
.../FilterBarSettings/FilterBarSettings.test.tsx | 1 -
.../FilterBar/FilterBarSettings/index.tsx | 2 +-
.../FilterBar/FilterControls/FilterControl.tsx | 5 +-
.../FilterBar/FilterControls/FilterControls.tsx | 139 +-
.../FilterBar/FilterControls/FilterDivider.tsx | 8 +-
.../FilterBar/FilterControls/FilterValue.tsx | 43 +-
.../FilterBar/FiltersDropdownContent/index.tsx | 30 +-
.../FiltersOutOfScopeCollapsible/index.tsx | 13 +-
.../nativeFilters/FilterBar/Horizontal.tsx | 35 +-
.../nativeFilters/FilterBar/Vertical.tsx | 183 +-
.../components/nativeFilters/FilterBar/index.tsx | 5 +-
.../components/nativeFilters/FilterBar/state.ts | 29 +-
.../components/nativeFilters/FilterBar/types.ts | 8 +-
.../FilterBar/useFilterControlFactory.tsx | 9 +-
.../nativeFilters/FilterBar/useFilterOutlined.ts} | 31 +-
.../nativeFilters/FilterCard/DependenciesRow.tsx | 7 +-
.../nativeFilters/FilterCard/FilterCard.test.tsx | 6 +-
.../nativeFilters/FilterCard/NameRow.tsx | 21 +-
.../nativeFilters/FilterCard/ScopeRow.tsx | 3 +-
.../FiltersConfigForm/ColumnSelect.tsx | 19 +-
.../FiltersConfigForm/DatasetSelect.tsx | 13 +-
.../FiltersConfigForm/DependencyList.tsx | 9 +-
.../FiltersConfigForm/FilterScope/FilterScope.tsx | 8 +-
.../FiltersConfigForm/FiltersConfigForm.tsx | 94 +-
.../FiltersConfigModal/FiltersConfigForm/utils.ts | 16 +-
.../FiltersConfigModal/FiltersConfigModal.tsx | 17 +-
.../nativeFilters/FiltersConfigModal/state.ts | 3 +-
.../{FiltersBadge => nativeFilters}/selectors.ts | 196 +-
.../src/dashboard/containers/Chart.jsx | 1 -
.../src/dashboard/containers/DashboardHeader.jsx | 1 -
.../src/dashboard/containers/DashboardPage.tsx | 127 +-
.../src/dashboard/containers/SliceAdder.jsx | 1 -
superset-frontend/src/dashboard/types.ts | 1 -
.../src/dashboard/util/crossFilters.test.ts | 207 +
.../src/dashboard/util/crossFilters.ts | 61 +-
.../util/filterboxMigrationHelper.test.ts | 142 -
.../src/dashboard/util/filterboxMigrationHelper.ts | 423 --
.../src/dashboard/util/getSliceHeaderTooltip.tsx | 2 +-
.../src/explore/components/Control.tsx | 8 +-
.../src/explore/components/ControlHeader.tsx | 12 +-
.../components/ControlPanelsContainer.test.tsx | 39 +
.../explore/components/ControlPanelsContainer.tsx | 7 +-
.../components/ExploreViewContainer/index.jsx | 14 +-
.../explore/components/PropertiesModal/index.tsx | 128 +-
.../src/explore/components/SaveModal.tsx | 66 +-
.../ConditionalFormattingControl.tsx | 9 +-
.../DatasourceControl/DatasourceControl.test.tsx | 19 -
.../controls/DateFilterControl/DateFilterLabel.tsx | 2 +-
.../DndFilterSelect.test.tsx | 5 +-
.../DndColumnSelectControl/DndFilterSelect.tsx | 6 +-
.../DndMetricSelect.test.tsx | 8 -
.../DndColumnSelectControl/DndMetricSelect.tsx | 3 +-
.../FilterControl/AdhocFilter/AdhocFilter.test.js | 6 +-
.../controls/FilterControl/AdhocFilter/index.js | 51 +-
.../AdhocFilterControl/AdhocFilterControl.test.jsx | 6 +-
.../FilterControl/AdhocFilterControl/index.jsx | 6 +-
.../AdhocFilterEditPopover.test.jsx | 6 +-
.../FilterControl/AdhocFilterEditPopover/index.jsx | 5 +-
...AdhocFilterEditPopoverSimpleTabContent.test.tsx | 6 +-
.../index.tsx | 6 +-
.../AdhocFilterEditPopoverSqlTabContent.test.jsx | 6 +-
.../AdhocFilterEditPopoverSqlTabContent/index.jsx | 6 +-
.../AdhocFilterOption/AdhocFilterOption.test.tsx | 14 +-
.../AdhocFilterPopoverTrigger.test.tsx | 6 +-
.../controls/FilterControl/adhocFilterType.js | 2 +-
.../components/controls/FilterControl}/types.ts | 12 +-
.../controls/FilterControl/utils/translateToSQL.ts | 76 +
.../utils/useGetTimeRangeLabel.test.ts | 3 +-
.../FilterControl/utils/useGetTimeRangeLabel.tsx | 3 +-
.../controls/MetricControl/AdhocMetric.js | 4 -
.../controls/MetricControl/AdhocMetric.test.js | 6 -
.../AdhocMetricEditPopover.test.tsx | 22 +-
.../MetricControl/AdhocMetricEditPopover/index.jsx | 40 +-
.../MetricControl/AdhocMetricPopoverTrigger.tsx | 6 +
.../MetricControl/MetricDefinitionValue.jsx | 2 +-
.../controls/MetricControl/MetricsControl.jsx | 9 +-
.../controls/MetricControl/MetricsControl.test.jsx | 1 -
.../SelectAsyncControl/SelectAsyncControl.test.tsx | 16 +-
.../controls/VizTypeControl/FastVizSwitcher.tsx | 11 +-
.../components/controls/VizTypeControl/index.tsx | 24 +-
superset-frontend/src/explore/constants.ts | 10 -
.../getFormDataFromDashboardContext.test.ts | 36 +
.../getFormDataWithDashboardContext.ts | 54 +-
superset-frontend/src/filters/utils.ts | 8 +-
superset-frontend/src/hooks/apiResources/index.ts | 1 +
.../src/hooks/apiResources/schemas.test.ts | 138 +
.../hooks/apiResources/{tables.ts => schemas.ts} | 72 +-
.../src/hooks/apiResources/tables.test.ts | 186 +-
superset-frontend/src/hooks/apiResources/tables.ts | 17 +-
superset-frontend/src/logger/LogUtils.ts | 2 +
.../src/middleware/loggerMiddleware.js | 12 +-
.../AlertReportList/AlertReportList.test.jsx} | 2 +-
.../AlertReportList/index.tsx} | 4 +-
superset-frontend/src/pages/AllEntities/index.tsx | 94 +
.../AnnotationLayerList.test.jsx} | 2 +-
.../AnnotationLayerList/index.tsx} | 4 +-
.../AnnotationList}/AnnotationList.test.jsx | 2 +-
.../AnnotationList/index.tsx} | 4 +-
.../ExplorePage.tsx => pages/Chart/index.tsx} | 14 +-
.../src/pages/ChartCreation/index.tsx | 17 +-
superset-frontend/src/pages/ChartList/index.tsx | 92 +-
.../CssTemplateList/CssTemplateList.test.jsx} | 2 +-
.../CssTemplateList/index.tsx} | 4 +-
.../Dashboard/index.tsx} | 2 +-
.../DashboardList}/DashboardList.test.jsx | 2 +-
.../DashboardList/index.tsx} | 109 +-
.../DatabaseList}/DatabaseList.test.jsx | 10 +-
.../DatabaseList/index.tsx} | 5 +-
.../DatasetCreation/DatasetCreation.test.tsx} | 2 +-
.../AddDataset => pages/DatasetCreation}/index.tsx | 18 +-
.../DatasetList/DatasetList.test.tsx} | 11 +-
.../DatasetList/index.tsx} | 28 +-
.../ExecutionLogList/ExecutionLogList.test.jsx} | 2 +-
.../ExecutionLogList/index.tsx} | 2 +-
.../Welcome.test.tsx => pages/Home/Home.test.tsx} | 2 +-
.../welcome/Welcome.tsx => pages/Home/index.tsx} | 10 +-
.../QueryHistoryList/QueryHistoryList.test.tsx} | 10 +-
.../QueryHistoryList/index.tsx} | 2 +-
.../SavedQueryList}/SavedQueryList.test.jsx | 2 +-
.../SavedQueryList/index.tsx} | 43 +-
superset-frontend/src/pages/Tags/index.tsx | 331 +
superset-frontend/src/tags.ts | 186 +
superset-frontend/src/types/Chart.ts | 16 +
.../useTruncation/index.ts => types/TagType.ts} | 15 +-
.../types.ts => types/TaggedObject.ts} | 11 +-
.../src/views/CRUD/alert/AlertReportModal.tsx | 7 +-
.../views/CRUD/allentities/AllEntitiesTable.tsx | 125 +
.../ChartList => views/CRUD/chart}/ChartCard.tsx | 0
.../src/views/CRUD/dashboard/DashboardCard.tsx | 51 +-
.../data/database/DatabaseModal/ExtraOptions.tsx | 2 +-
.../data/database/DatabaseModal/SSHTunnelForm.tsx | 317 +-
.../database/DatabaseModal/SSHTunnelSwitch.tsx | 58 +
.../data/database/DatabaseModal/index.test.tsx | 72 +-
.../CRUD/data/database/DatabaseModal/index.tsx | 441 +-
.../src/views/CRUD/data/database/types.ts | 1 +
.../EditDataset/UsageTab/UsageTab.test.tsx | 405 ++
.../AddDataset/EditDataset/UsageTab/index.tsx | 261 +
.../data/dataset/AddDataset/EditDataset/index.tsx | 6 +-
.../AddDataset/LeftPanel/LeftPanel.test.tsx | 16 +-
superset-frontend/src/views/CRUD/hooks.ts | 47 +
superset-frontend/src/views/CRUD/tags/TagCard.tsx | 123 +
superset-frontend/src/views/CRUD/types.ts | 7 +
superset-frontend/src/views/CRUD/utils.test.tsx | 163 +
superset-frontend/src/views/CRUD/utils.tsx | 70 +-
.../src/views/CRUD/welcome/ActivityTable.tsx | 2 +-
.../src/views/CRUD/welcome/ChartTable.tsx | 4 +-
.../src/views/CRUD/welcome/DashboardTable.tsx | 36 +-
.../src/views/CRUD/welcome/EmptyState.tsx | 18 +-
.../src/views/CRUD/welcome/SavedQueries.tsx | 2 +-
superset-frontend/src/views/components/Menu.tsx | 9 +-
superset-frontend/src/views/routes.test.tsx | 4 +-
superset-frontend/src/views/routes.tsx | 117 +-
.../src/visualizations/TimeTable/SparklineCell.tsx | 298 +-
.../src/visualizations/TimeTable/TimeTable.jsx | 20 +-
.../src/visualizations/TimeTable/transformProps.ts | 2 +
superset-websocket/package-lock.json | 706 +--
superset-websocket/package.json | 20 +-
superset/charts/api.py | 60 +-
superset/charts/commands/export.py | 3 +-
superset/charts/commands/importers/v1/utils.py | 9 +-
superset/charts/filters.py | 38 +-
superset/charts/schemas.py | 10 +-
superset/cli/importexport.py | 2 +-
superset/cli/test.py | 1 -
superset/cli/thumbnails.py | 9 +-
superset/cli/update.py | 2 +-
superset/commands/export/assets.py | 1 -
superset/commands/export/models.py | 1 -
superset/commands/importers/v1/__init__.py | 20 +-
superset/commands/importers/v1/assets.py | 17 +-
superset/commands/importers/v1/examples.py | 21 +-
superset/commands/importers/v1/utils.py | 60 +
...uthrized_object.py => not_authorized_object.py} | 0
superset/common/query_actions.py | 26 +-
superset/common/query_context_factory.py | 96 +-
superset/common/query_context_processor.py | 2 +
superset/common/query_object.py | 4 +-
superset/common/utils/query_cache_manager.py | 19 +-
superset/config.py | 30 +-
superset/connectors/sqla/models.py | 80 +-
superset/connectors/sqla/utils.py | 7 +-
superset/connectors/sqla/views.py | 2 -
superset/constants.py | 7 +
superset/dao/base.py | 6 +-
superset/dashboards/api.py | 83 +-
superset/dashboards/commands/export.py | 1 -
superset/dashboards/commands/importers/v1/utils.py | 12 +-
superset/dashboards/commands/update.py | 2 +-
superset/dashboards/dao.py | 40 +-
superset/dashboards/filter_sets/commands/base.py | 2 +-
superset/dashboards/filters.py | 35 +-
superset/dashboards/permalink/commands/create.py | 4 +-
superset/dashboards/schemas.py | 8 +-
superset/databases/api.py | 105 +-
superset/databases/commands/create.py | 11 +-
superset/databases/commands/export.py | 11 +-
superset/databases/commands/importers/v1/utils.py | 21 +-
superset/databases/commands/test_connection.py | 1 -
superset/databases/schemas.py | 85 +-
.../databases/ssh_tunnel/commands/exceptions.py | 8 +
superset/databases/ssh_tunnel/models.py | 13 +
superset/datasets/api.py | 112 +
superset/datasets/commands/exceptions.py | 4 +
superset/datasets/commands/export.py | 12 +-
superset/datasets/commands/importers/v1/utils.py | 41 +-
superset/datasets/dao.py | 123 +-
superset/datasets/schemas.py | 11 +
superset/datasource/dao.py | 1 -
superset/db_engine_specs/aurora.py | 2 -
superset/db_engine_specs/base.py | 33 +-
superset/db_engine_specs/clickhouse.py | 315 +-
superset/db_engine_specs/crate.py | 1 -
superset/db_engine_specs/databricks.py | 1 -
superset/db_engine_specs/dremio.py | 1 -
superset/db_engine_specs/drill.py | 2 +
superset/db_engine_specs/elasticsearch.py | 2 -
superset/db_engine_specs/gsheets.py | 1 -
superset/db_engine_specs/hive.py | 63 +-
superset/db_engine_specs/impala.py | 2 +-
superset/db_engine_specs/kylin.py | 4 +-
superset/db_engine_specs/mysql.py | 3 +
superset/db_engine_specs/netezza.py | 1 -
superset/db_engine_specs/presto.py | 8 +-
superset/db_engine_specs/rockset.py | 1 -
superset/db_engine_specs/snowflake.py | 3 +-
superset/db_engine_specs/trino.py | 1 +
superset/db_engines/hive.py | 67 -
.../configs/charts/Video_Game_Sales_Filter.yaml | 2 +-
.../dashboards/COVID_Vaccine_Dashboard.yaml | 6 +-
.../dashboards/FCC_New_Coder_Survey_2018.yaml | 8 +-
.../configs/dashboards/Sales_Dashboard.yaml | 6 +-
.../configs/dashboards/Video_Game_Sales.yaml | 10 +-
.../configs/datasets/examples/FCC_2018_Survey.yaml | 6 +-
superset/examples/multiformat_time_series.py | 2 +-
superset/examples/utils.py | 6 +-
superset/examples/world_bank.py | 1 -
superset/exceptions.py | 6 +-
superset/explore/permalink/api.py | 2 +-
superset/extensions/ssh.py | 8 +-
superset/importexport/api.py | 47 +-
superset/initialization/__init__.py | 43 +-
superset/jinja_context.py | 12 +-
superset/migrations/alembic.ini | 7 +-
.../versions/2017-10-03_14-37_4736ec66ce19_.py | 9 +-
...8c4473c581_allow_multi_schema_metadata_fetch.py | 1 -
.../versions/2018-03-20_19-47_f231d82b9b26_.py | 2 -
...-07-20_16-08_937d04c16b64_update_datasources.py | 2 -
.../2019-10-10_13-52_1495eb914ad3_time_range.py | 1 -
...29_09-24_620241d1153f_update_time_grain_sqla.py | 2 -
...27_08-25_31b2a1039d4a_drop_tables_constraint.py | 1 -
...3605f370a_fix_schemas_allowed_for_csv_upload.py | 1 -
...cbaac5_change_datatype_of_type_in_basecolumn.py | 1 -
...e5f1dacd_rename_to_schemas_allowed_for_file_.py | 1 -
...14-38_a9422eeaae74_new_dataset_models_take_2.py | 10 +-
...-46_c0a3ea245b61_remove_show_native_filters.py} | 52 +-
...ac08bb5b83_invert_horizontal_bar_chart_order.py | 126 +
superset/models/core.py | 9 +-
superset/models/dashboard.py | 35 +-
superset/models/datasource_access_request.py | 2 -
superset/models/helpers.py | 12 +-
superset/models/slice.py | 22 +-
superset/models/sql_lab.py | 12 +-
superset/queries/api.py | 2 +-
superset/queries/saved_queries/api.py | 61 +-
superset/queries/saved_queries/commands/export.py | 1 -
superset/queries/saved_queries/filters.py | 12 +-
superset/reports/commands/base.py | 1 -
superset/reports/commands/exceptions.py | 7 +-
superset/reports/commands/execute.py | 11 +-
superset/reports/notifications/email.py | 8 +-
superset/reports/notifications/slack.py | 8 +-
superset/security/manager.py | 90 +-
superset/sql_parse.py | 4 +-
superset/sqllab/api.py | 69 +-
.../{db_engines => sqllab/commands}/__init__.py | 0
superset/sqllab/commands/execute.py | 6 +-
superset/sqllab/commands/export.py | 134 +
superset/sqllab/commands/results.py | 3 +-
superset/sqllab/exceptions.py | 12 +-
superset/sqllab/query_render.py | 3 +-
superset/sqllab/sql_json_executer.py | 3 +-
superset/tags/api.py | 386 ++
.../commands}/__init__.py | 0
superset/tags/commands/create.py | 65 +
superset/tags/commands/delete.py | 115 +
superset/tags/commands/exceptions.py | 65 +
.../__init__.py => tags/commands/utils.py} | 13 +
superset/tags/dao.py | 260 +
.../{db_engines/__init__.py => tags/exceptions.py} | 13 +
superset/tags/models.py | 19 +-
superset/tags/schemas.py | 59 +
superset/tasks/async_queries.py | 12 +-
superset/tasks/thumbnails.py | 2 +-
.../form_view/database_schemas_selector.html | 5 +-
superset/translations/en/LC_MESSAGES/messages.json | 4 +-
superset/translations/en/LC_MESSAGES/messages.po | 6 +-
superset/translations/messages.pot | 4 +-
superset/translations/ru/LC_MESSAGES/messages.json | 212 +-
superset/translations/ru/LC_MESSAGES/messages.po | 3204 +++++-----
superset/translations/utils.py | 2 +-
superset/utils/celery.py | 1 +
superset/utils/core.py | 15 +-
.../utils/dashboard_filter_scopes_converter.py | 2 +-
superset/utils/date_parser.py | 8 +-
superset/utils/decorators.py | 12 +-
superset/{views/chart => utils}/filters.py | 33 +-
superset/utils/machine_auth.py | 2 +-
superset/utils/memoized.py | 81 -
.../utils/pandas_postprocessing/contribution.py | 2 +-
superset/utils/pandas_postprocessing/prophet.py | 2 +-
superset/utils/screenshots.py | 20 +-
superset/utils/urls.py | 4 +-
superset/utils/webdriver.py | 78 +-
superset/views/all_entities.py | 71 +
superset/views/base.py | 40 +-
superset/views/base_api.py | 32 +-
superset/views/base_schemas.py | 2 +-
superset/views/chart/filters.py | 9 +-
superset/views/chart/mixin.py | 1 -
superset/views/core.py | 102 +-
superset/views/dashboard/mixin.py | 1 -
superset/views/dashboard/views.py | 8 -
superset/views/database/views.py | 24 +-
superset/views/tags.py | 248 +-
superset/viz.py | 44 +-
tests/common/logger_utils.py | 1 -
tests/integration_tests/base_tests.py | 8 +
tests/integration_tests/charts/api_tests.py | 18 +-
tests/integration_tests/charts/commands_tests.py | 62 +-
tests/integration_tests/charts/data/api_tests.py | 37 +-
tests/integration_tests/cli_tests.py | 23 +-
tests/integration_tests/conftest.py | 2 +-
tests/integration_tests/csv_upload_tests.py | 2 +-
tests/integration_tests/dashboards/api_tests.py | 96 +
.../integration_tests/dashboards/commands_tests.py | 12 +-
.../dashboards/permalink/api_tests.py | 3 +-
tests/integration_tests/databases/api_tests.py | 495 +-
.../integration_tests/databases/commands_tests.py | 309 +-
tests/integration_tests/datasets/api_tests.py | 127 +-
tests/integration_tests/datasets/commands_tests.py | 68 +-
.../db_engine_specs/bigquery_tests.py | 1 +
tests/integration_tests/event_logger_tests.py | 6 +-
.../integration_tests/fixtures/energy_dashboard.py | 1 -
tests/integration_tests/fixtures/importexport.py | 107 +
tests/integration_tests/fixtures/users.py | 48 +
tests/integration_tests/queries/api_tests.py | 6 +-
.../queries/saved_queries/api_tests.py | 2 +-
.../queries/saved_queries/commands_tests.py | 10 +-
tests/integration_tests/reports/alert_tests.py | 2 -
tests/integration_tests/reports/api_tests.py | 4 -
tests/integration_tests/reports/commands_tests.py | 49 +-
tests/integration_tests/reports/scheduler_tests.py | 2 -
.../security/row_level_security_tests.py | 1 -
tests/integration_tests/security_tests.py | 24 +-
tests/integration_tests/sql_lab/api_tests.py | 39 +-
tests/integration_tests/sql_lab/commands_tests.py | 240 +-
tests/integration_tests/sqllab_tests.py | 38 +
tests/integration_tests/tagging_tests.py | 12 -
.../integration_tests/tags}/__init__.py | 0
tests/integration_tests/tags/api_tests.py | 377 ++
tests/integration_tests/tags/commands_tests.py | 175 +
tests/integration_tests/tags/dao_tests.py | 299 +
tests/integration_tests/thumbnails_tests.py | 1 -
tests/integration_tests/utils/decorators_tests.py | 61 -
tests/integration_tests/utils_tests.py | 1 +
.../charts/commands/importers/v1/import_test.py | 45 +-
.../commands/importers/v1/assets_test.py | 16 +-
.../commands/importers/v1/import_test.py | 46 +-
tests/unit_tests/databases/api_test.py | 4 +
.../databases/commands/importers/v1/import_test.py | 44 +-
.../datasets/commands/importers/v1/import_test.py | 162 +-
.../unit_tests/db_engine_specs/test_clickhouse.py | 162 +-
tests/unit_tests/db_engine_specs/test_mssql.py | 4 +-
tests/unit_tests/db_engine_specs/test_mysql.py | 20 +
tests/unit_tests/explore/utils_test.py | 21 +-
tests/unit_tests/fixtures/assets_configs.py | 2 -
tests/unit_tests/importexport/api_test.py | 8 +-
tests/unit_tests/jinja_context_test.py | 41 +-
tests/unit_tests/memoized_tests.py | 96 -
tests/unit_tests/models/core_test.py | 4 +-
.../pandas_postprocessing/test_flatten.py | 8 +-
.../unit_tests/security}/__init__.py | 0
tests/unit_tests/security/manager_test.py | 91 +
tests/unit_tests/utils/test_decorators.py | 87 +
tests/unit_tests/utils/urls_tests.py | 5 +
yarn.lock | 2 -
635 files changed, 25160 insertions(+), 10197 deletions(-)
create mode 100644 docs/docs/installation/setup-ssh-tunneling.mdx
delete mode 100644 pyproject.toml
copy superset-frontend/{src/components/Table/cell-renderers/NullCell/index.tsx => packages/superset-ui-chart-controls/src/operators/utils/extractExtraMetrics.ts} (58%)
create mode 100644 superset-frontend/packages/superset-ui-chart-controls/test/operators/utils/extractExtraMetrics.test.ts
copy superset-frontend/{src/hooks/useComponentDidUpdate => packages/superset-ui-core/src/hooks}/index.ts (82%)
copy superset-frontend/{ => packages/superset-ui-core}/src/hooks/useChangeEffect/index.ts (100%)
rename superset-frontend/{ => packages/superset-ui-core}/src/hooks/useChangeEffect/useChangeEffect.test.ts (100%)
rename superset-frontend/{ => packages/superset-ui-core}/src/hooks/useChangeEffect/useChangeEffect.ts (100%)
rename superset-frontend/{ => packages/superset-ui-core}/src/hooks/useComponentDidMount/index.ts (100%)
copy superset-frontend/{ => packages/superset-ui-core}/src/hooks/useComponentDidMount/useComponentDidMount.test.ts (100%)
rename superset-frontend/{ => packages/superset-ui-core}/src/hooks/useComponentDidMount/useComponentDidMount.ts (100%)
copy superset-frontend/{ => packages/superset-ui-core}/src/hooks/useComponentDidUpdate/index.ts (100%)
rename superset-frontend/{ => packages/superset-ui-core}/src/hooks/useComponentDidUpdate/useComponentDidUpdate.test.ts (100%)
rename superset-frontend/{ => packages/superset-ui-core}/src/hooks/useComponentDidUpdate/useComponentDidUpdate.ts (100%)
copy superset-frontend/{src/hooks/useChangeEffect => packages/superset-ui-core/src/hooks/useElementOnScreen}/index.ts (95%)
create mode 100644 superset-frontend/packages/superset-ui-core/src/hooks/useElementOnScreen/useElementOnScreen.test.ts
rename superset-frontend/{src/hooks/useElementOnScreen/index.ts => packages/superset-ui-core/src/hooks/useElementOnScreen/useElementOnScreen.ts} (100%)
rename superset-frontend/{ => packages/superset-ui-core}/src/hooks/usePrevious/index.ts (100%)
rename superset-frontend/{ => packages/superset-ui-core}/src/hooks/usePrevious/usePrevious.test.ts (100%)
rename superset-frontend/{ => packages/superset-ui-core}/src/hooks/usePrevious/usePrevious.ts (100%)
copy superset-frontend/{ => packages/superset-ui-core}/src/hooks/useTruncation/index.ts (100%)
create mode 100644 superset-frontend/packages/superset-ui-core/src/hooks/useTruncation/useCSSTextTruncation.test.tsx
rename superset-frontend/{ => packages/superset-ui-core}/src/hooks/useTruncation/useCSSTextTruncation.ts (100%)
create mode 100644 superset-frontend/packages/superset-ui-core/src/hooks/useTruncation/useChildElementTruncation.test.ts
rename superset-frontend/{ => packages/superset-ui-core}/src/hooks/useTruncation/useChildElementTruncation.ts (100%)
rename superset-frontend/{src/dashboard/components/CrossFilterScopingModal/utils/index.ts => packages/superset-ui-core/src/time-format/utils/normalizeTimestamp.ts} (75%)
rename superset-frontend/{src/hooks/useChangeEffect/index.ts => packages/superset-ui-core/src/utils/getSelectedText.ts} (91%)
copy superset-frontend/{src/views/routes.test.tsx => packages/superset-ui-core/test/components/SafeMarkdown.test.ts} (54%)
create mode 100644 superset-frontend/packages/superset-ui-core/test/time-format/utils/normalizeTimestamp.test.ts
rename superset-frontend/{src/hooks/useComponentDidMount/useComponentDidMount.test.ts => packages/superset-ui-core/test/utils/getSelectedText.test.ts} (60%)
create mode 100644 superset-frontend/spec/fixtures/mockCharts.ts
copy superset-frontend/src/components/{Table/cell-renderers/NullCell/index.tsx => Chart/DisabledMenuItemTooltip.tsx} (56%)
rename superset-frontend/src/{dashboard/components/CrossFilterScopingModal/utils/utils.test.ts => components/Tags/Tag.test.tsx} (66%)
create mode 100644 superset-frontend/src/components/Tags/Tag.tsx
copy superset-frontend/src/{views/routes.test.tsx => components/Tags/TagsList.stories.tsx} (55%)
create mode 100644 superset-frontend/src/components/Tags/TagsList.test.tsx
create mode 100644 superset-frontend/src/components/Tags/TagsList.tsx
rename superset-frontend/src/{hooks/useComponentDidUpdate/index.ts => components/Tags/index.tsx} (90%)
create mode 100644 superset-frontend/src/components/Tags/utils.tsx
create mode 100644 superset-frontend/src/components/TruncatedList/index.tsx
delete mode 100644 superset-frontend/src/dashboard/components/CrossFilterScopingModal/CrossFilterScopingForm/CrossFilterScopingForm.test.tsx
delete mode 100644 superset-frontend/src/dashboard/components/CrossFilterScopingModal/CrossFilterScopingForm/index.tsx
delete mode 100644 superset-frontend/src/dashboard/components/CrossFilterScopingModal/CrossFilterScopingModal.tsx
create mode 100644 superset-frontend/src/dashboard/components/nativeFilters/FilterBar/CrossFilters/CrossFilter.test.tsx
create mode 100644 superset-frontend/src/dashboard/components/nativeFilters/FilterBar/CrossFilters/CrossFilter.tsx
create mode 100644 superset-frontend/src/dashboard/components/nativeFilters/FilterBar/CrossFilters/CrossFilterTag.test.tsx
create mode 100644 superset-frontend/src/dashboard/components/nativeFilters/FilterBar/CrossFilters/CrossFilterTag.tsx
copy superset-frontend/src/{components/ErrorBoundary/ErrorBoundary.test.tsx => dashboard/components/nativeFilters/FilterBar/CrossFilters/CrossFilterTitle.test.tsx} (52%)
create mode 100644 superset-frontend/src/dashboard/components/nativeFilters/FilterBar/CrossFilters/CrossFilterTitle.tsx
create mode 100644 superset-frontend/src/dashboard/components/nativeFilters/FilterBar/CrossFilters/Vertical.tsx
create mode 100644 superset-frontend/src/dashboard/components/nativeFilters/FilterBar/CrossFilters/VerticalCollapse.test.tsx
create mode 100644 superset-frontend/src/dashboard/components/nativeFilters/FilterBar/CrossFilters/VerticalCollapse.tsx
create mode 100644 superset-frontend/src/dashboard/components/nativeFilters/FilterBar/CrossFilters/selectors.ts
copy superset-frontend/src/dashboard/components/{CrossFilterScopingModal/types.ts => nativeFilters/FilterBar/CrossFilters/styles.ts} (80%)
copy superset-frontend/src/{components/Table/cell-renderers/NullCell/index.tsx => dashboard/components/nativeFilters/FilterBar/useFilterOutlined.ts} (58%)
rename superset-frontend/src/dashboard/components/{FiltersBadge => nativeFilters}/selectors.ts (70%)
create mode 100644 superset-frontend/src/dashboard/util/crossFilters.test.ts
delete mode 100644 superset-frontend/src/dashboard/util/filterboxMigrationHelper.test.ts
delete mode 100644 superset-frontend/src/dashboard/util/filterboxMigrationHelper.ts
copy superset-frontend/src/{dashboard/components/CrossFilterScopingModal => explore/components/controls/FilterControl}/types.ts (85%)
create mode 100644 superset-frontend/src/explore/components/controls/FilterControl/utils/translateToSQL.ts
create mode 100644 superset-frontend/src/hooks/apiResources/schemas.test.ts
copy superset-frontend/src/hooks/apiResources/{tables.ts => schemas.ts} (55%)
rename superset-frontend/src/{views/CRUD/alert/AlertList.test.jsx => pages/AlertReportList/AlertReportList.test.jsx} (98%)
rename superset-frontend/src/{views/CRUD/alert/AlertList.tsx => pages/AlertReportList/index.tsx} (99%)
create mode 100644 superset-frontend/src/pages/AllEntities/index.tsx
rename superset-frontend/src/{views/CRUD/annotationlayers/AnnotationLayersList.test.jsx => pages/AnnotationLayerList/AnnotationLayerList.test.jsx} (98%)
rename superset-frontend/src/{views/CRUD/annotationlayers/AnnotationLayersList.tsx => pages/AnnotationLayerList/index.tsx} (98%)
rename superset-frontend/src/{views/CRUD/annotation => pages/AnnotationList}/AnnotationList.test.jsx (98%)
rename superset-frontend/src/{views/CRUD/annotation/AnnotationList.tsx => pages/AnnotationList/index.tsx} (98%)
rename superset-frontend/src/{explore/ExplorePage.tsx => pages/Chart/index.tsx} (89%)
rename superset-frontend/src/{views/CRUD/csstemplates/CssTemplatesList.test.jsx => pages/CssTemplateList/CssTemplateList.test.jsx} (98%)
rename superset-frontend/src/{views/CRUD/csstemplates/CssTemplatesList.tsx => pages/CssTemplateList/index.tsx} (98%)
rename superset-frontend/src/{dashboard/containers/DashboardRoute.tsx => pages/Dashboard/index.tsx} (93%)
rename superset-frontend/src/{views/CRUD/dashboard => pages/DashboardList}/DashboardList.test.jsx (99%)
rename superset-frontend/src/{views/CRUD/dashboard/DashboardList.tsx => pages/DashboardList/index.tsx} (86%)
rename superset-frontend/src/{views/CRUD/data/database => pages/DatabaseList}/DatabaseList.test.jsx (96%)
rename superset-frontend/src/{views/CRUD/data/database/DatabaseList.tsx => pages/DatabaseList/index.tsx} (99%)
rename superset-frontend/src/{views/CRUD/data/dataset/AddDataset/AddDataset.test.tsx => pages/DatasetCreation/DatasetCreation.test.tsx} (96%)
rename superset-frontend/src/{views/CRUD/data/dataset/AddDataset => pages/DatasetCreation}/index.tsx (86%)
rename superset-frontend/src/{views/CRUD/data/dataset/DatasetList.test.jsx => pages/DatasetList/DatasetList.test.tsx} (97%)
rename superset-frontend/src/{views/CRUD/data/dataset/DatasetList.tsx => pages/DatasetList/index.tsx} (96%)
rename superset-frontend/src/{views/CRUD/alert/ExecutionLog.test.jsx => pages/ExecutionLogList/ExecutionLogList.test.jsx} (98%)
rename superset-frontend/src/{views/CRUD/alert/ExecutionLog.tsx => pages/ExecutionLogList/index.tsx} (98%)
rename superset-frontend/src/{views/CRUD/welcome/Welcome.test.tsx => pages/Home/Home.test.tsx} (99%)
rename superset-frontend/src/{views/CRUD/welcome/Welcome.tsx => pages/Home/index.tsx} (97%)
rename superset-frontend/src/{views/CRUD/data/query/QueryList.test.tsx => pages/QueryHistoryList/QueryHistoryList.test.tsx} (94%)
rename superset-frontend/src/{views/CRUD/data/query/QueryList.tsx => pages/QueryHistoryList/index.tsx} (99%)
rename superset-frontend/src/{views/CRUD/data/savedquery => pages/SavedQueryList}/SavedQueryList.test.jsx (99%)
rename superset-frontend/src/{views/CRUD/data/savedquery/SavedQueryList.tsx => pages/SavedQueryList/index.tsx} (91%)
create mode 100644 superset-frontend/src/pages/Tags/index.tsx
create mode 100644 superset-frontend/src/tags.ts
rename superset-frontend/src/{hooks/useTruncation/index.ts => types/TagType.ts} (72%)
rename superset-frontend/src/{dashboard/components/CrossFilterScopingModal/types.ts => types/TaggedObject.ts} (84%)
create mode 100644 superset-frontend/src/views/CRUD/allentities/AllEntitiesTable.tsx
rename superset-frontend/src/{pages/ChartList => views/CRUD/chart}/ChartCard.tsx (100%)
create mode 100644 superset-frontend/src/views/CRUD/data/database/DatabaseModal/SSHTunnelSwitch.tsx
create mode 100644 superset-frontend/src/views/CRUD/data/dataset/AddDataset/EditDataset/UsageTab/UsageTab.test.tsx
create mode 100644 superset-frontend/src/views/CRUD/data/dataset/AddDataset/EditDataset/UsageTab/index.tsx
create mode 100644 superset-frontend/src/views/CRUD/tags/TagCard.tsx
rename superset/common/{not_authrized_object.py => not_authorized_object.py} (100%)
delete mode 100644 superset/db_engines/hive.py
copy superset/migrations/versions/{2021-07-27_08-25_31b2a1039d4a_drop_tables_constraint.py => 2023-02-28_14-46_c0a3ea245b61_remove_show_native_filters.py} (50%)
create mode 100644 superset/migrations/versions/2023-03-05_10-06_d0ac08bb5b83_invert_horizontal_bar_chart_order.py
copy superset/{db_engines => sqllab/commands}/__init__.py (100%)
create mode 100644 superset/sqllab/commands/export.py
create mode 100644 superset/tags/api.py
copy superset/{advanced_data_type => tags/commands}/__init__.py (100%)
create mode 100644 superset/tags/commands/create.py
create mode 100644 superset/tags/commands/delete.py
create mode 100644 superset/tags/commands/exceptions.py
copy superset/{db_engines/__init__.py => tags/commands/utils.py} (68%)
create mode 100644 superset/tags/dao.py
rename superset/{db_engines/__init__.py => tags/exceptions.py} (68%)
create mode 100644 superset/tags/schemas.py
copy superset/{views/chart => utils}/filters.py (52%)
delete mode 100644 superset/utils/memoized.py
create mode 100644 superset/views/all_entities.py
create mode 100644 tests/integration_tests/fixtures/users.py
copy {superset/advanced_data_type => tests/integration_tests/tags}/__init__.py (100%)
create mode 100644 tests/integration_tests/tags/api_tests.py
create mode 100644 tests/integration_tests/tags/commands_tests.py
create mode 100644 tests/integration_tests/tags/dao_tests.py
delete mode 100644 tests/integration_tests/utils/decorators_tests.py
delete mode 100644 tests/unit_tests/memoized_tests.py
copy {superset/advanced_data_type => tests/unit_tests/security}/__init__.py (100%)
create mode 100644 tests/unit_tests/security/manager_test.py
create mode 100644 tests/unit_tests/utils/test_decorators.py
delete mode 100644 yarn.lock