omlish 0.0.0.dev432__py3-none-any.whl → 0.0.0.dev434__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 +3 -3
- omlish/asyncs/all.py +0 -13
- omlish/inject/__init__.py +152 -126
- omlish/inject/binder.py +7 -4
- omlish/inject/impl/elements.py +6 -8
- omlish/inject/impl/injector.py +58 -32
- omlish/inject/impl/inspect.py +1 -0
- omlish/inject/impl/maysync.py +44 -0
- omlish/inject/impl/multis.py +5 -5
- omlish/inject/impl/privates.py +8 -8
- omlish/inject/impl/providers.py +24 -31
- omlish/inject/impl/providers2.py +43 -0
- omlish/inject/impl/scopes.py +19 -25
- omlish/inject/impl/sync.py +42 -0
- omlish/inject/injector.py +9 -11
- omlish/inject/inspect.py +1 -3
- omlish/inject/listeners.py +4 -4
- omlish/inject/managed.py +52 -20
- omlish/inject/maysync.py +27 -0
- omlish/inject/providers.py +6 -0
- omlish/inject/scopes.py +38 -10
- omlish/inject/sync.py +46 -0
- omlish/lang/__init__.py +23 -6
- omlish/lang/asyncs.py +18 -0
- omlish/lang/contextmanagers.py +23 -0
- omlish/lang/imports/capture.py +491 -0
- omlish/lang/imports/lazy.py +0 -25
- omlish/lang/imports/proxy.py +62 -0
- omlish/lang/imports/proxyinit.py +28 -518
- omlish/lang/resources.py +1 -1
- omlish/lite/asyncs.py +21 -0
- omlish/lite/maysync.py +21 -0
- omlish/logs/contexts.py +4 -3
- omlish/logs/std/records.py +29 -19
- omlish/logs/typed/bindings.py +84 -37
- omlish/logs/typed/types.py +16 -1
- omlish/marshal/__init__.py +1 -1
- omlish/typedvalues/__init__.py +1 -1
- {omlish-0.0.0.dev432.dist-info → omlish-0.0.0.dev434.dist-info}/METADATA +3 -6
- {omlish-0.0.0.dev432.dist-info → omlish-0.0.0.dev434.dist-info}/RECORD +44 -39
- omlish/asyncs/bridge.py +0 -359
- omlish/asyncs/utils.py +0 -18
- {omlish-0.0.0.dev432.dist-info → omlish-0.0.0.dev434.dist-info}/WHEEL +0 -0
- {omlish-0.0.0.dev432.dist-info → omlish-0.0.0.dev434.dist-info}/entry_points.txt +0 -0
- {omlish-0.0.0.dev432.dist-info → omlish-0.0.0.dev434.dist-info}/licenses/LICENSE +0 -0
- {omlish-0.0.0.dev432.dist-info → omlish-0.0.0.dev434.dist-info}/top_level.txt +0 -0
omlish/logs/std/records.py
CHANGED
@@ -236,22 +236,6 @@ class LoggingContextInfoRecordAdapters:
|
|
236
236
|
args=rec.args,
|
237
237
|
)
|
238
238
|
|
239
|
-
# FIXME: handled specially - all unknown attrs on LogRecord
|
240
|
-
# class Extra(Adapter[LoggingContextInfos.Extra]):
|
241
|
-
# _record_attrs: ta.ClassVar[ta.Mapping[str, ta.Union[ta.Any, ta.Tuple[ta.Any, ta.Any]]]] = dict()
|
242
|
-
#
|
243
|
-
# def info_to_record(self, info: ta.Optional[LoggingContextInfos.Extra]) -> ta.Mapping[str, ta.Any]:
|
244
|
-
# # FIXME:
|
245
|
-
# # if extra is not None:
|
246
|
-
# # for key in extra:
|
247
|
-
# # if (key in ["message", "asctime"]) or (key in rv.__dict__):
|
248
|
-
# # raise KeyError("Attempt to overwrite %r in LogRecord" % key)
|
249
|
-
# # rv.__dict__[key] = extra[key]
|
250
|
-
# return dict()
|
251
|
-
#
|
252
|
-
# def record_to_info(self, rec: logging.LogRecord) -> ta.Optional[LoggingContextInfos.Extra]:
|
253
|
-
# return None
|
254
|
-
|
255
239
|
class Time(RequiredAdapter[LoggingContextInfos.Time]):
|
256
240
|
info_cls: ta.ClassVar[ta.Type[LoggingContextInfos.Time]] = LoggingContextInfos.Time
|
257
241
|
|
@@ -632,13 +616,20 @@ class LoggingContextLogRecord(logging.LogRecord):
|
|
632
616
|
# - exc_info: LoggingExcInfoTuple | None
|
633
617
|
# - func: str | None = None -> funcName
|
634
618
|
# - sinfo: str | None = None -> stack_info
|
619
|
+
#
|
635
620
|
|
636
621
|
def __init__(self, *, _logging_context: LoggingContext) -> None: # noqa
|
637
|
-
self._logging_context
|
622
|
+
self.__dict__.update(_logging_context=_logging_context)
|
638
623
|
|
639
624
|
for ad in _LOGGING_CONTEXT_INFO_RECORD_ADAPTERS_:
|
640
625
|
self.__dict__.update(ad.context_to_record(_logging_context))
|
641
626
|
|
627
|
+
_logging_context: LoggingContext
|
628
|
+
|
629
|
+
# FIXME: track extra
|
630
|
+
# def __setattr__(self, key, value):
|
631
|
+
# super().__setattr__(key, value)
|
632
|
+
|
642
633
|
|
643
634
|
##
|
644
635
|
|
@@ -651,10 +642,29 @@ class LogRecordLoggingContext(LoggingContext):
|
|
651
642
|
|
652
643
|
self._rec = rec
|
653
644
|
|
654
|
-
|
655
|
-
|
645
|
+
infos: ta.List[LoggingContextInfo] = [
|
646
|
+
info
|
656
647
|
for ad in _LOGGING_CONTEXT_INFO_RECORD_ADAPTERS_
|
657
648
|
if (info := ad.record_to_info(rec)) is not None
|
649
|
+
]
|
650
|
+
|
651
|
+
# FIXME:
|
652
|
+
# if extra is not None:
|
653
|
+
# for key in extra:
|
654
|
+
# if (key in ["message", "asctime"]) or (key in rv.__dict__):
|
655
|
+
# raise KeyError("Attempt to overwrite %r in LogRecord" % key)
|
656
|
+
# rv.__dict__[key] = extra[key]
|
657
|
+
|
658
|
+
if (extra := {
|
659
|
+
a: v
|
660
|
+
for a, v in rec.__dict__.items()
|
661
|
+
if a not in _KNOWN_STD_LOGGING_RECORD_ATTR_SET
|
662
|
+
}):
|
663
|
+
infos.append(LoggingContextInfos.Extra(extra))
|
664
|
+
|
665
|
+
self._infos: ta.Dict[ta.Type[LoggingContextInfo], LoggingContextInfo] = {
|
666
|
+
type(info): info
|
667
|
+
for info in infos
|
658
668
|
}
|
659
669
|
|
660
670
|
def get_info(self, ty: ta.Type[LoggingContextInfoT]) -> ta.Optional[LoggingContextInfoT]:
|
omlish/logs/typed/bindings.py
CHANGED
@@ -16,6 +16,7 @@ from ...lite.abstract import Abstract
|
|
16
16
|
from .types import TYPED_LOGGER_VALUE_OR_PROVIDER_OR_ABSENT_TYPES
|
17
17
|
from .types import TYPED_LOGGER_VALUE_OR_PROVIDER_TYPES
|
18
18
|
from .types import DefaultTypedLoggerValue
|
19
|
+
from .types import MultiTypedLoggerValue
|
19
20
|
from .types import TypedLoggerConstFieldValue
|
20
21
|
from .types import TypedLoggerField
|
21
22
|
from .types import TypedLoggerFieldValue
|
@@ -92,6 +93,9 @@ class TypedLoggerBindings(Abstract):
|
|
92
93
|
accept_value: ta.Callable[[ta.Type[TypedLoggerValue], TypedLoggerValueOrProviderOrAbsent], None]
|
93
94
|
accept_values: ta.Callable[[ta.Iterable[ta.Tuple[ta.Type[TypedLoggerValue], TypedLoggerValueOrProviderOrAbsent]]], None] # noqa
|
94
95
|
|
96
|
+
accept_multi_value: ta.Callable[[ta.Type[MultiTypedLoggerValue], MultiTypedLoggerValue], None] # noqa
|
97
|
+
accept_multi_values: ta.Callable[[ta.Iterable[ta.Tuple[ta.Type[MultiTypedLoggerValue], MultiTypedLoggerValue]]], None] # noqa
|
98
|
+
|
95
99
|
accept_const_values: ta.Callable[[ta.Iterable[ta.Tuple[ta.Type[TypedLoggerValue], TypedLoggerValueOrAbsent]]], None] # noqa
|
96
100
|
|
97
101
|
accept_value_wrapping: ta.Callable[[ta.Union['TypedLoggerValueWrapper', 'FullTypedLoggerBindings._ValueWrappingState']], None] # noqa
|
@@ -110,19 +114,11 @@ class FullTypedLoggerBindings(TypedLoggerBindings):
|
|
110
114
|
self,
|
111
115
|
*items: TypedLoggerBindingItem,
|
112
116
|
override: bool = False,
|
117
|
+
override_multis: bool = False,
|
113
118
|
) -> None:
|
114
119
|
kd: ta.Dict[str, TypedLoggerFieldValue] = {}
|
115
120
|
dup_kd: ta.Dict[str, ta.List[TypedLoggerFieldValue]] = {}
|
116
121
|
|
117
|
-
vd: ta.Dict[ta.Type[TypedLoggerValue], TypedLoggerValueOrProviderOrAbsent] = {}
|
118
|
-
dup_vd: ta.Dict[ta.Type[TypedLoggerValue], ta.List[TypedLoggerValueOrProviderOrAbsent]] = {}
|
119
|
-
|
120
|
-
cvd: ta.Dict[ta.Type[TypedLoggerValue], TypedLoggerValueOrAbsent] = {}
|
121
|
-
|
122
|
-
vwl: ta.List[ta.Union[TypedLoggerValueWrapper, FullTypedLoggerBindings._ValueWrappingState]] = []
|
123
|
-
|
124
|
-
vst: TypedLoggerBindings._Visitor
|
125
|
-
|
126
122
|
if not override:
|
127
123
|
def add_kd(kd_k: str, kd_v: TypedLoggerFieldValue) -> None: # noqa
|
128
124
|
if kd_k in kd:
|
@@ -130,42 +126,71 @@ class FullTypedLoggerBindings(TypedLoggerBindings):
|
|
130
126
|
else:
|
131
127
|
kd[kd_k] = kd_v
|
132
128
|
|
129
|
+
def add_kds(it: 'ta.Iterable[ta.Tuple[str, TypedLoggerFieldValue]]') -> None: # noqa
|
130
|
+
collections.deque(itertools.starmap(add_kd, it), maxlen=0)
|
131
|
+
|
132
|
+
else:
|
133
|
+
add_kd = kd.__setitem__ # type: ignore[assignment]
|
134
|
+
add_kds = kd.update # type: ignore[assignment]
|
135
|
+
|
136
|
+
#
|
137
|
+
|
138
|
+
vd: ta.Dict[ta.Type[TypedLoggerValue], TypedLoggerValueOrProviderOrAbsent] = {}
|
139
|
+
dup_vd: ta.Dict[ta.Type[TypedLoggerValue], ta.List[TypedLoggerValueOrProviderOrAbsent]] = {}
|
140
|
+
|
141
|
+
if not override:
|
133
142
|
def add_vd(vd_k: 'ta.Type[TypedLoggerValue]', vd_v: TypedLoggerValueOrProviderOrAbsent) -> None: # noqa
|
134
143
|
if vd_k in vd:
|
135
144
|
dup_vd.setdefault(vd_k, []).append(vd_v)
|
136
145
|
else:
|
137
146
|
vd[vd_k] = vd_v
|
138
147
|
|
139
|
-
def add_kds(it: 'ta.Iterable[ta.Tuple[str, TypedLoggerFieldValue]]') -> None: # noqa
|
140
|
-
collections.deque(itertools.starmap(add_kd, it), maxlen=0)
|
141
|
-
|
142
148
|
def add_vds(it: 'ta.Iterable[ta.Tuple[ta.Type[TypedLoggerValue], TypedLoggerValueOrProviderOrAbsent]]') -> None: # noqa
|
143
149
|
collections.deque(itertools.starmap(add_vd, it), maxlen=0)
|
144
150
|
|
145
|
-
|
146
|
-
|
147
|
-
|
151
|
+
else:
|
152
|
+
add_vd = vd.__setitem__ # type: ignore[assignment]
|
153
|
+
add_vds = vd.update # type: ignore[assignment]
|
148
154
|
|
149
|
-
|
150
|
-
add_vds,
|
155
|
+
#
|
151
156
|
|
152
|
-
|
157
|
+
mvd: ta.Dict[ta.Type[MultiTypedLoggerValue], ta.List[MultiTypedLoggerValue]] = {}
|
153
158
|
|
154
|
-
|
155
|
-
)
|
159
|
+
if override_multis:
|
160
|
+
def add_mvd(mvd_k: 'ta.Type[MultiTypedLoggerValue]', mvd_v: MultiTypedLoggerValue) -> None: # noqa
|
161
|
+
try:
|
162
|
+
mvd_l = mvd[mvd_k]
|
163
|
+
except KeyError:
|
164
|
+
mvd_l = mvd[mvd_k] = []
|
165
|
+
mvd_l.append(mvd_v)
|
166
|
+
|
167
|
+
def add_mvds(it: 'ta.Iterable[ta.Tuple[ta.Type[MultiTypedLoggerValue], MultiTypedLoggerValue]]') -> None:
|
168
|
+
collections.deque(itertools.starmap(add_mvd, it), maxlen=0)
|
156
169
|
|
157
170
|
else:
|
158
|
-
|
159
|
-
|
160
|
-
|
171
|
+
add_mvd = mvd.__setitem__ # type: ignore[assignment]
|
172
|
+
add_mvds = mvd.update # type: ignore[assignment]
|
173
|
+
|
174
|
+
#
|
161
175
|
|
162
|
-
|
163
|
-
vd.update,
|
176
|
+
cvd: ta.Dict[ta.Type[TypedLoggerValue], TypedLoggerValueOrAbsent] = {}
|
164
177
|
|
165
|
-
|
178
|
+
vwl: ta.List[ta.Union[TypedLoggerValueWrapper, FullTypedLoggerBindings._ValueWrappingState]] = []
|
166
179
|
|
167
|
-
|
168
|
-
|
180
|
+
vst = TypedLoggerBindings._Visitor( # noqa
|
181
|
+
add_kd,
|
182
|
+
add_kds,
|
183
|
+
|
184
|
+
add_vd,
|
185
|
+
add_vds,
|
186
|
+
|
187
|
+
add_mvd,
|
188
|
+
add_mvds,
|
189
|
+
|
190
|
+
cvd.update,
|
191
|
+
|
192
|
+
vwl.append,
|
193
|
+
)
|
169
194
|
|
170
195
|
for o in items:
|
171
196
|
o._typed_logger_visit_bindings(vst) # noqa
|
@@ -288,18 +313,22 @@ class ChainTypedLoggerBindings(TypedLoggerBindings):
|
|
288
313
|
kd: ta.Dict[str, TypedLoggerFieldValue] = {}
|
289
314
|
dup_kd: ta.Dict[str, ta.List[TypedLoggerFieldValue]] = {}
|
290
315
|
|
291
|
-
vd: ta.Dict[ta.Type[TypedLoggerValue], TypedLoggerValueOrProviderOrAbsent] = {}
|
292
|
-
dup_vd: ta.Dict[ta.Type[TypedLoggerValue], ta.List[TypedLoggerValueOrProviderOrAbsent]] = {}
|
293
|
-
|
294
|
-
pcv = dict(parent.const_value_map)
|
295
|
-
cvd: ta.Dict[ta.Type[TypedLoggerValue], TypedLoggerValueOrAbsent] = {}
|
296
|
-
|
297
316
|
def add_kd(kd_k: str, kd_v: TypedLoggerFieldValue) -> None: # noqa
|
298
317
|
if kd_k in kd:
|
299
318
|
dup_kd.setdefault(kd_k, []).append(kd_v)
|
300
319
|
else:
|
301
320
|
kd[kd_k] = kd_v
|
302
321
|
|
322
|
+
def add_kds(it: 'ta.Iterable[ta.Tuple[str, TypedLoggerFieldValue]]') -> None: # noqa
|
323
|
+
collections.deque(itertools.starmap(add_kd, it), maxlen=0)
|
324
|
+
|
325
|
+
#
|
326
|
+
|
327
|
+
vd: ta.Dict[ta.Type[TypedLoggerValue], TypedLoggerValueOrProviderOrAbsent] = {}
|
328
|
+
dup_vd: ta.Dict[ta.Type[TypedLoggerValue], ta.List[TypedLoggerValueOrProviderOrAbsent]] = {}
|
329
|
+
|
330
|
+
pcv = dict(parent.const_value_map)
|
331
|
+
|
303
332
|
def add_vd(vd_k: 'ta.Type[TypedLoggerValue]', vd_v: TypedLoggerValueOrProviderOrAbsent) -> None: # noqa
|
304
333
|
if vd_k in vd:
|
305
334
|
dup_vd.setdefault(vd_k, []).append(vd_v)
|
@@ -307,12 +336,27 @@ class ChainTypedLoggerBindings(TypedLoggerBindings):
|
|
307
336
|
vd[vd_k] = vd_v
|
308
337
|
pcv.pop(vd_k, None)
|
309
338
|
|
310
|
-
def add_kds(it: 'ta.Iterable[ta.Tuple[str, TypedLoggerFieldValue]]') -> None: # noqa
|
311
|
-
collections.deque(itertools.starmap(add_kd, it), maxlen=0)
|
312
|
-
|
313
339
|
def add_vds(it: 'ta.Iterable[ta.Tuple[ta.Type[TypedLoggerValue], TypedLoggerValueOrProviderOrAbsent]]') -> None: # noqa
|
314
340
|
collections.deque(itertools.starmap(add_vd, it), maxlen=0)
|
315
341
|
|
342
|
+
#
|
343
|
+
|
344
|
+
mvd: ta.Dict[ta.Type[MultiTypedLoggerValue], ta.List[MultiTypedLoggerValue]] = {}
|
345
|
+
|
346
|
+
def add_mvd(mvd_k: 'ta.Type[MultiTypedLoggerValue]', mvd_v: MultiTypedLoggerValue) -> None: # noqa
|
347
|
+
try:
|
348
|
+
mvd_l = mvd[mvd_k]
|
349
|
+
except KeyError:
|
350
|
+
mvd_l = mvd[mvd_k] = []
|
351
|
+
mvd_l.append(mvd_v)
|
352
|
+
|
353
|
+
def add_mvds(it: 'ta.Iterable[ta.Tuple[ta.Type[MultiTypedLoggerValue], MultiTypedLoggerValue]]') -> None:
|
354
|
+
collections.deque(itertools.starmap(add_mvd, it), maxlen=0)
|
355
|
+
|
356
|
+
#
|
357
|
+
|
358
|
+
cvd: ta.Dict[ta.Type[TypedLoggerValue], TypedLoggerValueOrAbsent] = {}
|
359
|
+
|
316
360
|
def bad_type(*args, **kwargs): # noqa
|
317
361
|
raise ChainTypedLoggerBindingsUnhandledItemError
|
318
362
|
|
@@ -323,6 +367,9 @@ class ChainTypedLoggerBindings(TypedLoggerBindings):
|
|
323
367
|
add_vd,
|
324
368
|
add_vds,
|
325
369
|
|
370
|
+
add_mvd,
|
371
|
+
add_mvds,
|
372
|
+
|
326
373
|
cvd.update,
|
327
374
|
|
328
375
|
bad_type,
|
omlish/logs/typed/types.py
CHANGED
@@ -181,7 +181,6 @@ class TypedLoggerValue(Abstract, ta.Generic[T]):
|
|
181
181
|
def _typed_logger_unwrap_field_value(self, ctx: 'TypedLoggerContext') -> UnwrappedTypedLoggerFieldValue: # noqa
|
182
182
|
return self._v
|
183
183
|
|
184
|
-
@ta.final
|
185
184
|
def _typed_logger_visit_bindings(self, vst: 'TypedLoggerBindings._Visitor') -> None: # noqa
|
186
185
|
vst.accept_values(((type(self), self),))
|
187
186
|
vst.accept_const_values(((type(self), self),))
|
@@ -233,6 +232,22 @@ class DefaultTypedLoggerValue(TypedLoggerValue[T], Abstract):
|
|
233
232
|
return (cls.default_provider().provide_value(ctx),)
|
234
233
|
|
235
234
|
|
235
|
+
class MultiTypedLoggerValue(TypedLoggerValue[T], Abstract):
|
236
|
+
"""
|
237
|
+
Note: There is no DefaultMultiTypedLoggerValue.
|
238
|
+
"""
|
239
|
+
|
240
|
+
@classmethod
|
241
|
+
@abc.abstractmethod
|
242
|
+
def merge_values(cls, *values: T) -> T:
|
243
|
+
raise NotImplementedError
|
244
|
+
|
245
|
+
#
|
246
|
+
|
247
|
+
def _typed_logger_visit_bindings(self, vst: 'TypedLoggerBindings._Visitor') -> None: # noqa
|
248
|
+
vst.accept_multi_values(((type(self), self),))
|
249
|
+
|
250
|
+
|
236
251
|
##
|
237
252
|
|
238
253
|
|
omlish/marshal/__init__.py
CHANGED
omlish/typedvalues/__init__.py
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: omlish
|
3
|
-
Version: 0.0.0.
|
3
|
+
Version: 0.0.0.dev434
|
4
4
|
Summary: omlish
|
5
5
|
Author: wrmsr
|
6
6
|
License-Expression: BSD-3-Clause
|
@@ -18,7 +18,7 @@ Provides-Extra: all
|
|
18
18
|
Requires-Dist: anyio~=4.10; extra == "all"
|
19
19
|
Requires-Dist: sniffio~=1.3; extra == "all"
|
20
20
|
Requires-Dist: greenlet~=3.2; extra == "all"
|
21
|
-
Requires-Dist: trio~=0.
|
21
|
+
Requires-Dist: trio~=0.31; extra == "all"
|
22
22
|
Requires-Dist: trio-asyncio~=0.15; extra == "all"
|
23
23
|
Requires-Dist: lz4~=4.4; extra == "all"
|
24
24
|
Requires-Dist: python-snappy~=0.7; extra == "all"
|
@@ -58,7 +58,7 @@ Provides-Extra: async
|
|
58
58
|
Requires-Dist: anyio~=4.10; extra == "async"
|
59
59
|
Requires-Dist: sniffio~=1.3; extra == "async"
|
60
60
|
Requires-Dist: greenlet~=3.2; extra == "async"
|
61
|
-
Requires-Dist: trio~=0.
|
61
|
+
Requires-Dist: trio~=0.31; extra == "async"
|
62
62
|
Requires-Dist: trio-asyncio~=0.15; extra == "async"
|
63
63
|
Provides-Extra: compress
|
64
64
|
Requires-Dist: lz4~=4.4; extra == "compress"
|
@@ -294,9 +294,6 @@ examples are:
|
|
294
294
|
- **pytest** - What is used for all standard testing - as lite code has no dependencies of any kind its testing uses
|
295
295
|
stdlib's [unittest](https://docs.python.org/3/library/unittest.html).
|
296
296
|
- **wrapt** - For (optionally-enabled) injector circular proxies.
|
297
|
-
- **greenlet** - For some gnarly stuff like the
|
298
|
-
[sync<->async bridge](https://github.com/wrmsr/omlish/blob/master/omlish/asyncs/bridge.py) and the
|
299
|
-
[io trampoline](https://github.com/wrmsr/omlish/blob/master/omextra/io/trampoline.py).
|
300
297
|
- **sqlalchemy** - Parts of the codebase use SQLAlchemy for db stuff, but it is being migrated away from in favor of the
|
301
298
|
internal api. It will however likely still remain as an optional dep for the api adapter.
|
302
299
|
|
@@ -1,5 +1,5 @@
|
|
1
1
|
omlish/.omlish-manifests.json,sha256=FLw7xkPiSXuImZgqSP8BwrEib2R1doSzUPLUkc-QUIA,8410
|
2
|
-
omlish/__about__.py,sha256=
|
2
|
+
omlish/__about__.py,sha256=m7yiLBUWx0CVlaZfQTSqMs9tncfitfDQ8RfhF4ieLow,3575
|
3
3
|
omlish/__init__.py,sha256=SsyiITTuK0v74XpKV8dqNaCmjOlan1JZKrHQv5rWKPA,253
|
4
4
|
omlish/c3.py,sha256=ZNIMl1kwg3qdei4DiUrJPQe5M81S1e76N-GuNSwLBAE,8683
|
5
5
|
omlish/cached.py,sha256=MLap_p0rdGoDIMVhXVHm1tsbcWobJF0OanoodV03Ju8,542
|
@@ -19,13 +19,11 @@ omlish/argparse/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
19
19
|
omlish/argparse/all.py,sha256=NeeMM5MIebY7XDAHaCxUzeesEoUYwsf5i9PrBUcO1cI,1057
|
20
20
|
omlish/argparse/cli.py,sha256=60cfq_WFLwL3YsIQxGAQ7XDi-LzNjH33RavcKdRnhUU,8737
|
21
21
|
omlish/asyncs/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
22
|
-
omlish/asyncs/all.py,sha256=
|
23
|
-
omlish/asyncs/bridge.py,sha256=BPwEeiv3iG0uMk23PIWFkdGLyiBq_x3qnzheV7ysOqY,10129
|
22
|
+
omlish/asyncs/all.py,sha256=zE9zBNepDSczQ-QhnzwFz59IZIex3HuUqfKIgwbJLgY,329
|
24
23
|
omlish/asyncs/buffers.py,sha256=_Ds4Aa1bUWQwQTGmcYsKLjcJ_d5HgbSkPTFrG9y-eMQ,1424
|
25
24
|
omlish/asyncs/flavors.py,sha256=1mNxGNRVmjUHzA13K5ht8vdJv4CLEmzYTQ6BZXr1520,4866
|
26
25
|
omlish/asyncs/trio.py,sha256=fmZ5b_lKdVV8NQ3euCUutWgnkqTFzSnOjvJSA_jvmrE,367
|
27
26
|
omlish/asyncs/trio_asyncio.py,sha256=b6H5H32pB79Uz5xvWEmuhXTJgTAeKFHBHzocv_Rpt5A,1332
|
28
|
-
omlish/asyncs/utils.py,sha256=-oaa6nheDxMOxVDTfRylWZGlyOja3UVJEV2IibJXQv4,369
|
29
27
|
omlish/asyncs/anyio/__init__.py,sha256=AkwRD3XFWmEzBeHV-eAzwpA4F04bl7xyyapigrxMR8g,1747
|
30
28
|
omlish/asyncs/anyio/backends.py,sha256=jJIymWoiedaEJJm82gvKiJ41EWLQZ-bcyNHpbDpKKi4,1584
|
31
29
|
omlish/asyncs/anyio/futures.py,sha256=Nm1gLerZEnHk-rlsmr0UfK168IWIK6zA8EebZFtoY_E,2052
|
@@ -350,38 +348,43 @@ omlish/http/coro/server/fdio.py,sha256=qZE4g5y4XESsTObSKyVggI-yzig57gSGJb4Z0rcHv
|
|
350
348
|
omlish/http/coro/server/server.py,sha256=lkpcx4cb0mwDFYpP3MvW6mX0_1fKXUI8snm_bycyUwo,18681
|
351
349
|
omlish/http/coro/server/simple.py,sha256=j1RZ3niKrgGM2qFnjdYWn_eniZzay5j49Ca4L3u8vO4,3296
|
352
350
|
omlish/http/coro/server/sockets.py,sha256=24gU6wpIZuzYWKQD8UsHyYfTZlbcUFvkqXq5KVgWpQo,2261
|
353
|
-
omlish/inject/__init__.py,sha256=
|
354
|
-
omlish/inject/binder.py,sha256=
|
351
|
+
omlish/inject/__init__.py,sha256=1s_2338tLi2VWKy8HijBSkAlkanVY1uZ8iZec8SOEws,2929
|
352
|
+
omlish/inject/binder.py,sha256=_TNPGcqtaVqCLoxMx2LBVSvZWmAUs4JcxAqnCpy7PG0,5253
|
355
353
|
omlish/inject/bindings.py,sha256=PlvOnUREjvc6F8nOJdzl1k9SAf80icRB4qWFqDop87M,536
|
356
354
|
omlish/inject/eagers.py,sha256=JBY7PcjXt-Rg9scQ1ol9xpcoTLXkXC_Ie9uwTWdzUkA,340
|
357
355
|
omlish/inject/elements.py,sha256=y4luEO_-eOlVnLcUDiNGSyMXee4pusl46ZGr0JFhbcY,1405
|
358
356
|
omlish/inject/errors.py,sha256=_wkN2tF55gQzmMOMKJC_9jYHBZzaBiCDcyqI9Sf2UZs,626
|
359
|
-
omlish/inject/injector.py,sha256=
|
360
|
-
omlish/inject/inspect.py,sha256=
|
357
|
+
omlish/inject/injector.py,sha256=j78j4ArahsY_C3vgOIhzv29pDjp0o97yvmxHIr7jk2E,1125
|
358
|
+
omlish/inject/inspect.py,sha256=FWGEtxiFV_Sqqza9xnbYm4JgV2LE4D0s5iszV9Nd5_M,547
|
361
359
|
omlish/inject/keys.py,sha256=7jnI2cw7cvLlzZAfe5SC50O3oPOpOB6iGZGTigyfQvs,682
|
362
|
-
omlish/inject/listeners.py,sha256=
|
360
|
+
omlish/inject/listeners.py,sha256=bav7-uzfpajFAmH_snM0PW2oCfMavmhbE6R4-gjOmJ8,620
|
363
361
|
omlish/inject/lite.py,sha256=AFOCj_SznDCPjkiVSKdFXL2hH1q2o4kaDnzkxRWDpsI,2615
|
364
|
-
omlish/inject/managed.py,sha256
|
362
|
+
omlish/inject/managed.py,sha256=DKU4f_-20TXM51zrGU2XP-IX6Pzg8H9JfVJTIZH_-T8,2930
|
363
|
+
omlish/inject/maysync.py,sha256=xsVl2p-urkflKTFVQW86c3BJ6bnNeJrWC-u-UcSF1gU,441
|
365
364
|
omlish/inject/multis.py,sha256=Dn63jE8P5ahSKc1IDBdzzx6ByBCgVOth5t4frG9m4UA,3336
|
366
365
|
omlish/inject/origins.py,sha256=-qXa18rIIkNwBdTrvASRDjgPYnoY6n6OPC222jJDrXg,551
|
367
366
|
omlish/inject/overrides.py,sha256=ybEcq9cDf6kvqu5mqnwi6Evj0MFjKNeE3r0oUlGw5E4,546
|
368
367
|
omlish/inject/privates.py,sha256=CyE-hvQ-F_uyCzcwfdiYVtfm9IF1WZvMDOYilFyZmWk,658
|
369
|
-
omlish/inject/providers.py,sha256=
|
370
|
-
omlish/inject/scopes.py,sha256=
|
368
|
+
omlish/inject/providers.py,sha256=Usvi0YgjS5jrAqQFhzeU2artxRSTM4zIoz72lac1PEA,931
|
369
|
+
omlish/inject/scopes.py,sha256=p1uOUMtlzhIWH0HC08HCIxeWYIHb2i9O-Rhgzp32Csw,2576
|
370
|
+
omlish/inject/sync.py,sha256=c60h6CSzk4XDOy4peZ9BuJypsp-OTFh_ZnF50LmxMTg,1007
|
371
371
|
omlish/inject/tags.py,sha256=gRDLa-WdZc9DC7KwwmoIPAi8g_qdGpRWuMT7HCd7CL0,433
|
372
372
|
omlish/inject/types.py,sha256=Z-ZEdgtCpHBNrbxxKaMVvfeD7hYXdL4rC7A9_VGxZ6g,256
|
373
373
|
omlish/inject/utils.py,sha256=Gc2qq45KgkyqDt03WSvOEZBCiuqQ6ESwplx5ZRBcY5M,413
|
374
374
|
omlish/inject/impl/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
375
375
|
omlish/inject/impl/bindings.py,sha256=xSvUcoDz8NH-aNHPwBPEZsFg73K2WcF_A63npVbGt_k,420
|
376
|
-
omlish/inject/impl/elements.py,sha256=
|
377
|
-
omlish/inject/impl/injector.py,sha256=
|
378
|
-
omlish/inject/impl/inspect.py,sha256=
|
379
|
-
omlish/inject/impl/
|
376
|
+
omlish/inject/impl/elements.py,sha256=5wb_JCyfEKrJ1Y6TIZVS-gwgmLTZIUXZ_TV735RKcEM,5901
|
377
|
+
omlish/inject/impl/injector.py,sha256=0e8Il9ObzWMDBJDLQk9RRBkK83mk-nIRlKU_LtmQfLI,8266
|
378
|
+
omlish/inject/impl/inspect.py,sha256=HLhz5DfP9dwvbIYnwqsfR9ADjCoWs9q4Gh7J4BpImf4,3135
|
379
|
+
omlish/inject/impl/maysync.py,sha256=7GWjrvJStOx85BCvk8IJAmmkoGkChFAAi2h7j2pe6Qs,1207
|
380
|
+
omlish/inject/impl/multis.py,sha256=fa31UdkBYdAulfYdrkU1klDZicuQRyaBDbG28kaw8SI,2092
|
380
381
|
omlish/inject/impl/origins.py,sha256=dgGdkoMN6I4DZrWjlpZYijeFsrF6Up1WPq_QSAgTtuQ,1676
|
381
|
-
omlish/inject/impl/privates.py,sha256=
|
382
|
-
omlish/inject/impl/providers.py,sha256=
|
382
|
+
omlish/inject/impl/privates.py,sha256=uxMAl0MOPu-MeLd-q1DySu7J5FcdRVL1B0XgC4dnB6I,2667
|
383
|
+
omlish/inject/impl/providers.py,sha256=qqPUF9qZZ-CGTTc7ZPskjexM2aK8xdY0gLPMshB5VKw,2127
|
384
|
+
omlish/inject/impl/providers2.py,sha256=NOIbX_sTAL8uXf-lMoOiFTFZQMe6ywLU7nIghgF_ISw,1326
|
383
385
|
omlish/inject/impl/proxy.py,sha256=S1qNn-5pbsAj9hhasQZ9nnFSCX8SuAYCcBOZ6BtKxlk,1641
|
384
|
-
omlish/inject/impl/scopes.py,sha256=
|
386
|
+
omlish/inject/impl/scopes.py,sha256=5AMVzO9HgJT7yNwBCG2us9pUxQZpySsalb0qI2ZMeJ4,5876
|
387
|
+
omlish/inject/impl/sync.py,sha256=v0FrcMfEFIT358AmAuERvzJ3o19r6DLZj6_0hjuW5Dk,1090
|
385
388
|
omlish/io/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
386
389
|
omlish/io/abc.py,sha256=M40QB2udYpCEqmlxCcHv6FlJYJY6ymmJQBlaklYv0U8,1256
|
387
390
|
omlish/io/buffers.py,sha256=WRuojN-EICJ9eIhy6U2Tw2-oTBIwHTBhN86wQiD2s88,7293
|
@@ -415,14 +418,14 @@ omlish/iterators/iterators.py,sha256=RxW35yQ5ed8vBQ22IqpDXFx-i5JiLQdp7-pkMZXhJJ8
|
|
415
418
|
omlish/iterators/recipes.py,sha256=wOwOZg-zWG9Zc3wcAxJFSe2rtavVBYwZOfG09qYEx_4,472
|
416
419
|
omlish/iterators/tools.py,sha256=M16LXrJhMdsz5ea2qH0vws30ZvhQuQSCVFSLpRf_gTg,2096
|
417
420
|
omlish/iterators/unique.py,sha256=BSE-eanva8byFCJi09Nt2zzTsVr8LnTqY1PIInGYRs0,1396
|
418
|
-
omlish/lang/__init__.py,sha256=
|
419
|
-
omlish/lang/asyncs.py,sha256=
|
421
|
+
omlish/lang/__init__.py,sha256=HqVWUkrUArOsjGoWrL-Ck6Zz2U6kKpj2DzbpHed-k1o,10431
|
422
|
+
omlish/lang/asyncs.py,sha256=LV_4I3-WbLY8-SUXYJvKlzfL-Hd5ASFOlyPi3uMJYJk,2266
|
420
423
|
omlish/lang/attrstorage.py,sha256=UUnoENCMQF3twBfxBcIKa5mpXsAxWnNYDayhU8xgmpU,5224
|
421
424
|
omlish/lang/casing.py,sha256=3_c7cxQOc4z_YezaU2B4NCTAsPh_kDL4wUTK5kZU6kg,4675
|
422
425
|
omlish/lang/clsdct.py,sha256=HAGIvBSbCefzRjXriwYSBLO7QHKRv2UsE78jixOb-fA,1828
|
423
426
|
omlish/lang/collections.py,sha256=kVMp1JJ6ycvKzuiOmf2ZF5Eg2mm3vJGPjkUcV_IACMk,2528
|
424
427
|
omlish/lang/comparison.py,sha256=MOwEG0Yny-jBPHO9kQto9FSRyeNpQW24UABsghkrHxY,1356
|
425
|
-
omlish/lang/contextmanagers.py,sha256=
|
428
|
+
omlish/lang/contextmanagers.py,sha256=jkQ9YHhQySYHPH0BrWxBrNzMuG7IpSWcPvcdfMIBE4A,9578
|
426
429
|
omlish/lang/datetimes.py,sha256=01tg21QOx-PWDlm-CSFTalym3vpqF0EKzeinmtcVNoU,379
|
427
430
|
omlish/lang/descriptors.py,sha256=sVJ1Pr4ihp26Tu9UCvDSyfSf-DhBnFGnbpYIFF32c7g,6877
|
428
431
|
omlish/lang/enums.py,sha256=F9tflHfaAoV2MpyuhZzpfX9-H55M3zNa9hCszsngEo8,111
|
@@ -439,7 +442,7 @@ omlish/lang/overrides.py,sha256=IBzK6ljfLX6TLgIyKTSjhqTLcuKRkQNVtEOnBLS4nuA,2095
|
|
439
442
|
omlish/lang/params.py,sha256=sfbNoGrKCsAtubFufj_uh_WKshIgA8fqJ4PmLH1PH00,6639
|
440
443
|
omlish/lang/recursion.py,sha256=1VfSqzKO-8Is3t9LKw0W4jwPfE0aBS70EUlbUxAx4eE,1900
|
441
444
|
omlish/lang/resolving.py,sha256=nMosn-rcYjI8t6b35oICDyPw6t6-HvWj5jMdkfn1jfA,1612
|
442
|
-
omlish/lang/resources.py,sha256=
|
445
|
+
omlish/lang/resources.py,sha256=awfh33Uxkd9Ho-5Z3d9CPWQE3gjktV0XWM6XbdG0ejA,2845
|
443
446
|
omlish/lang/strings.py,sha256=TY-v0iGu6BxEKb99YS-VmIJqc-sTAqMv7mCDJQALMnI,4550
|
444
447
|
omlish/lang/sys.py,sha256=KPe1UOXk1VxlOYt_aLmhN0KqsA4wnP-4nm4WEwO49pw,411
|
445
448
|
omlish/lang/typing.py,sha256=ZN4t8oGSSknf_T1HbfqVQ7Y9OOZ1RkikYihNxdBlTFQ,3733
|
@@ -455,9 +458,11 @@ omlish/lang/classes/restrict.py,sha256=CUyvLpMYiQwTjpzo5sdG_lQxdeEIq2z2xSVNrsI9K
|
|
455
458
|
omlish/lang/classes/simple.py,sha256=3AJSs-plVg2flq4SC6I39LxP0nBaB241puv3D5YCP5I,2973
|
456
459
|
omlish/lang/classes/virtual.py,sha256=J4y-uiv1RaP2rfFeptXqQ1a4MRek0TMlAFFraO_lzhs,3397
|
457
460
|
omlish/lang/imports/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
461
|
+
omlish/lang/imports/capture.py,sha256=hy9hgUmY1e9ElS6NfMuFdm-uY4hdnzQ7uBvuUVW4i-Y,15078
|
458
462
|
omlish/lang/imports/conditional.py,sha256=R-E47QD95mMonPImWlrde3rnJrFKCCkYz71c94W05sc,1006
|
459
|
-
omlish/lang/imports/lazy.py,sha256=
|
460
|
-
omlish/lang/imports/
|
463
|
+
omlish/lang/imports/lazy.py,sha256=Eefs9hkj5surMdwgxX_Q3BOqPcox10v0sKT5rKIQknc,808
|
464
|
+
omlish/lang/imports/proxy.py,sha256=6c4L-njdAOsGrhi-gdv_R3nHBEiPS7BWHaBU7-YOBfk,1553
|
465
|
+
omlish/lang/imports/proxyinit.py,sha256=W7_FxDxe4aAQLUxNF1U6-2JROwK75HgRGEGidDKB-t0,4400
|
461
466
|
omlish/lang/imports/resolving.py,sha256=DeRarn35Fryg5JhVhy8wbiC9lvr58AnllI9B_reswUE,2085
|
462
467
|
omlish/lang/imports/traversal.py,sha256=pbFQIa880NGjSfcLsno2vE_G41_CLwDHb-7gWg2J3BI,2855
|
463
468
|
omlish/lifecycles/__init__.py,sha256=zOuvV4pErPwxcKUSgshmME2Duw9GrjwckpNmW3FPKng,810
|
@@ -471,7 +476,7 @@ omlish/lifecycles/transitions.py,sha256=3IFdWGtAeoy3XRlIyW7yCKV4e4Iof9ytkqklGMRF
|
|
471
476
|
omlish/lite/__init__.py,sha256=cyZEpGob7XjU8DohyNxVe5CQRk4CQ5vrHL42OdhQb8w,148
|
472
477
|
omlish/lite/abstract.py,sha256=Z3kLviPNGLkmA8m8BZILzWxez_sP18OyzgMP3-c2-RI,4068
|
473
478
|
omlish/lite/args.py,sha256=ILJXAiN3KjIoJwY42aKpYPngUdxHIy9ssVIExFVz3fE,978
|
474
|
-
omlish/lite/asyncs.py,sha256=
|
479
|
+
omlish/lite/asyncs.py,sha256=sTXTUTTVI8m1a1P6NxObQKk-NFKlmpcnNbucr4Fg-NU,937
|
475
480
|
omlish/lite/attrops.py,sha256=bUa2ILC4Z89-B1IWSac9XV_VvjKDnQXKDR0mZ6e9SMk,8764
|
476
481
|
omlish/lite/cached.py,sha256=ocQcppTwGdSnKPYMz75VoH526UUT8YtDJeRczBX0-wI,1306
|
477
482
|
omlish/lite/check.py,sha256=ytCkwZoKfOlJqylL-AGm8C2WfsWJd2q3kFbnZCzX3_M,13844
|
@@ -483,7 +488,7 @@ omlish/lite/inject.py,sha256=Z0d3dnjxt9czMFwWk_y-Yl7yItCUa5Nf1YRu4GkMA5k,29045
|
|
483
488
|
omlish/lite/json.py,sha256=m0Ce9eqUZG23-H7-oOp8n1sf4fzno5vtK4AK_4Vc-Mg,706
|
484
489
|
omlish/lite/marshal.py,sha256=J0VNr9_LjGLjxKW0wlZtIFnh_US7zwstCmtpe9Pk_D0,22969
|
485
490
|
omlish/lite/maybes.py,sha256=NusCpK0FVqkIutw6_Wldn69G5VyKYhat7SegBIQmGpk,4412
|
486
|
-
omlish/lite/maysync.py,sha256=
|
491
|
+
omlish/lite/maysync.py,sha256=NiltEfX_mc7jWgWZ9XAqkDzMlLVprTAZvXRObXJT_IE,14926
|
487
492
|
omlish/lite/objects.py,sha256=HzN_4J6w6WDLKDrW8jSNUKgfAR5vUsB42rtSCu04oqQ,1921
|
488
493
|
omlish/lite/pycharm.py,sha256=FRHGcCDo42UzZXqNwW_DkhI-6kb_CmJKPiQ8F6mYkLA,1174
|
489
494
|
omlish/lite/reflect.py,sha256=aTRQJ-hgnyRxr0dFxivUTScmUgP7zcw_iDQZIsarG24,2119
|
@@ -499,7 +504,7 @@ omlish/lite/wrappers.py,sha256=d00Ls2kFHuogKd5wEBaU65VNCN10YXIZtiwu1mbMpmA,530
|
|
499
504
|
omlish/logs/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
500
505
|
omlish/logs/all.py,sha256=GqST35bRnHgpGmQXvtHih7kLaw5DcFgB32uxPGAsgSI,1717
|
501
506
|
omlish/logs/base.py,sha256=Z1hfwYS2LgMJxFIyHiOvYa2meu2MH3kQDkhaWRNzt0M,5698
|
502
|
-
omlish/logs/contexts.py,sha256=
|
507
|
+
omlish/logs/contexts.py,sha256=qMX-BrOKmYIBOXIlSntKJT9mcsRryTqfcTFp9K1GJmE,4836
|
503
508
|
omlish/logs/formatters.py,sha256=g8oGfP_ok0nrW9opIIh5LqcQTmdufWFGO-9pRKX4m3Q,242
|
504
509
|
omlish/logs/infos.py,sha256=Nr2SbyI978vP5BTiVZsXUBdy2k0CUiwggcW-wewJHmo,11560
|
505
510
|
omlish/logs/levels.py,sha256=Eze-k_LPgFzbNMnG10F2bRKfL3veQpIxiegvN5rGeWM,2909
|
@@ -517,11 +522,11 @@ omlish/logs/std/json.py,sha256=QJ5lywLsRsPyVno2nk2kOw-Z1z3bfrDiZzqcRUdWUMY,1382
|
|
517
522
|
omlish/logs/std/loggers.py,sha256=hJIEC5BGaDOxgikTYKJ_qA_moS4CcHLMDAVKFDDKdHo,1144
|
518
523
|
omlish/logs/std/noisy.py,sha256=hWpbseerZqlHdEPEajDTSmcRhx8LmmNAxz_7GBZAO9s,353
|
519
524
|
omlish/logs/std/proxy.py,sha256=9MVV5kbj9nwl3KZGtrYCIb5XTpv33f33zZ7P_B58fX0,2394
|
520
|
-
omlish/logs/std/records.py,sha256=
|
525
|
+
omlish/logs/std/records.py,sha256=oI3eVPzoCNPRiEh2hA8BDKp1vM3uetYecek1AB0B3UA,25426
|
521
526
|
omlish/logs/typed/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
522
|
-
omlish/logs/typed/bindings.py,sha256=
|
527
|
+
omlish/logs/typed/bindings.py,sha256=7F6zPZKJ0cclg58xIMMrOG-vLv1KJ5dsXGwg9glSZFg,19919
|
523
528
|
omlish/logs/typed/contexts.py,sha256=MU1RqHtmYbnxoLfLhMZbTbRd-WfYEyeVo7_3VnG3rY0,4027
|
524
|
-
omlish/logs/typed/types.py,sha256=
|
529
|
+
omlish/logs/typed/types.py,sha256=VTxsDN7qN9-WnwxOBI7OFH1taOuLscTpm3t8edJpNik,14838
|
525
530
|
omlish/logs/typed/values.py,sha256=s8x-P6tYq-BrhoA98Z5tfi70Tl1hHhcxOd1qao_h6ps,3278
|
526
531
|
omlish/manifests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
527
532
|
omlish/manifests/base.py,sha256=wW-De-pU3cef-0vGsgo-ypftDwc3tCBxhRAzPtrdark,918
|
@@ -529,7 +534,7 @@ omlish/manifests/globals.py,sha256=kVqQ-fT4kc7xWzLHoI731GviitFPv2v2yqw-p7t7Exs,2
|
|
529
534
|
omlish/manifests/loading.py,sha256=s6KnhdFQCsI2i0Rus1sMU0so2v8dUBnk59BJkSnxGt8,17514
|
530
535
|
omlish/manifests/static.py,sha256=9BaPBLkuzxHmg5A-5k9BjjBFINCdmFOIu06dMFgCfz4,497
|
531
536
|
omlish/manifests/types.py,sha256=NeOGuIVrcbqjCDbQ3MnCxxHAgHnw0CkWJsBzo230PWE,453
|
532
|
-
omlish/marshal/__init__.py,sha256=
|
537
|
+
omlish/marshal/__init__.py,sha256=_QPYoxtmqfd2szwSuPtbIU8RwTIh_5gTJm--yvVWMcY,5969
|
533
538
|
omlish/marshal/globals.py,sha256=Q6G18hcUwUDDNnpyRPnR5Tn_XZpZCSIEXo09nYSOaNU,2236
|
534
539
|
omlish/marshal/naming.py,sha256=Mk5YrbES836_KflNNRoc5Ajd96iMYLQIMERKx1KpT4g,865
|
535
540
|
omlish/marshal/standard.py,sha256=6L4FK7QVgVFAf2jkTQlCvN-15DWK49VCNlNwCBea3-8,6674
|
@@ -882,7 +887,7 @@ omlish/text/antlr/_runtime/xpath/XPathLexer.py,sha256=WvGKQjQnu7pX5C4CFKtsCzba2B
|
|
882
887
|
omlish/text/antlr/_runtime/xpath/__init__.py,sha256=lMd_BbXYdlDhZQN_q0TKN978XW5G0pq618F0NaLkpFE,71
|
883
888
|
omlish/text/go/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
884
889
|
omlish/text/go/quoting.py,sha256=zbcPEDWsdj7GAemtu0x8nwMqpIu2C_5iInSwn6mMWlE,9142
|
885
|
-
omlish/typedvalues/__init__.py,sha256=
|
890
|
+
omlish/typedvalues/__init__.py,sha256=dQpM8VaON8S7dUv1LBwhyBDjUVo7EW475a9DpnDQz1E,936
|
886
891
|
omlish/typedvalues/accessor.py,sha256=2PQVoFrrCTOcZACAQ28GOvF9xhKyKz27GMSfS0xq5Pc,3184
|
887
892
|
omlish/typedvalues/collection.py,sha256=CK4Vk9kJqAt2V8o6I4zGyv2u9DKov12uSvsGdqEd2Ws,5793
|
888
893
|
omlish/typedvalues/consumer.py,sha256=lDOE-O_sgGbOvbcBg2g5ZRaV2WixnuEYxFsJBaj18oU,4690
|
@@ -892,9 +897,9 @@ omlish/typedvalues/marshal.py,sha256=AtBz7Jq-BfW8vwM7HSxSpR85JAXmxK2T0xDblmm1HI0
|
|
892
897
|
omlish/typedvalues/of_.py,sha256=UXkxSj504WI2UrFlqdZJbu2hyDwBhL7XVrc2qdR02GQ,1309
|
893
898
|
omlish/typedvalues/reflect.py,sha256=PAvKW6T4cW7u--iX80w3HWwZUS3SmIZ2_lQjT65uAyk,1026
|
894
899
|
omlish/typedvalues/values.py,sha256=ym46I-q2QJ_6l4UlERqv3yj87R-kp8nCKMRph0xQ3UA,1307
|
895
|
-
omlish-0.0.0.
|
896
|
-
omlish-0.0.0.
|
897
|
-
omlish-0.0.0.
|
898
|
-
omlish-0.0.0.
|
899
|
-
omlish-0.0.0.
|
900
|
-
omlish-0.0.0.
|
900
|
+
omlish-0.0.0.dev434.dist-info/licenses/LICENSE,sha256=B_hVtavaA8zCYDW99DYdcpDLKz1n3BBRjZrcbv8uG8c,1451
|
901
|
+
omlish-0.0.0.dev434.dist-info/METADATA,sha256=fQJYAY6N-2PAgl3mzD4PjfFG_SymockqND184l4ForI,19005
|
902
|
+
omlish-0.0.0.dev434.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
903
|
+
omlish-0.0.0.dev434.dist-info/entry_points.txt,sha256=Lt84WvRZJskWCAS7xnQGZIeVWksprtUHj0llrvVmod8,35
|
904
|
+
omlish-0.0.0.dev434.dist-info/top_level.txt,sha256=pePsKdLu7DvtUiecdYXJ78iO80uDNmBlqe-8hOzOmfs,7
|
905
|
+
omlish-0.0.0.dev434.dist-info/RECORD,,
|