dycw-utilities 0.129.14__py3-none-any.whl → 0.129.15__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.129.14
3
+ Version: 0.129.15
4
4
  Author-email: Derek Wan <d.wan@icloud.com>
5
5
  License-File: LICENSE
6
6
  Requires-Python: >=3.12
@@ -9,7 +9,7 @@ Provides-Extra: logging
9
9
  Requires-Dist: atomicwrites<1.5,>=1.4.1; extra == 'logging'
10
10
  Requires-Dist: coloredlogs<15.1,>=15.0.1; extra == 'logging'
11
11
  Requires-Dist: tzlocal<5.4,>=5.3.1; extra == 'logging'
12
- Requires-Dist: whenever<0.9,>=0.8.4; extra == 'logging'
12
+ Requires-Dist: whenever<0.9,>=0.8.5; extra == 'logging'
13
13
  Provides-Extra: test
14
14
  Requires-Dist: dycw-pytest-only<2.2,>=2.1.1; extra == 'test'
15
15
  Requires-Dist: hypothesis<6.136,>=6.135.2; extra == 'test'
@@ -32,7 +32,7 @@ Requires-Dist: atomicwrites<1.5,>=1.4.1; extra == 'zzz-test-altair'
32
32
  Requires-Dist: img2pdf<0.7,>=0.6.0; extra == 'zzz-test-altair'
33
33
  Requires-Dist: polars-lts-cpu<1.31,>=1.30.0; extra == 'zzz-test-altair'
34
34
  Requires-Dist: vl-convert-python<1.9,>=1.8.0; extra == 'zzz-test-altair'
35
- Requires-Dist: whenever<0.9,>=0.8.4; extra == 'zzz-test-altair'
35
+ Requires-Dist: whenever<0.9,>=0.8.5; extra == 'zzz-test-altair'
36
36
  Provides-Extra: zzz-test-asyncio
37
37
  Provides-Extra: zzz-test-atomicwrites
38
38
  Requires-Dist: atomicwrites<1.5,>=1.4.1; extra == 'zzz-test-atomicwrites'
@@ -43,20 +43,20 @@ Requires-Dist: cachetools<5.6,>=5.5.2; extra == 'zzz-test-cachetools'
43
43
  Provides-Extra: zzz-test-click
44
44
  Requires-Dist: click<8.3,>=8.2.1; extra == 'zzz-test-click'
45
45
  Requires-Dist: sqlalchemy<2.1,>=2.0.41; extra == 'zzz-test-click'
46
- Requires-Dist: whenever<0.9,>=0.8.4; extra == 'zzz-test-click'
46
+ Requires-Dist: whenever<0.9,>=0.8.5; extra == 'zzz-test-click'
47
47
  Provides-Extra: zzz-test-contextlib
48
48
  Provides-Extra: zzz-test-contextvars
49
49
  Provides-Extra: zzz-test-cryptography
50
- Requires-Dist: cryptography<45.1,>=45.0.3; extra == 'zzz-test-cryptography'
50
+ Requires-Dist: cryptography<45.1,>=45.0.4; extra == 'zzz-test-cryptography'
51
51
  Provides-Extra: zzz-test-cvxpy
52
52
  Requires-Dist: cvxpy<1.7,>=1.6.5; extra == 'zzz-test-cvxpy'
53
53
  Provides-Extra: zzz-test-dataclasses
54
54
  Requires-Dist: orjson<3.11,>=3.10.15; extra == 'zzz-test-dataclasses'
55
55
  Requires-Dist: polars-lts-cpu<1.31,>=1.30.0; extra == 'zzz-test-dataclasses'
56
- Requires-Dist: whenever<0.9,>=0.8.4; extra == 'zzz-test-dataclasses'
56
+ Requires-Dist: whenever<0.9,>=0.8.5; extra == 'zzz-test-dataclasses'
57
57
  Provides-Extra: zzz-test-datetime
