omlish 0.0.0.dev208__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.
omlish/__about__.py CHANGED
@@ -1,5 +1,5 @@
1
- __version__ = '0.0.0.dev208'
2
- __revision__ = '0a5b99ece5c5a7d95c3ba0892f22ea9061ddad24'
1
+ __version__ = '0.0.0.dev210'
2
+ __revision__ = '29187c4cc91a051a62ad46cd89206ced7ea76add'
3
3
 
4
4
 
5
5
  #
@@ -77,7 +77,7 @@ class Project(ProjectBase):
77
77
  ],
78
78
 
79
79
  'misc': [
80
- 'wrapt ~= 1.14',
80
+ 'wrapt ~= 1.17',
81
81
  ],
82
82
 
83
83
  'secrets': [
omlish/argparse/cli.py CHANGED
@@ -10,6 +10,7 @@ TODO:
10
10
  import argparse
11
11
  import dataclasses as dc
12
12
  import functools
13
+ import inspect
13
14
  import sys
14
15
  import typing as ta
15
16
 
@@ -280,8 +281,23 @@ class ArgparseCli:
280
281
 
281
282
  #
282
283
 
283
- async def async_cli_run(self) -> ta.Optional[int]:
284
+ async def async_cli_run(
285
+ self,
286
+ *,
287
+ force_async: bool = False,
288
+ ) -> ta.Optional[int]:
284
289
  if (fn := self.prepare_cli_run()) is None:
285
290
  return 0
286
291
 
287
- return await fn()
292
+ if force_async:
293
+ is_async = True
294
+ else:
295
+ tfn = fn
296
+ if isinstance(tfn, ArgparseCmd):
297
+ tfn = tfn.fn
298
+ is_async = inspect.iscoroutinefunction(tfn)
299
+
300
+ if is_async:
301
+ return await fn()
302
+ else:
303
+ return fn()
@@ -1,4 +1,3 @@
1
- #!/usr/bin/env python3
2
1
  import argparse
3
2
  import dataclasses as dc
4
3
  import sys
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: omlish
3
- Version: 0.0.0.dev208
3
+ Version: 0.0.0.dev210
4
4
  Summary: omlish
5
5
  Author: wrmsr
6
6
  License: BSD-3-Clause
@@ -32,7 +32,7 @@ Requires-Dist: pyyaml~=6.0; extra == "all"
32
32
  Requires-Dist: cbor2~=5.6; extra == "all"
33
33
  Requires-Dist: cloudpickle~=3.1; extra == "all"
34
34
  Requires-Dist: httpx[http2]~=0.28; extra == "all"
35
- Requires-Dist: wrapt~=1.14; extra == "all"
35
+ Requires-Dist: wrapt~=1.17; extra == "all"
36
36
  Requires-Dist: cryptography~=43.0; extra == "all"
37
37
  Requires-Dist: sqlalchemy[asyncio]~=2.0; extra == "all"
38
38
  Requires-Dist: pg8000~=1.31; extra == "all"
@@ -50,7 +50,7 @@ Requires-Dist: asttokens~=3.0; extra == "all"
50
50
  Requires-Dist: executing~=2.1; extra == "all"
51
51
  Requires-Dist: orjson~=3.10; extra == "all"
52
52
  Requires-Dist: pyyaml~=6.0; extra == "all"
53
- Requires-Dist: wrapt~=1.14; extra == "all"
53
+ Requires-Dist: wrapt~=1.17; extra == "all"
54
54
  Provides-Extra: async
55
55
  Requires-Dist: anyio~=4.8; extra == "async"
56
56
  Requires-Dist: sniffio~=1.3; extra == "async"
@@ -76,7 +76,7 @@ Requires-Dist: cloudpickle~=3.1; extra == "formats"
76
76
  Provides-Extra: http
77
77
  Requires-Dist: httpx[http2]~=0.28; extra == "http"
78
78
  Provides-Extra: misc
79
- Requires-Dist: wrapt~=1.14; extra == "misc"
79
+ Requires-Dist: wrapt~=1.17; extra == "misc"
80
80
  Provides-Extra: secrets
81
81
  Requires-Dist: cryptography~=43.0; extra == "secrets"
82
82
  Provides-Extra: sqlalchemy
@@ -99,4 +99,4 @@ Requires-Dist: asttokens~=3.0; extra == "plus"
99
99
  Requires-Dist: executing~=2.1; extra == "plus"
100
100
  Requires-Dist: orjson~=3.10; extra == "plus"
101
101
  Requires-Dist: pyyaml~=6.0; extra == "plus"
102
- Requires-Dist: wrapt~=1.14; extra == "plus"
102
+ Requires-Dist: wrapt~=1.17; extra == "plus"
@@ -1,5 +1,5 @@
1
1
  omlish/.manifests.json,sha256=dyIpveH7Z8OnQp2pTn6NVv7LCDXVrozJWAzbk8PBavg,7950
2
- omlish/__about__.py,sha256=22uMA2RLBxbw-IZsPLk4nnvlh3wHoCRD06wQw3bBZIQ,3409
2
+ omlish/__about__.py,sha256=k-LReuWcQzDYGLPwBQIiwvv6bYv80UaqeQ2bGjZEhuY,3409
3
3
  omlish/__init__.py,sha256=SsyiITTuK0v74XpKV8dqNaCmjOlan1JZKrHQv5rWKPA,253
4
4
  omlish/c3.py,sha256=ubu7lHwss5V4UznbejAI0qXhXahrU01MysuHOZI9C4U,8116
5
5
  omlish/cached.py,sha256=UI-XTFBwA6YXWJJJeBn-WkwBkfzDjLBBaZf4nIJA9y0,510
@@ -83,7 +83,7 @@ omlish/antlr/_runtime/xpath/XPathLexer.py,sha256=WvGKQjQnu7pX5C4CFKtsCzba2B2W6ie
83
83
  omlish/antlr/_runtime/xpath/__init__.py,sha256=lMd_BbXYdlDhZQN_q0TKN978XW5G0pq618F0NaLkpFE,71
84
84
  omlish/argparse/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
85
85
  omlish/argparse/all.py,sha256=2qhVgFTq3w_tJ_okEnw_D-2k4jlJD7EcM5hNEow6M2M,1030
86
- omlish/argparse/cli.py,sha256=Kjq3bzd_E2XwV0T7-cddDdrm68N4AWptTKdJty8vN8g,8217
86
+ omlish/argparse/cli.py,sha256=nMn4D2Oce2HNGGVuc_EtJuNSqoIfNdzWd_eKFBSfxEs,8586
87
87
  omlish/asyncs/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
88
88
  omlish/asyncs/all.py,sha256=uUz9ziKh4_QrgmdhKFMgq6j7mFbiZd3LiogguDCQsGI,587
89
89
  omlish/asyncs/anyio.py,sha256=gfpx-D8QGmUfhnQxHEaHXcAP8zSMQjcGw4COFTGNnHI,8021
@@ -494,7 +494,7 @@ omlish/specs/jmespath/LICENSE,sha256=IH-ZZlZkS8XMkf_ubNVD1aYHQ2l_wd0tmHtXrCcYpRU
494
494
  omlish/specs/jmespath/__init__.py,sha256=9tsrquw1kXe1KAhTP3WeL0GlGBiTguQVxsC-lUYTWP4,2087
495
495
  omlish/specs/jmespath/__main__.py,sha256=wIXm6bs08etNG_GZlN2rBkADPb0rKfL2HSkm8spnpxw,200
496
496
  omlish/specs/jmespath/ast.py,sha256=XhcUGodHIdsY3-hVZEfpeW6LBehRjLbxVFXkMfZhRdk,5386
497
- omlish/specs/jmespath/cli.py,sha256=RYVTFVEwIFFZ8jYOsvaadzyFmweZxpENQfCe79iMa5U,2205
497
+ omlish/specs/jmespath/cli.py,sha256=3KZwgbPXjJF_yd8H40f0vCNTNkcYLGbV7OQjp1etOdg,2182
498
498
  omlish/specs/jmespath/exceptions.py,sha256=Co1HiUBPFNwFgZY3FV_ayuZoSgZIAmDcImImxauYNxc,4435
499
499
  omlish/specs/jmespath/functions.py,sha256=lE_MlW5rDQirDCE9HtcAG-17kuHhH36RaPaQfk97xDY,22595
500
500
  omlish/specs/jmespath/lexer.py,sha256=hlPGCXPzGhd9ySj-z2cGTbyC9z3e0Io78IMYJZSEwNk,12647
@@ -609,9 +609,9 @@ omlish/text/indent.py,sha256=YjtJEBYWuk8--b9JU_T6q4yxV85_TR7VEVr5ViRCFwk,1336
609
609
  omlish/text/minja.py,sha256=jZC-fp3Xuhx48ppqsf2Sf1pHbC0t8XBB7UpUUoOk2Qw,5751
610
610
  omlish/text/parts.py,sha256=7vPF1aTZdvLVYJ4EwBZVzRSy8XB3YqPd7JwEnNGGAOo,6495
611
611
  omlish/text/random.py,sha256=jNWpqiaKjKyTdMXC-pWAsSC10AAP-cmRRPVhm59ZWLk,194
612
- omlish-0.0.0.dev208.dist-info/LICENSE,sha256=B_hVtavaA8zCYDW99DYdcpDLKz1n3BBRjZrcbv8uG8c,1451
613
- omlish-0.0.0.dev208.dist-info/METADATA,sha256=56HyCquMSUilt7VYCVusiCr6AXg2OuCrQwdxK4YXVbc,4264
614
- omlish-0.0.0.dev208.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
615
- omlish-0.0.0.dev208.dist-info/entry_points.txt,sha256=Lt84WvRZJskWCAS7xnQGZIeVWksprtUHj0llrvVmod8,35
616
- omlish-0.0.0.dev208.dist-info/top_level.txt,sha256=pePsKdLu7DvtUiecdYXJ78iO80uDNmBlqe-8hOzOmfs,7
617
- omlish-0.0.0.dev208.dist-info/RECORD,,
612
+ omlish-0.0.0.dev210.dist-info/LICENSE,sha256=B_hVtavaA8zCYDW99DYdcpDLKz1n3BBRjZrcbv8uG8c,1451
613
+ omlish-0.0.0.dev210.dist-info/METADATA,sha256=aS3RF2o9QVbMbqBTFY99L9-OWMdcVv3KVcm3AlSy-vo,4264
614
+ omlish-0.0.0.dev210.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
615
+ omlish-0.0.0.dev210.dist-info/entry_points.txt,sha256=Lt84WvRZJskWCAS7xnQGZIeVWksprtUHj0llrvVmod8,35
616
+ omlish-0.0.0.dev210.dist-info/top_level.txt,sha256=pePsKdLu7DvtUiecdYXJ78iO80uDNmBlqe-8hOzOmfs,7
617
+ omlish-0.0.0.dev210.dist-info/RECORD,,