dycw-utilities 0.136.6__py3-none-any.whl → 0.136.7__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.136.6
3
+ Version: 0.136.7
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=AkTwc_IslcficXaKXyPr9mQYVL_PcizHlUpq1xo5QTc,60
1
+ utilities/__init__.py,sha256=_gHgMWM-7wftYvG3CuC0fVylv31uuRdfxSdp2fJbITs,60
2
2
  utilities/aiolimiter.py,sha256=mD0wEiqMgwpty4XTbawFpnkkmJS6R4JRsVXFUaoitSU,628
3
3
  utilities/altair.py,sha256=HeZBVUocjkrTNwwKrClppsIqgNFF-ykv05HfZSoHYno,9104
4
4
  utilities/asyncio.py,sha256=dcGeKQzjLBXxKzZkVIk5oZsFXEcynVbRB9iNB5XEDZk,38526
@@ -67,7 +67,7 @@ utilities/sentinel.py,sha256=3jIwgpMekWgDAxPDA_hXMP2St43cPhciKN3LWiZ7kv0,1248
67
67
  utilities/shelve.py,sha256=HZsMwK4tcIfg3sh0gApx4-yjQnrY4o3V3ZRimvRhoW0,738
68
68
  utilities/slack_sdk.py,sha256=RrB34gOj4TzBFh1vzMy6wL_ajzIG-2c9kiS6c6LzMFM,4233
69
69
  utilities/socket.py,sha256=K77vfREvzoVTrpYKo6MZakol0EYu2q1sWJnnZqL0So0,118
70
- utilities/sqlalchemy.py,sha256=NAJGgCqdLoqPZIne74M3Z_sOaNYVEXiIhl3-6p-4UZE,38219
70
+ utilities/sqlalchemy.py,sha256=wZU8k_Mdi2v9U8bmqy3W3EiQywvrPj_wL24L1coTYRk,38565
71
71
  utilities/sqlalchemy_polars.py,sha256=jXO-yizGuX_mivaQg7pe17GldcTMpeEldkIL4SpMyuI,14294
72
72
  utilities/statsmodels.py,sha256=koyiBHvpMcSiBfh99wFUfSggLNx7cuAw3rwyfAhoKpQ,3410
73
73
  utilities/streamlit.py,sha256=U9PJBaKP1IdSykKhPZhIzSPTZsmLsnwbEPZWzNhJPKk,2955
@@ -88,7 +88,7 @@ utilities/warnings.py,sha256=un1LvHv70PU-LLv8RxPVmugTzDJkkGXRMZTE2-fTQHw,1771
88
88
  utilities/whenever.py,sha256=A-yoOqBqrcVD1yDINDsTFDw7dq9-zgUGn_f8CxVUQJs,23332
89
89
  utilities/zipfile.py,sha256=24lQc9ATcJxHXBPc_tBDiJk48pWyRrlxO2fIsFxU0A8,699
90
90
  utilities/zoneinfo.py,sha256=oEH-nL3t4h9uawyZqWDtNtDAl6M-CLpLYGI_nI6DulM,1971
91
- dycw_utilities-0.136.6.dist-info/METADATA,sha256=abfQoeh81tTgbJfqO9Sh2xjiQ-Vj3pAI_jR9eOHdnGw,1637
92
- dycw_utilities-0.136.6.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
93
- dycw_utilities-0.136.6.dist-info/licenses/LICENSE,sha256=gppZp16M6nSVpBbUBrNL6JuYfvKwZiKgV7XoKKsHzqo,1066
94
- dycw_utilities-0.136.6.dist-info/RECORD,,
91
+ dycw_utilities-0.136.7.dist-info/METADATA,sha256=Y-Pj2EJoFNikG1cNjmfA9b8mzZdMzR_XpxuZX6hzBEc,1637
92
+ dycw_utilities-0.136.7.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
93
+ dycw_utilities-0.136.7.dist-info/licenses/LICENSE,sha256=gppZp16M6nSVpBbUBrNL6JuYfvKwZiKgV7XoKKsHzqo,1066
94
+ dycw_utilities-0.136.7.dist-info/RECORD,,
utilities/__init__.py CHANGED
@@ -1,3 +1,3 @@
1
1
  from __future__ import annotations
2
2
 
3
- __version__ = "0.136.6"
3
+ __version__ = "0.136.7"
utilities/sqlalchemy.py CHANGED
@@ -86,6 +86,8 @@ from utilities.types import MaybeIterable, MaybeType, StrMapping, TupleOrStrMapp
86
86
  from utilities.whenever import SECOND
87
87
 
88
88
  if TYPE_CHECKING:
89
+ from enum import Enum, StrEnum
90
+
89
91
  from whenever import TimeDelta
90
92
 
91
93
  type _EngineOrConnectionOrAsync = Engine | Connection | AsyncEngine | AsyncConnection
@@ -284,6 +286,22 @@ async def ensure_tables_dropped(
284
286
  ##
285
287
 
286
288
 
289
+ def enum_name(enum: type[Enum], /) -> str:
290
+ """Get the name of an Enum."""
291
+ return f"{snake_case(get_class_name(enum))}_enum"
292
+
293
+
294
+ ##
295
+
296
+
297
+ def enum_values(enum: type[StrEnum], /) -> list[str]:
298
+ """Get the values of a StrEnum."""
299
+ return [e.value for e in enum]
300
+
301
+
302
+ ##
303
+
304
+
287
305
  def get_chunk_size(
288
306
  engine_or_conn: _EngineOrConnectionOrAsync,
289
307
  /,
@@ -1171,6 +1189,8 @@ __all__ = [
1171
1189
  "create_async_engine",
1172
1190
  "ensure_tables_created",
1173
1191
  "ensure_tables_dropped",
1192
+ "enum_name",
1193
+ "enum_values",
1174
1194
  "get_chunk_size",
1175
1195
  "get_column_names",
1176
1196
  "get_columns",