omdev 0.0.0.dev209__py3-none-any.whl → 0.0.0.dev210__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/scripts/interp.py CHANGED
@@ -2179,11 +2179,26 @@ class ArgparseCli:
2179
2179
 
2180
2180
  #
2181
2181
 
2182
- async def async_cli_run(self) -> ta.Optional[int]:
2182
+ async def async_cli_run(
2183
+ self,
2184
+ *,
2185
+ force_async: bool = False,
2186
+ ) -> ta.Optional[int]:
2183
2187
  if (fn := self.prepare_cli_run()) is None:
2184
2188
  return 0
2185
2189
 
2186
- return await fn()
2190
+ if force_async:
2191
+ is_async = True
2192
+ else:
2193
+ tfn = fn
2194
+ if isinstance(tfn, ArgparseCmd):
2195
+ tfn = tfn.fn
2196
+ is_async = inspect.iscoroutinefunction(tfn)
2197
+
2198
+ if is_async:
2199
+ return await fn()
2200
+ else:
2201
+ return fn()
2187
2202
 
2188
2203
 
2189
2204
  ########################################
@@ -4545,7 +4560,8 @@ class SystemInterpProvider(InterpProvider):
4545
4560
  async def get_exe_version(self, exe: str) -> ta.Optional[InterpVersion]:
4546
4561
  if not self._options.inspect:
4547
4562
  s = os.path.basename(exe)
4548
- s = s.removeprefix('python')
4563
+ if s.startswith('python'): # noqa
4564
+ s = s[len('python'):]
4549
4565
  if '.' in s:
4550
4566
  try:
4551
4567
  return InterpVersion.parse(s)
@@ -3837,11 +3837,26 @@ class ArgparseCli:
3837
3837
 
3838
3838
  #
3839
3839
 
3840
- async def async_cli_run(self) -> ta.Optional[int]:
3840
+ async def async_cli_run(
3841
+ self,
3842
+ *,
3843
+ force_async: bool = False,
3844
+ ) -> ta.Optional[int]:
3841
3845
  if (fn := self.prepare_cli_run()) is None:
3842
3846
  return 0
3843
3847
 
3844
- return await fn()
3848
+ if force_async:
3849
+ is_async = True
3850
+ else:
3851
+ tfn = fn
3852
+ if isinstance(tfn, ArgparseCmd):
3853
+ tfn = tfn.fn
3854
+ is_async = inspect.iscoroutinefunction(tfn)
3855
+
3856
+ if is_async:
3857
+ return await fn()
3858
+ else:
3859
+ return fn()
3845
3860
 
3846
3861
 
3847
3862
  ########################################
@@ -6884,7 +6899,8 @@ class SystemInterpProvider(InterpProvider):
6884
6899
  async def get_exe_version(self, exe: str) -> ta.Optional[InterpVersion]:
6885
6900
  if not self._options.inspect:
6886
6901
  s = os.path.basename(exe)
6887
- s = s.removeprefix('python')
6902
+ if s.startswith('python'): # noqa
6903
+ s = s[len('python'):]
6888
6904
  if '.' in s:
6889
6905
  try:
6890
6906
  return InterpVersion.parse(s)
omdev/tools/pawk/pawk.py CHANGED
@@ -1,4 +1,3 @@
1
- #!/usr/bin/env python
2
1
  # Copyright (C) 2018 Alec Thomas
3
2
  #
4
3
  # Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: omdev
3
- Version: 0.0.0.dev209
3
+ Version: 0.0.0.dev210
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.dev209
15
+ Requires-Dist: omlish==0.0.0.dev210
16
16
  Provides-Extra: all
17
17
  Requires-Dist: black~=24.10; extra == "all"
18
18
  Requires-Dist: pycparser~=2.22; extra == "all"
@@ -1,4 +1,4 @@
1
- omdev/.manifests.json,sha256=bXzztz3aC_of83Npb51gvXmqTLHQlSxd2c3IcO5kkS4,8820
1
+ omdev/.manifests.json,sha256=bU6NL_9c9hikH-GGCq_JL5C_NWilB3fvv-UQgvJoeZw,8820
2
2
  omdev/__about__.py,sha256=n5x-SO70OgbDQFzQ1d7sZDVMsnkQc4PxQZPFaIQFa0E,1281
3
3
  omdev/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
4
4
  omdev/bracepy.py,sha256=I8EdqtDvxzAi3I8TuMEW-RBfwXfqKbwp06CfOdj3L1o,2743
