omdev 0.0.0.dev407__py3-none-any.whl → 0.0.0.dev408__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/amalg/__main__.py CHANGED
@@ -6,6 +6,6 @@ _CLI_MODULE = CliModule('amalg', __name__)
6
6
 
7
7
 
8
8
  if __name__ == '__main__':
9
- from .main import _main # noqa
9
+ from .cli.main import _main # noqa
10
10
 
11
11
  _main()
File without changes
@@ -34,8 +34,8 @@ import typing as ta
34
34
  from omlish import check
35
35
  from omlish.logs import all as logs
36
36
 
37
- from .gen import SCAN_COMMENT
38
- from .gen import AmalgGenerator
37
+ from ..gen.gen import SCAN_COMMENT
38
+ from ..gen.gen import AmalgGenerator
39
39
 
40
40
 
41
41
  log = logging.getLogger(__name__)
File without changes
@@ -8,8 +8,8 @@ from omlish import lang
8
8
  from omlish.algorithm import all as alg
9
9
  from omlish.lite.runtime import LITE_REQUIRED_PYTHON_VERSION
10
10
 
11
- from ..git.magic import GIT_DIFF_OMIT_MAGIC
12
- from ..tokens import all as tks
11
+ from ...git.magic import GIT_DIFF_OMIT_MAGIC
12
+ from ...tokens import all as tks
13
13
  from .srcfiles import SrcFile
14
14
  from .srcfiles import make_src_file
15
15
  from .strip import strip_main_lines
@@ -4,7 +4,7 @@ import typing as ta
4
4
 
5
5
  from omlish import check
6
6
 
7
- from ..tokens import all as tks
7
+ from ...tokens import all as tks
8
8
 
9
9
 
10
10
  ##
@@ -2,7 +2,7 @@ import ast
2
2
 
3
3
  from omlish import check
4
4
 
5
- from ..tokens import all as tks
5
+ from ...tokens import all as tks
6
6
 
7
7
 
8
8
  ##
@@ -4,7 +4,7 @@ import itertools
4
4
  import os.path
5
5
  import typing as ta
6
6
 
7
- from ..tokens import all as tks
7
+ from ...tokens import all as tks
8
8
 
9
9
 
10
10
  ##
@@ -4,7 +4,7 @@ import typing as ta
4
4
  from omlish import collections as col
5
5
  from omlish import lang
6
6
 
7
- from ..tokens import all as tks
7
+ from ...tokens import all as tks
8
8
  from .imports import Import
9
9
  from .imports import make_import
10
10
  from .manifests import comment_out_manifest_comment
@@ -1,8 +1,8 @@
1
1
  import re
2
2
  import typing as ta
3
3
 
4
- from .. import magic
5
- from ..tokens import all as tks
4
+ from ... import magic
5
+ from ...tokens import all as tks
6
6
 
7
7
 
8
8
  ##
@@ -1,6 +1,6 @@
1
1
  import typing as ta
2
2
 
3
- from ..tokens import all as tks
3
+ from ...tokens import all as tks
4
4
 
5
5
 
6
6
  Tokens: ta.TypeAlias = tks.Tokens
@@ -2,7 +2,7 @@ import dataclasses as dc
2
2
 
3
3
  from omlish import check
4
4
 
5
- from ..tokens import all as tks
5
+ from ...tokens import all as tks
6
6
 
7
7
 
8
8
  ##
omdev/amalg/sources.py ADDED
@@ -0,0 +1,51 @@
1
+ # ruff: noqa: UP045
2
+ # @omlish-lite
3
+ import typing as ta
4
+
5
+ from omlish.lite.cached import cached_nullary
6
+
7
+
8
+ ##
9
+
10
+
11
+ class AmalgSources:
12
+ def __init__(
13
+ self,
14
+ *,
15
+ name: ta.Optional[str] = None,
16
+ package: ta.Optional[str] = None,
17
+ ) -> None:
18
+ super().__init__()
19
+
20
+ self._name = name or __name__
21
+ self._package = package or __package__
22
+
23
+ @cached_nullary
24
+ def get_mod(self) -> ta.Any:
25
+ import sys # noqa
26
+ return sys.modules[self._name]
27
+
28
+ @cached_nullary
29
+ def get_src(self) -> str:
30
+ import inspect # noqa
31
+ return inspect.getsource(self.get_mod())
32
+
33
+ @classmethod
34
+ def is_src_amalg(cls, src: str) -> bool:
35
+ for l in src.splitlines(): # noqa
36
+ if l.startswith('# @omlish-amalg-output '):
37
+ return True
38
+ return False
39
+
40
+ @cached_nullary
41
+ def is_amalg(self) -> bool:
42
+ return self.is_src_amalg(self.get_src())
43
+
44
+ # TODO: read `@omlish-amalg ../scripts/manage.py`, given self._name/self._package, convert to resources path to read
45
+ # @cached_nullary
46
+ # def get_amalg_src(self) -> str:
47
+ # if _is_self_amalg():
48
+ # return _get_self_src()
49
+ #
50
+ # import importlib.resources # noqa
51
+ # return importlib.resources.files(__package__.split('.')[0] + '.scripts').joinpath('manage.py').read_text()
omdev/intellij/ides.py CHANGED
@@ -24,6 +24,7 @@ class Ide(enum.Enum):
24
24
 
25
25
 
