alembic 1.13.3__tar.gz → 1.14.0__tar.gz

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.
Files changed (239) hide show
  1. {alembic-1.13.3/alembic.egg-info → alembic-1.14.0}/PKG-INFO +1 -1
  2. {alembic-1.13.3 → alembic-1.14.0}/alembic/__init__.py +1 -1
  3. {alembic-1.13.3 → alembic-1.14.0}/alembic/ddl/base.py +9 -9
  4. {alembic-1.13.3 → alembic-1.14.0}/alembic/ddl/impl.py +39 -2
  5. {alembic-1.13.3 → alembic-1.14.0}/alembic/runtime/migration.py +12 -17
  6. {alembic-1.13.3 → alembic-1.14.0}/alembic/templates/async/alembic.ini.mako +2 -2
  7. {alembic-1.13.3 → alembic-1.14.0}/alembic/templates/generic/alembic.ini.mako +2 -2
  8. {alembic-1.13.3 → alembic-1.14.0}/alembic/templates/multidb/alembic.ini.mako +2 -2
  9. {alembic-1.13.3 → alembic-1.14.0}/alembic/testing/env.py +4 -4
  10. {alembic-1.13.3 → alembic-1.14.0/alembic.egg-info}/PKG-INFO +1 -1
  11. {alembic-1.13.3 → alembic-1.14.0}/alembic.egg-info/SOURCES.txt +2 -5
  12. {alembic-1.13.3 → alembic-1.14.0}/docs/_sources/changelog.rst +17 -0
  13. {alembic-1.13.3 → alembic-1.14.0}/docs/_sources/tutorial.rst +2 -2
  14. {alembic-1.13.3 → alembic-1.14.0}/docs/_static/basic.css +2 -13
  15. {alembic-1.13.3 → alembic-1.14.0}/docs/_static/doctools.js +0 -7
  16. {alembic-1.13.3 → alembic-1.14.0}/docs/_static/documentation_options.js +1 -1
  17. {alembic-1.13.3 → alembic-1.14.0}/docs/_static/language_data.js +0 -7
  18. alembic-1.14.0/docs/_static/scripts/fontawesome.js +3 -0
  19. alembic-1.14.0/docs/_static/scripts/pydata-sphinx-theme.js +2 -0
  20. {alembic-1.13.3 → alembic-1.14.0}/docs/_static/searchtools.js +25 -13
  21. alembic-1.14.0/docs/_static/styles/pydata-sphinx-theme.css +32 -0
  22. alembic-1.14.0/docs/_static/webpack-macros.html +24 -0
  23. {alembic-1.13.3 → alembic-1.14.0}/docs/api/autogenerate.html +51 -69
  24. {alembic-1.13.3 → alembic-1.14.0}/docs/api/commands.html +57 -75
  25. {alembic-1.13.3 → alembic-1.14.0}/docs/api/config.html +56 -74
  26. {alembic-1.13.3 → alembic-1.14.0}/docs/api/ddl.html +175 -177
  27. {alembic-1.13.3 → alembic-1.14.0}/docs/api/index.html +40 -59
  28. {alembic-1.13.3 → alembic-1.14.0}/docs/api/operations.html +99 -117
  29. {alembic-1.13.3 → alembic-1.14.0}/docs/api/overview.html +40 -59
  30. {alembic-1.13.3 → alembic-1.14.0}/docs/api/runtime.html +68 -86
  31. {alembic-1.13.3 → alembic-1.14.0}/docs/api/script.html +81 -99
  32. {alembic-1.13.3 → alembic-1.14.0}/docs/autogenerate.html +42 -60
  33. {alembic-1.13.3 → alembic-1.14.0}/docs/batch.html +42 -60
  34. {alembic-1.13.3 → alembic-1.14.0}/docs/branches.html +42 -60
  35. {alembic-1.13.3 → alembic-1.14.0}/docs/build/changelog.rst +17 -0
  36. {alembic-1.13.3 → alembic-1.14.0}/docs/build/conf.py +2 -2
  37. {alembic-1.13.3 → alembic-1.14.0}/docs/build/tutorial.rst +2 -2
  38. {alembic-1.13.3 → alembic-1.14.0}/docs/changelog.html +69 -60
  39. {alembic-1.13.3 → alembic-1.14.0}/docs/cookbook.html +42 -60
  40. {alembic-1.13.3 → alembic-1.14.0}/docs/front.html +42 -60
  41. {alembic-1.13.3 → alembic-1.14.0}/docs/genindex.html +42 -59
  42. {alembic-1.13.3 → alembic-1.14.0}/docs/index.html +46 -60
  43. {alembic-1.13.3 → alembic-1.14.0}/docs/naming.html +42 -60
  44. {alembic-1.13.3 → alembic-1.14.0}/docs/offline.html +42 -60
  45. {alembic-1.13.3 → alembic-1.14.0}/docs/ops.html +85 -103
  46. {alembic-1.13.3 → alembic-1.14.0}/docs/py-modindex.html +40 -59
  47. {alembic-1.13.3 → alembic-1.14.0}/docs/search.html +40 -60
  48. alembic-1.14.0/docs/searchindex.js +1 -0
  49. {alembic-1.13.3 → alembic-1.14.0}/docs/tutorial.html +44 -62
  50. {alembic-1.13.3 → alembic-1.14.0}/tests/test_version_table.py +46 -0
  51. alembic-1.13.3/docs/_static/scripts/pydata-sphinx-theme.js +0 -2
  52. alembic-1.13.3/docs/_static/styles/bootstrap.css +0 -6
  53. alembic-1.13.3/docs/_static/styles/pydata-sphinx-theme.css +0 -2
  54. alembic-1.13.3/docs/_static/vendor/fontawesome/6.5.2/LICENSE.txt +0 -165
  55. alembic-1.13.3/docs/_static/vendor/fontawesome/6.5.2/css/all.min.css +0 -5
  56. alembic-1.13.3/docs/_static/vendor/fontawesome/6.5.2/js/all.min.js +0 -2
  57. alembic-1.13.3/docs/_static/webpack-macros.html +0 -31
  58. alembic-1.13.3/docs/searchindex.js +0 -1
  59. {alembic-1.13.3 → alembic-1.14.0}/CHANGES +0 -0
  60. {alembic-1.13.3 → alembic-1.14.0}/LICENSE +0 -0
  61. {alembic-1.13.3 → alembic-1.14.0}/MANIFEST.in +0 -0
  62. {alembic-1.13.3 → alembic-1.14.0}/README.rst +0 -0
  63. {alembic-1.13.3 → alembic-1.14.0}/README.unittests.rst +0 -0
  64. {alembic-1.13.3 → alembic-1.14.0}/alembic/__main__.py +0 -0
  65. {alembic-1.13.3 → alembic-1.14.0}/alembic/autogenerate/__init__.py +0 -0
  66. {alembic-1.13.3 → alembic-1.14.0}/alembic/autogenerate/api.py +0 -0
  67. {alembic-1.13.3 → alembic-1.14.0}/alembic/autogenerate/compare.py +0 -0
  68. {alembic-1.13.3 → alembic-1.14.0}/alembic/autogenerate/render.py +0 -0
  69. {alembic-1.13.3 → alembic-1.14.0}/alembic/autogenerate/rewriter.py +0 -0
  70. {alembic-1.13.3 → alembic-1.14.0}/alembic/command.py +0 -0
  71. {alembic-1.13.3 → alembic-1.14.0}/alembic/config.py +0 -0
  72. {alembic-1.13.3 → alembic-1.14.0}/alembic/context.py +0 -0
  73. {alembic-1.13.3 → alembic-1.14.0}/alembic/context.pyi +0 -0
  74. {alembic-1.13.3 → alembic-1.14.0}/alembic/ddl/__init__.py +0 -0
  75. {alembic-1.13.3 → alembic-1.14.0}/alembic/ddl/_autogen.py +0 -0
  76. {alembic-1.13.3 → alembic-1.14.0}/alembic/ddl/mssql.py +0 -0
  77. {alembic-1.13.3 → alembic-1.14.0}/alembic/ddl/mysql.py +0 -0
  78. {alembic-1.13.3 → alembic-1.14.0}/alembic/ddl/oracle.py +0 -0
  79. {alembic-1.13.3 → alembic-1.14.0}/alembic/ddl/postgresql.py +0 -0
  80. {alembic-1.13.3 → alembic-1.14.0}/alembic/ddl/sqlite.py +0 -0
  81. {alembic-1.13.3 → alembic-1.14.0}/alembic/environment.py +0 -0
  82. {alembic-1.13.3 → alembic-1.14.0}/alembic/migration.py +0 -0
  83. {alembic-1.13.3 → alembic-1.14.0}/alembic/op.py +0 -0
  84. {alembic-1.13.3 → alembic-1.14.0}/alembic/op.pyi +0 -0
  85. {alembic-1.13.3 → alembic-1.14.0}/alembic/operations/__init__.py +0 -0
  86. {alembic-1.13.3 → alembic-1.14.0}/alembic/operations/base.py +0 -0
  87. {alembic-1.13.3 → alembic-1.14.0}/alembic/operations/batch.py +0 -0
  88. {alembic-1.13.3 → alembic-1.14.0}/alembic/operations/ops.py +0 -0
  89. {alembic-1.13.3 → alembic-1.14.0}/alembic/operations/schemaobj.py +0 -0
  90. {alembic-1.13.3 → alembic-1.14.0}/alembic/operations/toimpl.py +0 -0
  91. {alembic-1.13.3 → alembic-1.14.0}/alembic/py.typed +0 -0
  92. {alembic-1.13.3 → alembic-1.14.0}/alembic/runtime/__init__.py +0 -0
  93. {alembic-1.13.3 → alembic-1.14.0}/alembic/runtime/environment.py +0 -0
  94. {alembic-1.13.3 → alembic-1.14.0}/alembic/script/__init__.py +0 -0
  95. {alembic-1.13.3 → alembic-1.14.0}/alembic/script/base.py +0 -0
  96. {alembic-1.13.3 → alembic-1.14.0}/alembic/script/revision.py +0 -0
  97. {alembic-1.13.3 → alembic-1.14.0}/alembic/script/write_hooks.py +0 -0
  98. {alembic-1.13.3 → alembic-1.14.0}/alembic/templates/async/README +0 -0
  99. {alembic-1.13.3 → alembic-1.14.0}/alembic/templates/async/env.py +0 -0
  100. {alembic-1.13.3 → alembic-1.14.0}/alembic/templates/async/script.py.mako +0 -0
  101. {alembic-1.13.3 → alembic-1.14.0}/alembic/templates/generic/README +0 -0
  102. {alembic-1.13.3 → alembic-1.14.0}/alembic/templates/generic/env.py +0 -0
  103. {alembic-1.13.3 → alembic-1.14.0}/alembic/templates/generic/script.py.mako +0 -0
  104. {alembic-1.13.3 → alembic-1.14.0}/alembic/templates/multidb/README +0 -0
  105. {alembic-1.13.3 → alembic-1.14.0}/alembic/templates/multidb/env.py +0 -0
  106. {alembic-1.13.3 → alembic-1.14.0}/alembic/templates/multidb/script.py.mako +0 -0
  107. {alembic-1.13.3 → alembic-1.14.0}/alembic/testing/__init__.py +0 -0
  108. {alembic-1.13.3 → alembic-1.14.0}/alembic/testing/assertions.py +0 -0
  109. {alembic-1.13.3 → alembic-1.14.0}/alembic/testing/fixtures.py +0 -0
  110. {alembic-1.13.3 → alembic-1.14.0}/alembic/testing/plugin/__init__.py +0 -0
  111. {alembic-1.13.3 → alembic-1.14.0}/alembic/testing/plugin/bootstrap.py +0 -0
  112. {alembic-1.13.3 → alembic-1.14.0}/alembic/testing/requirements.py +0 -0
  113. {alembic-1.13.3 → alembic-1.14.0}/alembic/testing/schemacompare.py +0 -0
  114. {alembic-1.13.3 → alembic-1.14.0}/alembic/testing/suite/__init__.py +0 -0
  115. {alembic-1.13.3 → alembic-1.14.0}/alembic/testing/suite/_autogen_fixtures.py +0 -0
  116. {alembic-1.13.3 → alembic-1.14.0}/alembic/testing/suite/test_autogen_comments.py +0 -0
  117. {alembic-1.13.3 → alembic-1.14.0}/alembic/testing/suite/test_autogen_computed.py +0 -0
  118. {alembic-1.13.3 → alembic-1.14.0}/alembic/testing/suite/test_autogen_diffs.py +0 -0
  119. {alembic-1.13.3 → alembic-1.14.0}/alembic/testing/suite/test_autogen_fks.py +0 -0
  120. {alembic-1.13.3 → alembic-1.14.0}/alembic/testing/suite/test_autogen_identity.py +0 -0
  121. {alembic-1.13.3 → alembic-1.14.0}/alembic/testing/suite/test_environment.py +0 -0
  122. {alembic-1.13.3 → alembic-1.14.0}/alembic/testing/suite/test_op.py +0 -0
  123. {alembic-1.13.3 → alembic-1.14.0}/alembic/testing/util.py +0 -0
  124. {alembic-1.13.3 → alembic-1.14.0}/alembic/testing/warnings.py +0 -0
  125. {alembic-1.13.3 → alembic-1.14.0}/alembic/util/__init__.py +0 -0
  126. {alembic-1.13.3 → alembic-1.14.0}/alembic/util/compat.py +0 -0
  127. {alembic-1.13.3 → alembic-1.14.0}/alembic/util/editor.py +0 -0
  128. {alembic-1.13.3 → alembic-1.14.0}/alembic/util/exc.py +0 -0
  129. {alembic-1.13.3 → alembic-1.14.0}/alembic/util/langhelpers.py +0 -0
  130. {alembic-1.13.3 → alembic-1.14.0}/alembic/util/messaging.py +0 -0
  131. {alembic-1.13.3 → alembic-1.14.0}/alembic/util/pyfiles.py +0 -0
  132. {alembic-1.13.3 → alembic-1.14.0}/alembic/util/sqla_compat.py +0 -0
  133. {alembic-1.13.3 → alembic-1.14.0}/alembic.egg-info/dependency_links.txt +0 -0
  134. {alembic-1.13.3 → alembic-1.14.0}/alembic.egg-info/entry_points.txt +0 -0
  135. {alembic-1.13.3 → alembic-1.14.0}/alembic.egg-info/not-zip-safe +0 -0
  136. {alembic-1.13.3 → alembic-1.14.0}/alembic.egg-info/requires.txt +0 -0
  137. {alembic-1.13.3 → alembic-1.14.0}/alembic.egg-info/top_level.txt +0 -0
  138. {alembic-1.13.3 → alembic-1.14.0}/docs/_images/api_overview.png +0 -0
  139. {alembic-1.13.3 → alembic-1.14.0}/docs/_sources/api/autogenerate.rst +0 -0
  140. {alembic-1.13.3 → alembic-1.14.0}/docs/_sources/api/commands.rst +0 -0
  141. {alembic-1.13.3 → alembic-1.14.0}/docs/_sources/api/config.rst +0 -0
  142. {alembic-1.13.3 → alembic-1.14.0}/docs/_sources/api/ddl.rst +0 -0
  143. {alembic-1.13.3 → alembic-1.14.0}/docs/_sources/api/index.rst +0 -0
  144. {alembic-1.13.3 → alembic-1.14.0}/docs/_sources/api/operations.rst +0 -0
  145. {alembic-1.13.3 → alembic-1.14.0}/docs/_sources/api/overview.rst +0 -0
  146. {alembic-1.13.3 → alembic-1.14.0}/docs/_sources/api/runtime.rst +0 -0
  147. {alembic-1.13.3 → alembic-1.14.0}/docs/_sources/api/script.rst +0 -0
  148. {alembic-1.13.3 → alembic-1.14.0}/docs/_sources/autogenerate.rst +0 -0
  149. {alembic-1.13.3 → alembic-1.14.0}/docs/_sources/batch.rst +0 -0
  150. {alembic-1.13.3 → alembic-1.14.0}/docs/_sources/branches.rst +0 -0
  151. {alembic-1.13.3 → alembic-1.14.0}/docs/_sources/cookbook.rst +0 -0
  152. {alembic-1.13.3 → alembic-1.14.0}/docs/_sources/front.rst +0 -0
  153. {alembic-1.13.3 → alembic-1.14.0}/docs/_sources/index.rst +0 -0
  154. {alembic-1.13.3 → alembic-1.14.0}/docs/_sources/naming.rst +0 -0
  155. {alembic-1.13.3 → alembic-1.14.0}/docs/_sources/offline.rst +0 -0
  156. {alembic-1.13.3 → alembic-1.14.0}/docs/_sources/ops.rst +0 -0
  157. {alembic-1.13.3 → alembic-1.14.0}/docs/_static/changelog.css +0 -0
  158. {alembic-1.13.3 → alembic-1.14.0}/docs/_static/clipboard.min.js +0 -0
  159. {alembic-1.13.3 → alembic-1.14.0}/docs/_static/copybutton.css +0 -0
  160. {alembic-1.13.3 → alembic-1.14.0}/docs/_static/copybutton.js +0 -0
  161. {alembic-1.13.3 → alembic-1.14.0}/docs/_static/copybutton_funcs.js +0 -0
  162. {alembic-1.13.3 → alembic-1.14.0}/docs/_static/file.png +0 -0
  163. {alembic-1.13.3 → alembic-1.14.0}/docs/_static/images/logo_colab.png +0 -0
  164. {alembic-1.13.3 → alembic-1.14.0}/docs/_static/minus.png +0 -0
  165. {alembic-1.13.3 → alembic-1.14.0}/docs/_static/nature_override.css +0 -0
  166. {alembic-1.13.3 → alembic-1.14.0}/docs/_static/plus.png +0 -0
  167. {alembic-1.13.3 → alembic-1.14.0}/docs/_static/pygments.css +0 -0
  168. {alembic-1.13.3 → alembic-1.14.0}/docs/_static/sbt-webpack-macros.html +0 -0
  169. {alembic-1.13.3 → alembic-1.14.0}/docs/_static/scripts/bootstrap.js +0 -0
  170. {alembic-1.13.3 → alembic-1.14.0}/docs/_static/scripts/bootstrap.js.LICENSE.txt +0 -0
  171. /alembic-1.13.3/docs/_static/vendor/fontawesome/6.5.2/js/all.min.js.LICENSE.txt → /alembic-1.14.0/docs/_static/scripts/fontawesome.js.LICENSE.txt +0 -0
  172. {alembic-1.13.3 → alembic-1.14.0}/docs/_static/scripts/sphinx-book-theme.js +0 -0
  173. {alembic-1.13.3 → alembic-1.14.0}/docs/_static/site_custom_css.css +0 -0
  174. {alembic-1.13.3 → alembic-1.14.0}/docs/_static/sphinx_highlight.js +0 -0
  175. {alembic-1.13.3 → alembic-1.14.0}/docs/_static/sphinx_paramlinks.css +0 -0
  176. {alembic-1.13.3 → alembic-1.14.0}/docs/_static/styles/sphinx-book-theme.css +0 -0
  177. {alembic-1.13.3 → alembic-1.14.0}/docs/_static/styles/theme.css +0 -0
  178. {alembic-1.13.3 → alembic-1.14.0}/docs/build/Makefile +0 -0
  179. {alembic-1.13.3 → alembic-1.14.0}/docs/build/_static/nature_override.css +0 -0
  180. {alembic-1.13.3 → alembic-1.14.0}/docs/build/_static/site_custom_css.css +0 -0
  181. {alembic-1.13.3 → alembic-1.14.0}/docs/build/_templates/site_custom_sidebars.html +0 -0
  182. {alembic-1.13.3 → alembic-1.14.0}/docs/build/api/api_overview.png +0 -0
  183. {alembic-1.13.3 → alembic-1.14.0}/docs/build/api/autogenerate.rst +0 -0
  184. {alembic-1.13.3 → alembic-1.14.0}/docs/build/api/commands.rst +0 -0
  185. {alembic-1.13.3 → alembic-1.14.0}/docs/build/api/config.rst +0 -0
  186. {alembic-1.13.3 → alembic-1.14.0}/docs/build/api/ddl.rst +0 -0
  187. {alembic-1.13.3 → alembic-1.14.0}/docs/build/api/index.rst +0 -0
  188. {alembic-1.13.3 → alembic-1.14.0}/docs/build/api/operations.rst +0 -0
  189. {alembic-1.13.3 → alembic-1.14.0}/docs/build/api/overview.rst +0 -0
  190. {alembic-1.13.3 → alembic-1.14.0}/docs/build/api/runtime.rst +0 -0
  191. {alembic-1.13.3 → alembic-1.14.0}/docs/build/api/script.rst +0 -0
  192. {alembic-1.13.3 → alembic-1.14.0}/docs/build/autogenerate.rst +0 -0
  193. {alembic-1.13.3 → alembic-1.14.0}/docs/build/batch.rst +0 -0
  194. {alembic-1.13.3 → alembic-1.14.0}/docs/build/branches.rst +0 -0
  195. {alembic-1.13.3 → alembic-1.14.0}/docs/build/cookbook.rst +0 -0
  196. {alembic-1.13.3 → alembic-1.14.0}/docs/build/front.rst +0 -0
  197. {alembic-1.13.3 → alembic-1.14.0}/docs/build/index.rst +0 -0
  198. {alembic-1.13.3 → alembic-1.14.0}/docs/build/naming.rst +0 -0
  199. {alembic-1.13.3 → alembic-1.14.0}/docs/build/offline.rst +0 -0
  200. {alembic-1.13.3 → alembic-1.14.0}/docs/build/ops.rst +0 -0
  201. {alembic-1.13.3 → alembic-1.14.0}/docs/build/requirements.txt +0 -0
  202. {alembic-1.13.3 → alembic-1.14.0}/docs/build/unreleased/README.txt +0 -0
  203. {alembic-1.13.3 → alembic-1.14.0}/pyproject.toml +0 -0
  204. {alembic-1.13.3 → alembic-1.14.0}/setup.cfg +0 -0
  205. {alembic-1.13.3 → alembic-1.14.0}/setup.py +0 -0
  206. {alembic-1.13.3 → alembic-1.14.0}/tests/__init__.py +0 -0
  207. {alembic-1.13.3 → alembic-1.14.0}/tests/_large_map.py +0 -0
  208. {alembic-1.13.3 → alembic-1.14.0}/tests/conftest.py +0 -0
  209. {alembic-1.13.3 → alembic-1.14.0}/tests/requirements.py +0 -0
  210. {alembic-1.13.3 → alembic-1.14.0}/tests/test_autogen_composition.py +0 -0
  211. {alembic-1.13.3 → alembic-1.14.0}/tests/test_autogen_diffs.py +0 -0
  212. {alembic-1.13.3 → alembic-1.14.0}/tests/test_autogen_indexes.py +0 -0
  213. {alembic-1.13.3 → alembic-1.14.0}/tests/test_autogen_render.py +0 -0
  214. {alembic-1.13.3 → alembic-1.14.0}/tests/test_batch.py +0 -0
  215. {alembic-1.13.3 → alembic-1.14.0}/tests/test_bulk_insert.py +0 -0
  216. {alembic-1.13.3 → alembic-1.14.0}/tests/test_command.py +0 -0
  217. {alembic-1.13.3 → alembic-1.14.0}/tests/test_config.py +0 -0
  218. {alembic-1.13.3 → alembic-1.14.0}/tests/test_editor.py +0 -0
  219. {alembic-1.13.3 → alembic-1.14.0}/tests/test_environment.py +0 -0
  220. {alembic-1.13.3 → alembic-1.14.0}/tests/test_external_dialect.py +0 -0
  221. {alembic-1.13.3 → alembic-1.14.0}/tests/test_impl.py +0 -0
  222. {alembic-1.13.3 → alembic-1.14.0}/tests/test_messaging.py +0 -0
  223. {alembic-1.13.3 → alembic-1.14.0}/tests/test_mssql.py +0 -0
  224. {alembic-1.13.3 → alembic-1.14.0}/tests/test_mysql.py +0 -0
  225. {alembic-1.13.3 → alembic-1.14.0}/tests/test_offline_environment.py +0 -0
  226. {alembic-1.13.3 → alembic-1.14.0}/tests/test_op.py +0 -0
  227. {alembic-1.13.3 → alembic-1.14.0}/tests/test_op_naming_convention.py +0 -0
  228. {alembic-1.13.3 → alembic-1.14.0}/tests/test_oracle.py +0 -0
  229. {alembic-1.13.3 → alembic-1.14.0}/tests/test_post_write.py +0 -0
  230. {alembic-1.13.3 → alembic-1.14.0}/tests/test_postgresql.py +0 -0
  231. {alembic-1.13.3 → alembic-1.14.0}/tests/test_revision.py +0 -0
  232. {alembic-1.13.3 → alembic-1.14.0}/tests/test_script_consumption.py +0 -0
  233. {alembic-1.13.3 → alembic-1.14.0}/tests/test_script_production.py +0 -0
  234. {alembic-1.13.3 → alembic-1.14.0}/tests/test_sqlite.py +0 -0
  235. {alembic-1.13.3 → alembic-1.14.0}/tests/test_stubs.py +0 -0
  236. {alembic-1.13.3 → alembic-1.14.0}/tests/test_suite.py +0 -0
  237. {alembic-1.13.3 → alembic-1.14.0}/tests/test_version_traversal.py +0 -0
  238. {alembic-1.13.3 → alembic-1.14.0}/tools/write_pyi.py +0 -0
  239. {alembic-1.13.3 → alembic-1.14.0}/tox.ini +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: alembic