@@ -7,7 +7,7 @@ omdev/cmake.py,sha256=Diy2ry65806dQP125DAstD3w46z_wszMH7PwC2-6iik,4578
7
7
  omdev/findimports.py,sha256=2t8QP852saEEJFeXySEzhi_nxRSxghlkXz2jVdvy08M,2392
8
8
  omdev/imgur.py,sha256=PNRrA440WP10DGm2bpXhisZdA4ODYCpOj1HqEzNx0Fs,2992
9
9
  omdev/pip.py,sha256=7cZ_IOpekQvgPm_gKnX3Pr8xjqUid50PPScTlZCYVlM,2118
10
- omdev/revisions.py,sha256=7Bgwd7cuKtcXJE4eDXmWP4Qx1aqZqf_LNFkOCuYS9I0,5008
10
+ omdev/revisions.py,sha256=0feRWC0Uttd6K9cCImAHEXoo6-Nuso3tpaHUuhzBlRQ,4985
11
11
  omdev/secrets.py,sha256=bcquaBIDKqX4UIKOzUuKrX7nxVCenj67rRHIMIrd9bk,540
12
12
  omdev/tagstrings.py,sha256=hrinoRmYCFMt4WYCZAYrocVYKQvIApNGKbJaGz8whqs,5334
13
13
  omdev/tokens.py,sha256=zh2TCAfCbcq8ZnoVdQ824jrTiwNy3XJ_oCqlZpLpcCY,1574
@@ -16,7 +16,7 @@ omdev/amalg/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
16
16
  omdev/amalg/__main__.py,sha256=1sZH8SLAueWxMxK9ngvndUW3L_rw7f-s_jK3ZP1yAH8,170
17
17
  omdev/amalg/gen.py,sha256=wp5CmwMUibcaIJrvwE_gQ1kInhWWgpvRntAI0ONKsQg,5995
18
18
  omdev/amalg/imports.py,sha256=KNyuu0zWW63gOSsy4cl1mPs23YVAlICbaF1yEPF147o,2072
19
- omdev/amalg/main.py,sha256=a3QoSRInHhbt1vwQmfB5MXJJnse2Ar9gIgWVxqK93lo,4031
19
+ omdev/amalg/main.py,sha256=CNkpAMVXlBoaCmgs68rKSUlL8Xh4AuNdZjSFZPeao_4,4313
20
20
  omdev/amalg/manifests.py,sha256=sKnNKsS51zFFD8BIzRUVKtX50dY8pXOtYWi4WHZ_NTU,932
21
21
  omdev/amalg/resources.py,sha256=wldsAHeMaoUbL7bicE-Ty9QIm1Q-1VllA1Qd3juRFXo,2730
22
22
  omdev/amalg/srcfiles.py,sha256=LskAq7kfpH_GuDoNOZF-sxEZiqljDN-VMXxfOfwNfks,3109
@@ -44,8 +44,9 @@ omdev/cache/data/manifests.py,sha256=4BparztsMZo9DDVVPhv6iv5g4kK7QAi8Vqtj3PbKkco
44
44
  omdev/cache/data/specs.py,sha256=8o0b7goqvnezB_lD46w4ySp2KMZ8In3nqbtmfUT7v6c,2504
45
45
  omdev/cc/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
46
46
  omdev/cc/__main__.py,sha256=n7gxSRYZ1QZOUxQPCT0_n9Xl26zi2UIvCwyGW_m67nA,166
47
- omdev/cc/cdeps.toml,sha256=MVUDfXOFalT2QCNkG68NKOzVG2LL0Ew8G37f8U6sW80,519
48
- omdev/cc/cli.py,sha256=k8WhcFS2GS5GUR6JkGIG9wN86KOoPN9mGtX01cpuEAA,4498
47
+ omdev/cc/cdeps.py,sha256=xmCeKYoTh7NjMAPwT-ZU-eyAaVMAwrk4VDSqfoSZ0ik,774
48
+ omdev/cc/cdeps.toml,sha256=L0p2Qt0mflsYzqtA8I87zF_tQq9KXGJGQoKm2oywTBg,631
49
+ omdev/cc/cli.py,sha256=MxAlh5HY_G272NHaAtPxOlwTOdfIxcBYxtwxQQdMdcU,3973
49
50
  omdev/cexts/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
