omlish 0.0.0.dev393__py3-none-any.whl → 0.0.0.dev394__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/codecs/base.py +2 -2
- omlish/codecs/bytes.py +1 -1
- omlish/codecs/registry.py +3 -3
- omlish/codecs/text.py +1 -1
- omlish/formats/codecs.py +1 -1
- omlish/io/compress/codecs.py +1 -1
- omlish/manifests/base.py +1 -1
- omlish/manifests/globals.py +11 -0
- omlish/manifests/{load.py → loading.py} +12 -7
- omlish/marshal/__init__.py +1 -1
- {omlish-0.0.0.dev393.dist-info → omlish-0.0.0.dev394.dist-info}/METADATA +1 -1
- {omlish-0.0.0.dev393.dist-info → omlish-0.0.0.dev394.dist-info}/RECORD +18 -17
- /omlish/marshal/{global_.py → globals.py} +0 -0
- {omlish-0.0.0.dev393.dist-info → omlish-0.0.0.dev394.dist-info}/WHEEL +0 -0
- {omlish-0.0.0.dev393.dist-info → omlish-0.0.0.dev394.dist-info}/entry_points.txt +0 -0
- {omlish-0.0.0.dev393.dist-info → omlish-0.0.0.dev394.dist-info}/licenses/LICENSE +0 -0
- {omlish-0.0.0.dev393.dist-info → omlish-0.0.0.dev394.dist-info}/top_level.txt +0 -0
omlish/__about__.py
CHANGED
omlish/codecs/base.py
CHANGED
@@ -70,7 +70,7 @@ def check_codec_name(s: str) -> str:
|
|
70
70
|
@dc.dataclass(frozen=True, kw_only=True)
|
71
71
|
class Codec:
|
72
72
|
name: str = dc.xfield(coerce=check_codec_name)
|
73
|
-
aliases: ta.
|
73
|
+
aliases: ta.Sequence[str] | None = dc.xfield(
|
74
74
|
default=None,
|
75
75
|
coerce=lang.opt_fn(lambda s: [check_codec_name(a) for a in s]),
|
76
76
|
)
|
@@ -90,7 +90,7 @@ class Codec:
|
|
90
90
|
@dc.dataclass(frozen=True, kw_only=True)
|
91
91
|
class LazyLoadedCodec(ModAttrManifest):
|
92
92
|
name: str
|
93
|
-
aliases: ta.
|
93
|
+
aliases: ta.Sequence[str] | None = None
|
94
94
|
|
95
95
|
@classmethod
|
96
96
|
def new(
|
omlish/codecs/bytes.py
CHANGED
omlish/codecs/registry.py
CHANGED
@@ -11,9 +11,9 @@ from .standard import STANDARD_CODECS
|
|
11
11
|
|
12
12
|
|
13
13
|
if ta.TYPE_CHECKING:
|
14
|
-
from ..manifests import
|
14
|
+
from ..manifests import globals as manifest_globals
|
15
15
|
else:
|
16
|
-
|
16
|
+
manifest_globals = lang.proxy_import('..manifests.globals', __package__)
|
17
17
|
|
18
18
|
|
19
19
|
##
|
@@ -102,7 +102,7 @@ def _install_standard_codecs(registry: CodecRegistry) -> None:
|
|
102
102
|
|
103
103
|
@cached.function
|
104
104
|
def _build_manifest_lazy_loaded_codecs() -> ta.Sequence[LazyLoadedCodec]:
|
105
|
-
ldr =
|
105
|
+
ldr = manifest_globals.MANIFEST_LOADER
|
106
106
|
pkgs = {__package__.split('.')[0], *ldr.discover_pkgs()}
|
107
107
|
mns = ldr.load(*pkgs, only=[LazyLoadedCodec])
|
108
108
|
return [m.value for m in mns]
|
omlish/codecs/text.py
CHANGED
@@ -126,7 +126,7 @@ def normalize_text_encoding_name(s: str) -> str:
|
|
126
126
|
|
127
127
|
def make_text_encoding_codec(
|
128
128
|
name: str,
|
129
|
-
aliases: ta.
|
129
|
+
aliases: ta.Sequence[str] | None = None,
|
130
130
|
*,
|
131
131
|
append_to: ta.MutableSequence[Codec] | None = None,
|
132
132
|
) -> TextEncodingCodec:
|
omlish/formats/codecs.py
CHANGED
omlish/io/compress/codecs.py
CHANGED
omlish/manifests/base.py
CHANGED
@@ -27,7 +27,7 @@ class ModAttrManifest:
|
|
27
27
|
@dc.dataclass(frozen=True)
|
28
28
|
class NameAliasesManifest:
|
29
29
|
name: str
|
30
|
-
aliases: ta.Optional[ta.
|
30
|
+
aliases: ta.Optional[ta.Sequence[str]] = None
|
31
31
|
|
32
32
|
@classmethod
|
33
33
|
def build_name_dict(cls, objs: ta.Iterable[NameAliasesManifestT]) -> ta.Dict[str, NameAliasesManifestT]:
|
@@ -26,9 +26,12 @@ class ManifestLoader:
|
|
26
26
|
self,
|
27
27
|
*,
|
28
28
|
module_remap: ta.Optional[ta.Mapping[str, str]] = None,
|
29
|
+
cls_instantiator: ta.Optional[ta.Callable[..., ta.Any]] = None,
|
29
30
|
) -> None:
|
30
31
|
super().__init__()
|
31
32
|
|
33
|
+
self._cls_instantiator = cls_instantiator
|
34
|
+
|
32
35
|
self._lock = threading.RLock()
|
33
36
|
|
34
37
|
self._module_remap = module_remap or {}
|
@@ -172,6 +175,14 @@ class ManifestLoader:
|
|
172
175
|
|
173
176
|
#
|
174
177
|
|
178
|
+
def instantiate_cls(self, cls: type, **kwargs: ta.Any) -> ta.Any:
|
179
|
+
if self._cls_instantiator is not None:
|
180
|
+
return self._cls_instantiator(cls, **kwargs)
|
181
|
+
else:
|
182
|
+
return cls(**kwargs)
|
183
|
+
|
184
|
+
#
|
185
|
+
|
175
186
|
def _load(
|
176
187
|
self,
|
177
188
|
*pkg_names: str,
|
@@ -197,7 +208,7 @@ class ManifestLoader:
|
|
197
208
|
continue
|
198
209
|
|
199
210
|
cls = self._load_cls(key)
|
200
|
-
value = cls
|
211
|
+
value = self.instantiate_cls(cls, **value_dct)
|
201
212
|
|
202
213
|
manifest = dc.replace(manifest, value=value)
|
203
214
|
lst.append(manifest)
|
@@ -256,9 +267,3 @@ class ManifestLoader:
|
|
256
267
|
pkgs.extend(self.scan_pkg_root(fallback_root))
|
257
268
|
|
258
269
|
return pkgs
|
259
|
-
|
260
|
-
|
261
|
-
##
|
262
|
-
|
263
|
-
|
264
|
-
MANIFEST_LOADER = ManifestLoader()
|
omlish/marshal/__init__.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=ko042tDygoOn3kM1lHN4zPIzbXv_lgAASIV2V4gSqDk,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
|
@@ -69,13 +69,13 @@ omlish/bootstrap/main.py,sha256=RQAQVb_Cbk_Lnu-hSGMAo-aVQVIJ-E_TW7ZLsPO-ECk,5909
|
|
69
69
|
omlish/bootstrap/marshal.py,sha256=aKLeiOyPW6DelVK78dmw0axQzOMHX-ALrSqOOzYh05w,486
|
70
70
|
omlish/bootstrap/sys.py,sha256=r06ZroT2Rv0CBHiEweqDV6oWaMGNhFc4u0XBMBv3nnY,8793
|
71
71
|
omlish/codecs/__init__.py,sha256=-FDwRJFGagg-fZyQ8wup4GPuR6gHpmaChzthlykn-kY,876
|
72
|
-
omlish/codecs/base.py,sha256=
|
73
|
-
omlish/codecs/bytes.py,sha256=
|
72
|
+
omlish/codecs/base.py,sha256=IVnJlduvhiH1imul4DPhl2gHBWS76774AV5h86dX0ls,2214
|
73
|
+
omlish/codecs/bytes.py,sha256=3DxyQQCvFcP3mQ5G93f_mygXEb-7I8buM8EyzUcx2Is,2155
|
74
74
|
omlish/codecs/chain.py,sha256=nbkL2nz0ZqT2lxYwSXktHh1YFTQ4Iii1Hp-fWjis6rc,532
|
75
75
|
omlish/codecs/funcs.py,sha256=or0Jogczuzk7csDTRl-HURMEjl8LXXqxxXYK45xcM5w,855
|
76
|
-
omlish/codecs/registry.py,sha256=
|
76
|
+
omlish/codecs/registry.py,sha256=PIf7XdwVX7Q85-MnyURtX9SKAYolK_r7wls9Z-qAsnA,3911
|
77
77
|
omlish/codecs/standard.py,sha256=eiZ4u9ep0XrA4Z_D1zJI0vmWyuN8HLrX4Se_r_Cq_ZM,60
|
78
|
-
omlish/codecs/text.py,sha256=
|
78
|
+
omlish/codecs/text.py,sha256=uHhV8jBgH0iZgcrV0nl4-0a_9ofln4iFH4OXoVm2CW4,5709
|
79
79
|
omlish/collections/__init__.py,sha256=-CcIq7e8OkQakexxpJOXf2q6LdVqzo7B-quPtwur_BQ,2634
|
80
80
|
omlish/collections/abc.py,sha256=p9zhL5oNV5WPyWmMn34fWfkuxPQAjOtL7WQA-Xsyhwk,2628
|
81
81
|
omlish/collections/bimap.py,sha256=3szDCscPJlFRtkpyVQNWneg4s50mr6Rd0jdTzVEIcnE,1661
|
@@ -245,7 +245,7 @@ omlish/dom/rendering.py,sha256=5cQK3A_uifh3Th5v3c0nx-tW8d1KyGL6C9tASPaNVNI,4336
|
|
245
245
|
omlish/formats/__init__.py,sha256=T0AG1gFnqQ5JiHN0UPQjQ-7g5tnxMIG-mgOvMYExYAM,21
|
246
246
|
omlish/formats/cbor.py,sha256=o_Hbe4kthO9CeXK-FySrw0dHVlrdyTo2Y8PpGRDfZ3c,514
|
247
247
|
omlish/formats/cloudpickle.py,sha256=16si4yUp_pAdDWGECAWf6HLA2PwSANGGgDoMLGZUem8,579
|
248
|
-
omlish/formats/codecs.py,sha256=
|
248
|
+
omlish/formats/codecs.py,sha256=HBQzco_BT73xshv2l8FrDTaAKTH-A8Y4vXiabXPELGY,1655
|
249
249
|
omlish/formats/dotenv.py,sha256=60RHhpNmLhqT7ISeA79MmSc7Sq8AxF5nKj7VPjdroZU,19320
|
250
250
|
omlish/formats/pickle.py,sha256=jdp4E9WH9qVPBE3sSqbqDtUo18RbTSIiSpSzJ-IEVZw,529
|
251
251
|
omlish/formats/props.py,sha256=rPycJ-_b76NSNc2b_dZ0F0zyKzuXK8v6K6fqcV8uCRQ,18933
|
@@ -398,7 +398,7 @@ omlish/io/compress/adapters.py,sha256=LJHhjwMHXstoLyX_q0QhGoBAcqyYGWfzhzQbGBXHzH
|
|
398
398
|
omlish/io/compress/base.py,sha256=X-B9zC_JAJ84ozO4Vl_7mG3o6zkF6jZfcXO5JmDftGk,620
|
399
399
|
omlish/io/compress/brotli.py,sha256=sNDX5HmEVqg9_xID5NTFPAWuvlNPw5ixfOnnIWwZf_o,1189
|
400
400
|
omlish/io/compress/bz2.py,sha256=HtwBuBYHJ3MyWO9xJ0XhWpyIYTA3OszLrpu_J4kRRPA,1534
|
401
|
-
omlish/io/compress/codecs.py,sha256=
|
401
|
+
omlish/io/compress/codecs.py,sha256=dpJKoELXy_xF5nLnQYGNu19tmHEaUPyyk7fVsOlXsWk,1790
|
402
402
|
omlish/io/compress/gzip.py,sha256=6nCWycCYo0_4cTMu4QMhu23MT1xbrwyf7E8sGGBkR_w,12199
|
403
403
|
omlish/io/compress/lz4.py,sha256=qaze1yVXexjJyN18Adh8fbTm_5pEeyytx66KoMUNpCU,2759
|
404
404
|
omlish/io/compress/lzma.py,sha256=qDyshBgBUSPcZpAyXiRXnqI7zx7x60UpPxn8K3nN8aM,2469
|
@@ -506,15 +506,16 @@ omlish/logs/standard.py,sha256=w0jS824YDvlzrGgAxKiPk9RoZ5V1b0ADiFsBEpKLuLY,3152
|
|
506
506
|
omlish/logs/timing.py,sha256=qsQ3DB6swts1pxrFlmLWQzhH-3nzDrq1MUu7PxjjUyU,1519
|
507
507
|
omlish/logs/utils.py,sha256=OkFWf1exmWImmT7BaSiIC7c0Fk9tAis-PRqo8H4ny3c,398
|
508
508
|
omlish/manifests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
509
|
-
omlish/manifests/base.py,sha256=
|
510
|
-
omlish/manifests/
|
509
|
+
omlish/manifests/base.py,sha256=YBK6jxMgY5G3hK0ZBlbU-tghzifkGhwRTyWa5XqOmno,939
|
510
|
+
omlish/manifests/globals.py,sha256=LZm4ueBjlC023uxL8zvivSyzMgx5O8kSbo9oNfhF_DE,206
|
511
|
+
omlish/manifests/loading.py,sha256=S-yEGsnBEu670ya6Bc09QqbRtA5rBp5rA4D3zuJUl9M,8070
|
511
512
|
omlish/manifests/static.py,sha256=7YwOVh_Ek9_aTrWsWNO8kWS10_j4K7yv3TpXZSHsvDY,501
|
512
513
|
omlish/manifests/types.py,sha256=5hQuY-WZ9VMqHZXr-9Dayg380JsnX2vJzXyw6vC6UDs,317
|
513
|
-
omlish/marshal/__init__.py,sha256=
|
514
|
+
omlish/marshal/__init__.py,sha256=MtQkMih6iJO0S7tbzVWBUjDr9wQhiCm3poTyLslaPFo,3584
|
514
515
|
omlish/marshal/base.py,sha256=3GMrhJBcnVrVtlQRQLOMgvV66MciAYpHKEQi5Ns3dIk,11853
|
515
516
|
omlish/marshal/errors.py,sha256=g5XJyTHd__8lfwQ4KwgK-E5WR6MoNTMrqKP2U_QRQQQ,307
|
516
517
|
omlish/marshal/factories.py,sha256=Q926jSVjaQLEmStnHLhm_c_vqEysN1LnDCwAsFLIzXw,2970
|
517
|
-
omlish/marshal/
|
518
|
+
omlish/marshal/globals.py,sha256=vNLpwQVt7Nn9sA5bBh7c_JYcUu9-1CLyENq1zBH-rcM,1510
|
518
519
|
omlish/marshal/naming.py,sha256=ELs-NtWhw6RCSEF_y98cMyzr37pj0DV_bG9yQmto_NA,857
|
519
520
|
omlish/marshal/proxy.py,sha256=i7xZQN6BSGz4nBM4CTj0S6RcSlDEgrZmX9fbtFpAPco,548
|
520
521
|
omlish/marshal/registries.py,sha256=5YtvjYDw8Wu7uigCzlrVzC1pHajoNFZtN2dFNmKrbTI,2358
|
@@ -895,9 +896,9 @@ omlish/typedvalues/marshal.py,sha256=AtBz7Jq-BfW8vwM7HSxSpR85JAXmxK2T0xDblmm1HI0
|
|
895
896
|
omlish/typedvalues/of_.py,sha256=UXkxSj504WI2UrFlqdZJbu2hyDwBhL7XVrc2qdR02GQ,1309
|
896
897
|
omlish/typedvalues/reflect.py,sha256=PAvKW6T4cW7u--iX80w3HWwZUS3SmIZ2_lQjT65uAyk,1026
|
897
898
|
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.
|
899
|
+
omlish-0.0.0.dev394.dist-info/licenses/LICENSE,sha256=B_hVtavaA8zCYDW99DYdcpDLKz1n3BBRjZrcbv8uG8c,1451
|
900
|
+
omlish-0.0.0.dev394.dist-info/METADATA,sha256=-8kg1tH7Gm7abGeeTIeCo69covgUeUmIKxmo7RTaUsk,18825
|
901
|
+
omlish-0.0.0.dev394.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
902
|
+
omlish-0.0.0.dev394.dist-info/entry_points.txt,sha256=Lt84WvRZJskWCAS7xnQGZIeVWksprtUHj0llrvVmod8,35
|
903
|
+
omlish-0.0.0.dev394.dist-info/top_level.txt,sha256=pePsKdLu7DvtUiecdYXJ78iO80uDNmBlqe-8hOzOmfs,7
|
904
|
+
omlish-0.0.0.dev394.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|