sqlspec 0.30.2__tar.gz → 0.32.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (782) hide show
  1. sqlspec-0.32.0/.claude/commands/bootstrap.md +756 -0
  2. sqlspec-0.32.0/.claude/commands/explore.md +438 -0
  3. sqlspec-0.32.0/.claude/commands/fix-issue.md +697 -0
  4. {sqlspec-0.30.2 → sqlspec-0.32.0}/.claude/skills/README.md +11 -10
  5. {sqlspec-0.30.2 → sqlspec-0.32.0}/.claude/skills/sqlspec_adapters/README.md +12 -10
  6. sqlspec-0.32.0/.claude/skills/sqlspec_adapters/adbc.md +868 -0
  7. sqlspec-0.32.0/.claude/skills/sqlspec_adapters/aiosqlite.md +478 -0
  8. sqlspec-0.32.0/.claude/skills/sqlspec_adapters/asyncmy.md +558 -0
  9. sqlspec-0.32.0/.claude/skills/sqlspec_adapters/bigquery.md +708 -0
  10. sqlspec-0.32.0/.claude/skills/sqlspec_adapters/duckdb.md +578 -0
  11. sqlspec-0.32.0/.claude/skills/sqlspec_adapters/oracledb.md +571 -0
  12. sqlspec-0.32.0/.claude/skills/sqlspec_adapters/psqlpy.md +430 -0
  13. sqlspec-0.32.0/.claude/skills/sqlspec_adapters/psycopg.md +389 -0
  14. sqlspec-0.32.0/.claude/skills/sqlspec_adapters/spanner.md +309 -0
  15. sqlspec-0.32.0/.claude/skills/sqlspec_adapters/sqlite.md +431 -0
  16. {sqlspec-0.30.2 → sqlspec-0.32.0}/.gemini/bootstrap.md +101 -19
  17. {sqlspec-0.30.2 → sqlspec-0.32.0}/.pre-commit-config.yaml +2 -2
  18. sqlspec-0.32.0/AGENTS.md +500 -0
  19. {sqlspec-0.30.2 → sqlspec-0.32.0}/Makefile +1 -1
  20. {sqlspec-0.30.2 → sqlspec-0.32.0}/PKG-INFO +1 -1
  21. {sqlspec-0.30.2 → sqlspec-0.32.0}/pyproject.toml +8 -3
  22. sqlspec-0.32.0/specs/guides/patterns/README.md +479 -0
  23. sqlspec-0.32.0/specs/guides/patterns/adapter-patterns.md +2210 -0
  24. sqlspec-0.32.0/specs/guides/quality-gates.yaml +63 -0
  25. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/__init__.py +2 -0
  26. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/_typing.py +5 -3
  27. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/adbc/data_dictionary.py +176 -1
  28. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/adbc/driver.py +7 -1
  29. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/aiosqlite/data_dictionary.py +112 -1
  30. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/asyncmy/data_dictionary.py +108 -28
  31. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/asyncpg/_type_handlers.py +7 -2
  32. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/asyncpg/data_dictionary.py +142 -1
  33. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/bigquery/data_dictionary.py +108 -1
  34. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/bigquery/driver.py +122 -23
  35. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/duckdb/data_dictionary.py +102 -1
  36. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/duckdb/driver.py +3 -1
  37. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/oracledb/data_dictionary.py +155 -0
  38. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/oracledb/driver.py +3 -1
  39. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/psycopg/_type_handlers.py +15 -7
  40. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/psycopg/config.py +0 -4
  41. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/psycopg/data_dictionary.py +285 -0
  42. sqlspec-0.32.0/sqlspec/adapters/spanner/__init__.py +38 -0
  43. sqlspec-0.32.0/sqlspec/adapters/spanner/_type_handlers.py +186 -0
  44. sqlspec-0.32.0/sqlspec/adapters/spanner/_types.py +12 -0
  45. sqlspec-0.32.0/sqlspec/adapters/spanner/adk/__init__.py +5 -0
  46. sqlspec-0.32.0/sqlspec/adapters/spanner/adk/store.py +435 -0
  47. sqlspec-0.32.0/sqlspec/adapters/spanner/config.py +241 -0
  48. sqlspec-0.32.0/sqlspec/adapters/spanner/data_dictionary.py +95 -0
  49. sqlspec-0.32.0/sqlspec/adapters/spanner/dialect/__init__.py +6 -0
  50. sqlspec-0.32.0/sqlspec/adapters/spanner/dialect/_spangres.py +52 -0
  51. sqlspec-0.32.0/sqlspec/adapters/spanner/dialect/_spanner.py +123 -0
  52. sqlspec-0.32.0/sqlspec/adapters/spanner/driver.py +366 -0
  53. sqlspec-0.32.0/sqlspec/adapters/spanner/litestar/__init__.py +5 -0
  54. sqlspec-0.32.0/sqlspec/adapters/spanner/litestar/store.py +266 -0
  55. sqlspec-0.32.0/sqlspec/adapters/spanner/type_converter.py +46 -0
  56. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/sqlite/data_dictionary.py +108 -1
  57. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/builder/_base.py +193 -12
  58. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/builder/_column.py +155 -2
  59. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/builder/_ddl.py +24 -16
  60. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/builder/_delete.py +6 -4
  61. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/builder/_dml.py +13 -20
  62. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/builder/_insert.py +3 -3
  63. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/builder/_join.py +1 -1
  64. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/builder/_merge.py +76 -28
  65. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/builder/_parsing_utils.py +8 -0
  66. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/builder/_select.py +54 -45
  67. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/builder/_update.py +1 -1
  68. sqlspec-0.32.0/sqlspec/builder/_vector_expressions.py +259 -0
  69. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/cli.py +312 -163
  70. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/config.py +22 -0
  71. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/core/compiler.py +7 -1
  72. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/core/parameters/_converter.py +24 -4
  73. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/core/parameters/_processor.py +37 -0
  74. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/core/result.py +71 -0
  75. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/driver/__init__.py +8 -0
  76. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/driver/_async.py +271 -0
  77. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/driver/_common.py +225 -4
  78. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/driver/_sync.py +269 -0
  79. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/extensions/aiosql/adapter.py +20 -17
  80. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/extensions/litestar/cli.py +1 -1
  81. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/extensions/litestar/config.py +24 -0
  82. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/extensions/litestar/plugin.py +13 -8
  83. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/protocols.py +25 -2
  84. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/utils/logging.py +19 -10
  85. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/utils/sync_tools.py +3 -12
  86. sqlspec-0.32.0/tests/__init__.py +1 -0
  87. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/conftest.py +24 -0
  88. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_adbc/test_adbc_arrow_features.py +3 -2
  89. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_adbc/test_parameter_styles.py +3 -1
  90. sqlspec-0.32.0/tests/integration/test_adapters/test_adbc/test_vector_functions.py +318 -0
  91. sqlspec-0.32.0/tests/integration/test_adapters/test_aiosqlite/test_data_dictionary.py +73 -0
  92. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_asyncmy/conftest.py +29 -10
  93. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_asyncmy/test_arrow.py +10 -10
  94. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_asyncmy/test_asyncmy_features.py +3 -2
  95. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_asyncmy/test_driver.py +2 -2
  96. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_asyncpg/test_data_dictionary.py +60 -0
  97. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_asyncpg/test_storage_bridge.py +2 -2
  98. sqlspec-0.32.0/tests/integration/test_adapters/test_asyncpg/test_vector_functions.py +280 -0
  99. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_bigquery/test_driver.py +74 -1
  100. sqlspec-0.32.0/tests/integration/test_adapters/test_bigquery/test_vector_functions.py +211 -0
  101. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_duckdb/test_storage_bridge.py +1 -1
  102. sqlspec-0.32.0/tests/integration/test_adapters/test_duckdb/test_vector_functions.py +280 -0
  103. sqlspec-0.32.0/tests/integration/test_adapters/test_oracledb/test_vector_functions.py +233 -0
  104. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_psqlpy/test_storage_bridge.py +2 -2
  105. sqlspec-0.32.0/tests/integration/test_adapters/test_psqlpy/test_vector_functions.py +233 -0
  106. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_psycopg/conftest.py +8 -18
  107. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_psycopg/test_connection.py +4 -26
  108. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_psycopg/test_migrations.py +5 -55
  109. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_psycopg/test_storage_bridge.py +3 -3
  110. sqlspec-0.32.0/tests/integration/test_adapters/test_psycopg/test_vector_functions.py +234 -0
  111. sqlspec-0.32.0/tests/integration/test_adapters/test_spanner/conftest.py +133 -0
  112. sqlspec-0.32.0/tests/integration/test_adapters/test_spanner/test_arrow.py +133 -0
  113. sqlspec-0.32.0/tests/integration/test_adapters/test_spanner/test_bytes_direct.py +76 -0
  114. sqlspec-0.32.0/tests/integration/test_adapters/test_spanner/test_connection.py +17 -0
  115. sqlspec-0.32.0/tests/integration/test_adapters/test_spanner/test_crud_operations.py +199 -0
  116. sqlspec-0.32.0/tests/integration/test_adapters/test_spanner/test_driver.py +340 -0
  117. sqlspec-0.32.0/tests/integration/test_adapters/test_spanner/test_exceptions.py +118 -0
  118. sqlspec-0.32.0/tests/integration/test_adapters/test_spanner/test_execute_many.py +224 -0
  119. sqlspec-0.32.0/tests/integration/test_adapters/test_spanner/test_extensions/test_adk/conftest.py +36 -0
  120. sqlspec-0.32.0/tests/integration/test_adapters/test_spanner/test_extensions/test_adk/test_adk_store.py +75 -0
  121. sqlspec-0.32.0/tests/integration/test_adapters/test_spanner/test_extensions/test_litestar/conftest.py +39 -0
  122. sqlspec-0.32.0/tests/integration/test_adapters/test_spanner/test_extensions/test_litestar/test_litestar_store.py +44 -0
  123. sqlspec-0.32.0/tests/integration/test_adapters/test_spanner/test_parameter_styles.py +261 -0
  124. sqlspec-0.32.0/tests/integration/test_adapters/test_spanner/test_spangres_driver.py +69 -0
  125. sqlspec-0.32.0/tests/integration/test_adapters/test_spanner/test_spangres_parameter_styles.py +68 -0
  126. sqlspec-0.32.0/tests/integration/test_cli/test_sync_adapter_cli.py +299 -0
  127. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_storage/test_storage_integration.py +42 -12
  128. sqlspec-0.32.0/tests/unit/__init__.py +1 -0
  129. sqlspec-0.32.0/tests/unit/test_adapters/test_bigquery/test_execute_many.py +83 -0
  130. sqlspec-0.32.0/tests/unit/test_adapters/test_psycopg/__init__.py +1 -0
  131. sqlspec-0.32.0/tests/unit/test_adapters/test_spanner/__init__.py +1 -0
  132. sqlspec-0.32.0/tests/unit/test_adapters/test_spanner/conftest.py +3 -0
  133. sqlspec-0.32.0/tests/unit/test_adapters/test_spanner/test_config.py +209 -0
  134. sqlspec-0.32.0/tests/unit/test_adapters/test_spanner/test_dialect.py +801 -0
  135. sqlspec-0.32.0/tests/unit/test_adapters/test_spanner/test_driver.py +79 -0
  136. sqlspec-0.32.0/tests/unit/test_adapters/test_spanner/test_litestar_store.py +124 -0
  137. sqlspec-0.32.0/tests/unit/test_adapters/test_spanner/test_type_converter.py +30 -0
  138. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_builder/test_merge.py +27 -0
  139. sqlspec-0.32.0/tests/unit/test_builder/test_static_expression_cache.py +55 -0
  140. sqlspec-0.32.0/tests/unit/test_builder/test_vector_functions.py +556 -0
  141. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_core/test_parameters.py +35 -0
  142. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_core/test_statement.py +21 -0
  143. sqlspec-0.32.0/tests/unit/test_dialects/test_spangres.py +32 -0
  144. sqlspec-0.32.0/tests/unit/test_dialects/test_spanner.py +113 -0
  145. sqlspec-0.32.0/tests/unit/test_driver/test_fetch_aliases.py +507 -0
  146. sqlspec-0.32.0/tests/unit/test_driver/test_force_select.py +80 -0
  147. sqlspec-0.32.0/tests/unit/test_sql_result_conversion.py +159 -0
  148. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_utils/test_portal.py +2 -0
  149. {sqlspec-0.30.2 → sqlspec-0.32.0}/uv.lock +979 -794
  150. sqlspec-0.30.2/AGENTS.md +0 -3643
  151. {sqlspec-0.30.2 → sqlspec-0.32.0}/.claude/AGENTS.md +0 -0
  152. {sqlspec-0.30.2 → sqlspec-0.32.0}/.claude/README.md +0 -0
  153. {sqlspec-0.30.2 → sqlspec-0.32.0}/.claude/agents/docs-vision.md +0 -0
  154. {sqlspec-0.30.2 → sqlspec-0.32.0}/.claude/agents/expert.md +0 -0
  155. {sqlspec-0.30.2 → sqlspec-0.32.0}/.claude/agents/prd.md +0 -0
  156. {sqlspec-0.30.2 → sqlspec-0.32.0}/.claude/agents/testing.md +0 -0
  157. {sqlspec-0.30.2 → sqlspec-0.32.0}/.claude/bootstrap.md +0 -0
  158. {sqlspec-0.30.2 → sqlspec-0.32.0}/.claude/commands/implement.md +0 -0
  159. {sqlspec-0.30.2 → sqlspec-0.32.0}/.claude/commands/prd.md +0 -0
  160. {sqlspec-0.30.2 → sqlspec-0.32.0}/.claude/commands/review.md +0 -0
  161. {sqlspec-0.30.2 → sqlspec-0.32.0}/.claude/commands/test.md +0 -0
  162. {sqlspec-0.30.2 → sqlspec-0.32.0}/.claude/skills/sqlspec_adapters/asyncpg.md +0 -0
  163. {sqlspec-0.30.2 → sqlspec-0.32.0}/.claude/skills/sqlspec_usage/__init__.py +0 -0
  164. {sqlspec-0.30.2 → sqlspec-0.32.0}/.claude/skills/sqlspec_usage/examples/__init__.py +0 -0
  165. {sqlspec-0.30.2 → sqlspec-0.32.0}/.claude/skills/sqlspec_usage/examples/fastapi_integration.py +0 -0
  166. {sqlspec-0.30.2 → sqlspec-0.32.0}/.claude/skills/sqlspec_usage/examples/litestar_integration.py +0 -0
  167. {sqlspec-0.30.2 → sqlspec-0.32.0}/.claude/skills/sqlspec_usage/examples/migration-workflow.sh +0 -0
  168. {sqlspec-0.30.2 → sqlspec-0.32.0}/.claude/skills/sqlspec_usage/examples/multi_database.py +0 -0
  169. {sqlspec-0.30.2 → sqlspec-0.32.0}/.claude/skills/sqlspec_usage/examples/testing_patterns.py +0 -0
  170. {sqlspec-0.30.2 → sqlspec-0.32.0}/.claude/skills/sqlspec_usage/patterns/configuration.md +0 -0
  171. {sqlspec-0.30.2 → sqlspec-0.32.0}/.claude/skills/sqlspec_usage/patterns/frameworks.md +0 -0
  172. {sqlspec-0.30.2 → sqlspec-0.32.0}/.claude/skills/sqlspec_usage/patterns/migrations.md +0 -0
  173. {sqlspec-0.30.2 → sqlspec-0.32.0}/.claude/skills/sqlspec_usage/patterns/performance.md +0 -0
  174. {sqlspec-0.30.2 → sqlspec-0.32.0}/.claude/skills/sqlspec_usage/patterns/queries.md +0 -0
  175. {sqlspec-0.30.2 → sqlspec-0.32.0}/.claude/skills/sqlspec_usage/patterns/testing.md +0 -0
  176. {sqlspec-0.30.2 → sqlspec-0.32.0}/.claude/skills/sqlspec_usage/patterns/troubleshooting.md +0 -0
  177. {sqlspec-0.30.2 → sqlspec-0.32.0}/.claude/skills/sqlspec_usage/skill.md +0 -0
  178. {sqlspec-0.30.2 → sqlspec-0.32.0}/.gemini/GEMINI.md +0 -0
  179. {sqlspec-0.30.2 → sqlspec-0.32.0}/.gemini/commands/implement.toml +0 -0
  180. {sqlspec-0.30.2 → sqlspec-0.32.0}/.gemini/commands/prd.toml +0 -0
  181. {sqlspec-0.30.2 → sqlspec-0.32.0}/.gemini/commands/review.toml +0 -0
  182. {sqlspec-0.30.2 → sqlspec-0.32.0}/.gemini/commands/sync-guides.toml +0 -0
  183. {sqlspec-0.30.2 → sqlspec-0.32.0}/.gemini/commands/test.toml +0 -0
  184. {sqlspec-0.30.2 → sqlspec-0.32.0}/.gitignore +0 -0
  185. {sqlspec-0.30.2 → sqlspec-0.32.0}/CLAUDE.md +0 -0
  186. {sqlspec-0.30.2 → sqlspec-0.32.0}/CONTRIBUTING.rst +0 -0
  187. {sqlspec-0.30.2 → sqlspec-0.32.0}/GEMINI.md +0 -0
  188. {sqlspec-0.30.2 → sqlspec-0.32.0}/LICENSE +0 -0
  189. {sqlspec-0.30.2 → sqlspec-0.32.0}/README.md +0 -0
  190. {sqlspec-0.30.2 → sqlspec-0.32.0}/specs/AGENTS.md +0 -0
  191. {sqlspec-0.30.2 → sqlspec-0.32.0}/specs/README.md +0 -0
  192. {sqlspec-0.30.2 → sqlspec-0.32.0}/specs/active/.gitkeep +0 -0
  193. {sqlspec-0.30.2 → sqlspec-0.32.0}/specs/agents/expert.md +0 -0
  194. {sqlspec-0.30.2 → sqlspec-0.32.0}/specs/agents/guides.md +0 -0
  195. {sqlspec-0.30.2 → sqlspec-0.32.0}/specs/agents/prd.md +0 -0
  196. {sqlspec-0.30.2 → sqlspec-0.32.0}/specs/agents/review.md +0 -0
  197. {sqlspec-0.30.2 → sqlspec-0.32.0}/specs/agents/testing.md +0 -0
  198. {sqlspec-0.30.2 → sqlspec-0.32.0}/specs/archive/.gitkeep +0 -0
  199. {sqlspec-0.30.2 → sqlspec-0.32.0}/specs/guides/docs_examples_alignment.md +0 -0
  200. {sqlspec-0.30.2 → sqlspec-0.32.0}/specs/guides/query-stack.md +0 -0
  201. {sqlspec-0.30.2 → sqlspec-0.32.0}/specs/template-spec/README.md +0 -0
  202. {sqlspec-0.30.2 → sqlspec-0.32.0}/specs/template-spec/prd.md +0 -0
  203. {sqlspec-0.30.2 → sqlspec-0.32.0}/specs/template-spec/recovery.md +0 -0
  204. {sqlspec-0.30.2 → sqlspec-0.32.0}/specs/template-spec/research/.gitkeep +0 -0
  205. {sqlspec-0.30.2 → sqlspec-0.32.0}/specs/template-spec/tasks.md +0 -0
  206. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/__main__.py +0 -0
  207. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/__metadata__.py +0 -0
  208. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/_serialization.py +0 -0
  209. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/__init__.py +0 -0
  210. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/adbc/__init__.py +0 -0
  211. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/adbc/_types.py +0 -0
  212. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/adbc/adk/__init__.py +0 -0
  213. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/adbc/adk/store.py +0 -0
  214. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/adbc/config.py +0 -0
  215. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/adbc/litestar/__init__.py +0 -0
  216. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/adbc/litestar/store.py +0 -0
  217. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/adbc/type_converter.py +0 -0
  218. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/aiosqlite/__init__.py +0 -0
  219. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/aiosqlite/_types.py +0 -0
  220. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/aiosqlite/adk/__init__.py +0 -0
  221. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/aiosqlite/adk/store.py +0 -0
  222. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/aiosqlite/config.py +0 -0
  223. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/aiosqlite/driver.py +0 -0
  224. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/aiosqlite/litestar/__init__.py +0 -0
  225. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/aiosqlite/litestar/store.py +0 -0
  226. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/aiosqlite/pool.py +0 -0
  227. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/asyncmy/__init__.py +0 -0
  228. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/asyncmy/_types.py +0 -0
  229. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/asyncmy/adk/__init__.py +0 -0
  230. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/asyncmy/adk/store.py +0 -0
  231. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/asyncmy/config.py +0 -0
  232. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/asyncmy/driver.py +0 -0
  233. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/asyncmy/litestar/__init__.py +0 -0
  234. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/asyncmy/litestar/store.py +0 -0
  235. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/asyncpg/__init__.py +0 -0
  236. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/asyncpg/_types.py +0 -0
  237. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/asyncpg/adk/__init__.py +0 -0
  238. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/asyncpg/adk/store.py +0 -0
  239. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/asyncpg/config.py +0 -0
  240. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/asyncpg/driver.py +0 -0
  241. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/asyncpg/litestar/__init__.py +0 -0
  242. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/asyncpg/litestar/store.py +0 -0
  243. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/bigquery/__init__.py +0 -0
  244. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/bigquery/_types.py +0 -0
  245. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/bigquery/adk/__init__.py +0 -0
  246. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/bigquery/adk/store.py +0 -0
  247. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/bigquery/config.py +0 -0
  248. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/bigquery/litestar/__init__.py +0 -0
  249. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/bigquery/litestar/store.py +0 -0
  250. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/bigquery/type_converter.py +0 -0
  251. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/duckdb/__init__.py +0 -0
  252. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/duckdb/_types.py +0 -0
  253. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/duckdb/adk/__init__.py +0 -0
  254. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/duckdb/adk/store.py +0 -0
  255. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/duckdb/config.py +0 -0
  256. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/duckdb/litestar/__init__.py +0 -0
  257. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/duckdb/litestar/store.py +0 -0
  258. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/duckdb/pool.py +0 -0
  259. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/duckdb/type_converter.py +0 -0
  260. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/oracledb/__init__.py +0 -0
  261. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/oracledb/_numpy_handlers.py +0 -0
  262. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/oracledb/_types.py +0 -0
  263. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/oracledb/_uuid_handlers.py +0 -0
  264. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/oracledb/adk/__init__.py +0 -0
  265. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/oracledb/adk/store.py +0 -0
  266. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/oracledb/config.py +0 -0
  267. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/oracledb/litestar/__init__.py +0 -0
  268. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/oracledb/litestar/store.py +0 -0
  269. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/oracledb/migrations.py +0 -0
  270. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/oracledb/type_converter.py +0 -0
  271. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/psqlpy/__init__.py +0 -0
  272. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/psqlpy/_type_handlers.py +0 -0
  273. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/psqlpy/_types.py +0 -0
  274. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/psqlpy/adk/__init__.py +0 -0
  275. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/psqlpy/adk/store.py +0 -0
  276. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/psqlpy/config.py +0 -0
  277. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/psqlpy/data_dictionary.py +0 -0
  278. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/psqlpy/driver.py +0 -0
  279. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/psqlpy/litestar/__init__.py +0 -0
  280. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/psqlpy/litestar/store.py +0 -0
  281. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/psqlpy/type_converter.py +0 -0
  282. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/psycopg/__init__.py +0 -0
  283. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/psycopg/_types.py +0 -0
  284. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/psycopg/adk/__init__.py +0 -0
  285. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/psycopg/adk/store.py +0 -0
  286. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/psycopg/driver.py +0 -0
  287. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/psycopg/litestar/__init__.py +0 -0
  288. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/psycopg/litestar/store.py +0 -0
  289. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/sqlite/__init__.py +0 -0
  290. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/sqlite/_type_handlers.py +0 -0
  291. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/sqlite/_types.py +0 -0
  292. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/sqlite/adk/__init__.py +0 -0
  293. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/sqlite/adk/store.py +0 -0
  294. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/sqlite/config.py +0 -0
  295. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/sqlite/driver.py +0 -0
  296. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/sqlite/litestar/__init__.py +0 -0
  297. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/sqlite/litestar/store.py +0 -0
  298. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/adapters/sqlite/pool.py +0 -0
  299. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/base.py +0 -0
  300. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/builder/__init__.py +0 -0
  301. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/builder/_expression_wrappers.py +0 -0
  302. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/builder/_factory.py +0 -0
  303. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/core/__init__.py +0 -0
  304. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/core/cache.py +0 -0
  305. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/core/filters.py +0 -0
  306. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/core/hashing.py +0 -0
  307. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/core/metrics.py +0 -0
  308. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/core/parameters/__init__.py +0 -0
  309. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/core/parameters/_alignment.py +0 -0
  310. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/core/parameters/_registry.py +0 -0
  311. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/core/parameters/_transformers.py +0 -0
  312. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/core/parameters/_types.py +0 -0
  313. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/core/parameters/_validator.py +0 -0
  314. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/core/pipeline.py +0 -0
  315. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/core/splitter.py +0 -0
  316. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/core/stack.py +0 -0
  317. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/core/statement.py +0 -0
  318. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/core/type_conversion.py +0 -0
  319. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/driver/mixins/__init__.py +0 -0
  320. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/driver/mixins/_result_tools.py +0 -0
  321. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/driver/mixins/_sql_translator.py +0 -0
  322. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/driver/mixins/_storage.py +0 -0
  323. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/exceptions.py +0 -0
  324. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/extensions/__init__.py +0 -0
  325. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/extensions/adk/__init__.py +0 -0
  326. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/extensions/adk/_types.py +0 -0
  327. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/extensions/adk/converters.py +0 -0
  328. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/extensions/adk/migrations/0001_create_adk_tables.py +0 -0
  329. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/extensions/adk/migrations/__init__.py +0 -0
  330. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/extensions/adk/service.py +0 -0
  331. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/extensions/adk/store.py +0 -0
  332. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/extensions/aiosql/__init__.py +0 -0
  333. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/extensions/fastapi/__init__.py +0 -0
  334. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/extensions/fastapi/extension.py +0 -0
  335. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/extensions/fastapi/providers.py +0 -0
  336. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/extensions/flask/__init__.py +0 -0
  337. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/extensions/flask/_state.py +0 -0
  338. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/extensions/flask/_utils.py +0 -0
  339. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/extensions/flask/extension.py +0 -0
  340. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/extensions/litestar/__init__.py +0 -0
  341. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/extensions/litestar/_utils.py +0 -0
  342. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/extensions/litestar/handlers.py +0 -0
  343. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/extensions/litestar/migrations/0001_create_session_table.py +0 -0
  344. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/extensions/litestar/migrations/__init__.py +0 -0
  345. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/extensions/litestar/providers.py +0 -0
  346. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/extensions/litestar/store.py +0 -0
  347. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/extensions/otel/__init__.py +0 -0
  348. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/extensions/prometheus/__init__.py +0 -0
  349. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/extensions/starlette/__init__.py +0 -0
  350. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/extensions/starlette/_state.py +0 -0
  351. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/extensions/starlette/_utils.py +0 -0
  352. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/extensions/starlette/extension.py +0 -0
  353. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/extensions/starlette/middleware.py +0 -0
  354. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/loader.py +0 -0
  355. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/migrations/__init__.py +0 -0
  356. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/migrations/base.py +0 -0
  357. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/migrations/commands.py +0 -0
  358. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/migrations/context.py +0 -0
  359. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/migrations/fix.py +0 -0
  360. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/migrations/loaders.py +0 -0
  361. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/migrations/runner.py +0 -0
  362. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/migrations/templates.py +0 -0
  363. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/migrations/tracker.py +0 -0
  364. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/migrations/utils.py +0 -0
  365. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/migrations/validation.py +0 -0
  366. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/observability/__init__.py +0 -0
  367. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/observability/_config.py +0 -0
  368. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/observability/_diagnostics.py +0 -0
  369. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/observability/_dispatcher.py +0 -0
  370. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/observability/_observer.py +0 -0
  371. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/observability/_runtime.py +0 -0
  372. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/observability/_spans.py +0 -0
  373. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/py.typed +0 -0
  374. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/storage/__init__.py +0 -0
  375. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/storage/_utils.py +0 -0
  376. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/storage/backends/__init__.py +0 -0
  377. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/storage/backends/base.py +0 -0
  378. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/storage/backends/fsspec.py +0 -0
  379. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/storage/backends/local.py +0 -0
  380. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/storage/backends/obstore.py +0 -0
  381. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/storage/errors.py +0 -0
  382. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/storage/pipeline.py +0 -0
  383. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/storage/registry.py +0 -0
  384. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/typing.py +0 -0
  385. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/utils/__init__.py +0 -0
  386. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/utils/arrow_helpers.py +0 -0
  387. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/utils/config_resolver.py +0 -0
  388. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/utils/correlation.py +0 -0
  389. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/utils/data_transformation.py +0 -0
  390. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/utils/dependencies.py +0 -0
  391. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/utils/deprecation.py +0 -0
  392. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/utils/fixtures.py +0 -0
  393. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/utils/module_loader.py +0 -0
  394. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/utils/portal.py +0 -0
  395. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/utils/schema.py +0 -0
  396. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/utils/serializers.py +0 -0
  397. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/utils/singleton.py +0 -0
  398. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/utils/text.py +0 -0
  399. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/utils/type_converters.py +0 -0
  400. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/utils/type_guards.py +0 -0
  401. {sqlspec-0.30.2 → sqlspec-0.32.0}/sqlspec/utils/version.py +0 -0
  402. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/fixtures/__init__.py +0 -0
  403. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/fixtures/asset_maintenance.sql +0 -0
  404. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/fixtures/ddls-mysql-collection.sql +0 -0
  405. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/fixtures/ddls-postgres-collection.sql +0 -0
  406. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/fixtures/example_usage.py +0 -0
  407. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/fixtures/init.sql +0 -0
  408. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/fixtures/mysql/collection-config.sql +0 -0
  409. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/fixtures/mysql/collection-data_types.sql +0 -0
  410. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/fixtures/mysql/collection-database_details.sql +0 -0
  411. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/fixtures/mysql/collection-engines.sql +0 -0
  412. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/fixtures/mysql/collection-hostname.sql +0 -0
  413. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/fixtures/mysql/collection-plugins.sql +0 -0
  414. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/fixtures/mysql/collection-process_list.sql +0 -0
  415. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/fixtures/mysql/collection-resource-groups.sql +0 -0
  416. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/fixtures/mysql/collection-schema_objects.sql +0 -0
  417. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/fixtures/mysql/collection-table_details.sql +0 -0
  418. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/fixtures/mysql/collection-users.sql +0 -0
  419. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/fixtures/mysql/init.sql +0 -0
  420. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/fixtures/oracle.ddl.sql +0 -0
  421. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/fixtures/postgres/collection-applications.sql +0 -0
  422. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/fixtures/postgres/collection-aws_extension_dependency.sql +0 -0
  423. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/fixtures/postgres/collection-aws_oracle_exists.sql +0 -0
  424. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/fixtures/postgres/collection-bg_writer_stats.sql +0 -0
  425. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/fixtures/postgres/collection-calculated_metrics.sql +0 -0
  426. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/fixtures/postgres/collection-data_types.sql +0 -0
  427. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/fixtures/postgres/collection-database_details.sql +0 -0
  428. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/fixtures/postgres/collection-extensions.sql +0 -0
  429. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/fixtures/postgres/collection-index_details.sql +0 -0
  430. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/fixtures/postgres/collection-pglogical-details.sql +0 -0
  431. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/fixtures/postgres/collection-privileges.sql +0 -0
  432. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/fixtures/postgres/collection-replication_slots.sql +0 -0
  433. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/fixtures/postgres/collection-replication_stats.sql +0 -0
  434. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/fixtures/postgres/collection-schema_details.sql +0 -0
  435. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/fixtures/postgres/collection-schema_objects.sql +0 -0
  436. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/fixtures/postgres/collection-settings.sql +0 -0
  437. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/fixtures/postgres/collection-source_details.sql +0 -0
  438. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/fixtures/postgres/collection-table_details.sql +0 -0
  439. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/fixtures/postgres/extended-collection-all-databases.sql +0 -0
  440. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/fixtures/postgres/init.sql +0 -0
  441. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/fixtures/readiness-check.sql +0 -0
  442. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/fixtures/sql_utils.py +0 -0
  443. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/__init__.py +0 -0
  444. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/conftest.py +0 -0
  445. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/__init__.py +0 -0
  446. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/_storage_bridge_helpers.py +0 -0
  447. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_adbc/__init__.py +0 -0
  448. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_adbc/conftest.py +0 -0
  449. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_adbc/test_adbc_backends.py +0 -0
  450. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_adbc/test_adbc_connection.py +0 -0
  451. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_adbc/test_adbc_driver.py +0 -0
  452. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_adbc/test_adbc_edge_cases.py +0 -0
  453. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_adbc/test_adbc_results.py +0 -0
  454. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_adbc/test_arrow_duckdb.py +0 -0
  455. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_adbc/test_data_dictionary.py +0 -0
  456. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_adbc/test_exceptions.py +0 -0
  457. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_adbc/test_extensions/__init__.py +0 -0
  458. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_adbc/test_extensions/test_adk/__init__.py +0 -0
  459. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_adbc/test_extensions/test_adk/test_dialect_integration.py +0 -0
  460. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_adbc/test_extensions/test_adk/test_dialect_support.py +0 -0
  461. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_adbc/test_extensions/test_adk/test_edge_cases.py +0 -0
  462. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_adbc/test_extensions/test_adk/test_event_operations.py +0 -0
  463. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_adbc/test_extensions/test_adk/test_owner_id_column.py +0 -0
  464. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_adbc/test_extensions/test_adk/test_session_operations.py +0 -0
  465. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_adbc/test_extensions/test_litestar/__init__.py +0 -0
  466. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_adbc/test_extensions/test_litestar/test_store.py +0 -0
  467. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_adbc/test_migrations.py +0 -0
  468. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_adbc/test_storage_bridge.py +0 -0
  469. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_aiosqlite/__init__.py +0 -0
  470. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_aiosqlite/conftest.py +0 -0
  471. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_aiosqlite/test_arrow.py +0 -0
  472. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_aiosqlite/test_connection.py +0 -0
  473. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_aiosqlite/test_driver.py +0 -0
  474. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_aiosqlite/test_exceptions.py +0 -0
  475. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_aiosqlite/test_extensions/__init__.py +0 -0
  476. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_aiosqlite/test_extensions/test_litestar/__init__.py +0 -0
  477. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_aiosqlite/test_extensions/test_litestar/test_numpy_serialization.py +0 -0
  478. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_aiosqlite/test_extensions/test_litestar/test_store.py +0 -0
  479. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_aiosqlite/test_migrations.py +0 -0
  480. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_aiosqlite/test_parameter_styles.py +0 -0
  481. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_aiosqlite/test_pooling.py +0 -0
  482. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_aiosqlite/test_storage_bridge.py +0 -0
  483. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_asyncmy/__init__.py +0 -0
  484. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_asyncmy/test_config.py +0 -0
  485. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_asyncmy/test_exceptions.py +0 -0
  486. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_asyncmy/test_extensions/__init__.py +0 -0
  487. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_asyncmy/test_extensions/test_adk/__init__.py +0 -0
  488. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_asyncmy/test_extensions/test_adk/conftest.py +0 -0
  489. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_asyncmy/test_extensions/test_adk/test_store.py +0 -0
  490. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_asyncmy/test_extensions/test_litestar/__init__.py +0 -0
  491. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_asyncmy/test_extensions/test_litestar/test_store.py +0 -0
  492. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_asyncmy/test_migrations.py +0 -0
  493. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_asyncmy/test_parameter_styles.py +0 -0
  494. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_asyncmy/test_storage_bridge.py +0 -0
  495. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_asyncpg/__init__.py +0 -0
  496. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_asyncpg/conftest.py +0 -0
  497. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_asyncpg/test_arrow.py +0 -0
  498. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_asyncpg/test_cloud_connectors_integration.py +0 -0
  499. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_asyncpg/test_connection.py +0 -0
  500. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_asyncpg/test_driver.py +0 -0
  501. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_asyncpg/test_exceptions.py +0 -0
  502. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_asyncpg/test_execute_many.py +0 -0
  503. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_asyncpg/test_extensions/__init__.py +0 -0
  504. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_asyncpg/test_extensions/test_adk/__init__.py +0 -0
  505. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_asyncpg/test_extensions/test_adk/conftest.py +0 -0
  506. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_asyncpg/test_extensions/test_adk/test_owner_id_column.py +0 -0
  507. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_asyncpg/test_extensions/test_adk/test_session_operations.py +0 -0
  508. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_asyncpg/test_extensions/test_litestar/__init__.py +0 -0
  509. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_asyncpg/test_extensions/test_litestar/test_store.py +0 -0
  510. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_asyncpg/test_merge.py +0 -0
  511. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_asyncpg/test_merge_bulk.py +0 -0
  512. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_asyncpg/test_migrations.py +0 -0
  513. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_asyncpg/test_parameter_styles.py +0 -0
  514. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_asyncpg/test_schema_migration.py +0 -0
  515. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_bigquery/__init__.py +0 -0
  516. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_bigquery/conftest.py +0 -0
  517. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_bigquery/test_arrow_bigquery.py +0 -0
  518. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_bigquery/test_bigquery_features.py +0 -0
  519. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_bigquery/test_config.py +0 -0
  520. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_bigquery/test_connection.py +0 -0
  521. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_bigquery/test_exceptions.py +0 -0
  522. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_duckdb/__init__.py +0 -0
  523. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_duckdb/conftest.py +0 -0
  524. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_duckdb/test_arrow.py +0 -0
  525. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_duckdb/test_connection.py +0 -0
  526. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_duckdb/test_driver.py +0 -0
  527. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_duckdb/test_driver_features.py +0 -0
  528. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_duckdb/test_exceptions.py +0 -0
  529. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_duckdb/test_execute_many.py +0 -0
  530. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_duckdb/test_extensions/__init__.py +0 -0
  531. {sqlspec-0.30.2/tests → sqlspec-0.32.0/tests/integration/test_adapters/test_duckdb/test_extensions/test_adk}/__init__.py +0 -0
  532. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_duckdb/test_extensions/test_adk/test_store.py +0 -0
  533. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_duckdb/test_extensions/test_litestar/__init__.py +0 -0
  534. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_duckdb/test_extensions/test_litestar/test_store.py +0 -0
  535. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_duckdb/test_migrations.py +0 -0
  536. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_duckdb/test_mixed_parameter_styles.py +0 -0
  537. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_duckdb/test_parameter_styles.py +0 -0
  538. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_duckdb/test_pooling.py +0 -0
  539. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_duckdb/utils.py +0 -0
  540. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_oracledb/__init__.py +0 -0
  541. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_oracledb/conftest.py +0 -0
  542. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_oracledb/test_arrow.py +0 -0
  543. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_oracledb/test_connection.py +0 -0
  544. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_oracledb/test_driver_async.py +0 -0
  545. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_oracledb/test_driver_sync.py +0 -0
  546. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_oracledb/test_exceptions.py +0 -0
  547. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_oracledb/test_execute_many.py +0 -0
  548. {sqlspec-0.30.2/tests/integration/test_adapters/test_duckdb/test_extensions/test_adk → sqlspec-0.32.0/tests/integration/test_adapters/test_oracledb/test_extensions}/__init__.py +0 -0
  549. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_oracledb/test_extensions/test_adk/__init__.py +0 -0
  550. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_oracledb/test_extensions/test_adk/test_inmemory.py +0 -0
  551. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_oracledb/test_extensions/test_adk/test_oracle_specific.py +0 -0
  552. {sqlspec-0.30.2/tests/integration/test_adapters/test_oracledb/test_extensions → sqlspec-0.32.0/tests/integration/test_adapters/test_oracledb/test_extensions/test_litestar}/__init__.py +0 -0
  553. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_oracledb/test_extensions/test_litestar/test_inmemory.py +0 -0
  554. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_oracledb/test_extensions/test_litestar/test_store_async.py +0 -0
  555. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_oracledb/test_extensions/test_litestar/test_store_sync.py +0 -0
  556. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_oracledb/test_merge.py +0 -0
  557. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_oracledb/test_merge_bulk.py +0 -0
  558. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_oracledb/test_migrations.py +0 -0
  559. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_oracledb/test_msgspec_clob.py +0 -0
  560. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_oracledb/test_numpy_vectors.py +0 -0
  561. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_oracledb/test_oracle_features.py +0 -0
  562. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_oracledb/test_parameter_styles.py +0 -0
  563. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_oracledb/test_stack.py +0 -0
  564. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_oracledb/test_uuid_binary.py +0 -0
  565. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_psqlpy/__init__.py +0 -0
  566. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_psqlpy/conftest.py +0 -0
  567. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_psqlpy/test_arrow.py +0 -0
  568. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_psqlpy/test_connection.py +0 -0
  569. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_psqlpy/test_driver.py +0 -0
  570. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_psqlpy/test_exceptions.py +0 -0
  571. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_psqlpy/test_extensions/__init__.py +0 -0
  572. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_psqlpy/test_extensions/test_adk/__init__.py +0 -0
  573. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_psqlpy/test_extensions/test_adk/test_owner_id_column.py +0 -0
  574. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_psqlpy/test_extensions/test_litestar/__init__.py +0 -0
  575. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_psqlpy/test_extensions/test_litestar/test_store.py +0 -0
  576. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_psqlpy/test_merge_bulk.py +0 -0
  577. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_psqlpy/test_migrations.py +0 -0
  578. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_psqlpy/test_parameter_styles.py +0 -0
  579. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_psqlpy/test_psqlpy_features.py +0 -0
  580. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_psycopg/__init__.py +0 -0
  581. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_psycopg/test_arrow.py +0 -0
  582. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_psycopg/test_async_copy.py +0 -0
  583. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_psycopg/test_driver.py +0 -0
  584. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_psycopg/test_exceptions.py +0 -0
  585. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_psycopg/test_execute_many.py +0 -0
  586. {sqlspec-0.30.2/tests/integration/test_adapters/test_oracledb/test_extensions/test_litestar → sqlspec-0.32.0/tests/integration/test_adapters/test_psycopg/test_extensions}/__init__.py +0 -0
  587. {sqlspec-0.30.2/tests/integration/test_adapters/test_psycopg/test_extensions → sqlspec-0.32.0/tests/integration/test_adapters/test_psycopg/test_extensions/test_adk}/__init__.py +0 -0
  588. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_psycopg/test_extensions/test_adk/test_owner_id_column.py +0 -0
  589. {sqlspec-0.30.2/tests/integration/test_adapters/test_psycopg/test_extensions/test_adk → sqlspec-0.32.0/tests/integration/test_adapters/test_psycopg/test_extensions/test_litestar}/__init__.py +0 -0
  590. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_psycopg/test_extensions/test_litestar/test_store_async.py +0 -0
  591. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_psycopg/test_extensions/test_litestar/test_store_sync.py +0 -0
  592. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_psycopg/test_merge_bulk.py +0 -0
  593. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_psycopg/test_parameter_styles.py +0 -0
  594. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_sqlite/__init__.py +0 -0
  595. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_sqlite/conftest.py +0 -0
  596. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_sqlite/test_arrow.py +0 -0
  597. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_sqlite/test_data_dictionary.py +0 -0
  598. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_sqlite/test_driver.py +0 -0
  599. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_sqlite/test_driver_features.py +0 -0
  600. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_sqlite/test_exceptions.py +0 -0
  601. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_sqlite/test_extensions/__init__.py +0 -0
  602. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_sqlite/test_extensions/test_adk/__init__.py +0 -0
  603. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_sqlite/test_extensions/test_adk/test_owner_id_column.py +0 -0
  604. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_sqlite/test_extensions/test_litestar/__init__.py +0 -0
  605. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_sqlite/test_extensions/test_litestar/test_store.py +0 -0
  606. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_sqlite/test_migrations.py +0 -0
  607. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_sqlite/test_parameter_styles.py +0 -0
  608. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_sqlite/test_pooling.py +0 -0
  609. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_sqlite/test_query_mixin.py +0 -0
  610. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_adapters/test_sqlite/test_storage_bridge.py +0 -0
  611. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_async_migrations.py +0 -0
  612. {sqlspec-0.30.2/tests/integration/test_adapters/test_psycopg/test_extensions/test_litestar → sqlspec-0.32.0/tests/integration/test_cli}/__init__.py +0 -0
  613. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_dishka/__init__.py +0 -0
  614. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_dishka/conftest.py +0 -0
  615. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_dishka/test_dishka_integration.py +0 -0
  616. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_extensions/__init__.py +0 -0
  617. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_extensions/test_fastapi/test_fastapi_filters_integration.py +0 -0
  618. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_extensions/test_fastapi/test_fastapi_integration.py +0 -0
  619. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_extensions/test_flask/test_flask_disable_di.py +0 -0
  620. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_extensions/test_flask/test_flask_integration.py +0 -0
  621. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_extensions/test_litestar/test_correlation_middleware.py +0 -0
  622. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_extensions/test_litestar/test_litestar_disable_di.py +0 -0
  623. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_extensions/test_starlette/test_starlette_disable_di.py +0 -0
  624. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_extensions/test_starlette/test_starlette_integration.py +0 -0
  625. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_loader/__init__.py +0 -0
  626. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_loader/test_file_system_loading.py +0 -0
  627. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_migrations/__init__.py +0 -0
  628. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_migrations/test_auto_sync.py +0 -0
  629. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_migrations/test_fix_checksum_stability.py +0 -0
  630. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_migrations/test_fix_file_operations.py +0 -0
  631. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_migrations/test_fix_idempotency_workflow.py +0 -0
  632. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_migrations/test_schema_migration.py +0 -0
  633. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_migrations/test_upgrade_downgrade_versions.py +0 -0
  634. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_stack_edge_cases.py +0 -0
  635. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/integration/test_storage/__init__.py +0 -0
  636. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/conftest.py +0 -0
  637. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_adapters/__init__.py +0 -0
  638. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_adapters/conftest.py +0 -0
  639. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_adapters/test_adapter_implementations.py +0 -0
  640. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_adapters/test_adbc/test_adbc_serialization.py +0 -0
  641. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_adapters/test_async_adapters.py +0 -0
  642. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_adapters/test_asyncmy/__init__.py +0 -0
  643. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_adapters/test_asyncmy/test_config.py +0 -0
  644. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_adapters/test_asyncpg/__init__.py +0 -0
  645. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_adapters/test_asyncpg/test_cloud_connectors.py +0 -0
  646. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_adapters/test_asyncpg/test_config.py +0 -0
  647. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_adapters/test_asyncpg/test_type_handlers.py +0 -0
  648. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_adapters/test_bigquery/__init__.py +0 -0
  649. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_adapters/test_bigquery/test_config.py +0 -0
  650. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_adapters/test_bigquery/test_parameters.py +0 -0
  651. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_adapters/test_duckdb/__init__.py +0 -0
  652. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_adapters/test_duckdb/test_config.py +0 -0
  653. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_adapters/test_duckdb/test_extension_flags.py +0 -0
  654. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_adapters/test_duckdb/test_type_converter.py +0 -0
  655. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_adapters/test_extension_config.py +0 -0
  656. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_adapters/test_oracledb/test_data_dictionary.py +0 -0
  657. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_adapters/test_oracledb/test_numpy_handlers.py +0 -0
  658. /sqlspec-0.30.2/tests/unit/test_adapters/test_oracledb/test_adk_store.py → /sqlspec-0.32.0/tests/unit/test_adapters/test_oracledb/test_oracle_adk_store.py +0 -0
  659. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_adapters/test_oracledb/test_pipeline_helpers.py +0 -0
  660. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_adapters/test_oracledb/test_type_converter_vectors.py +0 -0
  661. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_adapters/test_oracledb/test_uuid_handlers.py +0 -0
  662. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_adapters/test_psqlpy/__init__.py +0 -0
  663. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_adapters/test_psqlpy/test_config.py +0 -0
  664. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_adapters/test_psycopg/test_config.py +0 -0
  665. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_adapters/test_psycopg/test_type_handlers.py +0 -0
  666. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_adapters/test_sqlite/__init__.py +0 -0
  667. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_adapters/test_sqlite/test_type_handlers.py +0 -0
  668. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_adapters/test_sync_adapters.py +0 -0
  669. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_arrow_helpers.py +0 -0
  670. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_arrow_result.py +0 -0
  671. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_base/__init__.py +0 -0
  672. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_base/test_sql_integration.py +0 -0
  673. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_base/test_sqlspec_class.py +0 -0
  674. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_builder/__init__.py +0 -0
  675. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_builder/test_copy_helpers.py +0 -0
  676. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_builder/test_dialect_override.py +0 -0
  677. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_builder/test_insert_builder.py +0 -0
  678. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_builder/test_lateral_joins.py +0 -0
  679. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_builder/test_merge_dialect_validation.py +0 -0
  680. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_builder/test_merge_property_shorthand.py +0 -0
  681. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_builder/test_parameter_naming.py +0 -0
  682. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_builder/test_select_locking.py +0 -0
  683. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_builder/test_to_sql.py +0 -0
  684. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_builder/test_to_sql_edge_cases.py +0 -0
  685. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_builder/test_upsert_factory.py +0 -0
  686. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_builder/test_upsert_factory_edge_cases.py +0 -0
  687. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_builder_parameter_naming.py +0 -0
  688. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_cli/__init__.py +0 -0
  689. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_cli/test_config_loading.py +0 -0
  690. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_cli/test_migration_commands.py +0 -0
  691. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_cli/test_shell_completion.py +0 -0
  692. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_config/test_migration_methods.py +0 -0
  693. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_config/test_observability_extensions.py +0 -0
  694. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_config/test_storage_capabilities.py +0 -0
  695. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_config_resolver.py +0 -0
  696. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_core/test_cache.py +0 -0
  697. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_core/test_compiler.py +0 -0
  698. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_core/test_filters.py +0 -0
  699. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_core/test_hashing.py +0 -0
  700. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_core/test_parameter_regex_performance.py +0 -0
  701. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_core/test_result.py +0 -0
  702. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_core/test_stack.py +0 -0
  703. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_core/test_stack_metrics.py +0 -0
  704. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_cte_parameter_collisions.py +0 -0
  705. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_driver/__init__.py +0 -0
  706. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_driver/test_count_query_edge_cases.py +0 -0
  707. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_driver/test_data_dictionary.py +0 -0
  708. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_driver/test_result_tools.py +0 -0
  709. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_driver/test_stack_base.py +0 -0
  710. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_exceptions.py +0 -0
  711. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_extensions/__init__.py +0 -0
  712. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_extensions/test_fastapi/__init__.py +0 -0
  713. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_extensions/test_fastapi/test_extension.py +0 -0
  714. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_extensions/test_fastapi/test_providers.py +0 -0
  715. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_extensions/test_flask/__init__.py +0 -0
  716. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_extensions/test_flask/test_extension.py +0 -0
  717. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_extensions/test_flask/test_state.py +0 -0
  718. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_extensions/test_litestar/__init__.py +0 -0
  719. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_extensions/test_litestar/test_handlers.py +0 -0
  720. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_extensions/test_observability_integrations.py +0 -0
  721. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_extensions/test_starlette/__init__.py +0 -0
  722. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_extensions/test_starlette/test_config_state.py +0 -0
  723. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_extensions/test_starlette/test_extension.py +0 -0
  724. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_extensions/test_starlette/test_utils.py +0 -0
  725. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_loader/__init__.py +0 -0
  726. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_loader/test_cache_integration.py +0 -0
  727. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_loader/test_fixtures_directory_loading.py +0 -0
  728. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_loader/test_loading_patterns.py +0 -0
  729. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_loader/test_sql_file_loader.py +0 -0
  730. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_migration_context.py +0 -0
  731. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_migrations/__init__.py +0 -0
  732. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_migrations/test_checksum_canonicalization.py +0 -0
  733. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_migrations/test_extension_discovery.py +0 -0
  734. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_migrations/test_fix_regex_precision.py +0 -0
  735. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_migrations/test_migration.py +0 -0
  736. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_migrations/test_migration_commands.py +0 -0
  737. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_migrations/test_migration_context.py +0 -0
  738. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_migrations/test_migration_execution.py +0 -0
  739. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_migrations/test_migration_runner.py +0 -0
  740. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_migrations/test_null_handling_fixes.py +0 -0
  741. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_migrations/test_tracker_idempotency.py +0 -0
  742. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_migrations/test_utils.py +0 -0
  743. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_migrations/test_validation.py +0 -0
  744. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_migrations/test_version.py +0 -0
  745. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_migrations/test_version_conversion.py +0 -0
  746. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_migrations/test_version_parsing_edge_cases.py +0 -0
  747. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_observability.py +0 -0
  748. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_parsing_utils.py +0 -0
  749. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_serialization.py +0 -0
  750. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_sql_factory.py +0 -0
  751. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_storage/__init__.py +0 -0
  752. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_storage/test_errors.py +0 -0
  753. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_storage/test_fsspec_backend.py +0 -0
  754. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_storage/test_local_store.py +0 -0
  755. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_storage/test_obstore_backend.py +0 -0
  756. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_storage/test_storage_registry.py +0 -0
  757. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_storage/test_storage_utils.py +0 -0
  758. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_storage_bridge.py +0 -0
  759. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_type_conversion.py +0 -0
  760. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_utils/__init__.py +0 -0
  761. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_utils/test_correlation.py +0 -0
  762. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_utils/test_data_transformation.py +0 -0
  763. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_utils/test_dependencies.py +0 -0
  764. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_utils/test_deprecation.py +0 -0
  765. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_utils/test_fixtures.py +0 -0
  766. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_utils/test_logging.py +0 -0
  767. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_utils/test_module_loader.py +0 -0
  768. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_utils/test_serializers.py +0 -0
  769. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_utils/test_singleton.py +0 -0
  770. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_utils/test_sync_tools.py +0 -0
  771. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_utils/test_text.py +0 -0
  772. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_utils/test_type_guards.py +0 -0
  773. {sqlspec-0.30.2 → sqlspec-0.32.0}/tests/unit/test_where_or_operations.py +0 -0
  774. {sqlspec-0.30.2 → sqlspec-0.32.0}/tools/__init__.py +0 -0
  775. {sqlspec-0.30.2 → sqlspec-0.32.0}/tools/build_docs.py +0 -0
  776. {sqlspec-0.30.2 → sqlspec-0.32.0}/tools/fix_documentation.py +0 -0
  777. {sqlspec-0.30.2 → sqlspec-0.32.0}/tools/local-infra.sh +0 -0
  778. {sqlspec-0.30.2 → sqlspec-0.32.0}/tools/pypi_readme.py +0 -0
  779. {sqlspec-0.30.2 → sqlspec-0.32.0}/tools/run_pre_commit.py +0 -0
  780. {sqlspec-0.30.2 → sqlspec-0.32.0}/tools/sphinx_ext/__init__.py +0 -0
  781. {sqlspec-0.30.2 → sqlspec-0.32.0}/tools/sphinx_ext/changelog.py +0 -0
  782. {sqlspec-0.30.2 → sqlspec-0.32.0}/tools/sphinx_ext/missing_references.py +0 -0