50
51
  omdev/cexts/_boilerplate.cc,sha256=sbpXEgdFrkdzZXgaNWFFNN27fL9TZu6VrwvMY4-nnFM,1726
51
52
  omdev/cexts/build.py,sha256=F3z1-CjDlEM-Gzi5IunKUBO52qdH_pMsFylobTdGJnI,2654
@@ -69,6 +70,15 @@ omdev/cexts/_distutils/compilers/__init__.py,sha256=amL_zrFlba0lHIvpqDne9uhqhLem
69
70
  omdev/cexts/_distutils/compilers/ccompiler.py,sha256=cTs88qrvj0hBVXHfemSDE_du_nEA4_qo3Qst5TpQkVI,43606
70
71
  omdev/cexts/_distutils/compilers/options.py,sha256=H7r5IcLvga5Fs3jjXWIT-6ap3JBduXRKgtpDmSGCZxs,3818
71
72
  omdev/cexts/_distutils/compilers/unixccompiler.py,sha256=o1h8QuyupLntv4F21_XjzAZmCiwwxJuTmOirvBSL-Qw,15419
73
+ omdev/ci/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
74
+ omdev/ci/__main__.py,sha256=Jsrv3P7LX2Cg08W7ByZfZ1JQT4lgLDPW1qNAmShFuMk,75
75
+ omdev/ci/cache.py,sha256=nPEEABsYa4O5Ql9cqAsYR3h_Q307nSCFz6zUgGQwC_o,948
76
+ omdev/ci/ci.py,sha256=uTZftlVeneDJbwICLtaLy0JmMF7iQCwmT_GS1HBV24g,6164
77
+ omdev/ci/cli.py,sha256=21v_CzPoQDT04k5RvUnFY9t31cMfDNczveOchr09YTc,4012
78
+ omdev/ci/compose.py,sha256=VaK_NlM5YmKYMjaE_qfdj_eMPq5V-WI08S_s3bRmT2c,4583
79
+ omdev/ci/dockertars.py,sha256=Zi2ezzAR8qTRoE_qW2AOIhHxddcZj_6tUXk01DiKACI,2766
80
+ omdev/ci/requirements.py,sha256=ZoG_gxCTC31zc4yp4RN5zTYpeb7uNr5cCyHN249Qmwk,2097
81
+ omdev/ci/utils.py,sha256=j9CH6HvQG1NpSpb3531k19SvPtXYdTX0rWfMhJTYnSY,463
72
82
  omdev/cli/__init__.py,sha256=V_l6VP1SZMlJbO-8CJwSuO9TThOy2S_oaPepNYgIrbE,37
73
83
  omdev/cli/__main__.py,sha256=mOJpgc07o0r5luQ1DlX4tk2PqZkgmbwPbdzJ3KmtjgQ,138
74
84
  omdev/cli/_pathhack.py,sha256=kxqb2kHap68Lkh8b211rDbcgj06hidBiAKA3f9posyc,2119
@@ -87,7 +97,7 @@ omdev/git/shallow.py,sha256=eCMbkOcjdpd6kNF1v4q5Y-iZO8P-ghLMUVZGbdUkg68,2572
87
97
  omdev/git/status.py,sha256=s_5kzyaSO-ikimdi54A6DrjOQPMeM5SRXLTrb22Alp4,8106
88
98
  omdev/interp/__init__.py,sha256=Y3l4WY4JRi2uLG6kgbGp93fuGfkxkKwZDvhsa0Rwgtk,15
89
99
  omdev/interp/__main__.py,sha256=GMCqeGYltgt5dlJzHxY9gqisa8cRkrPfmZYuZnjg4WI,162
90
- omdev/interp/cli.py,sha256=RMmMPYMbWnsb8mkmUaa2JKLoEvbLn201v41ExgZGfi0,2392
100
+ omdev/interp/cli.py,sha256=xVap7jd5EGS-5lKj2bw6EdUf61eI7oPHRAQkMvYci60,2369
91
101
  omdev/interp/default.py,sha256=FTFQVvA8Lipe8k5eFbf-mLIbrcmfuEXka4ifPyQP8CA,285
92
102
  omdev/interp/inject.py,sha256=fJyYvGqYVmXweKDFN-B_y8pemIYhWS9Y9qM3IApBz0M,1482
93
103
  omdev/interp/inspect.py,sha256=UnRA1w-tm5xrFR0ovlLHo_smDqmzoF7TuZBQbhYF_CA,2966
