omdev 0.0.0.dev322__py3-none-any.whl → 0.0.0.dev324__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.
- omdev/__about__.py +1 -1
- omdev/cache/data/cache.py +2 -2
- omdev/mypy/debug.py +41 -4
- omdev/mypy/report.py +82 -0
- omdev/packaging/specifiers.py +1 -1
- omdev/py/scripts/importtrace.py +1 -1
- omdev/scripts/ci.py +1 -1
- omdev/scripts/interp.py +2 -2
- omdev/scripts/pyproject.py +2 -2
- omdev/tools/json/formats.py +9 -1
- {omdev-0.0.0.dev322.dist-info → omdev-0.0.0.dev324.dist-info}/METADATA +4 -4
- {omdev-0.0.0.dev322.dist-info → omdev-0.0.0.dev324.dist-info}/RECORD +16 -15
- {omdev-0.0.0.dev322.dist-info → omdev-0.0.0.dev324.dist-info}/WHEEL +0 -0
- {omdev-0.0.0.dev322.dist-info → omdev-0.0.0.dev324.dist-info}/entry_points.txt +0 -0
- {omdev-0.0.0.dev322.dist-info → omdev-0.0.0.dev324.dist-info}/licenses/LICENSE +0 -0
- {omdev-0.0.0.dev322.dist-info → omdev-0.0.0.dev324.dist-info}/top_level.txt +0 -0
omdev/__about__.py
CHANGED
omdev/cache/data/cache.py
CHANGED
@@ -87,11 +87,11 @@ def _url_retrieve(
|
|
87
87
|
if size >= 0 and read < size:
|
88
88
|
raise urllib.error.ContentTooShortError(
|
89
89
|
f'retrieval incomplete: got only {read} out of {size} bytes',
|
90
|
-
result,
|
90
|
+
result,
|
91
91
|
)
|
92
92
|
|
93
93
|
success = True
|
94
|
-
return result
|
94
|
+
return result
|
95
95
|
|
96
96
|
|
97
97
|
class Cache:
|
omdev/mypy/debug.py
CHANGED
@@ -3,6 +3,9 @@ import re
|
|
3
3
|
import sys
|
4
4
|
|
5
5
|
|
6
|
+
##
|
7
|
+
|
8
|
+
|
6
9
|
def _is_instance_or_subclass(obj, cls):
|
7
10
|
return (isinstance(obj, type) and issubclass(obj, cls)) or isinstance(obj, cls)
|
8
11
|
|
@@ -11,44 +14,57 @@ class MypyDebugPathFinder(importlib.machinery.PathFinder):
|
|
11
14
|
@classmethod
|
12
15
|
def _get_spec(cls, fullname, path, target=None): # noqa
|
13
16
|
namespace_path = []
|
17
|
+
|
14
18
|
for entry in path:
|
15
19
|
if not isinstance(entry, (str, bytes)):
|
16
20
|
continue
|
21
|
+
|
17
22
|
finder = cls._path_importer_cache(entry) # type: ignore # noqa
|
18
23
|
if finder is not None:
|
19
24
|
if isinstance(finder, importlib.machinery.FileFinder):
|
20
25
|
finder = importlib.machinery.FileFinder(
|
21
26
|
finder.path,
|
22
27
|
*[
|
23
|
-
(i, [s])
|
28
|
+
(i, [s])
|
29
|
+
for s, i in finder._loaders # type: ignore # noqa
|
24
30
|
if not _is_instance_or_subclass(i, importlib.machinery.ExtensionFileLoader)
|
25
31
|
],
|
26
32
|
)
|
33
|
+
|
27
34
|
if hasattr(finder, 'find_spec'):
|
28
35
|
spec = finder.find_spec(fullname, target)
|
29
36
|
else:
|
30
37
|
spec = cls._legacy_get_spec(fullname, finder) # type: ignore # noqa
|
38
|
+
|
31
39
|
if spec is None:
|
32
40
|
continue
|
41
|
+
|
33
42
|
if spec.loader is not None:
|
34
43
|
return spec
|
44
|
+
|
35
45
|
portions = spec.submodule_search_locations
|
36
46
|
if portions is None:
|
37
47
|
raise ImportError('spec missing loader')
|
48
|
+
|
38
49
|
namespace_path.extend(portions)
|
50
|
+
|
39
51
|
return None
|
40
52
|
|
41
53
|
@classmethod
|
42
54
|
def find_spec(cls, fullname, path=None, target=None): # noqa
|
43
55
|
if not fullname.startswith('mypy.') and fullname != 'mypy':
|
44
56
|
return None
|
57
|
+
|
45
58
|
if path is None:
|
46
59
|
path = sys.path
|
60
|
+
|
47
61
|
spec = cls._get_spec(fullname, path, target)
|
48
62
|
if spec is None:
|
49
63
|
return None
|
64
|
+
|
50
65
|
elif spec.loader is None:
|
51
66
|
namespace_path = spec.submodule_search_locations
|
67
|
+
|
52
68
|
if namespace_path:
|
53
69
|
spec.origin = None
|
54
70
|
spec.submodule_search_locations = importlib.machinery._NamespacePath( # type: ignore # noqa
|
@@ -57,29 +73,50 @@ class MypyDebugPathFinder(importlib.machinery.PathFinder):
|
|
57
73
|
cls._get_spec,
|
58
74
|
)
|
59
75
|
return spec
|
76
|
+
|
60
77
|
else:
|
61
78
|
return None
|
79
|
+
|
62
80
|
else:
|
63
81
|
return spec
|
64
82
|
|
65
83
|
|
66
|
-
def
|
84
|
+
def install_debug_path_finder() -> None:
|
67
85
|
for i, e in enumerate(sys.meta_path): # noqa
|
68
86
|
if _is_instance_or_subclass(e, importlib.machinery.PathFinder):
|
69
87
|
break
|
88
|
+
|
70
89
|
sys.meta_path.insert(i, MypyDebugPathFinder) # noqa
|
71
90
|
sys.path_importer_cache.clear()
|
72
91
|
importlib.invalidate_caches()
|
73
92
|
|
93
|
+
|
94
|
+
##
|
95
|
+
|
96
|
+
|
97
|
+
def run_mypy_main(
|
98
|
+
*,
|
99
|
+
show_traceback: bool = False,
|
100
|
+
) -> None:
|
74
101
|
from mypy.__main__ import console_entry # noqa
|
75
102
|
|
76
103
|
sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])
|
77
104
|
|
78
|
-
if
|
79
|
-
sys.argv
|
105
|
+
if show_traceback:
|
106
|
+
if not any(k in sys.argv[1:] for k in ['--show-traceback', '--tb']):
|
107
|
+
sys.argv.insert(1, '--show-traceback')
|
80
108
|
|
81
109
|
console_entry()
|
82
110
|
|
83
111
|
|
112
|
+
##
|
113
|
+
|
114
|
+
|
115
|
+
def _main() -> None:
|
116
|
+
install_debug_path_finder()
|
117
|
+
|
118
|
+
run_mypy_main(show_traceback=True)
|
119
|
+
|
120
|
+
|
84
121
|
if __name__ == '__main__':
|
85
122
|
_main()
|
omdev/mypy/report.py
ADDED
@@ -0,0 +1,82 @@
|
|
1
|
+
"""
|
2
|
+
TODO:
|
3
|
+
- alt mode: --output=json, subprocess / tee
|
4
|
+
"""
|
5
|
+
import collections
|
6
|
+
import dataclasses as dc
|
7
|
+
import typing as ta
|
8
|
+
|
9
|
+
from .debug import install_debug_path_finder
|
10
|
+
from .debug import run_mypy_main
|
11
|
+
|
12
|
+
|
13
|
+
if ta.TYPE_CHECKING:
|
14
|
+
import mypy.build
|
15
|
+
import mypy.errors
|
16
|
+
|
17
|
+
|
18
|
+
##
|
19
|
+
|
20
|
+
|
21
|
+
@dc.dataclass(frozen=True, kw_only=True)
|
22
|
+
class JsonOutputError:
|
23
|
+
file: str
|
24
|
+
line: int
|
25
|
+
column: int
|
26
|
+
message: str
|
27
|
+
hint: ta.Any | None
|
28
|
+
code: str
|
29
|
+
severity: str # 'error' | 'note'
|
30
|
+
|
31
|
+
|
32
|
+
##
|
33
|
+
|
34
|
+
|
35
|
+
def _report_build_result(
|
36
|
+
result: 'mypy.build.BuildResult',
|
37
|
+
) -> None:
|
38
|
+
errors: ta.Sequence[mypy.errors.ErrorInfo] = [
|
39
|
+
e
|
40
|
+
for es in result.manager.errors.error_info_map.values()
|
41
|
+
for e in es
|
42
|
+
]
|
43
|
+
if errors:
|
44
|
+
count_by_code = collections.Counter(
|
45
|
+
e.code.code
|
46
|
+
for e in errors
|
47
|
+
if e.code is not None
|
48
|
+
)
|
49
|
+
|
50
|
+
print()
|
51
|
+
max_code_len = max(map(len, count_by_code))
|
52
|
+
for code, count in sorted(count_by_code.items(), key=lambda kv: -kv[1]):
|
53
|
+
print(f'{code.rjust(max_code_len)} : {count}')
|
54
|
+
print()
|
55
|
+
|
56
|
+
|
57
|
+
##
|
58
|
+
|
59
|
+
|
60
|
+
def _main() -> None:
|
61
|
+
install_debug_path_finder()
|
62
|
+
|
63
|
+
##
|
64
|
+
|
65
|
+
import mypy.main
|
66
|
+
|
67
|
+
old_run_build = mypy.main.run_build
|
68
|
+
|
69
|
+
def new_run_build(*args, **kwargs):
|
70
|
+
ret = old_run_build(*args, **kwargs)
|
71
|
+
_report_build_result(ta.cast('mypy.build.BuildResult', ret[0]))
|
72
|
+
return ret
|
73
|
+
|
74
|
+
mypy.main.run_build = new_run_build
|
75
|
+
|
76
|
+
##
|
77
|
+
|
78
|
+
run_mypy_main()
|
79
|
+
|
80
|
+
|
81
|
+
if __name__ == '__main__':
|
82
|
+
_main()
|
omdev/packaging/specifiers.py
CHANGED
omdev/py/scripts/importtrace.py
CHANGED
@@ -210,7 +210,7 @@ class ImportTracer:
|
|
210
210
|
|
211
211
|
for child in node.children:
|
212
212
|
seq = self._fixup_node(child, depth=depth + 1, seq=seq + 1)
|
213
|
-
node.child_stats += child.stats
|
213
|
+
node.child_stats += child.stats
|
214
214
|
|
215
215
|
node.self_stats = node.stats - node.child_stats # type: ignore
|
216
216
|
return seq
|
omdev/scripts/ci.py
CHANGED
omdev/scripts/interp.py
CHANGED
@@ -1739,7 +1739,7 @@ class ProxyLogHandler(ProxyLogFilterer, logging.Handler):
|
|
1739
1739
|
self._underlying.set_name(name)
|
1740
1740
|
|
1741
1741
|
@property
|
1742
|
-
def name(self):
|
1742
|
+
def name(self): # type: ignore[override]
|
1743
1743
|
return self._underlying.name
|
1744
1744
|
|
1745
1745
|
@property
|
@@ -1972,7 +1972,7 @@ class Specifier(BaseSpecifier):
|
|
1972
1972
|
|
1973
1973
|
self._prereleases = prereleases
|
1974
1974
|
|
1975
|
-
@property
|
1975
|
+
@property
|
1976
1976
|
def prereleases(self) -> bool:
|
1977
1977
|
if self._prereleases is not None:
|
1978
1978
|
return self._prereleases
|
omdev/scripts/pyproject.py
CHANGED
@@ -3203,7 +3203,7 @@ class ProxyLogHandler(ProxyLogFilterer, logging.Handler):
|
|
3203
3203
|
self._underlying.set_name(name)
|
3204
3204
|
|
3205
3205
|
@property
|
3206
|
-
def name(self):
|
3206
|
+
def name(self): # type: ignore[override]
|
3207
3207
|
return self._underlying.name
|
3208
3208
|
|
3209
3209
|
@property
|
@@ -3667,7 +3667,7 @@ class Specifier(BaseSpecifier):
|
|
3667
3667
|
|
3668
3668
|
self._prereleases = prereleases
|
3669
3669
|
|
3670
|
-
@property
|
3670
|
+
@property
|
3671
3671
|
def prereleases(self) -> bool:
|
3672
3672
|
if self._prereleases is not None:
|
3673
3673
|
return self._prereleases
|
omdev/tools/json/formats.py
CHANGED
@@ -1,12 +1,14 @@
|
|
1
1
|
"""
|
2
2
|
TODO:
|
3
3
|
- options lol - csv header, newline, etc
|
4
|
+
- edn
|
4
5
|
"""
|
5
6
|
import dataclasses as dc
|
6
7
|
import enum
|
7
8
|
import json
|
8
9
|
import typing as ta
|
9
10
|
|
11
|
+
from omlish import check
|
10
12
|
from omlish import lang
|
11
13
|
|
12
14
|
|
@@ -44,6 +46,12 @@ class Format:
|
|
44
46
|
load: ta.Callable[[ta.TextIO], ta.Any]
|
45
47
|
|
46
48
|
|
49
|
+
def _load_xml(f: ta.TextIO) -> dict[str, ta.Any]:
|
50
|
+
tree = xml.parse_tree(f.read())
|
51
|
+
sel = xml.build_simple_element(check.not_none(tree.getroot()))
|
52
|
+
return sel.se_dict()
|
53
|
+
|
54
|
+
|
47
55
|
class Formats(enum.Enum):
|
48
56
|
JSON = Format(['json'], json.load)
|
49
57
|
|
@@ -59,7 +67,7 @@ class Formats(enum.Enum):
|
|
59
67
|
|
60
68
|
PY = Format(['py', 'python', 'repr'], lambda f: ast.literal_eval(f.read()))
|
61
69
|
|
62
|
-
XML = Format(['xml'],
|
70
|
+
XML = Format(['xml'], _load_xml)
|
63
71
|
|
64
72
|
CSV = Format(['csv'], lambda f: list(csv.DictReader(f)))
|
65
73
|
TSV = Format(['tsv'], lambda f: list(csv.DictReader(f, delimiter='\t')))
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: omdev
|
3
|
-
Version: 0.0.0.
|
3
|
+
Version: 0.0.0.dev324
|
4
4
|
Summary: omdev
|
5
5
|
Author: wrmsr
|
6
6
|
License: BSD-3-Clause
|
@@ -12,7 +12,7 @@ Classifier: Operating System :: OS Independent
|
|
12
12
|
Classifier: Operating System :: POSIX
|
13
13
|
Requires-Python: >=3.12
|
14
14
|
License-File: LICENSE
|
15
|
-
Requires-Dist: omlish==0.0.0.
|
15
|
+
Requires-Dist: omlish==0.0.0.dev324
|
16
16
|
Provides-Extra: all
|
17
17
|
Requires-Dist: black~=25.1; extra == "all"
|
18
18
|
Requires-Dist: pycparser~=2.22; extra == "all"
|
@@ -21,7 +21,7 @@ Requires-Dist: docutils~=0.21; extra == "all"
|
|
21
21
|
Requires-Dist: markdown-it-py~=3.0; extra == "all"
|
22
22
|
Requires-Dist: mdit-py-plugins~=0.4; extra == "all"
|
23
23
|
Requires-Dist: pygments~=2.19; extra == "all"
|
24
|
-
Requires-Dist: mypy~=1.
|
24
|
+
Requires-Dist: mypy~=1.16; extra == "all"
|
25
25
|
Requires-Dist: gprof2dot~=2025.4; extra == "all"
|
26
26
|
Requires-Dist: prompt-toolkit~=3.0; extra == "all"
|
27
27
|
Requires-Dist: segno~=1.6; extra == "all"
|
@@ -36,7 +36,7 @@ Requires-Dist: markdown-it-py~=3.0; extra == "doc"
|
|
36
36
|
Requires-Dist: mdit-py-plugins~=0.4; extra == "doc"
|
37
37
|
Requires-Dist: pygments~=2.19; extra == "doc"
|
38
38
|
Provides-Extra: mypy
|
39
|
-
Requires-Dist: mypy~=1.
|
39
|
+
Requires-Dist: mypy~=1.16; extra == "mypy"
|
40
40
|
Provides-Extra: prof
|
41
41
|
Requires-Dist: gprof2dot~=2025.4; extra == "prof"
|
42
42
|
Provides-Extra: ptk
|
@@ -1,5 +1,5 @@
|
|
1
1
|
omdev/.manifests.json,sha256=7rHwJQCTz0jmkxij_rlIAw0D1A38Rb3QqcmJNiRIhOM,11257
|
2
|
-
omdev/__about__.py,sha256=
|
2
|
+
omdev/__about__.py,sha256=2_6pQyjxqAspvwBSJUWQgdBBcGaDO3zX8yETLaspUQE,1202
|
3
3
|
omdev/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
4
4
|
omdev/cmake.py,sha256=9rfSvFHPmKDj9ngvfDB2vK8O-xO_ZwUm7hMKLWA-yOw,4578
|
5
5
|
omdev/imgur.py,sha256=4XolajBnAJ1U2zvT6Y0fiUyBi_a8G9arXffvPxf3w-M,3103
|
@@ -27,7 +27,7 @@ omdev/cache/compute/storage.py,sha256=woCUqHg8ZrwLEejRG3zu1L5ZXxGNNXveh3E8FnlEkj
|
|
27
27
|
omdev/cache/compute/types.py,sha256=dW6S1g_-MklWf8JDPXFMamuOZinjKFOlonfMyWg4L3o,2645
|
28
28
|
omdev/cache/data/__init__.py,sha256=SQXtugLceRif463rcoklpQ33pxYLgEIm0xiI6NvOI6M,301
|
29
29
|
omdev/cache/data/actions.py,sha256=Mv7eXeZuohCjQLpmLyvqvGjjBacXIvTYzIRMVpEh-zM,1037
|
30
|
-
omdev/cache/data/cache.py,sha256=
|
30
|
+
omdev/cache/data/cache.py,sha256=oveyGl6gfTmQ4fKVO-NbB5Zx4rmEcti3BdZIvv5C6CU,7632
|
31
31
|
omdev/cache/data/consts.py,sha256=d6W_aeMqgah6PmPYi9RA8Be54oQ4BcNCy8kDQ7FlB_Q,26
|
32
32
|
omdev/cache/data/defaults.py,sha256=NL_mT7kaSLm2Mk9VO5wdSu-DIcHTR1KgcihJqdSd4TY,312
|
33
33
|
omdev/cache/data/manifests.py,sha256=4BparztsMZo9DDVVPhv6iv5g4kK7QAi8Vqtj3PbKkco,989
|
@@ -168,7 +168,8 @@ omdev/manifests/build.py,sha256=1Ah6NhNylAT-bIfDlKDOVlfitxe9UNYPudOwxO0s1aY,1002
|
|
168
168
|
omdev/manifests/dumping.py,sha256=mYXO58oXWQdTIn7A9XTnGv2-3LRPvO_uQmqkwPn9cMw,3470
|
169
169
|
omdev/manifests/main.py,sha256=7zRlyE0BDPqITEbChlTBRGulAvG1nUZPHXrerNExriE,2126
|
170
170
|
omdev/mypy/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
171
|
-
omdev/mypy/debug.py,sha256=
|
171
|
+
omdev/mypy/debug.py,sha256=VskRcr9trNhyPG2ErZZ7IX_v1DLKTLBOjp34o-fEWaM,3294
|
172
|
+
omdev/mypy/report.py,sha256=ZpBWibI5PBK28DgGhx5tLHvuL-qdcmG1MT4HSWdFsnc,1515
|
172
173
|
omdev/oci/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
173
174
|
omdev/oci/building.py,sha256=g1TY-a2eHgEamYv0mt1L6rOevwOgdp_cW1xdVdjDzTw,5695
|
174
175
|
omdev/oci/compression.py,sha256=5hs7u0hImsm22GcQBHGYnP6g9dr-lBZ3E_PzdNVD4WY,134
|
@@ -188,7 +189,7 @@ omdev/packaging/marshal.py,sha256=YMXXkoWkjYoOAyD6RHsmaHGwlIsDQjnMtfa6e9-l4_A,23
|
|
188
189
|
omdev/packaging/names.py,sha256=-a7AykFPVR1i6EYJepbe3ABRrZQ_tPPmK5olzbn9HLI,2528
|
189
190
|
omdev/packaging/requires.py,sha256=PGbH1m17lkFEBvSp3znF-o9dmgFrRCM_PHBl0ARa6lw,15679
|
190
191
|
omdev/packaging/revisions.py,sha256=3u-6vY0mq01tgRENcncozsMLXSgtaQWXuQp0kRkEHvg,4986
|
191
|
-
omdev/packaging/specifiers.py,sha256=
|
192
|
+
omdev/packaging/specifiers.py,sha256=S4WZwSFaXz5LB8BiaXcowo1OFXEuY0YsXVxgpLfsl3Y,17431
|
192
193
|
omdev/packaging/versions.py,sha256=K4eUOUvLmYcR4aeUywekeWTBqAvZchrIxLf7dl07MS4,12261
|
193
194
|
omdev/packaging/wheelfile.py,sha256=yfupGcGkbFlmzGzKU64k_vmOKpaKnUlDWxeGn2KdekU,10005
|
194
195
|
omdev/precheck/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
@@ -233,7 +234,7 @@ omdev/py/docstrings/rest.py,sha256=c2xPYg_W01W9eYY_KLKX69E4qu4jpkgUshi5K5EyVv8,5
|
|
233
234
|
omdev/py/scripts/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
234
235
|
omdev/py/scripts/bumpversion.py,sha256=2NnfRsJiZNTg-LubIwXCm2vklG7-kIR8_xFUEZNxtiY,1119
|
235
236
|
omdev/py/scripts/execstat.py,sha256=eyk_TCeJt-xtMGqaW3X7pnEBe7JZbXrTYsODn_m6lfM,3869
|
236
|
-
omdev/py/scripts/importtrace.py,sha256=
|
237
|
+
omdev/py/scripts/importtrace.py,sha256=ry2PwV4h8KvFUHm4pIKN76TAwxC5lFT1A3CzccXlj2o,14019
|
237
238
|
omdev/py/tools/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
238
239
|
omdev/py/tools/importscan.py,sha256=4dCH0coX0OqNwesteKaTE8GxuSfLhgXYQlzNUXLiSNY,4640
|
239
240
|
omdev/py/tools/mkrelimp.py,sha256=L6TksQixUc_DQGXKFMOKnYJ-JixeP3ldgkDqHeEs2Ww,4044
|
@@ -250,9 +251,9 @@ omdev/pyproject/resources/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJW
|
|
250
251
|
omdev/pyproject/resources/docker-dev.sh,sha256=DHkz5D18jok_oDolfg2mqrvGRWFoCe9GQo04dR1czcc,838
|
251
252
|
omdev/pyproject/resources/python.sh,sha256=rFaN4SiJ9hdLDXXsDTwugI6zsw6EPkgYMmtacZeTbvw,749
|
252
253
|
omdev/scripts/__init__.py,sha256=MKCvUAEQwsIvwLixwtPlpBqmkMXLCnjjXyAXvVpDwVk,91
|
253
|
-
omdev/scripts/ci.py,sha256=
|
254
|
-
omdev/scripts/interp.py,sha256=
|
255
|
-
omdev/scripts/pyproject.py,sha256=
|
254
|
+
omdev/scripts/ci.py,sha256=UMyGSv7_16YaG-rrrqnMU2bLJg-Vp74WriB_vmtfW6U,357069
|
255
|
+
omdev/scripts/interp.py,sha256=eI43dKT99L0LniXC6PDYou2Y5fOU-lrVyElVvPYu92s,155600
|
256
|
+
omdev/scripts/pyproject.py,sha256=7vcQBcXd64vnAiVdC9wQ-4z1jGf-un7xyKrt-K_tVwA,265081
|
256
257
|
omdev/scripts/slowcat.py,sha256=lssv4yrgJHiWfOiHkUut2p8E8Tq32zB-ujXESQxFFHY,2728
|
257
258
|
omdev/scripts/tmpexec.py,sha256=WTYcf56Tj2qjYV14AWmV8SfT0u6Y8eIU6cKgQRvEK3c,1442
|
258
259
|
omdev/tokens/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
@@ -286,7 +287,7 @@ omdev/tools/git/messages.py,sha256=NWztIK0nAKJIOVzuVQcR_5LHZUgqyVkrOlpl7dFLMdU,2
|
|
286
287
|
omdev/tools/json/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
287
288
|
omdev/tools/json/__main__.py,sha256=wqpkN_NsQyNwKW4qjVj8ADJ4_C98KhrFBtE-Z1UamfU,168
|
288
289
|
omdev/tools/json/cli.py,sha256=WQ8VQ9EkGD6IeIuUci8hLPwfx6y2B8ZzFlTTizwwKXU,9598
|
289
|
-
omdev/tools/json/formats.py,sha256=
|
290
|
+
omdev/tools/json/formats.py,sha256=0IXHUIkcbKnTVP0a53wYWsBMpfVtGTrHN04zRAs2JZo,2049
|
290
291
|
omdev/tools/json/io.py,sha256=sfj2hJS9Hy3aUR8a_lLzOrYcmL9fSKyvOHiofdUASsI,1427
|
291
292
|
omdev/tools/json/parsing.py,sha256=csoTuG2C2AJB7PgG4TKt2XqdiBAQXtpXRWBxoMkk14g,2103
|
292
293
|
omdev/tools/json/processing.py,sha256=iFm5VqaxJ97WHaun2ed7NEjMxhFeJqf28bLNfoDJft0,1209
|
@@ -294,9 +295,9 @@ omdev/tools/json/rendering.py,sha256=3HhdlKSetS6iK1tjF2aILzsl8Mb3D8wW92vYwGpRdVA
|
|
294
295
|
omdev/tools/pawk/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
295
296
|
omdev/tools/pawk/__main__.py,sha256=VCqeRVnqT1RPEoIrqHFSu4PXVMg4YEgF4qCQm90-eRI,66
|
296
297
|
omdev/tools/pawk/pawk.py,sha256=zsEkfQX0jF5bn712uqPAyBSdJt2dno1LH2oeSMNfXQI,11424
|
297
|
-
omdev-0.0.0.
|
298
|
-
omdev-0.0.0.
|
299
|
-
omdev-0.0.0.
|
300
|
-
omdev-0.0.0.
|
301
|
-
omdev-0.0.0.
|
302
|
-
omdev-0.0.0.
|
298
|
+
omdev-0.0.0.dev324.dist-info/licenses/LICENSE,sha256=B_hVtavaA8zCYDW99DYdcpDLKz1n3BBRjZrcbv8uG8c,1451
|
299
|
+
omdev-0.0.0.dev324.dist-info/METADATA,sha256=in-kTKRjJPv5TbNAvuzjie-QDRSqE7zfOG-7hHk4-Fc,1674
|
300
|
+
omdev-0.0.0.dev324.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
301
|
+
omdev-0.0.0.dev324.dist-info/entry_points.txt,sha256=dHLXFmq5D9B8qUyhRtFqTGWGxlbx3t5ejedjrnXNYLU,33
|
302
|
+
omdev-0.0.0.dev324.dist-info/top_level.txt,sha256=1nr7j30fEWgLYHW3lGR9pkdHkb7knv1U1ES1XRNVQ6k,6
|
303
|
+
omdev-0.0.0.dev324.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|