3
- Version: 1.13.3
3
+ Version: 1.14.0
4
4
  Summary: A database migration tool for SQLAlchemy.
5
5
  Home-page: https://alembic.sqlalchemy.org
6
6
  Author: Mike Bayer
@@ -1,4 +1,4 @@
1
1
  from . import context
2
2
  from . import op
3
3
 
4
- __version__ = "1.13.3"
4
+ __version__ = "1.14.0"
@@ -175,7 +175,7 @@ class ColumnComment(AlterColumn):
175
175
  self.comment = comment
176
176
 
177
177
 
178
- @compiles(RenameTable) # type: ignore[misc]
178
+ @compiles(RenameTable)
179
179
  def visit_rename_table(
180
180
  element: RenameTable, compiler: DDLCompiler, **kw
181
181
  ) -> str:
@@ -185,7 +185,7 @@ def visit_rename_table(
185
185
  )
186
186
 
187
187
 
188
- @compiles(AddColumn) # type: ignore[misc]
188
+ @compiles(AddColumn)
189
189
  def visit_add_column(element: AddColumn, compiler: DDLCompiler, **kw) -> str:
190
190
  return "%s %s" % (
191
191
  alter_table(compiler, element.table_name, element.schema),
@@ -193,7 +193,7 @@ def visit_add_column(element: AddColumn, compiler: DDLCompiler, **kw) -> str:
193
193
  )