58
58
  Requires-Dist: tzlocal<5.4,>=5.3.1; extra == 'zzz-test-datetime'
59
- Requires-Dist: whenever<0.9,>=0.8.4; extra == 'zzz-test-datetime'
59
+ Requires-Dist: whenever<0.9,>=0.8.5; extra == 'zzz-test-datetime'
60
60
  Provides-Extra: zzz-test-enum
61
61
  Provides-Extra: zzz-test-errors
62
62
  Provides-Extra: zzz-test-eventkit
@@ -75,11 +75,11 @@ Provides-Extra: zzz-test-git
75
75
  Provides-Extra: zzz-test-hashlib
76
76
  Requires-Dist: orjson<3.11,>=3.10.15; extra == 'zzz-test-hashlib'
77
77
  Requires-Dist: polars-lts-cpu<1.31,>=1.30.0; extra == 'zzz-test-hashlib'
78
- Requires-Dist: whenever<0.9,>=0.8.4; extra == 'zzz-test-hashlib'
78
+ Requires-Dist: whenever<0.9,>=0.8.5; extra == 'zzz-test-hashlib'
79
79
  Provides-Extra: zzz-test-http
80
80
  Requires-Dist: atomicwrites<1.5,>=1.4.1; extra == 'zzz-test-http'
81
81
  Requires-Dist: orjson<3.11,>=3.10.18; extra == 'zzz-test-http'
82
- Requires-Dist: whenever<0.9,>=0.8.4; extra == 'zzz-test-http'
82
+ Requires-Dist: whenever<0.9,>=0.8.5; extra == 'zzz-test-http'
83
83
  Provides-Extra: zzz-test-hypothesis
84
84
  Requires-Dist: aiosqlite<0.22,>=0.21.0; extra == 'zzz-test-hypothesis'
85
85
  Requires-Dist: asyncpg<0.31,>=0.30.0; extra == 'zzz-test-hypothesis'
@@ -92,12 +92,12 @@ Requires-Dist: redis<6.3,>=6.2.0; extra == 'zzz-test-hypothesis'
92
92
  Requires-Dist: sqlalchemy<2.1,>=2.0.41; extra == 'zzz-test-hypothesis'
93
93
  Requires-Dist: tenacity<9.0,>=8.5.0; extra == 'zzz-test-hypothesis'
94
94
  Requires-Dist: tzlocal<5.4,>=5.3.1; extra == 'zzz-test-hypothesis'
95
- Requires-Dist: whenever<0.9,>=0.8.4; extra == 'zzz-test-hypothesis'
95
+ Requires-Dist: whenever<0.9,>=0.8.5; extra == 'zzz-test-hypothesis'
96
96
  Provides-Extra: zzz-test-ipython
97
97
  Requires-Dist: ipython<9.1,>=9.0.1; extra == 'zzz-test-ipython'
98
98
  Provides-Extra: zzz-test-iterables
99
99
  Requires-Dist: polars-lts-cpu<1.31,>=1.30.0; extra == 'zzz-test-iterables'
100
- Requires-Dist: whenever<0.9,>=0.8.4; extra == 'zzz-test-iterables'
100
+ Requires-Dist: whenever<0.9,>=0.8.5; extra == 'zzz-test-iterables'
101
101
  Provides-Extra: zzz-test-jupyter
102
102
  Requires-Dist: jupyterlab<4.3,>=4.2.0; extra == 'zzz-test-jupyter'
103
103
  Requires-Dist: pandas<2.4,>=2.3.0; extra == 'zzz-test-jupyter'
@@ -108,12 +108,12 @@ Requires-Dist: coloredlogs<15.1,>=15.0.1; extra == 'zzz-test-logging'
108
108
  Requires-Dist: rich<14.1,>=14.0.0; extra == 'zzz-test-logging'
109
109
  Requires-Dist: tomlkit<0.14,>=0.13.2; extra == 'zzz-test-logging'
110
110
  Requires-Dist: tzlocal<5.4,>=5.3.1; extra == 'zzz-test-logging'
