omlish 0.0.0.dev391__py3-none-any.whl → 0.0.0.dev393__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.
- omlish/__about__.py +2 -2
- omlish/dataclasses/tools/modifiers.py +10 -0
- omlish/lang/__init__.py +2 -0
- omlish/lang/maysyncs.py +13 -0
- omlish/lite/maysyncs.py +65 -24
- omlish/sql/queries/relations.py +3 -3
- omlish/sql/queries/selects.py +4 -3
- omlish/term/codes.py +1 -1
- omlish/term/progressbar.py +1 -1
- {omlish-0.0.0.dev391.dist-info → omlish-0.0.0.dev393.dist-info}/METADATA +1 -1
- {omlish-0.0.0.dev391.dist-info → omlish-0.0.0.dev393.dist-info}/RECORD +15 -15
- {omlish-0.0.0.dev391.dist-info → omlish-0.0.0.dev393.dist-info}/WHEEL +0 -0
- {omlish-0.0.0.dev391.dist-info → omlish-0.0.0.dev393.dist-info}/entry_points.txt +0 -0
- {omlish-0.0.0.dev391.dist-info → omlish-0.0.0.dev393.dist-info}/licenses/LICENSE +0 -0
- {omlish-0.0.0.dev391.dist-info → omlish-0.0.0.dev393.dist-info}/top_level.txt +0 -0
omlish/__about__.py
CHANGED
@@ -2,6 +2,13 @@ import dataclasses as dc
|
|
2
2
|
import typing as ta
|
3
3
|
|
4
4
|
from ... import check
|
5
|
+
from ... import lang
|
6
|
+
|
7
|
+
|
8
|
+
if ta.TYPE_CHECKING:
|
9
|
+
from ..metaclass import meta
|
10
|
+
else:
|
11
|
+
meta = lang.proxy_import('..metaclass.meta', __package__)
|
5
12
|
|
6
13
|
|
7
14
|
T = ta.TypeVar('T')
|
@@ -30,6 +37,9 @@ def update_fields(
|
|
30
37
|
fields: ta.Iterable[str] | None = None,
|
31
38
|
) -> ta.Callable[[type[T]], type[T]]:
|
32
39
|
def inner(cls):
|
40
|
+
if issubclass(cls, meta.DataMeta):
|
41
|
+
raise TypeError('update_fields() cannot be used on DataMeta subclasses')
|
42
|
+
|
33
43
|
if fields is None:
|
34
44
|
for a, v in list(cls.__dict__.items()):
|
35
45
|
if isinstance(v, dc.Field):
|
omlish/lang/__init__.py
CHANGED
omlish/lang/maysyncs.py
CHANGED
@@ -16,6 +16,16 @@ MaysyncP: ta.TypeAlias = ta.Callable[P, Maywaitable[T]]
|
|
16
16
|
|
17
17
|
|
18
18
|
def make_maysync(
|
19
|
+
s: ta.Callable[P, T],
|
20
|
+
a: ta.Callable[P, ta.Awaitable[T]],
|
21
|
+
) -> MaysyncP[P, T]:
|
22
|
+
return ta.cast('MaysyncP[P, T]', _make_maysync(
|
23
|
+
s,
|
24
|
+
a,
|
25
|
+
))
|
26
|
+
|
27
|
+
|
28
|
+
def make_maysync_from_sync(
|
19
29
|
s: ta.Callable[P, T],
|
20
30
|
a: ta.Callable[P, ta.Awaitable[T]] | None = None,
|
21
31
|
) -> MaysyncP[P, T]:
|
@@ -25,6 +35,9 @@ def make_maysync(
|
|
25
35
|
))
|
26
36
|
|
27
37
|
|
38
|
+
##
|
39
|
+
|
40
|
+
|
28
41
|
def maysync(m: ta.Callable[P, ta.Awaitable[T]]) -> MaysyncP[P, T]:
|
29
42
|
return ta.cast('MaysyncP[P, T]', _maysync(
|
30
43
|
m,
|
omlish/lite/maysyncs.py
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
# ruff: noqa: UP045
|
1
|
+
# ruff: noqa: UP006 UP045
|
2
2
|
# @omlish-lite
|
3
3
|
"""
|
4
4
|
TODO:
|
@@ -34,8 +34,22 @@ class Maywaitable(ta.Protocol[T_co]):
|
|
34
34
|
Maysync = ta.Callable[..., Maywaitable[T]] # ta.TypeAlias # omlish-amalg-typing-no-move
|
35
35
|
|
36
36
|
|
37
|
-
class Maysync_(abc.ABC): # noqa
|
38
|
-
|
37
|
+
class Maysync_(abc.ABC, ta.Generic[T]): # noqa
|
38
|
+
@ta.final
|
39
|
+
def cast(self) -> Maysync[T]:
|
40
|
+
return ta.cast('Maysync[T]', self)
|
41
|
+
|
42
|
+
class FnPair(ta.NamedTuple):
|
43
|
+
s: ta.Callable[..., ta.Any]
|
44
|
+
a: ta.Callable[..., ta.Awaitable[ta.Any]]
|
45
|
+
|
46
|
+
@abc.abstractmethod
|
47
|
+
def fn_pair(self) -> ta.Optional[FnPair]:
|
48
|
+
raise NotImplementedError
|
49
|
+
|
50
|
+
@abc.abstractmethod
|
51
|
+
def __call__(self, *args, **kwargs): # -> Maywaitable[T]
|
52
|
+
raise NotImplementedError
|
39
53
|
|
40
54
|
|
41
55
|
##
|
@@ -49,16 +63,19 @@ class _Maywaitable(abc.ABC, ta.Generic[_MaysyncX, T]):
|
|
49
63
|
*args: ta.Any,
|
50
64
|
**kwargs: ta.Any,
|
51
65
|
) -> None:
|
52
|
-
self.
|
53
|
-
self.
|
54
|
-
self.
|
66
|
+
self._x = x
|
67
|
+
self._args = args
|
68
|
+
self._kwargs = kwargs
|
69
|
+
|
70
|
+
def __repr__(self) -> str:
|
71
|
+
return f'{self.__class__.__name__}@{id(self):x}({self._x!r})'
|
55
72
|
|
56
73
|
@ta.final
|
57
74
|
def m(self) -> ta.Awaitable[T]:
|
58
75
|
return _MaysyncFuture(_MaysyncOp(
|
59
|
-
ta.cast(ta.Any, self.
|
60
|
-
|
61
|
-
|
76
|
+
ta.cast(ta.Any, self._x),
|
77
|
+
self._args,
|
78
|
+
self._kwargs,
|
62
79
|
))
|
63
80
|
|
64
81
|
|
@@ -76,13 +93,22 @@ class _FnMaysync(Maysync_, ta.Generic[T]):
|
|
76
93
|
raise TypeError(s)
|
77
94
|
if a is None:
|
78
95
|
raise TypeError(a)
|
79
|
-
self.
|
80
|
-
self.
|
96
|
+
self._s = s
|
97
|
+
self._a = a
|
98
|
+
|
99
|
+
def __repr__(self) -> str:
|
100
|
+
return f'{self.__class__.__name__}@{id(self):x}({self._s!r}, {self._a!r})'
|
101
|
+
|
102
|
+
def fn_pair(self) -> ta.Optional[Maysync_.FnPair]:
|
103
|
+
return Maysync_.FnPair(
|
104
|
+
self._s,
|
105
|
+
self._a,
|
106
|
+
)
|
81
107
|
|
82
108
|
def __get__(self, instance, owner=None):
|
83
109
|
return _FnMaysync(
|
84
|
-
self.
|
85
|
-
self.
|
110
|
+
self._s.__get__(instance, owner), # noqa
|
111
|
+
self._a.__get__(instance, owner), # noqa
|
86
112
|
)
|
87
113
|
|
88
114
|
def __call__(self, *args, **kwargs):
|
@@ -92,10 +118,10 @@ class _FnMaysync(Maysync_, ta.Generic[T]):
|
|
92
118
|
@ta.final
|
93
119
|
class _FnMaywaitable(_Maywaitable[_FnMaysync[T], T]):
|
94
120
|
def s(self) -> T:
|
95
|
-
return self.
|
121
|
+
return self._x._s(*self._args, **self._kwargs) # noqa
|
96
122
|
|
97
123
|
async def a(self) -> T:
|
98
|
-
return await self.
|
124
|
+
return await self._x._a(*self._args, **self._kwargs) # noqa
|
99
125
|
|
100
126
|
|
101
127
|
def make_maysync(
|
@@ -114,13 +140,19 @@ class _MgMaysync(Maysync_, ta.Generic[T]):
|
|
114
140
|
self,
|
115
141
|
mg: ta.Callable[..., _MaysyncGen[T]],
|
116
142
|
) -> None:
|
117
|
-
self.
|
143
|
+
self._mg = mg
|
118
144
|
|
119
145
|
functools.update_wrapper(self, mg, updated=())
|
120
146
|
|
147
|
+
def __repr__(self) -> str:
|
148
|
+
return f'{self.__class__.__name__}@{id(self):x}({self._mg!r})'
|
149
|
+
|
150
|
+
def fn_pair(self) -> ta.Optional[Maysync_.FnPair]:
|
151
|
+
return None
|
152
|
+
|
121
153
|
def __get__(self, instance, owner=None):
|
122
154
|
return _MgMaysync(
|
123
|
-
self.
|
155
|
+
self._mg.__get__(instance, owner), # noqa
|
124
156
|
)
|
125
157
|
|
126
158
|
def __call__(self, *args, **kwargs):
|
@@ -130,7 +162,7 @@ class _MgMaysync(Maysync_, ta.Generic[T]):
|
|
130
162
|
@ta.final
|
131
163
|
class _MgMaywaitable(_Maywaitable[_MgMaysync[T], T]):
|
132
164
|
def s(self) -> T:
|
133
|
-
g = self.
|
165
|
+
g = self._x._mg(*self._args, **self._kwargs) # noqa
|
134
166
|
|
135
167
|
i: ta.Any = None
|
136
168
|
e: ta.Any = None
|
@@ -158,7 +190,7 @@ class _MgMaywaitable(_Maywaitable[_MgMaysync[T], T]):
|
|
158
190
|
del o
|
159
191
|
|
160
192
|
async def a(self) -> T:
|
161
|
-
g = self.
|
193
|
+
g = self._x._mg(*self._args, **self._kwargs) # noqa
|
162
194
|
|
163
195
|
i: ta.Any = None
|
164
196
|
e: ta.Any = None
|
@@ -189,17 +221,20 @@ class _MgMaywaitable(_Maywaitable[_MgMaysync[T], T]):
|
|
189
221
|
@ta.final
|
190
222
|
class _MgMaysyncFn:
|
191
223
|
def __init__(self, m):
|
192
|
-
self.
|
224
|
+
self._m = m
|
193
225
|
|
194
226
|
functools.update_wrapper(self, m, updated=())
|
195
227
|
|
228
|
+
def __repr__(self) -> str:
|
229
|
+
return f'{self.__class__.__name__}@{id(self):x}({self._m!r})'
|
230
|
+
|
196
231
|
def __get__(self, instance, owner=None):
|
197
232
|
return _MgMaysyncFn(
|
198
|
-
self.
|
233
|
+
self._m.__get__(instance, owner),
|
199
234
|
)
|
200
235
|
|
201
236
|
def __call__(self, *args, **kwargs):
|
202
|
-
a = self.
|
237
|
+
a = self._m(*args, **kwargs).__await__()
|
203
238
|
try:
|
204
239
|
g = iter(a)
|
205
240
|
try:
|
@@ -240,13 +275,16 @@ class _MaysyncOp:
|
|
240
275
|
def __init__(
|
241
276
|
self,
|
242
277
|
x: Maysync[T],
|
243
|
-
|
244
|
-
|
278
|
+
args: ta.Tuple[ta.Any, ...],
|
279
|
+
kwargs: ta.Mapping[str, ta.Any],
|
245
280
|
) -> None:
|
246
281
|
self.x = x
|
247
282
|
self.args = args
|
248
283
|
self.kwargs = kwargs
|
249
284
|
|
285
|
+
def __repr__(self) -> str:
|
286
|
+
return f'{self.__class__.__name__}@{id(self):x}({self.x!r})'
|
287
|
+
|
250
288
|
|
251
289
|
class _MaysyncFutureNotAwaitedError(RuntimeError):
|
252
290
|
pass
|
@@ -260,6 +298,9 @@ class _MaysyncFuture(ta.Generic[T]):
|
|
260
298
|
) -> None:
|
261
299
|
self.op = op
|
262
300
|
|
301
|
+
def __repr__(self) -> str:
|
302
|
+
return f'{self.__class__.__name__}@{id(self):x}({self.op!r}, done={self.done!r})'
|
303
|
+
|
263
304
|
done: bool = False
|
264
305
|
result: T
|
265
306
|
error: ta.Optional[BaseException] = None
|
omlish/sql/queries/relations.py
CHANGED
@@ -1,6 +1,5 @@
|
|
1
1
|
"""
|
2
2
|
TODO:
|
3
|
-
- join
|
4
3
|
- subquery
|
5
4
|
"""
|
6
5
|
import enum
|
@@ -8,6 +7,7 @@ import typing as ta
|
|
8
7
|
|
9
8
|
from ... import dataclasses as dc
|
10
9
|
from ... import lang
|
10
|
+
from ... import marshal as msh
|
11
11
|
from .base import Node
|
12
12
|
from .exprs import CanExpr
|
13
13
|
from .exprs import Expr
|
@@ -29,7 +29,7 @@ class Relation(Node, lang.Abstract):
|
|
29
29
|
|
30
30
|
class Table(Relation, lang.Final):
|
31
31
|
n: Name
|
32
|
-
a: Ident | None = dc.xfield(None, repr_fn=dc.opt_repr)
|
32
|
+
a: Ident | None = dc.xfield(None, repr_fn=dc.opt_repr) | msh.with_field_metadata(omit_if=lang.is_none)
|
33
33
|
|
34
34
|
|
35
35
|
#
|
@@ -50,7 +50,7 @@ class Join(Relation, lang.Final):
|
|
50
50
|
l: Relation
|
51
51
|
r: Relation
|
52
52
|
|
53
|
-
c: Expr | None = None
|
53
|
+
c: Expr | None = dc.xfield(None, repr_fn=dc.opt_repr) | msh.with_field_metadata(omit_if=lang.is_none)
|
54
54
|
|
55
55
|
|
56
56
|
##
|
omlish/sql/queries/selects.py
CHANGED
@@ -2,6 +2,7 @@ import typing as ta
|
|
2
2
|
|
3
3
|
from ... import dataclasses as dc
|
4
4
|
from ... import lang
|
5
|
+
from ... import marshal as msh
|
5
6
|
from .base import Node
|
6
7
|
from .exprs import CanExpr
|
7
8
|
from .exprs import Expr
|
@@ -26,7 +27,7 @@ class AllSelectItem(SelectItem, lang.Final):
|
|
26
27
|
|
27
28
|
class ExprSelectItem(SelectItem, lang.Final):
|
28
29
|
v: Expr
|
29
|
-
a: Ident | None = dc.xfield(None, repr_fn=dc.opt_repr)
|
30
|
+
a: Ident | None = dc.xfield(None, repr_fn=dc.opt_repr) | msh.with_field_metadata(omit_if=lang.is_none)
|
30
31
|
|
31
32
|
|
32
33
|
##
|
@@ -34,8 +35,8 @@ class ExprSelectItem(SelectItem, lang.Final):
|
|
34
35
|
|
35
36
|
class Select(Stmt, lang.Final):
|
36
37
|
items: ta.Sequence[SelectItem] = dc.xfield(coerce=tuple)
|
37
|
-
from_: Relation | None = dc.xfield(None, repr_fn=dc.opt_repr)
|
38
|
-
where: Expr | None = dc.xfield(None, repr_fn=dc.opt_repr)
|
38
|
+
from_: Relation | None = dc.xfield(None, repr_fn=dc.opt_repr) | msh.with_field_metadata(name='from', omit_if=lang.is_none) # noqa
|
39
|
+
where: Expr | None = dc.xfield(None, repr_fn=dc.opt_repr) | msh.with_field_metadata(omit_if=lang.is_none)
|
39
40
|
|
40
41
|
|
41
42
|
CanSelectItem: ta.TypeAlias = SelectItem | CanExpr
|
omlish/term/codes.py
CHANGED
omlish/term/progressbar.py
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
omlish/.manifests.json,sha256=aT8yZ-Zh-9wfHl5Ym5ouiWC1i0cy7Q7RlhzavB6VLPI,8587
|
2
|
-
omlish/__about__.py,sha256=
|
2
|
+
omlish/__about__.py,sha256=Ecs9Y68M7tY4vQsy6795a2JDqG9iRNujk3WD8bB9QRY,3543
|
3
3
|
omlish/__init__.py,sha256=SsyiITTuK0v74XpKV8dqNaCmjOlan1JZKrHQv5rWKPA,253
|
4
4
|
omlish/c3.py,sha256=rer-TPOFDU6fYq_AWio_AmA-ckZ8JDY5shIzQ_yXfzA,8414
|
5
5
|
omlish/cached.py,sha256=MLap_p0rdGoDIMVhXVHm1tsbcWobJF0OanoodV03Ju8,542
|
@@ -198,7 +198,7 @@ omlish/dataclasses/processing/registry.py,sha256=iNDHwW1gsq8gTMi4XvNBBzab0OYdSKv
|
|
198
198
|
omlish/dataclasses/tools/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
199
199
|
omlish/dataclasses/tools/as_.py,sha256=3mTFXf563Z4ZZnbCzJHv83WizOYBs2mpigJCamxTlpQ,2893
|
200
200
|
omlish/dataclasses/tools/iter.py,sha256=JQUFG4Gn-xthhJ3OEqXLOWkq2KhRMuIqvEow0HcFPZg,540
|
201
|
-
omlish/dataclasses/tools/modifiers.py,sha256=
|
201
|
+
omlish/dataclasses/tools/modifiers.py,sha256=VpE16fYDIQo7dpT0oUbCuqr9WohMohmFdKHhVVjkQqE,1486
|
202
202
|
omlish/dataclasses/tools/only_.py,sha256=hPpqzr9YW09YmlX_QJNU2aePHYJEIrbGCPwmnvVS_to,849
|
203
203
|
omlish/dataclasses/tools/replace.py,sha256=izM9lPT6AhEtjqn22auqaofa0j69KO7iootF-2Uj4cY,396
|
204
204
|
omlish/dataclasses/tools/repr.py,sha256=KFvF6uv2YYIKq8O3ZNbEAS1tqRQALsJ-SUlBNPd5_GI,190
|
@@ -420,7 +420,7 @@ omlish/iterators/iterators.py,sha256=RxW35yQ5ed8vBQ22IqpDXFx-i5JiLQdp7-pkMZXhJJ8
|
|
420
420
|
omlish/iterators/recipes.py,sha256=wOwOZg-zWG9Zc3wcAxJFSe2rtavVBYwZOfG09qYEx_4,472
|
421
421
|
omlish/iterators/tools.py,sha256=M16LXrJhMdsz5ea2qH0vws30ZvhQuQSCVFSLpRf_gTg,2096
|
422
422
|
omlish/iterators/unique.py,sha256=Nw0pSaNEcHAkve0ugfLPvJcirDOn9ECyC5wIL8JlJKI,1395
|
423
|
-
omlish/lang/__init__.py,sha256=
|
423
|
+
omlish/lang/__init__.py,sha256=JAtUfF-W0qW4BdJz2hgXRBdjUGl43ZLUghbM_bffoIM,6814
|
424
424
|
omlish/lang/attrs.py,sha256=zFiVuGVOq88x45464T_LxDa-ZEq_RD9zJLq2zeVEBDc,5105
|
425
425
|
omlish/lang/casing.py,sha256=cFUlbDdXLhwnWwcYx4qnM5c4zGX7hIRUfcjiZbxUD28,4636
|
426
426
|
omlish/lang/clsdct.py,sha256=HAGIvBSbCefzRjXriwYSBLO7QHKRv2UsE78jixOb-fA,1828
|
@@ -435,7 +435,7 @@ omlish/lang/functions.py,sha256=aLdxhmqG0Pj9tBgsKdoCu_q15r82WIkNqDDSPQU19L8,5689
|
|
435
435
|
omlish/lang/generators.py,sha256=a4D5HU_mySs2T2z3xCmE_s3t4QJkj0YRrK4-hhpGd0A,5197
|
436
436
|
omlish/lang/imports.py,sha256=y9W9Y-d_cQ35QCLuSIPoa6vnEqSErFCz8b-34IH128U,10552
|
437
437
|
omlish/lang/iterables.py,sha256=y1SX2Co3VsOeX2wlfFF7K3rwLvF7Dtre7VY6EpfwAwA,3338
|
438
|
-
omlish/lang/maysyncs.py,sha256=
|
438
|
+
omlish/lang/maysyncs.py,sha256=kULOW2M9PFhLd1TdtmGGQstPgrJpl--JUv9FOHWl4f8,894
|
439
439
|
omlish/lang/objects.py,sha256=ZsibJwNp1EXorbaObm9TlCNtuuM65snCmVb7H4_llqI,6116
|
440
440
|
omlish/lang/outcomes.py,sha256=0PqxoKaGbBXU9UYZ6AE2QSq94Z-gFDt6wYdp0KomNQw,8712
|
441
441
|
omlish/lang/overrides.py,sha256=IBzK6ljfLX6TLgIyKTSjhqTLcuKRkQNVtEOnBLS4nuA,2095
|
@@ -478,7 +478,7 @@ omlish/lite/json.py,sha256=m0Ce9eqUZG23-H7-oOp8n1sf4fzno5vtK4AK_4Vc-Mg,706
|
|
478
478
|
omlish/lite/logs.py,sha256=CWFG0NKGhqNeEgryF5atN2gkPYbUdTINEw_s1phbINM,51
|
479
479
|
omlish/lite/marshal.py,sha256=JD_8ox5-yeIo7MZ6iipCdiVxx33So52M02AtvFlRGC8,20392
|
480
480
|
omlish/lite/maybes.py,sha256=0p_fzb6yiOjEpvMKaQ53Q6CH1VPW1or7v7Lt1JIKcgM,4359
|
481
|
-
omlish/lite/maysyncs.py,sha256=
|
481
|
+
omlish/lite/maysyncs.py,sha256=MT3zF5kQ5rNlWU7db9Q_uXSM8K2C8LK85PIgdBsJyGE,7251
|
482
482
|
omlish/lite/pycharm.py,sha256=FRHGcCDo42UzZXqNwW_DkhI-6kb_CmJKPiQ8F6mYkLA,1174
|
483
483
|
omlish/lite/reflect.py,sha256=pzOY2PPuHH0omdtglkN6DheXDrGopdL3PtTJnejyLFU,2189
|
484
484
|
omlish/lite/reprs.py,sha256=Tiqf_ciD8FfS0ury7FcJ5G21yY342fW0vPacYlb8EO4,2014
|
@@ -733,9 +733,9 @@ omlish/sql/queries/multi.py,sha256=7x6x-4jnPzxA6ZasBjnjFuhHFpWt5rGCua3UvuTMIJ0,8
|
|
733
733
|
omlish/sql/queries/names.py,sha256=ko5ADruhhma9xfm4T7-UEd2uXRgGchfUeiz-xgiZlFE,2207
|
734
734
|
omlish/sql/queries/ops.py,sha256=pDZ_2Jo_Fa8DDbtYkc6-9eehkWsZPI-jh-KFlubcY6Y,134
|
735
735
|
omlish/sql/queries/params.py,sha256=_4Cg2MWfcU0EGcVkyOfbyJ5MA4PDUexNlaGEiqmt8Ls,1268
|
736
|
-
omlish/sql/queries/relations.py,sha256=
|
736
|
+
omlish/sql/queries/relations.py,sha256=P0qBqNICyeig9sEZAYLZcTXcI1YFiBe6REm6jNhpHUI,2630
|
737
737
|
omlish/sql/queries/rendering.py,sha256=3Ocw52DDDsUavEmb8xH-2Mhp-3pZCXsJVXFuVTOUBqk,7779
|
738
|
-
omlish/sql/queries/selects.py,sha256=
|
738
|
+
omlish/sql/queries/selects.py,sha256=XNisb2draHURYhbZsTFw7DJQaN1Zfo2Znm-Ty0lHNTo,1773
|
739
739
|
omlish/sql/queries/std.py,sha256=FdJkXD7oiuj8mtVzvbsL1ZocEEAfaSdOsfTVB1YhtrE,699
|
740
740
|
omlish/sql/queries/stmts.py,sha256=pBqwD7dRlqMu6uh6vR3xaWOEgbZCcFWbOQ9ryYd17T4,441
|
741
741
|
omlish/sql/queries/unary.py,sha256=MEYBDZn_H0bexmUrJeONOv5-gIpYowUaXOsEHeQM4ks,1144
|
@@ -757,10 +757,10 @@ omlish/subprocesses/sync.py,sha256=L-ZNj9RrZd69XjlKrXjt-EJ-XUpQF8E35Mh3b3SI3vc,3
|
|
757
757
|
omlish/subprocesses/utils.py,sha256=v5uEzxmbmRvXwOl_0DtBa5Il6yITKYRgmVSGHcLsT4o,402
|
758
758
|
omlish/subprocesses/wrap.py,sha256=AhGV8rsnaVUMQCFYKkrjj35fs3O-VJLZC1hZ14dz3C8,769
|
759
759
|
omlish/term/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
760
|
-
omlish/term/codes.py,sha256=
|
760
|
+
omlish/term/codes.py,sha256=6_g4wwXP4z9koC9oEW3jSEuw27mQRf43ngD5RA-Qu2s,6390
|
761
761
|
omlish/term/coloring.py,sha256=MCFYV_JTvEObTCJE12wfalW8OFFQB_KIFBKDtfES6Nk,2559
|
762
762
|
omlish/term/confirm.py,sha256=M3DAyyPO2yREhSXOAWF-KQcLTHRRZCVsg2nrIKT8kHI,1111
|
763
|
-
omlish/term/progressbar.py,sha256=
|
763
|
+
omlish/term/progressbar.py,sha256=nCnTX1dUNCGle9FzzeTBuoxQaellErOQkyBsKVrGG1I,3679
|
764
764
|
omlish/term/vt100/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
765
765
|
omlish/term/vt100/c.py,sha256=93HARU6Dd1rVF-n8cAyXqkEqleYLcofuLgSUNd6-GbU,3537
|
766
766
|
omlish/term/vt100/states.py,sha256=OxPUxfFTcfz56MhtDgIigEApChOtN6XO1g6R2H08mu4,8303
|
@@ -895,9 +895,9 @@ omlish/typedvalues/marshal.py,sha256=AtBz7Jq-BfW8vwM7HSxSpR85JAXmxK2T0xDblmm1HI0
|
|
895
895
|
omlish/typedvalues/of_.py,sha256=UXkxSj504WI2UrFlqdZJbu2hyDwBhL7XVrc2qdR02GQ,1309
|
896
896
|
omlish/typedvalues/reflect.py,sha256=PAvKW6T4cW7u--iX80w3HWwZUS3SmIZ2_lQjT65uAyk,1026
|
897
897
|
omlish/typedvalues/values.py,sha256=ym46I-q2QJ_6l4UlERqv3yj87R-kp8nCKMRph0xQ3UA,1307
|
898
|
-
omlish-0.0.0.
|
899
|
-
omlish-0.0.0.
|
900
|
-
omlish-0.0.0.
|
901
|
-
omlish-0.0.0.
|
902
|
-
omlish-0.0.0.
|
903
|
-
omlish-0.0.0.
|
898
|
+
omlish-0.0.0.dev393.dist-info/licenses/LICENSE,sha256=B_hVtavaA8zCYDW99DYdcpDLKz1n3BBRjZrcbv8uG8c,1451
|
899
|
+
omlish-0.0.0.dev393.dist-info/METADATA,sha256=siHQt0dS0bqBCCqnpqhdYepmt0xzBPGtMcJ3GNXPZAw,18825
|
900
|
+
omlish-0.0.0.dev393.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
901
|
+
omlish-0.0.0.dev393.dist-info/entry_points.txt,sha256=Lt84WvRZJskWCAS7xnQGZIeVWksprtUHj0llrvVmod8,35
|
902
|
+
omlish-0.0.0.dev393.dist-info/top_level.txt,sha256=pePsKdLu7DvtUiecdYXJ78iO80uDNmBlqe-8hOzOmfs,7
|
903
|
+
omlish-0.0.0.dev393.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|