194
194
 
195
195
 
196
- @compiles(DropColumn) # type: ignore[misc]
196
+ @compiles(DropColumn)
197
197
  def visit_drop_column(element: DropColumn, compiler: DDLCompiler, **kw) -> str:
198
198
  return "%s %s" % (
199
199
  alter_table(compiler, element.table_name, element.schema),
@@ -201,7 +201,7 @@ def visit_drop_column(element: DropColumn, compiler: DDLCompiler, **kw) -> str:
201
201
  )
202
202
 
203
203
 
204
- @compiles(ColumnNullable) # type: ignore[misc]
204
+ @compiles(ColumnNullable)
205
205
  def visit_column_nullable(
206
206
  element: ColumnNullable, compiler: DDLCompiler, **kw
207
207
  ) -> str:
@@ -212,7 +212,7 @@ def visit_column_nullable(
212
212
  )
213
213
 
214
214
 
215
- @compiles(ColumnType) # type: ignore[misc]
215
+ @compiles(ColumnType)
216
216
  def visit_column_type(element: ColumnType, compiler: DDLCompiler, **kw) -> str:
217
217
  return "%s %s %s" % (
218
218
  alter_table(compiler, element.table_name, element.schema),
@@ -221,7 +221,7 @@ def visit_column_type(element: ColumnType, compiler: DDLCompiler, **kw) -> str:
221
221
  )