@@ -99,7 +109,7 @@ omdev/interp/providers/base.py,sha256=aftoEB3FQInKKGDHDSjpnI33cOLBpxPM4Cw_yOuV1f
99
109
  omdev/interp/providers/inject.py,sha256=2RT4imRqoqHWVwxzYKf_VAgp6iEcJD01fjD6tng2rso,846
100
110
  omdev/interp/providers/running.py,sha256=9MCJAcHotI0EmNIxPwt7b3W715Jp2Gfw1qtMhCEGsUQ,781
101
111
  omdev/interp/providers/standalone.py,sha256=jJnncea4PIuaW-KwD2YiWDn8zTmwmsJNUKpF-qC2bwo,7725
102
- omdev/interp/providers/system.py,sha256=SLVAZ09EymHh0KPrDDbt9SySVpsLo6cZdkbD2r79VAY,3941
112
+ omdev/interp/providers/system.py,sha256=2HnvN70fJyolfzRSay_gJbwS2JLuURp1VOKg2oc88ts,3985
103
113
  omdev/interp/pyenv/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
104
114
  omdev/interp/pyenv/inject.py,sha256=JZCSvkLYj5x_2LWScgYVOpmPrwrYQ8YVv7OeHbcH53s,605
105
115
  omdev/interp/pyenv/install.py,sha256=LX5jDzQQR1X0C9OKi4masKWoMU3ms8XCfQPXS2kTZKI,7818
@@ -141,11 +151,11 @@ omdev/ptk/apps/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
141
151
  omdev/ptk/apps/ncdu.py,sha256=dOkEJoc2Wjv1u_Uge7Vpei_LvXldoPP5833Eia355tc,4548
142
152
  omdev/pycharm/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
143
153
  omdev/pycharm/__main__.py,sha256=hUPp11D024eMdT86BxXiRVtF7AGBk5W6Zn8_mEHSksY,163
144
- omdev/pycharm/cli.py,sha256=yeVKvc6yOs-CR8xzFTwFNZXuF5e5UIgd5CPv2KP8h_o,3458
154
+ omdev/pycharm/cli.py,sha256=nUxeJdzdt7_dgrh2vZUW3hVYqjWVb0b8Aezv-ujmReo,3464
145
155
  omdev/pyproject/__init__.py,sha256=Y3l4WY4JRi2uLG6kgbGp93fuGfkxkKwZDvhsa0Rwgtk,15
146
156
  omdev/pyproject/__main__.py,sha256=gn3Rl1aYPYdiTtEqa9ifi0t-e4ZwPY0vhJ4UXvYdJDY,165
147
157
  omdev/pyproject/cexts.py,sha256=x13piOOnNrYbA17qZLDVuR0p1sqhgEwpk4FtImX-klM,4281
148
- omdev/pyproject/cli.py,sha256=g-ysAvgtMVOPjfeRe5iYn52zrLGnnqYskh3ysqny248,8766
158
+ omdev/pyproject/cli.py,sha256=Jp3OTevYndvtid2fr-Q7rWza29GnLexotmf19JJcX-o,8743
149
159
  omdev/pyproject/configs.py,sha256=HEo90bPUAo6CBnBHZFDYohlwiRD-4cxZCYR6oXv-5lQ,2802
150
160
  omdev/pyproject/inject.py,sha256=PgZnfWGoqjHsaHLUEPJaQW_66h1LRuSm8Njl--KDzOw,314
151
161
  omdev/pyproject/pkg.py,sha256=i0xgYWgkg-54gvzdUpjkp7TZAnD-gxgSJ9R_Q4XClKI,14565
@@ -156,11 +166,12 @@ omdev/pyproject/resources/docker-dev.sh,sha256=DHkz5D18jok_oDolfg2mqrvGRWFoCe9GQ
156
166
  omdev/pyproject/resources/python.sh,sha256=jvrwddYw2KNttpuImLbdCdJK0HsUNMrHtTnmLvhxQxg,757
157
167
  omdev/scripts/__init__.py,sha256=MKCvUAEQwsIvwLixwtPlpBqmkMXLCnjjXyAXvVpDwVk,91
158
168
  omdev/scripts/bumpversion.py,sha256=Kn7fo73Hs8uJh3Hi3EIyLOlzLPWAC6dwuD_lZ3cIzuY,1064
169
+ omdev/scripts/ci.py,sha256=Gxbx0FTUY2EK9f0XJ_ASCw6_lOiZIJllFMJoKb1qxvE,56000
159
170
  omdev/scripts/execrss.py,sha256=mR0G0wERBYtQmVIn63lCIIFb5zkCM6X_XOENDFYDBKc,651
