sqlspec 0.10.0__tar.gz → 0.11.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.

Potentially problematic release.


This version of sqlspec might be problematic. Click here for more details.

Files changed (161) hide show
  1. {sqlspec-0.10.0 → sqlspec-0.11.0}/.pre-commit-config.yaml +2 -2
  2. {sqlspec-0.10.0 → sqlspec-0.11.0}/CONTRIBUTING.rst +1 -1
  3. {sqlspec-0.10.0 → sqlspec-0.11.0}/PKG-INFO +5 -1
  4. {sqlspec-0.10.0 → sqlspec-0.11.0}/README.md +1 -0
  5. {sqlspec-0.10.0 → sqlspec-0.11.0}/pyproject.toml +20 -3
  6. {sqlspec-0.10.0 → sqlspec-0.11.0}/sqlspec/_typing.py +24 -32
  7. {sqlspec-0.10.0 → sqlspec-0.11.0}/sqlspec/adapters/adbc/config.py +1 -1
  8. sqlspec-0.11.0/sqlspec/adapters/adbc/driver.py +702 -0
  9. sqlspec-0.11.0/sqlspec/adapters/aiosqlite/driver.py +487 -0
  10. {sqlspec-0.10.0 → sqlspec-0.11.0}/sqlspec/adapters/asyncmy/driver.py +164 -68
  11. {sqlspec-0.10.0 → sqlspec-0.11.0}/sqlspec/adapters/asyncpg/config.py +3 -1
  12. {sqlspec-0.10.0 → sqlspec-0.11.0}/sqlspec/adapters/asyncpg/driver.py +190 -231
  13. {sqlspec-0.10.0 → sqlspec-0.11.0}/sqlspec/adapters/bigquery/driver.py +178 -169
  14. {sqlspec-0.10.0 → sqlspec-0.11.0}/sqlspec/adapters/duckdb/driver.py +175 -84
  15. {sqlspec-0.10.0 → sqlspec-0.11.0}/sqlspec/adapters/oracledb/driver.py +224 -90
  16. sqlspec-0.11.0/sqlspec/adapters/psqlpy/driver.py +567 -0
  17. {sqlspec-0.10.0 → sqlspec-0.11.0}/sqlspec/adapters/psycopg/driver.py +138 -184
  18. {sqlspec-0.10.0 → sqlspec-0.11.0}/sqlspec/adapters/sqlite/driver.py +153 -121
  19. {sqlspec-0.10.0 → sqlspec-0.11.0}/sqlspec/base.py +57 -45
  20. sqlspec-0.11.0/sqlspec/extensions/litestar/__init__.py +10 -0
  21. {sqlspec-0.10.0 → sqlspec-0.11.0}/sqlspec/extensions/litestar/config.py +22 -7
  22. sqlspec-0.11.0/sqlspec/extensions/litestar/handlers.py +271 -0
  23. {sqlspec-0.10.0 → sqlspec-0.11.0}/sqlspec/extensions/litestar/plugin.py +9 -8
  24. sqlspec-0.11.0/sqlspec/extensions/litestar/providers.py +521 -0
  25. sqlspec-0.11.0/sqlspec/filters.py +330 -0
  26. sqlspec-0.11.0/sqlspec/mixins.py +306 -0
  27. sqlspec-0.11.0/sqlspec/statement.py +378 -0
  28. {sqlspec-0.10.0 → sqlspec-0.11.0}/sqlspec/typing.py +18 -1
  29. sqlspec-0.11.0/sqlspec/utils/__init__.py +3 -0
  30. sqlspec-0.11.0/sqlspec/utils/singleton.py +35 -0
  31. {sqlspec-0.10.0 → sqlspec-0.11.0}/sqlspec/utils/sync_tools.py +90 -151
  32. sqlspec-0.11.0/sqlspec/utils/text.py +108 -0
  33. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/integration/test_adapters/test_adbc/test_driver_sqlite.py +0 -8
  34. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/integration/test_adapters/test_asyncpg/test_driver.py +120 -0
  35. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/integration/test_adapters/test_oracledb/test_driver_sync.py +12 -0
  36. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/integration/test_adapters/test_psqlpy/test_driver.py +128 -4
  37. sqlspec-0.11.0/tests/unit/test_statement.py +287 -0
  38. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/unit/test_utils/test_sync_tools.py +7 -40
  39. sqlspec-0.11.0/tests/unit/test_utils/test_text.py +57 -0
  40. {sqlspec-0.10.0 → sqlspec-0.11.0}/uv.lock +2174 -2124
  41. sqlspec-0.10.0/sqlspec/adapters/adbc/driver.py +0 -531
  42. sqlspec-0.10.0/sqlspec/adapters/aiosqlite/driver.py +0 -402
  43. sqlspec-0.10.0/sqlspec/adapters/psqlpy/driver.py +0 -487
  44. sqlspec-0.10.0/sqlspec/extensions/litestar/__init__.py +0 -19
  45. sqlspec-0.10.0/sqlspec/extensions/litestar/handlers.py +0 -214
  46. sqlspec-0.10.0/sqlspec/filters.py +0 -127
  47. sqlspec-0.10.0/sqlspec/mixins.py +0 -156
  48. sqlspec-0.10.0/sqlspec/statement.py +0 -373
  49. sqlspec-0.10.0/sqlspec/utils/__init__.py +0 -3
  50. sqlspec-0.10.0/sqlspec/utils/text.py +0 -45
  51. sqlspec-0.10.0/tests/unit/test_utils/test_text.py +0 -16
  52. {sqlspec-0.10.0 → sqlspec-0.11.0}/.gitignore +0 -0
  53. {sqlspec-0.10.0 → sqlspec-0.11.0}/LICENSE +0 -0
  54. {sqlspec-0.10.0 → sqlspec-0.11.0}/Makefile +0 -0
  55. {sqlspec-0.10.0 → sqlspec-0.11.0}/NOTICE +0 -0
  56. {sqlspec-0.10.0 → sqlspec-0.11.0}/sqlspec/__init__.py +0 -0
  57. {sqlspec-0.10.0 → sqlspec-0.11.0}/sqlspec/__metadata__.py +0 -0
  58. {sqlspec-0.10.0 → sqlspec-0.11.0}/sqlspec/_serialization.py +0 -0
  59. {sqlspec-0.10.0 → sqlspec-0.11.0}/sqlspec/adapters/__init__.py +0 -0
  60. {sqlspec-0.10.0 → sqlspec-0.11.0}/sqlspec/adapters/adbc/__init__.py +0 -0
  61. {sqlspec-0.10.0 → sqlspec-0.11.0}/sqlspec/adapters/aiosqlite/__init__.py +0 -0
  62. {sqlspec-0.10.0 → sqlspec-0.11.0}/sqlspec/adapters/aiosqlite/config.py +0 -0
  63. {sqlspec-0.10.0 → sqlspec-0.11.0}/sqlspec/adapters/asyncmy/__init__.py +0 -0
  64. {sqlspec-0.10.0 → sqlspec-0.11.0}/sqlspec/adapters/asyncmy/config.py +0 -0
  65. {sqlspec-0.10.0 → sqlspec-0.11.0}/sqlspec/adapters/asyncpg/__init__.py +0 -0
  66. {sqlspec-0.10.0 → sqlspec-0.11.0}/sqlspec/adapters/bigquery/__init__.py +0 -0
  67. {sqlspec-0.10.0 → sqlspec-0.11.0}/sqlspec/adapters/bigquery/config/__init__.py +0 -0
  68. {sqlspec-0.10.0 → sqlspec-0.11.0}/sqlspec/adapters/bigquery/config/_common.py +0 -0
  69. {sqlspec-0.10.0 → sqlspec-0.11.0}/sqlspec/adapters/bigquery/config/_sync.py +0 -0
  70. {sqlspec-0.10.0 → sqlspec-0.11.0}/sqlspec/adapters/duckdb/__init__.py +0 -0
  71. {sqlspec-0.10.0 → sqlspec-0.11.0}/sqlspec/adapters/duckdb/config.py +0 -0
  72. {sqlspec-0.10.0 → sqlspec-0.11.0}/sqlspec/adapters/oracledb/__init__.py +0 -0
  73. {sqlspec-0.10.0 → sqlspec-0.11.0}/sqlspec/adapters/oracledb/config/__init__.py +0 -0
  74. {sqlspec-0.10.0 → sqlspec-0.11.0}/sqlspec/adapters/oracledb/config/_asyncio.py +0 -0
  75. {sqlspec-0.10.0 → sqlspec-0.11.0}/sqlspec/adapters/oracledb/config/_common.py +0 -0
  76. {sqlspec-0.10.0 → sqlspec-0.11.0}/sqlspec/adapters/oracledb/config/_sync.py +0 -0
  77. {sqlspec-0.10.0 → sqlspec-0.11.0}/sqlspec/adapters/psqlpy/__init__.py +0 -0
  78. {sqlspec-0.10.0 → sqlspec-0.11.0}/sqlspec/adapters/psqlpy/config.py +0 -0
  79. {sqlspec-0.10.0 → sqlspec-0.11.0}/sqlspec/adapters/psycopg/__init__.py +0 -0
  80. {sqlspec-0.10.0 → sqlspec-0.11.0}/sqlspec/adapters/psycopg/config/__init__.py +0 -0
  81. {sqlspec-0.10.0 → sqlspec-0.11.0}/sqlspec/adapters/psycopg/config/_async.py +0 -0
  82. {sqlspec-0.10.0 → sqlspec-0.11.0}/sqlspec/adapters/psycopg/config/_common.py +0 -0
  83. {sqlspec-0.10.0 → sqlspec-0.11.0}/sqlspec/adapters/psycopg/config/_sync.py +0 -0
  84. {sqlspec-0.10.0 → sqlspec-0.11.0}/sqlspec/adapters/sqlite/__init__.py +0 -0
  85. {sqlspec-0.10.0 → sqlspec-0.11.0}/sqlspec/adapters/sqlite/config.py +0 -0
  86. {sqlspec-0.10.0 → sqlspec-0.11.0}/sqlspec/exceptions.py +0 -0
  87. {sqlspec-0.10.0 → sqlspec-0.11.0}/sqlspec/extensions/__init__.py +0 -0
  88. {sqlspec-0.10.0 → sqlspec-0.11.0}/sqlspec/extensions/litestar/_utils.py +0 -0
  89. {sqlspec-0.10.0 → sqlspec-0.11.0}/sqlspec/py.typed +0 -0
  90. {sqlspec-0.10.0 → sqlspec-0.11.0}/sqlspec/utils/deprecation.py +0 -0
  91. {sqlspec-0.10.0 → sqlspec-0.11.0}/sqlspec/utils/fixtures.py +0 -0
  92. {sqlspec-0.10.0 → sqlspec-0.11.0}/sqlspec/utils/module_loader.py +0 -0
  93. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/__init__.py +0 -0
  94. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/conftest.py +0 -0
  95. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/fixtures/__init__.py +0 -0
  96. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/fixtures/example_usage.py +0 -0
  97. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/fixtures/sql_utils.py +0 -0
  98. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/integration/__init__.py +0 -0
  99. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/integration/test_adapters/__init__.py +0 -0
  100. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/integration/test_adapters/test_adbc/__init__.py +0 -0
  101. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/integration/test_adapters/test_adbc/conftest.py +0 -0
  102. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/integration/test_adapters/test_adbc/test_connection.py +0 -0
  103. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/integration/test_adapters/test_adbc/test_driver_bigquery.py +0 -0
  104. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/integration/test_adapters/test_adbc/test_driver_duckdb.py +0 -0
  105. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/integration/test_adapters/test_adbc/test_driver_postgres.py +0 -0
  106. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/integration/test_adapters/test_aiosqlite/__init__.py +0 -0
  107. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/integration/test_adapters/test_aiosqlite/test_connection.py +0 -0
  108. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/integration/test_adapters/test_aiosqlite/test_driver.py +0 -0
  109. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/integration/test_adapters/test_asyncmy/__init__.py +0 -0
  110. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/integration/test_adapters/test_asyncmy/test_connection.py +0 -0
  111. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/integration/test_adapters/test_asyncmy/test_driver.py +0 -0
  112. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/integration/test_adapters/test_asyncpg/__init__.py +0 -0
  113. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/integration/test_adapters/test_asyncpg/test_connection.py +0 -0
  114. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/integration/test_adapters/test_bigquery/__init__.py +0 -0
  115. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/integration/test_adapters/test_bigquery/conftest.py +0 -0
  116. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/integration/test_adapters/test_bigquery/test_connection.py +0 -0
  117. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/integration/test_adapters/test_bigquery/test_driver.py +0 -0
  118. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/integration/test_adapters/test_duckdb/__init__.py +0 -0
  119. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/integration/test_adapters/test_duckdb/test_connection.py +0 -0
  120. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/integration/test_adapters/test_duckdb/test_driver.py +0 -0
  121. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/integration/test_adapters/test_oracledb/__init__.py +0 -0
  122. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/integration/test_adapters/test_oracledb/test_connection.py +0 -0
  123. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/integration/test_adapters/test_oracledb/test_driver_async.py +0 -0
  124. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/integration/test_adapters/test_psqlpy/__init__.py +0 -0
  125. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/integration/test_adapters/test_psqlpy/test_connection.py +0 -0
  126. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/integration/test_adapters/test_psycopg/__init__.py +0 -0
  127. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/integration/test_adapters/test_psycopg/test_connection.py +0 -0
  128. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/integration/test_adapters/test_psycopg/test_driver.py +0 -0
  129. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/integration/test_adapters/test_sqlite/__init__.py +0 -0
  130. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/integration/test_adapters/test_sqlite/test_connection.py +0 -0
  131. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/integration/test_adapters/test_sqlite/test_driver.py +0 -0
  132. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/unit/__init__.py +0 -0
  133. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/unit/test_adapters/__init__.py +0 -0
  134. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/unit/test_adapters/test_adbc/__init__.py +0 -0
  135. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/unit/test_adapters/test_adbc/test_config.py +0 -0
  136. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/unit/test_adapters/test_aiosqlite/__init__.py +0 -0
  137. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/unit/test_adapters/test_aiosqlite/test_config.py +0 -0
  138. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/unit/test_adapters/test_asyncmy/__init__.py +0 -0
  139. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/unit/test_adapters/test_asyncmy/test_config.py +0 -0
  140. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/unit/test_adapters/test_asyncpg/__init__.py +0 -0
  141. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/unit/test_adapters/test_asyncpg/test_config.py +0 -0
  142. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/unit/test_adapters/test_duckdb/__init__.py +0 -0
  143. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/unit/test_adapters/test_duckdb/test_config.py +0 -0
  144. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/unit/test_adapters/test_oracledb/__init__.py +0 -0
  145. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/unit/test_adapters/test_oracledb/test_async_config.py +0 -0
  146. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/unit/test_adapters/test_oracledb/test_sync_config.py +0 -0
  147. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/unit/test_adapters/test_psycopg/__init__.py +0 -0
  148. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/unit/test_adapters/test_psycopg/test_async_config.py +0 -0
  149. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/unit/test_adapters/test_psycopg/test_sync_config.py +0 -0
  150. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/unit/test_adapters/test_sqlite/__init__.py +0 -0
  151. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/unit/test_adapters/test_sqlite/test_config.py +0 -0
  152. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/unit/test_base.py +0 -0
  153. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/unit/test_typing.py +0 -0
  154. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/unit/test_utils/__init__.py +0 -0
  155. {sqlspec-0.10.0 → sqlspec-0.11.0}/tests/unit/test_utils/test_module_loader.py +0 -0
  156. {sqlspec-0.10.0 → sqlspec-0.11.0}/tools/__init__.py +0 -0
  157. {sqlspec-0.10.0 → sqlspec-0.11.0}/tools/build_docs.py +0 -0
  158. {sqlspec-0.10.0 → sqlspec-0.11.0}/tools/pypi_readme.py +0 -0
  159. {sqlspec-0.10.0 → sqlspec-0.11.0}/tools/sphinx_ext/__init__.py +0 -0
  160. {sqlspec-0.10.0 → sqlspec-0.11.0}/tools/sphinx_ext/changelog.py +0 -0
  161. {sqlspec-0.10.0 → sqlspec-0.11.0}/tools/sphinx_ext/missing_references.py +0 -0
@@ -2,7 +2,7 @@ default_language_version:
2
2
  python: "3"
3
3
  repos:
4
4
  - repo: https://github.com/compilerla/conventional-pre-commit
5
- rev: v4.0.0
5
+ rev: v4.2.0
6
6
  hooks:
7
7
  - id: conventional-pre-commit
8
8
  stages: [commit-msg]
@@ -17,7 +17,7 @@ repos:
17
17
  - id: mixed-line-ending
18
18
  - id: trailing-whitespace
19
19
  - repo: https://github.com/charliermarsh/ruff-pre-commit
20
- rev: "v0.11.6"
20
+ rev: "v0.11.9"
21
21
  hooks:
22
22
  - id: ruff
23
23
  args: ["--fix"]
@@ -18,7 +18,7 @@ Workflow
18
18
  2. Clone your fork locally with git
19
19
  3. `Set up the environment <#setting-up-the-environment>`_
20
20
  4. Make your changes
21
- 5. Run ``male lint`` to run linters and formatters. This step is optional and will be executed
21
+ 5. Run ``make lint`` to run linters and formatters. This step is optional and will be executed
22
22
  automatically by git before you make a commit, but you may want to run it manually in order to apply fixes
23
23
  6. Commit your changes to git
24
24
  7. Push the changes to your fork