222
222
 
223
223
 
224
- @compiles(ColumnName) # type: ignore[misc]
224
+ @compiles(ColumnName)
225
225
  def visit_column_name(element: ColumnName, compiler: DDLCompiler, **kw) -> str:
226
226
  return "%s RENAME %s TO %s" % (
227
227
  alter_table(compiler, element.table_name, element.schema),
@@ -230,7 +230,7 @@ def visit_column_name(element: ColumnName, compiler: DDLCompiler, **kw) -> str:
230
230
  )
231
231
 
232
232
 
233
- @compiles(ColumnDefault) # type: ignore[misc]
233
+ @compiles(ColumnDefault)
234
234
  def visit_column_default(
235
235
  element: ColumnDefault, compiler: DDLCompiler, **kw
236
236
  ) -> str:
@@ -245,7 +245,7 @@ def visit_column_default(
245
245
  )
246
246
 
247
247
 
248
- @compiles(ComputedColumnDefault) # type: ignore[misc]
248
+ @compiles(ComputedColumnDefault)
249
249
  def visit_computed_column(
250
250
  element: ComputedColumnDefault, compiler: DDLCompiler, **kw
251
251
  ):
@@ -255,7 +255,7 @@ def visit_computed_column(
255
255
  )
256
256
 
257
257
 
