omlish 0.0.0.dev405__py3-none-any.whl → 0.0.0.dev407__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/.manifests.json +80 -80
- omlish/__about__.py +2 -2
- omlish/asyncs/anyio/sync.py +3 -0
- omlish/asyncs/bluelet/runner.py +1 -0
- omlish/asyncs/bluelet/sockets.py +2 -0
- omlish/asyncs/sync.py +1 -0
- omlish/bootstrap/__main__.py +3 -3
- omlish/bootstrap/base.py +2 -0
- omlish/bootstrap/harness.py +1 -0
- omlish/codecs/base.py +4 -4
- omlish/codecs/text.py +1 -0
- omlish/collections/frozen.py +1 -0
- omlish/collections/mappings.py +2 -0
- omlish/collections/ordered.py +1 -0
- omlish/collections/sorted/sorted.py +1 -0
- omlish/collections/trie.py +2 -2
- omlish/concurrent/executors.py +1 -0
- omlish/dataclasses/tools/modifiers.py +1 -0
- omlish/diag/procfs.py +3 -3
- omlish/diag/threads.py +1 -0
- omlish/formats/codecs.py +4 -4
- omlish/formats/dotenv.py +5 -0
- omlish/formats/props.py +1 -0
- omlish/formats/toml/writer.py +1 -0
- omlish/formats/yaml.py +1 -0
- omlish/funcs/pipes.py +3 -0
- omlish/graphs/trees.py +1 -0
- omlish/http/jwt.py +2 -0
- omlish/http/multipart.py +1 -0
- omlish/inject/impl/injector.py +1 -0
- omlish/io/buffers.py +2 -0
- omlish/io/compress/codecs.py +4 -4
- omlish/iterators/unique.py +1 -0
- omlish/lang/classes/restrict.py +1 -0
- omlish/lang/classes/simple.py +1 -0
- omlish/lang/contextmanagers.py +1 -0
- omlish/lang/descriptors.py +2 -0
- omlish/lang/objects.py +2 -0
- omlish/lang/resolving.py +1 -0
- omlish/lifecycles/contextmanagers.py +1 -0
- omlish/lite/cached.py +1 -0
- omlish/lite/inject.py +2 -0
- omlish/lite/secrets.py +1 -0
- omlish/logs/handlers.py +1 -0
- omlish/manifests/base.py +4 -4
- omlish/manifests/loading.py +111 -51
- omlish/manifests/static.py +2 -2
- omlish/manifests/types.py +2 -2
- omlish/marshal/factories.py +2 -0
- omlish/marshal/polymorphism/metadata.py +2 -0
- omlish/marshal/registries.py +1 -0
- omlish/multiprocessing/spawn.py +3 -0
- omlish/os/pidfiles/__main__.py +3 -3
- omlish/secrets/openssl.py +2 -0
- omlish/secrets/pwgen.py +3 -3
- omlish/secrets/secrets.py +5 -0
- omlish/specs/jmespath/__main__.py +3 -3
- omlish/specs/jmespath/errors.py +4 -0
- omlish/specs/jmespath/visitor.py +2 -0
- omlish/specs/jsonschema/keywords/base.py +1 -0
- omlish/sql/alchemy/apiadapter.py +1 -0
- omlish/sql/alchemy/asyncs.py +3 -0
- omlish/sql/alchemy/duckdb.py +2 -0
- omlish/sql/api/dbapi.py +2 -0
- omlish/sql/params.py +3 -0
- omlish/sql/queries/names.py +1 -0
- omlish/sync.py +3 -0
- omlish/testing/pytest/inject/harness.py +4 -2
- omlish/text/asdl.py +3 -0
- {omlish-0.0.0.dev405.dist-info → omlish-0.0.0.dev407.dist-info}/METADATA +1 -1
- {omlish-0.0.0.dev405.dist-info → omlish-0.0.0.dev407.dist-info}/RECORD +75 -75
- {omlish-0.0.0.dev405.dist-info → omlish-0.0.0.dev407.dist-info}/WHEEL +0 -0
- {omlish-0.0.0.dev405.dist-info → omlish-0.0.0.dev407.dist-info}/entry_points.txt +0 -0
- {omlish-0.0.0.dev405.dist-info → omlish-0.0.0.dev407.dist-info}/licenses/LICENSE +0 -0
- {omlish-0.0.0.dev405.dist-info → omlish-0.0.0.dev407.dist-info}/top_level.txt +0 -0
omlish/.manifests.json
CHANGED
@@ -5,9 +5,9 @@
|
|
5
5
|
"file": "omlish/bootstrap/__main__.py",
|
6
6
|
"line": 1,
|
7
7
|
"value": {
|
8
|
-
"
|
9
|
-
"
|
10
|
-
"
|
8
|
+
"!omdev.cli.types.CliModule": {
|
9
|
+
"name": "bootstrap",
|
10
|
+
"module": "omlish.bootstrap.__main__"
|
11
11
|
}
|
12
12
|
}
|
13
13
|
},
|
@@ -17,9 +17,9 @@
|
|
17
17
|
"file": "omlish/diag/procfs.py",
|
18
18
|
"line": 361,
|
19
19
|
"value": {
|
20
|
-
"
|
21
|
-
"
|
22
|
-
"
|
20
|
+
"!omdev.cli.types.CliModule": {
|
21
|
+
"name": "procfs",
|
22
|
+
"module": "omlish.diag.procfs"
|
23
23
|
}
|
24
24
|
}
|
25
25
|
},
|
@@ -29,9 +29,9 @@
|
|
29
29
|
"file": "omlish/formats/cbor.py",
|
30
30
|
"line": 30,
|
31
31
|
"value": {
|
32
|
-
"
|
33
|
-
"
|
34
|
-
"
|
32
|
+
"!.codecs.base.LazyLoadedCodec": {
|
33
|
+
"module": "omlish.formats.cbor",
|
34
|
+
"attr": "CBOR_CODEC",
|
35
35
|
"name": "cbor",
|
36
36
|
"aliases": null
|
37
37
|
}
|
@@ -43,9 +43,9 @@
|
|
43
43
|
"file": "omlish/formats/cloudpickle.py",
|
44
44
|
"line": 30,
|
45
45
|
"value": {
|
46
|
-
"
|
47
|
-
"
|
48
|
-
"
|
46
|
+
"!.codecs.base.LazyLoadedCodec": {
|
47
|
+
"module": "omlish.formats.cloudpickle",
|
48
|
+
"attr": "CLOUDPICKLE_CODEC",
|
49
49
|
"name": "cloudpickle",
|
50
50
|
"aliases": null
|
51
51
|
}
|
@@ -57,9 +57,9 @@
|
|
57
57
|
"file": "omlish/formats/edn/codec.py",
|
58
58
|
"line": 25,
|
59
59
|
"value": {
|
60
|
-
"
|
61
|
-
"
|
62
|
-
"
|
60
|
+
"!.codecs.base.LazyLoadedCodec": {
|
61
|
+
"module": "omlish.formats.edn.codec",
|
62
|
+
"attr": "EDN_CODEC",
|
63
63
|
"name": "edn",
|
64
64
|
"aliases": null
|
65
65
|
}
|
@@ -71,9 +71,9 @@
|
|
71
71
|
"file": "omlish/formats/ini/codec.py",
|
72
72
|
"line": 25,
|
73
73
|
"value": {
|
74
|
-
"
|
75
|
-
"
|
76
|
-
"
|
74
|
+
"!.codecs.base.LazyLoadedCodec": {
|
75
|
+
"module": "omlish.formats.ini.codec",
|
76
|
+
"attr": "INI_CODEC",
|
77
77
|
"name": "ini",
|
78
78
|
"aliases": null
|
79
79
|
}
|
@@ -85,9 +85,9 @@
|
|
85
85
|
"file": "omlish/formats/json/codecs.py",
|
86
86
|
"line": 14,
|
87
87
|
"value": {
|
88
|
-
"
|
89
|
-
"
|
90
|
-
"
|
88
|
+
"!.codecs.base.LazyLoadedCodec": {
|
89
|
+
"module": "omlish.formats.json.codecs",
|
90
|
+
"attr": "JSON_CODEC",
|
91
91
|
"name": "json",
|
92
92
|
"aliases": null
|
93
93
|
}
|
@@ -99,9 +99,9 @@
|
|
99
99
|
"file": "omlish/formats/json/codecs.py",
|
100
100
|
"line": 21,
|
101
101
|
"value": {
|
102
|
-
"
|
103
|
-
"
|
104
|
-
"
|
102
|
+
"!.codecs.base.LazyLoadedCodec": {
|
103
|
+
"module": "omlish.formats.json.codecs",
|
104
|
+
"attr": "JSON_COMPACT_CODEC",
|
105
105
|
"name": "json-compact",
|
106
106
|
"aliases": null
|
107
107
|
}
|
@@ -113,9 +113,9 @@
|
|
113
113
|
"file": "omlish/formats/json/codecs.py",
|
114
114
|
"line": 28,
|
115
115
|
"value": {
|
116
|
-
"
|
117
|
-
"
|
118
|
-
"
|
116
|
+
"!.codecs.base.LazyLoadedCodec": {
|
117
|
+
"module": "omlish.formats.json.codecs",
|
118
|
+
"attr": "JSON_PRETTY_CODEC",
|
119
119
|
"name": "json-pretty",
|
120
120
|
"aliases": null
|
121
121
|
}
|
@@ -127,9 +127,9 @@
|
|
127
127
|
"file": "omlish/formats/json5/codec.py",
|
128
128
|
"line": 73,
|
129
129
|
"value": {
|
130
|
-
"
|
131
|
-
"
|
132
|
-
"
|
130
|
+
"!.codecs.base.LazyLoadedCodec": {
|
131
|
+
"module": "omlish.formats.json5.codec",
|
132
|
+
"attr": "JSON5_CODEC",
|
133
133
|
"name": "json5",
|
134
134
|
"aliases": null
|
135
135
|
}
|
@@ -141,9 +141,9 @@
|
|
141
141
|
"file": "omlish/formats/pickle.py",
|
142
142
|
"line": 30,
|
143
143
|
"value": {
|
144
|
-
"
|
145
|
-
"
|
146
|
-
"
|
144
|
+
"!.codecs.base.LazyLoadedCodec": {
|
145
|
+
"module": "omlish.formats.pickle",
|
146
|
+
"attr": "PICKLE_CODEC",
|
147
147
|
"name": "pickle",
|
148
148
|
"aliases": null
|
149
149
|
}
|
@@ -155,9 +155,9 @@
|
|
155
155
|
"file": "omlish/formats/repr.py",
|
156
156
|
"line": 24,
|
157
157
|
"value": {
|
158
|
-
"
|
159
|
-
"
|
160
|
-
"
|
158
|
+
"!.codecs.base.LazyLoadedCodec": {
|
159
|
+
"module": "omlish.formats.repr",
|
160
|
+
"attr": "REPR_CODEC",
|
161
161
|
"name": "repr",
|
162
162
|
"aliases": null
|
163
163
|
}
|
@@ -169,9 +169,9 @@
|
|
169
169
|
"file": "omlish/formats/toml/codec.py",
|
170
170
|
"line": 16,
|
171
171
|
"value": {
|
172
|
-
"
|
173
|
-
"
|
174
|
-
"
|
172
|
+
"!.codecs.base.LazyLoadedCodec": {
|
173
|
+
"module": "omlish.formats.toml.codec",
|
174
|
+
"attr": "TOML_CODEC",
|
175
175
|
"name": "toml",
|
176
176
|
"aliases": null
|
177
177
|
}
|
@@ -181,11 +181,11 @@
|
|
181
181
|
"module": ".formats.yaml",
|
182
182
|
"attr": "_YAML_LAZY_CODEC",
|
183
183
|
"file": "omlish/formats/yaml.py",
|
184
|
-
"line":
|
184
|
+
"line": 256,
|
185
185
|
"value": {
|
186
|
-
"
|
187
|
-
"
|
188
|
-
"
|
186
|
+
"!.codecs.base.LazyLoadedCodec": {
|
187
|
+
"module": "omlish.formats.yaml",
|
188
|
+
"attr": "YAML_CODEC",
|
189
189
|
"name": "yaml",
|
190
190
|
"aliases": [
|
191
191
|
"yml"
|
@@ -197,11 +197,11 @@
|
|
197
197
|
"module": ".formats.yaml",
|
198
198
|
"attr": "_YAML_UNSAFE_LAZY_CODEC",
|
199
199
|
"file": "omlish/formats/yaml.py",
|
200
|
-
"line":
|
200
|
+
"line": 263,
|
201
201
|
"value": {
|
202
|
-
"
|
203
|
-
"
|
204
|
-
"
|
202
|
+
"!.codecs.base.LazyLoadedCodec": {
|
203
|
+
"module": "omlish.formats.yaml",
|
204
|
+
"attr": "YAML_UNSAFE_CODEC",
|
205
205
|
"name": "yaml-unsafe",
|
206
206
|
"aliases": null
|
207
207
|
}
|
@@ -213,9 +213,9 @@
|
|
213
213
|
"file": "omlish/io/compress/brotli.py",
|
214
214
|
"line": 46,
|
215
215
|
"value": {
|
216
|
-
"
|
217
|
-
"
|
218
|
-
"
|
216
|
+
"!.codecs.base.LazyLoadedCodec": {
|
217
|
+
"module": "omlish.io.compress.brotli",
|
218
|
+
"attr": "BROTLI_CODEC",
|
219
219
|
"name": "brotli",
|
220
220
|
"aliases": null
|
221
221
|
}
|
@@ -227,9 +227,9 @@
|
|
227
227
|
"file": "omlish/io/compress/bz2.py",
|
228
228
|
"line": 60,
|
229
229
|
"value": {
|
230
|
-
"
|
231
|
-
"
|
232
|
-
"
|
230
|
+
"!.codecs.base.LazyLoadedCodec": {
|
231
|
+
"module": "omlish.io.compress.bz2",
|
232
|
+
"attr": "BZ2_CODEC",
|
233
233
|
"name": "bz2",
|
234
234
|
"aliases": null
|
235
235
|
}
|
@@ -241,9 +241,9 @@
|
|
241
241
|
"file": "omlish/io/compress/gzip.py",
|
242
242
|
"line": 349,
|
243
243
|
"value": {
|
244
|
-
"
|
245
|
-
"
|
246
|
-
"
|
244
|
+
"!.codecs.base.LazyLoadedCodec": {
|
245
|
+
"module": "omlish.io.compress.gzip",
|
246
|
+
"attr": "GZIP_CODEC",
|
247
247
|
"name": "gzip",
|
248
248
|
"aliases": [
|
249
249
|
"gz"
|
@@ -257,9 +257,9 @@
|
|
257
257
|
"file": "omlish/io/compress/lz4.py",
|
258
258
|
"line": 90,
|
259
259
|
"value": {
|
260
|
-
"
|
261
|
-
"
|
262
|
-
"
|
260
|
+
"!.codecs.base.LazyLoadedCodec": {
|
261
|
+
"module": "omlish.io.compress.lz4",
|
262
|
+
"attr": "LZ4_CODEC",
|
263
263
|
"name": "lz4",
|
264
264
|
"aliases": null
|
265
265
|
}
|
@@ -271,9 +271,9 @@
|
|
271
271
|
"file": "omlish/io/compress/lzma.py",
|
272
272
|
"line": 80,
|
273
273
|
"value": {
|
274
|
-
"
|
275
|
-
"
|
276
|
-
"
|
274
|
+
"!.codecs.base.LazyLoadedCodec": {
|
275
|
+
"module": "omlish.io.compress.lzma",
|
276
|
+
"attr": "LZMA_CODEC",
|
277
277
|
"name": "lzma",
|
278
278
|
"aliases": null
|
279
279
|
}
|
@@ -285,9 +285,9 @@
|
|
285
285
|
"file": "omlish/io/compress/snappy.py",
|
286
286
|
"line": 33,
|
287
287
|
"value": {
|
288
|
-
"
|
289
|
-
"
|
290
|
-
"
|
288
|
+
"!.codecs.base.LazyLoadedCodec": {
|
289
|
+
"module": "omlish.io.compress.snappy",
|
290
|
+
"attr": "SNAPPY_CODEC",
|
291
291
|
"name": "snappy",
|
292
292
|
"aliases": null
|
293
293
|
}
|
@@ -299,9 +299,9 @@
|
|
299
299
|
"file": "omlish/io/compress/zlib.py",
|
300
300
|
"line": 73,
|
301
301
|
"value": {
|
302
|
-
"
|
303
|
-
"
|
304
|
-
"
|
302
|
+
"!.codecs.base.LazyLoadedCodec": {
|
303
|
+
"module": "omlish.io.compress.zlib",
|
304
|
+
"attr": "ZLIB_CODEC",
|
305
305
|
"name": "zlib",
|
306
306
|
"aliases": null
|
307
307
|
}
|
@@ -313,9 +313,9 @@
|
|
313
313
|
"file": "omlish/io/compress/zstd.py",
|
314
314
|
"line": 51,
|
315
315
|
"value": {
|
316
|
-
"
|
317
|
-
"
|
318
|
-
"
|
316
|
+
"!.codecs.base.LazyLoadedCodec": {
|
317
|
+
"module": "omlish.io.compress.zstd",
|
318
|
+
"attr": "ZSTD_CODEC",
|
319
319
|
"name": "zstd",
|
320
320
|
"aliases": null
|
321
321
|
}
|
@@ -327,9 +327,9 @@
|
|
327
327
|
"file": "omlish/os/pidfiles/__main__.py",
|
328
328
|
"line": 1,
|
329
329
|
"value": {
|
330
|
-
"
|
331
|
-
"
|
332
|
-
"
|
330
|
+
"!omdev.cli.types.CliModule": {
|
331
|
+
"name": "pidfiles",
|
332
|
+
"module": "omlish.os.pidfiles.__main__"
|
333
333
|
}
|
334
334
|
}
|
335
335
|
},
|
@@ -339,9 +339,9 @@
|
|
339
339
|
"file": "omlish/secrets/pwgen.py",
|
340
340
|
"line": 78,
|
341
341
|
"value": {
|
342
|
-
"
|
343
|
-
"
|
344
|
-
"
|
342
|
+
"!omdev.cli.types.CliModule": {
|
343
|
+
"name": "pwgen",
|
344
|
+
"module": "omlish.secrets.pwgen"
|
345
345
|
}
|
346
346
|
}
|
347
347
|
},
|
@@ -351,12 +351,12 @@
|
|
351
351
|
"file": "omlish/specs/jmespath/__main__.py",
|
352
352
|
"line": 1,
|
353
353
|
"value": {
|
354
|
-
"
|
355
|
-
"
|
354
|
+
"!omdev.cli.types.CliModule": {
|
355
|
+
"name": [
|
356
356
|
"jmespath",
|
357
357
|
"jp"
|
358
358
|
],
|
359
|
-
"
|
359
|
+
"module": "omlish.specs.jmespath.__main__"
|
360
360
|
}
|
361
361
|
}
|
362
362
|
}
|
omlish/__about__.py
CHANGED
omlish/asyncs/anyio/sync.py
CHANGED
@@ -14,6 +14,7 @@ T = ta.TypeVar('T')
|
|
14
14
|
class Once:
|
15
15
|
def __init__(self) -> None:
|
16
16
|
super().__init__()
|
17
|
+
|
17
18
|
self._done = False
|
18
19
|
self._lock = anyio.Lock()
|
19
20
|
|
@@ -36,6 +37,7 @@ class Once:
|
|
36
37
|
class Lazy(ta.Generic[T]):
|
37
38
|
def __init__(self) -> None:
|
38
39
|
super().__init__()
|
40
|
+
|
39
41
|
self._once = Once()
|
40
42
|
self._v: lang.Maybe[T] = lang.empty()
|
41
43
|
|
@@ -55,6 +57,7 @@ class Lazy(ta.Generic[T]):
|
|
55
57
|
class LazyFn(ta.Generic[T]):
|
56
58
|
def __init__(self, fn: ta.Callable[[], ta.Awaitable[T]]) -> None:
|
57
59
|
super().__init__()
|
60
|
+
|
58
61
|
self._fn = fn
|
59
62
|
self._once = Once()
|
60
63
|
self._v: lang.Maybe[T] = lang.empty()
|
omlish/asyncs/bluelet/runner.py
CHANGED
omlish/asyncs/bluelet/sockets.py
CHANGED
@@ -33,6 +33,7 @@ class BlueletListener:
|
|
33
33
|
"""Create a listening socket on the given hostname and port."""
|
34
34
|
|
35
35
|
super().__init__()
|
36
|
+
|
36
37
|
self._closed = False
|
37
38
|
self.host = host
|
38
39
|
self.port = port
|
@@ -64,6 +65,7 @@ class BlueletConnection:
|
|
64
65
|
|
65
66
|
def __init__(self, sock: socket.socket, addr: ta.Tuple[str, int]) -> None:
|
66
67
|
super().__init__()
|
68
|
+
|
67
69
|
self.sock = sock
|
68
70
|
self.addr = addr
|
69
71
|
self._buf = bytearray()
|
omlish/asyncs/sync.py
CHANGED
omlish/bootstrap/__main__.py
CHANGED
omlish/bootstrap/base.py
CHANGED
@@ -18,10 +18,12 @@ class Bootstrap(abc.ABC, lang.PackageSealed, ta.Generic[BootstrapConfigT]):
|
|
18
18
|
|
19
19
|
def __init__(self, config: BootstrapConfigT) -> None:
|
20
20
|
super().__init__()
|
21
|
+
|
21
22
|
self._config = config
|
22
23
|
|
23
24
|
def __init_subclass__(cls, **kwargs: ta.Any) -> None:
|
24
25
|
super().__init_subclass__(**kwargs)
|
26
|
+
|
25
27
|
if not cls.__name__.endswith('Bootstrap'):
|
26
28
|
raise NameError(cls)
|
27
29
|
if abc.ABC not in cls.__bases__ and not issubclass(cls.__dict__['Config'], Bootstrap.Config):
|
omlish/bootstrap/harness.py
CHANGED
omlish/codecs/base.py
CHANGED
@@ -95,13 +95,13 @@ class LazyLoadedCodec(ModAttrManifest):
|
|
95
95
|
@classmethod
|
96
96
|
def new(
|
97
97
|
cls,
|
98
|
-
|
99
|
-
|
98
|
+
module: str,
|
99
|
+
attr: str,
|
100
100
|
codec: Codec,
|
101
101
|
) -> 'LazyLoadedCodec':
|
102
102
|
return cls(
|
103
|
-
|
104
|
-
|
103
|
+
module=module,
|
104
|
+
attr=attr,
|
105
105
|
name=codec.name,
|
106
106
|
aliases=codec.aliases,
|
107
107
|
)
|
omlish/codecs/text.py
CHANGED
@@ -69,6 +69,7 @@ class TextEncodingComboCodec(ComboCodec[str, bytes]):
|
|
69
69
|
options: TextEncodingOptions = TextEncodingOptions(),
|
70
70
|
) -> None:
|
71
71
|
super().__init__()
|
72
|
+
|
72
73
|
self._info = check.isinstance(info, codecs.CodecInfo)
|
73
74
|
self._opts = check.isinstance(options, TextEncodingOptions)
|
74
75
|
|
omlish/collections/frozen.py
CHANGED
omlish/collections/mappings.py
CHANGED
@@ -130,7 +130,9 @@ class MissingDict(dict[K, V]):
|
|
130
130
|
def __init__(self, missing_fn: ta.Callable[[K], V]) -> None:
|
131
131
|
if not callable(missing_fn):
|
132
132
|
raise TypeError(missing_fn)
|
133
|
+
|
133
134
|
super().__init__()
|
135
|
+
|
134
136
|
self._missing_fn = missing_fn
|
135
137
|
|
136
138
|
def __missing__(self, key):
|
omlish/collections/ordered.py
CHANGED
omlish/collections/trie.py
CHANGED
@@ -144,7 +144,7 @@ class Trie(ta.MutableMapping[ta.Sequence[K], V], ta.Generic[K, V]):
|
|
144
144
|
stack.append((c, ic(c._children))) # noqa
|
145
145
|
yield (key if share_key else tuple(key), c)
|
146
146
|
|
147
|
-
def
|
147
|
+
def iteritems(self, **kwargs: ta.Any) -> ta.Iterator[tuple[ta.Sequence[K], V]]:
|
148
148
|
for k, node in self.iter_nodes(**kwargs):
|
149
149
|
try:
|
150
150
|
yield (k, node._value) # noqa
|
@@ -152,5 +152,5 @@ class Trie(ta.MutableMapping[ta.Sequence[K], V], ta.Generic[K, V]):
|
|
152
152
|
pass
|
153
153
|
|
154
154
|
def __iter__(self) -> ta.Iterator[ta.Sequence[K]]:
|
155
|
-
for k, _ in self.
|
155
|
+
for k, _ in self.iteritems():
|
156
156
|
yield k
|
omlish/concurrent/executors.py
CHANGED
omlish/diag/procfs.py
CHANGED
@@ -359,9 +359,9 @@ def _main() -> None:
|
|
359
359
|
|
360
360
|
|
361
361
|
# @omlish-manifest
|
362
|
-
_CLI_MODULE = {'
|
363
|
-
'
|
364
|
-
'
|
362
|
+
_CLI_MODULE = {'!omdev.cli.types.CliModule': {
|
363
|
+
'name': 'procfs',
|
364
|
+
'module': __name__,
|
365
365
|
}}
|
366
366
|
|
367
367
|
|
omlish/diag/threads.py
CHANGED
omlish/formats/codecs.py
CHANGED
@@ -85,12 +85,12 @@ def make_str_object_codec(
|
|
85
85
|
|
86
86
|
|
87
87
|
def make_object_lazy_loaded_codec(
|
88
|
-
|
89
|
-
|
88
|
+
module: str,
|
89
|
+
attr: str,
|
90
90
|
codec: ObjectCodec,
|
91
91
|
) -> codecs.LazyLoadedCodec:
|
92
92
|
return codecs.LazyLoadedCodec.new(
|
93
|
-
|
94
|
-
|
93
|
+
module,
|
94
|
+
attr,
|
95
95
|
codec,
|
96
96
|
)
|
omlish/formats/dotenv.py
CHANGED
@@ -66,6 +66,7 @@ class DotenvAtom(metaclass=abc.ABCMeta):
|
|
66
66
|
class DotenvLiteral(DotenvAtom):
|
67
67
|
def __init__(self, value: str) -> None:
|
68
68
|
super().__init__()
|
69
|
+
|
69
70
|
self.value = value
|
70
71
|
|
71
72
|
def __repr__(self) -> str:
|
@@ -86,6 +87,7 @@ class DotenvLiteral(DotenvAtom):
|
|
86
87
|
class DotenvVariable(DotenvAtom):
|
87
88
|
def __init__(self, name: str, default: ta.Optional[str]) -> None:
|
88
89
|
super().__init__()
|
90
|
+
|
89
91
|
self.name = name
|
90
92
|
self.default = default
|
91
93
|
|
@@ -164,6 +166,7 @@ class DotenvBinding(ta.NamedTuple):
|
|
164
166
|
class _DotenvPosition:
|
165
167
|
def __init__(self, chars: int, line: int) -> None:
|
166
168
|
super().__init__()
|
169
|
+
|
167
170
|
self.chars = chars
|
168
171
|
self.line = line
|
169
172
|
|
@@ -187,6 +190,7 @@ class DotenvError(Exception):
|
|
187
190
|
class _DotenvReader:
|
188
191
|
def __init__(self, stream: ta.IO[str]) -> None:
|
189
192
|
super().__init__()
|
193
|
+
|
190
194
|
self.string = stream.read()
|
191
195
|
self.position = _DotenvPosition.start()
|
192
196
|
self.mark = _DotenvPosition.start()
|
@@ -334,6 +338,7 @@ class Dotenv:
|
|
334
338
|
log: ta.Optional[logging.Logger] = None,
|
335
339
|
) -> None:
|
336
340
|
super().__init__()
|
341
|
+
|
337
342
|
self.path: ta.Union[str, 'os.PathLike[str]', None] = path
|
338
343
|
self.stream: ta.Optional[ta.IO[str]] = stream
|
339
344
|
self._dict: ta.Optional[ta.Dict[str, ta.Optional[str]]] = None
|
omlish/formats/props.py
CHANGED
@@ -129,6 +129,7 @@ class PropertyError(Exception):
|
|
129
129
|
class ParseError(PropertyError):
|
130
130
|
def __init__(self, message: str, line_number: int, file_obj: ta.Any = None) -> None:
|
131
131
|
super().__init__()
|
132
|
+
|
132
133
|
self.message = message
|
133
134
|
self.line_number = line_number
|
134
135
|
self.file_obj = file_obj
|
omlish/formats/toml/writer.py
CHANGED