summaryrefslogtreecommitdiff
path: root/alembic
diff options
context:
space:
mode:
authormike bayer <mike_mp@zzzcomputing.com>2023-05-12 16:59:33 +0000
committerGerrit Code Review <gerrit@bbpush.zzzcomputing.com>2023-05-12 16:59:33 +0000
commit513aa2a673449cbcdc314b2b692bef08ce4e49d4 (patch)
tree337a59b9fa57063f770e17405337437f87f2a3ed /alembic
parent29f1650277318f08bcc8956d83253e4c2ba3def1 (diff)
parent647190e82d4e7b9d7fe24a891af6556ed9d651b8 (diff)
downloadalembic-513aa2a673449cbcdc314b2b692bef08ce4e49d4.tar.gz
Merge "add user_module_prefix param for render_python_code" into main
Diffstat (limited to 'alembic')
-rw-r--r--alembic/autogenerate/api.py21
1 files changed, 18 insertions, 3 deletions
diff --git a/alembic/autogenerate/api.py b/alembic/autogenerate/api.py
index 95fdede..c4ec5c1 100644
--- a/alembic/autogenerate/api.py
+++ b/alembic/autogenerate/api.py
@@ -6,9 +6,10 @@ from typing import Callable
from typing import Dict
from typing import Iterator
from typing import Optional
+from typing import Sequence
from typing import Set
-from typing import Tuple
from typing import TYPE_CHECKING
+from typing import Union
from sqlalchemy import inspect
@@ -28,6 +29,7 @@ if TYPE_CHECKING:
from sqlalchemy.sql.schema import SchemaItem
from ..config import Config
+ from ..operations.ops import DowngradeOps
from ..operations.ops import MigrationScript
from ..operations.ops import UpgradeOps
from ..runtime.environment import NameFilterParentNames
@@ -195,13 +197,14 @@ def produce_migrations(
def render_python_code(
- up_or_down_op: UpgradeOps,
+ up_or_down_op: Union[UpgradeOps, DowngradeOps],
sqlalchemy_module_prefix: str = "sa.",
alembic_module_prefix: str = "op.",
render_as_batch: bool = False,
- imports: Tuple[str, ...] = (),
+ imports: Sequence[str] = (),
render_item: Optional[RenderItemFn] = None,
migration_context: Optional[MigrationContext] = None,
+ user_module_prefix: Optional[str] = None,
) -> str:
"""Render Python code given an :class:`.UpgradeOps` or
:class:`.DowngradeOps` object.
@@ -209,12 +212,24 @@ def render_python_code(
This is a convenience function that can be used to test the
autogenerate output of a user-defined :class:`.MigrationScript` structure.
+ :param up_or_down_op: :class:`.UpgradeOps` or :class:`.DowngradeOps` object
+ :param sqlalchemy_module_prefix: module prefix for SQLAlchemy objects
+ :param alembic_module_prefix: module prefix for Alembic constructs
+ :param render_as_batch: use "batch operations" style for rendering
+ :param imports: sequence of import symbols to add
+ :param render_item: callable to render items
+ :param migration_context: optional :class:`.MigrationContext`
+ :param user_module_prefix: optional string prefix for user-defined types
+
+ .. versionadded:: 1.11.0
+
"""
opts = {
"sqlalchemy_module_prefix": sqlalchemy_module_prefix,
"alembic_module_prefix": alembic_module_prefix,
"render_item": render_item,
"render_as_batch": render_as_batch,
+ "user_module_prefix": user_module_prefix,
}
if migration_context is None: