omdev 0.0.0.dev323__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/report.py +20 -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.dev323.dist-info → omdev-0.0.0.dev324.dist-info}/METADATA +4 -4
- {omdev-0.0.0.dev323.dist-info → omdev-0.0.0.dev324.dist-info}/RECORD +15 -15
- {omdev-0.0.0.dev323.dist-info → omdev-0.0.0.dev324.dist-info}/WHEEL +0 -0
- {omdev-0.0.0.dev323.dist-info → omdev-0.0.0.dev324.dist-info}/entry_points.txt +0 -0
- {omdev-0.0.0.dev323.dist-info → omdev-0.0.0.dev324.dist-info}/licenses/LICENSE +0 -0
- {omdev-0.0.0.dev323.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/report.py
CHANGED
@@ -1,4 +1,9 @@
|
|
1
|
+
"""
|
2
|
+
TODO:
|
3
|
+
- alt mode: --output=json, subprocess / tee
|
4
|
+
"""
|
1
5
|
import collections
|
6
|
+
import dataclasses as dc
|
2
7
|
import typing as ta
|
3
8
|
|
4
9
|
from .debug import install_debug_path_finder
|
@@ -13,6 +18,20 @@ if ta.TYPE_CHECKING:
|
|
13
18
|
##
|
14
19
|
|
15
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
|
+
|
16
35
|
def _report_build_result(
|
17
36
|
result: 'mypy.build.BuildResult',
|
18
37
|
) -> None:
|
@@ -32,6 +51,7 @@ def _report_build_result(
|
|
32
51
|
max_code_len = max(map(len, count_by_code))
|
33
52
|
for code, count in sorted(count_by_code.items(), key=lambda kv: -kv[1]):
|
34
53
|
print(f'{code.rjust(max_code_len)} : {count}')
|
54
|
+
print()
|
35
55
|
|
36
56
|
|
37
57
|
##
|
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
|
@@ -169,7 +169,7 @@ omdev/manifests/dumping.py,sha256=mYXO58oXWQdTIn7A9XTnGv2-3LRPvO_uQmqkwPn9cMw,34
|
|
169
169
|
omdev/manifests/main.py,sha256=7zRlyE0BDPqITEbChlTBRGulAvG1nUZPHXrerNExriE,2126
|
170
170
|
omdev/mypy/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
171
171
|
omdev/mypy/debug.py,sha256=VskRcr9trNhyPG2ErZZ7IX_v1DLKTLBOjp34o-fEWaM,3294
|
172
|
-
omdev/mypy/report.py,sha256=
|
172
|
+
omdev/mypy/report.py,sha256=ZpBWibI5PBK28DgGhx5tLHvuL-qdcmG1MT4HSWdFsnc,1515
|
173
173
|
omdev/oci/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
174
174
|
omdev/oci/building.py,sha256=g1TY-a2eHgEamYv0mt1L6rOevwOgdp_cW1xdVdjDzTw,5695
|
175
175
|
omdev/oci/compression.py,sha256=5hs7u0hImsm22GcQBHGYnP6g9dr-lBZ3E_PzdNVD4WY,134
|
@@ -189,7 +189,7 @@ omdev/packaging/marshal.py,sha256=YMXXkoWkjYoOAyD6RHsmaHGwlIsDQjnMtfa6e9-l4_A,23
|
|
189
189
|
omdev/packaging/names.py,sha256=-a7AykFPVR1i6EYJepbe3ABRrZQ_tPPmK5olzbn9HLI,2528
|
190
190
|
omdev/packaging/requires.py,sha256=PGbH1m17lkFEBvSp3znF-o9dmgFrRCM_PHBl0ARa6lw,15679
|
191
191
|
omdev/packaging/revisions.py,sha256=3u-6vY0mq01tgRENcncozsMLXSgtaQWXuQp0kRkEHvg,4986
|
192
|
-
omdev/packaging/specifiers.py,sha256=
|
192
|
+
omdev/packaging/specifiers.py,sha256=S4WZwSFaXz5LB8BiaXcowo1OFXEuY0YsXVxgpLfsl3Y,17431
|
193
193
|
omdev/packaging/versions.py,sha256=K4eUOUvLmYcR4aeUywekeWTBqAvZchrIxLf7dl07MS4,12261
|
194
194
|
omdev/packaging/wheelfile.py,sha256=yfupGcGkbFlmzGzKU64k_vmOKpaKnUlDWxeGn2KdekU,10005
|
195
195
|
omdev/precheck/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
@@ -234,7 +234,7 @@ omdev/py/docstrings/rest.py,sha256=c2xPYg_W01W9eYY_KLKX69E4qu4jpkgUshi5K5EyVv8,5
|
|
234
234
|
omdev/py/scripts/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
235
235
|
omdev/py/scripts/bumpversion.py,sha256=2NnfRsJiZNTg-LubIwXCm2vklG7-kIR8_xFUEZNxtiY,1119
|
236
236
|
omdev/py/scripts/execstat.py,sha256=eyk_TCeJt-xtMGqaW3X7pnEBe7JZbXrTYsODn_m6lfM,3869
|
237
|
-
omdev/py/scripts/importtrace.py,sha256=
|
237
|
+
omdev/py/scripts/importtrace.py,sha256=ry2PwV4h8KvFUHm4pIKN76TAwxC5lFT1A3CzccXlj2o,14019
|
238
238
|
omdev/py/tools/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
239
239
|
omdev/py/tools/importscan.py,sha256=4dCH0coX0OqNwesteKaTE8GxuSfLhgXYQlzNUXLiSNY,4640
|
240
240
|
omdev/py/tools/mkrelimp.py,sha256=L6TksQixUc_DQGXKFMOKnYJ-JixeP3ldgkDqHeEs2Ww,4044
|
@@ -251,9 +251,9 @@ omdev/pyproject/resources/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJW
|
|
251
251
|
omdev/pyproject/resources/docker-dev.sh,sha256=DHkz5D18jok_oDolfg2mqrvGRWFoCe9GQo04dR1czcc,838
|
252
252
|
omdev/pyproject/resources/python.sh,sha256=rFaN4SiJ9hdLDXXsDTwugI6zsw6EPkgYMmtacZeTbvw,749
|
253
253
|
omdev/scripts/__init__.py,sha256=MKCvUAEQwsIvwLixwtPlpBqmkMXLCnjjXyAXvVpDwVk,91
|
254
|
-
omdev/scripts/ci.py,sha256=
|
255
|
-
omdev/scripts/interp.py,sha256=
|
256
|
-
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
|
257
257
|
omdev/scripts/slowcat.py,sha256=lssv4yrgJHiWfOiHkUut2p8E8Tq32zB-ujXESQxFFHY,2728
|
258
258
|
omdev/scripts/tmpexec.py,sha256=WTYcf56Tj2qjYV14AWmV8SfT0u6Y8eIU6cKgQRvEK3c,1442
|
259
259
|
omdev/tokens/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
@@ -287,7 +287,7 @@ omdev/tools/git/messages.py,sha256=NWztIK0nAKJIOVzuVQcR_5LHZUgqyVkrOlpl7dFLMdU,2
|
|
287
287
|
omdev/tools/json/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
288
288
|
omdev/tools/json/__main__.py,sha256=wqpkN_NsQyNwKW4qjVj8ADJ4_C98KhrFBtE-Z1UamfU,168
|
289
289
|
omdev/tools/json/cli.py,sha256=WQ8VQ9EkGD6IeIuUci8hLPwfx6y2B8ZzFlTTizwwKXU,9598
|
290
|
-
omdev/tools/json/formats.py,sha256=
|
290
|
+
omdev/tools/json/formats.py,sha256=0IXHUIkcbKnTVP0a53wYWsBMpfVtGTrHN04zRAs2JZo,2049
|
291
291
|
omdev/tools/json/io.py,sha256=sfj2hJS9Hy3aUR8a_lLzOrYcmL9fSKyvOHiofdUASsI,1427
|
292
292
|
omdev/tools/json/parsing.py,sha256=csoTuG2C2AJB7PgG4TKt2XqdiBAQXtpXRWBxoMkk14g,2103
|
293
293
|
omdev/tools/json/processing.py,sha256=iFm5VqaxJ97WHaun2ed7NEjMxhFeJqf28bLNfoDJft0,1209
|
@@ -295,9 +295,9 @@ omdev/tools/json/rendering.py,sha256=3HhdlKSetS6iK1tjF2aILzsl8Mb3D8wW92vYwGpRdVA
|
|
295
295
|
omdev/tools/pawk/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
296
296
|
omdev/tools/pawk/__main__.py,sha256=VCqeRVnqT1RPEoIrqHFSu4PXVMg4YEgF4qCQm90-eRI,66
|
297
297
|
omdev/tools/pawk/pawk.py,sha256=zsEkfQX0jF5bn712uqPAyBSdJt2dno1LH2oeSMNfXQI,11424
|
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.
|
303
|
-
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
|