111
- Requires-Dist: whenever<0.9,>=0.8.4; extra == 'zzz-test-logging'
111
+ Requires-Dist: whenever<0.9,>=0.8.5; extra == 'zzz-test-logging'
112
112
  Provides-Extra: zzz-test-loguru
113
113
  Requires-Dist: loguru<0.8,>=0.7.3; extra == 'zzz-test-loguru'
114
114
  Provides-Extra: zzz-test-luigi
115
115
  Requires-Dist: luigi<3.7,>=3.6.0; extra == 'zzz-test-luigi'
116
- Requires-Dist: whenever<0.9,>=0.8.4; extra == 'zzz-test-luigi'
116
+ Requires-Dist: whenever<0.9,>=0.8.5; extra == 'zzz-test-luigi'
117
117
  Provides-Extra: zzz-test-math
118
118
  Requires-Dist: numpy<2.4,>=2.3.0; extra == 'zzz-test-math'
119
119
  Provides-Extra: zzz-test-memory-profiler
@@ -125,7 +125,7 @@ Provides-Extra: zzz-test-numpy
125
125
  Requires-Dist: numpy<2.4,>=2.3.0; extra == 'zzz-test-numpy'
126
126
  Provides-Extra: zzz-test-operator
127
127
  Requires-Dist: polars-lts-cpu<1.31,>=1.30.0; extra == 'zzz-test-operator'
128
- Requires-Dist: whenever<0.9,>=0.8.4; extra == 'zzz-test-operator'
128
+ Requires-Dist: whenever<0.9,>=0.8.5; extra == 'zzz-test-operator'
129
129
  Provides-Extra: zzz-test-optuna
130
130
  Requires-Dist: optuna<4.4,>=4.3.0; extra == 'zzz-test-optuna'
131
131
  Provides-Extra: zzz-test-orjson
@@ -133,7 +133,7 @@ Requires-Dist: orjson<3.11,>=3.10.15; extra == 'zzz-test-orjson'
133
133
  Requires-Dist: polars-lts-cpu<1.31,>=1.30.0; extra == 'zzz-test-orjson'
134
134
  Requires-Dist: rich<14.1,>=14.0.0; extra == 'zzz-test-orjson'
135
135
  Requires-Dist: tzlocal<5.4,>=5.3.1; extra == 'zzz-test-orjson'
136
- Requires-Dist: whenever<0.9,>=0.8.4; extra == 'zzz-test-orjson'
136
+ Requires-Dist: whenever<0.9,>=0.8.5; extra == 'zzz-test-orjson'
137
137
  Provides-Extra: zzz-test-os
138
138
  Provides-Extra: zzz-test-pathlib
139
139
  Provides-Extra: zzz-test-pickle
@@ -141,7 +141,7 @@ Requires-Dist: atomicwrites<1.5,>=1.4.1; extra == 'zzz-test-pickle'
141
141
  Provides-Extra: zzz-test-platform
142
142
  Provides-Extra: zzz-test-polars
143
143
  Requires-Dist: polars-lts-cpu<1.31,>=1.30.0; extra == 'zzz-test-polars'
144
- Requires-Dist: whenever<0.9,>=0.8.4; extra == 'zzz-test-polars'
144
+ Requires-Dist: whenever<0.9,>=0.8.5; extra == 'zzz-test-polars'
145
145
  Provides-Extra: zzz-test-pqdm
146
146
  Requires-Dist: pqdm<0.3,>=0.2.0; extra == 'zzz-test-pqdm'
147
147
  Provides-Extra: zzz-test-pydantic
@@ -156,12 +156,12 @@ Requires-Dist: pyrsistent<0.21,>=0.20.0; extra == 'zzz-test-pyrsistent'
156
156
  Provides-Extra: zzz-test-pytest
157
157
  Requires-Dist: atomicwrites<1.5,>=1.4.1; extra == 'zzz-test-pytest'
158
158
  Requires-Dist: orjson<3.11,>=3.10.18; extra == 'zzz-test-pytest'
159
- Requires-Dist: whenever<0.9,>=0.8.4; extra == 'zzz-test-pytest'
159
+ Requires-Dist: whenever<0.9,>=0.8.5; extra == 'zzz-test-pytest'
160
160
  Provides-Extra: zzz-test-pytest-regressions
161
161
  Requires-Dist: pytest-regressions<2.9,>=2.8.0; extra == 'zzz-test-pytest-regressions'
162
162
  Provides-Extra: zzz-test-python-dotenv
163
163
  Requires-Dist: python-dotenv<1.2,>=1.1.0; extra == 'zzz-test-python-dotenv'
164
- Requires-Dist: whenever<0.9,>=0.8.4; extra == 'zzz-test-python-dotenv'
164
+ Requires-Dist: whenever<0.9,>=0.8.5; extra == 'zzz-test-python-dotenv'
165
165
  Provides-Extra: zzz-test-random
166
166
  Provides-Extra: zzz-test-re
167
167
  Provides-Extra: zzz-test-redis
@@ -171,7 +171,7 @@ Requires-Dist: redis<6.3,>=6.2.0; extra == 'zzz-test-redis'
171
171
  Requires-Dist: rich<14.1,>=14.0.0; extra == 'zzz-test-redis'
172
172
  Requires-Dist: tenacity<9.0,>=8.5.0; extra == 'zzz-test-redis'
173
173
  Requires-Dist: tzlocal<5.4,>=5.3.1; extra == 'zzz-test-redis'
174
- Requires-Dist: whenever<0.9,>=0.8.4; extra == 'zzz-test-redis'
174
+ Requires-Dist: whenever<0.9,>=0.8.5; extra == 'zzz-test-redis'
175
175
  Provides-Extra: zzz-test-rich
176
176
  Requires-Dist: rich<14.1,>=14.0.0; extra == 'zzz-test-rich'
177
177
  Provides-Extra: zzz-test-scipy
@@ -179,7 +179,7 @@ Requires-Dist: scipy<1.16,>=1.15.3; extra == 'zzz-test-scipy'
179
179
  Provides-Extra: zzz-test-sentinel
180
180
  Provides-Extra: zzz-test-shelve
181
181
  Provides-Extra: zzz-test-slack-sdk
182
- Requires-Dist: aiohttp<3.13,>=3.12.11; extra == 'zzz-test-slack-sdk'
182
+ Requires-Dist: aiohttp<3.13,>=3.12.12; extra == 'zzz-test-slack-sdk'
183
183
  Requires-Dist: slack-sdk<3.36,>=3.35.0; extra == 'zzz-test-slack-sdk'
184
184
  Provides-Extra: zzz-test-socket
185
185
  Provides-Extra: zzz-test-sqlalchemy
@@ -197,7 +197,7 @@ Requires-Dist: nest-asyncio<1.7,>=1.6.0; extra == 'zzz-test-sqlalchemy-polars'
197
197
  Requires-Dist: polars-lts-cpu<1.31,>=1.30.0; extra == 'zzz-test-sqlalchemy-polars'
198
198
  Requires-Dist: sqlalchemy<2.1,>=2.0.41; extra == 'zzz-test-sqlalchemy-polars'
199
199
  Requires-Dist: tenacity<9.0,>=8.5.0; extra == 'zzz-test-sqlalchemy-polars'
200
- Requires-Dist: whenever<0.9,>=0.8.4; extra == 'zzz-test-sqlalchemy-polars'
200
+ Requires-Dist: whenever<0.9,>=0.8.5; extra == 'zzz-test-sqlalchemy-polars'
201
201
  Provides-Extra: zzz-test-streamlit
202
202
  Requires-Dist: streamlit<1.46,>=1.45.0; extra == 'zzz-test-streamlit'
203
203
  Provides-Extra: zzz-test-sys