258
- @compiles(IdentityColumnDefault) # type: ignore[misc]
258
+ @compiles(IdentityColumnDefault)
259
259
  def visit_identity_column(
260
260
  element: IdentityColumnDefault, compiler: DDLCompiler, **kw
261
261
  ):
@@ -21,7 +21,12 @@ from typing import TYPE_CHECKING
21
21
  from typing import Union
22
22
 
23
23
  from sqlalchemy import cast
24
+ from sqlalchemy import Column
25
+ from sqlalchemy import MetaData
26
+ from sqlalchemy import PrimaryKeyConstraint
24
27
  from sqlalchemy import schema
28
+ from sqlalchemy import String
29
+ from sqlalchemy import Table
25
30
  from sqlalchemy import text
26
31
 
27
32
  from . import _autogen
@@ -43,11 +48,9 @@ if TYPE_CHECKING:
43
48
  from sqlalchemy.sql import Executable
44
49
  from sqlalchemy.sql.elements import ColumnElement
45
50
  from sqlalchemy.sql.elements import quoted_name
46
- from sqlalchemy.sql.schema import Column
47
51
  from sqlalchemy.sql.schema import Constraint
48
52
  from sqlalchemy.sql.schema import ForeignKeyConstraint
49
53
  from sqlalchemy.sql.schema import Index
50
- from sqlalchemy.sql.schema import Table
51
54
  from sqlalchemy.sql.schema import UniqueConstraint
52
55
  from sqlalchemy.sql.selectable import TableClause
53
56
  from sqlalchemy.sql.type_api import TypeEngine
@@ -136,6 +139,40 @@ class DefaultImpl(metaclass=ImplMeta):
136
139
  self.output_buffer.write(text + "\n\n")
137
140
  self.output_buffer.flush()
138
141
 
142
+ def version_table_impl(
143
+ self,
144
+ *,
145
+ version_table: str,
146
+ version_table_schema: Optional[str],
147
+ version_table_pk: bool,
148
+ **kw: Any,
149
+ ) -> Table:
150
+ """Generate a :class:`.Table` object which will be used as the
151
+ structure for the Alembic version table.
152
+
153
+ Third party dialects may override this hook to provide an alternate
154
+ structure for this :class:`.Table`; requirements are only that it
155
+ be named based on the ``version_table`` parameter and contains
156
+ at least a single string-holding column named ``version_num``.
157
+
158
+ .. versionadded:: 1.14
159
+
160
+ """
161
+ vt = Table(
162
+ version_table,
163
+ MetaData(),
164
+ Column("version_num", String(32), nullable=False),
165
+ schema=version_table_schema,
166
+ )
167
+ if version_table_pk:
168
+ vt.append_constraint(
169
+ PrimaryKeyConstraint(
170
+ "version_num", name=f"{version_table}_pkc"
171
+ )
172
+ )
173
+
174
+ return vt
175
+
139
176
  def requires_recreate_in_batch(
140
177
  self, batch_op: BatchOperationsImpl
141
178
  ) -> bool:
@@ -24,10 +24,6 @@ from typing import Union
24
24
 
25
25
  from sqlalchemy import Column
26
26
  from sqlalchemy import literal_column
27
- from sqlalchemy import MetaData
28
- from sqlalchemy import PrimaryKeyConstraint
29
- from sqlalchemy import String
30
- from sqlalchemy import Table
31
27
  from sqlalchemy.engine import Engine
32
28
  from sqlalchemy.engine import url as sqla_url
33
29
  from sqlalchemy.engine.strategies import MockEngineStrategy
@@ -36,6 +32,7 @@ from .. import ddl
36
32
  from .. import util
37
33
  from ..util import sqla_compat
38
34
  from ..util.compat import EncodedIO
35
+ from ..util.sqla_compat import _select
39
36
 
40
37
  if TYPE_CHECKING:
41
38
  from sqlalchemy.engine import Dialect
@@ -190,18 +187,6 @@ class MigrationContext:
190
187
  self.version_table_schema = version_table_schema = opts.get(
191
188
  "version_table_schema", None
192
189
  )
193
- self._version = Table(
194
- version_table,
195
- MetaData(),
196
- Column("version_num", String(32), nullable=False),
197
- schema=version_table_schema,
198
- )
199
- if opts.get("version_table_pk", True):
200
- self._version.append_constraint(
201
- PrimaryKeyConstraint(
202
- "version_num", name="%s_pkc" % version_table
203
- )
204
- )
205
190
 
206
191
  self._start_from_rev: Optional[str] = opts.get("starting_rev")
207
192
  self.impl = ddl.DefaultImpl.get_by_dialect(dialect)(
@@ -212,6 +197,13 @@ class MigrationContext:
212
197
  self.output_buffer,
213
198
  opts,
214
199
  )
200
+
201
+ self._version = self.impl.version_table_impl(
202
+ version_table=version_table,
203
+ version_table_schema=version_table_schema,
204
+ version_table_pk=opts.get("version_table_pk", True),
205
+ )
206
+
215
207
  log.info("Context impl %s.", self.impl.__class__.__name__)
216
208
  if self.as_sql:
217
209
  log.info("Generating static SQL")
@@ -540,7 +532,10 @@ class MigrationContext:
540
532
  return ()
541
533
  assert self.connection is not None
542
534
  return tuple(
543
- row[0] for row in self.connection.execute(self._version.select())
535
+ row[0]
536
+ for row in self.connection.execute(
537
+ _select(self._version.c.version_num)
538
+ )
544
539
  )
545
540
 
546
541
  def _ensure_version_table(self, purge: bool = False) -> None:
@@ -90,12 +90,12 @@ keys = console
90
90
  keys = generic
91
91
 
92
92
  [logger_root]
93
- level = WARN
93
+ level = WARNING
94
94
  handlers = console
95
95
  qualname =
96
96
 
97
97
  [logger_sqlalchemy]
98
- level = WARN
98
+ level = WARNING
99
99
  handlers =
100
100
  qualname = sqlalchemy.engine
101
101
 
@@ -92,12 +92,12 @@ keys = console
92
92
  keys = generic
93
93
 
94
94
  [logger_root]
95
- level = WARN
95
+ level = WARNING
96
96
  handlers = console
97
97
  qualname =
98
98
 
99
99
  [logger_sqlalchemy]
100
- level = WARN
100
+ level = WARNING
101
101
  handlers =
102
102
  qualname = sqlalchemy.engine
103
103
 
@@ -97,12 +97,12 @@ keys = console
97
97
  keys = generic
98
98
 
99
99
  [logger_root]
100
- level = WARN
100
+ level = WARNING
101
101
  handlers = console
102
102
  qualname =
103
103
 
104
104
  [logger_sqlalchemy]
105
- level = WARN
105
+ level = WARNING
106
106
  handlers =
107
107
  qualname = sqlalchemy.engine
108
108
 
@@ -118,7 +118,7 @@ keys = root,sqlalchemy
118
118
  keys = console
119
119
 
120
120
  [logger_root]
121
- level = WARN
121
+ level = WARNING
122
122
  handlers = console
123
123
  qualname =
124
124
 
@@ -171,7 +171,7 @@ keys = root
171
171
  keys = console
172
172
 
173
173
  [logger_root]
174
- level = WARN
174
+ level = WARNING
175
175
  handlers = console
176
176
  qualname =
177
177
 
@@ -216,7 +216,7 @@ keys = root
216
216
  keys = console
217
217
 
218
218
  [logger_root]
219
- level = WARN
219
+ level = WARNING
220
220
  handlers = console
221
221
  qualname =
222
222
 
@@ -497,7 +497,7 @@ keys = root
497
497
  keys = console
498
498
 
499
499
  [logger_root]
500
- level = WARN
500
+ level = WARNING
501
501
  handlers = console
502
502
  qualname =