26
26
  _INFER_FILE_NAME_SETS_BY_IDE: ta.Mapping[Ide, ta.AbstractSet[str]] = {
27
+
27
28
  Ide.PYCHARM: frozenset([
28
29
  'setup.py',
29
30
  'setup.cfg',
@@ -36,6 +37,7 @@ _INFER_FILE_NAME_SETS_BY_IDE: ta.Mapping[Ide, ta.AbstractSet[str]] = {
36
37
  'asgi.py',
37
38
  'manage.py',
38
39
  ]),
40
+
39
41
  Ide.IDEA: frozenset([
40
42
  'pom.xml',
41
43
  'mvnw',
@@ -45,21 +47,27 @@ _INFER_FILE_NAME_SETS_BY_IDE: ta.Mapping[Ide, ta.AbstractSet[str]] = {
45
47
  'module-info.java',
46
48
  '.java-version',
47
49
  ]),
50
+
48
51
  Ide.CLION: frozenset([
49
52
  'CMakeLists.txt',
53
+ 'Cargo.toml',
54
+ 'config.h.in',
50
55
  'configure.ac',
51
56
  'configure.in',
52
- 'config.h.in',
57
+ 'rust-toolchain.toml',
53
58
  'vcpkg.json',
54
59
  ]),
60
+
55
61
  Ide.WEBSTORM: frozenset([
56
62
  'package.json',
57
63
  'package-lock.json',
58
64
  ]),
65
+
59
66
  Ide.GOLAND: frozenset([
60
67
  'go.mod',
61
68
  'go.sum',
62
69
  ]),
70
+
63
71
  }
64
72
 
65
73
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: omdev
3
- Version: 0.0.0.dev407
3
+ Version: 0.0.0.dev408
4
4
  Summary: omdev
5
5
  Author: wrmsr
6
6
  License-Expression: BSD-3-Clause
@@ -14,7 +14,7 @@ Classifier: Programming Language :: Python :: 3.13
14
14
  Requires-Python: >=3.13
15
15
  Description-Content-Type: text/markdown
16
16
  License-File: LICENSE
17
- Requires-Dist: omlish==0.0.0.dev407
17
+ Requires-Dist: omlish==0.0.0.dev408
18
18
  Provides-Extra: all
19
19
  Requires-Dist: black~=25.1; extra == "all"
20
20
  Requires-Dist: pycparser~=2.22; extra == "all"
@@ -6,16 +6,19 @@ omdev/imgur.py,sha256=oG4jZH2EAk1my0JzoPNes-4LCtF2_aU08vmKbGzmuxo,3129
6
6
  omdev/pip.py,sha256=PqzAWDO_CbiZvXzJAZcCkFqWynUDls1jIgBWlrswQyA,2012
7
7
  omdev/tagstrings.py,sha256=cBmAc9-TtOBupvGQ9G4T1jjjtzijx4ihQCBu6FezzV0,5490
8
8
  omdev/amalg/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
9
- omdev/amalg/__main__.py,sha256=1sZH8SLAueWxMxK9ngvndUW3L_rw7f-s_jK3ZP1yAH8,170
10
- omdev/amalg/gen.py,sha256=LFkob-UhqnOnnwuUeMkPuGUjQRMhw-jGYVePIPMRQZ4,6192
11
- omdev/amalg/imports.py,sha256=me-I_FOD5874NVebZGt_wlc9kxEpuZV-XGuifbNkgNk,2073
12
- omdev/amalg/main.py,sha256=CNkpAMVXlBoaCmgs68rKSUlL8Xh4AuNdZjSFZPeao_4,4313
13
- omdev/amalg/manifests.py,sha256=CGwh-DiOU4ZKv0p_uUvdpBl2H72g468kvBHtguOHGMA,902
14
- omdev/amalg/resources.py,sha256=aIqVd1tbGCv4vIt6gbzqnB0L3PsQsAeqVaZJ_J7QSz8,2692
15
- omdev/amalg/srcfiles.py,sha256=TKSYSfv78Wb8bcsQS3V76dV_H_MICPwzv06Ar09ew9U,3079
16
- omdev/amalg/strip.py,sha256=dWQQ5WbtcebLi_PGjPzVYey2mJOnrRES8rkoUS8L52w,1444
17
- omdev/amalg/types.py,sha256=BXXJI0VctKTsZv_wXiyMMq3-xShxZ1ak0wxXUK8n9_g,89
18
- omdev/amalg/typing.py,sha256=GZX0O7J6lgxOX0mZV3T9M8IkVJpyohKj2vHF4UaUpHk,2300
9
+ omdev/amalg/__main__.py,sha256=nGxQ4PLd2u7zf6dH4TDWZg6yrVe3FxIVn9sGT5w8O-o,174
10
+ omdev/amalg/sources.py,sha256=wxPxPFnxRhPSRhQoWn9bpTYopXW-tanJQLvVQkf2K_A,1379
11
+ omdev/amalg/cli/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
12
+ omdev/amalg/cli/main.py,sha256=U1PQ8JfdzQ1l4m-TS9YECTcTLltuQSxB6oIomVemg6w,4323
13
+ omdev/amalg/gen/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
14
+ omdev/amalg/gen/gen.py,sha256=95iQT0At_NsMf4IEg702ZOmmyEdhCZJGcSCFypm1BTk,6194
15
+ omdev/amalg/gen/imports.py,sha256=Bv3xNgej1Nsuv5R_y-9wd9b8cPtWljZsxjMh9bolJWc,2074
16
+ omdev/amalg/gen/manifests.py,sha256=SN4wvPZ8iNTcQIdpSZ6d64cL32pSlT_ak_GwctTPn_Y,903
17
+ omdev/amalg/gen/resources.py,sha256=wxqrudGbHzru2KWu-a_4LDmOf7tRRCd8NM0BXx_ZU9I,2693
18
+ omdev/amalg/gen/srcfiles.py,sha256=UUAW2XtzaMv6-ACr364gyAxa-W3bAawRIwTiXE3-ndQ,3080
19
+ omdev/amalg/gen/strip.py,sha256=GW76ZWJNdwH8dxLDG7gVHFi_CnS958fWvSfroD0HCaw,1446
20
+ omdev/amalg/gen/types.py,sha256=DvxUmEenqCeXycRHi4brxAkSjztq800qT1XlT94bXAY,90
21
+ omdev/amalg/gen/typing.py,sha256=VWw4_iZXqM_29ElSVUlLTO6-KLUCQPdieQDvG_q1YsI,2301
19
22
  omdev/cache/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
20
23
  omdev/cache/compute/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
21
24
  omdev/cache/compute/cache.py,sha256=7cJmxiHwbnitMZaLZEZVjEq0v1JJN7HKBK-BH_EtVY4,3628
@@ -146,7 +149,7 @@ omdev/home/secrets.py,sha256=Bq9Pak4lzsogw5GvOeQ4zs3Yatmn7glGH0q-b0Sf6h8,2003
146
149
  omdev/home/shadow.py,sha256=6mGDJV70IExa-nzd7mOUW4R3OZIXO0fBwmOUU9T9f4M,295
147
150
  omdev/intellij/__init__.py,sha256=OkihYdld_LTk_gTcyzOWc9Nze_drjsIYMYpbA5DG6m4,132
148
151
  omdev/intellij/cli.py,sha256=Sds9Xj_OHgbm76j70frhwrZEzlVi-1Rd93g0ypIe6t4,2038
149
- omdev/intellij/ides.py,sha256=uYSbVDPOlhKeImRCPV6HdcrO2JtACBPUpElbecTz7uM,1580
152
+ omdev/intellij/ides.py,sha256=5YSJZ0Sbe6UPExn6atOlZd7j3WK1hptHh4RDxSh6CkI,1639
150
153
  omdev/intellij/open.py,sha256=3HlbJsGkwZ28UBi1P7dVJMRDMLbJyOGQs9QMQqgYVus,2679
151
154
  omdev/interp/__init__.py,sha256=Y3l4WY4JRi2uLG6kgbGp93fuGfkxkKwZDvhsa0Rwgtk,15
152
155
  omdev/interp/__main__.py,sha256=GMCqeGYltgt5dlJzHxY9gqisa8cRkrPfmZYuZnjg4WI,162
@@ -321,9 +324,9 @@ omdev/tools/jsonview/resources/jsonview.js,sha256=faDvXDOXKvEvjOuIlz4D3F2ReQXb_b
321
324
  omdev/tools/pawk/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
322
325
  omdev/tools/pawk/__main__.py,sha256=VCqeRVnqT1RPEoIrqHFSu4PXVMg4YEgF4qCQm90-eRI,66
323
326
  omdev/tools/pawk/pawk.py,sha256=ao5mdrpiSU4AZ8mBozoEaV3UVlmVTnRG9wD9XP70MZE,11429
324
- omdev-0.0.0.dev407.dist-info/licenses/LICENSE,sha256=B_hVtavaA8zCYDW99DYdcpDLKz1n3BBRjZrcbv8uG8c,1451
325
- omdev-0.0.0.dev407.dist-info/METADATA,sha256=5Yy6kmFhhdkAEpbefAKb2p47mMNEQ_Aha8QmLQb66Dk,5094
326
- omdev-0.0.0.dev407.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
327
- omdev-0.0.0.dev407.dist-info/entry_points.txt,sha256=dHLXFmq5D9B8qUyhRtFqTGWGxlbx3t5ejedjrnXNYLU,33
328
- omdev-0.0.0.dev407.dist-info/top_level.txt,sha256=1nr7j30fEWgLYHW3lGR9pkdHkb7knv1U1ES1XRNVQ6k,6
329
- omdev-0.0.0.dev407.dist-info/RECORD,,
327
+ omdev-0.0.0.dev408.dist-info/licenses/LICENSE,sha256=B_hVtavaA8zCYDW99DYdcpDLKz1n3BBRjZrcbv8uG8c,1451
328
+ omdev-0.0.0.dev408.dist-info/METADATA,sha256=CAmjEP6qcyWfIuRRP4sKxgay7CZIxcfUzcdiZfiEQYk,5094
329
+ omdev-0.0.0.dev408.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
330
+ omdev-0.0.0.dev408.dist-info/entry_points.txt,sha256=dHLXFmq5D9B8qUyhRtFqTGWGxlbx3t5ejedjrnXNYLU,33
331
+ omdev-0.0.0.dev408.dist-info/top_level.txt,sha256=1nr7j30fEWgLYHW3lGR9pkdHkb7knv1U1ES1XRNVQ6k,6
332
+ omdev-0.0.0.dev408.dist-info/RECORD,,