dycw-utilities 0.151.7__py3-none-any.whl → 0.151.8__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.
- {dycw_utilities-0.151.7.dist-info → dycw_utilities-0.151.8.dist-info}/METADATA +1 -1
- {dycw_utilities-0.151.7.dist-info → dycw_utilities-0.151.8.dist-info}/RECORD +38 -38
- utilities/__init__.py +1 -1
- utilities/atomicwrites.py +1 -1
- utilities/click.py +12 -12
- utilities/concurrent.py +1 -1
- utilities/contextlib.py +1 -1
- utilities/dataclasses.py +4 -4
- utilities/enum.py +2 -2
- utilities/errors.py +1 -1
- utilities/eventkit.py +2 -2
- utilities/functions.py +1 -1
- utilities/inflect.py +1 -1
- utilities/iterables.py +6 -6
- utilities/json.py +1 -1
- utilities/libcst.py +6 -6
- utilities/math.py +3 -3
- utilities/more_itertools.py +2 -2
- utilities/orjson.py +5 -5
- utilities/os.py +2 -2
- utilities/pathlib.py +3 -3
- utilities/period.py +2 -2
- utilities/platform.py +3 -3
- utilities/polars.py +14 -14
- utilities/postgres.py +3 -3
- utilities/pqdm.py +1 -1
- utilities/pytest.py +1 -1
- utilities/pytest_regressions.py +1 -1
- utilities/re.py +1 -1
- utilities/sqlalchemy_polars.py +1 -1
- utilities/string.py +1 -1
- utilities/typed_settings.py +1 -1
- utilities/version.py +1 -1
- utilities/whenever.py +19 -19
- utilities/zoneinfo.py +1 -1
- {dycw_utilities-0.151.7.dist-info → dycw_utilities-0.151.8.dist-info}/WHEEL +0 -0
- {dycw_utilities-0.151.7.dist-info → dycw_utilities-0.151.8.dist-info}/entry_points.txt +0 -0
- {dycw_utilities-0.151.7.dist-info → dycw_utilities-0.151.8.dist-info}/licenses/LICENSE +0 -0
@@ -1,23 +1,23 @@
|
|
1
|
-
utilities/__init__.py,sha256=
|
1
|
+
utilities/__init__.py,sha256=4kiNe54mu65BdlIWO3fy88xeEWBui4WvuRPhgdV-gOA,60
|
2
2
|
utilities/altair.py,sha256=92E2lCdyHY4Zb-vCw6rEJIsWdKipuu-Tu2ab1ufUfAk,9079
|
3
3
|
utilities/asyncio.py,sha256=2m2a2C-Qgc6OHTTHL332-t66A7xDITt_SORT7a1DJWo,16792
|
4
|
-
utilities/atomicwrites.py,sha256=
|
4
|
+
utilities/atomicwrites.py,sha256=tPo6r-Rypd9u99u66B9z86YBPpnLrlHtwox_8Z7T34Y,5790
|
5
5
|
utilities/atools.py,sha256=6neeCcgXxK2dlsc0xp15Za7nSucbCgFtAJepGI_-WXU,2549
|
6
6
|
utilities/cachetools.py,sha256=v1-9sXHLdOLiwmkq6NB0OUbxeKBuVVN6wmAWefWoaHI,2744
|
7
|
-
utilities/click.py,sha256=
|
8
|
-
utilities/concurrent.py,sha256=
|
9
|
-
utilities/contextlib.py,sha256=
|
7
|
+
utilities/click.py,sha256=NXGzWoFOJqIblGwFqSGgXEDCKoV8E_JR58Lu2xJJFAo,17309
|
8
|
+
utilities/concurrent.py,sha256=fHeW2SZ_TEMfFY0C8pyQI6aPlnecvx9x6SuUwBWj_JY,2853
|
9
|
+
utilities/contextlib.py,sha256=m2D5bwvtCZLJcJ3IwVqyErYODuwJ1gLrT2UfATAQl-w,7435
|
10
10
|
utilities/contextvars.py,sha256=J8OhC7jqozAGYOCe2KUWysbPXNGe5JYz3HfaY_mIs08,883
|
11
11
|
utilities/cryptography.py,sha256=_CiK_K6c_-uQuUhsUNjNjTL-nqxAh4_1zTfS11Xe120,972
|
12
12
|
utilities/cvxpy.py,sha256=Rv1-fD-XYerosCavRF8Pohop2DBkU3AlFaGTfD8AEAA,13776
|
13
|
-
utilities/dataclasses.py,sha256=
|
13
|
+
utilities/dataclasses.py,sha256=G05UH-fqUbcRPjQ8arK6K0Ap2fRbzEm0SZahJKCqYfY,32643
|
14
14
|
utilities/dnspython.py,sha256=HfFaxjA_25XhjsTM5Bg03GCFatKzL8dOV4E0c9oMsho,384
|
15
|
-
utilities/enum.py,sha256=
|
16
|
-
utilities/errors.py,sha256=
|
17
|
-
utilities/eventkit.py,sha256=
|
15
|
+
utilities/enum.py,sha256=5l6pwZD1cjSlVW4ss-zBPspWvrbrYrdtJWcg6f5_J5w,5781
|
16
|
+
utilities/errors.py,sha256=mFlDGSM0LI1jZ1pbqwLAH3ttLZ2JVIxyZLojw8tGVZU,1479
|
17
|
+
utilities/eventkit.py,sha256=FRCZisJfY9hAS9GHV4ZO3ZHDs89XZod7Xf99WzBt7jQ,12636
|
18
18
|
utilities/fastapi.py,sha256=3wpd63Tw9paSyy7STpAD7GGe8fLkLaRC6TPCwIGm1BU,1361
|
19
19
|
utilities/fpdf2.py,sha256=776PkEX5xEK-whFOzqaVaQVHPy1Xf01kCSyj7TEp80g,1886
|
20
|
-
utilities/functions.py,sha256=
|
20
|
+
utilities/functions.py,sha256=UII45tzfqchSsQs1Tfm1NANFlF11m16gaNeV5MzM1ZY,28528
|
21
21
|
utilities/functools.py,sha256=I00ru2gQPakZw2SHVeKIKXfTv741655s6HI0lUoE0D4,1552
|
22
22
|
utilities/getpass.py,sha256=DfN5UgMAtFCqS3dSfFHUfqIMZX2shXvwphOz_6J6f6A,103
|
23
23
|
utilities/gzip.py,sha256=fkGP3KdsBfXlstodT4wtlp-PwNyUsogpbDCVVVGdsm4,781
|
@@ -25,40 +25,40 @@ utilities/hashlib.py,sha256=SVTgtguur0P4elppvzOBbLEjVM3Pea0eWB61yg2ilxo,309
|
|
25
25
|
utilities/http.py,sha256=TsavEfHlRtlLaeV21Z6KZh0qbPw-kvD1zsQdZ7Kep5Q,977
|
26
26
|
utilities/hypothesis.py,sha256=muEtgWd8ZR7z4Iv-demKK3dBJY6dC26FYIzNcDd0ViE,40267
|
27
27
|
utilities/importlib.py,sha256=mV1xT_O_zt_GnZZ36tl3xOmMaN_3jErDWY54fX39F6Y,429
|
28
|
-
utilities/inflect.py,sha256=
|
28
|
+
utilities/inflect.py,sha256=v7YkOWSu8NAmVghPcf4F3YBZQoJCS47_DLf9jbfWIs0,581
|
29
29
|
utilities/ipython.py,sha256=V2oMYHvEKvlNBzxDXdLvKi48oUq2SclRg5xasjaXStw,763
|
30
|
-
utilities/iterables.py,sha256=
|
31
|
-
utilities/json.py,sha256
|
30
|
+
utilities/iterables.py,sha256=6PFrb2fx1As22iCnlcUv35heGVpnRpiSObJFUmO9GDc,43922
|
31
|
+
utilities/json.py,sha256=-WcGtSsCr9Y42wHZzAMnfvU6ihAfVftylFfRUORaDFo,2102
|
32
32
|
utilities/jupyter.py,sha256=ft5JA7fBxXKzP-L9W8f2-wbF0QeYc_2uLQNFDVk4Z-M,2917
|
33
|
-
utilities/libcst.py,sha256=
|
33
|
+
utilities/libcst.py,sha256=TKgKN4bNmtBNEE-TUfhTyd1BrTncfsl_7tTuhpesGYY,5585
|
34
34
|
utilities/lightweight_charts.py,sha256=YM3ojBvJxuCSUBu_KrhFBmaMCvRPvupKC3qkm-UVZq4,2751
|
35
35
|
utilities/logging.py,sha256=6Rv6Mt7peHWPZ-wYNUvXQt67QXCOpVXdnkgT88XKiKQ,19416
|
36
|
-
utilities/math.py,sha256=
|
36
|
+
utilities/math.py,sha256=7ve4RxX3g-FGGVnWV0K9bBeGnKUEjnTbH13VxdvFtGE,26847
|
37
37
|
utilities/memory_profiler.py,sha256=XzN56jDCa5aqXS_DxEjb_K4L6aIWh_5zyKi6OhcIxw0,853
|
38
38
|
utilities/modules.py,sha256=iuvLluJya-hvl1Q25-Jk3dLgx2Es3ck4SjJiEkAlVTs,3195
|
39
|
-
utilities/more_itertools.py,sha256=
|
39
|
+
utilities/more_itertools.py,sha256=rklJ5vpvXr_H5pAGpWmwVpqtBVehoJ0-jBGYsZbux3M,10927
|
40
40
|
utilities/numpy.py,sha256=Xn23sA2ZbVNqwUYEgNJD3XBYH6IbCri_WkHSNhg3NkY,26122
|
41
41
|
utilities/operator.py,sha256=nhxn5q6CFNzUm1wpTwWPCu9JGCqVHSlaJf0o1-efoII,3616
|
42
42
|
utilities/optuna.py,sha256=C-fhWYiXHVPo1l8QctYkFJ4DyhbSrGorzP1dJb_qvd8,1933
|
43
|
-
utilities/orjson.py,sha256=
|
44
|
-
utilities/os.py,sha256=
|
43
|
+
utilities/orjson.py,sha256=Gzxn-s55pGFKV8DdsYXpp-Gr3r-5KdacYUd_GHMBogM,40088
|
44
|
+
utilities/os.py,sha256=mFvjydySvjtSXpk7tLStUJcndauAoujxUUmj_CO7LWY,3778
|
45
45
|
utilities/parse.py,sha256=JcJn5yXKhIWXBCwgBdPsyu7Hvcuw6kyEdqvaebCaI9k,17951
|
46
|
-
utilities/pathlib.py,sha256=
|
47
|
-
utilities/period.py,sha256=
|
46
|
+
utilities/pathlib.py,sha256=77wT9naY2Nnrbar8nJiIYd2r3MfabMQM9VguuuivrdQ,8481
|
47
|
+
utilities/period.py,sha256=LMN6gIo4QpkXpYnuXMItWzNqjkb6R47FHV1B-5Rndc0,10117
|
48
48
|
utilities/pickle.py,sha256=MBT2xZCsv0pH868IXLGKnlcqNx2IRVKYNpRcqiQQqxw,653
|
49
|
-
utilities/platform.py,sha256=
|
50
|
-
utilities/polars.py,sha256=
|
49
|
+
utilities/platform.py,sha256=pTn7gw6N4T6LdKrf0virwarof_mze9WtoQlrGMzhGVI,2798
|
50
|
+
utilities/polars.py,sha256=x4x3i08ldcDyKVEa8rcyAyacHKjok30K2v79yhoIn2Y,73243
|
51
51
|
utilities/polars_ols.py,sha256=Uc9V5kvlWZ5cU93lKZ-cfAKdVFFw81tqwLW9PxtUvMs,5618
|
52
|
-
utilities/postgres.py,sha256=
|
52
|
+
utilities/postgres.py,sha256=juXaOguCCX4oAw4y2JajRVIhhKKZarCyapNyyr4Tn4Q,12538
|
53
53
|
utilities/pottery.py,sha256=u0uvyGgYyujxftEMlsv6ppYTKQoVVjHt5jnVxxYz9s4,6596
|
54
|
-
utilities/pqdm.py,sha256=
|
54
|
+
utilities/pqdm.py,sha256=z8bSMS7QJmWun65FQZruAqT-R3wqPAzNzhWcX9Nvr0A,3087
|
55
55
|
utilities/psutil.py,sha256=KUlu4lrUw9Zg1V7ZGetpWpGb9DB8l_SSDWGbANFNCPU,2104
|
56
56
|
utilities/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
57
57
|
utilities/pyinstrument.py,sha256=E3U4T6qzTGVcGzAiShl9BL3acO-uu_dHZVgSbkSBd7A,864
|
58
|
-
utilities/pytest.py,sha256=
|
59
|
-
utilities/pytest_regressions.py,sha256=
|
58
|
+
utilities/pytest.py,sha256=xR-xG5aTfU9U7Qcb8Lle8uhLP1V0zc8EqZFfU0F8zfg,7899
|
59
|
+
utilities/pytest_regressions.py,sha256=ocjHTtfOeiGfQAKIei8pKNd61sxN9dawrJJ9gPt2wzA,4097
|
60
60
|
utilities/random.py,sha256=YWYzWxQDeyJRiuHGnO1OxF6dDucpq7qc1tH_ealwCRg,4130
|
61
|
-
utilities/re.py,sha256=
|
61
|
+
utilities/re.py,sha256=S4h-DLL6ScMPqjboZ_uQ1BVTJajrqV06r_81D--_HCE,4573
|
62
62
|
utilities/redis.py,sha256=SyC1TZdQBsQLe7nevX6x-y0CgEFulQ76H1fA_dFfuks,28419
|
63
63
|
utilities/reprlib.py,sha256=ssYTcBW-TeRh3fhCJv57sopTZHF5FrPyyUg9yp5XBlo,3953
|
64
64
|
utilities/scipy.py,sha256=wZJM7fEgBAkLSYYvSmsg5ac-QuwAI0BGqHVetw1_Hb0,947
|
@@ -67,30 +67,30 @@ 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
69
|
utilities/sqlalchemy.py,sha256=QbCFKefrkkqL23iDF5WdOKRfISMj6c-SyrI3rvBATE4,39641
|
70
|
-
utilities/sqlalchemy_polars.py,sha256=
|
70
|
+
utilities/sqlalchemy_polars.py,sha256=Mm-sShZfqqgnzTrupMQdCfSM2akrybXHXAErTs-ofM8,14244
|
71
71
|
utilities/statsmodels.py,sha256=koyiBHvpMcSiBfh99wFUfSggLNx7cuAw3rwyfAhoKpQ,3410
|
72
|
-
utilities/string.py,sha256=
|
72
|
+
utilities/string.py,sha256=shmBK87zZwzGyixuNuXCiUbqzfeZ9xlrFwz6JTaRvDk,582
|
73
73
|
utilities/tempfile.py,sha256=HxB2BF28CcecDJLQ3Bx2Ej-Pb6RJc6W9ngSpB9CnP4k,2018
|
74
74
|
utilities/text.py,sha256=4EOtSnfU0z09WANxjVO8Td54VNNe1sS4dWCa7VUo4HI,11794
|
75
75
|
utilities/threading.py,sha256=GvBOp4CyhHfN90wGXZuA2VKe9fGzMaEa7oCl4f3nnPU,1009
|
76
76
|
utilities/timer.py,sha256=oXfTii6ymu57niP0BDGZjFD55LEHi2a19kqZKiTgaFQ,2588
|
77
77
|
utilities/traceback.py,sha256=zofhzIedpUHrzDNiRJDVzm_wuu_tlTQvVqK4quxVlgM,9151
|
78
|
-
utilities/typed_settings.py,sha256=
|
78
|
+
utilities/typed_settings.py,sha256=ZzzlMgPntnGv6kAn0mGp43nHJCnU99V_8152QmpH9tY,4476
|
79
79
|
utilities/types.py,sha256=4bHcAF4OVMjnaY9SAj8_bKiHfj6YurD6Y3cipV-5yFE,18551
|
80
80
|
utilities/typing.py,sha256=Z-_XDaWyT_6wIo3qfNK-hvRlzxP2Jxa9PgXzm5rDYRA,13790
|
81
81
|
utilities/tzdata.py,sha256=fgNVj66yUbCSI_-vrRVzSD3gtf-L_8IEJEPjP_Jel5Y,266
|
82
82
|
utilities/tzlocal.py,sha256=KyCXEgCTjqGFx-389JdTuhMRUaT06U1RCMdWoED-qro,728
|
83
83
|
utilities/uuid.py,sha256=32p7DGHGM2Btx6PcBvCZvERSWbpupMXqx6FppPoSoTU,612
|
84
|
-
utilities/version.py,sha256=
|
84
|
+
utilities/version.py,sha256=A8iLeY2kfj1mxjFyKJowiYrWKstJ5smoBj9QM93cUwI,5112
|
85
85
|
utilities/warnings.py,sha256=un1LvHv70PU-LLv8RxPVmugTzDJkkGXRMZTE2-fTQHw,1771
|
86
|
-
utilities/whenever.py,sha256=
|
86
|
+
utilities/whenever.py,sha256=oBQziaMsvIozFfpwaJ8nm2oFrAkhnN6Zm4ypMuwBqiA,44678
|
87
87
|
utilities/zipfile.py,sha256=24lQc9ATcJxHXBPc_tBDiJk48pWyRrlxO2fIsFxU0A8,699
|
88
|
-
utilities/zoneinfo.py,sha256=
|
88
|
+
utilities/zoneinfo.py,sha256=FBMcUQ4662Aq8SsuCL1OAhDQiyANmVjtb-C30DRrWoE,1966
|
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.151.
|
93
|
-
dycw_utilities-0.151.
|
94
|
-
dycw_utilities-0.151.
|
95
|
-
dycw_utilities-0.151.
|
96
|
-
dycw_utilities-0.151.
|
92
|
+
dycw_utilities-0.151.8.dist-info/METADATA,sha256=_O8sp46Zj82B4X3XXMKjrRoSPcCxTj-uG_ulUBEaXKc,1696
|
93
|
+
dycw_utilities-0.151.8.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
94
|
+
dycw_utilities-0.151.8.dist-info/entry_points.txt,sha256=BOD_SoDxwsfJYOLxhrSXhHP_T7iw-HXI9f2WVkzYxvQ,135
|
95
|
+
dycw_utilities-0.151.8.dist-info/licenses/LICENSE,sha256=gppZp16M6nSVpBbUBrNL6JuYfvKwZiKgV7XoKKsHzqo,1066
|
96
|
+
dycw_utilities-0.151.8.dist-info/RECORD,,
|
utilities/__init__.py
CHANGED
utilities/atomicwrites.py
CHANGED
utilities/click.py
CHANGED
@@ -85,7 +85,7 @@ class Date(ParamType):
|
|
85
85
|
return whenever.Date.parse_common_iso(value)
|
86
86
|
except ValueError as error:
|
87
87
|
self.fail(str(error), param, ctx)
|
88
|
-
case
|
88
|
+
case never:
|
89
89
|
assert_never(never)
|
90
90
|
|
91
91
|
|
@@ -111,7 +111,7 @@ class DateDelta(ParamType):
|
|
111
111
|
return whenever.DateDelta.parse_common_iso(value)
|
112
112
|
except ValueError as error:
|
113
113
|
self.fail(str(error), param, ctx)
|
114
|
-
case
|
114
|
+
case never:
|
115
115
|
assert_never(never)
|
116
116
|
|
117
117
|
|
@@ -137,7 +137,7 @@ class DateTimeDelta(ParamType):
|
|
137
137
|
return whenever.DateTimeDelta.parse_common_iso(value)
|
138
138
|
except ValueError as error:
|
139
139
|
self.fail(str(error), param, ctx)
|
140
|
-
case
|
140
|
+
case never:
|
141
141
|
assert_never(never)
|
142
142
|
|
143
143
|
|
@@ -196,7 +196,7 @@ class IPv4Address(ParamType):
|
|
196
196
|
return parse_object(ipaddress.IPv4Address, value)
|
197
197
|
except ParseObjectError as error:
|
198
198
|
self.fail(str(error), param, ctx)
|
199
|
-
case
|
199
|
+
case never:
|
200
200
|
assert_never(never)
|
201
201
|
|
202
202
|
|
@@ -222,7 +222,7 @@ class IPv6Address(ParamType):
|
|
222
222
|
return parse_object(ipaddress.IPv6Address, value)
|
223
223
|
except ParseObjectError as error:
|
224
224
|
self.fail(str(error), param, ctx)
|
225
|
-
case
|
225
|
+
case never:
|
226
226
|
assert_never(never)
|
227
227
|
|
228
228
|
|
@@ -248,7 +248,7 @@ class MonthDay(ParamType):
|
|
248
248
|
return whenever.MonthDay.parse_common_iso(value)
|
249
249
|
except ValueError as error:
|
250
250
|
self.fail(str(error), param, ctx)
|
251
|
-
case
|
251
|
+
case never:
|
252
252
|
assert_never(never)
|
253
253
|
|
254
254
|
|
@@ -274,7 +274,7 @@ class PlainDateTime(ParamType):
|
|
274
274
|
return whenever.PlainDateTime.parse_common_iso(value)
|
275
275
|
except ValueError as error:
|
276
276
|
self.fail(str(error), param, ctx)
|
277
|
-
case
|
277
|
+
case never:
|
278
278
|
assert_never(never)
|
279
279
|
|
280
280
|
|
@@ -300,7 +300,7 @@ class Time(ParamType):
|
|
300
300
|
return whenever.Time.parse_common_iso(value)
|
301
301
|
except ValueError as error:
|
302
302
|
self.fail(str(error), param, ctx)
|
303
|
-
case
|
303
|
+
case never:
|
304
304
|
assert_never(never)
|
305
305
|
|
306
306
|
|
@@ -326,7 +326,7 @@ class TimeDelta(ParamType):
|
|
326
326
|
return whenever.TimeDelta.parse_common_iso(value)
|
327
327
|
except ValueError as error:
|
328
328
|
self.fail(str(error), param, ctx)
|
329
|
-
case
|
329
|
+
case never:
|
330
330
|
assert_never(never)
|
331
331
|
|
332
332
|
|
@@ -352,7 +352,7 @@ class UUID(ParamType):
|
|
352
352
|
return uuid.UUID(value)
|
353
353
|
except ValueError as error:
|
354
354
|
self.fail(str(error), param, ctx)
|
355
|
-
case
|
355
|
+
case never:
|
356
356
|
assert_never(never)
|
357
357
|
|
358
358
|
|
@@ -378,7 +378,7 @@ class YearMonth(ParamType):
|
|
378
378
|
return whenever.YearMonth.parse_common_iso(value)
|
379
379
|
except ValueError as error:
|
380
380
|
self.fail(str(error), param, ctx)
|
381
|
-
case
|
381
|
+
case never:
|
382
382
|
assert_never(never)
|
383
383
|
|
384
384
|
|
@@ -404,7 +404,7 @@ class ZonedDateTime(ParamType):
|
|
404
404
|
return whenever.ZonedDateTime.parse_common_iso(value)
|
405
405
|
except ValueError as error:
|
406
406
|
self.fail(str(error), param, ctx)
|
407
|
-
case
|
407
|
+
case never:
|
408
408
|
assert_never(never)
|
409
409
|
|
410
410
|
|
utilities/concurrent.py
CHANGED
utilities/contextlib.py
CHANGED
@@ -210,7 +210,7 @@ def _make_handler(
|
|
210
210
|
_ = loop.call_soon_threadsafe(
|
211
211
|
create_task, agcm.__aexit__(None, None, None)
|
212
212
|
)
|
213
|
-
case
|
213
|
+
case never:
|
214
214
|
assert_never(never)
|
215
215
|
if callable(orig_handler): # pragma: no cover
|
216
216
|
orig_handler(signum, frame)
|
utilities/dataclasses.py
CHANGED
@@ -214,7 +214,7 @@ def is_nullable_lt[T: SupportsLT](x: T | None, y: T | None, /) -> bool | None:
|
|
214
214
|
return True
|
215
215
|
case 0:
|
216
216
|
return None
|
217
|
-
case
|
217
|
+
case never:
|
218
218
|
assert_never(never)
|
219
219
|
|
220
220
|
|
@@ -520,7 +520,7 @@ def parse_dataclass[T: Dataclass](
|
|
520
520
|
)
|
521
521
|
case Mapping() as keys_to_serializes:
|
522
522
|
...
|
523
|
-
case
|
523
|
+
case never:
|
524
524
|
assert_never(never)
|
525
525
|
fields = list(
|
526
526
|
yield_fields(
|
@@ -1002,7 +1002,7 @@ def _empty_error_str_core(
|
|
1002
1002
|
return f"any field starting with {key!r}"
|
1003
1003
|
case True, False:
|
1004
1004
|
return f"any field starting with {key!r} (modulo case)"
|
1005
|
-
case
|
1005
|
+
case never:
|
1006
1006
|
assert_never(never)
|
1007
1007
|
|
1008
1008
|
|
@@ -1043,7 +1043,7 @@ def _non_unique_error_str_core(
|
|
1043
1043
|
head_msg = f"exactly one field starting with {key!r}"
|
1044
1044
|
case True, False:
|
1045
1045
|
head_msg = f"exactly one field starting with {key!r} (modulo case)"
|
1046
|
-
case
|
1046
|
+
case never:
|
1047
1047
|
assert_never(never)
|
1048
1048
|
return f"{head_msg}; got {first!r}, {second!r} and perhaps more"
|
1049
1049
|
|
utilities/enum.py
CHANGED
@@ -95,7 +95,7 @@ def parse_enum[E: Enum](
|
|
95
95
|
by_name=by_name.name,
|
96
96
|
by_value=by_value.name,
|
97
97
|
)
|
98
|
-
case
|
98
|
+
case never:
|
99
99
|
assert_never(never)
|
100
100
|
|
101
101
|
|
@@ -116,7 +116,7 @@ def _parse_enum_one[E: Enum](
|
|
116
116
|
names = [e.name for e in enum]
|
117
117
|
case "values":
|
118
118
|
names = [ensure_str(e.value) for e in enum]
|
119
|
-
case
|
119
|
+
case never:
|
120
120
|
assert_never(never)
|
121
121
|
try:
|
122
122
|
name = one_str(names, value, case_sensitive=case_sensitive)
|
utilities/errors.py
CHANGED
utilities/eventkit.py
CHANGED
@@ -359,9 +359,9 @@ def lift_listener[F1: Callable[..., MaybeCoro[None]], F2: Callable](
|
|
359
359
|
error_typed(event, exc)
|
360
360
|
|
361
361
|
lifted = listener_have_error_async
|
362
|
-
case
|
362
|
+
case never:
|
363
363
|
assert_never(never)
|
364
|
-
case
|
364
|
+
case never:
|
365
365
|
assert_never(never)
|
366
366
|
|
367
367
|
if decorators is not None:
|
utilities/functions.py
CHANGED
utilities/inflect.py
CHANGED
utilities/iterables.py
CHANGED
@@ -295,7 +295,7 @@ class CheckIterablesEqualError[T](Exception):
|
|
295
295
|
yield "right was longer"
|
296
296
|
case None:
|
297
297
|
pass
|
298
|
-
case
|
298
|
+
case never:
|
299
299
|
assert_never(never)
|
300
300
|
|
301
301
|
|
@@ -690,7 +690,7 @@ def cmp_nullable[T: SupportsLT](x: T | None, y: T | None, /) -> Sign:
|
|
690
690
|
return 1
|
691
691
|
case _, _:
|
692
692
|
return cast("Sign", (x > y) - (x < y))
|
693
|
-
case
|
693
|
+
case never:
|
694
694
|
assert_never(never)
|
695
695
|
|
696
696
|
|
@@ -1068,7 +1068,7 @@ def one_str(
|
|
1068
1068
|
it = (t for t in as_list if t.startswith(text))
|
1069
1069
|
case True, False:
|
1070
1070
|
it = (t for t in as_list if t.lower().startswith(text.lower()))
|
1071
|
-
case
|
1071
|
+
case never:
|
1072
1072
|
assert_never(never)
|
1073
1073
|
try:
|
1074
1074
|
return one(it)
|
@@ -1109,7 +1109,7 @@ class OneStrEmptyError(OneStrError):
|
|
1109
1109
|
tail = f"any string starting with {self.text!r}"
|
1110
1110
|
case True, False:
|
1111
1111
|
tail = f"any string starting with {self.text!r} (modulo case)"
|
1112
|
-
case
|
1112
|
+
case never:
|
1113
1113
|
assert_never(never)
|
1114
1114
|
return f"{head} {tail}"
|
1115
1115
|
|
@@ -1131,7 +1131,7 @@ class OneStrNonUniqueError(OneStrError):
|
|
1131
1131
|
mid = f"exactly one string starting with {self.text!r}"
|
1132
1132
|
case True, False:
|
1133
1133
|
mid = f"exactly one string starting with {self.text!r} (modulo case)"
|
1134
|
-
case
|
1134
|
+
case never:
|
1135
1135
|
assert_never(never)
|
1136
1136
|
return f"{head} {mid}; got {self.first!r}, {self.second!r} and perhaps more"
|
1137
1137
|
|
@@ -1382,7 +1382,7 @@ def _sort_iterable_cmp_floats(x: float, y: float, /) -> Sign:
|
|
1382
1382
|
return -1
|
1383
1383
|
case False, False:
|
1384
1384
|
return cast("Sign", (x > y) - (x < y))
|
1385
|
-
case
|
1385
|
+
case never:
|
1386
1386
|
assert_never(never)
|
1387
1387
|
|
1388
1388
|
|
utilities/json.py
CHANGED
utilities/libcst.py
CHANGED
@@ -54,7 +54,7 @@ def generate_import_from(
|
|
54
54
|
case _, str():
|
55
55
|
alias = ImportAlias(name=Name(name), asname=AsName(Name(asname)))
|
56
56
|
names = [alias]
|
57
|
-
case
|
57
|
+
case never:
|
58
58
|
assert_never(never)
|
59
59
|
return ImportFrom(module=split_dotted_str(module), names=names)
|
60
60
|
|
@@ -92,9 +92,9 @@ def parse_import(import_: Import | ImportFrom, /) -> Sequence[_ParseImportOutput
|
|
92
92
|
return [_parse_import_from_one(module, n) for n in names]
|
93
93
|
case ImportStar():
|
94
94
|
return [_ParseImportOutput(module=module, name="*")]
|
95
|
-
case
|
95
|
+
case never:
|
96
96
|
assert_never(never)
|
97
|
-
case
|
97
|
+
case never:
|
98
98
|
assert_never(never)
|
99
99
|
|
100
100
|
|
@@ -108,7 +108,7 @@ def _parse_import_from_one(module: str, alias: ImportAlias, /) -> _ParseImportOu
|
|
108
108
|
return _ParseImportOutput(module=module, name=name)
|
109
109
|
case Attribute() as attr:
|
110
110
|
raise _ParseImportAliasError(module=module, attr=attr)
|
111
|
-
case
|
111
|
+
case never:
|
112
112
|
assert_never(never)
|
113
113
|
|
114
114
|
|
@@ -162,7 +162,7 @@ def join_dotted_str(name_or_attr: Name | Attribute, /) -> str:
|
|
162
162
|
curr = value
|
163
163
|
case BaseExpression(): # pragma: no cover
|
164
164
|
raise ImpossibleCaseError(case=[f"{curr=}"])
|
165
|
-
case
|
165
|
+
case never:
|
166
166
|
assert_never(never)
|
167
167
|
return ".".join(reversed(parts))
|
168
168
|
|
@@ -180,7 +180,7 @@ def render_module(source: str | Module, /) -> str:
|
|
180
180
|
return text
|
181
181
|
case Module() as module:
|
182
182
|
return render_module(module.code)
|
183
|
-
case
|
183
|
+
case never:
|
184
184
|
assert_never(never)
|
185
185
|
|
186
186
|
|
utilities/math.py
CHANGED
@@ -731,7 +731,7 @@ def round_(
|
|
731
731
|
return 0
|
732
732
|
case -1:
|
733
733
|
return floor(x)
|
734
|
-
case
|
734
|
+
case never:
|
735
735
|
assert_never(never)
|
736
736
|
case "standard-tie-floor":
|
737
737
|
return _round_tie_standard(x, "floor", rel_tol=rel_tol, abs_tol=abs_tol)
|
@@ -743,7 +743,7 @@ def round_(
|
|
743
743
|
)
|
744
744
|
case "standard-tie-away-zero":
|
745
745
|
return _round_tie_standard(x, "away-zero", rel_tol=rel_tol, abs_tol=abs_tol)
|
746
|
-
case
|
746
|
+
case never:
|
747
747
|
assert_never(never)
|
748
748
|
|
749
749
|
|
@@ -876,7 +876,7 @@ def sign(
|
|
876
876
|
if is_negative(x, rel_tol=rel_tol, abs_tol=abs_tol):
|
877
877
|
return -1
|
878
878
|
return 0
|
879
|
-
case
|
879
|
+
case never:
|
880
880
|
assert_never(never)
|
881
881
|
|
882
882
|
|
utilities/more_itertools.py
CHANGED
@@ -206,7 +206,7 @@ def bucket_mapping[T, U, UH: Hashable](
|
|
206
206
|
return {k: frozenset(map(pre, v)) for k, v in mapping.items()}
|
207
207
|
case Callable(), "unique":
|
208
208
|
return _bucket_mapping_unique({k: map(pre, v) for k, v in mapping.items()})
|
209
|
-
case
|
209
|
+
case never:
|
210
210
|
assert_never(never)
|
211
211
|
|
212
212
|
|
@@ -374,7 +374,7 @@ def _yield_splits2[T](
|
|
374
374
|
len_tail = max(len_win - head, 0)
|
375
375
|
if len_tail >= 1:
|
376
376
|
yield window, head, len_tail
|
377
|
-
case
|
377
|
+
case never:
|
378
378
|
assert_never(never)
|
379
379
|
|
380
380
|
|
utilities/orjson.py
CHANGED
@@ -564,7 +564,7 @@ def _object_hook(
|
|
564
564
|
)
|
565
565
|
for k, v in mapping.items()
|
566
566
|
}
|
567
|
-
case
|
567
|
+
case never:
|
568
568
|
assert_never(never)
|
569
569
|
|
570
570
|
|
@@ -1006,7 +1006,7 @@ class GetLogRecordsOutput:
|
|
1006
1006
|
for r in records
|
1007
1007
|
if (r.func_name is not None) and search(func_name, r.func_name)
|
1008
1008
|
]
|
1009
|
-
case
|
1009
|
+
case never:
|
1010
1010
|
assert_never(never)
|
1011
1011
|
if extra is not None:
|
1012
1012
|
match extra:
|
@@ -1019,7 +1019,7 @@ class GetLogRecordsOutput:
|
|
1019
1019
|
if (r.extra is not None)
|
1020
1020
|
and set(r.extra).issuperset(always_iterable(keys))
|
1021
1021
|
]
|
1022
|
-
case
|
1022
|
+
case never:
|
1023
1023
|
assert_never(never)
|
1024
1024
|
if log_file is not None:
|
1025
1025
|
match log_file:
|
@@ -1034,7 +1034,7 @@ class GetLogRecordsOutput:
|
|
1034
1034
|
if (r.log_file is not None)
|
1035
1035
|
and search(str(log_file), str(r.log_file))
|
1036
1036
|
]
|
1037
|
-
case
|
1037
|
+
case never:
|
1038
1038
|
assert_never(never)
|
1039
1039
|
if log_file_line_num is not None:
|
1040
1040
|
match log_file_line_num:
|
@@ -1048,7 +1048,7 @@ class GetLogRecordsOutput:
|
|
1048
1048
|
records = [
|
1049
1049
|
r for r in records if r.log_file_line_num == log_file_line_num
|
1050
1050
|
]
|
1051
|
-
case
|
1051
|
+
case never:
|
1052
1052
|
assert_never(never)
|
1053
1053
|
if min_log_file_line_num is not None:
|
1054
1054
|
records = [
|
utilities/os.py
CHANGED
@@ -48,7 +48,7 @@ def get_cpu_use(*, n: IntOrAll = "all") -> int:
|
|
48
48
|
raise GetCPUUseError(n=n)
|
49
49
|
case "all":
|
50
50
|
return CPU_COUNT
|
51
|
-
case
|
51
|
+
case never:
|
52
52
|
assert_never(never)
|
53
53
|
|
54
54
|
|
@@ -105,7 +105,7 @@ def get_env_var(
|
|
105
105
|
return None
|
106
106
|
case str(), _:
|
107
107
|
return default
|
108
|
-
case
|
108
|
+
case never:
|
109
109
|
assert_never(never)
|
110
110
|
return environ[key_use]
|
111
111
|
|
utilities/pathlib.py
CHANGED
@@ -69,7 +69,7 @@ def get_path(
|
|
69
69
|
return Path.cwd()
|
70
70
|
case Callable() as func:
|
71
71
|
return get_path(path=func())
|
72
|
-
case
|
72
|
+
case never:
|
73
73
|
assert_never(never)
|
74
74
|
|
75
75
|
|
@@ -164,7 +164,7 @@ def get_root(*, path: MaybeCallablePathLike | None = None) -> Path:
|
|
164
164
|
raise ImpossibleCaseError( # pragma: no cover
|
165
165
|
case=[f"{repo=}", f"{package=}"]
|
166
166
|
)
|
167
|
-
case
|
167
|
+
case never:
|
168
168
|
assert_never(never)
|
169
169
|
|
170
170
|
|
@@ -213,7 +213,7 @@ def get_tail(
|
|
213
213
|
return _get_tail_core(path, next(iter(matches)))
|
214
214
|
case _, "later":
|
215
215
|
return _get_tail_core(path, next(iter(reversed(matches))))
|
216
|
-
case
|
216
|
+
case never:
|
217
217
|
assert_never(never)
|
218
218
|
|
219
219
|
|
utilities/period.py
CHANGED
@@ -58,7 +58,7 @@ class DatePeriod:
|
|
58
58
|
start = end = time
|
59
59
|
case Time() as start, Time() as end:
|
60
60
|
...
|
61
|
-
case
|
61
|
+
case never:
|
62
62
|
assert_never(never)
|
63
63
|
tz = ensure_time_zone(time_zone).key
|
64
64
|
return ZonedDateTimePeriod(
|
@@ -119,7 +119,7 @@ class TimePeriod:
|
|
119
119
|
start = end = date
|
120
120
|
case Date() as start, Date() as end:
|
121
121
|
...
|
122
|
-
case
|
122
|
+
case never:
|
123
123
|
assert_never(never)
|
124
124
|
return DatePeriod(start, end).at((self.start, self.end), time_zone=time_zone)
|
125
125
|
|
utilities/platform.py
CHANGED
@@ -61,7 +61,7 @@ def get_max_pid() -> int | None:
|
|
61
61
|
return int(path.read_text())
|
62
62
|
except FileNotFoundError: # pragma: no cover
|
63
63
|
return None
|
64
|
-
case
|
64
|
+
case never:
|
65
65
|
assert_never(never)
|
66
66
|
|
67
67
|
|
@@ -80,7 +80,7 @@ def get_strftime(text: str, /) -> str:
|
|
80
80
|
return text
|
81
81
|
case "linux": # skipif-not-linux
|
82
82
|
return sub("%Y", "%4Y", text)
|
83
|
-
case
|
83
|
+
case never:
|
84
84
|
assert_never(never)
|
85
85
|
|
86
86
|
|
@@ -96,7 +96,7 @@ def maybe_yield_lower_case(text: Iterable[str], /) -> Iterator[str]:
|
|
96
96
|
yield from (t.lower() for t in text)
|
97
97
|
case "linux": # skipif-not-linux
|
98
98
|
yield from text
|
99
|
-
case
|
99
|
+
case never:
|
100
100
|
assert_never(never)
|
101
101
|
|
102
102
|
|
utilities/polars.py
CHANGED
@@ -208,7 +208,7 @@ def acf(
|
|
208
208
|
df_confints = _acf_process_confints(confints)
|
209
209
|
df_qstats_pvalues = _acf_process_qstats_pvalues(qstats, pvalues)
|
210
210
|
return join(df_acfs, df_confints, df_qstats_pvalues, on=["lag"], how="left")
|
211
|
-
case
|
211
|
+
case never:
|
212
212
|
assert_never(never)
|
213
213
|
|
214
214
|
|
@@ -345,7 +345,7 @@ def bernoulli(
|
|
345
345
|
return bernoulli(series.len(), true=true, seed=seed, name=name)
|
346
346
|
case DataFrame() as df:
|
347
347
|
return bernoulli(df.height, true=true, seed=seed, name=name)
|
348
|
-
case
|
348
|
+
case never:
|
349
349
|
assert_never(never)
|
350
350
|
|
351
351
|
|
@@ -379,7 +379,7 @@ def boolean_value_counts(
|
|
379
379
|
(false / total).alias("false (%)"),
|
380
380
|
(null / total).alias("null (%)"),
|
381
381
|
)
|
382
|
-
case
|
382
|
+
case never:
|
383
383
|
assert_never(never)
|
384
384
|
|
385
385
|
|
@@ -763,7 +763,7 @@ def choice(
|
|
763
763
|
name=name,
|
764
764
|
dtype=dtype,
|
765
765
|
)
|
766
|
-
case
|
766
|
+
case never:
|
767
767
|
assert_never(never)
|
768
768
|
|
769
769
|
|
@@ -899,7 +899,7 @@ def _cross_or_touch(
|
|
899
899
|
...
|
900
900
|
case str() | Expr() | Series():
|
901
901
|
other = ensure_expr_or_series(other)
|
902
|
-
case
|
902
|
+
case never:
|
903
903
|
assert_never(never)
|
904
904
|
enough = int_range(end=pl.len()) >= 1
|
905
905
|
match cross_or_touch, up_or_down:
|
@@ -911,7 +911,7 @@ def _cross_or_touch(
|
|
911
911
|
current = expr >= other
|
912
912
|
case "touch", "down":
|
913
913
|
current = expr <= other
|
914
|
-
case
|
914
|
+
case never:
|
915
915
|
assert_never(never)
|
916
916
|
prev = current.shift()
|
917
917
|
result = when(enough & expr.is_finite()).then(current & ~prev)
|
@@ -1338,7 +1338,7 @@ def get_data_type_or_series_time_zone(
|
|
1338
1338
|
dtype = dtype_cls()
|
1339
1339
|
case Series() as series:
|
1340
1340
|
dtype = series.dtype
|
1341
|
-
case
|
1341
|
+
case never:
|
1342
1342
|
assert_never(never)
|
1343
1343
|
match dtype:
|
1344
1344
|
case Datetime() as datetime:
|
@@ -1400,7 +1400,7 @@ def get_expr_name(obj: Series | DataFrame, expr: IntoExprColumn, /) -> str:
|
|
1400
1400
|
case DataFrame() as df:
|
1401
1401
|
selected = df.select(expr)
|
1402
1402
|
return one(selected.columns)
|
1403
|
-
case
|
1403
|
+
case never:
|
1404
1404
|
assert_never(never)
|
1405
1405
|
|
1406
1406
|
|
@@ -1598,7 +1598,7 @@ def integers(
|
|
1598
1598
|
name=name,
|
1599
1599
|
dtype=dtype,
|
1600
1600
|
)
|
1601
|
-
case
|
1601
|
+
case never:
|
1602
1602
|
assert_never(never)
|
1603
1603
|
|
1604
1604
|
|
@@ -1903,7 +1903,7 @@ def map_over_columns(
|
|
1903
1903
|
return _map_over_series_one(func, series)
|
1904
1904
|
case DataFrame() as df:
|
1905
1905
|
return df.select(*(_map_over_series_one(func, df[c]) for c in df.columns))
|
1906
|
-
case
|
1906
|
+
case never:
|
1907
1907
|
assert_never(never)
|
1908
1908
|
|
1909
1909
|
|
@@ -1983,7 +1983,7 @@ def normal(
|
|
1983
1983
|
return normal(
|
1984
1984
|
df.height, loc=loc, scale=scale, seed=seed, name=name, dtype=dtype
|
1985
1985
|
)
|
1986
|
-
case
|
1986
|
+
case never:
|
1987
1987
|
assert_never(never)
|
1988
1988
|
|
1989
1989
|
|
@@ -2215,7 +2215,7 @@ def _reconstruct_dtype(obj: _DeconDType, /) -> PolarsDataType:
|
|
2215
2215
|
return List(_reconstruct_dtype(inner))
|
2216
2216
|
case "Struct", inner:
|
2217
2217
|
return Struct(_reconstruct_schema(inner))
|
2218
|
-
case
|
2218
|
+
case never:
|
2219
2219
|
assert_never(never)
|
2220
2220
|
|
2221
2221
|
|
@@ -2345,7 +2345,7 @@ def try_reify_expr(
|
|
2345
2345
|
return series
|
2346
2346
|
case DataFrame() as df:
|
2347
2347
|
return df[get_expr_name(df, expr)]
|
2348
|
-
case
|
2348
|
+
case never:
|
2349
2349
|
assert_never(never)
|
2350
2350
|
|
2351
2351
|
|
@@ -2378,7 +2378,7 @@ def uniform(
|
|
2378
2378
|
return uniform(
|
2379
2379
|
df.height, low=low, high=high, seed=seed, name=name, dtype=dtype
|
2380
2380
|
)
|
2381
|
-
case
|
2381
|
+
case never:
|
2382
2382
|
assert_never(never)
|
2383
2383
|
|
2384
2384
|
|
utilities/postgres.py
CHANGED
@@ -190,7 +190,7 @@ def _path_pg_dump(path: PathLike, /, *, format_: _PGDumpFormat = "plain") -> Pat
|
|
190
190
|
suffix = None
|
191
191
|
case "tar":
|
192
192
|
suffix = ".tar"
|
193
|
-
case
|
193
|
+
case never:
|
194
194
|
assert_never(never)
|
195
195
|
path = Path(path)
|
196
196
|
if suffix is not None:
|
@@ -379,7 +379,7 @@ def _get_table_name(obj: TableOrORMInstOrClass | str, /) -> str:
|
|
379
379
|
return get_table_name(table_or_orm)
|
380
380
|
case str() as name:
|
381
381
|
return name
|
382
|
-
case
|
382
|
+
case never:
|
383
383
|
assert_never(never)
|
384
384
|
|
385
385
|
|
@@ -395,7 +395,7 @@ def _resolve_data_only_and_clean(
|
|
395
395
|
return ["--clean", "--if-exists"]
|
396
396
|
case True, True:
|
397
397
|
raise _ResolveDataOnlyAndCleanError
|
398
|
-
case
|
398
|
+
case never:
|
399
399
|
assert_never(never)
|
400
400
|
|
401
401
|
|
utilities/pqdm.py
CHANGED
utilities/pytest.py
CHANGED
utilities/pytest_regressions.py
CHANGED
@@ -117,7 +117,7 @@ class PolarsRegressionFixture:
|
|
117
117
|
data["approx_n_unique"] = approx_n_unique
|
118
118
|
data["glimpse"] = df.glimpse(return_as_string=True)
|
119
119
|
data["null_count"] = df.null_count().row(0, named=True)
|
120
|
-
case
|
120
|
+
case never:
|
121
121
|
assert_never(never)
|
122
122
|
self._fixture.check(data, suffix=suffix)
|
123
123
|
|
utilities/re.py
CHANGED
utilities/sqlalchemy_polars.py
CHANGED
utilities/string.py
CHANGED
@@ -13,7 +13,7 @@ def substitute_environ(path_or_text: Path | str, /, **kwargs: Any) -> str:
|
|
13
13
|
return substitute_environ(path.read_text(), **kwargs)
|
14
14
|
case str() as text:
|
15
15
|
return Template(text).substitute(environ, **kwargs)
|
16
|
-
case
|
16
|
+
case never:
|
17
17
|
assert_never(never)
|
18
18
|
|
19
19
|
|
utilities/typed_settings.py
CHANGED
utilities/version.py
CHANGED
utilities/whenever.py
CHANGED
@@ -214,7 +214,7 @@ def format_compact(
|
|
214
214
|
fmt_use = "%Y%m%dT%H%M%S" if fmt is None else fmt
|
215
215
|
case ZonedDateTime() as datetime:
|
216
216
|
return f"{format_compact(datetime.to_plain(), fmt=fmt)}[{datetime.tz}]"
|
217
|
-
case
|
217
|
+
case never:
|
218
218
|
assert_never(never)
|
219
219
|
return obj_use.strftime(get_strftime(fmt_use))
|
220
220
|
|
@@ -396,7 +396,7 @@ def round_date_or_date_time[T: Date | PlainDateTime | ZonedDateTime](
|
|
396
396
|
raise _RoundDateOrDateTimeDateTimeIntraDayWithWeekdayError(
|
397
397
|
date_time=date_time, delta=delta, weekday=weekday
|
398
398
|
)
|
399
|
-
case
|
399
|
+
case never:
|
400
400
|
assert_never(never)
|
401
401
|
|
402
402
|
|
@@ -490,7 +490,7 @@ def _round_date_weekly_or_daily(
|
|
490
490
|
return _round_date_daily(date, increment, mode=mode)
|
491
491
|
case "D", Weekday():
|
492
492
|
raise _RoundDateOrDateTimeDateWithWeekdayError(weekday=weekday)
|
493
|
-
case
|
493
|
+
case never:
|
494
494
|
assert_never(never)
|
495
495
|
|
496
496
|
|
@@ -536,7 +536,7 @@ def _round_date_daily(
|
|
536
536
|
threshold = increment // 2 + 1
|
537
537
|
case "half_ceil":
|
538
538
|
threshold = increment // 2 or 1
|
539
|
-
case
|
539
|
+
case never:
|
540
540
|
assert_never(never)
|
541
541
|
round_up = remainder >= threshold
|
542
542
|
return base.add(days=(quotient + round_up) * increment)
|
@@ -563,7 +563,7 @@ def _round_date_time_intraday[T: PlainDateTime | ZonedDateTime](
|
|
563
563
|
unit_use = "microsecond"
|
564
564
|
case "ns":
|
565
565
|
unit_use = "nanosecond"
|
566
|
-
case
|
566
|
+
case never:
|
567
567
|
assert_never(never)
|
568
568
|
return date_time.round(unit_use, increment=increment, mode=mode)
|
569
569
|
|
@@ -662,7 +662,7 @@ def to_date(
|
|
662
662
|
return date
|
663
663
|
case Callable() as func:
|
664
664
|
return to_date(date=func())
|
665
|
-
case
|
665
|
+
case never:
|
666
666
|
assert_never(never)
|
667
667
|
|
668
668
|
|
@@ -729,7 +729,7 @@ def to_days(delta: Delta, /) -> int:
|
|
729
729
|
raise _ToDaysNanosecondsError(
|
730
730
|
delta=delta, nanoseconds=error.nanoseconds
|
731
731
|
) from None
|
732
|
-
case
|
732
|
+
case never:
|
733
733
|
assert_never(never)
|
734
734
|
|
735
735
|
|
@@ -785,7 +785,7 @@ def to_hours(delta: Delta, /) -> int:
|
|
785
785
|
raise _ToHoursNanosecondsError(
|
786
786
|
delta=delta, nanoseconds=error.nanoseconds
|
787
787
|
) from None
|
788
|
-
case
|
788
|
+
case never:
|
789
789
|
assert_never(never)
|
790
790
|
|
791
791
|
|
@@ -856,7 +856,7 @@ def to_microseconds(delta: Delta, /) -> int:
|
|
856
856
|
raise _ToMicrosecondsNanosecondsError(
|
857
857
|
delta=delta, nanoseconds=error.nanoseconds
|
858
858
|
) from None
|
859
|
-
case
|
859
|
+
case never:
|
860
860
|
assert_never(never)
|
861
861
|
|
862
862
|
|
@@ -919,7 +919,7 @@ def to_milliseconds(delta: Delta, /) -> int:
|
|
919
919
|
raise _ToMillisecondsNanosecondsError(
|
920
920
|
delta=delta, nanoseconds=error.nanoseconds
|
921
921
|
) from None
|
922
|
-
case
|
922
|
+
case never:
|
923
923
|
assert_never(never)
|
924
924
|
|
925
925
|
|
@@ -974,7 +974,7 @@ def to_minutes(delta: Delta, /) -> int:
|
|
974
974
|
raise _ToMinutesNanosecondsError(
|
975
975
|
delta=delta, nanoseconds=error.nanoseconds
|
976
976
|
) from None
|
977
|
-
case
|
977
|
+
case never:
|
978
978
|
assert_never(never)
|
979
979
|
|
980
980
|
|
@@ -1020,7 +1020,7 @@ def to_months(delta: DateOrDateTimeDelta, /) -> int:
|
|
1020
1020
|
return to_months(delta.date_part())
|
1021
1021
|
except _ToMonthsDaysError as error:
|
1022
1022
|
raise _ToMonthsDaysError(delta=delta, days=error.days) from None
|
1023
|
-
case
|
1023
|
+
case never:
|
1024
1024
|
assert_never(never)
|
1025
1025
|
|
1026
1026
|
|
@@ -1059,7 +1059,7 @@ def to_months_and_days(delta: DateOrDateTimeDelta, /) -> tuple[int, int]:
|
|
1059
1059
|
if delta.time_part() != TimeDelta():
|
1060
1060
|
raise ToMonthsAndDaysError(delta=delta)
|
1061
1061
|
return to_months_and_days(delta.date_part())
|
1062
|
-
case
|
1062
|
+
case never:
|
1063
1063
|
assert_never(never)
|
1064
1064
|
|
1065
1065
|
|
@@ -1093,7 +1093,7 @@ def to_nanoseconds(delta: Delta, /) -> int:
|
|
1093
1093
|
)
|
1094
1094
|
except ToNanosecondsError as error:
|
1095
1095
|
raise ToNanosecondsError(delta=delta, months=error.months) from None
|
1096
|
-
case
|
1096
|
+
case never:
|
1097
1097
|
assert_never(never)
|
1098
1098
|
|
1099
1099
|
|
@@ -1127,7 +1127,7 @@ def to_py_date_or_date_time(
|
|
1127
1127
|
return date_time.py_datetime()
|
1128
1128
|
case None:
|
1129
1129
|
return None
|
1130
|
-
case
|
1130
|
+
case never:
|
1131
1131
|
assert_never(never)
|
1132
1132
|
|
1133
1133
|
|
@@ -1155,7 +1155,7 @@ def to_py_time_delta(delta: Delta | None, /) -> dt.timedelta | None:
|
|
1155
1155
|
)
|
1156
1156
|
case None:
|
1157
1157
|
return None
|
1158
|
-
case
|
1158
|
+
case never:
|
1159
1159
|
assert_never(never)
|
1160
1160
|
|
1161
1161
|
|
@@ -1273,7 +1273,7 @@ def to_seconds(delta: Delta, /) -> int:
|
|
1273
1273
|
raise _ToSecondsNanosecondsError(
|
1274
1274
|
delta=delta, nanoseconds=error.nanoseconds
|
1275
1275
|
) from None
|
1276
|
-
case
|
1276
|
+
case never:
|
1277
1277
|
assert_never(never)
|
1278
1278
|
|
1279
1279
|
|
@@ -1376,7 +1376,7 @@ def to_years(delta: DateOrDateTimeDelta, /) -> int:
|
|
1376
1376
|
raise _ToYearsMonthsError(delta=delta, months=error.months) from None
|
1377
1377
|
except _ToYearsDaysError as error:
|
1378
1378
|
raise _ToYearsDaysError(delta=delta, days=error.days) from None
|
1379
|
-
case
|
1379
|
+
case never:
|
1380
1380
|
assert_never(never)
|
1381
1381
|
|
1382
1382
|
|
@@ -1439,7 +1439,7 @@ def to_zoned_date_time(
|
|
1439
1439
|
raise ToZonedDateTimeError(date_time=date_time)
|
1440
1440
|
case Callable() as func:
|
1441
1441
|
return to_zoned_date_time(date_time=func())
|
1442
|
-
case
|
1442
|
+
case never:
|
1443
1443
|
assert_never(never)
|
1444
1444
|
return None
|
1445
1445
|
|
utilities/zoneinfo.py
CHANGED
File without changes
|
File without changes
|
File without changes
|