503
503
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: alembic
3
- Version: 1.13.3
3
+ Version: 1.14.0
4
4
  Summary: A database migration tool for SQLAlchemy.
5
5
  Home-page: https://alembic.sqlalchemy.org
6
6
  Author: Mike Bayer
@@ -150,16 +150,13 @@ docs/_static/webpack-macros.html
150
150
  docs/_static/images/logo_colab.png
151
151
  docs/_static/scripts/bootstrap.js
152
152
  docs/_static/scripts/bootstrap.js.LICENSE.txt
153
+ docs/_static/scripts/fontawesome.js
154
+ docs/_static/scripts/fontawesome.js.LICENSE.txt
153
155
  docs/_static/scripts/pydata-sphinx-theme.js
154
156
  docs/_static/scripts/sphinx-book-theme.js
155
- docs/_static/styles/bootstrap.css
156
157
  docs/_static/styles/pydata-sphinx-theme.css
157
158
  docs/_static/styles/sphinx-book-theme.css
158
159
  docs/_static/styles/theme.css
159
- docs/_static/vendor/fontawesome/6.5.2/LICENSE.txt
160
- docs/_static/vendor/fontawesome/6.5.2/css/all.min.css
161
- docs/_static/vendor/fontawesome/6.5.2/js/all.min.js
162
- docs/_static/vendor/fontawesome/6.5.2/js/all.min.js.LICENSE.txt
163
160
  docs/api/autogenerate.html
164
161
  docs/api/commands.html
165
162
  docs/api/config.html
@@ -3,6 +3,23 @@
3
3
  Changelog
4
4
  ==========
5
5
 
6
+ .. changelog::
7
+ :version: 1.14.0
8
+ :released: November 4, 2024
9
+
10
+ .. change::
11
+ :tags: usecase, runtime
12
+ :tickets: 1560
13
+
14
+ Added a new hook to the :class:`.DefaultImpl`
15
+ :meth:`.DefaultImpl.version_table_impl`. This allows third party dialects
16
+ to define the exact structure of the alembic_version table, to include use
17
+ cases where the table requires special directives and/or additional columns
18
+ so that it may function correctly on a particular backend. This is not
19
+ intended as a user-expansion hook, only a dialect implementation hook to
20
+ produce a working alembic_version table. Pull request courtesy Maciek
21
+ Bryński.
22
+
6
23
  .. changelog::
7
24
  :version: 1.13.3
8
25
  :released: September 23, 2024
@@ -217,12 +217,12 @@ The file generated with the "generic" configuration looks like::
217
217
  keys = generic
218
218
 
219
219
  [logger_root]
220
- level = WARN
220
+ level = WARNING
221
221
  handlers = console
222
222
  qualname =
223
223
 
224
224
  [logger_sqlalchemy]
225
- level = WARN
225
+ level = WARNING
226
226
  handlers =
227
227
  qualname = sqlalchemy.engine
228
228
 
@@ -1,12 +1,5 @@
1
1
  /*
2
- * basic.css
3
- * ~~~~~~~~~
4
- *
5
2
  * Sphinx stylesheet -- basic theme.
6
- *
7
- * :copyright: Copyright 2007-2024 by the Sphinx team, see AUTHORS.
8
- * :license: BSD, see LICENSE for details.
9
- *
10
3
  */
11
4
 
12
5
  /* -- main layout ----------------------------------------------------------- */
@@ -115,15 +108,11 @@ img {
115
108
  /* -- search page ----------------------------------------------------------- */
116
109
 
117
110
  ul.search {
118
- margin: 10px 0 0 20px;
119
- padding: 0;
111
+ margin-top: 10px;
120
112
  }
121
113
 
122
114
  ul.search li {
123
- padding: 5px 0 5px 20px;
124
- background-image: url(file.png);
125
- background-repeat: no-repeat;
126
- background-position: 0 7px;
115
+ padding: 5px 0;
127
116
  }
128
117
 
129
118
  ul.search li a {
@@ -1,12 +1,5 @@
1
1
  /*
2
- * doctools.js
3
- * ~~~~~~~~~~~
4
- *
5
2
  * Base JavaScript utilities for all Sphinx HTML documentation.
6
- *
7
- * :copyright: Copyright 2007-2024 by the Sphinx team, see AUTHORS.
8
- * :license: BSD, see LICENSE for details.
9
- *
10
3
  */
11
4
  "use strict";
12
5
 
@@ -1,5 +1,5 @@
1
1
  const DOCUMENTATION_OPTIONS = {
2
- VERSION: '1.13.3',
2
+ VERSION: '1.14.0',
3
3
  LANGUAGE: 'en',
4
4
  COLLAPSE_INDEX: false,
5
5
  BUILDER: 'html',
@@ -1,13 +1,6 @@
1
1
  /*
2
- * language_data.js
3
- * ~~~~~~~~~~~~~~~~
4
- *
5
2
  * This script contains the language-specific data used by searchtools.js,
6
3
  * namely the list of stopwords, stemmer, scorer and splitter.
7
- *
8
- * :copyright: Copyright 2007-2024 by the Sphinx team, see AUTHORS.
9
- * :license: BSD, see LICENSE for details.
10
- *
11
4
  */
12
5
 
13
6
  var stopwords = ["a", "and", "are", "as", "at", "be", "but", "by", "for", "if", "in", "into", "is", "it", "near", "no", "not", "of", "on", "or", "such", "that", "the", "their", "then", "there", "these", "they", "this", "to", "was", "will", "with"];