@@ -205,7 +205,7 @@ Requires-Dist: atomicwrites<1.5,>=1.4.1; extra == 'zzz-test-sys'
205
205
  Requires-Dist: rich<14.1,>=14.0.0; extra == 'zzz-test-sys'
206
206
  Requires-Dist: tomlkit<0.14,>=0.13.2; extra == 'zzz-test-sys'
207
207
  Requires-Dist: tzlocal<5.4,>=5.3.1; extra == 'zzz-test-sys'
208
- Requires-Dist: whenever<0.9,>=0.8.4; extra == 'zzz-test-sys'
208
+ Requires-Dist: whenever<0.9,>=0.8.5; extra == 'zzz-test-sys'
209
209
  Provides-Extra: zzz-test-tempfile
210
210
  Provides-Extra: zzz-test-tenacity
211
211
  Requires-Dist: tenacity<9.0,>=8.5.0; extra == 'zzz-test-tenacity'
@@ -216,11 +216,11 @@ Provides-Extra: zzz-test-traceback
216
216
  Requires-Dist: rich<14.1,>=14.0.0; extra == 'zzz-test-traceback'
217
217
  Requires-Dist: tomlkit<0.14,>=0.13.2; extra == 'zzz-test-traceback'
218
218
  Requires-Dist: tzlocal<5.4,>=5.3.1; extra == 'zzz-test-traceback'
219
- Requires-Dist: whenever<0.9,>=0.8.4; extra == 'zzz-test-traceback'
219
+ Requires-Dist: whenever<0.9,>=0.8.5; extra == 'zzz-test-traceback'
220
220
  Provides-Extra: zzz-test-types
221
221
  Provides-Extra: zzz-test-typing
222
222
  Requires-Dist: polars-lts-cpu<1.31,>=1.30.0; extra == 'zzz-test-typing'
223
- Requires-Dist: whenever<0.9,>=0.8.4; extra == 'zzz-test-typing'
223
+ Requires-Dist: whenever<0.9,>=0.8.5; extra == 'zzz-test-typing'
224
224
  Provides-Extra: zzz-test-tzlocal
225
225
  Requires-Dist: tzlocal<5.4,>=5.3.1; extra == 'zzz-test-tzlocal'
226
226
  Provides-Extra: zzz-test-uuid
@@ -228,11 +228,11 @@ Provides-Extra: zzz-test-version
228
228
  Requires-Dist: tomlkit<0.14,>=0.13.2; extra == 'zzz-test-version'
229
229
  Provides-Extra: zzz-test-warnings
230
230
  Provides-Extra: zzz-test-whenever
231
- Requires-Dist: whenever<0.9,>=0.8.4; extra == 'zzz-test-whenever'
231
+ Requires-Dist: whenever<0.9,>=0.8.5; extra == 'zzz-test-whenever'
232
232
  Provides-Extra: zzz-test-zipfile
233
233
  Provides-Extra: zzz-test-zoneinfo
234
234
  Requires-Dist: tzdata<2025.3,>=2025.2; extra == 'zzz-test-zoneinfo'
235
- Requires-Dist: whenever<0.9,>=0.8.4; extra == 'zzz-test-zoneinfo'
235
+ Requires-Dist: whenever<0.9,>=0.8.5; extra == 'zzz-test-zoneinfo'
236
236
  Description-Content-Type: text/markdown
237
237
 