160
171
  omdev/scripts/exectime.py,sha256=sFb376GflU6s9gNX-2-we8hgH6w5MuQNS9g6i4SqJIo,610
161
172
  omdev/scripts/importtrace.py,sha256=oa7CtcWJVMNDbyIEiRHej6ICfABfErMeo4_haIqe18Q,14041
162
- omdev/scripts/interp.py,sha256=HUX7XMk76H2VIX5anb_m7R_6jawXHzxPjY26N-gnTR0,140862
163
- omdev/scripts/pyproject.py,sha256=EEwu-5Fl0cCe0X6CaHOmjSt1vANXRFgsbvn487uKJnI,242688
173
+ omdev/scripts/interp.py,sha256=Ao8XtcH3uY1AyvG_Zma7KmtIxHm0EwoA5jJ4VSZ71lM,141260
174
+ omdev/scripts/pyproject.py,sha256=waHFrUxnKtiJ8O7JnvilaLcY5vaB9HlD6xqiWwOwIJQ,243086
164
175
  omdev/scripts/slowcat.py,sha256=lssv4yrgJHiWfOiHkUut2p8E8Tq32zB-ujXESQxFFHY,2728
165
176
  omdev/scripts/tmpexec.py,sha256=WTYcf56Tj2qjYV14AWmV8SfT0u6Y8eIU6cKgQRvEK3c,1442
166
177
  omdev/tools/__init__.py,sha256=iVJAOQ0viGTQOm0DLX4uZLro-9jOioYJGLg9s0kDx1A,78
@@ -186,10 +197,10 @@ omdev/tools/json/processing.py,sha256=iFm5VqaxJ97WHaun2ed7NEjMxhFeJqf28bLNfoDJft
186
197
  omdev/tools/json/rendering.py,sha256=tMcjOW5edfozcMSTxxvF7WVTsbYLoe9bCKFh50qyaGw,2236
187
198
  omdev/tools/pawk/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
188
199
  omdev/tools/pawk/__main__.py,sha256=VCqeRVnqT1RPEoIrqHFSu4PXVMg4YEgF4qCQm90-eRI,66
189
- omdev/tools/pawk/pawk.py,sha256=Eckymn22GfychCQcQi96BFqRo_LmiJ-EPhC8TTUJdB4,11446
190
- omdev-0.0.0.dev209.dist-info/LICENSE,sha256=B_hVtavaA8zCYDW99DYdcpDLKz1n3BBRjZrcbv8uG8c,1451
191
- omdev-0.0.0.dev209.dist-info/METADATA,sha256=syYK3gUb29eFkjdE0EnRmRDh_-FAEIgshO9a3pUtajw,1760
192
- omdev-0.0.0.dev209.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
193
- omdev-0.0.0.dev209.dist-info/entry_points.txt,sha256=dHLXFmq5D9B8qUyhRtFqTGWGxlbx3t5ejedjrnXNYLU,33
194
- omdev-0.0.0.dev209.dist-info/top_level.txt,sha256=1nr7j30fEWgLYHW3lGR9pkdHkb7knv1U1ES1XRNVQ6k,6
195
- omdev-0.0.0.dev209.dist-info/RECORD,,
200
+ omdev/tools/pawk/pawk.py,sha256=zsEkfQX0jF5bn712uqPAyBSdJt2dno1LH2oeSMNfXQI,11424
201
+ omdev-0.0.0.dev210.dist-info/LICENSE,sha256=B_hVtavaA8zCYDW99DYdcpDLKz1n3BBRjZrcbv8uG8c,1451
202
+ omdev-0.0.0.dev210.dist-info/METADATA,sha256=J2l4WavyRSpaAci8p7lcOv2QfOtuOwxoFUDWqIAVAgo,1760
203
+ omdev-0.0.0.dev210.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
204
+ omdev-0.0.0.dev210.dist-info/entry_points.txt,sha256=dHLXFmq5D9B8qUyhRtFqTGWGxlbx3t5ejedjrnXNYLU,33
205
+ omdev-0.0.0.dev210.dist-info/top_level.txt,sha256=1nr7j30fEWgLYHW3lGR9pkdHkb7knv1U1ES1XRNVQ6k,6
206
+ omdev-0.0.0.dev210.dist-info/RECORD,,