dycw-utilities 0.131.5__py3-none-any.whl → 0.131.6__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.131.5.dist-info → dycw_utilities-0.131.6.dist-info}/METADATA +1 -1
- {dycw_utilities-0.131.5.dist-info → dycw_utilities-0.131.6.dist-info}/RECORD +6 -6
- utilities/__init__.py +1 -1
- utilities/whenever2.py +71 -6
- {dycw_utilities-0.131.5.dist-info → dycw_utilities-0.131.6.dist-info}/WHEEL +0 -0
- {dycw_utilities-0.131.5.dist-info → dycw_utilities-0.131.6.dist-info}/licenses/LICENSE +0 -0
@@ -1,4 +1,4 @@
|
|
1
|
-
utilities/__init__.py,sha256=
|
1
|
+
utilities/__init__.py,sha256=IYqBm-WAwWhDKdOqlSq4UGAvQ_vBiK8qzv2Mq0YUuRo,60
|
2
2
|
utilities/aiolimiter.py,sha256=mD0wEiqMgwpty4XTbawFpnkkmJS6R4JRsVXFUaoitSU,628
|
3
3
|
utilities/altair.py,sha256=HeZBVUocjkrTNwwKrClppsIqgNFF-ykv05HfZSoHYno,9104
|
4
4
|
utilities/asyncio.py,sha256=lvdgBhuMtxq0dpiwF9g2WMMrit3kqXibN1V5NZ4xdbo,38046
|
@@ -88,10 +88,10 @@ utilities/uuid.py,sha256=jJTFxz-CWgltqNuzmythB7iEQ-Q1mCwPevUfKthZT3c,611
|
|
88
88
|
utilities/version.py,sha256=ufhJMmI6KPs1-3wBI71aj5wCukd3sP_m11usLe88DNA,5117
|
89
89
|
utilities/warnings.py,sha256=un1LvHv70PU-LLv8RxPVmugTzDJkkGXRMZTE2-fTQHw,1771
|
90
90
|
utilities/whenever.py,sha256=jS31ZAY5OMxFxLja_Yo5Fidi87Pd-GoVZ7Vi_teqVDA,16743
|
91
|
-
utilities/whenever2.py,sha256=
|
91
|
+
utilities/whenever2.py,sha256=XxiAEp4onJNhIi6G7L2HuzkMJZGA3j-I_fuXxmb5vtY,5432
|
92
92
|
utilities/zipfile.py,sha256=24lQc9ATcJxHXBPc_tBDiJk48pWyRrlxO2fIsFxU0A8,699
|
93
93
|
utilities/zoneinfo.py,sha256=tvcgu3QzDxe2suTexi2QzRGpin7VK1TjHa0JYYxT69I,1862
|
94
|
-
dycw_utilities-0.131.
|
95
|
-
dycw_utilities-0.131.
|
96
|
-
dycw_utilities-0.131.
|
97
|
-
dycw_utilities-0.131.
|
94
|
+
dycw_utilities-0.131.6.dist-info/METADATA,sha256=zhPwLa5dVaZ2tcdTMMoh-HOc348fcu3Q5_pgsCsb40A,1584
|
95
|
+
dycw_utilities-0.131.6.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
96
|
+
dycw_utilities-0.131.6.dist-info/licenses/LICENSE,sha256=gppZp16M6nSVpBbUBrNL6JuYfvKwZiKgV7XoKKsHzqo,1066
|
97
|
+
dycw_utilities-0.131.6.dist-info/RECORD,,
|
utilities/__init__.py
CHANGED
utilities/whenever2.py
CHANGED
@@ -5,7 +5,15 @@ from functools import cache
|
|
5
5
|
from logging import LogRecord
|
6
6
|
from typing import TYPE_CHECKING, Any, override
|
7
7
|
|
8
|
-
from whenever import
|
8
|
+
from whenever import (
|
9
|
+
Date,
|
10
|
+
DateDelta,
|
11
|
+
DateTimeDelta,
|
12
|
+
PlainDateTime,
|
13
|
+
Time,
|
14
|
+
TimeDelta,
|
15
|
+
ZonedDateTime,
|
16
|
+
)
|
9
17
|
|
10
18
|
from utilities.zoneinfo import UTC, get_time_zone_name
|
11
19
|
|
@@ -15,8 +23,15 @@ if TYPE_CHECKING:
|
|
15
23
|
from utilities.types import TimeZoneLike
|
16
24
|
|
17
25
|
|
26
|
+
## bounds
|
27
|
+
|
28
|
+
|
18
29
|
DATE_MIN = Date.from_py_date(dt.date.min)
|
19
30
|
DATE_MAX = Date.from_py_date(dt.date.max)
|
31
|
+
TIME_MIN = Time.from_py_time(dt.time.min)
|
32
|
+
TIME_MAX = Time.from_py_time(dt.time.max)
|
33
|
+
|
34
|
+
|
20
35
|
PLAIN_DATE_TIME_MIN = PlainDateTime.from_py_datetime(dt.datetime.min) # noqa: DTZ901
|
21
36
|
PLAIN_DATE_TIME_MAX = PlainDateTime.from_py_datetime(dt.datetime.max) # noqa: DTZ901
|
22
37
|
ZONED_DATE_TIME_MIN = PLAIN_DATE_TIME_MIN.assume_tz(UTC.key)
|
@@ -28,10 +43,24 @@ DATE_DELTA_MAX = DATE_TIME_DELTA_MAX.date_part()
|
|
28
43
|
TIME_DELTA_MIN = DATE_TIME_DELTA_MIN.time_part()
|
29
44
|
TIME_DELTA_MAX = DATE_TIME_DELTA_MAX.time_part()
|
30
45
|
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
46
|
+
|
47
|
+
DATE_TIME_DELTA_PARSABLE_MIN = DateTimeDelta(days=-999999, seconds=-316192377600)
|
48
|
+
DATE_TIME_DELTA_PARSABLE_MAX = DateTimeDelta(days=999999, seconds=316192377600)
|
49
|
+
DATE_DELTA_PARSABLE_MIN = DateDelta(days=-999999)
|
50
|
+
DATE_DELTA_PARSABLE_MAX = DateDelta(days=999999)
|
51
|
+
|
52
|
+
|
53
|
+
## common constants
|
54
|
+
|
55
|
+
|
56
|
+
ZERO_TIME = Time()
|
57
|
+
MICROSECOND = TimeDelta(microseconds=1)
|
58
|
+
MILLISECOND = TimeDelta(milliseconds=1)
|
59
|
+
SECOND = TimeDelta(seconds=1)
|
60
|
+
MINUTE = TimeDelta(minutes=1)
|
61
|
+
HOUR = TimeDelta(hours=1)
|
62
|
+
DAY = DateDelta(days=1)
|
63
|
+
WEEK = DateDelta(weeks=1)
|
35
64
|
|
36
65
|
|
37
66
|
##
|
@@ -68,6 +97,28 @@ def get_now_local() -> ZonedDateTime:
|
|
68
97
|
return get_now(time_zone="local")
|
69
98
|
|
70
99
|
|
100
|
+
NOW_LOCAL = get_now_local()
|
101
|
+
|
102
|
+
|
103
|
+
##
|
104
|
+
|
105
|
+
|
106
|
+
def get_today(*, time_zone: TimeZoneLike = UTC) -> Date:
|
107
|
+
"""Get the current, timezone-aware local date."""
|
108
|
+
return get_now(time_zone=time_zone).date()
|
109
|
+
|
110
|
+
|
111
|
+
TODAY_UTC = get_today(time_zone=UTC)
|
112
|
+
|
113
|
+
|
114
|
+
def get_today_local() -> Date:
|
115
|
+
"""Get the current, timezone-aware local date."""
|
116
|
+
return get_today(time_zone="local")
|
117
|
+
|
118
|
+
|
119
|
+
TODAY_LOCAL = get_today_local()
|
120
|
+
|
121
|
+
|
71
122
|
##
|
72
123
|
|
73
124
|
|
@@ -132,10 +183,23 @@ __all__ = [
|
|
132
183
|
"DATE_TIME_DELTA_MIN",
|
133
184
|
"DATE_TIME_DELTA_PARSABLE_MAX",
|
134
185
|
"DATE_TIME_DELTA_PARSABLE_MIN",
|
186
|
+
"DAY",
|
187
|
+
"HOUR",
|
188
|
+
"MICROSECOND",
|
189
|
+
"MILLISECOND",
|
190
|
+
"MINUTE",
|
191
|
+
"NOW_LOCAL",
|
135
192
|
"PLAIN_DATE_TIME_MAX",
|
136
193
|
"PLAIN_DATE_TIME_MIN",
|
194
|
+
"SECOND",
|
137
195
|
"TIME_DELTA_MAX",
|
138
196
|
"TIME_DELTA_MIN",
|
197
|
+
"TIME_MAX",
|
198
|
+
"TIME_MIN",
|
199
|
+
"TODAY_LOCAL",
|
200
|
+
"TODAY_UTC",
|
201
|
+
"WEEK",
|
202
|
+
"ZERO_TIME",
|
139
203
|
"ZONED_DATE_TIME_MAX",
|
140
204
|
"ZONED_DATE_TIME_MIN",
|
141
205
|
"WheneverLogRecord",
|
@@ -143,6 +207,7 @@ __all__ = [
|
|
143
207
|
"from_timestamp_millis",
|
144
208
|
"from_timestamp_nanos",
|
145
209
|
"get_now",
|
146
|
-
"get_now",
|
147
210
|
"get_now_local",
|
211
|
+
"get_today",
|
212
|
+
"get_today_local",
|
148
213
|
]
|
File without changes
|
File without changes
|