238
238
  [![PyPI version](https://badge.fury.io/py/dycw-utilities.svg)](https://badge.fury.io/py/dycw-utilities)
@@ -1,7 +1,7 @@
1
- utilities/__init__.py,sha256=Y_ehKmi3nnT-vHTNDhutElTH0U818iyI5Sgkr2YVx-Q,61
1
+ utilities/__init__.py,sha256=PbBTJCszQ-TxLraNCo-KFg8US_QVTt_TjYIvAKoL5q0,61
2
2
  utilities/aiolimiter.py,sha256=mD0wEiqMgwpty4XTbawFpnkkmJS6R4JRsVXFUaoitSU,628
3
3
  utilities/altair.py,sha256=Gpja-flOo-Db0PIPJLJsgzAlXWoKUjPU1qY-DQ829ek,9156
4
- utilities/asyncio.py,sha256=3n5EIcSq2xtEF1i4oR0oY2JmBq3NyugeHKFK39Mt22s,37987
4
+ utilities/asyncio.py,sha256=lvdgBhuMtxq0dpiwF9g2WMMrit3kqXibN1V5NZ4xdbo,38046
5
5
  utilities/atomicwrites.py,sha256=geFjn9Pwn-tTrtoGjDDxWli9NqbYfy3gGL6ZBctiqSo,5393
6
6
  utilities/atools.py,sha256=IYMuFSFGSKyuQmqD6v5IUtDlz8PPw0Sr87Cub_gRU3M,1168
7
7
  utilities/cachetools.py,sha256=C1zqOg7BYz0IfQFK8e3qaDDgEZxDpo47F15RTfJM37Q,2910
@@ -63,15 +63,15 @@ utilities/pytest_regressions.py,sha256=YI55B7EtLjhz7zPJZ6NK9bWrxrKCKabWZJe1cwcbA
63
63
  utilities/python_dotenv.py,sha256=edXsvHZhZnYeqfMfrsRRpj7_9eJI6uizh3xLx8Q9B3w,3228
64
64
  utilities/random.py,sha256=lYdjgxB7GCfU_fwFVl5U-BIM_HV3q6_urL9byjrwDM8,4157
65
65
  utilities/re.py,sha256=5J4d8VwIPFVrX2Eb8zfoxImDv7IwiN_U7mJ07wR2Wvs,3958
66
- utilities/redis.py,sha256=7Sc-G43VXVzFQU7MHKyI1y3u7My3oT1UoWXPGcKM_-0,36008
66
+ utilities/redis.py,sha256=IceT5EjgrebVkGL8X3M35xlqjI2c7zFbyV1P4dExN4M,36037
67
67
  utilities/reprlib.py,sha256=ssYTcBW-TeRh3fhCJv57sopTZHF5FrPyyUg9yp5XBlo,3953
68
68
  utilities/scipy.py,sha256=wZJM7fEgBAkLSYYvSmsg5ac-QuwAI0BGqHVetw1_Hb0,947
69
69
  utilities/sentinel.py,sha256=3jIwgpMekWgDAxPDA_hXMP2St43cPhciKN3LWiZ7kv0,1248
70
70
  utilities/shelve.py,sha256=HZsMwK4tcIfg3sh0gApx4-yjQnrY4o3V3ZRimvRhoW0,738
71
71
  utilities/slack_sdk.py,sha256=ltmzv68aa73CJGqTDvt8L9vDm22YU9iOCo3NCiNd3vA,4347
72
72
  utilities/socket.py,sha256=K77vfREvzoVTrpYKo6MZakol0EYu2q1sWJnnZqL0So0,118
73
- utilities/sqlalchemy.py,sha256=I81qR7JtS-q1sLnw42p7L0FC0imT98gJHGte_KOjpAA,37890
74
- utilities/sqlalchemy_polars.py,sha256=s7hQNep2O5DTgIRXyN_JRQma7a4DAtNd25tshaZW8iw,15490
73
+ utilities/sqlalchemy.py,sha256=IuQ7CIVNl29TG6i81K6fam8NmTmPjtA6OiIN4nIM9W8,37935
74
+ utilities/sqlalchemy_polars.py,sha256=OPrB_Aqh8KE3hfNqvvXSzqVH5CYgIYrDH13WoLdCzbw,15510
75
75
  utilities/statsmodels.py,sha256=koyiBHvpMcSiBfh99wFUfSggLNx7cuAw3rwyfAhoKpQ,3410
76
76
  utilities/streamlit.py,sha256=U9PJBaKP1IdSykKhPZhIzSPTZsmLsnwbEPZWzNhJPKk,2955
77
77
  utilities/string.py,sha256=XmU-s04qIV_tODnKl2pQiwmHaxzgOqRKU-RyzdrfvSE,620
@@ -92,7 +92,7 @@ utilities/warnings.py,sha256=un1LvHv70PU-LLv8RxPVmugTzDJkkGXRMZTE2-fTQHw,1771
92
92
  utilities/whenever.py,sha256=QbXgFAPuUL7PCp2hajmIP-FFIfIR1J6Y0TxJbeoj60I,18434
93
93
  utilities/zipfile.py,sha256=24lQc9ATcJxHXBPc_tBDiJk48pWyRrlxO2fIsFxU0A8,699
94
94
  utilities/zoneinfo.py,sha256=-5j7IQ9nb7gR43rdgA7ms05im-XuqhAk9EJnQBXxCoQ,1874
95
- dycw_utilities-0.129.14.dist-info/METADATA,sha256=FPFxke4KtPpdpvY4nb_JGWGKVDehcRi3Ap6gjMYC_sk,13084
96
- dycw_utilities-0.129.14.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
97
- dycw_utilities-0.129.14.dist-info/licenses/LICENSE,sha256=gppZp16M6nSVpBbUBrNL6JuYfvKwZiKgV7XoKKsHzqo,1066
98
- dycw_utilities-0.129.14.dist-info/RECORD,,
95
+ dycw_utilities-0.129.15.dist-info/METADATA,sha256=LAKy_iewWJ6_3dBjmPJs8g8YEoLcszg1mMNDOzmU6nY,13084
96
+ dycw_utilities-0.129.15.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
97
+ dycw_utilities-0.129.15.dist-info/licenses/LICENSE,sha256=gppZp16M6nSVpBbUBrNL6JuYfvKwZiKgV7XoKKsHzqo,1066
98
+ dycw_utilities-0.129.15.dist-info/RECORD,,
utilities/__init__.py CHANGED
@@ -1,3 +1,3 @@
1
1
  from __future__ import annotations
2
2
 
3
- __version__ = "0.129.14"
3
+ __version__ = "0.129.15"
utilities/asyncio.py CHANGED
@@ -55,7 +55,12 @@ from utilities.errors import repr_error
55
55
  from utilities.functions import ensure_int, ensure_not_none
56
56
  from utilities.random import SYSTEM_RANDOM
57
57
  from utilities.sentinel import Sentinel, sentinel
58
- from utilities.types import MaybeCallableEvent, THashable, TSupportsRichComparison
58
+ from utilities.types import (
59
+ MaybeCallableEvent,
60
+ MaybeType,
61
+ THashable,
62
+ TSupportsRichComparison,
63
+ )
59
64
 
60
65
  if TYPE_CHECKING:
61
66
  import datetime as dt
@@ -239,7 +244,7 @@ class EnhancedTaskGroup(TaskGroup):
239
244
 
240
245
  _semaphore: Semaphore | None
241
246
  _timeout: Duration | None
242
- _error: type[Exception]
247
+ _error: MaybeType[BaseException]
243
248
  _stack: AsyncExitStack
244
249
  _timeout_cm: _AsyncGeneratorContextManager[None] | None
245
250
 
@@ -249,7 +254,7 @@ class EnhancedTaskGroup(TaskGroup):
249
254
  *,
250
255
  max_tasks: int | None = None,
251
256
  timeout: Duration | None = None,
252
- error: type[Exception] = TimeoutError,
257
+ error: MaybeType[BaseException] = TimeoutError,
253
258
  ) -> None:
254
259
  super().__init__()
255
260
  self._semaphore = None if max_tasks is None else Semaphore(max_tasks)
@@ -1051,7 +1056,7 @@ async def _stream_one(
1051
1056
 
1052
1057
  @asynccontextmanager
1053
1058
  async def timeout_dur(
1054
- *, duration: Duration | None = None, error: type[Exception] = TimeoutError
1059
+ *, duration: Duration | None = None, error: MaybeType[BaseException] = TimeoutError
1055
1060
  ) -> AsyncIterator[None]:
1056
1061
  """Timeout context manager which accepts durations."""
1057
1062
  delay = None if duration is None else datetime_duration_to_float(duration)
utilities/redis.py CHANGED
@@ -53,7 +53,7 @@ if TYPE_CHECKING:
53
53
  from redis.typing import EncodableT, ResponseT
54
54
 
55
55
  from utilities.iterables import MaybeIterable
56
- from utilities.types import Duration, TypeLike
56
+ from utilities.types import Duration, MaybeType, TypeLike
57
57
 
58
58
 
59
59
  _K = TypeVar("_K")
@@ -90,7 +90,7 @@ class RedisHashMapKey(Generic[_K, _V]):
90
90
  value_serializer: Callable[[_V], bytes] | None = None
91
91
  value_deserializer: Callable[[bytes], _V] | None = None
92
92
  timeout: Duration | None = None
93
- error: type[Exception] = TimeoutError
93
+ error: MaybeType[BaseException] = TimeoutError
94
94
  ttl: Duration | None = None
95
95
 
96
96
  async def delete(self, redis: Redis, key: _K, /) -> int:
@@ -402,7 +402,7 @@ class RedisKey(Generic[_T]):
402
402
  serializer: Callable[[_T], bytes] | None = None
403
403
  deserializer: Callable[[bytes], _T] | None = None
404
404
  timeout: Duration | None = None
405
- error: type[Exception] = TimeoutError
405
+ error: MaybeType[BaseException] = TimeoutError
406
406
  ttl: Duration | None = None
407
407
 
408
408
  async def delete(self, redis: Redis, /) -> int:
utilities/sqlalchemy.py CHANGED
@@ -82,7 +82,13 @@ from utilities.iterables import (
82
82
  )
83
83
  from utilities.reprlib import get_repr
84
84
  from utilities.text import snake_case
85
- from utilities.types import Duration, MaybeIterable, StrMapping, TupleOrStrMapping
85
+ from utilities.types import (
86
+ Duration,
87
+ MaybeIterable,
88
+ MaybeType,
89
+ StrMapping,
90
+ TupleOrStrMapping,
91
+ )
86
92
 
87
93
  _T = TypeVar("_T")
88
94
  type _EngineOrConnectionOrAsync = Engine | Connection | AsyncEngine | AsyncConnection
@@ -830,7 +836,7 @@ async def yield_connection(
830
836
  /,
831
837
  *,
832
838
  timeout: Duration | None = None,
833
- error: type[Exception] = TimeoutError,
839
+ error: MaybeType[BaseException] = TimeoutError,
834
840
  ) -> AsyncIterator[AsyncConnection]:
835
841
  """Yield an async connection."""
836
842
  async with timeout_dur(duration=timeout, error=error), engine.begin() as conn:
@@ -68,7 +68,7 @@ if TYPE_CHECKING:
68
68
  from tenacity.wait import WaitBaseT
69
69
 
70
70
  import utilities.types
71
- from utilities.types import TimeZoneLike
71
+ from utilities.types import MaybeType, TimeZoneLike
72
72
 
73
73
 
74
74
  async def insert_dataframe(
@@ -303,7 +303,7 @@ async def select_to_dataframe(
303
303
  in_clauses_chunk_size: int | None = None,
304
304
  chunk_size_frac: float = CHUNK_SIZE_FRAC,
305
305
  timeout: utilities.types.Duration | None = None,
306
- error: type[Exception] = TimeoutError,
306
+ error: MaybeType[BaseException] = TimeoutError,
307
307
  **kwargs: Any,
308
308
  ) -> DataFrame | Iterable[DataFrame] | AsyncIterable[DataFrame]:
309
309
  """Read a table from a database into a DataFrame."""