sqlspec 0.36.0__cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.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 (531) hide show
  1. ac8f31065839703b4e70__mypyc.cpython-310-aarch64-linux-gnu.so +0 -0
  2. sqlspec/__init__.py +140 -0
  3. sqlspec/__main__.py +12 -0
  4. sqlspec/__metadata__.py +14 -0
  5. sqlspec/_serialization.py +315 -0
  6. sqlspec/_typing.py +700 -0
  7. sqlspec/adapters/__init__.py +0 -0
  8. sqlspec/adapters/adbc/__init__.py +5 -0
  9. sqlspec/adapters/adbc/_typing.py +82 -0
  10. sqlspec/adapters/adbc/adk/__init__.py +5 -0
  11. sqlspec/adapters/adbc/adk/store.py +1273 -0
  12. sqlspec/adapters/adbc/config.py +295 -0
  13. sqlspec/adapters/adbc/core.cpython-310-aarch64-linux-gnu.so +0 -0
  14. sqlspec/adapters/adbc/core.py +735 -0
  15. sqlspec/adapters/adbc/data_dictionary.py +334 -0
  16. sqlspec/adapters/adbc/driver.py +529 -0
  17. sqlspec/adapters/adbc/events/__init__.py +5 -0
  18. sqlspec/adapters/adbc/events/store.py +285 -0
  19. sqlspec/adapters/adbc/litestar/__init__.py +5 -0
  20. sqlspec/adapters/adbc/litestar/store.py +502 -0
  21. sqlspec/adapters/adbc/type_converter.cpython-310-aarch64-linux-gnu.so +0 -0
  22. sqlspec/adapters/adbc/type_converter.py +140 -0
  23. sqlspec/adapters/aiosqlite/__init__.py +25 -0
  24. sqlspec/adapters/aiosqlite/_typing.py +82 -0
  25. sqlspec/adapters/aiosqlite/adk/__init__.py +5 -0
  26. sqlspec/adapters/aiosqlite/adk/store.py +818 -0
  27. sqlspec/adapters/aiosqlite/config.py +334 -0
  28. sqlspec/adapters/aiosqlite/core.cpython-310-aarch64-linux-gnu.so +0 -0
  29. sqlspec/adapters/aiosqlite/core.py +315 -0
  30. sqlspec/adapters/aiosqlite/data_dictionary.py +208 -0
  31. sqlspec/adapters/aiosqlite/driver.py +313 -0
  32. sqlspec/adapters/aiosqlite/events/__init__.py +5 -0
  33. sqlspec/adapters/aiosqlite/events/store.py +20 -0
  34. sqlspec/adapters/aiosqlite/litestar/__init__.py +5 -0
  35. sqlspec/adapters/aiosqlite/litestar/store.py +279 -0
  36. sqlspec/adapters/aiosqlite/pool.py +533 -0
  37. sqlspec/adapters/asyncmy/__init__.py +21 -0
  38. sqlspec/adapters/asyncmy/_typing.py +87 -0
  39. sqlspec/adapters/asyncmy/adk/__init__.py +5 -0
  40. sqlspec/adapters/asyncmy/adk/store.py +703 -0
  41. sqlspec/adapters/asyncmy/config.py +302 -0
  42. sqlspec/adapters/asyncmy/core.cpython-310-aarch64-linux-gnu.so +0 -0
  43. sqlspec/adapters/asyncmy/core.py +360 -0
  44. sqlspec/adapters/asyncmy/data_dictionary.py +124 -0
  45. sqlspec/adapters/asyncmy/driver.py +383 -0
  46. sqlspec/adapters/asyncmy/events/__init__.py +5 -0
  47. sqlspec/adapters/asyncmy/events/store.py +104 -0
  48. sqlspec/adapters/asyncmy/litestar/__init__.py +5 -0
  49. sqlspec/adapters/asyncmy/litestar/store.py +296 -0
  50. sqlspec/adapters/asyncpg/__init__.py +19 -0
  51. sqlspec/adapters/asyncpg/_typing.py +88 -0
  52. sqlspec/adapters/asyncpg/adk/__init__.py +5 -0
  53. sqlspec/adapters/asyncpg/adk/store.py +748 -0
  54. sqlspec/adapters/asyncpg/config.py +569 -0
  55. sqlspec/adapters/asyncpg/core.cpython-310-aarch64-linux-gnu.so +0 -0
  56. sqlspec/adapters/asyncpg/core.py +367 -0
  57. sqlspec/adapters/asyncpg/data_dictionary.py +162 -0
  58. sqlspec/adapters/asyncpg/driver.py +487 -0
  59. sqlspec/adapters/asyncpg/events/__init__.py +6 -0
  60. sqlspec/adapters/asyncpg/events/backend.py +286 -0
  61. sqlspec/adapters/asyncpg/events/store.py +40 -0
  62. sqlspec/adapters/asyncpg/litestar/__init__.py +5 -0
  63. sqlspec/adapters/asyncpg/litestar/store.py +251 -0
  64. sqlspec/adapters/bigquery/__init__.py +14 -0
  65. sqlspec/adapters/bigquery/_typing.py +86 -0
  66. sqlspec/adapters/bigquery/adk/__init__.py +5 -0
  67. sqlspec/adapters/bigquery/adk/store.py +827 -0
  68. sqlspec/adapters/bigquery/config.py +353 -0
  69. sqlspec/adapters/bigquery/core.cpython-310-aarch64-linux-gnu.so +0 -0
  70. sqlspec/adapters/bigquery/core.py +715 -0
  71. sqlspec/adapters/bigquery/data_dictionary.py +128 -0
  72. sqlspec/adapters/bigquery/driver.py +548 -0
  73. sqlspec/adapters/bigquery/events/__init__.py +5 -0
  74. sqlspec/adapters/bigquery/events/store.py +139 -0
  75. sqlspec/adapters/bigquery/litestar/__init__.py +5 -0
  76. sqlspec/adapters/bigquery/litestar/store.py +325 -0
  77. sqlspec/adapters/bigquery/type_converter.cpython-310-aarch64-linux-gnu.so +0 -0
  78. sqlspec/adapters/bigquery/type_converter.py +107 -0
  79. sqlspec/adapters/cockroach_asyncpg/__init__.py +24 -0
  80. sqlspec/adapters/cockroach_asyncpg/_typing.py +72 -0
  81. sqlspec/adapters/cockroach_asyncpg/adk/__init__.py +3 -0
  82. sqlspec/adapters/cockroach_asyncpg/adk/store.py +410 -0
  83. sqlspec/adapters/cockroach_asyncpg/config.py +238 -0
  84. sqlspec/adapters/cockroach_asyncpg/core.cpython-310-aarch64-linux-gnu.so +0 -0
  85. sqlspec/adapters/cockroach_asyncpg/core.py +55 -0
  86. sqlspec/adapters/cockroach_asyncpg/data_dictionary.py +107 -0
  87. sqlspec/adapters/cockroach_asyncpg/driver.py +144 -0
  88. sqlspec/adapters/cockroach_asyncpg/events/__init__.py +3 -0
  89. sqlspec/adapters/cockroach_asyncpg/events/store.py +20 -0
  90. sqlspec/adapters/cockroach_asyncpg/litestar/__init__.py +3 -0
  91. sqlspec/adapters/cockroach_asyncpg/litestar/store.py +142 -0
  92. sqlspec/adapters/cockroach_psycopg/__init__.py +38 -0
  93. sqlspec/adapters/cockroach_psycopg/_typing.py +129 -0
  94. sqlspec/adapters/cockroach_psycopg/adk/__init__.py +13 -0
  95. sqlspec/adapters/cockroach_psycopg/adk/store.py +868 -0
  96. sqlspec/adapters/cockroach_psycopg/config.py +484 -0
  97. sqlspec/adapters/cockroach_psycopg/core.cpython-310-aarch64-linux-gnu.so +0 -0
  98. sqlspec/adapters/cockroach_psycopg/core.py +63 -0
  99. sqlspec/adapters/cockroach_psycopg/data_dictionary.py +215 -0
  100. sqlspec/adapters/cockroach_psycopg/driver.py +284 -0
  101. sqlspec/adapters/cockroach_psycopg/events/__init__.py +6 -0
  102. sqlspec/adapters/cockroach_psycopg/events/store.py +34 -0
  103. sqlspec/adapters/cockroach_psycopg/litestar/__init__.py +3 -0
  104. sqlspec/adapters/cockroach_psycopg/litestar/store.py +325 -0
  105. sqlspec/adapters/duckdb/__init__.py +25 -0
  106. sqlspec/adapters/duckdb/_typing.py +81 -0
  107. sqlspec/adapters/duckdb/adk/__init__.py +14 -0
  108. sqlspec/adapters/duckdb/adk/store.py +850 -0
  109. sqlspec/adapters/duckdb/config.py +463 -0
  110. sqlspec/adapters/duckdb/core.cpython-310-aarch64-linux-gnu.so +0 -0
  111. sqlspec/adapters/duckdb/core.py +257 -0
  112. sqlspec/adapters/duckdb/data_dictionary.py +140 -0
  113. sqlspec/adapters/duckdb/driver.py +430 -0
  114. sqlspec/adapters/duckdb/events/__init__.py +5 -0
  115. sqlspec/adapters/duckdb/events/store.py +57 -0
  116. sqlspec/adapters/duckdb/litestar/__init__.py +5 -0
  117. sqlspec/adapters/duckdb/litestar/store.py +330 -0
  118. sqlspec/adapters/duckdb/pool.py +293 -0
  119. sqlspec/adapters/duckdb/type_converter.cpython-310-aarch64-linux-gnu.so +0 -0
  120. sqlspec/adapters/duckdb/type_converter.py +118 -0
  121. sqlspec/adapters/mock/__init__.py +72 -0
  122. sqlspec/adapters/mock/_typing.py +147 -0
  123. sqlspec/adapters/mock/config.py +483 -0
  124. sqlspec/adapters/mock/core.py +319 -0
  125. sqlspec/adapters/mock/data_dictionary.py +366 -0
  126. sqlspec/adapters/mock/driver.py +721 -0
  127. sqlspec/adapters/mysqlconnector/__init__.py +36 -0
  128. sqlspec/adapters/mysqlconnector/_typing.py +141 -0
  129. sqlspec/adapters/mysqlconnector/adk/__init__.py +15 -0
  130. sqlspec/adapters/mysqlconnector/adk/store.py +1060 -0
  131. sqlspec/adapters/mysqlconnector/config.py +394 -0
  132. sqlspec/adapters/mysqlconnector/core.cpython-310-aarch64-linux-gnu.so +0 -0
  133. sqlspec/adapters/mysqlconnector/core.py +303 -0
  134. sqlspec/adapters/mysqlconnector/data_dictionary.py +235 -0
  135. sqlspec/adapters/mysqlconnector/driver.py +483 -0
  136. sqlspec/adapters/mysqlconnector/events/__init__.py +8 -0
  137. sqlspec/adapters/mysqlconnector/events/store.py +98 -0
  138. sqlspec/adapters/mysqlconnector/litestar/__init__.py +5 -0
  139. sqlspec/adapters/mysqlconnector/litestar/store.py +426 -0
  140. sqlspec/adapters/oracledb/__init__.py +60 -0
  141. sqlspec/adapters/oracledb/_numpy_handlers.py +141 -0
  142. sqlspec/adapters/oracledb/_typing.py +182 -0
  143. sqlspec/adapters/oracledb/_uuid_handlers.py +166 -0
  144. sqlspec/adapters/oracledb/adk/__init__.py +10 -0
  145. sqlspec/adapters/oracledb/adk/store.py +2369 -0
  146. sqlspec/adapters/oracledb/config.py +550 -0
  147. sqlspec/adapters/oracledb/core.cpython-310-aarch64-linux-gnu.so +0 -0
  148. sqlspec/adapters/oracledb/core.py +543 -0
  149. sqlspec/adapters/oracledb/data_dictionary.py +536 -0
  150. sqlspec/adapters/oracledb/driver.py +1229 -0
  151. sqlspec/adapters/oracledb/events/__init__.py +16 -0
  152. sqlspec/adapters/oracledb/events/backend.py +347 -0
  153. sqlspec/adapters/oracledb/events/store.py +420 -0
  154. sqlspec/adapters/oracledb/litestar/__init__.py +5 -0
  155. sqlspec/adapters/oracledb/litestar/store.py +781 -0
  156. sqlspec/adapters/oracledb/migrations.py +535 -0
  157. sqlspec/adapters/oracledb/type_converter.cpython-310-aarch64-linux-gnu.so +0 -0
  158. sqlspec/adapters/oracledb/type_converter.py +211 -0
  159. sqlspec/adapters/psqlpy/__init__.py +17 -0
  160. sqlspec/adapters/psqlpy/_typing.py +79 -0
  161. sqlspec/adapters/psqlpy/adk/__init__.py +5 -0
  162. sqlspec/adapters/psqlpy/adk/store.py +766 -0
  163. sqlspec/adapters/psqlpy/config.py +304 -0
  164. sqlspec/adapters/psqlpy/core.cpython-310-aarch64-linux-gnu.so +0 -0
  165. sqlspec/adapters/psqlpy/core.py +480 -0
  166. sqlspec/adapters/psqlpy/data_dictionary.py +126 -0
  167. sqlspec/adapters/psqlpy/driver.py +438 -0
  168. sqlspec/adapters/psqlpy/events/__init__.py +6 -0
  169. sqlspec/adapters/psqlpy/events/backend.py +310 -0
  170. sqlspec/adapters/psqlpy/events/store.py +20 -0
  171. sqlspec/adapters/psqlpy/litestar/__init__.py +5 -0
  172. sqlspec/adapters/psqlpy/litestar/store.py +270 -0
  173. sqlspec/adapters/psqlpy/type_converter.cpython-310-aarch64-linux-gnu.so +0 -0
  174. sqlspec/adapters/psqlpy/type_converter.py +113 -0
  175. sqlspec/adapters/psycopg/__init__.py +32 -0
  176. sqlspec/adapters/psycopg/_typing.py +164 -0
  177. sqlspec/adapters/psycopg/adk/__init__.py +10 -0
  178. sqlspec/adapters/psycopg/adk/store.py +1387 -0
  179. sqlspec/adapters/psycopg/config.py +576 -0
  180. sqlspec/adapters/psycopg/core.cpython-310-aarch64-linux-gnu.so +0 -0
  181. sqlspec/adapters/psycopg/core.py +450 -0
  182. sqlspec/adapters/psycopg/data_dictionary.py +289 -0
  183. sqlspec/adapters/psycopg/driver.py +975 -0
  184. sqlspec/adapters/psycopg/events/__init__.py +20 -0
  185. sqlspec/adapters/psycopg/events/backend.py +458 -0
  186. sqlspec/adapters/psycopg/events/store.py +42 -0
  187. sqlspec/adapters/psycopg/litestar/__init__.py +5 -0
  188. sqlspec/adapters/psycopg/litestar/store.py +552 -0
  189. sqlspec/adapters/psycopg/type_converter.cpython-310-aarch64-linux-gnu.so +0 -0
  190. sqlspec/adapters/psycopg/type_converter.py +93 -0
  191. sqlspec/adapters/pymysql/__init__.py +21 -0
  192. sqlspec/adapters/pymysql/_typing.py +71 -0
  193. sqlspec/adapters/pymysql/adk/__init__.py +5 -0
  194. sqlspec/adapters/pymysql/adk/store.py +540 -0
  195. sqlspec/adapters/pymysql/config.py +195 -0
  196. sqlspec/adapters/pymysql/core.cpython-310-aarch64-linux-gnu.so +0 -0
  197. sqlspec/adapters/pymysql/core.py +299 -0
  198. sqlspec/adapters/pymysql/data_dictionary.py +122 -0
  199. sqlspec/adapters/pymysql/driver.py +259 -0
  200. sqlspec/adapters/pymysql/events/__init__.py +5 -0
  201. sqlspec/adapters/pymysql/events/store.py +50 -0
  202. sqlspec/adapters/pymysql/litestar/__init__.py +5 -0
  203. sqlspec/adapters/pymysql/litestar/store.py +232 -0
  204. sqlspec/adapters/pymysql/pool.py +137 -0
  205. sqlspec/adapters/spanner/__init__.py +40 -0
  206. sqlspec/adapters/spanner/_typing.py +86 -0
  207. sqlspec/adapters/spanner/adk/__init__.py +5 -0
  208. sqlspec/adapters/spanner/adk/store.py +732 -0
  209. sqlspec/adapters/spanner/config.py +352 -0
  210. sqlspec/adapters/spanner/core.cpython-310-aarch64-linux-gnu.so +0 -0
  211. sqlspec/adapters/spanner/core.py +188 -0
  212. sqlspec/adapters/spanner/data_dictionary.py +120 -0
  213. sqlspec/adapters/spanner/dialect/__init__.py +6 -0
  214. sqlspec/adapters/spanner/dialect/_spangres.py +57 -0
  215. sqlspec/adapters/spanner/dialect/_spanner.py +130 -0
  216. sqlspec/adapters/spanner/driver.py +373 -0
  217. sqlspec/adapters/spanner/events/__init__.py +5 -0
  218. sqlspec/adapters/spanner/events/store.py +187 -0
  219. sqlspec/adapters/spanner/litestar/__init__.py +5 -0
  220. sqlspec/adapters/spanner/litestar/store.py +291 -0
  221. sqlspec/adapters/spanner/type_converter.cpython-310-aarch64-linux-gnu.so +0 -0
  222. sqlspec/adapters/spanner/type_converter.py +331 -0
  223. sqlspec/adapters/sqlite/__init__.py +19 -0
  224. sqlspec/adapters/sqlite/_typing.py +80 -0
  225. sqlspec/adapters/sqlite/adk/__init__.py +5 -0
  226. sqlspec/adapters/sqlite/adk/store.py +958 -0
  227. sqlspec/adapters/sqlite/config.py +280 -0
  228. sqlspec/adapters/sqlite/core.cpython-310-aarch64-linux-gnu.so +0 -0
  229. sqlspec/adapters/sqlite/core.py +312 -0
  230. sqlspec/adapters/sqlite/data_dictionary.py +202 -0
  231. sqlspec/adapters/sqlite/driver.py +359 -0
  232. sqlspec/adapters/sqlite/events/__init__.py +5 -0
  233. sqlspec/adapters/sqlite/events/store.py +20 -0
  234. sqlspec/adapters/sqlite/litestar/__init__.py +5 -0
  235. sqlspec/adapters/sqlite/litestar/store.py +316 -0
  236. sqlspec/adapters/sqlite/pool.py +198 -0
  237. sqlspec/adapters/sqlite/type_converter.cpython-310-aarch64-linux-gnu.so +0 -0
  238. sqlspec/adapters/sqlite/type_converter.py +114 -0
  239. sqlspec/base.py +747 -0
  240. sqlspec/builder/__init__.py +179 -0
  241. sqlspec/builder/_base.cpython-310-aarch64-linux-gnu.so +0 -0
  242. sqlspec/builder/_base.py +1022 -0
  243. sqlspec/builder/_column.cpython-310-aarch64-linux-gnu.so +0 -0
  244. sqlspec/builder/_column.py +521 -0
  245. sqlspec/builder/_ddl.cpython-310-aarch64-linux-gnu.so +0 -0
  246. sqlspec/builder/_ddl.py +1642 -0
  247. sqlspec/builder/_delete.cpython-310-aarch64-linux-gnu.so +0 -0
  248. sqlspec/builder/_delete.py +95 -0
  249. sqlspec/builder/_dml.cpython-310-aarch64-linux-gnu.so +0 -0
  250. sqlspec/builder/_dml.py +365 -0
  251. sqlspec/builder/_explain.cpython-310-aarch64-linux-gnu.so +0 -0
  252. sqlspec/builder/_explain.py +579 -0
  253. sqlspec/builder/_expression_wrappers.cpython-310-aarch64-linux-gnu.so +0 -0
  254. sqlspec/builder/_expression_wrappers.py +46 -0
  255. sqlspec/builder/_factory.cpython-310-aarch64-linux-gnu.so +0 -0
  256. sqlspec/builder/_factory.py +1697 -0
  257. sqlspec/builder/_insert.cpython-310-aarch64-linux-gnu.so +0 -0
  258. sqlspec/builder/_insert.py +328 -0
  259. sqlspec/builder/_join.cpython-310-aarch64-linux-gnu.so +0 -0
  260. sqlspec/builder/_join.py +499 -0
  261. sqlspec/builder/_merge.cpython-310-aarch64-linux-gnu.so +0 -0
  262. sqlspec/builder/_merge.py +821 -0
  263. sqlspec/builder/_parsing_utils.cpython-310-aarch64-linux-gnu.so +0 -0
  264. sqlspec/builder/_parsing_utils.py +297 -0
  265. sqlspec/builder/_select.cpython-310-aarch64-linux-gnu.so +0 -0
  266. sqlspec/builder/_select.py +1660 -0
  267. sqlspec/builder/_temporal.cpython-310-aarch64-linux-gnu.so +0 -0
  268. sqlspec/builder/_temporal.py +139 -0
  269. sqlspec/builder/_update.cpython-310-aarch64-linux-gnu.so +0 -0
  270. sqlspec/builder/_update.py +173 -0
  271. sqlspec/builder/_vector_expressions.py +267 -0
  272. sqlspec/cli.py +911 -0
  273. sqlspec/config.py +1755 -0
  274. sqlspec/core/__init__.py +374 -0
  275. sqlspec/core/_correlation.cpython-310-aarch64-linux-gnu.so +0 -0
  276. sqlspec/core/_correlation.py +176 -0
  277. sqlspec/core/cache.cpython-310-aarch64-linux-gnu.so +0 -0
  278. sqlspec/core/cache.py +1069 -0
  279. sqlspec/core/compiler.cpython-310-aarch64-linux-gnu.so +0 -0
  280. sqlspec/core/compiler.py +954 -0
  281. sqlspec/core/explain.cpython-310-aarch64-linux-gnu.so +0 -0
  282. sqlspec/core/explain.py +275 -0
  283. sqlspec/core/filters.cpython-310-aarch64-linux-gnu.so +0 -0
  284. sqlspec/core/filters.py +952 -0
  285. sqlspec/core/hashing.cpython-310-aarch64-linux-gnu.so +0 -0
  286. sqlspec/core/hashing.py +262 -0
  287. sqlspec/core/metrics.cpython-310-aarch64-linux-gnu.so +0 -0
  288. sqlspec/core/metrics.py +83 -0
  289. sqlspec/core/parameters/__init__.py +71 -0
  290. sqlspec/core/parameters/_alignment.cpython-310-aarch64-linux-gnu.so +0 -0
  291. sqlspec/core/parameters/_alignment.py +270 -0
  292. sqlspec/core/parameters/_converter.cpython-310-aarch64-linux-gnu.so +0 -0
  293. sqlspec/core/parameters/_converter.py +543 -0
  294. sqlspec/core/parameters/_processor.cpython-310-aarch64-linux-gnu.so +0 -0
  295. sqlspec/core/parameters/_processor.py +505 -0
  296. sqlspec/core/parameters/_registry.cpython-310-aarch64-linux-gnu.so +0 -0
  297. sqlspec/core/parameters/_registry.py +206 -0
  298. sqlspec/core/parameters/_transformers.cpython-310-aarch64-linux-gnu.so +0 -0
  299. sqlspec/core/parameters/_transformers.py +292 -0
  300. sqlspec/core/parameters/_types.cpython-310-aarch64-linux-gnu.so +0 -0
  301. sqlspec/core/parameters/_types.py +499 -0
  302. sqlspec/core/parameters/_validator.cpython-310-aarch64-linux-gnu.so +0 -0
  303. sqlspec/core/parameters/_validator.py +180 -0
  304. sqlspec/core/pipeline.cpython-310-aarch64-linux-gnu.so +0 -0
  305. sqlspec/core/pipeline.py +319 -0
  306. sqlspec/core/query_modifiers.cpython-310-aarch64-linux-gnu.so +0 -0
  307. sqlspec/core/query_modifiers.py +437 -0
  308. sqlspec/core/result/__init__.py +23 -0
  309. sqlspec/core/result/_base.cpython-310-aarch64-linux-gnu.so +0 -0
  310. sqlspec/core/result/_base.py +1121 -0
  311. sqlspec/core/result/_io.cpython-310-aarch64-linux-gnu.so +0 -0
  312. sqlspec/core/result/_io.py +28 -0
  313. sqlspec/core/splitter.cpython-310-aarch64-linux-gnu.so +0 -0
  314. sqlspec/core/splitter.py +966 -0
  315. sqlspec/core/stack.cpython-310-aarch64-linux-gnu.so +0 -0
  316. sqlspec/core/stack.py +163 -0
  317. sqlspec/core/statement.cpython-310-aarch64-linux-gnu.so +0 -0
  318. sqlspec/core/statement.py +1503 -0
  319. sqlspec/core/type_converter.cpython-310-aarch64-linux-gnu.so +0 -0
  320. sqlspec/core/type_converter.py +339 -0
  321. sqlspec/data_dictionary/__init__.py +22 -0
  322. sqlspec/data_dictionary/_loader.py +123 -0
  323. sqlspec/data_dictionary/_registry.cpython-310-aarch64-linux-gnu.so +0 -0
  324. sqlspec/data_dictionary/_registry.py +74 -0
  325. sqlspec/data_dictionary/_types.cpython-310-aarch64-linux-gnu.so +0 -0
  326. sqlspec/data_dictionary/_types.py +121 -0
  327. sqlspec/data_dictionary/dialects/__init__.py +21 -0
  328. sqlspec/data_dictionary/dialects/bigquery.cpython-310-aarch64-linux-gnu.so +0 -0
  329. sqlspec/data_dictionary/dialects/bigquery.py +49 -0
  330. sqlspec/data_dictionary/dialects/cockroachdb.cpython-310-aarch64-linux-gnu.so +0 -0
  331. sqlspec/data_dictionary/dialects/cockroachdb.py +43 -0
  332. sqlspec/data_dictionary/dialects/duckdb.cpython-310-aarch64-linux-gnu.so +0 -0
  333. sqlspec/data_dictionary/dialects/duckdb.py +47 -0
  334. sqlspec/data_dictionary/dialects/mysql.cpython-310-aarch64-linux-gnu.so +0 -0
  335. sqlspec/data_dictionary/dialects/mysql.py +42 -0
  336. sqlspec/data_dictionary/dialects/oracle.cpython-310-aarch64-linux-gnu.so +0 -0
  337. sqlspec/data_dictionary/dialects/oracle.py +34 -0
  338. sqlspec/data_dictionary/dialects/postgres.cpython-310-aarch64-linux-gnu.so +0 -0
  339. sqlspec/data_dictionary/dialects/postgres.py +46 -0
  340. sqlspec/data_dictionary/dialects/spanner.cpython-310-aarch64-linux-gnu.so +0 -0
  341. sqlspec/data_dictionary/dialects/spanner.py +37 -0
  342. sqlspec/data_dictionary/dialects/sqlite.cpython-310-aarch64-linux-gnu.so +0 -0
  343. sqlspec/data_dictionary/dialects/sqlite.py +42 -0
  344. sqlspec/data_dictionary/sql/.gitkeep +0 -0
  345. sqlspec/data_dictionary/sql/bigquery/columns.sql +23 -0
  346. sqlspec/data_dictionary/sql/bigquery/foreign_keys.sql +34 -0
  347. sqlspec/data_dictionary/sql/bigquery/indexes.sql +19 -0
  348. sqlspec/data_dictionary/sql/bigquery/tables.sql +33 -0
  349. sqlspec/data_dictionary/sql/bigquery/version.sql +3 -0
  350. sqlspec/data_dictionary/sql/cockroachdb/columns.sql +34 -0
  351. sqlspec/data_dictionary/sql/cockroachdb/foreign_keys.sql +40 -0
  352. sqlspec/data_dictionary/sql/cockroachdb/indexes.sql +32 -0
  353. sqlspec/data_dictionary/sql/cockroachdb/tables.sql +44 -0
  354. sqlspec/data_dictionary/sql/cockroachdb/version.sql +3 -0
  355. sqlspec/data_dictionary/sql/duckdb/columns.sql +23 -0
  356. sqlspec/data_dictionary/sql/duckdb/foreign_keys.sql +36 -0
  357. sqlspec/data_dictionary/sql/duckdb/indexes.sql +19 -0
  358. sqlspec/data_dictionary/sql/duckdb/tables.sql +38 -0
  359. sqlspec/data_dictionary/sql/duckdb/version.sql +3 -0
  360. sqlspec/data_dictionary/sql/mysql/columns.sql +23 -0
  361. sqlspec/data_dictionary/sql/mysql/foreign_keys.sql +28 -0
  362. sqlspec/data_dictionary/sql/mysql/indexes.sql +26 -0
  363. sqlspec/data_dictionary/sql/mysql/tables.sql +33 -0
  364. sqlspec/data_dictionary/sql/mysql/version.sql +3 -0
  365. sqlspec/data_dictionary/sql/oracle/columns.sql +23 -0
  366. sqlspec/data_dictionary/sql/oracle/foreign_keys.sql +48 -0
  367. sqlspec/data_dictionary/sql/oracle/indexes.sql +44 -0
  368. sqlspec/data_dictionary/sql/oracle/tables.sql +25 -0
  369. sqlspec/data_dictionary/sql/oracle/version.sql +20 -0
  370. sqlspec/data_dictionary/sql/postgres/columns.sql +34 -0
  371. sqlspec/data_dictionary/sql/postgres/foreign_keys.sql +40 -0
  372. sqlspec/data_dictionary/sql/postgres/indexes.sql +56 -0
  373. sqlspec/data_dictionary/sql/postgres/tables.sql +44 -0
  374. sqlspec/data_dictionary/sql/postgres/version.sql +3 -0
  375. sqlspec/data_dictionary/sql/spanner/columns.sql +23 -0
  376. sqlspec/data_dictionary/sql/spanner/foreign_keys.sql +70 -0
  377. sqlspec/data_dictionary/sql/spanner/indexes.sql +30 -0
  378. sqlspec/data_dictionary/sql/spanner/tables.sql +9 -0
  379. sqlspec/data_dictionary/sql/spanner/version.sql +3 -0
  380. sqlspec/data_dictionary/sql/sqlite/columns.sql +23 -0
  381. sqlspec/data_dictionary/sql/sqlite/foreign_keys.sql +22 -0
  382. sqlspec/data_dictionary/sql/sqlite/indexes.sql +7 -0
  383. sqlspec/data_dictionary/sql/sqlite/tables.sql +28 -0
  384. sqlspec/data_dictionary/sql/sqlite/version.sql +3 -0
  385. sqlspec/driver/__init__.py +32 -0
  386. sqlspec/driver/_async.cpython-310-aarch64-linux-gnu.so +0 -0
  387. sqlspec/driver/_async.py +1737 -0
  388. sqlspec/driver/_common.cpython-310-aarch64-linux-gnu.so +0 -0
  389. sqlspec/driver/_common.py +1478 -0
  390. sqlspec/driver/_sql_helpers.cpython-310-aarch64-linux-gnu.so +0 -0
  391. sqlspec/driver/_sql_helpers.py +148 -0
  392. sqlspec/driver/_storage_helpers.cpython-310-aarch64-linux-gnu.so +0 -0
  393. sqlspec/driver/_storage_helpers.py +144 -0
  394. sqlspec/driver/_sync.cpython-310-aarch64-linux-gnu.so +0 -0
  395. sqlspec/driver/_sync.py +1710 -0
  396. sqlspec/exceptions.py +338 -0
  397. sqlspec/extensions/__init__.py +0 -0
  398. sqlspec/extensions/adk/__init__.py +70 -0
  399. sqlspec/extensions/adk/_types.py +51 -0
  400. sqlspec/extensions/adk/converters.py +172 -0
  401. sqlspec/extensions/adk/memory/__init__.py +69 -0
  402. sqlspec/extensions/adk/memory/_types.py +30 -0
  403. sqlspec/extensions/adk/memory/converters.py +149 -0
  404. sqlspec/extensions/adk/memory/service.py +217 -0
  405. sqlspec/extensions/adk/memory/store.py +569 -0
  406. sqlspec/extensions/adk/migrations/0001_create_adk_tables.py +246 -0
  407. sqlspec/extensions/adk/migrations/__init__.py +0 -0
  408. sqlspec/extensions/adk/service.py +225 -0
  409. sqlspec/extensions/adk/store.py +567 -0
  410. sqlspec/extensions/events/__init__.py +51 -0
  411. sqlspec/extensions/events/_channel.py +703 -0
  412. sqlspec/extensions/events/_hints.py +45 -0
  413. sqlspec/extensions/events/_models.py +23 -0
  414. sqlspec/extensions/events/_payload.py +69 -0
  415. sqlspec/extensions/events/_protocols.py +134 -0
  416. sqlspec/extensions/events/_queue.py +461 -0
  417. sqlspec/extensions/events/_store.py +209 -0
  418. sqlspec/extensions/events/migrations/0001_create_event_queue.py +59 -0
  419. sqlspec/extensions/events/migrations/__init__.py +3 -0
  420. sqlspec/extensions/fastapi/__init__.py +19 -0
  421. sqlspec/extensions/fastapi/extension.py +351 -0
  422. sqlspec/extensions/fastapi/providers.py +607 -0
  423. sqlspec/extensions/flask/__init__.py +37 -0
  424. sqlspec/extensions/flask/_state.py +76 -0
  425. sqlspec/extensions/flask/_utils.py +71 -0
  426. sqlspec/extensions/flask/extension.py +519 -0
  427. sqlspec/extensions/litestar/__init__.py +28 -0
  428. sqlspec/extensions/litestar/_utils.py +52 -0
  429. sqlspec/extensions/litestar/channels.py +165 -0
  430. sqlspec/extensions/litestar/cli.py +102 -0
  431. sqlspec/extensions/litestar/config.py +90 -0
  432. sqlspec/extensions/litestar/handlers.py +316 -0
  433. sqlspec/extensions/litestar/migrations/0001_create_session_table.py +137 -0
  434. sqlspec/extensions/litestar/migrations/__init__.py +3 -0
  435. sqlspec/extensions/litestar/plugin.py +671 -0
  436. sqlspec/extensions/litestar/providers.py +526 -0
  437. sqlspec/extensions/litestar/store.py +296 -0
  438. sqlspec/extensions/otel/__init__.py +58 -0
  439. sqlspec/extensions/prometheus/__init__.py +113 -0
  440. sqlspec/extensions/starlette/__init__.py +19 -0
  441. sqlspec/extensions/starlette/_state.py +30 -0
  442. sqlspec/extensions/starlette/_utils.py +96 -0
  443. sqlspec/extensions/starlette/extension.py +346 -0
  444. sqlspec/extensions/starlette/middleware.py +235 -0
  445. sqlspec/loader.cpython-310-aarch64-linux-gnu.so +0 -0
  446. sqlspec/loader.py +702 -0
  447. sqlspec/migrations/__init__.py +36 -0
  448. sqlspec/migrations/base.py +731 -0
  449. sqlspec/migrations/commands.py +1232 -0
  450. sqlspec/migrations/context.py +157 -0
  451. sqlspec/migrations/fix.py +204 -0
  452. sqlspec/migrations/loaders.py +443 -0
  453. sqlspec/migrations/runner.py +1172 -0
  454. sqlspec/migrations/templates.py +234 -0
  455. sqlspec/migrations/tracker.py +611 -0
  456. sqlspec/migrations/utils.py +256 -0
  457. sqlspec/migrations/validation.py +207 -0
  458. sqlspec/migrations/version.py +446 -0
  459. sqlspec/observability/__init__.py +55 -0
  460. sqlspec/observability/_common.cpython-310-aarch64-linux-gnu.so +0 -0
  461. sqlspec/observability/_common.py +77 -0
  462. sqlspec/observability/_config.cpython-310-aarch64-linux-gnu.so +0 -0
  463. sqlspec/observability/_config.py +348 -0
  464. sqlspec/observability/_diagnostics.cpython-310-aarch64-linux-gnu.so +0 -0
  465. sqlspec/observability/_diagnostics.py +74 -0
  466. sqlspec/observability/_dispatcher.cpython-310-aarch64-linux-gnu.so +0 -0
  467. sqlspec/observability/_dispatcher.py +152 -0
  468. sqlspec/observability/_formatters/__init__.py +13 -0
  469. sqlspec/observability/_formatters/_aws.cpython-310-aarch64-linux-gnu.so +0 -0
  470. sqlspec/observability/_formatters/_aws.py +102 -0
  471. sqlspec/observability/_formatters/_azure.cpython-310-aarch64-linux-gnu.so +0 -0
  472. sqlspec/observability/_formatters/_azure.py +96 -0
  473. sqlspec/observability/_formatters/_base.cpython-310-aarch64-linux-gnu.so +0 -0
  474. sqlspec/observability/_formatters/_base.py +57 -0
  475. sqlspec/observability/_formatters/_gcp.cpython-310-aarch64-linux-gnu.so +0 -0
  476. sqlspec/observability/_formatters/_gcp.py +131 -0
  477. sqlspec/observability/_formatting.py +58 -0
  478. sqlspec/observability/_observer.cpython-310-aarch64-linux-gnu.so +0 -0
  479. sqlspec/observability/_observer.py +357 -0
  480. sqlspec/observability/_runtime.cpython-310-aarch64-linux-gnu.so +0 -0
  481. sqlspec/observability/_runtime.py +420 -0
  482. sqlspec/observability/_sampling.cpython-310-aarch64-linux-gnu.so +0 -0
  483. sqlspec/observability/_sampling.py +188 -0
  484. sqlspec/observability/_spans.cpython-310-aarch64-linux-gnu.so +0 -0
  485. sqlspec/observability/_spans.py +161 -0
  486. sqlspec/protocols.py +916 -0
  487. sqlspec/py.typed +0 -0
  488. sqlspec/storage/__init__.py +48 -0
  489. sqlspec/storage/_utils.py +104 -0
  490. sqlspec/storage/backends/__init__.py +1 -0
  491. sqlspec/storage/backends/base.py +253 -0
  492. sqlspec/storage/backends/fsspec.py +529 -0
  493. sqlspec/storage/backends/local.py +441 -0
  494. sqlspec/storage/backends/obstore.py +916 -0
  495. sqlspec/storage/errors.py +104 -0
  496. sqlspec/storage/pipeline.py +582 -0
  497. sqlspec/storage/registry.py +301 -0
  498. sqlspec/typing.py +395 -0
  499. sqlspec/utils/__init__.py +7 -0
  500. sqlspec/utils/arrow_helpers.py +318 -0
  501. sqlspec/utils/config_tools.py +332 -0
  502. sqlspec/utils/correlation.cpython-310-aarch64-linux-gnu.so +0 -0
  503. sqlspec/utils/correlation.py +134 -0
  504. sqlspec/utils/deprecation.py +190 -0
  505. sqlspec/utils/fixtures.cpython-310-aarch64-linux-gnu.so +0 -0
  506. sqlspec/utils/fixtures.py +258 -0
  507. sqlspec/utils/logging.py +222 -0
  508. sqlspec/utils/module_loader.py +306 -0
  509. sqlspec/utils/portal.cpython-310-aarch64-linux-gnu.so +0 -0
  510. sqlspec/utils/portal.py +375 -0
  511. sqlspec/utils/schema.cpython-310-aarch64-linux-gnu.so +0 -0
  512. sqlspec/utils/schema.py +485 -0
  513. sqlspec/utils/serializers.cpython-310-aarch64-linux-gnu.so +0 -0
  514. sqlspec/utils/serializers.py +408 -0
  515. sqlspec/utils/singleton.cpython-310-aarch64-linux-gnu.so +0 -0
  516. sqlspec/utils/singleton.py +41 -0
  517. sqlspec/utils/sync_tools.cpython-310-aarch64-linux-gnu.so +0 -0
  518. sqlspec/utils/sync_tools.py +311 -0
  519. sqlspec/utils/text.cpython-310-aarch64-linux-gnu.so +0 -0
  520. sqlspec/utils/text.py +108 -0
  521. sqlspec/utils/type_converters.cpython-310-aarch64-linux-gnu.so +0 -0
  522. sqlspec/utils/type_converters.py +128 -0
  523. sqlspec/utils/type_guards.cpython-310-aarch64-linux-gnu.so +0 -0
  524. sqlspec/utils/type_guards.py +1360 -0
  525. sqlspec/utils/uuids.cpython-310-aarch64-linux-gnu.so +0 -0
  526. sqlspec/utils/uuids.py +225 -0
  527. sqlspec-0.36.0.dist-info/METADATA +205 -0
  528. sqlspec-0.36.0.dist-info/RECORD +531 -0
  529. sqlspec-0.36.0.dist-info/WHEEL +7 -0
  530. sqlspec-0.36.0.dist-info/entry_points.txt +2 -0
  531. sqlspec-0.36.0.dist-info/licenses/LICENSE +21 -0
