omlish 0.0.0.dev416__py3-none-any.whl → 0.0.0.dev417__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.
Files changed (38) hide show
  1. omlish/__about__.py +2 -2
  2. omlish/bootstrap/__init__.py +2 -2
  3. omlish/dataclasses/__init__.py +23 -13
  4. omlish/dataclasses/impl/processing/base.py +1 -1
  5. omlish/marshal/__init__.py +224 -203
  6. omlish/marshal/base/configs.py +18 -0
  7. omlish/marshal/base/contexts.py +8 -7
  8. omlish/marshal/base/overrides.py +11 -6
  9. omlish/marshal/base/registries.py +58 -14
  10. omlish/marshal/base/types.py +5 -5
  11. omlish/marshal/factories/invalidate.py +118 -0
  12. omlish/marshal/factories/moduleimport/__init__.py +0 -0
  13. omlish/marshal/factories/moduleimport/configs.py +26 -0
  14. omlish/marshal/factories/moduleimport/factories.py +114 -0
  15. omlish/marshal/factories/typecache.py +24 -4
  16. omlish/marshal/globals.py +28 -13
  17. omlish/marshal/polymorphism/metadata.py +2 -2
  18. omlish/marshal/standard.py +132 -65
  19. omlish/secrets/all.py +0 -9
  20. omlish/secrets/secrets.py +4 -6
  21. omlish/specs/jsonrpc/__init__.py +2 -2
  22. omlish/specs/jsonschema/__init__.py +2 -2
  23. omlish/specs/openapi/__init__.py +2 -2
  24. omlish/sql/queries/__init__.py +4 -2
  25. omlish/sql/tabledefs/__init__.py +2 -2
  26. omlish/typedvalues/__init__.py +2 -2
  27. {omlish-0.0.0.dev416.dist-info → omlish-0.0.0.dev417.dist-info}/METADATA +1 -1
  28. {omlish-0.0.0.dev416.dist-info → omlish-0.0.0.dev417.dist-info}/RECORD +38 -33
  29. /omlish/bootstrap/{marshal.py → _marshal.py} +0 -0
  30. /omlish/specs/jsonrpc/{marshal.py → _marshal.py} +0 -0
  31. /omlish/specs/jsonschema/{marshal.py → _marshal.py} +0 -0
  32. /omlish/specs/openapi/{marshal.py → _marshal.py} +0 -0
  33. /omlish/sql/queries/{marshal.py → _marshal.py} +0 -0
  34. /omlish/sql/tabledefs/{marshal.py → _marshal.py} +0 -0
  35. {omlish-0.0.0.dev416.dist-info → omlish-0.0.0.dev417.dist-info}/WHEEL +0 -0
  36. {omlish-0.0.0.dev416.dist-info → omlish-0.0.0.dev417.dist-info}/entry_points.txt +0 -0
  37. {omlish-0.0.0.dev416.dist-info → omlish-0.0.0.dev417.dist-info}/licenses/LICENSE +0 -0
  38. {omlish-0.0.0.dev416.dist-info → omlish-0.0.0.dev417.dist-info}/top_level.txt +0 -0
@@ -1,3 +1,9 @@
1
+ """
2
+ FIXME:
3
+ - this is gross and temporary
4
+ - move to global registry somehow
5
+ """
6
+ import threading
1
7
  import typing as ta
2
8
 
3
9
  from .base.types import MarshalerFactory
@@ -16,6 +22,10 @@ from .composite.optionals import OptionalMarshalerFactory
16
22
  from .composite.optionals import OptionalUnmarshalerFactory
17
23
  from .composite.special import SequenceNotStrMarshalerFactory
18
24
  from .composite.special import SequenceNotStrUnmarshalerFactory
25
+ from .factories.invalidate import InvalidatableMarshalerFactory
26
+ from .factories.invalidate import InvalidatableUnmarshalerFactory
27
+ from .factories.moduleimport.factories import ModuleImportingMarshalerFactory
28
+ from .factories.moduleimport.factories import ModuleImportingUnmarshalerFactory
19
29
  from .factories.multi import MultiMarshalerFactory
20
30
  from .factories.multi import MultiUnmarshalerFactory
21
31
  from .factories.recursive import RecursiveMarshalerFactory
@@ -45,24 +55,53 @@ from .trivial.any import ANY_UNMARSHALER_FACTORY
45
55
  ##
46
56
 
47
57
 
48
- STANDARD_MARSHALER_FACTORIES: list[MarshalerFactory] = [
49
- PRIMITIVE_MARSHALER_FACTORY,
50
- NewtypeMarshalerFactory(),
51
- OptionalMarshalerFactory(),
52
- PrimitiveUnionMarshalerFactory(),
53
- DataclassMarshalerFactory(),
54
- NamedtupleMarshalerFactory(),
55
- EnumMarshalerFactory(),
56
- LiteralMarshalerFactory(),
57
- NUMBERS_MARSHALER_FACTORY,
58
- UUID_MARSHALER_FACTORY,
59
- DATETIME_MARSHALER_FACTORY,
60
- MaybeMarshalerFactory(),
61
- MappingMarshalerFactory(),
62
- SequenceNotStrMarshalerFactory(),
63
- IterableMarshalerFactory(),
64
- ANY_MARSHALER_FACTORY,
65
- ]
58
+ class StandardFactories(ta.NamedTuple):
59
+ marshaler_factories: ta.Sequence[MarshalerFactory]
60
+ unmarshaler_factories: ta.Sequence[UnmarshalerFactory]
61
+
62
+
63
+ DEFAULT_STANDARD_FACTORIES = StandardFactories(
64
+ (
65
+ PRIMITIVE_MARSHALER_FACTORY,
66
+ NewtypeMarshalerFactory(),
67
+ OptionalMarshalerFactory(),
68
+ PrimitiveUnionMarshalerFactory(),
69
+ DataclassMarshalerFactory(),
70
+ NamedtupleMarshalerFactory(),
71
+ EnumMarshalerFactory(),
72
+ LiteralMarshalerFactory(),
73
+ NUMBERS_MARSHALER_FACTORY,
74
+ UUID_MARSHALER_FACTORY,
75
+ DATETIME_MARSHALER_FACTORY,
76
+ MaybeMarshalerFactory(),
77
+ MappingMarshalerFactory(),
78
+ SequenceNotStrMarshalerFactory(),
79
+ IterableMarshalerFactory(),
80
+ ANY_MARSHALER_FACTORY,
81
+ ),
82
+
83
+ (
84
+ PRIMITIVE_UNMARSHALER_FACTORY,
85
+ NewtypeUnmarshalerFactory(),
86
+ OptionalUnmarshalerFactory(),
87
+ PrimitiveUnionUnmarshalerFactory(),
88
+ DataclassUnmarshalerFactory(),
89
+ NamedtupleUnmarshalerFactory(),
90
+ EnumUnmarshalerFactory(),
91
+ LiteralUnmarshalerFactory(),
92
+ NUMBERS_UNMARSHALER_FACTORY,
93
+ UUID_UNMARSHALER_FACTORY,
94
+ DATETIME_UNMARSHALER_FACTORY,
95
+ MaybeUnmarshalerFactory(),
96
+ MappingUnmarshalerFactory(),
97
+ SequenceNotStrUnmarshalerFactory(),
98
+ IterableUnmarshalerFactory(),
99
+ ANY_UNMARSHALER_FACTORY,
100
+ ),
101
+ )
102
+
103
+
104
+ ##
66
105
 
