SQLAlchemy 2.0.36__cp313-cp313-win_amd64.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.
Files changed (273) hide show
  1. SQLAlchemy-2.0.36.dist-info/LICENSE +19 -0
  2. SQLAlchemy-2.0.36.dist-info/METADATA +243 -0
  3. SQLAlchemy-2.0.36.dist-info/RECORD +273 -0
  4. SQLAlchemy-2.0.36.dist-info/WHEEL +5 -0
  5. SQLAlchemy-2.0.36.dist-info/top_level.txt +1 -0
  6. sqlalchemy/__init__.py +294 -0
  7. sqlalchemy/connectors/__init__.py +18 -0
  8. sqlalchemy/connectors/aioodbc.py +174 -0
  9. sqlalchemy/connectors/asyncio.py +213 -0
  10. sqlalchemy/connectors/pyodbc.py +249 -0
  11. sqlalchemy/cyextension/__init__.py +6 -0
  12. sqlalchemy/cyextension/collections.cp313-win_amd64.pyd +0 -0
  13. sqlalchemy/cyextension/collections.pyx +409 -0
  14. sqlalchemy/cyextension/immutabledict.cp313-win_amd64.pyd +0 -0
  15. sqlalchemy/cyextension/immutabledict.pxd +8 -0
  16. sqlalchemy/cyextension/immutabledict.pyx +133 -0
  17. sqlalchemy/cyextension/processors.cp313-win_amd64.pyd +0 -0
  18. sqlalchemy/cyextension/processors.pyx +68 -0
  19. sqlalchemy/cyextension/resultproxy.cp313-win_amd64.pyd +0 -0
  20. sqlalchemy/cyextension/resultproxy.pyx +102 -0
  21. sqlalchemy/cyextension/util.cp313-win_amd64.pyd +0 -0
  22. sqlalchemy/cyextension/util.pyx +91 -0
  23. sqlalchemy/dialects/__init__.py +61 -0
  24. sqlalchemy/dialects/_typing.py +25 -0
  25. sqlalchemy/dialects/mssql/__init__.py +88 -0
  26. sqlalchemy/dialects/mssql/aioodbc.py +64 -0
  27. sqlalchemy/dialects/mssql/base.py +4010 -0
  28. sqlalchemy/dialects/mssql/information_schema.py +254 -0
  29. sqlalchemy/dialects/mssql/json.py +133 -0
  30. sqlalchemy/dialects/mssql/provision.py +162 -0
  31. sqlalchemy/dialects/mssql/pymssql.py +126 -0
  32. sqlalchemy/dialects/mssql/pyodbc.py +745 -0
  33. sqlalchemy/dialects/mysql/__init__.py +101 -0
  34. sqlalchemy/dialects/mysql/aiomysql.py +333 -0
  35. sqlalchemy/dialects/mysql/asyncmy.py +337 -0
  36. sqlalchemy/dialects/mysql/base.py +3494 -0
  37. sqlalchemy/dialects/mysql/cymysql.py +84 -0
  38. sqlalchemy/dialects/mysql/dml.py +219 -0
  39. sqlalchemy/dialects/mysql/enumerated.py +244 -0
  40. sqlalchemy/dialects/mysql/expression.py +141 -0
  41. sqlalchemy/dialects/mysql/json.py +81 -0
  42. sqlalchemy/dialects/mysql/mariadb.py +32 -0
  43. sqlalchemy/dialects/mysql/mariadbconnector.py +277 -0
  44. sqlalchemy/dialects/mysql/mysqlconnector.py +180 -0
  45. sqlalchemy/dialects/mysql/mysqldb.py +303 -0
  46. sqlalchemy/dialects/mysql/provision.py +110 -0
  47. sqlalchemy/dialects/mysql/pymysql.py +137 -0
  48. sqlalchemy/dialects/mysql/pyodbc.py +138 -0
  49. sqlalchemy/dialects/mysql/reflection.py +677 -0
  50. sqlalchemy/dialects/mysql/reserved_words.py +571 -0
  51. sqlalchemy/dialects/mysql/types.py +774 -0
  52. sqlalchemy/dialects/oracle/__init__.py +67 -0
  53. sqlalchemy/dialects/oracle/base.py +3271 -0
  54. sqlalchemy/dialects/oracle/cx_oracle.py +1483 -0
  55. sqlalchemy/dialects/oracle/dictionary.py +507 -0
  56. sqlalchemy/dialects/oracle/oracledb.py +431 -0
  57. sqlalchemy/dialects/oracle/provision.py +220 -0
  58. sqlalchemy/dialects/oracle/types.py +287 -0
  59. sqlalchemy/dialects/postgresql/__init__.py +167 -0
  60. sqlalchemy/dialects/postgresql/_psycopg_common.py +187 -0
  61. sqlalchemy/dialects/postgresql/array.py +425 -0
  62. sqlalchemy/dialects/postgresql/asyncpg.py +1274 -0
  63. sqlalchemy/dialects/postgresql/base.py +5008 -0
  64. sqlalchemy/dialects/postgresql/dml.py +310 -0
  65. sqlalchemy/dialects/postgresql/ext.py +496 -0
  66. sqlalchemy/dialects/postgresql/hstore.py +397 -0
  67. sqlalchemy/dialects/postgresql/json.py +333 -0
  68. sqlalchemy/dialects/postgresql/named_types.py +509 -0
  69. sqlalchemy/dialects/postgresql/operators.py +129 -0
  70. sqlalchemy/dialects/postgresql/pg8000.py +662 -0
  71. sqlalchemy/dialects/postgresql/pg_catalog.py +300 -0
  72. sqlalchemy/dialects/postgresql/provision.py +175 -0
  73. sqlalchemy/dialects/postgresql/psycopg.py +772 -0
  74. sqlalchemy/dialects/postgresql/psycopg2.py +886 -0
  75. sqlalchemy/dialects/postgresql/psycopg2cffi.py +61 -0
  76. sqlalchemy/dialects/postgresql/ranges.py +1029 -0
  77. sqlalchemy/dialects/postgresql/types.py +303 -0
  78. sqlalchemy/dialects/sqlite/__init__.py +57 -0
  79. sqlalchemy/dialects/sqlite/aiosqlite.py +396 -0
  80. sqlalchemy/dialects/sqlite/base.py +2805 -0
  81. sqlalchemy/dialects/sqlite/dml.py +240 -0
  82. sqlalchemy/dialects/sqlite/json.py +92 -0
  83. sqlalchemy/dialects/sqlite/provision.py +198 -0
  84. sqlalchemy/dialects/sqlite/pysqlcipher.py +155 -0
  85. sqlalchemy/dialects/sqlite/pysqlite.py +756 -0
  86. sqlalchemy/dialects/type_migration_guidelines.txt +145 -0
  87. sqlalchemy/engine/__init__.py +62 -0
  88. sqlalchemy/engine/_py_processors.py +136 -0
  89. sqlalchemy/engine/_py_row.py +128 -0
  90. sqlalchemy/engine/_py_util.py +74 -0
  91. sqlalchemy/engine/base.py +3375 -0
  92. sqlalchemy/engine/characteristics.py +155 -0
  93. sqlalchemy/engine/create.py +875 -0
  94. sqlalchemy/engine/cursor.py +2181 -0
  95. sqlalchemy/engine/default.py +2365 -0
  96. sqlalchemy/engine/events.py +951 -0
  97. sqlalchemy/engine/interfaces.py +3403 -0
  98. sqlalchemy/engine/mock.py +131 -0
  99. sqlalchemy/engine/processors.py +61 -0
  100. sqlalchemy/engine/reflection.py +2098 -0
  101. sqlalchemy/engine/result.py +2382 -0
  102. sqlalchemy/engine/row.py +401 -0
  103. sqlalchemy/engine/strategies.py +19 -0
  104. sqlalchemy/engine/url.py +910 -0
  105. sqlalchemy/engine/util.py +167 -0
  106. sqlalchemy/event/__init__.py +25 -0
  107. sqlalchemy/event/api.py +225 -0
  108. sqlalchemy/event/attr.py +655 -0
  109. sqlalchemy/event/base.py +470 -0
  110. sqlalchemy/event/legacy.py +246 -0
  111. sqlalchemy/event/registry.py +386 -0
  112. sqlalchemy/events.py +17 -0
  113. sqlalchemy/exc.py +830 -0
  114. sqlalchemy/ext/__init__.py +11 -0
  115. sqlalchemy/ext/associationproxy.py +2013 -0
  116. sqlalchemy/ext/asyncio/__init__.py +25 -0
  117. sqlalchemy/ext/asyncio/base.py +279 -0
  118. sqlalchemy/ext/asyncio/engine.py +1466 -0
  119. sqlalchemy/ext/asyncio/exc.py +21 -0
  120. sqlalchemy/ext/asyncio/result.py +961 -0
  121. sqlalchemy/ext/asyncio/scoping.py +1614 -0
  122. sqlalchemy/ext/asyncio/session.py +1936 -0
  123. sqlalchemy/ext/automap.py +1691 -0
  124. sqlalchemy/ext/baked.py +574 -0
  125. sqlalchemy/ext/compiler.py +570 -0
  126. sqlalchemy/ext/declarative/__init__.py +65 -0
  127. sqlalchemy/ext/declarative/extensions.py +548 -0
  128. sqlalchemy/ext/horizontal_shard.py +481 -0
  129. sqlalchemy/ext/hybrid.py +1514 -0
  130. sqlalchemy/ext/indexable.py +341 -0
  131. sqlalchemy/ext/instrumentation.py +450 -0
  132. sqlalchemy/ext/mutable.py +1073 -0
  133. sqlalchemy/ext/mypy/__init__.py +6 -0
  134. sqlalchemy/ext/mypy/apply.py +320 -0
  135. sqlalchemy/ext/mypy/decl_class.py +515 -0
  136. sqlalchemy/ext/mypy/infer.py +590 -0
  137. sqlalchemy/ext/mypy/names.py +335 -0
  138. sqlalchemy/ext/mypy/plugin.py +303 -0
  139. sqlalchemy/ext/mypy/util.py +357 -0
  140. sqlalchemy/ext/orderinglist.py +416 -0
  141. sqlalchemy/ext/serializer.py +181 -0
  142. sqlalchemy/future/__init__.py +16 -0
  143. sqlalchemy/future/engine.py +15 -0
  144. sqlalchemy/inspection.py +174 -0
  145. sqlalchemy/log.py +288 -0
  146. sqlalchemy/orm/__init__.py +170 -0
  147. sqlalchemy/orm/_orm_constructors.py +2571 -0
  148. sqlalchemy/orm/_typing.py +179 -0
  149. sqlalchemy/orm/attributes.py +2835 -0
  150. sqlalchemy/orm/base.py +973 -0
  151. sqlalchemy/orm/bulk_persistence.py +2123 -0
  152. sqlalchemy/orm/clsregistry.py +571 -0
  153. sqlalchemy/orm/collections.py +1620 -0
  154. sqlalchemy/orm/context.py +3268 -0
  155. sqlalchemy/orm/decl_api.py +1883 -0
  156. sqlalchemy/orm/decl_base.py +2190 -0
  157. sqlalchemy/orm/dependency.py +1304 -0
  158. sqlalchemy/orm/descriptor_props.py +1076 -0
  159. sqlalchemy/orm/dynamic.py +300 -0
  160. sqlalchemy/orm/evaluator.py +379 -0
  161. sqlalchemy/orm/events.py +3261 -0
  162. sqlalchemy/orm/exc.py +228 -0
  163. sqlalchemy/orm/identity.py +302 -0
  164. sqlalchemy/orm/instrumentation.py +754 -0
  165. sqlalchemy/orm/interfaces.py +1474 -0
  166. sqlalchemy/orm/loading.py +1682 -0
  167. sqlalchemy/orm/mapped_collection.py +557 -0
  168. sqlalchemy/orm/mapper.py +4432 -0
  169. sqlalchemy/orm/path_registry.py +811 -0
  170. sqlalchemy/orm/persistence.py +1782 -0
  171. sqlalchemy/orm/properties.py +886 -0
  172. sqlalchemy/orm/query.py +3396 -0
  173. sqlalchemy/orm/relationships.py +3500 -0
  174. sqlalchemy/orm/scoping.py +2165 -0
  175. sqlalchemy/orm/session.py +5301 -0
  176. sqlalchemy/orm/state.py +1143 -0
  177. sqlalchemy/orm/state_changes.py +198 -0
  178. sqlalchemy/orm/strategies.py +3473 -0
  179. sqlalchemy/orm/strategy_options.py +2569 -0
  180. sqlalchemy/orm/sync.py +164 -0
  181. sqlalchemy/orm/unitofwork.py +796 -0
  182. sqlalchemy/orm/util.py +2424 -0
  183. sqlalchemy/orm/writeonly.py +678 -0
  184. sqlalchemy/pool/__init__.py +44 -0
  185. sqlalchemy/pool/base.py +1515 -0
  186. sqlalchemy/pool/events.py +370 -0
  187. sqlalchemy/pool/impl.py +581 -0
  188. sqlalchemy/py.typed +0 -0
  189. sqlalchemy/schema.py +70 -0
  190. sqlalchemy/sql/__init__.py +145 -0
  191. sqlalchemy/sql/_dml_constructors.py +140 -0
  192. sqlalchemy/sql/_elements_constructors.py +1850 -0
  193. sqlalchemy/sql/_orm_types.py +20 -0
  194. sqlalchemy/sql/_py_util.py +75 -0
  195. sqlalchemy/sql/_selectable_constructors.py +635 -0
  196. sqlalchemy/sql/_typing.py +460 -0
  197. sqlalchemy/sql/annotation.py +585 -0
  198. sqlalchemy/sql/base.py +2185 -0
  199. sqlalchemy/sql/cache_key.py +1057 -0
  200. sqlalchemy/sql/coercions.py +1405 -0
  201. sqlalchemy/sql/compiler.py +7818 -0
  202. sqlalchemy/sql/crud.py +1669 -0
  203. sqlalchemy/sql/ddl.py +1378 -0
  204. sqlalchemy/sql/default_comparator.py +552 -0
  205. sqlalchemy/sql/dml.py +1817 -0
  206. sqlalchemy/sql/elements.py +5499 -0
  207. sqlalchemy/sql/events.py +455 -0
  208. sqlalchemy/sql/expression.py +162 -0
  209. sqlalchemy/sql/functions.py +2055 -0
  210. sqlalchemy/sql/lambdas.py +1449 -0
  211. sqlalchemy/sql/naming.py +212 -0
  212. sqlalchemy/sql/operators.py +2579 -0
  213. sqlalchemy/sql/roles.py +323 -0
  214. sqlalchemy/sql/schema.py +6158 -0
  215. sqlalchemy/sql/selectable.py +7004 -0
  216. sqlalchemy/sql/sqltypes.py +3827 -0
  217. sqlalchemy/sql/traversals.py +1024 -0
  218. sqlalchemy/sql/type_api.py +2339 -0
  219. sqlalchemy/sql/util.py +1486 -0
  220. sqlalchemy/sql/visitors.py +1165 -0
  221. sqlalchemy/testing/__init__.py +96 -0
  222. sqlalchemy/testing/assertions.py +989 -0
  223. sqlalchemy/testing/assertsql.py +516 -0
  224. sqlalchemy/testing/asyncio.py +135 -0
  225. sqlalchemy/testing/config.py +427 -0
  226. sqlalchemy/testing/engines.py +472 -0
  227. sqlalchemy/testing/entities.py +117 -0
  228. sqlalchemy/testing/exclusions.py +435 -0
  229. sqlalchemy/testing/fixtures/__init__.py +28 -0
  230. sqlalchemy/testing/fixtures/base.py +366 -0
  231. sqlalchemy/testing/fixtures/mypy.py +312 -0
  232. sqlalchemy/testing/fixtures/orm.py +227 -0
  233. sqlalchemy/testing/fixtures/sql.py +503 -0
  234. sqlalchemy/testing/pickleable.py +155 -0
  235. sqlalchemy/testing/plugin/__init__.py +6 -0
  236. sqlalchemy/testing/plugin/bootstrap.py +51 -0
  237. sqlalchemy/testing/plugin/plugin_base.py +779 -0
  238. sqlalchemy/testing/plugin/pytestplugin.py +868 -0
  239. sqlalchemy/testing/profiling.py +324 -0
  240. sqlalchemy/testing/provision.py +496 -0
  241. sqlalchemy/testing/requirements.py +1818 -0
  242. sqlalchemy/testing/schema.py +224 -0
  243. sqlalchemy/testing/suite/__init__.py +19 -0
  244. sqlalchemy/testing/suite/test_cte.py +211 -0
  245. sqlalchemy/testing/suite/test_ddl.py +389 -0
  246. sqlalchemy/testing/suite/test_deprecations.py +153 -0
  247. sqlalchemy/testing/suite/test_dialect.py +740 -0
  248. sqlalchemy/testing/suite/test_insert.py +630 -0
  249. sqlalchemy/testing/suite/test_reflection.py +3225 -0
  250. sqlalchemy/testing/suite/test_results.py +502 -0
  251. sqlalchemy/testing/suite/test_rowcount.py +258 -0
  252. sqlalchemy/testing/suite/test_select.py +1999 -0
  253. sqlalchemy/testing/suite/test_sequence.py +317 -0
  254. sqlalchemy/testing/suite/test_types.py +2141 -0
  255. sqlalchemy/testing/suite/test_unicode_ddl.py +189 -0
  256. sqlalchemy/testing/suite/test_update_delete.py +139 -0
  257. sqlalchemy/testing/util.py +537 -0
  258. sqlalchemy/testing/warnings.py +52 -0
  259. sqlalchemy/types.py +76 -0
  260. sqlalchemy/util/__init__.py +160 -0
  261. sqlalchemy/util/_collections.py +715 -0
  262. sqlalchemy/util/_concurrency_py3k.py +288 -0
  263. sqlalchemy/util/_has_cy.py +40 -0
  264. sqlalchemy/util/_py_collections.py +541 -0
  265. sqlalchemy/util/compat.py +301 -0
  266. sqlalchemy/util/concurrency.py +108 -0
  267. sqlalchemy/util/deprecations.py +401 -0
  268. sqlalchemy/util/langhelpers.py +2218 -0
  269. sqlalchemy/util/preloaded.py +150 -0
  270. sqlalchemy/util/queue.py +322 -0
  271. sqlalchemy/util/tool_support.py +201 -0
  272. sqlalchemy/util/topological.py +120 -0
  273. sqlalchemy/util/typing.py +629 -0
