chore: annotate important types (#36034)

Co-authored-by: Claude <noreply@anthropic.com>
This commit is contained in:
Beto Dealmeida
2025-11-17 14:41:20 -05:00
committed by GitHub
parent 282f4e5de2
commit fb7d0e0e3d
12 changed files with 386 additions and 97 deletions

View File

@@ -45,7 +45,12 @@ from superset.models.core import Database
from superset.models.dashboard import Dashboard
from superset.models.slice import Slice
from superset.models.sql_lab import Query
from superset.superset_typing import FlaskResponse, FormData
from superset.superset_typing import (
BaseDatasourceData,
FlaskResponse,
FormData,
QueryData,
)
from superset.utils import json
from superset.utils.core import DatasourceType
from superset.utils.decorators import stats_timing
@@ -86,13 +91,20 @@ def redirect_to_login(next_target: str | None = None) -> FlaskResponse:
return redirect(redirect_url)
def sanitize_datasource_data(datasource_data: dict[str, Any]) -> dict[str, Any]:
def sanitize_datasource_data(
datasource_data: BaseDatasourceData | QueryData,
) -> dict[str, Any]:
"""
Sanitize datasource data by removing sensitive database parameters.
Accepts TypedDict types (BaseDatasourceData, QueryData).
"""
if datasource_data:
datasource_database = datasource_data.get("database")
if datasource_database:
datasource_database["parameters"] = {}
return datasource_data
return datasource_data # type: ignore[return-value]
def bootstrap_user_data(user: User, include_perms: bool = False) -> dict[str, Any]: