dycw-utilities 0.150.11__py3-none-any.whl → 0.150.13__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.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: dycw-utilities
3
- Version: 0.150.11
3
+ Version: 0.150.13
4
4
  Author-email: Derek Wan <d.wan@icloud.com>
5
5
  License-File: LICENSE
6
6
  Requires-Python: >=3.12
@@ -1,4 +1,4 @@
1
- utilities/__init__.py,sha256=-W11lQr4jP-tn91Yfbt2z87iYMIXPcyPiNogVGYlrG0,61
1
+ utilities/__init__.py,sha256=Dso32ACb66Psk-daIQDsHv_bmVx1YtOxzv9SWRzvkOk,61
2
2
  utilities/altair.py,sha256=92E2lCdyHY4Zb-vCw6rEJIsWdKipuu-Tu2ab1ufUfAk,9079
3
3
  utilities/asyncio.py,sha256=2m2a2C-Qgc6OHTTHL332-t66A7xDITt_SORT7a1DJWo,16792
4
4
  utilities/atomicwrites.py,sha256=xcOWenTBRS0oat3kg7Sqe51AohNThMQ2ixPL7QCG8hw,5795
@@ -66,7 +66,7 @@ utilities/sentinel.py,sha256=3jIwgpMekWgDAxPDA_hXMP2St43cPhciKN3LWiZ7kv0,1248
66
66
  utilities/shelve.py,sha256=4OzjQI6kGuUbJciqf535rwnao-_IBv66gsT6tRGiUt0,759
67
67
  utilities/slack_sdk.py,sha256=ppFBvKgfg5IRWiIoKPtpTyzBtBF4XmwEvU3I5wLJikM,2140
68
68
  utilities/socket.py,sha256=K77vfREvzoVTrpYKo6MZakol0EYu2q1sWJnnZqL0So0,118
69
- utilities/sqlalchemy.py,sha256=u2ZVvr_4Yrqsur6FlLHUuW0mPaoNrHvaJ2wj7o_WG3A,39264
69
+ utilities/sqlalchemy.py,sha256=PVQXLRXPvULmGpKaa21lM21fUDzEIcqx_-d5oQFdD8A,39610
70
70
  utilities/sqlalchemy_polars.py,sha256=18AoEbeNJUKF3-5hroNy9J5LQwS_QJAXbMfKc9sChtk,14250
71
71
  utilities/statsmodels.py,sha256=koyiBHvpMcSiBfh99wFUfSggLNx7cuAw3rwyfAhoKpQ,3410
72
72
  utilities/string.py,sha256=MB0X6UPTUc06JdAdj-PctZ238IXeCjE5dAJibNw6ZrU,587
@@ -89,8 +89,8 @@ utilities/zoneinfo.py,sha256=oEH-nL3t4h9uawyZqWDtNtDAl6M-CLpLYGI_nI6DulM,1971
89
89
  utilities/pytest_plugins/__init__.py,sha256=U4S_2y3zgLZVfMenHRaJFBW8yqh2mUBuI291LGQVOJ8,35
90
90
  utilities/pytest_plugins/pytest_randomly.py,sha256=NXzCcGKbpgYouz5yehKb4jmxmi2SexKKpgF4M65bi10,414
91
91
  utilities/pytest_plugins/pytest_regressions.py,sha256=Iwhfv_OJH7UCPZCfoh7ugZ2Xjqjil-BBBsOb8sDwiGI,1471
92
- dycw_utilities-0.150.11.dist-info/METADATA,sha256=i9tIQJnes-TSj9Z8tHap_MgTtlzmZuXvVAPcoG_JY-Q,1697
93
- dycw_utilities-0.150.11.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
94
- dycw_utilities-0.150.11.dist-info/entry_points.txt,sha256=BOD_SoDxwsfJYOLxhrSXhHP_T7iw-HXI9f2WVkzYxvQ,135
95
- dycw_utilities-0.150.11.dist-info/licenses/LICENSE,sha256=gppZp16M6nSVpBbUBrNL6JuYfvKwZiKgV7XoKKsHzqo,1066
96
- dycw_utilities-0.150.11.dist-info/RECORD,,
92
+ dycw_utilities-0.150.13.dist-info/METADATA,sha256=WnT6T9ZLZ13ELERVuzIbh3HGGjn9pDj0_JVykzsUezs,1697
93
+ dycw_utilities-0.150.13.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
94
+ dycw_utilities-0.150.13.dist-info/entry_points.txt,sha256=BOD_SoDxwsfJYOLxhrSXhHP_T7iw-HXI9f2WVkzYxvQ,135
95
+ dycw_utilities-0.150.13.dist-info/licenses/LICENSE,sha256=gppZp16M6nSVpBbUBrNL6JuYfvKwZiKgV7XoKKsHzqo,1066
96
+ dycw_utilities-0.150.13.dist-info/RECORD,,
utilities/__init__.py CHANGED
@@ -1,3 +1,3 @@
1
1
  from __future__ import annotations
2
2
 
3
- __version__ = "0.150.11"
3
+ __version__ = "0.150.13"
utilities/sqlalchemy.py CHANGED
@@ -115,11 +115,23 @@ CHUNK_SIZE_FRAC = 0.8
115
115
  ##
116
116
 
117
117
 
118
+ _SELECT = text("SELECT 1")
119
+
120
+
118
121
  def check_connect(engine: Engine, /) -> bool:
119
122
  """Check if an engine can connect."""
120
123
  try:
121
124
  with engine.connect() as conn:
122
- return bool(conn.execute(text("SELECT 1")).scalar_one())
125
+ return bool(conn.execute(_SELECT).scalar_one())
126
+ except (OperationalError, ProgrammingError):
127
+ return False
128
+
129
+
130
+ async def check_connect_async(engine: AsyncEngine, /) -> bool:
131
+ """Check if an engine can connect."""
132
+ try:
133
+ async with engine.connect() as conn:
134
+ return bool((await conn.execute(_SELECT)).scalar_one())
123
135
  except (OperationalError, ProgrammingError):
124
136
  return False
125
137
 
@@ -1260,6 +1272,7 @@ __all__ = [
1260
1272
  "TablenameMixin",
1261
1273
  "UpsertItemsError",
1262
1274
  "check_connect",
1275
+ "check_connect_async",
1263
1276
  "check_engine",
1264
1277
  "columnwise_max",
1265
1278
  "columnwise_min",