@@ -0,0 +1,756 @@
1
+ ---
2
+ description: Re-bootstrap or align AI infrastructure with latest patterns
3
+ allowed-tools: Read, Write, Edit, Glob, Grep, Bash
4
+ ---
5
+
6
+ # Bootstrap AI Infrastructure
7
+
8
+ Re-bootstrap in alignment mode.
9
+
10
+ ## Purpose
11
+
12
+ This command validates and updates the AI infrastructure (agents, commands, skills) to ensure alignment with:
13
+ 1. Current project standards (AGENTS.md, CLAUDE.md)
14
+ 2. Latest agent patterns and workflows
15
+ 3. Complete coverage of adapters, tools, and frameworks
16
+ 4. Consistency across documentation
17
+
18
+ **Use when:**
19
+ - Adding new adapters, extensions, or features
20
+ - Updating agent workflows
21
+ - Aligning with new standards
22
+ - Validating infrastructure completeness
23
+
24
+ ## Alignment Workflow
25
+
26
+ ### Step 1: Inventory Existing Infrastructure
27
+
28
+ List all AI infrastructure components:
29
+
30
+ ```bash
31
+ # A. List all agents
32
+ ls -1 /home/cody/code/litestar/sqlspec/.claude/agents/
33
+
34
+ # B. List all commands
35
+ ls -1 /home/cody/code/litestar/sqlspec/.claude/commands/
36
+
37
+ # C. List all skills
38
+ find /home/cody/code/litestar/sqlspec/.claude/skills -type f -name "*.md"
39
+
40
+ # D. List all adapters in codebase
41
+ ls -1d /home/cody/code/litestar/sqlspec/sqlspec/adapters/*/
42
+
43
+ # E. List all extensions
44
+ ls -1d /home/cody/code/litestar/sqlspec/sqlspec/extensions/*/
45
+
46
+ # F. Check guides structure
47
+ find /home/cody/code/litestar/sqlspec/docs/guides -type f -name "*.md"
48
+ ```
49
+
50
+ **Expected output structure:**
51
+
52
+ ```
53
+ .claude/
54
+ ├── agents/
55
+ │ ├── prd.md
56
+ │ ├── expert.md
57
+ │ ├── testing.md
58
+ │ └── docs-vision.md
59
+ ├── commands/
60
+ │ ├── prd.md
61
+ │ ├── implement.md
62
+ │ ├── test.md
63
+ │ ├── review.md
64
+ │ ├── explore.md
65
+ │ ├── fix-issue.md
66
+ │ └── bootstrap.md
67
+ └── skills/
68
+ ├── sqlspec-usage/
69
+ │ ├── skill.md
70
+ │ ├── patterns/*.md
71
+ │ └── examples/*.py
72
+ └── sqlspec-adapters/
73
+ ├── asyncpg.md
74
+ ├── psycopg.md
75
+ ├── oracledb.md
76
+ ├── duckdb.md
77
+ ├── sqlite.md
78
+ ├── asyncmy.md
79
+ ├── psqlpy.md
80
+ ├── aiosqlite.md
81
+ ├── adbc.md
82
+ └── bigquery.md
83
+ ```
84
+
85
+ ### Step 2: Component Checklist
86
+
87
+ Compare existing components against required infrastructure:
88
+
89
+ #### A. Required Agents (4 total)
90
+
91
+ | Agent | File | Status | Purpose |
92
+ |-------|------|--------|---------|
93
+ | PRD | `.claude/agents/prd.md` | ☐ | Requirements planning |
94
+ | Expert | `.claude/agents/expert.md` | ☐ | Implementation |
95
+ | Testing | `.claude/agents/testing.md` | ☐ | Test creation |
96
+ | Docs & Vision | `.claude/agents/docs-vision.md` | ☐ | Documentation, QA, knowledge |
97
+
98
+ **Validation:**
99
+ ```bash
100
+ for agent in prd expert testing docs-vision; do
101
+ if [ -f ".claude/agents/${agent}.md" ]; then
102
+ echo "✓ ${agent}.md exists"
103
+ else
104
+ echo "✗ ${agent}.md missing"
105
+ fi
106
+ done
107
+ ```
108
+
109
+ #### B. Required Commands (7 total)
110
+
111
+ | Command | File | Status | Purpose |
112
+ |---------|------|--------|---------|
113
+ | prd | `.claude/commands/prd.md` | ☐ | Create PRD workspace |
114
+ | implement | `.claude/commands/implement.md` | ☐ | Full implementation workflow |
115
+ | test | `.claude/commands/test.md` | ☐ | Standalone testing |
116
+ | review | `.claude/commands/review.md` | ☐ | Standalone docs/QA |
117
+ | explore | `.claude/commands/explore.md` | ☐ | Codebase exploration |
118
+ | fix-issue | `.claude/commands/fix-issue.md` | ☐ | GitHub issue workflow |
119
+ | bootstrap | `.claude/commands/bootstrap.md` | ☐ | Infrastructure alignment |
120
+
121
+ **Validation:**
122
+ ```bash
123
+ for cmd in prd implement test review explore fix-issue bootstrap; do
124
+ if [ -f ".claude/commands/${cmd}.md" ]; then
125
+ echo "✓ ${cmd}.md exists"
126
+ else
127
+ echo "✗ ${cmd}.md missing"
128
+ fi
129
+ done
130
+ ```
131
+
132
+ #### C. Required Skills - Usage Patterns (8 total)
133
+
134
+ | Pattern | File | Status | Purpose |
135
+ |---------|------|--------|---------|
136
+ | Main skill | `.claude/skills/sqlspec-usage/skill.md` | ☐ | Overview and quick reference |
137
+ | Configuration | `.claude/skills/sqlspec-usage/patterns/configuration.md` | ☐ | Config patterns |
138
+ | Queries | `.claude/skills/sqlspec-usage/patterns/queries.md` | ☐ | Query execution |
139
+ | Frameworks | `.claude/skills/sqlspec-usage/patterns/frameworks.md` | ☐ | Extension integration |
140
+ | Migrations | `.claude/skills/sqlspec-usage/patterns/migrations.md` | ☐ | Migration tools |
141
+ | Testing | `.claude/skills/sqlspec-usage/patterns/testing.md` | ☐ | Test patterns |
142
+ | Performance | `.claude/skills/sqlspec-usage/patterns/performance.md` | ☐ | Optimization |
143
+ | Troubleshooting | `.claude/skills/sqlspec-usage/patterns/troubleshooting.md` | ☐ | Common issues |
144
+
145
+ **Validation:**
146
+ ```bash
147
+ for pattern in configuration queries frameworks migrations testing performance troubleshooting; do
148
+ if [ -f ".claude/skills/sqlspec-usage/patterns/${pattern}.md" ]; then
149
+ echo "✓ ${pattern}.md exists"
150
+ else
151
+ echo "✗ ${pattern}.md missing"
152
+ fi
153
+ done
154
+ ```
155
+
156
+ #### D. Required Skills - Adapter Coverage (10 adapters)
157
+
158
+ | Adapter | File | Status | Codebase Path |
159
+ |---------|------|--------|---------------|
160
+ | asyncpg | `.claude/skills/sqlspec-adapters/asyncpg.md` | ☐ | `sqlspec/adapters/asyncpg/` |
161
+ | psycopg | `.claude/skills/sqlspec-adapters/psycopg.md` | ☐ | `sqlspec/adapters/psycopg/` |
162
+ | oracledb | `.claude/skills/sqlspec-adapters/oracledb.md` | ☐ | `sqlspec/adapters/oracledb/` |
163
+ | duckdb | `.claude/skills/sqlspec-adapters/duckdb.md` | ☐ | `sqlspec/adapters/duckdb/` |
164
+ | sqlite | `.claude/skills/sqlspec-adapters/sqlite.md` | ☐ | `sqlspec/adapters/sqlite/` |
165
+ | asyncmy | `.claude/skills/sqlspec-adapters/asyncmy.md` | ☐ | `sqlspec/adapters/asyncmy/` |
166
+ | psqlpy | `.claude/skills/sqlspec-adapters/psqlpy.md` | ☐ | `sqlspec/adapters/psqlpy/` |
167
+ | aiosqlite | `.claude/skills/sqlspec-adapters/aiosqlite.md` | ☐ | `sqlspec/adapters/aiosqlite/` |
168
+ | adbc | `.claude/skills/sqlspec-adapters/adbc.md` | ☐ | `sqlspec/adapters/adbc/` |
169
+ | bigquery | `.claude/skills/sqlspec-adapters/bigquery.md` | ☐ | `sqlspec/adapters/bigquery/` |
170
+
171
+ **Validation:**
172
+ ```bash
173
+ # Check skill files exist
174
+ for adapter in asyncpg psycopg oracledb duckdb sqlite asyncmy psqlpy aiosqlite adbc bigquery; do
175
+ if [ -f ".claude/skills/sqlspec-adapters/${adapter}.md" ]; then
176
+ echo "✓ ${adapter}.md skill exists"
177
+ else
178
+ echo "✗ ${adapter}.md skill missing"
179
+ fi
180
+ done
181
+
182
+ # Verify adapters exist in codebase
183
+ for adapter in asyncpg psycopg oracledb duckdb sqlite asyncmy psqlpy aiosqlite adbc bigquery; do
184
+ if [ -d "sqlspec/adapters/${adapter}" ]; then
185
+ echo "✓ ${adapter} adapter exists in codebase"
186
+ else
187
+ echo "✗ ${adapter} adapter missing in codebase"
188
+ fi
189
+ done
190
+ ```
191
+
192
+ #### E. Required Skills - Examples (4 total)
193
+
194
+ | Example | File | Status | Purpose |
195
+ |---------|------|--------|---------|
196
+ | Litestar | `.claude/skills/sqlspec-usage/examples/litestar-integration.py` | ☐ | Litestar framework |
197
+ | FastAPI | `.claude/skills/sqlspec-usage/examples/fastapi-integration.py` | ☐ | FastAPI framework |
198
+ | Multi-DB | `.claude/skills/sqlspec-usage/examples/multi-database.py` | ☐ | Multiple databases |
199
+ | Testing | `.claude/skills/sqlspec-usage/examples/testing-patterns.py` | ☐ | Test patterns |
200
+
201
+ **Validation:**
202
+ ```bash
203
+ for example in litestar-integration fastapi-integration multi-database testing-patterns; do
204
+ if [ -f ".claude/skills/sqlspec-usage/examples/${example}.py" ]; then
205
+ echo "✓ ${example}.py exists"
206
+ else
207
+ echo "✗ ${example}.py missing"
208
+ fi
209
+ done
210
+ ```
211
+
212
+ #### F. Documentation Guides Coverage
213
+
214
+ | Guide Type | Path | Required Files |
215
+ |------------|------|----------------|
216
+ | Architecture | `docs/guides/architecture/` | architecture.md, data-flow.md, arrow-integration.md, patterns.md |
217
+ | Adapters | `docs/guides/adapters/` | One guide per adapter + parameter-profile-registry.md |
218
+ | Performance | `docs/guides/performance/` | mypyc.md, sqlglot.md |
219
+ | Extensions | `docs/guides/extensions/` | litestar.md, fastapi.md, starlette.md, flask.md |
220
+ | Testing | `docs/guides/testing/` | testing.md |
221
+ | Development | `docs/guides/development/` | code-standards.md, implementation-patterns.md |
222
+ | Quick Reference | `docs/guides/quick-reference/` | quick-reference.md |
223
+
224
+ **Validation:**
225
+ ```bash
226
+ # Check guide directories exist
227
+ for dir in architecture adapters performance extensions testing development quick-reference; do
228
+ if [ -d "docs/guides/${dir}" ]; then
229
+ echo "✓ docs/guides/${dir}/ exists"
230
+ ls -1 "docs/guides/${dir}/"
231
+ else
232
+ echo "✗ docs/guides/${dir}/ missing"
233
+ fi
234
+ done
235
+ ```
236
+
237
+ ### Step 3: Gap Analysis
238
+
239
+ Identify missing or outdated components:
240
+
241
+ **A. Find missing adapter skills:**
242
+
243
+ ```bash
244
+ # List adapters in codebase
245
+ CODEBASE_ADAPTERS=$(ls -1d sqlspec/adapters/*/ | xargs -n1 basename)
246
+
247
+ # List adapter skills
248
+ SKILL_ADAPTERS=$(ls -1 .claude/skills/sqlspec-adapters/*.md 2>/dev/null | xargs -n1 basename | sed 's/.md$//')
249
+
250
+ # Compare
251
+ echo "=== Adapters in codebase but missing skills ==="
252
+ for adapter in $CODEBASE_ADAPTERS; do
253
+ if ! echo "$SKILL_ADAPTERS" | grep -q "^${adapter}$"; then
254
+ echo "Missing skill: ${adapter}"
255
+ fi
256
+ done
257
+
258
+ echo "=== Skills for adapters not in codebase ==="
259
+ for skill in $SKILL_ADAPTERS; do
260
+ if ! echo "$CODEBASE_ADAPTERS" | grep -q "^${skill}$"; then
261
+ echo "Orphaned skill: ${skill}"
262
+ fi
263
+ done
264
+ ```
265
+
266
+ **B. Find missing adapter guides:**
267
+
268
+ ```bash
269
+ # List adapters in codebase
270
+ CODEBASE_ADAPTERS=$(ls -1d sqlspec/adapters/*/ | xargs -n1 basename)
271
+
272
+ # List adapter guides (exclude parameter-profile-registry.md)
273
+ GUIDE_ADAPTERS=$(ls -1 docs/guides/adapters/*.md 2>/dev/null | grep -v parameter-profile-registry | xargs -n1 basename | sed 's/.md$//')
274
+
275
+ echo "=== Adapters missing documentation guides ==="
276
+ for adapter in $CODEBASE_ADAPTERS; do
277
+ if ! echo "$GUIDE_ADAPTERS" | grep -q "^${adapter}$"; then
278
+ echo "Missing guide: docs/guides/adapters/${adapter}.md"
279
+ fi
280
+ done
281
+ ```
282
+
283
+ **C. Find missing extension guides:**
284
+
285
+ ```bash
286
+ # List extensions in codebase
287
+ CODEBASE_EXTENSIONS=$(ls -1d sqlspec/extensions/*/ 2>/dev/null | xargs -n1 basename)
288
+
289
+ # List extension guides
290
+ GUIDE_EXTENSIONS=$(ls -1 docs/guides/extensions/*.md 2>/dev/null | xargs -n1 basename | sed 's/.md$//')
291
+
292
+ echo "=== Extensions missing documentation guides ==="
293
+ for ext in $CODEBASE_EXTENSIONS; do
294
+ if ! echo "$GUIDE_EXTENSIONS" | grep -q "^${ext}$"; then
295
+ echo "Missing guide: docs/guides/extensions/${ext}.md"
296
+ fi
297
+ done
298
+ ```
299
+
300
+ **D. Validate agent completeness:**
301
+
302
+ ```bash
303
+ # Check each agent has required sections
304
+ for agent in prd expert testing docs-vision; do
305
+ echo "=== Validating ${agent}.md ==="
306
+ if [ -f ".claude/agents/${agent}.md" ]; then
307
+ # Check for required sections
308
+ grep -q "^## Core Responsibilities" ".claude/agents/${agent}.md" && echo "✓ Has Core Responsibilities" || echo "✗ Missing Core Responsibilities"
309
+ grep -q "^## .*Workflow" ".claude/agents/${agent}.md" && echo "✓ Has Workflow section" || echo "✗ Missing Workflow section"
310
+ grep -q "^## Success Criteria" ".claude/agents/${agent}.md" && echo "✓ Has Success Criteria" || echo "✗ Missing Success Criteria"
311
+ grep -q "^## Tools Available" ".claude/agents/${agent}.md" && echo "✓ Has Tools Available" || echo "✗ Missing Tools Available"
312
+ fi
313
+ done
314
+ ```
315
+
316
+ **E. Validate command completeness:**
317
+
318
+ ```bash
319
+ # Check each command has required sections
320
+ for cmd in prd implement test review explore fix-issue bootstrap; do
321
+ echo "=== Validating ${cmd}.md ==="
322
+ if [ -f ".claude/commands/${cmd}.md" ]; then
323
+ # Check for workflow steps
324
+ grep -q "^### Step" ".claude/commands/${cmd}.md" && echo "✓ Has workflow steps" || echo "✗ Missing workflow steps"
325
+ grep -q "^## Success Criteria" ".claude/commands/${cmd}.md" && echo "✓ Has Success Criteria" || echo "✗ Missing Success Criteria"
326
+ # Check frontmatter
327
+ head -n 5 ".claude/commands/${cmd}.md" | grep -q "^description:" && echo "✓ Has description" || echo "✗ Missing description"
328
+ fi
329
+ done
330
+ ```
331
+
332
+ ### Step 4: Apply Updates
333
+
334
+ Based on gap analysis, apply necessary updates:
335
+
336
+ #### A. Create Missing Adapter Skills
337
+
338
+ For each adapter missing a skill file:
339
+
340
+ ```python
341
+ # Example: Create skill for new adapter
342
+ adapter_name = "newadapter"
343
+
344
+ Read(f"sqlspec/adapters/{adapter_name}/config.py")
345
+ Read(f"sqlspec/adapters/{adapter_name}/driver.py")
346
+
347
+ # Create skill file with template
348
+ Write(
349
+ file_path=f".claude/skills/sqlspec-adapters/{adapter_name}.md",
350
+ content=f"""# {adapter_name.capitalize()} Adapter
351
+
352
+ ## Overview
353
+
354
+ Database-specific implementation for {adapter_name}.
355
+
356
+ ## Configuration
357
+
358
+ ```python
359
+ from sqlspec.adapters.{adapter_name} import {adapter_name.capitalize()}Config
360
+
361
+ config = {adapter_name.capitalize()}Config(
362
+ pool_config={{"dsn": "..."}},
363
+ driver_features={{}}
364
+ )
365
+ ```
366
+
367
+ ## Features
368
+
369
+ - Connection pooling: [Yes/No]
370
+ - Async support: [Yes/No]
371
+ - Transaction support: [Yes/No]
372
+ - Special types: [List]
373
+
374
+ ## Usage Patterns
375
+
376
+ [Add specific patterns from driver.py analysis]
377
+
378
+ ## Troubleshooting
379
+
380
+ [Add common issues]
381
+
382
+ ## References
383
+
384
+ - Library: [link to library docs]
385
+ - Adapter guide: docs/guides/adapters/{adapter_name}.md
386
+ """
387
+ )
388
+ ```
389
+
390
+ #### B. Create Missing Adapter Guides
391
+
392
+ For each adapter missing a documentation guide:
393
+
394
+ ```python
395
+ adapter_name = "newadapter"
396
+
397
+ # Read adapter implementation for context
398
+ Read(f"sqlspec/adapters/{adapter_name}/config.py")
399
+ Read(f"sqlspec/adapters/{adapter_name}/driver.py")
400
+
401
+ # Create guide
402
+ Write(
403
+ file_path=f"docs/guides/adapters/{adapter_name}.md",
404
+ content=f"""# {adapter_name.capitalize()} Adapter Guide
405
+
406
+ ## Overview
407
+
408
+ This guide covers the {adapter_name} adapter for SQLSpec.
409
+
410
+ ## Installation
411
+
412
+ ```bash
413
+ pip install sqlspec[{adapter_name}]
414
+ ```
415
+
416
+ ## Basic Configuration
417
+
418
+ ```python
419
+ from sqlspec.adapters.{adapter_name} import {adapter_name.capitalize()}Config
420
+
421
+ config = {adapter_name.capitalize()}Config(
422
+ pool_config={{"dsn": "..."}}
423
+ )
424
+ ```
425
+
426
+ ## Connection Pooling
427
+
428
+ [Details about pooling configuration]
429
+
430
+ ## Transaction Management
431
+
432
+ [Details about transactions]
433
+
434
+ ## Type Handling
435
+
436
+ [Details about type conversion]
437
+
438
+ ## Performance Considerations
439
+
440
+ [Optimization tips]
441
+
442
+ ## Troubleshooting
443
+
444
+ [Common issues and solutions]
445
+
446
+ ## API Reference
447
+
448
+ [Link to API docs]
449
+ """
450
+ )
451
+ ```
452
+
453
+ #### C. Update Agent Files with New Patterns
454
+
455
+ When new patterns emerge, update agent files:
456
+
457
+ ```python
458
+ # Example: Add new pattern to expert.md
459
+ Read(".claude/agents/expert.md")
460
+
461
+ # Extract new pattern from AGENTS.md
462
+ Read("AGENTS.md")
463
+
464
+ # Update expert.md with new implementation pattern
465
+ Edit(
466
+ file_path=".claude/agents/expert.md",
467
+ old_string="## Database Adapter Implementation",
468
+ new_string="""## Database Adapter Implementation
469
+
470
+ ### New Pattern: [Pattern Name]
471
+
472
+ [Pattern description and example]
473
+
474
+ ### Existing Patterns
475
+
476
+ """
477
+ )
478
+ ```
479
+
480
+ #### D. Synchronize Standards
481
+
482
+ Ensure AGENTS.md patterns are reflected in all agent files:
483
+
484
+ ```python
485
+ # Read current standards
486
+ Read("AGENTS.md")
487
+
488
+ # Check each agent references AGENTS.md
489
+ for agent in ["expert", "testing", "docs-vision"]:
490
+ Read(f".claude/agents/{agent}.md")
491
+
492
+ # Verify MANDATORY CODE QUALITY RULES section references AGENTS.md
493
+ # Update if outdated
494
+ ```
495
+
496
+ #### E. Update Skills with Latest Patterns
497
+
498
+ When implementation patterns change, update skills:
499
+
500
+ ```python
501
+ # Example: Update configuration pattern in skill
502
+ Read(".claude/skills/sqlspec-usage/patterns/configuration.md")
503
+ Read("sqlspec/adapters/asyncpg/config.py") # Reference implementation
504
+
505
+ # Update skill with latest pattern
506
+ Edit(
507
+ file_path=".claude/skills/sqlspec-usage/patterns/configuration.md",
508
+ old_string="# Old pattern",
509
+ new_string="# Updated pattern from asyncpg implementation"
510
+ )
511
+ ```
512
+
513
+ ### Step 5: Validation
514
+
515
+ After applying updates, validate infrastructure:
516
+
517
+ #### A. Syntax Validation
518
+
519
+ ```bash
520
+ # Check all markdown files are valid
521
+ find .claude -name "*.md" -exec bash -c 'echo "Checking: $1"; head -1 "$1" | grep -q "^---$" || echo " ✗ Missing frontmatter"' _ {} \;
522
+
523
+ # Check all Python examples are syntactically valid
524
+ find .claude/skills -name "*.py" -exec python -m py_compile {} \; && echo "✓ All Python examples valid"
525
+ ```
526
+
527
+ #### B. Cross-Reference Validation
528
+
529
+ ```bash
530
+ # Verify all adapter references are valid
531
+ echo "=== Checking adapter references in skills ==="
532
+ for adapter in asyncpg psycopg oracledb duckdb sqlite asyncmy psqlpy aiosqlite adbc bigquery; do
533
+ # Check skill exists
534
+ [ -f ".claude/skills/sqlspec-adapters/${adapter}.md" ] || echo "✗ Missing skill: ${adapter}.md"
535
+
536
+ # Check adapter exists in codebase
537
+ [ -d "sqlspec/adapters/${adapter}" ] || echo "✗ Adapter not in codebase: ${adapter}"
538
+
539
+ # Check guide exists
540
+ [ -f "docs/guides/adapters/${adapter}.md" ] || echo "✗ Missing guide: docs/guides/adapters/${adapter}.md"
541
+ done
542
+ ```
543
+
544
+ #### C. Pattern Consistency Validation
545
+
546
+ ```bash
547
+ # Check AGENTS.md patterns are referenced in agent files
548
+ echo "=== Validating pattern references ==="
549
+
550
+ # Extract pattern names from AGENTS.md
551
+ PATTERNS=$(grep "^### " AGENTS.md | sed 's/^### //' | sort)
552
+
553
+ # Check each agent references key patterns
554
+ for agent in expert testing docs-vision; do
555
+ echo "Checking ${agent}.md for pattern references..."
556
+ # This is a sample check - customize based on actual patterns
557
+ grep -q "AGENTS.md" ".claude/agents/${agent}.md" && echo "✓ References AGENTS.md" || echo "✗ No AGENTS.md reference"
558
+ done
559
+ ```
560
+
561
+ #### D. Tool Availability Validation
562
+
563
+ ```bash
564
+ # Verify all agents declare their tools correctly
565
+ for agent in prd expert testing docs-vision; do
566
+ echo "=== ${agent}.md tool declarations ==="
567
+ if [ -f ".claude/agents/${agent}.md" ]; then
568
+ # Check frontmatter has tools declaration
569
+ sed -n '1,/^---$/p' ".claude/agents/${agent}.md" | grep -q "^tools:" && echo "✓ Has tools declaration" || echo "✗ Missing tools declaration"
570
+
571
+ # Check Tools Available section exists
572
+ grep -q "^## Tools Available" ".claude/agents/${agent}.md" && echo "✓ Has Tools Available section" || echo "✗ Missing Tools Available section"
573
+ fi
574
+ done
575
+ ```
576
+
577
+ ### Step 6: Generate Report
578
+
579
+ Create comprehensive alignment report:
580
+
581
+ ```bash
582
+ # Generate report
583
+ cat > /tmp/bootstrap-report.md <<'EOF'
584
+ # AI Infrastructure Bootstrap Report
585
+
586
+ Generated: $(date)
587
+
588
+ ## Component Summary
589
+
590
+ ### Agents
591
+ - [ ] prd.md
592
+ - [ ] expert.md
593
+ - [ ] testing.md
594
+ - [ ] docs-vision.md
595
+
596
+ ### Commands
597
+ - [ ] prd.md
598
+ - [ ] implement.md
599
+ - [ ] test.md
600
+ - [ ] review.md
601
+ - [ ] explore.md
602
+ - [ ] fix-issue.md
603
+ - [ ] bootstrap.md
604
+
605
+ ### Skills - Usage Patterns
606
+ - [ ] skill.md (main)
607
+ - [ ] configuration.md
608
+ - [ ] queries.md
609
+ - [ ] frameworks.md
610
+ - [ ] migrations.md
611
+ - [ ] testing.md
612
+ - [ ] performance.md
613
+ - [ ] troubleshooting.md
614
+
615
+ ### Skills - Adapters
616
+ - [ ] asyncpg.md
617
+ - [ ] psycopg.md
618
+ - [ ] oracledb.md
619
+ - [ ] duckdb.md
620
+ - [ ] sqlite.md
621
+ - [ ] asyncmy.md
622
+ - [ ] psqlpy.md
623
+ - [ ] aiosqlite.md
624
+ - [ ] adbc.md
625
+ - [ ] bigquery.md
626
+
627
+ ### Skills - Examples
628
+ - [ ] litestar-integration.py
629
+ - [ ] fastapi-integration.py
630
+ - [ ] multi-database.py
631
+ - [ ] testing-patterns.py
632
+
633
+ ## Gaps Identified
634
+
635
+ [List of missing or outdated components]
636
+
637
+ ## Updates Applied
638
+
639
+ [List of files created or updated]
640
+
641
+ ## Validation Results
642
+
643
+ [Results from syntax, cross-reference, and pattern validation]
644
+
645
+ ## Next Steps
646
+
647
+ [Recommended follow-up actions]
648
+ EOF
649
+
650
+ # Display report
651
+ cat /tmp/bootstrap-report.md
652
+ ```
653
+
654
+ ## Update Strategies
655
+
656
+ ### Strategy 1: Preserve Custom Content
657
+
658
+ When updating existing files, preserve custom content:
659
+
660
+ ```python
661
+ # Read existing file
662
+ content = Read(".claude/agents/expert.md")
663
+
664
+ # Extract custom sections (those not in template)
665
+ # Update only template sections
666
+ # Preserve custom additions
667
+
668
+ # Write updated file preserving custom content
669
+ ```
670
+
671
+ ### Strategy 2: Incremental Updates
672
+
673
+ For large infrastructure updates:
674
+
675
+ 1. Update one component type at a time (agents → commands → skills)
676
+ 2. Validate after each component type
677
+ 3. Commit changes incrementally
678
+ 4. Run tests after each major update
679
+
680
+ ### Strategy 3: Breaking Change Detection
681
+
682
+ Before applying updates:
683
+
684
+ ```bash
685
+ # Check for breaking changes
686
+ echo "=== Checking for breaking changes ==="
687
+
688
+ # Compare agent tool declarations
689
+ for agent in prd expert testing docs-vision; do
690
+ # Extract tools from frontmatter
691
+ OLD_TOOLS=$(git show HEAD:.claude/agents/${agent}.md | sed -n '/^tools:/p')
692
+ NEW_TOOLS=$(sed -n '/^tools:/p' .claude/agents/${agent}.md)
693
+
694
+ if [ "$OLD_TOOLS" != "$NEW_TOOLS" ]; then
695
+ echo "⚠️ Tool changes in ${agent}.md:"
696
+ echo " Old: $OLD_TOOLS"
697
+ echo " New: $NEW_TOOLS"
698
+ fi
699
+ done
700
+ ```
701
+
702
+ ## Success Criteria
703
+
704
+ Bootstrap is complete when:
705
+
706
+ ✅ **All components present** - 4 agents, 7 commands, 10+ adapter skills, 8 usage patterns, 4 examples
707
+ ✅ **Adapter coverage complete** - Every adapter in codebase has skill + guide
708
+ ✅ **Extension coverage complete** - Every extension has guide
709
+ ✅ **Pattern consistency** - AGENTS.md patterns reflected in all agents
710
+ ✅ **Cross-references valid** - All file references resolve correctly
711
+ ✅ **Syntax valid** - All markdown and Python files parse correctly
712
+ ✅ **No breaking changes** - Existing functionality preserved
713
+ ✅ **Documentation updated** - Guides reflect current implementation
714
+
715
+ ## Example Execution
716
+
717
+ ```bash
718
+ # Full bootstrap workflow
719
+
720
+ # 1. Inventory
721
+ ls -1 .claude/agents/
722
+ ls -1 .claude/commands/
723
+ find .claude/skills -name "*.md"
724
+
725
+ # 2. Gap analysis
726
+ ./scripts/check-adapter-coverage.sh # Custom script
727
+
728
+ # 3. Create missing adapter skill
729
+ cat > .claude/skills/sqlspec-adapters/newadapter.md <<'EOF'
730
+ # NewAdapter Skill
731
+ [Content...]
732
+ EOF
733
+
734
+ # 4. Create missing guide
735
+ cat > docs/guides/adapters/newadapter.md <<'EOF'
736
+ # NewAdapter Guide
737
+ [Content...]
738
+ EOF
739
+
740
+ # 5. Validate
741
+ python -m py_compile .claude/skills/sqlspec-usage/examples/*.py
742
+ make docs # Verify docs build
743
+
744
+ # 6. Generate report
745
+ cat /tmp/bootstrap-report.md
746
+ ```
747
+
748
+ ## Maintenance Schedule
749
+
750
+ Recommended bootstrap frequency:
751
+
752
+ - **After adapter addition** - Immediate (create skill + guide)
753
+ - **After extension addition** - Immediate (create guide)
754
+ - **After AGENTS.md update** - Within 1 week (sync agents)
755
+ - **Quarterly** - Full validation and alignment check
756
+ - **Before major releases** - Complete bootstrap + validation