Skip to content

Commit b5aad1d

Browse files
committed
Add stubs for flask-migrate
As discussed in miguelgrinberg/Flask-Migrate#492 types should be added to typeshed.
1 parent dc7fdc6 commit b5aad1d

File tree

3 files changed

+127
-0
lines changed

3 files changed

+127
-0
lines changed

stubs/Flask-Migrate/METADATA.toml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
version = "3.1.*"
2+
requires = ["types-Flask-SQLAlchemy", "types-SQLAlchemy"]
Lines changed: 88 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,88 @@
1+
from collections.abc import Callable
2+
from logging import Logger
3+
from typing import Any, TypeVar
4+
from typing_extensions import ParamSpec
5+
6+
from alembic.config import Config as AlembicConfig
7+
from flask_sqlalchemy import SQLAlchemy
8+
from sqlalchemy import MetaData
9+
10+
_T = TypeVar("_T")
11+
_P = ParamSpec("_P")
12+
_App = Any # flask.Flask is not possible as a dependency yet
13+
14+
alembic_version: tuple[int, int, int]
15+
log: Logger
16+
17+
class _MigrateConfig:
18+
migrate: Migrate
19+
db: SQLAlchemy | None
20+
directory: str
21+
configure_args: dict[str, Any]
22+
def __init__(self, migrate: Migrate, db: SQLAlchemy | None, **kwargs) -> None: ...
23+
@property
24+
def metadata(self) -> MetaData: ...
25+
26+
class Config(AlembicConfig):
27+
template_directory: str | None
28+
def __init__(self, *args, **kwargs) -> None: ...
29+
def get_template_directory(self) -> str: ...
30+
31+
class Migrate:
32+
configure_callbacks: list[Callable[[Config], None]]
33+
db: SQLAlchemy | None
34+
directory: str
35+
alembic_ctx_kwargs: dict[str, Any]
36+
def __init__(self, app: _App | None = ..., db: SQLAlchemy | None = ..., directory: str = ..., **kwargs) -> None: ...
37+
def init_app(self, app: _App, db: SQLAlchemy | None = ..., directory: str | None = ..., **kwargs) -> None: ...
38+
def configure(self, f: Callable[[Config], None]) -> Callable[[Config], None]: ...
39+
def call_configure_callbacks(self, config: Config): ...
40+
def get_config(self, directory: str | None = ..., x_arg: tuple[str] | None = ..., opts: list[str] | None = ...): ...
41+
42+
def catch_errors(f: Callable[_P, _T]) -> Callable[_P, _T]: ...
43+
def list_templates() -> None: ...
44+
def init(directory: str | None = ..., multidb: bool = ..., template: str | None = ..., package: bool = ...) -> None: ...
45+
def revision(
46+
directory: str | None = ...,
47+
message: str | None = ...,
48+
autogenerate: bool = ...,
49+
sql: bool = ...,
50+
head: str = ...,
51+
splice: bool = ...,
52+
branch_label: str | None = ...,
53+
version_path: str | None = ...,
54+
rev_id: str | None = ...,
55+
) -> None: ...
56+
def migrate(
57+
directory: str | None = ...,
58+
message: str | None = ...,
59+
sql: bool = ...,
60+
head: str = ...,
61+
splice: bool = ...,
62+
branch_label: str | None = ...,
63+
version_path: str | None = ...,
64+
rev_id: str | None = ...,
65+
x_arg: tuple[str] | None = ...,
66+
) -> None: ...
67+
def edit(directory: str | None = ..., revision: str = ...) -> None: ...
68+
def merge(
69+
directory: str | None = ...,
70+
revisions: str = ...,
71+
message: str | None = ...,
72+
branch_label: str | None = ...,
73+
rev_id: str | None = ...,
74+
) -> None: ...
75+
def upgrade(
76+
directory: str | None = ..., revision: str = ..., sql: bool = ..., tag: str | None = ..., x_arg: tuple[str] | None = ...
77+
) -> None: ...
78+
def downgrade(
79+
directory: str | None = ..., revision: str = ..., sql: bool = ..., tag: str | None = ..., x_arg: tuple[str] | None = ...
80+
) -> None: ...
81+
def show(directory: str | None = ..., revision: str = ...) -> None: ...
82+
def history(
83+
directory: str | None = ..., rev_range: str | None = ..., verbose: bool = ..., indicate_current: bool = ...
84+
) -> None: ...
85+
def heads(directory: str | None = ..., verbose: bool = ..., resolve_dependencies: bool = ...) -> None: ...
86+
def branches(directory: str | None = ..., verbose: bool = ...) -> None: ...
87+
def current(directory: str | None = ..., verbose: bool = ...) -> None: ...
88+
def stamp(directory: str | None = ..., revision: str = ..., sql: bool = ..., tag: str | None = ...) -> None: ...
Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
def db() -> None: ...
2+
def list_templates() -> None: ...
3+
def init(directory: str | None, multidb: bool, template: str | None, package: bool) -> None: ...
4+
def revision(
5+
directory: str | None,
6+
message: str | None,
7+
autogenerate: bool,
8+
sql: bool,
9+
head: str,
10+
splice: bool,
11+
branch_label: None | str,
12+
version_path: str | None,
13+
rev_id: str | None,
14+
) -> None: ...
15+
def migrate(
16+
directory: str | None,
17+
message: str | None,
18+
sql: bool,
19+
head: str,
20+
splice: bool,
21+
branch_label: None | str,
22+
version_path: str | None,
23+
rev_id: str | None,
24+
x_arg: tuple[str],
25+
) -> None: ...
26+
def edit(directory: str | None, revision: str) -> None: ...
27+
def merge(
28+
directory: str | None, message: str | None, branch_label: None | str, rev_id: str | None, revisions: tuple[str]
29+
) -> None: ...
30+
def upgrade(directory: str | None, sql: bool, tag: str | None, x_arg: tuple[str], revision: str) -> None: ...
31+
def downgrade(directory: str | None, sql: bool, tag: str | None, x_arg: tuple[str], revision: str) -> None: ...
32+
def show(directory: str | None, revision: str) -> None: ...
33+
def history(directory: str | None, rev_range: str | None, verbose: bool, indicate_current: bool) -> None: ...
34+
def heads(directory: str | None, verbose: bool, resolve_dependencies: bool) -> None: ...
35+
def branches(directory: str | None, verbose: bool) -> None: ...
36+
def current(directory: str | None, verbose: bool) -> None: ...
37+
def stamp(directory: str | None, sql: bool, tag: str | None, revision: str) -> None: ...

0 commit comments

Comments
 (0)