alembic 1.16.1__py3-none-any.whl → 1.16.2__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- alembic/__init__.py +1 -1
- alembic/autogenerate/compare.py +2 -2
- alembic/autogenerate/render.py +17 -7
- alembic/autogenerate/rewriter.py +2 -2
- alembic/config.py +14 -1
- alembic/runtime/environment.py +1 -1
- alembic/runtime/migration.py +5 -1
- alembic/script/base.py +6 -2
- alembic/templates/async/script.py.mako +1 -1
- alembic/templates/generic/script.py.mako +1 -1
- alembic/templates/multidb/script.py.mako +1 -1
- alembic/templates/pyproject/script.py.mako +1 -1
- alembic/util/pyfiles.py +4 -2
- {alembic-1.16.1.dist-info → alembic-1.16.2.dist-info}/METADATA +1 -1
- {alembic-1.16.1.dist-info → alembic-1.16.2.dist-info}/RECORD +19 -19
- {alembic-1.16.1.dist-info → alembic-1.16.2.dist-info}/WHEEL +1 -1
- {alembic-1.16.1.dist-info → alembic-1.16.2.dist-info}/entry_points.txt +0 -0
- {alembic-1.16.1.dist-info → alembic-1.16.2.dist-info}/licenses/LICENSE +0 -0
- {alembic-1.16.1.dist-info → alembic-1.16.2.dist-info}/top_level.txt +0 -0
alembic/__init__.py
CHANGED
alembic/autogenerate/compare.py
CHANGED
@@ -683,7 +683,7 @@ def _compare_indexes_and_uniques(
|
|
683
683
|
):
|
684
684
|
modify_ops.ops.append(ops.CreateIndexOp.from_index(obj.const))
|
685
685
|
log.info(
|
686
|
-
"Detected added index
|
686
|
+
"Detected added index %r on '%s'",
|
687
687
|
obj.name,
|
688
688
|
obj.column_names,
|
689
689
|
)
|
@@ -1282,7 +1282,7 @@ def _compare_foreign_keys(
|
|
1282
1282
|
obj.const, obj.name, "foreign_key_constraint", False, compare_to
|
1283
1283
|
):
|
1284
1284
|
modify_table_ops.ops.append(
|
1285
|
-
ops.CreateForeignKeyOp.from_constraint(const.const)
|
1285
|
+
ops.CreateForeignKeyOp.from_constraint(const.const)
|
1286
1286
|
)
|
1287
1287
|
|
1288
1288
|
log.info(
|
alembic/autogenerate/render.py
CHANGED
@@ -18,6 +18,7 @@ from mako.pygen import PythonPrinter
|
|
18
18
|
from sqlalchemy import schema as sa_schema
|
19
19
|
from sqlalchemy import sql
|
20
20
|
from sqlalchemy import types as sqltypes
|
21
|
+
from sqlalchemy.sql.base import _DialectArgView
|
21
22
|
from sqlalchemy.sql.elements import conv
|
22
23
|
from sqlalchemy.sql.elements import Label
|
23
24
|
from sqlalchemy.sql.elements import quoted_name
|
@@ -31,7 +32,6 @@ if TYPE_CHECKING:
|
|
31
32
|
|
32
33
|
from sqlalchemy import Computed
|
33
34
|
from sqlalchemy import Identity
|
34
|
-
from sqlalchemy.sql.base import DialectKWArgs
|
35
35
|
from sqlalchemy.sql.elements import ColumnElement
|
36
36
|
from sqlalchemy.sql.elements import TextClause
|
37
37
|
from sqlalchemy.sql.schema import CheckConstraint
|
@@ -304,11 +304,11 @@ def _drop_table(autogen_context: AutogenContext, op: ops.DropTableOp) -> str:
|
|
304
304
|
|
305
305
|
|
306
306
|
def _render_dialect_kwargs_items(
|
307
|
-
autogen_context: AutogenContext,
|
307
|
+
autogen_context: AutogenContext, dialect_kwargs: _DialectArgView
|
308
308
|
) -> list[str]:
|
309
309
|
return [
|
310
310
|
f"{key}={_render_potential_expr(val, autogen_context)}"
|
311
|
-
for key, val in
|
311
|
+
for key, val in dialect_kwargs.items()
|
312
312
|
]
|
313
313
|
|
314
314
|
|
@@ -331,7 +331,7 @@ def _add_index(autogen_context: AutogenContext, op: ops.CreateIndexOp) -> str:
|
|
331
331
|
|
332
332
|
assert index.table is not None
|
333
333
|
|
334
|
-
opts = _render_dialect_kwargs_items(autogen_context, index)
|
334
|
+
opts = _render_dialect_kwargs_items(autogen_context, index.dialect_kwargs)
|
335
335
|
if op.if_not_exists is not None:
|
336
336
|
opts.append("if_not_exists=%r" % bool(op.if_not_exists))
|
337
337
|
text = tmpl % {
|
@@ -365,7 +365,7 @@ def _drop_index(autogen_context: AutogenContext, op: ops.DropIndexOp) -> str:
|
|
365
365
|
"%(prefix)sdrop_index(%(name)r, "
|
366
366
|
"table_name=%(table_name)r%(schema)s%(kwargs)s)"
|
367
367
|
)
|
368
|
-
opts = _render_dialect_kwargs_items(autogen_context, index)
|
368
|
+
opts = _render_dialect_kwargs_items(autogen_context, index.dialect_kwargs)
|
369
369
|
if op.if_exists is not None:
|
370
370
|
opts.append("if_exists=%r" % bool(op.if_exists))
|
371
371
|
text = tmpl % {
|
@@ -389,6 +389,7 @@ def _add_unique_constraint(
|
|
389
389
|
def _add_fk_constraint(
|
390
390
|
autogen_context: AutogenContext, op: ops.CreateForeignKeyOp
|
391
391
|
) -> str:
|
392
|
+
constraint = op.to_constraint()
|
392
393
|
args = [repr(_render_gen_name(autogen_context, op.constraint_name))]
|
393
394
|
if not autogen_context._has_batch:
|
394
395
|
args.append(repr(_ident(op.source_table)))
|
@@ -418,9 +419,16 @@ def _add_fk_constraint(
|
|
418
419
|
if value is not None:
|
419
420
|
args.append("%s=%r" % (k, value))
|
420
421
|
|
421
|
-
|
422
|
+
dialect_kwargs = _render_dialect_kwargs_items(
|
423
|
+
autogen_context, constraint.dialect_kwargs
|
424
|
+
)
|
425
|
+
|
426
|
+
return "%(prefix)screate_foreign_key(%(args)s%(dialect_kwargs)s)" % {
|
422
427
|
"prefix": _alembic_autogenerate_prefix(autogen_context),
|
423
428
|
"args": ", ".join(args),
|
429
|
+
"dialect_kwargs": (
|
430
|
+
", " + ", ".join(dialect_kwargs) if dialect_kwargs else ""
|
431
|
+
),
|
424
432
|
}
|
425
433
|
|
426
434
|
|
@@ -664,7 +672,9 @@ def _uq_constraint(
|
|
664
672
|
opts.append(
|
665
673
|
("name", _render_gen_name(autogen_context, constraint.name))
|
666
674
|
)
|
667
|
-
dialect_options = _render_dialect_kwargs_items(
|
675
|
+
dialect_options = _render_dialect_kwargs_items(
|
676
|
+
autogen_context, constraint.dialect_kwargs
|
677
|
+
)
|
668
678
|
|
669
679
|
if alter:
|
670
680
|
args = [repr(_render_gen_name(autogen_context, constraint.name))]
|
alembic/autogenerate/rewriter.py
CHANGED
@@ -177,7 +177,7 @@ class Rewriter:
|
|
177
177
|
)
|
178
178
|
upgrade_ops_list.append(ret[0])
|
179
179
|
|
180
|
-
directive.upgrade_ops = upgrade_ops_list
|
180
|
+
directive.upgrade_ops = upgrade_ops_list
|
181
181
|
|
182
182
|
downgrade_ops_list: List[DowngradeOps] = []
|
183
183
|
for downgrade_ops in directive.downgrade_ops_list:
|
@@ -187,7 +187,7 @@ class Rewriter:
|
|
187
187
|
"Can only return single object for DowngradeOps traverse"
|
188
188
|
)
|
189
189
|
downgrade_ops_list.append(ret[0])
|
190
|
-
directive.downgrade_ops = downgrade_ops_list
|
190
|
+
directive.downgrade_ops = downgrade_ops_list
|
191
191
|
|
192
192
|
@_traverse.dispatch_for(ops.OpContainer)
|
193
193
|
def _traverse_op_container(
|
alembic/config.py
CHANGED
@@ -75,7 +75,20 @@ class Config:
|
|
75
75
|
alembic_cfg.attributes['connection'] = connection
|
76
76
|
command.upgrade(alembic_cfg, "head")
|
77
77
|
|
78
|
-
:param file\_: name of the .ini file to open.
|
78
|
+
:param file\_: name of the .ini file to open if an ``alembic.ini`` is
|
79
|
+
to be used. This should refer to the ``alembic.ini`` file, either as
|
80
|
+
a filename or a full path to the file. This filename if passed must refer
|
81
|
+
to an **ini file in ConfigParser format** only.
|
82
|
+
|
83
|
+
:param toml\_file: name of the pyproject.toml file to open if a
|
84
|
+
``pyproject.toml`` file is to be used. This should refer to the
|
85
|
+
``pyproject.toml`` file, either as a filename or a full path to the file.
|
86
|
+
This file must be in toml format. Both :paramref:`.Config.file\_` and
|
87
|
+
:paramref:`.Config.toml\_file` may be passed simultaneously, or
|
88
|
+
exclusively.
|
89
|
+
|
90
|
+
.. versionadded:: 1.16.0
|
91
|
+
|
79
92
|
:param ini_section: name of the main Alembic section within the
|
80
93
|
.ini file
|
81
94
|
:param output_buffer: optional file-like input buffer which
|
alembic/runtime/environment.py
CHANGED
@@ -338,7 +338,7 @@ class EnvironmentContext(util.ModuleClsProxy):
|
|
338
338
|
line.
|
339
339
|
|
340
340
|
"""
|
341
|
-
return self.context_opts.get("tag", None)
|
341
|
+
return self.context_opts.get("tag", None)
|
342
342
|
|
343
343
|
@overload
|
344
344
|
def get_x_argument(self, as_dictionary: Literal[False]) -> List[str]: ...
|
alembic/runtime/migration.py
CHANGED
@@ -175,7 +175,11 @@ class MigrationContext:
|
|
175
175
|
opts["output_encoding"],
|
176
176
|
)
|
177
177
|
else:
|
178
|
-
self.output_buffer = opts.get(
|
178
|
+
self.output_buffer = opts.get(
|
179
|
+
"output_buffer", sys.stdout
|
180
|
+
) # type:ignore[assignment] # noqa: E501
|
181
|
+
|
182
|
+
self.transactional_ddl = transactional_ddl
|
179
183
|
|
180
184
|
self._user_compare_type = opts.get("compare_type", True)
|
181
185
|
self._user_compare_server_default = opts.get(
|
alembic/script/base.py
CHANGED
@@ -560,7 +560,11 @@ class ScriptDirectory:
|
|
560
560
|
**self.messaging_opts,
|
561
561
|
):
|
562
562
|
util.template_to_file(
|
563
|
-
src,
|
563
|
+
src,
|
564
|
+
dest,
|
565
|
+
self.output_encoding,
|
566
|
+
append_with_newlines=True,
|
567
|
+
**kw,
|
564
568
|
)
|
565
569
|
|
566
570
|
def _generate_template(self, src: Path, dest: Path, **kw: Any) -> None:
|
@@ -846,7 +850,7 @@ class Script(revision.Revision):
|
|
846
850
|
doc = doc.decode( # type: ignore[attr-defined]
|
847
851
|
self.module._alembic_source_encoding
|
848
852
|
)
|
849
|
-
return doc.strip()
|
853
|
+
return doc.strip()
|
850
854
|
else:
|
851
855
|
return ""
|
852
856
|
|
@@ -13,7 +13,7 @@ ${imports if imports else ""}
|
|
13
13
|
|
14
14
|
# revision identifiers, used by Alembic.
|
15
15
|
revision: str = ${repr(up_revision)}
|
16
|
-
down_revision: Union[str, None] = ${repr(down_revision)}
|
16
|
+
down_revision: Union[str, Sequence[str], None] = ${repr(down_revision)}
|
17
17
|
branch_labels: Union[str, Sequence[str], None] = ${repr(branch_labels)}
|
18
18
|
depends_on: Union[str, Sequence[str], None] = ${repr(depends_on)}
|
19
19
|
|
@@ -13,7 +13,7 @@ ${imports if imports else ""}
|
|
13
13
|
|
14
14
|
# revision identifiers, used by Alembic.
|
15
15
|
revision: str = ${repr(up_revision)}
|
16
|
-
down_revision: Union[str, None] = ${repr(down_revision)}
|
16
|
+
down_revision: Union[str, Sequence[str], None] = ${repr(down_revision)}
|
17
17
|
branch_labels: Union[str, Sequence[str], None] = ${repr(branch_labels)}
|
18
18
|
depends_on: Union[str, Sequence[str], None] = ${repr(depends_on)}
|
19
19
|
|
@@ -16,7 +16,7 @@ ${imports if imports else ""}
|
|
16
16
|
|
17
17
|
# revision identifiers, used by Alembic.
|
18
18
|
revision: str = ${repr(up_revision)}
|
19
|
-
down_revision: Union[str, None] = ${repr(down_revision)}
|
19
|
+
down_revision: Union[str, Sequence[str], None] = ${repr(down_revision)}
|
20
20
|
branch_labels: Union[str, Sequence[str], None] = ${repr(branch_labels)}
|
21
21
|
depends_on: Union[str, Sequence[str], None] = ${repr(depends_on)}
|
22
22
|
|
@@ -13,7 +13,7 @@ ${imports if imports else ""}
|
|
13
13
|
|
14
14
|
# revision identifiers, used by Alembic.
|
15
15
|
revision: str = ${repr(up_revision)}
|
16
|
-
down_revision: Union[str, None] = ${repr(down_revision)}
|
16
|
+
down_revision: Union[str, Sequence[str], None] = ${repr(down_revision)}
|
17
17
|
branch_labels: Union[str, Sequence[str], None] = ${repr(branch_labels)}
|
18
18
|
depends_on: Union[str, Sequence[str], None] = ${repr(depends_on)}
|
19
19
|
|
alembic/util/pyfiles.py
CHANGED
@@ -26,7 +26,7 @@ def template_to_file(
|
|
26
26
|
dest: Union[str, os.PathLike[str]],
|
27
27
|
output_encoding: str,
|
28
28
|
*,
|
29
|
-
|
29
|
+
append_with_newlines: bool = False,
|
30
30
|
**kw: Any,
|
31
31
|
) -> None:
|
32
32
|
template = Template(filename=_preserving_path_as_str(template_file))
|
@@ -45,7 +45,9 @@ def template_to_file(
|
|
45
45
|
"template-oriented traceback." % fname
|
46
46
|
)
|
47
47
|
else:
|
48
|
-
with open(dest, "ab" if
|
48
|
+
with open(dest, "ab" if append_with_newlines else "wb") as f:
|
49
|
+
if append_with_newlines:
|
50
|
+
f.write("\n\n".encode(output_encoding))
|
49
51
|
f.write(output)
|
50
52
|
|
51
53
|
|
@@ -1,7 +1,7 @@
|
|
1
|
-
alembic/__init__.py,sha256=
|
1
|
+
alembic/__init__.py,sha256=AL1XKsGOkbogUDQ2LozlFjw5wZVjWyEkQq2K8JOzeJI,63
|
2
2
|
alembic/__main__.py,sha256=373m7-TBh72JqrSMYviGrxCHZo-cnweM8AGF8A22PmY,78
|
3
3
|
alembic/command.py,sha256=pZPQUGSxCjFu7qy0HMe02HJmByM0LOqoiK2AXKfRO3A,24855
|
4
|
-
alembic/config.py,sha256=
|
4
|
+
alembic/config.py,sha256=jcWyXXCM-Uh6uOGmjgnBLhDSD0OkG5P0ZUWYCf5_ek8,33543
|
5
5
|
alembic/context.py,sha256=hK1AJOQXJ29Bhn276GYcosxeG7pC5aZRT5E8c4bMJ4Q,195
|
6
6
|
alembic/context.pyi,sha256=fdeFNTRc0bUgi7n2eZWVFh6NG-TzIv_0gAcapbfHnKY,31773
|
7
7
|
alembic/environment.py,sha256=MM5lPayGT04H3aeng1H7GQ8HEAs3VGX5yy6mDLCPLT4,43
|
@@ -11,9 +11,9 @@ alembic/op.pyi,sha256=PQ4mKNp7EXrjVdIWQRoGiBSVke4PPxTc9I6qF8ZGGZE,50711
|
|
11
11
|
alembic/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
12
12
|
alembic/autogenerate/__init__.py,sha256=ntmUTXhjLm4_zmqIwyVaECdpPDn6_u1yM9vYk6-553E,543
|
13
13
|
alembic/autogenerate/api.py,sha256=L4qkapSJO1Ypymx8HsjLl0vFFt202agwMYsQbIe6ZtI,22219
|
14
|
-
alembic/autogenerate/compare.py,sha256=
|
15
|
-
alembic/autogenerate/render.py,sha256=
|
16
|
-
alembic/autogenerate/rewriter.py,sha256=
|
14
|
+
alembic/autogenerate/compare.py,sha256=LRTxNijEBvcTauuUXuJjC6Sg_gUn33FCYBTF0neZFwE,45979
|
15
|
+
alembic/autogenerate/render.py,sha256=_VeY05jcszpr7SW1YZxNbnVk40DZD_pIEJkbEj69K_M,36826
|
16
|
+
alembic/autogenerate/rewriter.py,sha256=NIASSS-KaNKPmbm1k4pE45aawwjSh1Acf6eZrOwnUGM,7814
|
17
17
|
alembic/ddl/__init__.py,sha256=Df8fy4Vn_abP8B7q3x8gyFwEwnLw6hs2Ljt_bV3EZWE,152
|
18
18
|
alembic/ddl/_autogen.py,sha256=Blv2RrHNyF4cE6znCQXNXG5T9aO-YmiwD4Fz-qfoaWA,9275
|
19
19
|
alembic/ddl/base.py,sha256=A1f89-rCZvqw-hgWmBbIszRqx94lL6gKLFXE9kHettA,10478
|
@@ -30,29 +30,29 @@ alembic/operations/ops.py,sha256=ftsFgcZIctxRDiuGgkQsaFHsMlRP7cLq7Dj_seKVBnQ,962
|
|
30
30
|
alembic/operations/schemaobj.py,sha256=Wp-bBe4a8lXPTvIHJttBY0ejtpVR5Jvtb2kI-U2PztQ,9468
|
31
31
|
alembic/operations/toimpl.py,sha256=rgufuSUNwpgrOYzzY3Q3ELW1rQv2fQbQVokXgnIYIrs,7503
|
32
32
|
alembic/runtime/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
33
|
-
alembic/runtime/environment.py,sha256=
|
34
|
-
alembic/runtime/migration.py,sha256=
|
33
|
+
alembic/runtime/environment.py,sha256=L6bDW1dvw8L4zwxlTG8KnT0xcCgLXxUfdRpzqlJoFjo,41479
|
34
|
+
alembic/runtime/migration.py,sha256=lu9_z_qyWmNzSM52_FgdXP_G52PTmTTeOeMBQAkQTFg,49997
|
35
35
|
alembic/script/__init__.py,sha256=lSj06O391Iy5avWAiq8SPs6N8RBgxkSPjP8wpXcNDGg,100
|
36
|
-
alembic/script/base.py,sha256=
|
36
|
+
alembic/script/base.py,sha256=O9xYzMCesjlSoUGD613Co0PhoCcpPBxxJzD3yt1lKK8,36924
|
37
37
|
alembic/script/revision.py,sha256=BQcJoMCIXtSJRLCvdasgLOtCx9O7A8wsSym1FsqLW4s,62307
|
38
38
|
alembic/script/write_hooks.py,sha256=CAjh9U8m7eXz3W7pfQKVxG4UkHZrRIYKF6AkReakG2c,5015
|
39
39
|
alembic/templates/async/README,sha256=ISVtAOvqvKk_5ThM5ioJE-lMkvf9IbknFUFVU_vPma4,58
|
40
40
|
alembic/templates/async/alembic.ini.mako,sha256=ubJvGp-ai_C3RGJ_k5sedviIcIb2HIeExT1Y1K4X44o,4684
|
41
41
|
alembic/templates/async/env.py,sha256=zbOCf3Y7w2lg92hxSwmG1MM_7y56i_oRH4AKp0pQBYo,2389
|
42
|
-
alembic/templates/async/script.py.mako,sha256=
|
42
|
+
alembic/templates/async/script.py.mako,sha256=04kgeBtNMa4cCnG8CfQcKt6P6rnloIfj8wy0u_DBydM,704
|
43
43
|
alembic/templates/generic/README,sha256=MVlc9TYmr57RbhXET6QxgyCcwWP7w-vLkEsirENqiIQ,38
|
44
44
|
alembic/templates/generic/alembic.ini.mako,sha256=CqVaOZbWULb1NYjC6XTnLELPQ_TA9NPMOHKxJeG0vNY,4684
|
45
45
|
alembic/templates/generic/env.py,sha256=TLRWOVW3Xpt_Tpf8JFzlnoPn_qoUu8UV77Y4o9XD6yI,2103
|
46
|
-
alembic/templates/generic/script.py.mako,sha256=
|
46
|
+
alembic/templates/generic/script.py.mako,sha256=04kgeBtNMa4cCnG8CfQcKt6P6rnloIfj8wy0u_DBydM,704
|
47
47
|
alembic/templates/multidb/README,sha256=dWLDhnBgphA4Nzb7sNlMfCS3_06YqVbHhz-9O5JNqyI,606
|
48
48
|
alembic/templates/multidb/alembic.ini.mako,sha256=V-1FL7zyxHX1K_tBe_6Ax7DmGB_TevQvB77eIUfWvwk,5010
|
49
49
|
alembic/templates/multidb/env.py,sha256=6zNjnW8mXGUk7erTsAvrfhvqoczJ-gagjVq1Ypg2YIQ,4230
|
50
|
-
alembic/templates/multidb/script.py.mako,sha256=
|
50
|
+
alembic/templates/multidb/script.py.mako,sha256=ZbCXMkI5Wj2dwNKcxuVGkKZ7Iav93BNx_bM4zbGi3c8,1235
|
51
51
|
alembic/templates/pyproject/README,sha256=dMhIiFoeM7EdeaOXBs3mVQ6zXACMyGXDb_UBB6sGRA0,60
|
52
52
|
alembic/templates/pyproject/alembic.ini.mako,sha256=bQnEoydnLOUgg9vNbTOys4r5MaW8lmwYFXSrlfdEEkw,782
|
53
53
|
alembic/templates/pyproject/env.py,sha256=TLRWOVW3Xpt_Tpf8JFzlnoPn_qoUu8UV77Y4o9XD6yI,2103
|
54
54
|
alembic/templates/pyproject/pyproject.toml.mako,sha256=9CzBcdamN6ylIiJ-oGCaw__E84XbonVkNkuET3J7LKI,2645
|
55
|
-
alembic/templates/pyproject/script.py.mako,sha256=
|
55
|
+
alembic/templates/pyproject/script.py.mako,sha256=04kgeBtNMa4cCnG8CfQcKt6P6rnloIfj8wy0u_DBydM,704
|
56
56
|
alembic/testing/__init__.py,sha256=JXvXAqIwFZB6-ep-BmeIqIH8xJ92XPt7DWCNkMDuJ-g,1249
|
57
57
|
alembic/testing/assertions.py,sha256=qcqf3tRAUe-A12NzuK_yxlksuX9OZKRC5E8pKIdBnPg,5302
|
58
58
|
alembic/testing/env.py,sha256=pka7fjwOC8hYL6X0XE4oPkJpy_1WX01bL7iP7gpO_4I,11551
|
@@ -78,11 +78,11 @@ alembic/util/editor.py,sha256=JIz6_BdgV8_oKtnheR6DZoB7qnrHrlRgWjx09AsTsUw,2546
|
|
78
78
|
alembic/util/exc.py,sha256=ZBlTQ8g-Jkb1iYFhFHs9djilRz0SSQ0Foc5SSoENs5o,564
|
79
79
|
alembic/util/langhelpers.py,sha256=LpOcovnhMnP45kTt8zNJ4BHpyQrlF40OL6yDXjqKtsE,10026
|
80
80
|
alembic/util/messaging.py,sha256=3bEBoDy4EAXETXAvArlYjeMITXDTgPTu6ZoE3ytnzSw,3294
|
81
|
-
alembic/util/pyfiles.py,sha256=
|
81
|
+
alembic/util/pyfiles.py,sha256=kOBjZEytRkBKsQl0LAj2sbKJMQazjwQ_5UeMKSIvVFo,4730
|
82
82
|
alembic/util/sqla_compat.py,sha256=SWAL4hJck4XLnUpe-oI3AGiH8w9kgDBe1_oakCfdT_Q,14785
|
83
|
-
alembic-1.16.
|
84
|
-
alembic-1.16.
|
85
|
-
alembic-1.16.
|
86
|
-
alembic-1.16.
|
87
|
-
alembic-1.16.
|
88
|
-
alembic-1.16.
|
83
|
+
alembic-1.16.2.dist-info/licenses/LICENSE,sha256=NeqcNBmyYfrxvkSMT0fZJVKBv2s2tf_qVQUiJ9S6VN4,1059
|
84
|
+
alembic-1.16.2.dist-info/METADATA,sha256=YXkCdjlR2LNMd-B_P4WlNhmvXqgL51wKDdRIDuu5DrA,7265
|
85
|
+
alembic-1.16.2.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
86
|
+
alembic-1.16.2.dist-info/entry_points.txt,sha256=aykM30soxwGN0pB7etLc1q0cHJbL9dy46RnK9VX4LLw,48
|
87
|
+
alembic-1.16.2.dist-info/top_level.txt,sha256=FwKWd5VsPFC8iQjpu1u9Cn-JnK3-V1RhUCmWqz1cl-s,8
|
88
|
+
alembic-1.16.2.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|