@@ -0,0 +1,19 @@
1
+ Copyright 2005-2024 SQLAlchemy authors and contributors <see AUTHORS file>.
2
+
3
+ Permission is hereby granted, free of charge, to any person obtaining a copy of
4
+ this software and associated documentation files (the "Software"), to deal in
5
+ the Software without restriction, including without limitation the rights to
6
+ use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
7
+ of the Software, and to permit persons to whom the Software is furnished to do
8
+ so, subject to the following conditions:
9
+
10
+ The above copyright notice and this permission notice shall be included in all
11
+ copies or substantial portions of the Software.
12
+
13
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
19
+ SOFTWARE.
@@ -0,0 +1,243 @@
1
+ Metadata-Version: 2.1
2
+ Name: SQLAlchemy
3
+ Version: 2.0.36
4
+ Summary: Database Abstraction Library
5
+ Home-page: https://www.sqlalchemy.org
6
+ Author: Mike Bayer
7
+ Author-email: mike_mp@zzzcomputing.com
8
+ License: MIT
9
+ Project-URL: Documentation, https://docs.sqlalchemy.org
10
+ Project-URL: Issue Tracker, https://github.com/sqlalchemy/sqlalchemy/
11
+ Classifier: Development Status :: 5 - Production/Stable
12
+ Classifier: Intended Audience :: Developers
13
+ Classifier: License :: OSI Approved :: MIT License
14
+ Classifier: Operating System :: OS Independent
15
+ Classifier: Programming Language :: Python
16
+ Classifier: Programming Language :: Python :: 3
17
+ Classifier: Programming Language :: Python :: 3.7
18
+ Classifier: Programming Language :: Python :: 3.8
19
+ Classifier: Programming Language :: Python :: 3.9
20
+ Classifier: Programming Language :: Python :: 3.10
21
+ Classifier: Programming Language :: Python :: 3.11
22
+ Classifier: Programming Language :: Python :: 3.12
23
+ Classifier: Programming Language :: Python :: 3.13
24
+ Classifier: Programming Language :: Python :: Implementation :: CPython
25
+ Classifier: Programming Language :: Python :: Implementation :: PyPy
26
+ Classifier: Topic :: Database :: Front-Ends
27
+ Requires-Python: >=3.7
28
+ Description-Content-Type: text/x-rst
29
+ License-File: LICENSE
30
+ Requires-Dist: typing-extensions >=4.6.0
31
+ Requires-Dist: greenlet !=0.4.17 ; python_version < "3.13" and (platform_machine == "aarch64" or (platform_machine == "ppc64le" or (platform_machine == "x86_64" or (platform_machine == "amd64" or (platform_machine == "AMD64" or (platform_machine == "win32" or platform_machine == "WIN32"))))))
32
+ Requires-Dist: importlib-metadata ; python_version < "3.8"
33
+ Provides-Extra: aiomysql
34
+ Requires-Dist: greenlet !=0.4.17 ; extra == 'aiomysql'
35
+ Requires-Dist: aiomysql >=0.2.0 ; extra == 'aiomysql'
36
+ Provides-Extra: aioodbc
37
+ Requires-Dist: greenlet !=0.4.17 ; extra == 'aioodbc'
38
+ Requires-Dist: aioodbc ; extra == 'aioodbc'
39
+ Provides-Extra: aiosqlite
40
+ Requires-Dist: greenlet !=0.4.17 ; extra == 'aiosqlite'
41
+ Requires-Dist: aiosqlite ; extra == 'aiosqlite'
42
+ Requires-Dist: typing-extensions !=3.10.0.1 ; extra == 'aiosqlite'
43
+ Provides-Extra: asyncio
44
+ Requires-Dist: greenlet !=0.4.17 ; extra == 'asyncio'
45
+ Provides-Extra: asyncmy
46
+ Requires-Dist: greenlet !=0.4.17 ; extra == 'asyncmy'
47
+ Requires-Dist: asyncmy !=0.2.4,!=0.2.6,>=0.2.3 ; extra == 'asyncmy'
48
+ Provides-Extra: mariadb_connector
49
+ Requires-Dist: mariadb !=1.1.10,!=1.1.2,!=1.1.5,>=1.0.1 ; extra == 'mariadb_connector'
50
+ Provides-Extra: mssql
51
+ Requires-Dist: pyodbc ; extra == 'mssql'
52
+ Provides-Extra: mssql_pymssql
53
+ Requires-Dist: pymssql ; extra == 'mssql_pymssql'
54
+ Provides-Extra: mssql_pyodbc
55
+ Requires-Dist: pyodbc ; extra == 'mssql_pyodbc'
56
+ Provides-Extra: mypy
57
+ Requires-Dist: mypy >=0.910 ; extra == 'mypy'
58
+ Provides-Extra: mysql
59
+ Requires-Dist: mysqlclient >=1.4.0 ; extra == 'mysql'
60
+ Provides-Extra: mysql_connector
61
+ Requires-Dist: mysql-connector-python ; extra == 'mysql_connector'
62
+ Provides-Extra: oracle
63
+ Requires-Dist: cx-oracle >=8 ; extra == 'oracle'
64
+ Provides-Extra: oracle_oracledb
65
+ Requires-Dist: oracledb >=1.0.1 ; extra == 'oracle_oracledb'
66
+ Provides-Extra: postgresql
67
+ Requires-Dist: psycopg2 >=2.7 ; extra == 'postgresql'
68
+ Provides-Extra: postgresql_asyncpg
69
+ Requires-Dist: greenlet !=0.4.17 ; extra == 'postgresql_asyncpg'
70
+ Requires-Dist: asyncpg ; extra == 'postgresql_asyncpg'
71
+ Provides-Extra: postgresql_pg8000
72
+ Requires-Dist: pg8000 >=1.29.1 ; extra == 'postgresql_pg8000'
73
+ Provides-Extra: postgresql_psycopg
74
+ Requires-Dist: psycopg >=3.0.7 ; extra == 'postgresql_psycopg'
75
+ Provides-Extra: postgresql_psycopg2binary
76
+ Requires-Dist: psycopg2-binary ; extra == 'postgresql_psycopg2binary'
77
+ Provides-Extra: postgresql_psycopg2cffi
78
+ Requires-Dist: psycopg2cffi ; extra == 'postgresql_psycopg2cffi'
79
+ Provides-Extra: postgresql_psycopgbinary
80
+ Requires-Dist: psycopg[binary] >=3.0.7 ; extra == 'postgresql_psycopgbinary'
81
+ Provides-Extra: pymysql
82
+ Requires-Dist: pymysql ; extra == 'pymysql'
83
+ Provides-Extra: sqlcipher
84
+ Requires-Dist: sqlcipher3-binary ; extra == 'sqlcipher'
85
+
86
+ SQLAlchemy
87
+ ==========
88
+
89
+ |PyPI| |Python| |Downloads|
90
+
91
+ .. |PyPI| image:: https://img.shields.io/pypi/v/sqlalchemy
92
+ :target: https://pypi.org/project/sqlalchemy
93
+ :alt: PyPI
94
+
95
+ .. |Python| image:: https://img.shields.io/pypi/pyversions/sqlalchemy
96
+ :target: https://pypi.org/project/sqlalchemy
97
+ :alt: PyPI - Python Version
98
+
99
+ .. |Downloads| image:: https://static.pepy.tech/badge/sqlalchemy/month
100
+ :target: https://pepy.tech/project/sqlalchemy
101
+ :alt: PyPI - Downloads
102
+
103
+
104
+ The Python SQL Toolkit and Object Relational Mapper
105
+
106
+ Introduction
107
+ -------------
108
+
109
+ SQLAlchemy is the Python SQL toolkit and Object Relational Mapper
110
+ that gives application developers the full power and
111
+ flexibility of SQL. SQLAlchemy provides a full suite
112
+ of well known enterprise-level persistence patterns,
113
+ designed for efficient and high-performing database
114
+ access, adapted into a simple and Pythonic domain
115
+ language.
116
+
117
+ Major SQLAlchemy features include:
118
+
119
+ * An industrial strength ORM, built
120
+ from the core on the identity map, unit of work,
121
+ and data mapper patterns. These patterns
122
+ allow transparent persistence of objects
123
+ using a declarative configuration system.
124
+ Domain models
125
+ can be constructed and manipulated naturally,
126
+ and changes are synchronized with the
127
+ current transaction automatically.
128
+ * A relationally-oriented query system, exposing
129
+ the full range of SQL's capabilities
130
+ explicitly, including joins, subqueries,
131
+ correlation, and most everything else,
132
+ in terms of the object model.
133
+ Writing queries with the ORM uses the same
134
+ techniques of relational composition you use
135
+ when writing SQL. While you can drop into
136
+ literal SQL at any time, it's virtually never
137
+ needed.
138
+ * A comprehensive and flexible system
139
+ of eager loading for related collections and objects.
140
+ Collections are cached within a session,
141
+ and can be loaded on individual access, all
142
+ at once using joins, or by query per collection
143
+ across the full result set.
144
+ * A Core SQL construction system and DBAPI
145
+ interaction layer. The SQLAlchemy Core is
146
+ separate from the ORM and is a full database
147
+ abstraction layer in its own right, and includes
148
+ an extensible Python-based SQL expression
149
+ language, schema metadata, connection pooling,
150
+ type coercion, and custom types.
151
+ * All primary and foreign key constraints are
152
+ assumed to be composite and natural. Surrogate
153
+ integer primary keys are of course still the
154
+ norm, but SQLAlchemy never assumes or hardcodes
155
+ to this model.
156
+ * Database introspection and generation. Database
157
+ schemas can be "reflected" in one step into
158
+ Python structures representing database metadata;
159
+ those same structures can then generate
160
+ CREATE statements right back out - all within
161
+ the Core, independent of the ORM.
162
+
163
+ SQLAlchemy's philosophy:
164
+
165
+ * SQL databases behave less and less like object
166
+ collections the more size and performance start to
167
+ matter; object collections behave less and less like
168
+ tables and rows the more abstraction starts to matter.
169
+ SQLAlchemy aims to accommodate both of these
170
+ principles.
171
+ * An ORM doesn't need to hide the "R". A relational
172
+ database provides rich, set-based functionality
173
+ that should be fully exposed. SQLAlchemy's
174
+ ORM provides an open-ended set of patterns
175
+ that allow a developer to construct a custom
176
+ mediation layer between a domain model and
177
+ a relational schema, turning the so-called
178
+ "object relational impedance" issue into
179
+ a distant memory.
180
+ * The developer, in all cases, makes all decisions
181
+ regarding the design, structure, and naming conventions
182
+ of both the object model as well as the relational
183
+ schema. SQLAlchemy only provides the means
184
+ to automate the execution of these decisions.
185
+ * With SQLAlchemy, there's no such thing as
186
+ "the ORM generated a bad query" - you
187
+ retain full control over the structure of
188
+ queries, including how joins are organized,
189
+ how subqueries and correlation is used, what
190
+ columns are requested. Everything SQLAlchemy
191
+ does is ultimately the result of a developer-initiated
192
+ decision.
193
+ * Don't use an ORM if the problem doesn't need one.
194
+ SQLAlchemy consists of a Core and separate ORM
195
+ component. The Core offers a full SQL expression
196
+ language that allows Pythonic construction
197
+ of SQL constructs that render directly to SQL
198
+ strings for a target database, returning
199
+ result sets that are essentially enhanced DBAPI
200
+ cursors.
201
+ * Transactions should be the norm. With SQLAlchemy's
202
+ ORM, nothing goes to permanent storage until
203
+ commit() is called. SQLAlchemy encourages applications
204
+ to create a consistent means of delineating
205
+ the start and end of a series of operations.
206
+ * Never render a literal value in a SQL statement.
207
+ Bound parameters are used to the greatest degree
208
+ possible, allowing query optimizers to cache
209
+ query plans effectively and making SQL injection
210
+ attacks a non-issue.
211
+
212
+ Documentation
213
+ -------------
214
+
215
+ Latest documentation is at:
216
+
217
+ https://www.sqlalchemy.org/docs/
218
+
219
+ Installation / Requirements
220
+ ---------------------------
221
+
222
+ Full documentation for installation is at
223
+ `Installation <https://www.sqlalchemy.org/docs/intro.html#installation>`_.
224
+
225
+ Getting Help / Development / Bug reporting
226
+ ------------------------------------------
227
+
228
+ Please refer to the `SQLAlchemy Community Guide <https://www.sqlalchemy.org/support.html>`_.
229
+
230
+ Code of Conduct
231
+ ---------------
232
+
233
+ Above all, SQLAlchemy places great emphasis on polite, thoughtful, and
234
+ constructive communication between users and developers.
235
+ Please see our current Code of Conduct at
236
+ `Code of Conduct <https://www.sqlalchemy.org/codeofconduct.html>`_.
237
+
238
+ License
239
+ -------
240
+
241
+ SQLAlchemy is distributed under the `MIT license
242
+ <https://www.opensource.org/licenses/mit-license.php>`_.
243
+
@@ -0,0 +1,273 @@
1
+ sqlalchemy/__init__.py,sha256=PAN5IVcMVwzS9r2V524URkvNSjsiylsHp72xmxuVEvM,13327
2
+ sqlalchemy/events.py,sha256=OAy8TK21lWzSe8bDUnAbmsP82bsBYy0LL19hR6y3BrM,542
3
+ sqlalchemy/exc.py,sha256=k01TD2xp2BM3DrXdo2U5r8yuRfsoqBND4kwvtD1SVN0,24806
4
+ sqlalchemy/inspection.py,sha256=GpmMuSAZ53u4W__iGpvzQKCBMFnTxnHt4Lo7Nq1FSKM,5237
5
+ sqlalchemy/log.py,sha256=Sg6PGR_wmseiCCpJfRDEkaMs08XTPPsf0X_iYJLvzS0,8895
6
+ sqlalchemy/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
7
+ sqlalchemy/schema.py,sha256=UFhZjGmYoqN3zkId7M4CbVCd8KaeZUfKUjdlk0sHQ_E,3264
8
+ sqlalchemy/types.py,sha256=unCm_O8qKxU3LjLbqeqSNQSsK5k5R5POsyEx2gH6CF4,3244
9
+ sqlalchemy/connectors/__init__.py,sha256=A2AI8p63aT0jT5CsVX33xlTfiGWliOcGahlK0RyTLXg,494
10
+ sqlalchemy/connectors/aioodbc.py,sha256=fg3xfG-5gLsy-DSyVonNNKYhOf0_lzHmixRFa5edtWI,5462
11
+ sqlalchemy/connectors/asyncio.py,sha256=EWjnlej7KeY7kDep36_ayJKl06_YnnOPWtUQKBZhgsY,6351
12
+ sqlalchemy/connectors/pyodbc.py,sha256=IG5lLCyFbnv1wB85HQuMO3S5piWHaB660OBWvBIQhbg,8750
13
+ sqlalchemy/cyextension/__init__.py,sha256=Hlfk91RinbOuNF_fybR5R2UtiIcTeUOXS66QOfSSCV0,250
14
+ sqlalchemy/cyextension/collections.cp313-win_amd64.pyd,sha256=m_snMGYMePnOVIJpTK4EIlw4QziPeKLXEdjNqyLcuv0,176128
15
+ sqlalchemy/cyextension/collections.pyx,sha256=GXPkr9cHRLW3Vcu-ik3dVBZMR-zf0Q5_K4J-_8yV-gk,12980
16
+ sqlalchemy/cyextension/immutabledict.cp313-win_amd64.pyd,sha256=DpI9xW29IOyQwjp8zMyphgtwSzV14GvH6iDspS_GDrQ,69632
17
+ sqlalchemy/cyextension/immutabledict.pxd,sha256=5iGndSbJCgCkNmRbJ_z14RANs2dSSnAzyiRPUTBk58Y,299
18
+ sqlalchemy/cyextension/immutabledict.pyx,sha256=IhB2pR49CrORXQ3LXMFpuCIRc6I08QNvIylE1cPQA5o,3668
19
+ sqlalchemy/cyextension/processors.cp313-win_amd64.pyd,sha256=NzJsweDJQs8TQdcoExyyd2sEPkBpC_-9wV1QKaFOaIA,57856
20
+ sqlalchemy/cyextension/processors.pyx,sha256=V9gzqXiNHWsa5DBgYl-3KzclFHY8kXGF_TD1xHFE7eM,1860
21
+ sqlalchemy/cyextension/resultproxy.cp313-win_amd64.pyd,sha256=Wkpxrbz359QIpLILQ7EkDeM7o0CiBZJ1PvQUiNrwELg,60928
22
+ sqlalchemy/cyextension/resultproxy.pyx,sha256=h_RrKasbLtKK3LqUh6UiWtkumBlKtcN5eeB_1bZROMA,2827
23
+ sqlalchemy/cyextension/util.cp313-win_amd64.pyd,sha256=sU_bHU8BLQNz-pwvCkL-FNk3l8bkeMgpXhl-Kad9nBE,72192
24
+ sqlalchemy/cyextension/util.pyx,sha256=50QYpSAKgLSUfhFEQgSN2e1qHWCMh_b6ZNlErDUS7ec,2621
25
+ sqlalchemy/dialects/__init__.py,sha256=SJfQyxMhOL58EB-S6GQv_0jf2oP7MMfmVdlV2UxGWQo,1831
26
+ sqlalchemy/dialects/_typing.py,sha256=mN2r8mU8z-mRh4YS3VeK8Nv_IKJmE0Mb1CrJ-ptILas,913
27
+ sqlalchemy/dialects/type_migration_guidelines.txt,sha256=gyh3JCauAIFi_9XEfqm3vYv_jb2Eqcz2HjpmC9ZEPMM,8384
28
+ sqlalchemy/dialects/mssql/__init__.py,sha256=r3oTfX2LLbJAGhM57wdPLWxaZBzunkcmyaTbW0FjLuY,1968
29
+ sqlalchemy/dialects/mssql/aioodbc.py,sha256=b9bhUKcVj4NzoqJIDfECeE_Rmt51sRy8OOUFz_R3vpg,2086
30
+ sqlalchemy/dialects/mssql/base.py,sha256=EBnNJv8RFOTci5tpgK2tUU_JUyGdew25j4edOosECj8,136433
31
+ sqlalchemy/dialects/mssql/information_schema.py,sha256=A1UJAoFb3UtE8YCY3heBgeTMkzWq3j7C2caZ3gcMGZk,8338
32
+ sqlalchemy/dialects/mssql/json.py,sha256=nZVVsgmR4Z4dNn9cv5Gucq596gsQ0MvASPuEEtz-Gek,4949
33
+ sqlalchemy/dialects/mssql/provision.py,sha256=jpyErAQ_zgmQKiE0G8dQcNn6O8ssQELrO2BzcukLUa0,5755
34
+ sqlalchemy/dialects/mssql/pymssql.py,sha256=RrxWm94UgCipZCM8FbeeENFndJh6JDaSkWPF3feK_VI,4223
35
+ sqlalchemy/dialects/mssql/pyodbc.py,sha256=YVI19AnrqxPCBwDqcjrO_rqUUWbV2re7E8iLuV1ilqE,27801
36
+ sqlalchemy/dialects/mysql/__init__.py,sha256=PPQDwNqcpxWMt3nFQ66KefX9T9iz7d8lybEwKlfXB1U,2254
37
+ sqlalchemy/dialects/mysql/aiomysql.py,sha256=hZg2W3C_O2ExL5bVlcqmDX0vZbVR2dMyuGqTGVlBzig,10332
38
+ sqlalchemy/dialects/mysql/asyncmy.py,sha256=xnYyNzk6JJVzxpxu4B7GhUP9CR5rtHVw8mGoWsHAwT8,10404
39
+ sqlalchemy/dialects/mysql/base.py,sha256=yNKJCAwsapLTK5GBQZfzPA4DvTqee8_US9VY3brMwqI,126249
40
+ sqlalchemy/dialects/mysql/cymysql.py,sha256=0mRP3gFe2t7iJYQqJz1Os_TztFwMAF34w2MmXe-4B_w,2384
41
+ sqlalchemy/dialects/mysql/dml.py,sha256=n31-m4vfOIL0MdHpUdIfTLgaMzusfQ-yHYoJWO_ndEc,7864
42
+ sqlalchemy/dialects/mysql/enumerated.py,sha256=Nz9Sv3ENX-1T18aEoOY8QfZlAcwRf65lIOse7vwjil8,8692
43
+ sqlalchemy/dialects/mysql/expression.py,sha256=uxD1fICubfGh8BhAn6WoeS8AF6hAVEvreDShXqRZTqM,4238
44
+ sqlalchemy/dialects/mysql/json.py,sha256=i0Lrd_7VKTd3fNm6kQKzrtPERuW0JeSw7XSUWnl1HQI,2350
45
+ sqlalchemy/dialects/mysql/mariadb.py,sha256=WoNxkjiPfIbWAkrVEU9MTM7mePeLHZ2uiJsyfvcpv1s,885
46
+ sqlalchemy/dialects/mysql/mariadbconnector.py,sha256=wRuM0PPLnK1avjQnvbgC7pLf54JTondEpi-sffDWPMM,8900
47
+ sqlalchemy/dialects/mysql/mysqlconnector.py,sha256=w4a36lSTM8JHgohUoOsjqqaWh3822207gGUFGovkSRo,5909
48
+ sqlalchemy/dialects/mysql/mysqldb.py,sha256=2aFRw8C0LdU7hk6zjXDijEY8UeWK360TB8pTMZ5Ddto,9806
49
+ sqlalchemy/dialects/mysql/provision.py,sha256=ikb3a6XUnMa51JLmlIbDr9QLvTs3QtdyldHn-lME-qI,3685
50
+ sqlalchemy/dialects/mysql/pymysql.py,sha256=Kxi_A34-nbQ5UEFSmy14TXc1v43-1SZ8gE628REGTFo,4220
51
+ sqlalchemy/dialects/mysql/pyodbc.py,sha256=CZCEnhyLIgbuiAW32Cw7N1m1aiQv1eBB34pV-txOs70,4435
52
+ sqlalchemy/dialects/mysql/reflection.py,sha256=HQOQbNu9o977ki2Xpb7AbZ_mhAR9EK3YOGp3HoezJxg,23511
53
+ sqlalchemy/dialects/mysql/reserved_words.py,sha256=qzej7CIVFz2Q2ywue7nKL59cca2kzXhKpDOSQYMlxjU,9829
54
+ sqlalchemy/dialects/mysql/types.py,sha256=wqfI5QZ8__Uzn9cYefTMZ387cJJJgbNkCDE9Ax2k1pY,25117
55
+ sqlalchemy/dialects/oracle/__init__.py,sha256=_yFT_k0R6yc7MKQG-Al9QZt8wYZsiCtpkhNlba5xqn8,1560
56
+ sqlalchemy/dialects/oracle/base.py,sha256=bigUmqUbddoa9vCYvrkajlDiYsFhNdAIpkfi7q0JtzY,122947
57
+ sqlalchemy/dialects/oracle/cx_oracle.py,sha256=5DyLekZ1IV1-KQdtMHEyt-AtHDq1RLX-XN-N6zPEywA,56718
58
+ sqlalchemy/dialects/oracle/dictionary.py,sha256=tmAZLEACqBAPBE0SEV2jr1R4aPcpNOrbomJl-UmgiR4,20026
59
+ sqlalchemy/dialects/oracle/oracledb.py,sha256=nWB80zaRoUl9uJ3rjvCnvifeqfNiCzFmDi6uSr6wEkk,14050
60
+ sqlalchemy/dialects/oracle/provision.py,sha256=KKlXDQnC8n6BjLJWA7AJg3lwXluH1OyStqfP2Uf9rq0,8524
61
+ sqlalchemy/dialects/oracle/types.py,sha256=U9EReFRcr0PiwOxT9vg2cA7WOix8LQ2sVp0gRkMHcPo,8518
62
+ sqlalchemy/dialects/postgresql/__init__.py,sha256=C0BhKzUkClwGfAetbBIEd4KQohOtSmfHo5TwhoZLCK0,4059
63
+ sqlalchemy/dialects/postgresql/_psycopg_common.py,sha256=fYFqLVxNxAqh3nOvzGOv3Pfpm2BsclHrk71MJZrpJKo,5883
64
+ sqlalchemy/dialects/postgresql/array.py,sha256=_vzfyGBY1NsT6blooCgHrLC38VZbM4UWKQHgXLmmyYs,14159
65
+ sqlalchemy/dialects/postgresql/asyncpg.py,sha256=mT_-cDcHx_ERtn8LEZEiafOhrBySKEkwnrdq7grSGj0,42348
66
+ sqlalchemy/dialects/postgresql/base.py,sha256=Tf0ADIFFeuIuPmFhtcvw7gSj4WOq65efZ_bxd-puXWU,184091
67
+ sqlalchemy/dialects/postgresql/dml.py,sha256=uMiqxEkji-UXqk8gO1ramQEvEfCugYmy8Cv1cnG7DQs,11522
68
+ sqlalchemy/dialects/postgresql/ext.py,sha256=ct6NQfMAfBnLYhybpF2wPEq-p8-U0tEpy-aq8NwqJLw,16758
69
+ sqlalchemy/dialects/postgresql/hstore.py,sha256=4jAZQMPWl3VE4weDRZrgrbVDRZJTM3X0Xj4twr5znYQ,11938
70
+ sqlalchemy/dialects/postgresql/json.py,sha256=uYTzL3gECnQ8MGlH76MG7lgOzudWJwEVAukzVBeEaUw,11951
71
+ sqlalchemy/dialects/postgresql/named_types.py,sha256=Ykl4GWSf5pQynkAWfZsAjgYU0R_TSvEvaZrb8mI4PuQ,18103
72
+ sqlalchemy/dialects/postgresql/operators.py,sha256=iyZuyx_daRyJjiS5rw-XnZlaWj1bmRiHdy5MXzBrFZw,2937
73
+ sqlalchemy/dialects/postgresql/pg8000.py,sha256=TPJXX078vW0FSwZ-DlWNkEOXg7Z4xk8IFwi1droMhPw,19302
74
+ sqlalchemy/dialects/postgresql/pg_catalog.py,sha256=rG_AGLtjSQ6DAnkqAiurYpnIuLhN9Ib_QydWbmjK--s,9554
75
+ sqlalchemy/dialects/postgresql/provision.py,sha256=8ieCPOOsTLLcf2qa4zasAu7UCJ9S7rK5xl2_u_OkB2w,5945
76
+ sqlalchemy/dialects/postgresql/psycopg.py,sha256=MtS8vtJB0jStB1nILco6STUfdHv4m8rbWisXBzVXiO4,23940
77
+ sqlalchemy/dialects/postgresql/psycopg2.py,sha256=Jczz-5NGNYlkmkDlJYCpXRQSmNszqgZZaX6yqwc0vvg,32884
78
+ sqlalchemy/dialects/postgresql/psycopg2cffi.py,sha256=hFg-9GH08ApPy3foVPUdJKwCEzNSv2zD5l4nH97AqgI,1817
79
+ sqlalchemy/dialects/postgresql/ranges.py,sha256=oiTmnZ-hd5WqqGNsXbuOJfoNxpbso_M_49gky8dlCrE,33978
80
+ sqlalchemy/dialects/postgresql/types.py,sha256=pd1QmuGwJFLqpY2tK-Ql3FNjtT1Ha-lVvfaR9dimvHc,7603
81
+ sqlalchemy/dialects/sqlite/__init__.py,sha256=MmQfjHun1U_4q-Dq_yhs9RzAX0VLixSwWeY5xWiDwag,1239
82
+ sqlalchemy/dialects/sqlite/aiosqlite.py,sha256=q9NcdCMnlOMiX2ySw-lqzZB0X8_nYoCmHES9SiIy9v0,12741
83
+ sqlalchemy/dialects/sqlite/base.py,sha256=SCliffPlfv08INhTwnGhYUYLmxI5aqiMgeoqLnlZB20,100616
84
+ sqlalchemy/dialects/sqlite/dml.py,sha256=8JV6Ise7WtmFniy590X5b19AYZcE51M6N5hef7d9JoA,8683
85
+ sqlalchemy/dialects/sqlite/json.py,sha256=-9afZnBt07vInCX20CKzjlTG85wHTO5_cxhcYU4phDc,2869
86
+ sqlalchemy/dialects/sqlite/provision.py,sha256=nAXZPEjXFrb6a1LxXZMqKmkQoXgl3MPsSHuMyBQ76NU,5830
87
+ sqlalchemy/dialects/sqlite/pysqlcipher.py,sha256=p0KfzHBwANDMwKTKEJCjR5RxMYqQwS4E8KXjl3Bx6Fw,5511
88
+ sqlalchemy/dialects/sqlite/pysqlite.py,sha256=TcApeaXMjcM-IMRNEp4sQn-lE3Z6khLvoe7L63k7TN4,28824
89
+ sqlalchemy/engine/__init__.py,sha256=93FWhb62dLCidc6e4FE65wq_P8GeoWQG1OG6RZMBqhM,2880
90
+ sqlalchemy/engine/_py_processors.py,sha256=-jlAYPM6etmuKeViiI7BD41kqY0Pr8nzaox22TPqCCQ,3880
91
+ sqlalchemy/engine/_py_row.py,sha256=UEGCjAeRsggcUn0QB0PdFC82kuykrOiOZ1KGq_Gf_qQ,3915
92
+ sqlalchemy/engine/_py_util.py,sha256=nh1XoVq1b-eGgkdzbqFqzje0RNSmVWotoa6yaB7J5Sw,2558
93
+ sqlalchemy/engine/base.py,sha256=ags97hnejh9awIFQ5t1RkHnZOSDJSUiSeaOqrPAU_4k,126333
94
+ sqlalchemy/engine/characteristics.py,sha256=hfTuHv_WxSNHOS_LFIypSb27lqoZKRXIQKyT7ay5lTY,4920
95
+ sqlalchemy/engine/create.py,sha256=-SCpvMx3DIwt8TD6Cyh_ChieKQ8y3hDD9YLDBIKgY6o,34081
96
+ sqlalchemy/engine/cursor.py,sha256=zKN-AiwE-0KkvdWqhg8dOAT4R1U1a4I0tFgAqzihSnE,78573
97
+ sqlalchemy/engine/default.py,sha256=vut1eoGPPFksx3iMTr1MNzLvM52GNgqzm9sZuvTVt24,87013
98
+ sqlalchemy/engine/events.py,sha256=e0VHj69fH20sB7gocBhr5Rs2FjR8ioY4iE8VQt70oJg,38332
99
+ sqlalchemy/engine/interfaces.py,sha256=a7kJmfaTRQgBvoUve_86CFI2tWGF-Htv_OQBJHCCQtU,116339
100
+ sqlalchemy/engine/mock.py,sha256=wInBRiHwydTc5ELQLivdezDd1ikbSMVXgLVzZrSC0iQ,4310
101
+ sqlalchemy/engine/processors.py,sha256=w4MiVMlU6VvfhIW49nygbHcwX8FteGpz7g3IGEqtZb8,2440
102
+ sqlalchemy/engine/reflection.py,sha256=DYyhp221HdpnjtEKvIXoHFj6LvkUntMpK3gc7FwkhZ4,77462
103
+ sqlalchemy/engine/result.py,sha256=ItLliL4T31CSD1cTgbVmliEQBtRtneDCqChAM00iiSM,80033
104
+ sqlalchemy/engine/row.py,sha256=g7ZqmsqX_BtRUzY-zfXoZZ4-5xZ_KJEVbvqKHUIlqRg,12433
105
+ sqlalchemy/engine/strategies.py,sha256=fD4DJn0AD371wlUa7s5Sy4j7QtgGyP7gMy_kUyqCLDQ,461
106
+ sqlalchemy/engine/url.py,sha256=tOCRmKkqrpsIfNeSDoy6KKTLtQAMtoIn9xa5kmJQebk,31694
107
+ sqlalchemy/engine/util.py,sha256=wIrPulEwr7kAxJ-vNj5QSPGNfWoFx5B4zzJdXu_ZIFg,5849
108
+ sqlalchemy/event/__init__.py,sha256=09qZzHwt0PkIDsPwuPUVJvNakjtCBjuUJeY0AEJ9j7k,1022
109
+ sqlalchemy/event/api.py,sha256=I7XWFczjgl3RcBH_52TbQ0S3_W4RZz1Be9dXkxtFw5U,8451
110
+ sqlalchemy/event/attr.py,sha256=-SHjzXMOs7IICPSgNwpgRS3FIEeLIpB5PyvVlpw8Gp8,21406
111
+ sqlalchemy/event/base.py,sha256=5JA45j3ncMWPXDeIPLJ_D5lX06Z3TJf8dla8bCriOkU,15597
112
+ sqlalchemy/event/legacy.py,sha256=a8VEvS83PvgbomNnaSa3okZmTkxl_buZ7Lfilechjh8,8473
113
+ sqlalchemy/event/registry.py,sha256=f31k0FLqIlWpOK9tksiYXnv-yuZPPz9iLQqvKEYV7ko,11221
114
+ sqlalchemy/ext/__init__.py,sha256=YbMQmRS_9HxRyWM-KA_F76WOss1_Em1ZcrnQDIDXoOc,333
115
+ sqlalchemy/ext/associationproxy.py,sha256=4eT25cDGBqCExY3ey1HtQv1n-EtFdTIXpRRN0bt2Ga4,68075
116
+ sqlalchemy/ext/automap.py,sha256=dIo-IoF9t6xcrBj1EV5caHPmPISXXzH-637utGlqi00,63272
117
+ sqlalchemy/ext/baked.py,sha256=jc6vPocoXXsvdZsOsqgT4kG6guWSZD1TdPjoRBmkbRU,18381
118
+ sqlalchemy/ext/compiler.py,sha256=iIc87FNm-rgbGMsST5nskNkkQe1WE-cvpgd2g8zobnM,21447
119
+ sqlalchemy/ext/horizontal_shard.py,sha256=V8vXEt5ZQb_PM39agZD2IyoQNGSqVI1MhY-6mNV5MRY,17231
120
+ sqlalchemy/ext/hybrid.py,sha256=UpWd9hOD5I3hCT5FJW9twSDyShDVyygRIFtv-FmMHgM,53972
121
+ sqlalchemy/ext/indexable.py,sha256=aDlVpN4rilRrer9qKg3kO7fqnqB5NX4M5qzYuYM8pvw,11373
122
+ sqlalchemy/ext/instrumentation.py,sha256=lFsJECWlN1oc1E0r9TaQDZcxAx4VOz6PSHYrl5fLk9Y,16157
123
+ sqlalchemy/ext/mutable.py,sha256=nAz3_lF2xkYSARt7GAWQh-OUMcnpe6s1ocjvQGxCPkc,38428
124
+ sqlalchemy/ext/orderinglist.py,sha256=r7La_3nZlGevIgsBL1IB30FvWO_tZHlTKo_FWwid-aY,14800
125
+ sqlalchemy/ext/serializer.py,sha256=4DuLXwWsuZU8vyFw2kOmuelSXozpCgr_pH36af1mtVE,6321
126
+ sqlalchemy/ext/asyncio/__init__.py,sha256=tKYIrERYf8hov9m8DuKWRO_53qhrvj2jRmIYjSGQ2Po,1342
127
+ sqlalchemy/ext/asyncio/base.py,sha256=slWQTFdgQQlkzrnx3m5a9xT8IRg4iM0gkEbypXr_YXQ,9184
128
+ sqlalchemy/ext/asyncio/engine.py,sha256=HJ5IZD0_xfVOMEGYZ1XtDir73SpzBk6ODDUN75ltvzo,49656
129
+ sqlalchemy/ext/asyncio/exc.py,sha256=0awLfUB4PhEPVVTKYluyor1tW91GPZZnvdQ-GGSOmJY,660
130
+ sqlalchemy/ext/asyncio/result.py,sha256=2hCQKOjbmFCYfEjk33FY1ZUAPQaoDmgoIW8IzqE63Bg,31438
131
+ sqlalchemy/ext/asyncio/scoping.py,sha256=XZqvqtIXpWujkjV7DBikIsQcjaVLei1C3LlflZxiZ_o,54222
132
+ sqlalchemy/ext/asyncio/session.py,sha256=_9J2zd9-tc4YNKjbe6JQkMNXD_PI-l84CbHRNA0OSGE,65023
133
+ sqlalchemy/ext/declarative/__init__.py,sha256=MHSOffOS4MWcqshAuLNQv0vDXpK_Z3lpGXTm1riyLls,1883
134
+ sqlalchemy/ext/declarative/extensions.py,sha256=aPpW0PvTKH3CoSMhsOY5GcUMZOVq-OFsV1hflxmb3Lw,20095
135
+ sqlalchemy/ext/mypy/__init__.py,sha256=aqT8_9sNwzC8PIaEZ4zkCYGBvYPaDD3eCgJtJuk3g6A,247
136
+ sqlalchemy/ext/mypy/apply.py,sha256=1Qb-_FpQ_0LVB2KFA5hVjfPv6DDMIcxXe86Ts1X9GBk,10870
137
+ sqlalchemy/ext/mypy/decl_class.py,sha256=f2iWiFVlDFqGb_IoGGotI3IEOUErh25sLT7B_cMfx0g,17899
138
+ sqlalchemy/ext/mypy/infer.py,sha256=O-3IjELDSBEAwGGxRM7lr0NWwGD0HMK4vda_iY6iwjs,19959
139
+ sqlalchemy/ext/mypy/names.py,sha256=2bHYuQJe71c9JtuJSZP-WWGiOJmY9-FuMQGMDBB6dRs,10814
140
+ sqlalchemy/ext/mypy/plugin.py,sha256=TDTziLsYFRqyX8UcQMtBBa6TFR4z9N-XNO8wRkHlEOI,10053
141
+ sqlalchemy/ext/mypy/util.py,sha256=s3-QXtuJ5lBZHdhpMdCa36EBV-wic5Dl1hFOB_2bVqw,10317
142
+ sqlalchemy/future/__init__.py,sha256=6-qPdjMHX-V-kAPjTQgNuHztmYiwKlJhKhhljuETvoQ,528
143
+ sqlalchemy/future/engine.py,sha256=N_5W2ab5-ueedWzqNdgLPzTW9audT1IbxF6FCDLRZOc,510
144
+ sqlalchemy/orm/__init__.py,sha256=I-XesvuyjkAAwnsiF5FnXRLNV6W2nW70EnGAIt2GAjU,8633
145
+ sqlalchemy/orm/_orm_constructors.py,sha256=7JCWOOTvMSa0drFcJVb8H2LP1Zme9EmklPtVPn2AKJA,106005
146
+ sqlalchemy/orm/_typing.py,sha256=Z9GZT8Vb-wFwvHeOeVE37dvmCWdItLZnqI_pLin4cMc,5152
147
+ sqlalchemy/orm/attributes.py,sha256=4PcKfGsqziKh-odMCSoLP37lCzVT27n8qrXuDEDZq74,95369
148
+ sqlalchemy/orm/base.py,sha256=SKMbYGIgGcuqwQeteHN-G0sS1d_gx2dSxMjuZmBlYm0,28475
149
+ sqlalchemy/orm/bulk_persistence.py,sha256=EZDT2IUFjuVLMra1urGiZSh99aWjUVrua0tBpz9f_lY,74786
150
+ sqlalchemy/orm/clsregistry.py,sha256=2pE9BCnPEDvid_2zgFHllr2CTG_jLcx_ThdZo6zJ0ew,18545
151
+ sqlalchemy/orm/collections.py,sha256=UOBbkTc4jCMbqM7fb9277VR1fCN5TRaFKV8pAcNyv78,53863
152
+ sqlalchemy/orm/context.py,sha256=3egDf1kEB41tiNByqVj5_cUG4AcYDoYTZhxICBSAugA,116223
153
+ sqlalchemy/orm/decl_api.py,sha256=i6mXKqNrCxu3bJKhhBt_KtsPZHVVDHemAFEQpUdQvAM,65881
154
+ sqlalchemy/orm/decl_base.py,sha256=UpBoWt4f3mY6hsu46CFWXKju6c9qM-M5jHvSEHftgZ4,85533
155
+ sqlalchemy/orm/dependency.py,sha256=glstmbB4t-PIRA47u9NgTyyxbENfyQuG9Uzj2iezB_s,48935
156
+ sqlalchemy/orm/descriptor_props.py,sha256=uRIgZMIRFACONzgiXz6q6wdvahby2s1ogkjHARhEVFk,38320
157
+ sqlalchemy/orm/dynamic.py,sha256=MMPj4Esn_CRweI8YMbYcl9nNwcMWB4O6owOaFgcIvB0,10116
158
+ sqlalchemy/orm/evaluator.py,sha256=Uttss9NiHt12sWWjH4XfK8hzQANciaefXwFf7On2cns,12732
159
+ sqlalchemy/orm/events.py,sha256=8K_DUstcftizTDyYomGXo_GLbYdUG526JYQa9b5D7DA,131038
160
+ sqlalchemy/orm/exc.py,sha256=fd24WdW3CP3oxFcz9CLXPeBIAfqJZbKv7K4G-5X4EOg,7641
161
+ sqlalchemy/orm/identity.py,sha256=fOpANTf73r12F_w9DhVoyjkAdh8ldgJcNnwxx0GY8YM,9551
162
+ sqlalchemy/orm/instrumentation.py,sha256=a8vi3qEAyO7Z9PYksLkFi_YzxqQhzB-anblegiAtsFw,25075
163
+ sqlalchemy/orm/interfaces.py,sha256=c7rAWvsF8xnae19U50OTvuzb_I4n88FH_FgqPtd_sr0,50164
164
+ sqlalchemy/orm/loading.py,sha256=RCEUmTS--9QntLQcnwYVxHRsC3ILE58AVNHb8MGcybg,59959
165
+ sqlalchemy/orm/mapped_collection.py,sha256=OjiojLC9caz_-0vt2289sS35bGOiM6GbxWywCg1RFZc,20239
166
+ sqlalchemy/orm/mapper.py,sha256=5DItf0WognEURCJ3-tInhtYdijDN8jNZEwOns43z-C8,176170
167
+ sqlalchemy/orm/path_registry.py,sha256=GQS4KatFTi_6LKdi6I4185igHE6DDwrm8b1AMOHMom4,26731
168
+ sqlalchemy/orm/persistence.py,sha256=MKb7TuSLJUQpyqnHxf6uNmGXSznmZgkkFTD04nHbNUQ,63483
169
+ sqlalchemy/orm/properties.py,sha256=DicF2OHW-b5z7xJrahELKd5OPm9cVfTIYjQcoEM1naw,30192
170
+ sqlalchemy/orm/query.py,sha256=KgFWo2xCpF26VHRD3oRLNvbckekuORcn1LPTjguDCZ0,121104
171
+ sqlalchemy/orm/relationships.py,sha256=tj00j1ISHQmJbWeegWn8U29lL6WUnqd8fdY7NRHcLWU,132144
172
+ sqlalchemy/orm/scoping.py,sha256=Na86AVpI1bry0ICm67wXT7CmCffVu3Muoorn9c-hLNk,80853
173
+ sqlalchemy/orm/session.py,sha256=EDUpkGw5rx66579JfvtME2AeqGsdh1V2nznuc3dgDfc,201280
174
+ sqlalchemy/orm/state.py,sha256=TB9954ZttIUj4uMF-4tfocwaDaq9g1uCbgXuuk-VwJA,38813
175
+ sqlalchemy/orm/state_changes.py,sha256=4i90vDgBGvVGUzhlonlBkZBAZFOWaAXij2X8OEA3-BA,7013
176
+ sqlalchemy/orm/strategies.py,sha256=QcSrpN8wsobzKYThvbNhnbVhz6-AfUvUuPjKpeK1U9w,123339
177
+ sqlalchemy/orm/strategy_options.py,sha256=uajUK7bpjJGl8ygbbuzChwXiJEUd6dEHtjXEnqY1dlw,87922
178
+ sqlalchemy/orm/sync.py,sha256=aMEMhYTj2rtJZJvjqm-cUx2CoQxYl8P6YddCLpLelhM,5943
179
+ sqlalchemy/orm/unitofwork.py,sha256=THggzzAaqmYh5PBDob5dHTP_YyHXYdscs3fIxtRV-gE,27829
180
+ sqlalchemy/orm/util.py,sha256=Ju6SEzkmZvDM1N7jmYkB6pImZHRsCqn-k7Nj6Wlhgjg,83445
181
+ sqlalchemy/orm/writeonly.py,sha256=j5DcpZKOv1tLGQLhKfk-Uw-B0yEG7LezwJWNTq0FtWQ,22983
182
+ sqlalchemy/pool/__init__.py,sha256=ZKUPMKdBU57mhu677UsvRs5Aq9s9BwIbMmSNRoTRPoY,1848
183
+ sqlalchemy/pool/base.py,sha256=D0sKTRla6wpIFbELyGY2JEHUHR324rveIl93qjjmYr8,53751
184
+ sqlalchemy/pool/events.py,sha256=ysyFh0mNDpL4N4rQ-o_BC6tpo_zt0_au_QLBgJqaKY8,13517
185
+ sqlalchemy/pool/impl.py,sha256=BU5vUQ6NDFIldsG9og6mtO14SsqwpUqvwyGqZsKT6i0,19525
186
+ sqlalchemy/sql/__init__.py,sha256=T16ZB3Za0Tq1LQGXeJuuxDkyu2t-XHR2t-8QH1mE1Uw,5965
187
+ sqlalchemy/sql/_dml_constructors.py,sha256=1xMH5Kd6SLhlFwfIs_lOXGC8GTrqW8mQM7Kc3cKyLuw,4007
188
+ sqlalchemy/sql/_elements_constructors.py,sha256=FRFRwYB9X5w01gyf07QjdkNa0rH8GrJOFW9-4sxZn88,65018
189
+ sqlalchemy/sql/_orm_types.py,sha256=_bzlAh3-vTIZoLvAM2ry1SF7rsYRM3-jupfhGWZZn5Y,645
190
+ sqlalchemy/sql/_py_util.py,sha256=VzThcXk7fKqT9_mZmXrkxePdwyyl_wIciCftzl2Z_-g,2248
191
+ sqlalchemy/sql/_selectable_constructors.py,sha256=mRgtlGyctlb1LMBqFxgn0eGzIXMbyZtQafjUuJWhYjs,19415
192
+ sqlalchemy/sql/_typing.py,sha256=FzAwrbL9o2CMluxxj1MfYh9ut7NDqkzD6dkWk5tz_dI,13231
193
+ sqlalchemy/sql/annotation.py,sha256=PslN1KQV9hN8Ji4k8I3-W-cDuRMCCLwMmJcg-n86Yy4,18830
194
+ sqlalchemy/sql/base.py,sha256=LY4zzFtADcqGcvKPUuuC9rK-vucqmHn3zKklVivoZ-M,76110
195
+ sqlalchemy/sql/cache_key.py,sha256=nEvUQ4yjtWWblrKjLLDd_b9i5zudgYhkOdJvI1U8Lvo,34725
196
+ sqlalchemy/sql/coercions.py,sha256=wFZIVoYcmAoQYSHbv268cIzLfBVX_iI7d1evFSQFuL4,42069
197
+ sqlalchemy/sql/compiler.py,sha256=GXd4pruoy7-fMTc8-4GSQyHCTqBMzpykn3WVvqxhkYM,282505
198
+ sqlalchemy/sql/crud.py,sha256=YL1HIVrUkcduncUZ6F4gEBf5PlowguGkxMAlgMVlKgI,58183
199
+ sqlalchemy/sql/ddl.py,sha256=cebT_-dEY79LvqM63rFN8uaMLZXtTvP7pT4yO_qWlXE,47014
200
+ sqlalchemy/sql/default_comparator.py,sha256=lXmd8yAUzfyeP5w4vebrQG99oC0bTrmdGc0crBq1GKw,17259
201
+ sqlalchemy/sql/dml.py,sha256=lt5FC6BbJNotE65U-fmvEovBxkADfKBnVcnkVYYQxUM,67431
202
+ sqlalchemy/sql/elements.py,sha256=FudYJXww47JMyXnyZnX2foxsXITLLhFTQkFIWvPXf0s,182043
203
+ sqlalchemy/sql/events.py,sha256=pG3jqJbPX18N9Amp47aXiQYMYD_HL_lOXHk-0m8m7Hw,18745
204
+ sqlalchemy/sql/expression.py,sha256=T-AgCPp30tgKQYLKeSyqQg_VoJFE69m2yDTz6fn-u1E,7748
205
+ sqlalchemy/sql/functions.py,sha256=9iazLxbvCMH35CzgtZaNJ0IUn8wz04w9DofY3jNfIHc,65817
206
+ sqlalchemy/sql/lambdas.py,sha256=eKlhUhD8urNVvOm_1tUf8ESPIpo2qTAidKHJEarUhj8,50741
207
+ sqlalchemy/sql/naming.py,sha256=ERVjqo6fBHBw2BwNgpbb5cvsCkq1jjdztczP9BKzVt8,7070
208
+ sqlalchemy/sql/operators.py,sha256=CgijIxSVCh00XnqfhtK0sHD-gR5HlQt8LdJUZlPBu2E,78685
209
+ sqlalchemy/sql/roles.py,sha256=8nO4y1hbP1cA8IzeOn6uPgNZNVILb3E-IMeJWOIScu8,7985
210
+ sqlalchemy/sql/schema.py,sha256=bCxaa_Y_wZrkDauJX4Cr4Lr1vZaqNCoK3Dzd0ki_fsQ,235875
211
+ sqlalchemy/sql/selectable.py,sha256=5jDioKY0V9fT731TtWHtUTKuzO6beUABx9l-fjh-ywo,243464
212
+ sqlalchemy/sql/sqltypes.py,sha256=H5YpFPXEPVmDGrRLsLaOL3Whr7WsHstblIe_GRvA1MU,131296
213
+ sqlalchemy/sql/traversals.py,sha256=dPHz1Kyyo_a5JcJiajR39iQejisGqefqUjYXqlBT7Vo,34688
214
+ sqlalchemy/sql/type_api.py,sha256=0bHHe4o2333vj_hMbLfAMIZ0_Hjee00EdP9ItSRZZI8,86803
215
+ sqlalchemy/sql/util.py,sha256=ftTiyNGeJK0MIRMqWMV7Xf8iZuiRGocoJRp3MIO3F3Y,49563
216
+ sqlalchemy/sql/visitors.py,sha256=oudlabsf9qleuC78GFe_iflRSAD8H-HjaM7T8Frc538,37482
217
+ sqlalchemy/testing/__init__.py,sha256=X7Td6ZZXYkZ_I58YPcHZnZ11RwwAmbnsC1ds3F6lOj8,3256
218
+ sqlalchemy/testing/assertions.py,sha256=bBn2Ep89FF-WBmzh0VkvnJ9gNMKuqk8OXq7ALpUwar4,32428
219
+ sqlalchemy/testing/assertsql.py,sha256=gj4YRBR9cjOtS1WgR3nsyIze1tmqctsNs1uCV8N2Q4w,17333
220
+ sqlalchemy/testing/asyncio.py,sha256=xYuWjKFHzolBLgddy1ePI9l8KRRUOWpT-FWjhtV2Ei0,3965
221
+ sqlalchemy/testing/config.py,sha256=jfFVUiAOm8im6SlqyAdZVSaA51kmADgfBDqrHnngH7c,12517
222
+ sqlalchemy/testing/engines.py,sha256=8R7nbmLNUv2w7tiyVpiVI1s-57wpEs70UAgY-pkPX8k,13953
223
+ sqlalchemy/testing/entities.py,sha256=Um-DFSz81p06DhTK899ZRUOZRw3FtUDeNMVHcIg3eLc,3471
224
+ sqlalchemy/testing/exclusions.py,sha256=8kjsaFfjCvPlLsQLD_LIDwuqvVlIVbD5qTWBlKdtNkM,12895
225
+ sqlalchemy/testing/pickleable.py,sha256=uYLl557iNep6jSOVl0vK1GwaLHUKidALoPJc-QIrC08,2988
226
+ sqlalchemy/testing/profiling.py,sha256=o8_V3TpF_WytudMQQLm1UxlfNDrLCWxUvkH-Kd0unKU,10472
227
+ sqlalchemy/testing/provision.py,sha256=l9KUBqR8_NLACZzE1f_twzjlkaVUzRa5tBwgJBmvqrY,15122
228
+ sqlalchemy/testing/requirements.py,sha256=CuMwr9ZvQV-3va7jZ_dx8CW2TsjlhcQJ_DdNHvmFpJQ,54650
229
+ sqlalchemy/testing/schema.py,sha256=z2Z5rm3iJ1-vgifUxwzxEjt1qu7QOyr3TeDnQdCHlWE,6737
230
+ sqlalchemy/testing/util.py,sha256=rQqTjYvb9wQt1UfeZZHNuPG3aNxFyjrvVQUhtfZQYjc,15006
231
+ sqlalchemy/testing/warnings.py,sha256=3EhbTlPe4gJnoydj-OKueNOOtGwIRF2kV4XvlFwFYOA,1598
232
+ sqlalchemy/testing/fixtures/__init__.py,sha256=B1IFCzEVdCqhEvFrLmgxZ_Fr08jDus5FddSA-lnnAAU,1226
233
+ sqlalchemy/testing/fixtures/base.py,sha256=S0ODuph0jA2Za4GN3NNhYVIqN9jAa3Q9Vd1N4O4rcTc,12622
234
+ sqlalchemy/testing/fixtures/mypy.py,sha256=2H8QxvGvwsb_Z3alRtvCvfXeqGjOb8aemfoYxQiuGMc,12285
235
+ sqlalchemy/testing/fixtures/orm.py,sha256=6JvQpIfmgmSTH3Hie4nhmUFfvH0pseujIFA9Lup2Dzw,6322
236
+ sqlalchemy/testing/fixtures/sql.py,sha256=w0qyMBLibPqkhE5ZhJtHcJmIDJlwcPpnlq9v0WajrF8,16403
237
+ sqlalchemy/testing/plugin/__init__.py,sha256=bbtVIt7LzVnUCcVxHWRH2owOQD067bQwwhyMf_whqHs,253
238
+ sqlalchemy/testing/plugin/bootstrap.py,sha256=USn6pE-JcE5pSmnEd2wad3goKLx2hdJS3AUUFpXHm-I,1736
239
+ sqlalchemy/testing/plugin/plugin_base.py,sha256=CgrNj2wj9KNALu9YfnGSaHX2fXfTtiim_cfx0CPVoy8,22357
240
+ sqlalchemy/testing/plugin/pytestplugin.py,sha256=acuAWFec8QGzC_AWOhTsRRgB6dttkbNdoyGVb7WvTng,28524
241
+ sqlalchemy/testing/suite/__init__.py,sha256=YvTEqUNHaBlgLgWDAWn79mQrUR4VBGUHtprywJlmDT8,741
242
+ sqlalchemy/testing/suite/test_cte.py,sha256=C_viXJKClFAm91rtPb42tiAA7gYJwKkqGYVJYap0cLM,6662
243
+ sqlalchemy/testing/suite/test_ddl.py,sha256=k6D6RreLkDSSpRUM2hQz-_CA48qV2PYx_2LNyUSoZzE,12420
244
+ sqlalchemy/testing/suite/test_deprecations.py,sha256=SKRFZDteBO1rw9-BQjDic5nh7fdyw2ypVOewR2pj7-Q,5490
245
+ sqlalchemy/testing/suite/test_dialect.py,sha256=ftOWRXWOotB2_jMJJqwoH9f3X2ucc1HwwOiXp573GwM,23663
246
+ sqlalchemy/testing/suite/test_insert.py,sha256=v3zrUZaGlke3cI4vabHg7xaI4gNqcHhtMPgYuf0mOxc,19454
247
+ sqlalchemy/testing/suite/test_reflection.py,sha256=J--LmZcLez3B21WANzLj2zC_6gcKX-ycBQW2CMQ_azA,112873
248
+ sqlalchemy/testing/suite/test_results.py,sha256=i2a_XiUJ5D9womKtJsveVUBUeJRpOOPrr1fJuen_qEY,17416
249
+ sqlalchemy/testing/suite/test_rowcount.py,sha256=DCEGxorDcrT5JCLd3_SNQeZmxT6sKIcuKxX1r6vK4Mg,8158
250
+ sqlalchemy/testing/suite/test_select.py,sha256=_HTef0mBmcvL2uS9z4G73AXZwXvjerQpl8wF1vqPt4I,63731
251
+ sqlalchemy/testing/suite/test_sequence.py,sha256=sIqkfgVqPIgl4lm75EPdag9gK-rTHfUm3pWX-JijPy4,10240
252
+ sqlalchemy/testing/suite/test_types.py,sha256=6RiN7L1g3b_3GUw8G_i39WB3M0W4tHNYTiwu57thzR0,69946
253
+ sqlalchemy/testing/suite/test_unicode_ddl.py,sha256=juF_KTK1nGrSlsL8z0Ky0rFSNkPGheLB3e0Kq3yRqss,6330
254
+ sqlalchemy/testing/suite/test_update_delete.py,sha256=TnJI5U_ZEuu3bni4sH-S6CENxvSZwDgZL-FKSV45bAo,4133
255
+ sqlalchemy/util/__init__.py,sha256=kE29cmjratY0xTq0vIQskMqFbKKmU69fLzer3TOAfYY,8472
256
+ sqlalchemy/util/_collections.py,sha256=602PFadp7l1ZMJdqNTt7gkj-4-Xid0Ioo2xy4o6ICVI,20793
257
+ sqlalchemy/util/_concurrency_py3k.py,sha256=8GB5fJVXvKp8BGyDBmFff3fTXQ71QUzkALiscX8qfYE,9458
258
+ sqlalchemy/util/_has_cy.py,sha256=IHGc5hUFbXQuv1a1z2P8yVwz0yGbCYXyQM2qsdcBTyg,1287
259
+ sqlalchemy/util/_py_collections.py,sha256=2PUqiKIsF8d-gNDAAqYI8WE6XPyRf1flRLkVsJeXuOo,17255
260
+ sqlalchemy/util/compat.py,sha256=cJlRkbMD1DjV46dt1S9e4eboqDpKI5FotLYYVUjQ3J4,9061
261
+ sqlalchemy/util/concurrency.py,sha256=zlmuK99p5cPpEPxBQYSDfLHP0Pbuw4iDeUzU49Pb1Ow,3412
262
+ sqlalchemy/util/deprecations.py,sha256=AnHpDWHi7g2gv_QUTGStQTnr0J94lIF-3aFLOsv9yzg,12372
263
+ sqlalchemy/util/langhelpers.py,sha256=6-bwfvTw6x1Ev8rsnHFHXYJOZVJvphrv85fQAGtAyn0,67308
264
+ sqlalchemy/util/preloaded.py,sha256=78Sl7VjzTOPajbovvARxNeuZb-iYRpEvL5k8m5Bz4vQ,6054
265
+ sqlalchemy/util/queue.py,sha256=4SbSbVamUECjCDpMPR035N1ooVHt9W5GjbqkxfZmH5k,10507
266
+ sqlalchemy/util/tool_support.py,sha256=DuurikYgDUIIxk3gubUKl6rs-etXt3eeHaZ4ZkIyJXQ,6336
267
+ sqlalchemy/util/topological.py,sha256=_NdtAghZjhZ4e2fwWHmn25erP5cvtGgOUMplsCa_VCE,3578
268
+ sqlalchemy/util/typing.py,sha256=BTBK8Lb_4wm_1Jop0U98ULBk3a2PaN2wA1OegAhv1tA,18811
269
+ SQLAlchemy-2.0.36.dist-info/LICENSE,sha256=eYQKk6tEYK_iQW6ePf95YIdsg66dK-JwXoOhBNSXQOs,1119
270
+ SQLAlchemy-2.0.36.dist-info/METADATA,sha256=grqtAnGnYnQIU7y0X_EVSJjbaTjCEG1mMGnLYhj3Za4,9935
271
+ SQLAlchemy-2.0.36.dist-info/WHEEL,sha256=WsITy9NjrxZo875xZQhJpU3vZUHVZRtNnEd5DMBQpxU,101
272
+ SQLAlchemy-2.0.36.dist-info/top_level.txt,sha256=rp-ZgB7D8G11ivXON5VGPjupT1voYmWqkciDt5Uaw_Q,11
273
+ SQLAlchemy-2.0.36.dist-info/RECORD,,
@@ -0,0 +1,5 @@
1
+ Wheel-Version: 1.0
2
+ Generator: setuptools (75.1.0)
3
+ Root-Is-Purelib: false
4
+ Tag: cp313-cp313-win_amd64
5
+
@@ -0,0 +1 @@
1
+ sqlalchemy