sqlspec/_typing.py ADDED
@@ -0,0 +1,700 @@
1
+ # ruff: noqa: RUF100, PLR0913, A002, DOC201, PLR6301, PLR0917, ARG004, ARG002, ARG001
2
+ """Wrapper around library classes for compatibility when libraries are installed."""
3
+
4
+ import enum
5
+ from collections.abc import Iterable, Mapping
6
+ from dataclasses import dataclass
7
+ from enum import Enum
8
+ from typing import Any, ClassVar, Final, Literal, Protocol, cast, runtime_checkable
9
+
10
+ from typing_extensions import TypeVar, dataclass_transform
11
+
12
+ from sqlspec.utils.module_loader import dependency_flag, module_available
13
+
14
+
15
+ @runtime_checkable
16
+ class DataclassProtocol(Protocol):
17
+ """Protocol for instance checking dataclasses."""
18
+
19
+ __dataclass_fields__: "ClassVar[dict[str, Any]]"
20
+
21
+
22
+ T = TypeVar("T")
23
+ T_co = TypeVar("T_co", covariant=True)
24
+
25
+ # Always define stub types for type checking
26
+
27
+
28
+ class BaseModelStub:
29
+ """Placeholder implementation."""
30
+
31
+ model_fields: ClassVar[dict[str, Any]] = {}
32
+ __slots__ = ("__dict__", "__pydantic_extra__", "__pydantic_fields_set__", "__pydantic_private__")
33
+
34
+ def __init__(self, **data: Any) -> None:
35
+ for key, value in data.items():
36
+ setattr(self, key, value)
37
+
38
+ def model_dump( # noqa: PLR0913
39
+ self,
40
+ /,
41
+ *,
42
+ include: "Any | None" = None, # noqa: ARG002
43
+ exclude: "Any | None" = None, # noqa: ARG002
44
+ context: "Any | None" = None, # noqa: ARG002
45
+ by_alias: bool = False, # noqa: ARG002
46
+ exclude_unset: bool = False, # noqa: ARG002
47
+ exclude_defaults: bool = False, # noqa: ARG002
48
+ exclude_none: bool = False, # noqa: ARG002
49
+ round_trip: bool = False, # noqa: ARG002
50
+ warnings: "bool | Literal['none', 'warn', 'error']" = True, # noqa: ARG002
51
+ serialize_as_any: bool = False, # noqa: ARG002
52
+ ) -> "dict[str, Any]":
53
+ """Placeholder implementation."""
54
+ return {k: v for k, v in self.__dict__.items() if not k.startswith("_")}
55
+
56
+ def model_dump_json( # noqa: PLR0913
57
+ self,
58
+ /,
59
+ *,
60
+ include: "Any | None" = None, # noqa: ARG002
61
+ exclude: "Any | None" = None, # noqa: ARG002
62
+ context: "Any | None" = None, # noqa: ARG002
63
+ by_alias: bool = False, # noqa: ARG002
64
+ exclude_unset: bool = False, # noqa: ARG002
65
+ exclude_defaults: bool = False, # noqa: ARG002
66
+ exclude_none: bool = False, # noqa: ARG002
67
+ round_trip: bool = False, # noqa: ARG002
68
+ warnings: "bool | Literal['none', 'warn', 'error']" = True, # noqa: ARG002
69
+ serialize_as_any: bool = False, # noqa: ARG002
70
+ ) -> str:
71
+ """Placeholder implementation."""
72
+ return "{}"
73
+
74
+
75
+ class TypeAdapterStub:
76
+ """Placeholder implementation."""
77
+
78
+ def __init__(
79
+ self,
80
+ type: Any, # noqa: A002
81
+ *,
82
+ config: "Any | None" = None, # noqa: ARG002
83
+ _parent_depth: int = 2, # noqa: ARG002
84
+ module: "str | None" = None, # noqa: ARG002
85
+ ) -> None:
86
+ """Initialize."""
87
+ self._type = type
88
+
89
+ def validate_python( # noqa: PLR0913
90
+ self,
91
+ object: Any,
92
+ /,
93
+ *,
94
+ strict: "bool | None" = None, # noqa: ARG002
95
+ from_attributes: "bool | None" = None, # noqa: ARG002
96
+ context: "dict[str, Any] | None" = None, # noqa: ARG002
97
+ experimental_allow_partial: "bool | Literal['off', 'on', 'trailing-strings']" = False, # noqa: ARG002
98
+ ) -> Any:
99
+ """Validate Python object."""
100
+ return object
101
+
102
+
103
+ @dataclass
104
+ class FailFastStub:
105
+ """Placeholder implementation for FailFast."""
106
+
107
+ fail_fast: bool = True
108
+
109
+
110
+ # Try to import real implementations at runtime
111
+ try:
112
+ from pydantic import BaseModel as _RealBaseModel
113
+ from pydantic import FailFast as _RealFailFast
114
+ from pydantic import TypeAdapter as _RealTypeAdapter
115
+
116
+ BaseModel = _RealBaseModel
117
+ TypeAdapter = _RealTypeAdapter
118
+ FailFast = _RealFailFast
119
+ except ImportError:
120
+ BaseModel = BaseModelStub # type: ignore[assignment,misc]
121
+ TypeAdapter = TypeAdapterStub # type: ignore[assignment,misc]
122
+ FailFast = FailFastStub # type: ignore[assignment,misc]
123
+
124
+ # Always define stub types for msgspec
125
+
126
+
127
+ @dataclass_transform()
128
+ class StructStub:
129
+ """Placeholder implementation."""
130
+
131
+ __struct_fields__: ClassVar[tuple[str, ...]] = ()
132
+ __slots__ = ()
133
+
134
+ def __init__(self, **kwargs: Any) -> None:
135
+ for key, value in kwargs.items():
136
+ setattr(self, key, value)
137
+
138
+
139
+ def convert_stub( # noqa: PLR0913
140
+ obj: Any, # noqa: ARG001
141
+ type: Any, # noqa: A002,ARG001
142
+ *,
143
+ strict: bool = True, # noqa: ARG001
144
+ from_attributes: bool = False, # noqa: ARG001
145
+ dec_hook: "Any | None" = None, # noqa: ARG001
146
+ builtin_types: "Any | None" = None, # noqa: ARG001
147
+ str_keys: bool = False, # noqa: ARG001
148
+ ) -> Any:
149
+ """Placeholder implementation."""
150
+ return {}
151
+
152
+
153
+ class UnsetTypeStub(enum.Enum):
154
+ UNSET = "UNSET"
155
+
156
+
157
+ UNSET_STUB = UnsetTypeStub.UNSET
158
+
159
+ # Try to import real implementations at runtime
160
+ try:
161
+ from msgspec import UNSET as _REAL_UNSET
162
+ from msgspec import Struct as _RealStruct
163
+ from msgspec import UnsetType as _RealUnsetType
164
+ from msgspec import convert as _real_convert
165
+
166
+ Struct = _RealStruct
167
+ UnsetType = _RealUnsetType
168
+ UNSET = _REAL_UNSET
169
+ convert = _real_convert
170
+ except ImportError:
171
+ Struct = StructStub # type: ignore[assignment,misc]
172
+ UnsetType = UnsetTypeStub # type: ignore[assignment,misc]
173
+ UNSET = UNSET_STUB # type: ignore[assignment] # pyright: ignore[reportConstantRedefinition]
174
+ convert = convert_stub
175
+
176
+
177
+ try:
178
+ import orjson # noqa: F401
179
+ except ImportError:
180
+ orjson = None # type: ignore[assignment]
181
+
182
+
183
+ # Always define stub type for DTOData
184
+ @runtime_checkable
185
+ class DTODataStub(Protocol[T]):
186
+ """Placeholder implementation."""
187
+
188
+ __slots__ = ("_backend", "_data_as_builtins")
189
+
190
+ def __init__(self, backend: Any, data_as_builtins: Any) -> None:
191
+ """Initialize."""
192
+
193
+ def create_instance(self, **kwargs: Any) -> T:
194
+ return cast("T", kwargs)
195
+
196
+ def update_instance(self, instance: T, **kwargs: Any) -> T:
197
+ """Update instance."""
198
+ return cast("T", kwargs)
199
+
200
+ def as_builtins(self) -> Any:
201
+ """Convert to builtins."""
202
+ return {}
203
+
204
+
205
+ # Try to import real implementation at runtime
206
+ try:
207
+ from litestar.dto.data_structures import DTOData as _RealDTOData # pyright: ignore[reportUnknownVariableType]
208
+
209
+ DTOData = _RealDTOData
210
+ except ImportError:
211
+ DTOData = DTODataStub # type: ignore[assignment,misc]
212
+
213
+
214
+ # Always define stub types for attrs
215
+ @dataclass_transform()
216
+ class AttrsInstanceStub:
217
+ """Placeholder Implementation for attrs classes"""
218
+
219
+ __attrs_attrs__: ClassVar[tuple[Any, ...]] = ()
220
+ __slots__ = ()
221
+
222
+ def __init__(self, **kwargs: Any) -> None:
223
+ for key, value in kwargs.items():
224
+ setattr(self, key, value)
225
+
226
+ def __repr__(self) -> str:
227
+ return f"{self.__class__.__name__}()"
228
+
229
+
230
+ def attrs_asdict_stub(*args: Any, **kwargs: Any) -> "dict[str, Any]": # noqa: ARG001
231
+ """Placeholder implementation"""
232
+ return {}
233
+
234
+
235
+ def attrs_define_stub(*args: Any, **kwargs: Any) -> Any: # noqa: ARG001
236
+ """Placeholder implementation"""
237
+ return _attrs_define_identity
238
+
239
+
240
+ def _attrs_define_identity(cls: Any) -> Any:
241
+ return cls
242
+
243
+
244
+ def attrs_field_stub(*args: Any, **kwargs: Any) -> Any: # noqa: ARG001
245
+ """Placeholder implementation"""
246
+ return None
247
+
248
+
249
+ def attrs_fields_stub(*args: Any, **kwargs: Any) -> "tuple[Any, ...]": # noqa: ARG001
250
+ """Placeholder implementation"""
251
+ return ()
252
+
253
+
254
+ def attrs_has_stub(*args: Any, **kwargs: Any) -> bool: # noqa: ARG001
255
+ """Placeholder implementation"""
256
+ return False
257
+
258
+
259
+ # Try to import real implementations at runtime
260
+ try:
261
+ from attrs import AttrsInstance as _RealAttrsInstance # pyright: ignore
262
+ from attrs import asdict as _real_attrs_asdict
263
+ from attrs import define as _real_attrs_define
264
+ from attrs import field as _real_attrs_field
265
+ from attrs import fields as _real_attrs_fields
266
+ from attrs import has as _real_attrs_has
267
+
268
+ AttrsInstance = _RealAttrsInstance
269
+ attrs_asdict = _real_attrs_asdict
270
+ attrs_define = _real_attrs_define
271
+ attrs_field = _real_attrs_field
272
+ attrs_fields = _real_attrs_fields
273
+ attrs_has = _real_attrs_has
274
+ except ImportError:
275
+ AttrsInstance = AttrsInstanceStub # type: ignore[misc]
276
+ attrs_asdict = attrs_asdict_stub
277
+ attrs_define = attrs_define_stub
278
+ attrs_field = attrs_field_stub
279
+ attrs_fields = attrs_fields_stub
280
+ attrs_has = attrs_has_stub # type: ignore[assignment]
281
+
282
+ try:
283
+ from cattrs import structure as cattrs_structure
284
+ from cattrs import unstructure as cattrs_unstructure
285
+ except ImportError:
286
+
287
+ def cattrs_unstructure(*args: Any, **kwargs: Any) -> Any: # noqa: ARG001
288
+ """Placeholder implementation"""
289
+ return {}
290
+
291
+ def cattrs_structure(*args: Any, **kwargs: Any) -> Any: # noqa: ARG001
292
+ """Placeholder implementation"""
293
+ return {}
294
+
295
+
296
+ class EmptyEnum(Enum):
297
+ """A sentinel enum used as placeholder."""
298
+
299
+ EMPTY = 0
300
+
301
+
302
+ EmptyType = Literal[EmptyEnum.EMPTY] | UnsetType
303
+ Empty: Final = EmptyEnum.EMPTY
304
+
305
+
306
+ @runtime_checkable
307
+ class ArrowTableResult(Protocol):
308
+ """This is a typed shim for pyarrow.Table."""
309
+
310
+ def to_batches(self, batch_size: int) -> Any:
311
+ return None
312
+
313
+ @property
314
+ def num_rows(self) -> int:
315
+ return 0
316
+
317
+ @property
318
+ def num_columns(self) -> int:
319
+ return 0
320
+
321
+ def to_pydict(self) -> dict[str, Any]:
322
+ return {}
323
+
324
+ def to_string(self) -> str:
325
+ return ""
326
+
327
+ def from_arrays(
328
+ self,
329
+ arrays: list[Any],
330
+ names: "list[str] | None" = None,
331
+ schema: "Any | None" = None,
332
+ metadata: "Mapping[str, Any] | None" = None,
333
+ ) -> Any:
334
+ return None
335
+
336
+ def from_pydict(
337
+ self, mapping: dict[str, Any], schema: "Any | None" = None, metadata: "Mapping[str, Any] | None" = None
338
+ ) -> Any:
339
+ return None
340
+
341
+ def from_batches(self, batches: Iterable[Any], schema: Any | None = None) -> Any:
342
+ return None
343
+
344
+
345
+ @runtime_checkable
346
+ class ArrowRecordBatchResult(Protocol):
347
+ """This is a typed shim for pyarrow.RecordBatch."""
348
+
349
+ def num_rows(self) -> int:
350
+ return 0
351
+
352
+ def num_columns(self) -> int:
353
+ return 0
354
+
355
+ def to_pydict(self) -> dict[str, Any]:
356
+ return {}
357
+
358
+ def to_pandas(self) -> Any:
359
+ return None
360
+
361
+ def schema(self) -> Any:
362
+ return None
363
+
364
+ def column(self, i: int) -> Any:
365
+ return None
366
+
367
+ def slice(self, offset: int = 0, length: "int | None" = None) -> Any:
368
+ return None
369
+
370
+
371
+ @runtime_checkable
372
+ class ArrowSchemaProtocol(Protocol):
373
+ """Typed shim for pyarrow.Schema."""
374
+
375
+ def field(self, i: int) -> Any:
376
+ """Get field by index."""
377
+ ...
378
+
379
+ @property
380
+ def names(self) -> "list[str]":
381
+ """Get list of field names."""
382
+ ...
383
+
384
+ def __len__(self) -> int:
385
+ """Get number of fields."""
386
+ return 0
387
+
388
+
389
+ @runtime_checkable
390
+ class ArrowRecordBatchReaderProtocol(Protocol):
391
+ """Typed shim for pyarrow.RecordBatchReader."""
392
+
393
+ def read_all(self) -> Any:
394
+ """Read all batches into a table."""
395
+ ...
396
+
397
+ def read_next_batch(self) -> Any:
398
+ """Read next batch."""
399
+ ...
400
+
401
+ def __iter__(self) -> "Iterable[Any]":
402
+ """Iterate over batches."""
403
+ ...
404
+
405
+
406
+ try:
407
+ from pyarrow import RecordBatch as ArrowRecordBatch
408
+ from pyarrow import RecordBatchReader as ArrowRecordBatchReader
409
+ from pyarrow import Schema as ArrowSchema
410
+ from pyarrow import Table as ArrowTable
411
+ except ImportError:
412
+ ArrowTable = ArrowTableResult # type: ignore[assignment,misc]
413
+ ArrowRecordBatch = ArrowRecordBatchResult # type: ignore[assignment,misc]
414
+ ArrowSchema = ArrowSchemaProtocol # type: ignore[assignment,misc]
415
+ ArrowRecordBatchReader = ArrowRecordBatchReaderProtocol # type: ignore[assignment,misc]
416
+
417
+
418
+ @runtime_checkable
419
+ class PandasDataFrameProtocol(Protocol):
420
+ """Typed shim for pandas.DataFrame."""
421
+
422
+ def __len__(self) -> int:
423
+ """Get number of rows."""
424
+ ...
425
+
426
+ def __getitem__(self, key: Any) -> Any:
427
+ """Get column or row."""
428
+ ...
429
+
430
+
431
+ @runtime_checkable
432
+ class PolarsDataFrameProtocol(Protocol):
433
+ """Typed shim for polars.DataFrame."""
434
+
435
+ def __len__(self) -> int:
436
+ """Get number of rows."""
437
+ ...
438
+
439
+ def __getitem__(self, key: Any) -> Any:
440
+ """Get column or row."""
441
+ ...
442
+
443
+
444
+ try:
445
+ from pandas import DataFrame as PandasDataFrame
446
+ except ImportError:
447
+ PandasDataFrame = PandasDataFrameProtocol # type: ignore[assignment,misc]
448
+
449
+
450
+ try:
451
+ from polars import DataFrame as PolarsDataFrame
452
+
453
+ except ImportError:
454
+ PolarsDataFrame = PolarsDataFrameProtocol # type: ignore[assignment,misc]
455
+
456
+
457
+ @runtime_checkable
458
+ class NumpyArrayStub(Protocol):
459
+ """Protocol stub for numpy.ndarray when numpy is not installed.
460
+
461
+ Provides minimal interface for type checking and serialization support.
462
+ """
463
+
464
+ def tolist(self) -> "list[Any]":
465
+ """Convert array to Python list."""
466
+ ...
467
+
468
+
469
+ try:
470
+ from numpy import ndarray as NumpyArray # noqa: N812
471
+ except ImportError:
472
+ NumpyArray = NumpyArrayStub # type: ignore[assignment,misc]
473
+
474
+
475
+ try:
476
+ from opentelemetry import trace # pyright: ignore[reportMissingImports, reportAssignmentType]
477
+ from opentelemetry.trace import ( # pyright: ignore[reportMissingImports, reportAssignmentType]
478
+ Span, # pyright: ignore[reportMissingImports, reportAssignmentType]
479
+ Status,
480
+ StatusCode,
481
+ Tracer, # pyright: ignore[reportMissingImports, reportAssignmentType]
482
+ )
483
+ except ImportError:
484
+ # Define shims for when opentelemetry is not installed
485
+
486
+ class Span: # type: ignore[no-redef]
487
+ def set_attribute(self, key: str, value: Any) -> None:
488
+ return None
489
+
490
+ def record_exception(
491
+ self,
492
+ exception: "Exception",
493
+ attributes: "Mapping[str, Any] | None" = None,
494
+ timestamp: "int | None" = None,
495
+ escaped: bool = False,
496
+ ) -> None:
497
+ return None
498
+
499
+ def set_status(self, status: Any, description: "str | None" = None) -> None:
500
+ return None
501
+
502
+ def end(self, end_time: "int | None" = None) -> None:
503
+ return None
504
+
505
+ def __enter__(self) -> "Span":
506
+ return self # type: ignore[return-value]
507
+
508
+ def __exit__(self, exc_type: object, exc_val: object, exc_tb: object) -> None:
509
+ return None
510
+
511
+ class Tracer: # type: ignore[no-redef]
512
+ def start_span(
513
+ self,
514
+ name: str,
515
+ context: Any = None,
516
+ kind: Any = None,
517
+ attributes: Any = None,
518
+ links: Any = None,
519
+ start_time: Any = None,
520
+ record_exception: bool = True,
521
+ set_status_on_exception: bool = True,
522
+ ) -> Span:
523
+ return Span() # type: ignore[abstract]
524
+
525
+ class _TraceModule:
526
+ def get_tracer(
527
+ self,
528
+ instrumenting_module_name: str,
529
+ instrumenting_library_version: "str | None" = None,
530
+ schema_url: "str | None" = None,
531
+ tracer_provider: Any = None,
532
+ ) -> Tracer:
533
+ return Tracer() # type: ignore[abstract] # pragma: no cover
534
+
535
+ def get_tracer_provider(self) -> Any: # pragma: no cover
536
+ return None
537
+
538
+ TracerProvider = type(None) # Shim for TracerProvider if needed elsewhere
539
+ StatusCode = type(None) # Shim for StatusCode
540
+ Status = type(None) # Shim for Status
541
+
542
+ trace = _TraceModule() # type: ignore[assignment]
543
+ StatusCode = trace.StatusCode # type: ignore[misc]
544
+ Status = trace.Status # type: ignore[misc]
545
+
546
+
547
+ try:
548
+ from prometheus_client import ( # pyright: ignore[reportMissingImports, reportAssignmentType]
549
+ Counter, # pyright: ignore[reportAssignmentType]
550
+ Gauge, # pyright: ignore[reportAssignmentType]
551
+ Histogram, # pyright: ignore[reportAssignmentType]
552
+ )
553
+ except ImportError:
554
+ # Define shims for when prometheus_client is not installed
555
+
556
+ class _Metric: # Base shim for metrics
557
+ def __init__(
558
+ self,
559
+ name: str,
560
+ documentation: str,
561
+ labelnames: tuple[str, ...] = (),
562
+ namespace: str = "",
563
+ subsystem: str = "",
564
+ unit: str = "",
565
+ registry: Any = None,
566
+ ejemplar_fn: Any = None,
567
+ buckets: Any = None,
568
+ **_: Any,
569
+ ) -> None:
570
+ return None
571
+
572
+ def labels(self, *labelvalues: str, **labelkwargs: str) -> "_MetricInstance":
573
+ return _MetricInstance()
574
+
575
+ class _MetricInstance:
576
+ def inc(self, amount: float = 1) -> None:
577
+ return None
578
+
579
+ def dec(self, amount: float = 1) -> None:
580
+ return None
581
+
582
+ def set(self, value: float) -> None:
583
+ return None
584
+
585
+ def observe(self, amount: float) -> None:
586
+ return None
587
+
588
+ class Counter(_Metric): # type: ignore[no-redef]
589
+ def labels(self, *labelvalues: str, **labelkwargs: str) -> _MetricInstance:
590
+ return _MetricInstance() # pragma: no cover
591
+
592
+ class Gauge(_Metric): # type: ignore[no-redef]
593
+ def labels(self, *labelvalues: str, **labelkwargs: str) -> _MetricInstance:
594
+ return _MetricInstance() # pragma: no cover
595
+
596
+ class Histogram(_Metric): # type: ignore[no-redef]
597
+ def labels(self, *labelvalues: str, **labelkwargs: str) -> _MetricInstance:
598
+ return _MetricInstance() # pragma: no cover
599
+
600
+
601
+ ATTRS_INSTALLED = dependency_flag("attrs")
602
+ CATTRS_INSTALLED = dependency_flag("cattrs")
603
+ CLOUD_SQL_CONNECTOR_INSTALLED = dependency_flag("google.cloud.sql.connector")
604
+ FSSPEC_INSTALLED = dependency_flag("fsspec")
605
+ LITESTAR_INSTALLED = dependency_flag("litestar")
606
+ MSGSPEC_INSTALLED = dependency_flag("msgspec")
607
+ NUMPY_INSTALLED = dependency_flag("numpy")
608
+ OBSTORE_INSTALLED = dependency_flag("obstore")
609
+ OPENTELEMETRY_INSTALLED = dependency_flag("opentelemetry")
610
+ ORJSON_INSTALLED = dependency_flag("orjson")
611
+ PANDAS_INSTALLED = dependency_flag("pandas")
612
+ PGVECTOR_INSTALLED = dependency_flag("pgvector")
613
+ POLARS_INSTALLED = dependency_flag("polars")
614
+ PROMETHEUS_INSTALLED = dependency_flag("prometheus_client")
615
+ PYARROW_INSTALLED = dependency_flag("pyarrow")
616
+ PYDANTIC_INSTALLED = dependency_flag("pydantic")
617
+ ALLOYDB_CONNECTOR_INSTALLED = dependency_flag("google.cloud.alloydb.connector")
618
+ NANOID_INSTALLED = dependency_flag("fastnanoid")
619
+ UUID_UTILS_INSTALLED = dependency_flag("uuid_utils")
620
+
621
+ __all__ = (
622
+ "ALLOYDB_CONNECTOR_INSTALLED",
623
+ "ATTRS_INSTALLED",
624
+ "CATTRS_INSTALLED",
625
+ "CLOUD_SQL_CONNECTOR_INSTALLED",
626
+ "FSSPEC_INSTALLED",
627
+ "LITESTAR_INSTALLED",
628
+ "MSGSPEC_INSTALLED",
629
+ "NANOID_INSTALLED",
630
+ "NUMPY_INSTALLED",
631
+ "OBSTORE_INSTALLED",
632
+ "OPENTELEMETRY_INSTALLED",
633
+ "ORJSON_INSTALLED",
634
+ "PANDAS_INSTALLED",
635
+ "PGVECTOR_INSTALLED",
636
+ "POLARS_INSTALLED",
637
+ "PROMETHEUS_INSTALLED",
638
+ "PYARROW_INSTALLED",
639
+ "PYDANTIC_INSTALLED",
640
+ "UNSET",
641
+ "UNSET_STUB",
642
+ "UUID_UTILS_INSTALLED",
643
+ "ArrowRecordBatch",
644
+ "ArrowRecordBatchReader",
645
+ "ArrowRecordBatchReaderProtocol",
646
+ "ArrowRecordBatchResult",
647
+ "ArrowSchema",
648
+ "ArrowSchemaProtocol",
649
+ "ArrowTable",
650
+ "ArrowTableResult",
651
+ "AttrsInstance",
652
+ "AttrsInstanceStub",
653
+ "BaseModel",
654
+ "BaseModelStub",
655
+ "Counter",
656
+ "DTOData",
657
+ "DTODataStub",
658
+ "DataclassProtocol",
659
+ "Empty",
660
+ "EmptyEnum",
661
+ "EmptyType",
662
+ "FailFast",
663
+ "FailFastStub",
664
+ "Gauge",
665
+ "Histogram",
666
+ "NumpyArray",
667
+ "NumpyArrayStub",
668
+ "PandasDataFrame",
669
+ "PandasDataFrameProtocol",
670
+ "PolarsDataFrame",
671
+ "PolarsDataFrameProtocol",
672
+ "Span",
673
+ "Status",
674
+ "StatusCode",
675
+ "Struct",
676
+ "StructStub",
677
+ "T",
678
+ "T_co",
679
+ "Tracer",
680
+ "TypeAdapter",
681
+ "TypeAdapterStub",
682
+ "UnsetType",
683
+ "UnsetTypeStub",
684
+ "attrs_asdict",
685
+ "attrs_asdict_stub",
686
+ "attrs_define",
687
+ "attrs_define_stub",
688
+ "attrs_field",
689
+ "attrs_field_stub",
690
+ "attrs_fields",
691
+ "attrs_fields_stub",
692
+ "attrs_has",
693
+ "attrs_has_stub",
694
+ "cattrs_structure",
695
+ "cattrs_unstructure",
696
+ "convert",
697
+ "convert_stub",
698
+ "module_available",
699
+ "trace",
700
+ )
File without changes
@@ -0,0 +1,5 @@
1
+ from sqlspec.adapters.adbc._typing import AdbcConnection
2
+ from sqlspec.adapters.adbc.config import AdbcConfig, AdbcConnectionParams
3
+ from sqlspec.adapters.adbc.driver import AdbcCursor, AdbcDriver, AdbcExceptionHandler
4
+
5
+ __all__ = ("AdbcConfig", "AdbcConnection", "AdbcConnectionParams", "AdbcCursor", "AdbcDriver", "AdbcExceptionHandler")