67
106
 
68
107
  def new_standard_marshaler_factory(
@@ -70,38 +109,32 @@ def new_standard_marshaler_factory(
70
109
  first: ta.Iterable[MarshalerFactory] | None = None,
71
110
  last: ta.Iterable[MarshalerFactory] | None = None,
72
111
  ) -> MarshalerFactory:
73
- return TypeCacheMarshalerFactory(
74
- RecursiveMarshalerFactory(
75
- MultiMarshalerFactory([
76
- *(first if first is not None else []),
77
- *STANDARD_MARSHALER_FACTORIES,
78
- *(last if last is not None else []),
79
- ]),
80
- ),
81
- )
112
+ gl: ta.Any = None
82
113
 
114
+ def fi_fn():
115
+ nonlocal gl
116
+ gl = DEFAULT_STANDARD_FACTORIES
83
117
 
84
- ##
118
+ fi: MarshalerFactory = MultiMarshalerFactory([
119
+ *(first if first is not None else []),
120
+ *gl.marshaler_factories,
121
+ *(last if last is not None else []),
122
+ ])
123
+
124
+ fi = RecursiveMarshalerFactory(fi)
125
+
126
+ fi = TypeCacheMarshalerFactory(fi)
85
127
 
128
+ return fi
86
129
 
87
- STANDARD_UNMARSHALER_FACTORIES: list[UnmarshalerFactory] = [
88
- PRIMITIVE_UNMARSHALER_FACTORY,
89
- NewtypeUnmarshalerFactory(),
90
- OptionalUnmarshalerFactory(),
91
- PrimitiveUnionUnmarshalerFactory(),
92
- DataclassUnmarshalerFactory(),
93
- NamedtupleUnmarshalerFactory(),
94
- EnumUnmarshalerFactory(),
95
- LiteralUnmarshalerFactory(),
96
- NUMBERS_UNMARSHALER_FACTORY,
97
- UUID_UNMARSHALER_FACTORY,
98
- DATETIME_UNMARSHALER_FACTORY,
99
- MaybeUnmarshalerFactory(),
100
- MappingUnmarshalerFactory(),
101
- SequenceNotStrUnmarshalerFactory(),
102
- IterableUnmarshalerFactory(),
103
- ANY_UNMARSHALER_FACTORY,
104
- ]
130
+ fo: MarshalerFactory = (iv := InvalidatableMarshalerFactory(
131
+ fi_fn,
132
+ lambda: DEFAULT_STANDARD_FACTORIES is not gl,
133
+ ))
134
+
135
+ fo = ModuleImportingMarshalerFactory(fo, iv.invalidate)
136
+
137
+ return fo
105
138
 
106
139
 
107
140
  def new_standard_unmarshaler_factory(
@@ -109,33 +142,67 @@ def new_standard_unmarshaler_factory(
109
142
  first: ta.Iterable[UnmarshalerFactory] | None = None,
110
143
  last: ta.Iterable[UnmarshalerFactory] | None = None,
111
144
  ) -> UnmarshalerFactory:
112
- return TypeCacheUnmarshalerFactory(
113
- RecursiveUnmarshalerFactory(
114
- MultiUnmarshalerFactory([
115
- *(first if first is not None else []),
116
- *STANDARD_UNMARSHALER_FACTORIES,
117
- *(last if last is not None else []),
118
- ]),
119
- ),
120
- )
145
+ gl: ta.Any = None
146
+
147
+ def fi_fn():
148
+ nonlocal gl
149
+ gl = DEFAULT_STANDARD_FACTORIES
150
+
151
+ fi: UnmarshalerFactory = MultiUnmarshalerFactory([
152
+ *(first if first is not None else []),
153
+ *gl.unmarshaler_factories,
154
+ *(last if last is not None else []),
155
+ ])
156
+
157
+ fi = RecursiveUnmarshalerFactory(fi)
158
+
159
+ fi = TypeCacheUnmarshalerFactory(fi)
160
+
161
+ return fi
162
+
163
+ fo: UnmarshalerFactory = (iv := InvalidatableUnmarshalerFactory(
164
+ fi_fn,
165
+ lambda: DEFAULT_STANDARD_FACTORIES is not gl,
166
+ ))
167
+
168
+ fo = ModuleImportingUnmarshalerFactory(fo, iv.invalidate)
169
+
170
+ return fo
121
171
 
122
172
 
123
173
  ##
124
174
 
125
175
 
176
+ _GLOBAL_LOCK = threading.RLock()
177
+
178
+
126
179
  def install_standard_factories(
127
180
  *factories: MarshalerFactory | UnmarshalerFactory,
128
181
  ) -> None:
129
- for f in factories:
130
- k = False
182
+ with _GLOBAL_LOCK:
183
+ global DEFAULT_STANDARD_FACTORIES
184
+
185
+ m_lst: list[MarshalerFactory] = list(DEFAULT_STANDARD_FACTORIES.marshaler_factories)
186
+ u_lst: list[UnmarshalerFactory] = list(DEFAULT_STANDARD_FACTORIES.unmarshaler_factories)
187
+
188
+ for f in factories:
189
+ k = False
190
+
191
+ if isinstance(f, MarshalerFactory):
192
+ m_lst[0:0] = [f]
193
+ k = True
194
+
195
+ if isinstance(f, UnmarshalerFactory):
196
+ u_lst[0:0] = [f]
197
+ k = True
131
198
 
132
- if isinstance(f, MarshalerFactory):
133
- STANDARD_MARSHALER_FACTORIES[0:0] = [f]
134
- k = True
199
+ if not k:
200
+ raise TypeError(f)
135
201
 
136
- if isinstance(f, UnmarshalerFactory):
137
- STANDARD_UNMARSHALER_FACTORIES[0:0] = [f]
138
- k = True
202
+ new = StandardFactories(
203
+ tuple(m_lst),
204
+ tuple(u_lst),
205
+ )
139
206
 
140
- if not k:
141
- raise TypeError(f)
207
+ if new != DEFAULT_STANDARD_FACTORIES:
208
+ DEFAULT_STANDARD_FACTORIES = new
omlish/secrets/all.py CHANGED
@@ -16,12 +16,3 @@ from .secrets import ( # noqa
16
16
  )
17
17
 
18
18
  ref = SecretRef
19
-
20
-
21
- ##
22
-
23
-
24
- from .. import lang as _lang # noqa
25
-
26
- # FIXME: only happens when 'all' is imported lol
27
- _lang.register_conditional_import('..marshal', '.marshal', __package__)
omlish/secrets/secrets.py CHANGED
@@ -20,6 +20,10 @@ import typing as ta
20
20
 
21
21
  from .. import dataclasses as dc
22
22
  from .. import lang
23
+ from .. import marshal as msh
24
+
25
+
26
+ msh.register_global_module_import('.marshal', __package__)
23
27
 
24
28
 
25
29
  log = logging.getLogger(__name__)
@@ -341,9 +345,3 @@ class EnvVarSecrets(Secrets):
341
345
  return dct.pop(ekey)
342
346
  else:
343
347
  return dct[ekey]
344
-
345
-
346
- ##
347
-
348
-
349
- lang.register_conditional_import('..marshal', '.marshal', __package__)
@@ -36,6 +36,6 @@ from .types import ( # noqa
36
36
  ##
37
37
 
38
38
 
39
- from ... import lang as _lang
39
+ from ... import marshal as _msh
40
40
 
41
- _lang.register_conditional_import('...marshal', '.marshal', __package__)
41
+ _msh.register_global_module_import('._marshal', __package__)
@@ -69,6 +69,6 @@ from .types import ( # noqa
69
69
  ##
70
70
 
71
71
 
72
- from ... import lang as _lang
72
+ from ... import marshal as _msh
73
73
 
74
- _lang.register_conditional_import('...marshal', '.marshal', __package__)
74
+ _msh.register_global_module_import('._marshal', __package__)
@@ -6,6 +6,6 @@ from .openapi import ( # noqa
6
6
  ##
7
7
 
8
8
 
9
- from ... import lang as _lang
9
+ from ... import marshal as _msh
10
10
 
11
- _lang.register_conditional_import('...marshal', '.marshal', __package__)
11
+ _msh.register_global_module_import('._marshal', __package__)
@@ -112,8 +112,10 @@ Q = StdBuilder()
112
112
  ##
113
113
 
114
114
 
115
- from ... import lang as _lang # noqa
115
+ from ... import marshal as _msh # noqa
116
+
117
+ _msh.register_global_module_import('._marshal', __package__)
116
118
 
117
- _lang.register_conditional_import('...marshal', '.marshal', __package__)
119
+ from ... import lang as _lang # noqa
118
120
 
119
121
  _lang.trigger_conditional_imports(__package__)
@@ -6,6 +6,6 @@ from .tabledefs import ( # noqa
6
6
  ##
7
7
 
8
8
 
9
- from ... import lang as _lang
9
+ from ... import marshal as _msh
10
10
 
11
- _lang.register_conditional_import('...marshal', '.marshal', __package__)
11
+ _msh.register_global_module_import('._marshal', __package__)
@@ -49,6 +49,6 @@ from .values import ( # noqa
49
49
  ##
50
50
 
51
51
 
52
- from .. import lang as _lang
52
+ from .. import marshal as _msh
53
53
 
54
- _lang.register_conditional_import('..marshal', '.marshal', __package__)
54
+ _msh.register_global_module_import('.marshal', __package__)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: omlish
3
- Version: 0.0.0.dev416
3
+ Version: 0.0.0.dev417
4
4
  Summary: omlish
5
5
  Author: wrmsr
6
6
  License-Expression: BSD-3-Clause
@@ -1,5 +1,5 @@
1
1
  omlish/.manifests.json,sha256=FLw7xkPiSXuImZgqSP8BwrEib2R1doSzUPLUkc-QUIA,8410
2
- omlish/__about__.py,sha256=EjCF-wXGdYqFgAoxlZU8VG56ljmhUrK9lIx_c_loDxc,3568
2
+ omlish/__about__.py,sha256=0el0vFjTIlkrpc6zjf90f8rFr28BJnixdk0MjiU5Syo,3568
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
@@ -59,13 +59,13 @@ omlish/asyncs/ioproxy/io.py,sha256=XMVPk5_q7b-1YYf2YxO2duSKzEWpuhY5X_leI3QWsHY,5
59
59
  omlish/asyncs/ioproxy/proxier.py,sha256=dYXiVkDJVCzasMP4eMNSvSO1eNsd6CIRTtLyoa8YzNc,4492
60
60
  omlish/asyncs/ioproxy/proxy.py,sha256=s9bnjVPkTVtW5dh_vcpKNwbzEhA2zZZKF-U1BWZ5LPo,3911
61
61
  omlish/asyncs/ioproxy/typing.py,sha256=ZM-9HRO4dpy-RqomSkyRha9s901ckL30bwjACi2TJ8s,2475
62
- omlish/bootstrap/__init__.py,sha256=JgP3xsEsCphIQs2jI4um2uPI0RN8nCPMXl6FuiPC1js,700
62
+ omlish/bootstrap/__init__.py,sha256=svuRMcY-rqA31fLnHpTRRAs1uN63MXIeGcKK3NoKhL0,691
63
63
  omlish/bootstrap/__main__.py,sha256=GKhsZdPdJtzE4qnjt34-EvL07nLJVZD-d8nxfGl7EEI,188
64
+ omlish/bootstrap/_marshal.py,sha256=aKLeiOyPW6DelVK78dmw0axQzOMHX-ALrSqOOzYh05w,486
64
65
  omlish/bootstrap/base.py,sha256=K9CaPlVO7X5dsvmEp-lZw32Ud52K0DoEbPIWGB7Hgcs,1075
65
66
  omlish/bootstrap/diag.py,sha256=nTHKrZBdyEYoTpctwOpwzSMbQ2dROGkxpdzWfoe2xZg,5353
66
67
  omlish/bootstrap/harness.py,sha256=qPYW7CXUdLi-a3BK6GvbdAPb91j5IiRlBPcXCjRGzZo,1995
67
68
  omlish/bootstrap/main.py,sha256=RQAQVb_Cbk_Lnu-hSGMAo-aVQVIJ-E_TW7ZLsPO-ECk,5909
68
- omlish/bootstrap/marshal.py,sha256=aKLeiOyPW6DelVK78dmw0axQzOMHX-ALrSqOOzYh05w,486
69
69
  omlish/bootstrap/sys.py,sha256=r06ZroT2Rv0CBHiEweqDV6oWaMGNhFc4u0XBMBv3nnY,8793
70
70
  omlish/codecs/__init__.py,sha256=-FDwRJFGagg-fZyQ8wup4GPuR6gHpmaChzthlykn-kY,876
71
71
  omlish/codecs/base.py,sha256=nKAQKF0985xosHIP0mAkUZnr8lfHFj66ShnxL0OfdQE,2193
@@ -135,7 +135,7 @@ omlish/daemons/services.py,sha256=laoUeJU7eVHuWl1062FBjPSD7jchOjhpYDc5FT2B3dM,34
135
135
  omlish/daemons/spawning.py,sha256=psR73zOYjMKTqNpx1bMib8uU9wAZz62tw5TaWHrTdyY,5337
136
136
  omlish/daemons/targets.py,sha256=00KmtlknMhQ5PyyVAhWl3rpeTMPym0GxvHHq6mYPZ7c,3051
137
137
  omlish/daemons/waiting.py,sha256=RfgD1L33QQVbD2431dkKZGE4w6DUcGvYeRXXi8puAP4,1676
138
- omlish/dataclasses/__init__.py,sha256=Bi8vKuOAXGypBB13-N8zUCAHL5nrE-Hwbz-erE48kuc,3326
138
+ omlish/dataclasses/__init__.py,sha256=Jsb8i9cm_ZSkHL5qIPftYeRt9wNK7Cp2HRtZa9vxhus,3604
139
139
  omlish/dataclasses/_internals.py,sha256=_THiziiIslUyYC98Y_tZd5aZgvEF3FAGkDSwzRfcDuo,3247
140
140
  omlish/dataclasses/debug.py,sha256=giBiv6aXvX0IagwNCW64qBzNjfOFr3-VmgDy_KYlb-k,29
141
141
  omlish/dataclasses/errors.py,sha256=tyv3WR6az66uGGiq9FIuCHvy1Ef-G7zeMY7mMG6hy2Y,2527
@@ -188,7 +188,7 @@ omlish/dataclasses/impl/generation/processor.py,sha256=trwQmWPx31rT3FzDM3xIUYl95
188
188
  omlish/dataclasses/impl/generation/registry.py,sha256=x8E1I5XjAQmTiMr9LsdcQeVc0688lUIOTtv9Zf0OFzo,1008
189
189
  omlish/dataclasses/impl/generation/utils.py,sha256=u6DWRvzxgqrxqyfAGzNOyDvnOJYdMTYyZ7l1oOOiXrI,2089
190
190
  omlish/dataclasses/impl/processing/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
191
- omlish/dataclasses/impl/processing/base.py,sha256=NA2uR2S039cm3yNd3F_PEw9aA2EQFdq0drtheZwdlGo,2000
191
+ omlish/dataclasses/impl/processing/base.py,sha256=u4FkqCl4PxygbQRlLdJbmIZengVPyXgfunAY4MmngtI,2000
192
192
  omlish/dataclasses/impl/processing/driving.py,sha256=jCGdOVPM7hpLMZNino81acQ5AwX_e0g0b_CqTpZn8XA,1885
193
193
  omlish/dataclasses/impl/processing/priority.py,sha256=fNyGY2lYXIfTn9klHM86gHOOQpHjdKlCGxO0GfrggLs,265
194
194
  omlish/dataclasses/impl/processing/registry.py,sha256=qTCVUOTYjDKGTxMXYUjvck3SsYXg47HEcxtrKfLWtw8,1886
@@ -523,17 +523,18 @@ omlish/manifests/globals.py,sha256=kVqQ-fT4kc7xWzLHoI731GviitFPv2v2yqw-p7t7Exs,2
523
523
  omlish/manifests/loading.py,sha256=Br1OyI23pis_FfYju9xoacms608lzB1Zh_IqdVw_7vg,17201
524
524
  omlish/manifests/static.py,sha256=9BaPBLkuzxHmg5A-5k9BjjBFINCdmFOIu06dMFgCfz4,497
525
525
  omlish/manifests/types.py,sha256=NeOGuIVrcbqjCDbQ3MnCxxHAgHnw0CkWJsBzo230PWE,453
526
- omlish/marshal/__init__.py,sha256=GE6LMH-PmdXTkyGo7Z1FwWKnT2thK4U-YisbH20zJ2o,4700
527
- omlish/marshal/globals.py,sha256=GtuI94yMqGHV9Hz3Hc9Tdzuv280uVjrBlIc57ZEC3MM,1914
526
+ omlish/marshal/__init__.py,sha256=Na3DSWLemnQtubnQgiRmOcBXIGqg-uv8QdNDsZQCWak,5855
527
+ omlish/marshal/globals.py,sha256=Q6G18hcUwUDDNnpyRPnR5Tn_XZpZCSIEXo09nYSOaNU,2236
528
528
  omlish/marshal/naming.py,sha256=Mk5YrbES836_KflNNRoc5Ajd96iMYLQIMERKx1KpT4g,865
529
- omlish/marshal/standard.py,sha256=k6QAGFNjiypxjI90snJcoGqNoTQ8ZkTzrW7m-Yrn2wk,4906
529
+ omlish/marshal/standard.py,sha256=6L4FK7QVgVFAf2jkTQlCvN-15DWK49VCNlNwCBea3-8,6674
530
530
  omlish/marshal/base/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
531
- omlish/marshal/base/contexts.py,sha256=T8AzEq1Fh78NRAj8YHbc_ugKtuSBFRlIyY00uCpY3sM,2139
531
+ omlish/marshal/base/configs.py,sha256=y_JRghQgu8mJjPspSZcJQLhjevEuJE2kyxCdu3wGKvo,271
532
+ omlish/marshal/base/contexts.py,sha256=greDE5d4xHrY7NWTSwEgrBh_BSeALAqBqx2-xcAMoIg,2256
532
533
  omlish/marshal/base/errors.py,sha256=jmN3vl_U_hB6L0wAvuO7ORG27vXF7KEUk-1TxxK2mYA,308
533
534
  omlish/marshal/base/options.py,sha256=OoDErPmI0kswnqAtr7QYndlPYhIqIDarx833tKFT2R4,23
534
- omlish/marshal/base/overrides.py,sha256=tdYdgKIqVEBV7L_MZCNzcRwvpnmxa-1Fm8pIAWDeEpw,997
535
- omlish/marshal/base/registries.py,sha256=N0I6xa_n32KAXgVdO9IuRASZC5Sh2J2T7w6K7wsWx1Q,2481
536
- omlish/marshal/base/types.py,sha256=AtrpoVUPwsp_CQ13TlJ5ri_LqIPUHlAr64--D9XIlW8,2837
535
+ omlish/marshal/base/overrides.py,sha256=543hP4_y2JRThUOamCE0dPfgucbepVV8e_YF-_PJk6U,993
536
+ omlish/marshal/base/registries.py,sha256=lEpnKnIo0AANOk_PQ6nlEOpPcVa554I3zF0EsT8WuXU,3311
537
+ omlish/marshal/base/types.py,sha256=uThTwMRmWkdhzvqvDusUEJKO0rRV6gbRdFlVuSg7rNA,2890
537
538
  omlish/marshal/base/values.py,sha256=QF6OateG5kjRPHYza08wscThhg20oryf-aVQrxjfkC0,212
538
539
  omlish/marshal/composite/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
539
540
  omlish/marshal/composite/iterables.py,sha256=2VU3sh5TBKMVF1cWPXhDeuELPQzrAYovmTNHzoFLeS4,2704
@@ -546,12 +547,16 @@ omlish/marshal/composite/special.py,sha256=325cEkzGw2XoMq6W0CvvO7n2Dx9I3mDsjdlZ2
546
547
  omlish/marshal/composite/wrapped.py,sha256=xC8k21wJOpSkpAn7794hBTPBRw-HPC9sOF3WRlUh_BA,785
547
548
  omlish/marshal/factories/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
548
549
  omlish/marshal/factories/func.py,sha256=6F5Ud9GdplQNR1CEwkT2n5SRx4glmgcNZBBPTc9QmdM,727
550
+ omlish/marshal/factories/invalidate.py,sha256=Jo0aGNg94LqkexVYnbwxeOscgiLC1ap_kzAgWPvRaKE,3053
549
551
  omlish/marshal/factories/match.py,sha256=MALwOa2FyD4PpHfG-iLBdn8-3FMx_wI123RD4xfd79w,893
550
552
  omlish/marshal/factories/multi.py,sha256=0chkODC3AGz4wxDq82V69clGRtk1Wjc6O_yOGZxn6bQ,1479
551
553
  omlish/marshal/factories/recursive.py,sha256=_U3yLiPI0R1qT5J19It2pFFTFVr-O2rXTBjcK-zPpOY,3143
552
554
  omlish/marshal/factories/simple.py,sha256=6ghaGPsj2rBeh85sV84_v3kEq3pZ8hyVEwd4UMoNfBI,576
553
- omlish/marshal/factories/typecache.py,sha256=BxlC32msLhBuiyJ3OdOe_kIl6ncKe_0SZwXWwCulLCk,2517
555
+ omlish/marshal/factories/typecache.py,sha256=Q8VMGsXJMycKGIuA9NYT6h6NmcNUB8-5A_qmV1V_ztM,2813
554
556
  omlish/marshal/factories/typemap.py,sha256=CxScQbRw3VwILGhf38v2yOiof45YJ9p2LQhZ37SHNj8,1606
557
+ omlish/marshal/factories/moduleimport/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
558
+ omlish/marshal/factories/moduleimport/configs.py,sha256=8g6FSPmyo0IOYSWYp5kqfJACZxL9SvzlHzrSzucNZyg,538
559
+ omlish/marshal/factories/moduleimport/factories.py,sha256=LpiH27t6O8x1x-j9v2P5vD8H9TABgVS8Xe9xE4yPGRg,3136
555
560
  omlish/marshal/objects/__init__.py,sha256=F4wej8L_tedC8ETYxAnmKfdPR9TjsqIus9Z3nZofYuc,182
556
561
  omlish/marshal/objects/dataclasses.py,sha256=6G1vmhFhJ3LsHxDFDxvSH7q-pZm9_gY4QgNVtebiUzY,9015
557
562
  omlish/marshal/objects/helpers.py,sha256=hj5I1pILt3QFSVkYJNrSO3wiCaalAopEYWPL17Ip4zs,1102
@@ -561,7 +566,7 @@ omlish/marshal/objects/namedtuples.py,sha256=uzOZuEt2IrWtk7uyo13xaWEmFhxRQ3aKAzo
561
566
  omlish/marshal/objects/unmarshal.py,sha256=izhtSwqSrlWSOL5uZS3naPxnfq3rhv25uUPN7_rpO08,3664
562
567
  omlish/marshal/polymorphism/__init__.py,sha256=e2UTrSL0qp7w_1vkdxDWd7sXlWhep2KPV49-BB64ma8,130
563
568
  omlish/marshal/polymorphism/marshal.py,sha256=ZnayCbRj3451U4py1-9dU99PHvjQuQk-ZQDGgzQjF4U,2292
564
- omlish/marshal/polymorphism/metadata.py,sha256=5RmOlmndn1T66FaxKwzt_UOM6vAQ2hfPT04o--BJH8c,3342
569
+ omlish/marshal/polymorphism/metadata.py,sha256=c-sOVGvV96OqMfdXUVcVXK8u4xtxHjdHJFXmUx7Km40,3327
565
570
  omlish/marshal/polymorphism/standard.py,sha256=8Gkdss9632RQ4ff1GZaEdI-T_UzAiW-9nLKQawKoa9s,615
566
571
  omlish/marshal/polymorphism/unions.py,sha256=AWNyzETvgADOjPmXsHloXgbvjZ4GX9b_iNmD6ZdXsT0,4445
567
572
  omlish/marshal/polymorphism/unmarshal.py,sha256=8bLeI9UxUluoIqkRJSJIbdCsKkXjx3myYe9uWs16QjY,2483
@@ -617,13 +622,13 @@ omlish/reflect/ops.py,sha256=F77OTaw0Uw020cJCWX_Q4kL3wvxlJ8jV8wz7BctGL_k,2619
617
622
  omlish/reflect/subst.py,sha256=_lfNS2m2UiJgqARQtmGLTGo7CrSm9OMvVzt6GWOEX6M,4590
618
623
  omlish/reflect/types.py,sha256=5N6sBAknFx6zqhxgcJy5D-0XzjQh6Y2t3KN7HhSTnZ8,15490
619
624
  omlish/secrets/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
620
- omlish/secrets/all.py,sha256=xx1UyiokSFzdeR8c6Ro-Fi2XBUsQ2i0nR1foX12nH0c,464
625
+ omlish/secrets/all.py,sha256=qBxUFIqxCExADL71taNH_W6FYT9QvOrdcaMeUUPO3aw,298
621
626
  omlish/secrets/crypto.py,sha256=9D21lnvPhStwu8arD4ssT0ih0bDG-nlqIRdVgYL40xA,3708
622
627
  omlish/secrets/marshal.py,sha256=u90n1OfRfdpH1T2F0xK_pAPH1ENYL6acFt6XdVd3KvI,1986
623
628
  omlish/secrets/openssl.py,sha256=4zp1KZ1EVRNaBS0VIokTqnamy3ZeeC1XN2wSXx4lEcM,6215
624
629
  omlish/secrets/pwgen.py,sha256=Z5i1qMKK4idOZvWai5dXkI59gX7pYzFFlFYAj7qEmqA,1706
625
630
  omlish/secrets/pwhash.py,sha256=Jctv3QzcMvVPXJsWA3w3LDUlzmyUDGEWG9sLiJz1xaw,4107
626
- omlish/secrets/secrets.py,sha256=LZ7QzDMP49w9z3nRuWByoVqBKvFt26tROlK3475kgz8,8017
631
+ omlish/secrets/secrets.py,sha256=YsOdiOZ4sYY4KT5ycoP7Au-xVKk-Odu9dG-BcdsCTH4,8030
627
632
  omlish/secrets/ssl.py,sha256=HnH5MS31X9Uid7Iw1CWqviaVwMLF1Ha8RxZiiE-_iF8,158
628
633
  omlish/secrets/subprocesses.py,sha256=ZdShw4jrGDdyQW8mRMgl106-9qpCEq2J6w_x7ruz1wk,1217
629
634
  omlish/secrets/tempssl.py,sha256=KbNKGwiKw95Ly2b1OtNL2jhPa25aO0t_tvyNB5trUcU,1885
@@ -671,13 +676,13 @@ omlish/specs/jmespath/lexer.py,sha256=JmIZRTrOeW54ugc3MbZJplXQm5ksV9LB629JulxINR
671
676
  omlish/specs/jmespath/parser.py,sha256=uNk9_xQ9cZJC1h5naoH1HMbCs4B0WhV2jN5AvhdKToE,24716
672
677
  omlish/specs/jmespath/scope.py,sha256=gsVjmAVF0b7s2SevWb0rBbURayiMSIuXfzO4v1ONIrY,1595
673
678
  omlish/specs/jmespath/visitor.py,sha256=6OCi7oa4IsGW5fCqAeFuXYEwn-aLKuMrNMFtQKSpJWo,16951
674
- omlish/specs/jsonrpc/__init__.py,sha256=1ybm7J-luxhsTncrnsgZ9wV1K28b4QnK7pbZCl1AyA8,514
679
+ omlish/specs/jsonrpc/__init__.py,sha256=u2kcJeo6YWEvFYf7OqDNKThszGLSmXYFNJpqXmXgm1M,504
680
+ omlish/specs/jsonrpc/_marshal.py,sha256=LJ6V6O7iFIfQx5-DeP7GN23Ao_amThECnntqlBv8c2Y,1857
675
681
  omlish/specs/jsonrpc/conns.py,sha256=zvWnBHuSoGnvbGVk72Usp4IFsLscrzPozqR2hmFjnDI,7029
676
682
  omlish/specs/jsonrpc/errors.py,sha256=WxEU7k1TqeZAo_H6eU0LcrXSd-Gi_3fTvtxjXZ9qKww,712
677
- omlish/specs/jsonrpc/marshal.py,sha256=LJ6V6O7iFIfQx5-DeP7GN23Ao_amThECnntqlBv8c2Y,1857
678
683
  omlish/specs/jsonrpc/types.py,sha256=Se9ecG-_k-kY_Qlt9QD2t3y26oY4sXTcskp6XZfVans,3054
679
- omlish/specs/jsonschema/__init__.py,sha256=uV0ne41ScDhuXpY4w34_F3thT8r4aWoSjqwsp52S2PY,1197
680
- omlish/specs/jsonschema/marshal.py,sha256=-pmBtNnKC0sxGg3TMVWngTbSSAwG1zQyt0D6aZutd84,873
684
+ omlish/specs/jsonschema/__init__.py,sha256=12JNHdvV-LN0d0Ir80Ch8msVb4JqGSjB0wLSwW1oN2U,1187
685
+ omlish/specs/jsonschema/_marshal.py,sha256=-pmBtNnKC0sxGg3TMVWngTbSSAwG1zQyt0D6aZutd84,873
681
686
  omlish/specs/jsonschema/types.py,sha256=_H7ma99hD3_Xu42BFGHOXRI5p79tY8WBX8QE36k7lbw,472
682
687
  omlish/specs/jsonschema/keywords/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
683
688
  omlish/specs/jsonschema/keywords/base.py,sha256=_O_VZySO5j5vnEiQWojk3zwaj7OQowT0e6bk3UYDTeM,3011
@@ -701,8 +706,8 @@ omlish/specs/jsonschema/schemas/draft202012/vocabularies/format.json,sha256=UOu_
701
706
  omlish/specs/jsonschema/schemas/draft202012/vocabularies/meta-data.json,sha256=j3bW4U9Bubku-TO3CM3FFEyLUmhlGtEZGEhfsXVPHHY,892
702
707
  omlish/specs/jsonschema/schemas/draft202012/vocabularies/unevaluated.json,sha256=Lb-8tzmUtnCwl2SSre4f_7RsIWgnhNL1pMpWH54tDLQ,506
703
708
  omlish/specs/jsonschema/schemas/draft202012/vocabularies/validation.json,sha256=cBCjHlQfMtK-ch4t40jfdcmzaHaj7TBId_wKvaHTelg,2834
704
- omlish/specs/openapi/__init__.py,sha256=h__AA1kir9R_2ZGuYyXvChrRTSsbN9y9iAk-1CSy33g,157
705
- omlish/specs/openapi/marshal.py,sha256=6CB2LCwFfU5rstqkgN_j4Z5rbnba2glzOxcSd01uffI,4451
709
+ omlish/specs/openapi/__init__.py,sha256=KS7OHPBlXwBeTvmsUQy0VMzKYdz2RyH3qLF3bU0NXUw,147
710
+ omlish/specs/openapi/_marshal.py,sha256=6CB2LCwFfU5rstqkgN_j4Z5rbnba2glzOxcSd01uffI,4451
706
711
  omlish/specs/openapi/openapi.py,sha256=6KGY_d8HOyG7ssHIWM40MCXgIMzNLiLKHYNggTSpAYM,12027
707
712
  omlish/specs/proto/Protobuf3.g4,sha256=chDrovFsuZaHf5W35WZNts3jOa1ssPwvWiJR4yVIgjw,5552
708
713
  omlish/specs/proto/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -745,13 +750,13 @@ omlish/sql/parsing/_antlr/MinisqlListener.py,sha256=4B9d9ONDxzrx1QR-g96Qw_ilAW_I
745
750
  omlish/sql/parsing/_antlr/MinisqlParser.py,sha256=htIMgNde8PqLj7mDV2cLo7kDiwn-acDZjr7mUBAC3PA,132479
746
751
  omlish/sql/parsing/_antlr/MinisqlVisitor.py,sha256=UPs2qA2VlNRP_LMwF0DpMxMir9tIS9w59vGTq07mmlI,10052
747
752
  omlish/sql/parsing/_antlr/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
748
- omlish/sql/queries/__init__.py,sha256=iYwikMW9QAwkNevwJ08XmZuVvmVJZoXl-Hglpti0CgA,1538
753
+ omlish/sql/queries/__init__.py,sha256=qoikGQZuwDkOBwGKdUVov_Ur3I-mezSDLLdzqwRw6l8,1567
754
+ omlish/sql/queries/_marshal.py,sha256=yVfN5VgYMYDaYTE6FZ8Sea7GrRobn40Hc8kogrfKmjE,3016
749
755
  omlish/sql/queries/base.py,sha256=nsavenCsZgzpITSI1zGEAi95K3cRDfAxRgNJKJmYul0,3502
750
756
  omlish/sql/queries/binary.py,sha256=dcEzeEn104AMPuQ7QrJU2O-YCN3SUdxB5S4jaWKOUqY,2253
751
757
  omlish/sql/queries/exprs.py,sha256=dG9L218QtJM1HtDYIMWqHimK03N6AL1WONk3FvVRcXY,1480
752
758
  omlish/sql/queries/idents.py,sha256=T9aFK8sia09ibkKdAWOUvCVeLqI9JLwXjUDPBAvDf6w,1153
753
759
  omlish/sql/queries/inserts.py,sha256=pSQXDSR1oDUmxjeIYuSbxpAZXvYQ-EJF6a62ON5Un-k,1299
754
- omlish/sql/queries/marshal.py,sha256=yVfN5VgYMYDaYTE6FZ8Sea7GrRobn40Hc8kogrfKmjE,3016
755
760
  omlish/sql/queries/multi.py,sha256=7x6x-4jnPzxA6ZasBjnjFuhHFpWt5rGCua3UvuTMIJ0,837
756
761
  omlish/sql/queries/names.py,sha256=25kPRYse_ivI17lMD9st04k7QQMOGf5plb4b8yZFpUI,2208
757
762
  omlish/sql/queries/ops.py,sha256=pDZ_2Jo_Fa8DDbtYkc6-9eehkWsZPI-jh-KFlubcY6Y,134
@@ -763,12 +768,12 @@ omlish/sql/queries/std.py,sha256=FdJkXD7oiuj8mtVzvbsL1ZocEEAfaSdOsfTVB1YhtrE,699
763
768
  omlish/sql/queries/stmts.py,sha256=pBqwD7dRlqMu6uh6vR3xaWOEgbZCcFWbOQ9ryYd17T4,441
764
769
  omlish/sql/queries/unary.py,sha256=MEYBDZn_H0bexmUrJeONOv5-gIpYowUaXOsEHeQM4ks,1144
765
770
  omlish/sql/queries/unions.py,sha256=w9lKrQ38nMme_gyDPciZNqyCBhwFkLusc9fjmBDu48U,438
766
- omlish/sql/tabledefs/__init__.py,sha256=IN2JFVXeeZ4l0yCOKPza8WnSeIA15TwzvKgoismwWGY,160
771
+ omlish/sql/tabledefs/__init__.py,sha256=eFaO_QQaEv4Z9CLxFSzZgmXqxPI7xKTpDI6outo1VPk,150
772
+ omlish/sql/tabledefs/_marshal.py,sha256=5Z7K433SzfN7-z8Yd7FJRzOV9tJv-ErRMA6inZ2iBCE,475
767
773
  omlish/sql/tabledefs/alchemy.py,sha256=fK00S_AdqadH2sG8SEATaFd7UnQS-vp1ECTYCnTSDuE,490
768
774
  omlish/sql/tabledefs/dtypes.py,sha256=X0N6Y1c2bQ4HC0WA-Yv_jZPvGlSqO7hMIV-towDw3MU,367
769
775
  omlish/sql/tabledefs/elements.py,sha256=lP_Ch19hKmiGYPQVeC8HpFaKdTYnXi2FfpfwKMxZOck,1674
770
776
  omlish/sql/tabledefs/lower.py,sha256=i4_QkVlVH5U99O6pqokrB661AudNVJ9Q-OwtkKOBleU,1410
771
- omlish/sql/tabledefs/marshal.py,sha256=5Z7K433SzfN7-z8Yd7FJRzOV9tJv-ErRMA6inZ2iBCE,475
772
777
  omlish/sql/tabledefs/tabledefs.py,sha256=lIhvlt0pk6G7RZAtDFsFXm5j0l9BvRfnP7vNGeydHtE,816
773
778
  omlish/subprocesses/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
774
779
  omlish/subprocesses/asyncs.py,sha256=G9wj275s3r0ueftHFl73Lt4kMRBc2hJOKcoJQCDlBms,2663
@@ -908,7 +913,7 @@ omlish/text/antlr/_runtime/xpath/XPathLexer.py,sha256=WvGKQjQnu7pX5C4CFKtsCzba2B
908
913
  omlish/text/antlr/_runtime/xpath/__init__.py,sha256=lMd_BbXYdlDhZQN_q0TKN978XW5G0pq618F0NaLkpFE,71
909
914
  omlish/text/go/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
910
915
  omlish/text/go/quoting.py,sha256=zbcPEDWsdj7GAemtu0x8nwMqpIu2C_5iInSwn6mMWlE,9142
911
- omlish/typedvalues/__init__.py,sha256=JHv6pUEGLMzQkiQRawQ2j5TfAlBrt_UL2hYHeFm_eFI,739
916
+ omlish/typedvalues/__init__.py,sha256=g33z1dvLjoPKcpJllk-UAjjfYlQnkKuTUXg6RzXtdE8,729
912
917
  omlish/typedvalues/accessor.py,sha256=2PQVoFrrCTOcZACAQ28GOvF9xhKyKz27GMSfS0xq5Pc,3184
913
918
  omlish/typedvalues/collection.py,sha256=CK4Vk9kJqAt2V8o6I4zGyv2u9DKov12uSvsGdqEd2Ws,5793
914
919
  omlish/typedvalues/consumer.py,sha256=lDOE-O_sgGbOvbcBg2g5ZRaV2WixnuEYxFsJBaj18oU,4690
@@ -918,9 +923,9 @@ omlish/typedvalues/marshal.py,sha256=AtBz7Jq-BfW8vwM7HSxSpR85JAXmxK2T0xDblmm1HI0
918
923
  omlish/typedvalues/of_.py,sha256=UXkxSj504WI2UrFlqdZJbu2hyDwBhL7XVrc2qdR02GQ,1309
919
924
  omlish/typedvalues/reflect.py,sha256=PAvKW6T4cW7u--iX80w3HWwZUS3SmIZ2_lQjT65uAyk,1026
920
925
  omlish/typedvalues/values.py,sha256=ym46I-q2QJ_6l4UlERqv3yj87R-kp8nCKMRph0xQ3UA,1307
921
- omlish-0.0.0.dev416.dist-info/licenses/LICENSE,sha256=B_hVtavaA8zCYDW99DYdcpDLKz1n3BBRjZrcbv8uG8c,1451
922
- omlish-0.0.0.dev416.dist-info/METADATA,sha256=Ly8rie3KozyugPbfE3l0z93fy3_iW_xgYJbipAWO3HI,19244
923
- omlish-0.0.0.dev416.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
924
- omlish-0.0.0.dev416.dist-info/entry_points.txt,sha256=Lt84WvRZJskWCAS7xnQGZIeVWksprtUHj0llrvVmod8,35
925
- omlish-0.0.0.dev416.dist-info/top_level.txt,sha256=pePsKdLu7DvtUiecdYXJ78iO80uDNmBlqe-8hOzOmfs,7
926
- omlish-0.0.0.dev416.dist-info/RECORD,,
926
+ omlish-0.0.0.dev417.dist-info/licenses/LICENSE,sha256=B_hVtavaA8zCYDW99DYdcpDLKz1n3BBRjZrcbv8uG8c,1451
927
+ omlish-0.0.0.dev417.dist-info/METADATA,sha256=Jw4nZaCngKRs5mMa-qHAGMSF9vX2Yp5_8ufFj3aU_fU,19244
928
+ omlish-0.0.0.dev417.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
929
+ omlish-0.0.0.dev417.dist-info/entry_points.txt,sha256=Lt84WvRZJskWCAS7xnQGZIeVWksprtUHj0llrvVmod8,35
930
+ omlish-0.0.0.dev417.dist-info/top_level.txt,sha256=pePsKdLu7DvtUiecdYXJ78iO80uDNmBlqe-8hOzOmfs,7
931
+ omlish-0.0.0.dev417.dist-info/RECORD,,
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes