diff --git a/setup.cfg b/setup.cfg index 566633c192558..d58d80a1bff1c 100644 --- a/setup.cfg +++ b/setup.cfg @@ -53,7 +53,7 @@ order_by_type = false ignore_missing_imports = true no_implicit_optional = true -[mypy-superset.bin.*,superset.charts.*,superset.datasets.*,superset.dashboards.*,superset.commands.*,superset.common.*,superset.dao.*,superset.db_engine_specs.*,superset.db_engines.*,superset.examples.*] +[mypy-superset.bin.*,superset.charts.*,superset.datasets.*,superset.dashboards.*,superset.commands.*,superset.common.*,superset.dao.*,superset.db_engine_specs.*,superset.db_engines.*,superset.examples.*,superset.migrations.*] check_untyped_defs = true disallow_untyped_calls = true disallow_untyped_defs = true diff --git a/superset/migrations/env.py b/superset/migrations/env.py index 048b2b2107e9a..37b0190e50b40 100755 --- a/superset/migrations/env.py +++ b/superset/migrations/env.py @@ -16,8 +16,11 @@ # under the License. import logging from logging.config import fileConfig +from typing import List from alembic import context +from alembic.operations.ops import MigrationScript +from alembic.runtime.migration import MigrationContext from flask import current_app from flask_appbuilder import Base from sqlalchemy import engine_from_config, pool @@ -41,7 +44,7 @@ # ... etc. -def run_migrations_offline(): +def run_migrations_offline() -> None: """Run migrations in 'offline' mode. This configures the context with just a URL @@ -60,7 +63,7 @@ def run_migrations_offline(): context.run_migrations() -def run_migrations_online(): +def run_migrations_online() -> None: """Run migrations in 'online' mode. In this scenario we need to create an Engine @@ -71,9 +74,9 @@ def run_migrations_online(): # this callback is used to prevent an auto-migration from being generated # when there are no changes to the schema # reference: https://alembic.sqlalchemy.org/en/latest/cookbook.html - def process_revision_directives( - context, revision, directives - ): # pylint: disable=redefined-outer-name, unused-argument + def process_revision_directives( # pylint: disable=redefined-outer-name, unused-argument + context: MigrationContext, revision: str, directives: List[MigrationScript] + ) -> None: if getattr(config.cmd_opts, "autogenerate", False): script = directives[0] if script.upgrade_ops.is_empty():