@@ -1,7 +1,10 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: sqlspec
3
- Version: 0.10.0
3
+ Version: 0.11.0
4
4
  Summary: SQL Experiments in Python
5
+ Project-URL: Discord, https://discord.gg/litestar
6
+ Project-URL: Issue, https://github.com/litestar-org/sqlspec/issues/
7
+ Project-URL: Source, https://github.com/litestar-org/sqlspec
5
8
  Author-email: Cody Fincher <cody@litestar.dev>
6
9
  Maintainer-email: Litestar Developers <hello@litestar.dev>
7
10
  License-Expression: MIT
@@ -258,6 +261,7 @@ This list is not final. If you have a driver you'd like to see added, please ope
258
261
  | [`spanner`](https://googleapis.dev/python/spanner/latest/index.html) | Spanner | Sync | 🗓️ |
259
262
  | [`sqlserver`](https://docs.microsoft.com/en-us/sql/connect/python/pyodbc/python-sql-driver-for-pyodbc?view=sql-server-ver16) | SQL Server | Sync | 🗓️ |
260
263
  | [`mysql`](https://dev.mysql.com/doc/connector-python/en/connector-python-api-mysql-connector-python.html) | MySQL | Sync | 🗓️ |
264
+ | [`asyncmy`](https://github.com/long2ice/asyncmy) | MySQL | Async | ✅ |
261
265
  | [`snowflake`](https://docs.snowflake.com) | Snowflake | Sync | 🗓️ |
262
266
 
263
267
  ## Proposed Project Structure
@@ -196,6 +196,7 @@ This list is not final. If you have a driver you'd like to see added, please ope
196
196
  | [`spanner`](https://googleapis.dev/python/spanner/latest/index.html) | Spanner | Sync | 🗓️ |
197
197
  | [`sqlserver`](https://docs.microsoft.com/en-us/sql/connect/python/pyodbc/python-sql-driver-for-pyodbc?view=sql-server-ver16) | SQL Server | Sync | 🗓️ |
198
198
  | [`mysql`](https://dev.mysql.com/doc/connector-python/en/connector-python-api-mysql-connector-python.html) | MySQL | Sync | 🗓️ |
199
+ | [`asyncmy`](https://github.com/long2ice/asyncmy) | MySQL | Async | ✅ |
199
200
  | [`snowflake`](https://docs.snowflake.com) | Snowflake | Sync | 🗓️ |
200
201
 
201
202
  ## Proposed Project Structure
@@ -7,7 +7,12 @@ maintainers = [{ name = "Litestar Developers", email = "hello@litestar.dev" }]
7
7
  name = "sqlspec"
8
8
  readme = "README.md"
9
9
  requires-python = ">=3.9, <4.0"
10
- version = "0.10.0"
10
+ version = "0.11.0"
11
+
12
+ [project.urls]
13
+ Discord = "https://discord.gg/litestar"
14
+ Issue = "https://github.com/litestar-org/sqlspec/issues/"
15
+ Source = "https://github.com/litestar-org/sqlspec"
11
16
 
12
17
  [project.optional-dependencies]
13
18
  adbc = ["adbc_driver_manager", "pyarrow"]
@@ -109,7 +114,7 @@ packages = ["sqlspec"]
109
114
  allow_dirty = true
110
115
  commit = false
111
116
  commit_args = "--no-verify"
112
- current_version = "0.10.0"
117
+ current_version = "0.10.1"
113
118
  ignore_missing_files = false
114
119
  ignore_missing_version = false
115
120
  message = "chore(release): bump to v{new_version}"
@@ -249,6 +254,10 @@ module = [
249
254
  "pyarrow.*",
250
255
  ]
251
256
 
257
+ [[tool.mypy.overrides]]
258
+ disable_error_code = "ignore-without-code"
259
+ module = "sqlspec.extensions.litestar.providers"
260
+
252
261
  [tool.pyright]
253
262
  disableBytesTypePromotions = true
254
263
  exclude = ["**/node_modules", "**/__pycache__", ".venv", "tools", "docs"]
@@ -260,6 +269,8 @@ reportPrivateUsage = false
260
269
  reportUnknownArgumentType = false
261
270
  reportUnknownMemberType = false
262
271
  reportUnknownVariableType = false
272
+ reportUnnecessaryComparison = false
273
+ reportUnnecessaryIsInstance = false
263
274
  reportUnnecessaryTypeIgnoreComments = true
264
275
  root = "."
265
276
 
@@ -318,7 +329,13 @@ select = ["ALL"]
318
329
  convention = "google"
319
330
 
320
331
  [tool.ruff.lint.mccabe]
321
- max-complexity = 18
332
+ max-complexity = 25
333
+
334
+ [tool.ruff.lint.pylint]
335
+ max-bool-expr = 10
336
+ max-branches = 20
337
+ max-locals = 20
338
+ max-returns = 15
322
339
 
323
340
  [tool.ruff.lint.pep8-naming]
324
341
  classmethod-decorators = ["classmethod"]
@@ -6,15 +6,7 @@ This is used to ensure compatibility when one or more of the libraries are insta
6
6
 
7
7
  from collections.abc import Iterable, Mapping
8
8
  from enum import Enum
9
- from typing import (
10
- Any,
11
- ClassVar,
12
- Final,
13
- Protocol,
14
- Union,
15
- cast,
16
- runtime_checkable,
17
- )
9
+ from typing import Any, ClassVar, Final, Optional, Protocol, Union, cast, runtime_checkable
18
10
 
19
11
  from typing_extensions import Literal, TypeVar, dataclass_transform
20
12
 
@@ -50,9 +42,9 @@ except ImportError:
50
42
  self,
51
43
  /,
52
44
  *,
53
- include: "Optional[Any]" = None,
54
- exclude: "Optional[Any]" = None,
55
- context: "Optional[Any]" = None,
45
+ include: Optional[Any] = None,
46
+ exclude: Optional[Any] = None,
47
+ context: Optional[Any] = None,
56
48
  by_alias: bool = False,
57
49
  exclude_unset: bool = False,
58
50
  exclude_defaults: bool = False,
@@ -68,9 +60,9 @@ except ImportError:
68
60
  self,
69
61
  /,
70
62
  *,
71
- include: "Optional[Any]" = None,
72
- exclude: "Optional[Any]" = None,
73
- context: "Optional[Any]" = None,
63
+ include: Optional[Any] = None,
64
+ exclude: Optional[Any] = None,
65
+ context: Optional[Any] = None,
74
66
  by_alias: bool = False,
75
67
  exclude_unset: bool = False,
76
68
  exclude_defaults: bool = False,
@@ -90,9 +82,9 @@ except ImportError:
90
82
  self,
91
83
  type: Any, # noqa: A002
92
84
  *,
93
- config: "Optional[Any]" = None,
85
+ config: Optional[Any] = None,
94
86
  _parent_depth: int = 2,
95
- module: "Optional[str]" = None,
87
+ module: Optional[str] = None,
96
88
  ) -> None:
97
89
  """Init"""
98
90
 
@@ -101,10 +93,10 @@ except ImportError:
101
93
  object: Any,
102
94
  /,
103
95
  *,
104
- strict: "Optional[bool]" = None,
105
- from_attributes: "Optional[bool]" = None,
106
- context: "Optional[dict[str, Any]]" = None,
107
- experimental_allow_partial: "Union[bool, Literal['off', 'on', 'trailing-strings']]" = False,
96
+ strict: Optional[bool] = None,
97
+ from_attributes: Optional[bool] = None,
98
+ context: Optional[dict[str, Any]] = None,
99
+ experimental_allow_partial: Union[bool, Literal["off", "on", "trailing-strings"]] = False,
108
100
  ) -> "T_co":
109
101
  """Stub"""
110
102
  return cast("T_co", object)
@@ -136,16 +128,16 @@ except ImportError:
136
128
  class Struct(Protocol): # type: ignore[no-redef]
137
129
  """Placeholder Implementation"""
138
130
 
139
- __struct_fields__: "ClassVar[tuple[str, ...]]"
131
+ __struct_fields__: ClassVar[tuple[str, ...]]
140
132
 
141
133
  def convert( # type: ignore[no-redef]
142
134
  obj: Any,
143
- type: "Union[Any, type[T]]", # noqa: A002
135
+ type: Union[Any, type[T]], # noqa: A002
144
136
  *,
145
137
  strict: bool = True,
146
138
  from_attributes: bool = False,
147
- dec_hook: "Optional[Callable[[type, Any], Any]]" = None,
148
- builtin_types: "Union[Iterable[type], None]" = None,
139
+ dec_hook: Optional[Callable[[type, Any], Any]] = None,
140
+ builtin_types: Optional[Iterable[type]] = None,
149
141
  str_keys: bool = False,
150
142
  ) -> "Union[T, Any]":
151
143
  """Placeholder implementation"""
@@ -172,10 +164,10 @@ except ImportError:
172
164
  def __init__(self, backend: Any, data_as_builtins: Any) -> None:
173
165
  """Placeholder init"""
174
166
 
175
- def create_instance(self, **kwargs: Any) -> "T":
167
+ def create_instance(self, **kwargs: Any) -> T:
176
168
  return cast("T", kwargs)
177
169
 
178
- def update_instance(self, instance: "T", **kwargs: Any) -> "T":
170
+ def update_instance(self, instance: T, **kwargs: Any) -> T:
179
171
  """Placeholder implementation"""
180
172
  return cast("T", kwargs)
181
173
 
@@ -214,15 +206,15 @@ except ImportError:
214
206
  def from_arrays(
215
207
  self,
216
208
  arrays: list[Any],
217
- names: "Optional[list[str]]" = None,
218
- schema: "Optional[Any]" = None,
219
- metadata: "Optional[Mapping[str, Any]]" = None,
209
+ names: Optional[list[str]] = None,
210
+ schema: Optional[Any] = None,
211
+ metadata: Optional[Mapping[str, Any]] = None,
220
212
  ) -> Any: ...
221
213
  def from_pydict(
222
214
  self,
223
215
  mapping: dict[str, Any],
224
- schema: "Optional[Any]" = None,
225
- metadata: "Optional[Mapping[str, Any]]" = None,
216
+ schema: Optional[Any] = None,
217
+ metadata: Optional[Mapping[str, Any]] = None,
226
218
  ) -> Any: ...
227
219
  def from_batches(self, batches: Iterable[Any], schema: Optional[Any] = None) -> Any: ...
228
220
 
@@ -38,7 +38,7 @@ class AdbcConfig(NoPoolSyncConfig["AdbcConnection", "AdbcDriver"]):
38
38
  pool_instance: None = field(init=False, default=None, hash=False)
39
39
  """No connection pool is used for ADBC connections"""
40
40
 
41
- def _set_adbc(self) -> str: # noqa: PLR0912
41
+ def _set_adbc(self) -> str:
42
42
  """Identify the driver type based on the URI (if provided) or preset driver name.
43
43
 
44
44
  Raises: