sqlspec 0.18.0__py3-none-any.whl → 0.20.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


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

Files changed (64) hide show
  1. sqlspec/adapters/adbc/driver.py +192 -28
  2. sqlspec/adapters/asyncmy/driver.py +72 -15
  3. sqlspec/adapters/asyncpg/config.py +23 -3
  4. sqlspec/adapters/asyncpg/driver.py +30 -14
  5. sqlspec/adapters/bigquery/driver.py +79 -9
  6. sqlspec/adapters/duckdb/driver.py +39 -56
  7. sqlspec/adapters/oracledb/driver.py +99 -52
  8. sqlspec/adapters/psqlpy/driver.py +89 -31
  9. sqlspec/adapters/psycopg/driver.py +11 -23
  10. sqlspec/adapters/sqlite/driver.py +77 -8
  11. sqlspec/base.py +29 -25
  12. sqlspec/builder/__init__.py +1 -1
  13. sqlspec/builder/_base.py +4 -5
  14. sqlspec/builder/_column.py +3 -3
  15. sqlspec/builder/_ddl.py +5 -1
  16. sqlspec/builder/_delete.py +5 -6
  17. sqlspec/builder/_insert.py +6 -7
  18. sqlspec/builder/_merge.py +5 -5
  19. sqlspec/builder/_parsing_utils.py +3 -3
  20. sqlspec/builder/_select.py +6 -5
  21. sqlspec/builder/_update.py +4 -5
  22. sqlspec/builder/mixins/_cte_and_set_ops.py +5 -1
  23. sqlspec/builder/mixins/_delete_operations.py +5 -1
  24. sqlspec/builder/mixins/_insert_operations.py +5 -1
  25. sqlspec/builder/mixins/_join_operations.py +5 -0
  26. sqlspec/builder/mixins/_merge_operations.py +5 -1
  27. sqlspec/builder/mixins/_order_limit_operations.py +5 -1
  28. sqlspec/builder/mixins/_pivot_operations.py +4 -1
  29. sqlspec/builder/mixins/_select_operations.py +5 -1
  30. sqlspec/builder/mixins/_update_operations.py +5 -1
  31. sqlspec/builder/mixins/_where_clause.py +5 -1
  32. sqlspec/cli.py +281 -33
  33. sqlspec/config.py +160 -10
  34. sqlspec/core/compiler.py +11 -3
  35. sqlspec/core/filters.py +30 -9
  36. sqlspec/core/parameters.py +67 -67
  37. sqlspec/core/result.py +62 -31
  38. sqlspec/core/splitter.py +160 -34
  39. sqlspec/core/statement.py +95 -14
  40. sqlspec/driver/_common.py +12 -3
  41. sqlspec/driver/mixins/_result_tools.py +21 -4
  42. sqlspec/driver/mixins/_sql_translator.py +45 -7
  43. sqlspec/extensions/aiosql/adapter.py +1 -1
  44. sqlspec/extensions/litestar/_utils.py +1 -1
  45. sqlspec/extensions/litestar/handlers.py +21 -0
  46. sqlspec/extensions/litestar/plugin.py +15 -8
  47. sqlspec/loader.py +12 -12
  48. sqlspec/migrations/loaders.py +5 -2
  49. sqlspec/migrations/utils.py +2 -2
  50. sqlspec/storage/backends/obstore.py +1 -3
  51. sqlspec/storage/registry.py +1 -1
  52. sqlspec/utils/__init__.py +7 -0
  53. sqlspec/utils/deprecation.py +6 -0
  54. sqlspec/utils/fixtures.py +239 -30
  55. sqlspec/utils/module_loader.py +5 -1
  56. sqlspec/utils/serializers.py +6 -0
  57. sqlspec/utils/singleton.py +6 -0
  58. sqlspec/utils/sync_tools.py +10 -1
  59. {sqlspec-0.18.0.dist-info → sqlspec-0.20.0.dist-info}/METADATA +1 -1
  60. {sqlspec-0.18.0.dist-info → sqlspec-0.20.0.dist-info}/RECORD +64 -64
  61. {sqlspec-0.18.0.dist-info → sqlspec-0.20.0.dist-info}/WHEEL +0 -0
  62. {sqlspec-0.18.0.dist-info → sqlspec-0.20.0.dist-info}/entry_points.txt +0 -0
  63. {sqlspec-0.18.0.dist-info → sqlspec-0.20.0.dist-info}/licenses/LICENSE +0 -0
  64. {sqlspec-0.18.0.dist-info → sqlspec-0.20.0.dist-info}/licenses/NOTICE +0 -0
@@ -1,3 +1,9 @@
1
+ """JSON serialization utilities for SQLSpec.
2
+
3
+ Re-exports common JSON encoding and decoding functions from the core
4
+ serialization module for convenient access.
5
+ """
6
+
1
7
  from sqlspec._serialization import decode_json as from_json
2
8
  from sqlspec._serialization import encode_json as to_json
3
9
 
@@ -1,3 +1,9 @@
1
+ """Singleton pattern implementation for SQLSpec.
2
+
3
+ Provides a thread-safe metaclass for implementing the singleton pattern.
4
+ Used for creating classes that should have only one instance per class type.
5
+ """
6
+
1
7
  import threading
2
8
  from typing import Any, TypeVar
3
9
 
@@ -33,6 +33,11 @@ class CapacityLimiter:
33
33
  """Limits the number of concurrent operations using a semaphore."""
34
34
 
35
35
  def __init__(self, total_tokens: int) -> None:
36
+ """Initialize the capacity limiter.
37
+
38
+ Args:
39
+ total_tokens: Maximum number of concurrent operations allowed
40
+ """
36
41
  self._total_tokens = total_tokens
37
42
  self._semaphore_instance: Optional[asyncio.Semaphore] = None
38
43
 
@@ -44,13 +49,16 @@ class CapacityLimiter:
44
49
  return self._semaphore_instance
45
50
 
46
51
  async def acquire(self) -> None:
52
+ """Acquire a token from the semaphore."""
47
53
  await self._semaphore.acquire()
48
54
 
49
55
  def release(self) -> None:
56
+ """Release a token back to the semaphore."""
50
57
  self._semaphore.release()
51
58
 
52
59
  @property
53
60
  def total_tokens(self) -> int:
61
+ """Get the total number of tokens available."""
54
62
  return self._total_tokens
55
63
 
56
64
  @total_tokens.setter
@@ -59,6 +67,7 @@ class CapacityLimiter:
59
67
  self._semaphore_instance = None
60
68
 
61
69
  async def __aenter__(self) -> None:
70
+ """Async context manager entry."""
62
71
  await self.acquire()
63
72
 
64
73
  async def __aexit__(
@@ -67,6 +76,7 @@ class CapacityLimiter:
67
76
  exc_val: "Optional[BaseException]",
68
77
  exc_tb: "Optional[TracebackType]",
69
78
  ) -> None:
79
+ """Async context manager exit."""
70
80
  self.release()
71
81
 
72
82
 
@@ -225,7 +235,6 @@ def with_ensure_async_(
225
235
  Returns:
226
236
  An async context manager that runs the original context manager.
227
237
  """
228
-
229
238
  if isinstance(obj, AbstractContextManager):
230
239
  return cast("AbstractAsyncContextManager[T]", _ContextManagerWrapper(obj))
231
240
  return obj
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: sqlspec
3
- Version: 0.18.0
3
+ Version: 0.20.0
4
4
  Summary: SQL Experiments in Python
5
5
  Project-URL: Discord, https://discord.gg/litestar
6
6
  Project-URL: Issue, https://github.com/litestar-org/sqlspec/issues/
@@ -4,11 +4,11 @@ sqlspec/__metadata__.py,sha256=IUw6MCTy1oeUJ1jAVYbuJLkOWbiAWorZ5W-E-SAD9N4,395
4
4
  sqlspec/_serialization.py,sha256=6U5-smk2h2yl0i6am2prtOLJTdu4NJQdcLlSfSUMaUQ,2590
5
5
  sqlspec/_sql.py,sha256=j9WljOgCme4jTfL6NegEWOhK-Rr3JEmhtbneh8ZN1bQ,45221
6
6
  sqlspec/_typing.py,sha256=jv-7QHGLrJLfnP86bR-Xcmj3PDoddNZEKDz_vYRBiAU,22684
7
- sqlspec/base.py,sha256=-5hxBpjEvbn30aXksbErkw3lH0Q3-u7h6D2JB9BSAmU,25429
8
- sqlspec/cli.py,sha256=3ZxPwl4neNWyrAkM9J9ccC_gaFigDJbhuZfx15JVE7E,9903
9
- sqlspec/config.py,sha256=QJMR46YC-6Kd4GUnqQm0s679Br4R-QEEruuKpJxHEec,15969
7
+ sqlspec/base.py,sha256=p3qX3nq1qPuLz6AEVizbZ4xpWhMoDXNc7zkPK9ecJac,25467
8
+ sqlspec/cli.py,sha256=Fe5Wbnrb_fkE9qm4gbBEXx3d0Q7VR-S-1t76ouAx2mg,20120
9
+ sqlspec/config.py,sha256=PQKKLXst_uMvqvTSQib6qMZfJd-g3Kqqlp7XLn9kA8A,21640
10
10
  sqlspec/exceptions.py,sha256=zBnzQOfYAgqX04GoaC9Io6ardzinldkEuZ3YtR5vr9U,6071
11
- sqlspec/loader.py,sha256=HDfMZDj7l9aLAxeZR2Rv-HC-dWah4CPkwZ6HKQ7yP-Y,23398
11
+ sqlspec/loader.py,sha256=R_lcI8Jg3Jh9jUDFvQyKbBzx20vKH50BKYt8gvTKq7c,23400
12
12
  sqlspec/protocols.py,sha256=Of6uJyxvawExCEyR3u7jbxOckUcwG0HHOEXmfHyev40,13106
13
13
  sqlspec/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
14
14
  sqlspec/typing.py,sha256=yj8D8O-pkfUVZDfVHEgQaB95-5alwgQbp_sqNJOVhvQ,6301
@@ -16,7 +16,7 @@ sqlspec/adapters/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,
16
16
  sqlspec/adapters/adbc/__init__.py,sha256=CqBaEahvHbQ5NxmBJuuCtZ8v5wuaPgbqSSe9WUhglWY,336
17
17
  sqlspec/adapters/adbc/_types.py,sha256=htTZ20qVo6Iod_ooUTLGd0xAL8AUYA4qeOexTaLQG3Q,351
18
18
  sqlspec/adapters/adbc/config.py,sha256=gekx9tzOA5vpcMWqczX5B5xKMbXCEnyYWavrrYll7j0,13583
19
- sqlspec/adapters/adbc/driver.py,sha256=E36PI499cMsi-CGeRNe21lkiIwZKNSHGusmxLxy6mIQ,18809
19
+ sqlspec/adapters/adbc/driver.py,sha256=mbkWuxQdXraEH6nNJcjd4HOdCnNW7VWcYMtS7JVmKBo,24085
20
20
  sqlspec/adapters/aiosqlite/__init__.py,sha256=rgooFeHm7IsnC9fOnRQwMvbJdgkTvhnNTYphayVz9q8,869
21
21
  sqlspec/adapters/aiosqlite/_types.py,sha256=M8VqaW6iCigfExhdJM2yPAN09Ue2yBoBL59-QXGBObo,355
22
22
  sqlspec/adapters/aiosqlite/config.py,sha256=MmCl_0Be89OijlcY1EUgA87A1NNtF1CHjl6p_R6Dfks,8112
@@ -25,114 +25,114 @@ sqlspec/adapters/aiosqlite/pool.py,sha256=cuzkXA2hMMk16aX28aNRaTmLDmqlepka9QhcWs
25
25
  sqlspec/adapters/asyncmy/__init__.py,sha256=wBgak4MA3ySaGQHUxrnv3HdSVQKKRWf1_DmENL0LkWs,531
26
26
  sqlspec/adapters/asyncmy/_types.py,sha256=WbwREzJkLYmqd4c7A7cu04WaD5g7-n35ZETHZvbP1Z8,250
27
27
  sqlspec/adapters/asyncmy/config.py,sha256=DHk-MTkBcGPPmYI4RMJbUWWKbcu1ZaoG_8LS0aZR0P8,6603
28
- sqlspec/adapters/asyncmy/driver.py,sha256=DitgufSL3N4LlDOq_UB741f4czPPPTJrusLbuiSjagY,9911
28
+ sqlspec/adapters/asyncmy/driver.py,sha256=M7CSA1NL7ZIRmOCZ3Qra6g8TXb6hptuTMXzblnEj3mA,11545
29
29
  sqlspec/adapters/asyncpg/__init__.py,sha256=h3lg3pLBLrS9ABBt5yKFKhGL69RpOlASYSqVCuAuURY,567
30
30
  sqlspec/adapters/asyncpg/_types.py,sha256=p65WrqfUl2cx5Md759_aV8m_gHP-PyCzNk48bLhDQkc,425
31
- sqlspec/adapters/asyncpg/config.py,sha256=WrP-PZeWbumpKb8VrJYD-8hpBkjrNG1PQ5kfR2vFWo4,8867
32
- sqlspec/adapters/asyncpg/driver.py,sha256=ZEuCeyrpaIQme0cF-hupGlfxbkN9ReZBjflpgbEJEw8,11073
31
+ sqlspec/adapters/asyncpg/config.py,sha256=LKBO_5LP3SJjR1blp7JBq6QyfaZ_H1IeiLzCGtxsxs8,9661
32
+ sqlspec/adapters/asyncpg/driver.py,sha256=IsYZ9fTWNdN2EIcHtedL3Y5zCH2-sgtcJLA0aCc-CAw,11641
33
33
  sqlspec/adapters/bigquery/__init__.py,sha256=1nzkWubO4ZObuK27QoeGfS05ed5v02NU4GaXrvqjlw0,504
34
34
  sqlspec/adapters/bigquery/_types.py,sha256=gECmbiSmZmnR-xJpmznhnva4SbhhdcYQ09jBdqMAmOs,255
35
35
  sqlspec/adapters/bigquery/config.py,sha256=Dp0LKg9p88n4C4WQMaf9_A7YicIJT9DgcCXci46NTFk,9434
36
- sqlspec/adapters/bigquery/driver.py,sha256=gAQWd8R3NaqYzbPkNr59kxKVKW8Yz4KmU7BjUJXesoo,17745
36
+ sqlspec/adapters/bigquery/driver.py,sha256=ymcG3k_EJ_dmhx6lYWB4MOgF5ng2Utux-DWy3TMkl4Q,19725
37
37
  sqlspec/adapters/duckdb/__init__.py,sha256=c5GCYxhTFhvB8fUTt_d-dipaQfM8X5kv4GsU47SwJ6E,693
38
38
  sqlspec/adapters/duckdb/_types.py,sha256=4p5nuD1yNs0fmQ5sGxKFx2ru6jUCPrpsYgqfh-uZHM8,270
39
39
  sqlspec/adapters/duckdb/config.py,sha256=7CWXpKWX1NrzO1sORVFfD3TzdVxj62MbujnsBBCGSHQ,10037
40
- sqlspec/adapters/duckdb/driver.py,sha256=TiQ1HEWVJUwxENZFca62slYMqvFzVa11P3nhf8TggTA,12491
40
+ sqlspec/adapters/duckdb/driver.py,sha256=3SBFf7kgqrFcMWGunkVqw8_qDZKC34BcImwqxhgRLfA,11967
41
41
  sqlspec/adapters/duckdb/pool.py,sha256=2P4iAhJQ070wA_0O_ZXNfOCiXFxaW7zeyoL05A7izL4,8413
42
42
  sqlspec/adapters/oracledb/__init__.py,sha256=AUsZ8m9tDgNwxv9m4LtkIs9Ib6hOtBrGNm-Ee4HWNq0,843
43
43
  sqlspec/adapters/oracledb/_types.py,sha256=7Oe0DmA1ixptQjPMioQF7r2i451zzN2BMut2jTi2c3U,808
44
44
  sqlspec/adapters/oracledb/config.py,sha256=xdVObosNsGVhtuiWRfMQ9_78pO25vCOUIy_ktM8sYWc,12037
45
- sqlspec/adapters/oracledb/driver.py,sha256=XwkQGEWksXmS5wT13-vDuwqN5D203Z7C1KzuWWOr55g,19275
45
+ sqlspec/adapters/oracledb/driver.py,sha256=CSMo5w4lMZbhPj6BPZtjSXRZmLzJedbnT-x4OJ3tqhU,19360
46
46
  sqlspec/adapters/oracledb/migrations.py,sha256=FwjkMBbzEQRkvZdfvpPUyPiWHCP6A_IVg6_6RIYSXYA,9136
47
47
  sqlspec/adapters/psqlpy/__init__.py,sha256=ABve2Oj-G-fxMO8WRJ0XzxEw2cs5H3INDnmUI99l8gc,526
48
48
  sqlspec/adapters/psqlpy/_types.py,sha256=tG4jwQtBB6mCX5KU5x3hAhxsQUQlQEzbCsYhU3IouVc,269
49
49
  sqlspec/adapters/psqlpy/config.py,sha256=ZDZKscjDViyID78SNfOeY9IZZFYQD__hJoYLFBm4TCo,7908
50
- sqlspec/adapters/psqlpy/driver.py,sha256=Rxpoezw6mrnqlhEB0DrYUHQK7ed-wLtgXYLV2gtJlwI,16146
50
+ sqlspec/adapters/psqlpy/driver.py,sha256=nSjJ-2md9TctnDALA13WkfJSofXZTs6gz6unn1iN3iE,16985
51
51
  sqlspec/adapters/psycopg/__init__.py,sha256=swmTz8xlj6LvB-i78tBSE_T-sez2e6lFJW2cMzNJEVE,862
52
52
  sqlspec/adapters/psycopg/_types.py,sha256=UJBKDWgARoSR6UxSy8zcIP7HSHTpXU5moJTsjDj0M4M,563
53
53
  sqlspec/adapters/psycopg/config.py,sha256=PP6iwIKvINzOXZE4b99auCgR6eEfzSX-sFyHcBMb-xg,16558
54
- sqlspec/adapters/psycopg/driver.py,sha256=6Xp3MmMc7xZBpL8mdVlR5FMInXsREkob588t_oNHoVE,26762
54
+ sqlspec/adapters/psycopg/driver.py,sha256=GDzH3cJlIRVOQequqAGPKKh2IET_p0X3ai6WTn_WYZU,26525
55
55
  sqlspec/adapters/sqlite/__init__.py,sha256=hGZX0D6vHJMSah60_hgWHoLmcqKGm1lYcz2r02wc0p0,574
56
56
  sqlspec/adapters/sqlite/_types.py,sha256=4Nqolhk8s4mwLw13BwUjuyhAbM9BsKwJCvcmjMWkhaY,246
57
57
  sqlspec/adapters/sqlite/config.py,sha256=zXKipKuTPjFSUgdc5tiHAZF5hW33jvrrElNJAQhpOQM,5069
58
- sqlspec/adapters/sqlite/driver.py,sha256=52WzO8cGIERBv6fWYQYp6Myti9wYHyBzuLN8dJxsNZY,9409
58
+ sqlspec/adapters/sqlite/driver.py,sha256=DABBt0cttdTlQdkqxwgV66AMMNp543K4_qanslTrHWI,11341
59
59
  sqlspec/adapters/sqlite/pool.py,sha256=bKIrf3hgach6bMyFQORCdqnpN-sTfMagB3l61uPCGJI,4435
60
- sqlspec/builder/__init__.py,sha256=o328O3dNRj4vGXmOclIxDLzmiwkUCE_Aqmqv-LT5lWY,1665
61
- sqlspec/builder/_base.py,sha256=SkyDJYZ7QCBi4CHZQ_0e1SvA05-Hhfbvi_qS7BwjcVA,18022
62
- sqlspec/builder/_column.py,sha256=GfTMFPzJIhwDVKefMbyom-HoEj-KSKB92-XoZfchnEo,13289
63
- sqlspec/builder/_ddl.py,sha256=AyL0d1BnHkESMoZQhdFQTgGEVYRiRt-cgDiX4IKE5Vg,56533
64
- sqlspec/builder/_delete.py,sha256=xWA5nQB3UB8kpEGXN2k5ynt4cGZ7blkNoURpI0bKoeg,2264
60
+ sqlspec/builder/__init__.py,sha256=iEniDtKnYOhPOgN7OhcvAO5leYdzXQTlFE8XXKWvhzg,1652
61
+ sqlspec/builder/_base.py,sha256=yc3qIR6W3UF9SjNN6XGK7Ya45U1W8WMtK5GrnSPM-K4,17945
62
+ sqlspec/builder/_column.py,sha256=HyDaui_qMuqID7SySL_Z7RKFSSbXGgngbkoCR9V2tcY,13245
63
+ sqlspec/builder/_ddl.py,sha256=3aZldDIlhxH61p47rrIT_CjQPte6uLTI-cdtDigwLAw,56618
64
+ sqlspec/builder/_delete.py,sha256=icYjrxXIMSWso5TBkd712kmyUZMCWIxdIZHH24nCPAA,2130
65
65
  sqlspec/builder/_expression_wrappers.py,sha256=HTl8qAFD4sZNXLD2akkJWGCPse2HWS237mTGE4Cx_7I,1244
66
- sqlspec/builder/_insert.py,sha256=kqjjIfGcy49xDTTOMmb4GBvWsJqT1GOr_1Y0syAIsok,16863
67
- sqlspec/builder/_merge.py,sha256=95PLQSKA3zjk0wTZG3m817fTZpsS95PrS2qF34iLAP8,2004
68
- sqlspec/builder/_parsing_utils.py,sha256=RH8OFBFAetalEgHW5JLcEyyCdW_awVdy07MjboOkqL4,8383
69
- sqlspec/builder/_select.py,sha256=m5sfyuAssjlNimLLNBAeFooVIfM2FgKN1boPfdsOkaA,5785
70
- sqlspec/builder/_update.py,sha256=QieiguEq9T_UECv10f1xwQJp58gc3w246cvtCDpPwuw,6020
66
+ sqlspec/builder/_insert.py,sha256=hPL0yCNfqhC0tQqiBNK12CNo1g_qV6TagqwERB0UmbQ,16686
67
+ sqlspec/builder/_merge.py,sha256=_Qs6YnJa0_6-pb21zk03PxDWsC7DdZnYfGxJfz-P6Ao,1886
68
+ sqlspec/builder/_parsing_utils.py,sha256=TXwevy07a6yC2jLVLpZr04hni8opiCCOuCZtRmu4qvU,8324
69
+ sqlspec/builder/_select.py,sha256=aAPZs1iY7n3NH2ihg0m29pqNr80MW6l5dDbvIXfgGEk,5709
70
+ sqlspec/builder/_update.py,sha256=J-JtwbG5YDSrYKcecztcVYw0Fg0ZHXNCVndpPWb-a68,5900
71
71
  sqlspec/builder/mixins/__init__.py,sha256=YXhAzKmQbQtne5j26SKWY8PUxwosl0RhlhLoahAdkj0,1885
72
- sqlspec/builder/mixins/_cte_and_set_ops.py,sha256=p5O9m_jvpaWxv1XP9Ys2DRI-qOTq30rr2EwYjAbIT8o,9088
73
- sqlspec/builder/mixins/_delete_operations.py,sha256=l0liajnoAfRgtWtyStuAIfxreEFRkNO4DtBwyGqAfic,1198
74
- sqlspec/builder/mixins/_insert_operations.py,sha256=ECFuX52fNYYxWt11e1n8jHx9wu5_RJSnmm9Dl_aXnIY,10326
75
- sqlspec/builder/mixins/_join_operations.py,sha256=8o_aApK5cmJbNCNfWa4bs5fR2zgQUjon5p-oyiW41Qw,11440
76
- sqlspec/builder/mixins/_merge_operations.py,sha256=KnvXxHKEJu3ofuQsLJlPf7H4mdkH4mKwGHoXtwzdK1o,24191
77
- sqlspec/builder/mixins/_order_limit_operations.py,sha256=KrTXE0HmKCMn4AkNFyMhEZrmJ2Dl-o5kSiCjk2jNIKM,5499
78
- sqlspec/builder/mixins/_pivot_operations.py,sha256=j5vdzXuEqB1Jn3Ie_QjVwSH2_OEi65oZ64bQJHd3jXo,6108
79
- sqlspec/builder/mixins/_select_operations.py,sha256=7CwKu5pt5Nu4tdFIXciQOnd6IcbiRVO8YcOFWHePafg,35239
80
- sqlspec/builder/mixins/_update_operations.py,sha256=rcmnmSSwHSujqe0gd-dKsWHLX9nPMS1we1Y3_h4S7G4,8654
81
- sqlspec/builder/mixins/_where_clause.py,sha256=1iz7Y2x_ooG2bOCu2zX0v5_bkGFpAckVQKvnyrR1JNQ,36373
72
+ sqlspec/builder/mixins/_cte_and_set_ops.py,sha256=gANbAnL7ulkIMS1NG47nd_5laEsjwmEaROu-kTVbbF4,9152
73
+ sqlspec/builder/mixins/_delete_operations.py,sha256=LCzXoNtPUVgJ5KxhKoQj-METq51g5aDqoEmDmB66e08,1271
74
+ sqlspec/builder/mixins/_insert_operations.py,sha256=ipU1Hhue6MRFfbouDDXyONGC9-jmW7LYuo4HuMtioJs,10437
75
+ sqlspec/builder/mixins/_join_operations.py,sha256=TjVK6uJjhzbg4kmbMBCQkuW-UgTKqpFHvaKcSFOeB_w,11530
76
+ sqlspec/builder/mixins/_merge_operations.py,sha256=v2JZbyOZyT5mS0cJo82ckjE9eR2LqoAS-YO2NJWK2a4,24297
77
+ sqlspec/builder/mixins/_order_limit_operations.py,sha256=i5QXZ_1aCzAhv3VG4Tp08kW8vYqEHU04TRoZPZgS2KA,5573
78
+ sqlspec/builder/mixins/_pivot_operations.py,sha256=s3b2zSOL0zEXEGXo1lBm5MuqXWl15qMww_krsmFqj3I,6163
79
+ sqlspec/builder/mixins/_select_operations.py,sha256=GysHSEoO55JSzkqZVuRFVvIP0URN1kYq0NoE-5Alye8,35338
80
+ sqlspec/builder/mixins/_update_operations.py,sha256=izXw0ZeQQeMS0wQRNniEBKIlEaNIking89uAcLSbYLk,8752
81
+ sqlspec/builder/mixins/_where_clause.py,sha256=IBgtEB0LWF9BYKCblJOU8oAbKK-AO2-fObQnhUwXSCE,36476
82
82
  sqlspec/core/__init__.py,sha256=4pD6ymg_sZxh9QyAmsk3oNyvUWPoQj9qktg0uNJVp6k,5264
83
83
  sqlspec/core/cache.py,sha256=835tHhe3fan9_h_Y9CJ-4aAl8K-0cNMwfQzcxMzjlqQ,24837
84
- sqlspec/core/compiler.py,sha256=CdD5WqkUTUspetAN009mXF6aYmHCa1NdG6HbHAhjUMY,12066
85
- sqlspec/core/filters.py,sha256=JQRFw7ND68tWvWQpLIZbDNUGk3mdcw9Yg-ldzLcfVqQ,30475
84
+ sqlspec/core/compiler.py,sha256=VYY9lPXs-iD6agQvPzAy6sAhw-WsHjJ7pGC2Olljs_s,12562
85
+ sqlspec/core/filters.py,sha256=oVUqUYpK6872GrKME0KjwuJ_78RYPwBAJA4PRJgykhQ,30734
86
86
  sqlspec/core/hashing.py,sha256=s8aY6xY0fOwYNIWYgUqmfkALt3BBK1s5Eq30fcnscL8,8529
87
- sqlspec/core/parameters.py,sha256=pOSjWQqmuSgi4-eS3SMIfTcgXLVlM9Qd21G-vfVDymY,49083
88
- sqlspec/core/result.py,sha256=yjc7mbntsrx7atrxb8CAdrvtUNLmSuCCM0N4J_zpzQA,20490
89
- sqlspec/core/splitter.py,sha256=Qb4cyhs8ll3Wm9z11-WWsvpkUYnyEcmBz2KuYMG2evI,27914
90
- sqlspec/core/statement.py,sha256=Ydk_OImRpmbu5EnvM0zgnOWw-H7tCWhoeJHlLZQBHbk,25906
87
+ sqlspec/core/parameters.py,sha256=VK54GH0tJZ07j_1dFCURlaB6FbXAQ8B_mmK8bftDWJk,49123
88
+ sqlspec/core/result.py,sha256=v5ZKVi9J6RiP6Hm5WwJVy1xpSbmJERg0T-fZD7GYRjo,22245
89
+ sqlspec/core/splitter.py,sha256=HIUu9INxAKUzHFqtwcH_VVhDdIBVWBDbV1_mVCHm0U4,31000
90
+ sqlspec/core/statement.py,sha256=gTCnAgHQBeXwKzXXRLe_raso2Hf485wd-gocHWwb8co,28262
91
91
  sqlspec/driver/__init__.py,sha256=QVpDRQGd1GreIP199en6qDbq-cZJcEF5go68DINagUk,569
92
92
  sqlspec/driver/_async.py,sha256=aS5AwY5IYqnVT8ldDLDwz2AMDN94CI9hfsOz-1k-Nus,18992
93
- sqlspec/driver/_common.py,sha256=6vm4MY_CJW3Q8_roIG9hwK18tIMT_zIESmUoUyRSreg,23576
93
+ sqlspec/driver/_common.py,sha256=Fi5NCy5_OVlRKDzUpGsLJn3zDmrsVSsXggMRndIMM1E,23879
94
94
  sqlspec/driver/_sync.py,sha256=wCBV9QfAH8BPjrrVCQc2eM90ai5-FYbKDd81L5sZMS0,18767
95
95
  sqlspec/driver/mixins/__init__.py,sha256=gN4pQyJXxNy0xi91dcMJGA7DQ7TbjGjQI24SSpZc6Go,248
96
- sqlspec/driver/mixins/_result_tools.py,sha256=4dLU-2uL6qCS-s7cve7DmHRZXKGPqdpWtl9OKMOgbR4,6599
97
- sqlspec/driver/mixins/_sql_translator.py,sha256=wRj7neNbMFvzNfy7v0_acBAoZusKHh25UW2WsD_hSlQ,3005
96
+ sqlspec/driver/mixins/_result_tools.py,sha256=fDr1sca6jmeZ8EwTamPhlAh_XnK9moIpWD8Q3ZcEhRM,7103
97
+ sqlspec/driver/mixins/_sql_translator.py,sha256=TACtUUJdx8tJwuq_7g3AR_k0bKokvuJrMEwINyWwdQM,3711
98
98
  sqlspec/extensions/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
99
99
  sqlspec/extensions/aiosql/__init__.py,sha256=-9cefc9pYPf9vCgALoB-y1DtmcgRjKe2azfl6RIarAA,414
100
- sqlspec/extensions/aiosql/adapter.py,sha256=CXkNZaZq86ZhfYFGx4IFbkHmbIFQKMd9CS6Q2jkMCok,16009
100
+ sqlspec/extensions/aiosql/adapter.py,sha256=WshAQkpNJQ9zCMcL7EuAc6axl90GwRp3oBZ4XOQoftk,16019
101
101
  sqlspec/extensions/litestar/__init__.py,sha256=tOmQ7RHSWOot7p30gk0efxxuP0OCq1opyyZqNmQY7FE,320
102
- sqlspec/extensions/litestar/_utils.py,sha256=o-FuUj1_WkDrLxQxiP6hXDak66XfyRP3QLyEVKrIRjI,1954
102
+ sqlspec/extensions/litestar/_utils.py,sha256=iaicqnnkC5CuDwJKStz0T7lFaYMrgR96SYKZpe71v2g,1950
103
103
  sqlspec/extensions/litestar/cli.py,sha256=X4DlAx3Ry-ccOjAQSxe8SMtyJKCFJVLTbENPU_efKuU,1356
104
104
  sqlspec/extensions/litestar/config.py,sha256=3UI_vhtbupCLsf1nhUgUpRlCoUS5c0GsAjWvegT0c3c,4462
105
- sqlspec/extensions/litestar/handlers.py,sha256=3LreU8rZvuHaJnKlN09ttu4wSorWJedsuKgeLT-cOEc,9993
106
- sqlspec/extensions/litestar/plugin.py,sha256=I0aRnL4oZPUYk7pYhZSL3yikl7ViM0kr33kVmH4W-MU,5637
105
+ sqlspec/extensions/litestar/handlers.py,sha256=DXYO1FUOmG3YE4E7RlxWCPNl8YgbUzVO8pHgwZeuDOw,10625
106
+ sqlspec/extensions/litestar/plugin.py,sha256=u4Mjq16EYb4oxzbONCLdQY2P40Po-e8wQXnVnJKXGCA,5732
107
107
  sqlspec/extensions/litestar/providers.py,sha256=5LRb5JvRV_XZdNOKkdaIy3j5x-dFCcAi1ea1pgwuapI,18882
108
108
  sqlspec/migrations/__init__.py,sha256=RiDi_HkUIgXtu_33QnRdvYNqcCn-euHUiWwTiPr5IGc,1055
109
109
  sqlspec/migrations/base.py,sha256=vIzQzUtQrNKDec6XUeRHcCBuWU1KNtRCFpOvVxsp3sQ,13093
110
110
  sqlspec/migrations/commands.py,sha256=-De-1RnqjI-BwgOuFvULkJYZccPtmxPPAQTCLlU2TvM,19122
111
- sqlspec/migrations/loaders.py,sha256=WSP3du5tLy9o5SsfvCCU9vhOiOA3ds7L_VzakrSfnmA,12932
111
+ sqlspec/migrations/loaders.py,sha256=wildbpkyHrE--HXspChPOajSHSBUrfG0e6xQ2buze_4,13016
112
112
  sqlspec/migrations/runner.py,sha256=y6fyZi02n8MseKR8XFWXUEOOYQNG_w_DikHVxH9p20M,10730
113
113
  sqlspec/migrations/tracker.py,sha256=hfrZGz8M70SfFniw4aXVtHNg4p8EPFm67vthjfUMUys,6843
114
- sqlspec/migrations/utils.py,sha256=gWnCOdr8pwfkgG-FSUJgRz4q9TlCgOXY_B7n59NrgVA,3746
114
+ sqlspec/migrations/utils.py,sha256=Ft5mS1GFiRPLhfUTfPU4ZnEgOkXDnmEHjeeWwfZDcv4,3737
115
115
  sqlspec/storage/__init__.py,sha256=xWSsq5QXrY7wCsjQYPldfdlm8UEJ-kojU-tWsoldSy0,645
116
116
  sqlspec/storage/capabilities.py,sha256=vyousxls9jISsykgoybpNHlGWN6Hq_pKcsZ5DmKGWvU,3045
117
- sqlspec/storage/registry.py,sha256=-H2ttz41M-DNfkEwANS704BDs1rtyii69G7iqsLGRG4,9424
117
+ sqlspec/storage/registry.py,sha256=4duy0uOupl0X5VNhwUeQMMWPsraKWyIdjDrKFsFcVG0,9424
118
118
  sqlspec/storage/backends/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
119
119
  sqlspec/storage/backends/base.py,sha256=KS2JRZILoH_R_xsfKtYkqQ5a1r5OOBDSE5KbibTmhGY,5730
120
120
  sqlspec/storage/backends/fsspec.py,sha256=8AX8ULwlApMd6WtHDVJBomdvk5UjPtfMf78TJ86gTC8,15994
121
- sqlspec/storage/backends/obstore.py,sha256=CXad0ug_b3snVNx50SzvvFsDXpkK4LV3jROIrwf6dhg,19783
122
- sqlspec/utils/__init__.py,sha256=4Yd2HnY-DJ6wf4jBrNTM3B41KlCcaFefP7bnux7Q17g,231
121
+ sqlspec/storage/backends/obstore.py,sha256=v9moaiSVKbpl9MOrb9AAhhSXfQb1ifammrT8WeV1xcw,19735
122
+ sqlspec/utils/__init__.py,sha256=cNFX26-bLyZTyTfujUitfDkUy1CeG_d-EIr8kZ0z4W8,474
123
123
  sqlspec/utils/correlation.py,sha256=2jvkAY3nkU3UxNU_9pbBR6cz3A1Q1cGG9IaWSSOIb1Q,4195
124
- sqlspec/utils/deprecation.py,sha256=L5ylPlkrWahXZ3q2Yta2ReFh4pA8rZapLNw9u_mOOEE,3794
125
- sqlspec/utils/fixtures.py,sha256=Qm2uNMaL_6l6tlij-Pm3tLwD906iFK_OXhwZqOx3WgY,1807
124
+ sqlspec/utils/deprecation.py,sha256=iy7xzws6Kx0oQpX94smyZzTY6ijdODrdSEFFEXZfp5o,3980
125
+ sqlspec/utils/fixtures.py,sha256=qnPAdkV91dyKOqslm_TH5UZ8mx4koQMwriE5YPn3PgI,9425
126
126
  sqlspec/utils/logging.py,sha256=zAM7rHJ-KsmAj1yjvU9QFoiwf4Q2hKTere2J62FlllI,3664
127
- sqlspec/utils/module_loader.py,sha256=m5PSN9NwOLd0ZJBuqMVYVi-vaIQMBCVd25vnM3-rv3k,2823
128
- sqlspec/utils/serializers.py,sha256=TKsRryRcYMnb8Z8MGkYGClIxcYvC8CW7MsrPQTJqEcY,154
129
- sqlspec/utils/singleton.py,sha256=SKnszJi1NPeERgX7IjVIGYAYx4XqR1E_rph3bU6olAU,1047
130
- sqlspec/utils/sync_tools.py,sha256=f_bjHTXUaDcsNQY63-L7j5xn2MHfzXro-ShzJM-WLUI,8356
127
+ sqlspec/utils/module_loader.py,sha256=rO4ht-fUSJ3Us7L_7fb_G9bdMCoUSABGUA0pc3ouh9Y,2995
128
+ sqlspec/utils/serializers.py,sha256=GXsTkJbWAhRS7xDMk6WBouZwPeG4sI_brLdMBlIetNg,318
129
+ sqlspec/utils/singleton.py,sha256=-j-s6LS0pP_wTEUYIyK2wSdoeIE_tn7O7B-j7_aODRQ,1252
130
+ sqlspec/utils/sync_tools.py,sha256=ksfxsvFb1hLrDlxzwdW44OvYgRB0Fr5JDqxswfHwoOs,8744
131
131
  sqlspec/utils/text.py,sha256=W97aX77A3NzG795AHjhdX6zqOBDmvLaXLCno2JIugCo,3081
132
132
  sqlspec/utils/type_guards.py,sha256=9C4SRebO4JiQrMzcJZFUA0KjSU48G26RmX6lbijyjBg,30476
133
- sqlspec-0.18.0.dist-info/METADATA,sha256=SNUm1W2FagyGjCmPrfUcCNBRSyurCMbg60IUMf9iA1E,16822
134
- sqlspec-0.18.0.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
135
- sqlspec-0.18.0.dist-info/entry_points.txt,sha256=G-ZqY1Nuuw3Iys7nXw23f6ILenk_Lt47VdK2mhJCWHg,53
136
- sqlspec-0.18.0.dist-info/licenses/LICENSE,sha256=MdujfZ6l5HuLz4mElxlu049itenOR3gnhN1_Nd3nVcM,1078
137
- sqlspec-0.18.0.dist-info/licenses/NOTICE,sha256=Lyir8ozXWov7CyYS4huVaOCNrtgL17P-bNV-5daLntQ,1634
138
- sqlspec-0.18.0.dist-info/RECORD,,
133
+ sqlspec-0.20.0.dist-info/METADATA,sha256=DzUA9i2QN3IAmijgOMY6sUQ-Ua9GlUqm6fuzMT8JYr8,16822
134
+ sqlspec-0.20.0.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
135
+ sqlspec-0.20.0.dist-info/entry_points.txt,sha256=G-ZqY1Nuuw3Iys7nXw23f6ILenk_Lt47VdK2mhJCWHg,53
136
+ sqlspec-0.20.0.dist-info/licenses/LICENSE,sha256=MdujfZ6l5HuLz4mElxlu049itenOR3gnhN1_Nd3nVcM,1078
137
+ sqlspec-0.20.0.dist-info/licenses/NOTICE,sha256=Lyir8ozXWov7CyYS4huVaOCNrtgL17P-bNV-5daLntQ,1634
138
+ sqlspec-0.20.0.dist-info/RECORD,,