diff --git a/setup.cfg b/setup.cfg index 93e33af51..7c13f5ec7 100644 --- a/setup.cfg +++ b/setup.cfg @@ -45,7 +45,7 @@ combine_as_imports = true include_trailing_comma = true line_length = 88 known_first_party = superset -known_third_party =alembic,apispec,backoff,bleach,cachelib,celery,click,colorama,contextlib2,croniter,cryptography,dataclasses,dateutil,flask,flask_appbuilder,flask_babel,flask_caching,flask_compress,flask_login,flask_migrate,flask_sqlalchemy,flask_talisman,flask_testing,flask_wtf,geohash,geopy,humanize,isodate,jinja2,markdown,markupsafe,marshmallow,msgpack,numpy,pandas,parsedatetime,pathlib2,polyline,prison,pyarrow,pyhive,pytz,retry,selenium,setuptools,simplejson,sphinx_rtd_theme,sqlalchemy,sqlalchemy_utils,sqlparse,werkzeug,wtforms,wtforms_json,yaml +known_third_party =alembic,apispec,backoff,bleach,cachelib,celery,click,colorama,contextlib2,croniter,cryptography,dateutil,flask,flask_appbuilder,flask_babel,flask_caching,flask_compress,flask_login,flask_migrate,flask_sqlalchemy,flask_talisman,flask_testing,flask_wtf,geohash,geopy,humanize,isodate,jinja2,markdown,markupsafe,marshmallow,msgpack,numpy,pandas,parsedatetime,pathlib2,polyline,prison,pyarrow,pyhive,pytz,retry,selenium,setuptools,simplejson,sphinx_rtd_theme,sqlalchemy,sqlalchemy_utils,sqlparse,werkzeug,wtforms,wtforms_json,yaml multi_line_output = 3 order_by_type = false diff --git a/superset-frontend/src/views/dashboardList/DashboardList.tsx b/superset-frontend/src/views/dashboardList/DashboardList.tsx index 0260895ea..3bdea8454 100644 --- a/superset-frontend/src/views/dashboardList/DashboardList.tsx +++ b/superset-frontend/src/views/dashboardList/DashboardList.tsx @@ -343,7 +343,7 @@ class DashboardList extends React.PureComponent { handleBulkDashboardExport = (dashboards: Dashboard[]) => { return window.location.assign( `/api/v1/dashboard/export/?q=${rison.encode( - dashboards.map(({ id }) => id).join(','), + dashboards.map(({ id }) => id), )}`, ); }; diff --git a/superset/db_engine_specs/base.py b/superset/db_engine_specs/base.py index 7b0d537c9..86bbd11fb 100644 --- a/superset/db_engine_specs/base.py +++ b/superset/db_engine_specs/base.py @@ -15,6 +15,7 @@ # specific language governing permissions and limitations # under the License. # pylint: disable=unused-argument +import dataclasses import hashlib import json import logging @@ -33,7 +34,6 @@ from typing import ( Union, ) -import dataclasses import pandas as pd import sqlparse from flask import g diff --git a/superset/errors.py b/superset/errors.py index 54eb0ed63..66e2e2f2b 100644 --- a/superset/errors.py +++ b/superset/errors.py @@ -15,11 +15,10 @@ # specific language governing permissions and limitations # under the License. # pylint: disable=too-few-public-methods,invalid-name +from dataclasses import dataclass from enum import Enum from typing import Any, Dict, Optional -from dataclasses import dataclass - class SupersetErrorType(str, Enum): """ diff --git a/superset/sql_parse.py b/superset/sql_parse.py index d87db833e..b43b113ee 100644 --- a/superset/sql_parse.py +++ b/superset/sql_parse.py @@ -15,11 +15,11 @@ # specific language governing permissions and limitations # under the License. import logging +from dataclasses import dataclass from typing import List, Optional, Set from urllib import parse import sqlparse -from dataclasses import dataclass from sqlparse.sql import Identifier, IdentifierList, remove_quotes, Token, TokenList from sqlparse.tokens import Keyword, Name, Punctuation, String, Whitespace from sqlparse.utils import imt diff --git a/superset/views/base.py b/superset/views/base.py index 6c54bafcb..e9dab544f 100644 --- a/superset/views/base.py +++ b/superset/views/base.py @@ -14,13 +14,13 @@ # KIND, either express or implied. See the License for the # specific language governing permissions and limitations # under the License. +import dataclasses import functools import logging import traceback from datetime import datetime from typing import Any, Callable, cast, Dict, List, Optional, TYPE_CHECKING, Union -import dataclasses import simplejson as json import yaml from flask import abort, flash, g, get_flashed_messages, redirect, Response, session diff --git a/superset/viz.py b/superset/viz.py index 93e840cbf..2496a5cb6 100644 --- a/superset/viz.py +++ b/superset/viz.py @@ -21,6 +21,7 @@ These objects represent the backend of all the visualizations that Superset can render. """ import copy +import dataclasses import hashlib import inspect import logging @@ -33,7 +34,6 @@ from datetime import datetime, timedelta from itertools import product from typing import Any, cast, Dict, List, Optional, Set, Tuple, TYPE_CHECKING, Union -import dataclasses import geohash import numpy as np import pandas as pd diff --git a/superset/viz_sip38.py b/superset/viz_sip38.py index b1a3b77e9..a3e00de06 100644 --- a/superset/viz_sip38.py +++ b/superset/viz_sip38.py @@ -22,6 +22,7 @@ Superset can render. """ # mypy: ignore-errors import copy +import dataclasses import hashlib import inspect import logging @@ -34,7 +35,6 @@ from datetime import datetime, timedelta from itertools import product from typing import Any, Dict, List, Optional, Set, Tuple, TYPE_CHECKING -import dataclasses import geohash import numpy as np import pandas as pd