omlish 0.0.0.dev388__py3-none-any.whl → 0.0.0.dev389__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 +2 -2
- omlish/asyncs/anyio/subprocesses.py +1 -10
- omlish/asyncs/asyncio/subprocesses.py +1 -21
- omlish/lite/maysyncs.py +13 -3
- omlish/subprocesses/{async_.py → asyncs.py} +21 -13
- omlish/subprocesses/maysyncs.py +152 -0
- omlish/subprocesses/sync.py +2 -0
- {omlish-0.0.0.dev388.dist-info → omlish-0.0.0.dev389.dist-info}/METADATA +1 -1
- {omlish-0.0.0.dev388.dist-info → omlish-0.0.0.dev389.dist-info}/RECORD +13 -13
- omlish/subprocesses/maysync.py +0 -52
- {omlish-0.0.0.dev388.dist-info → omlish-0.0.0.dev389.dist-info}/WHEEL +0 -0
- {omlish-0.0.0.dev388.dist-info → omlish-0.0.0.dev389.dist-info}/entry_points.txt +0 -0
- {omlish-0.0.0.dev388.dist-info → omlish-0.0.0.dev389.dist-info}/licenses/LICENSE +0 -0
- {omlish-0.0.0.dev388.dist-info → omlish-0.0.0.dev389.dist-info}/top_level.txt +0 -0
omlish/__about__.py
CHANGED
@@ -1,13 +1,12 @@
|
|
1
1
|
import io
|
2
2
|
import subprocess
|
3
|
-
import sys
|
4
3
|
import typing as ta
|
5
4
|
|
6
5
|
import anyio.abc
|
7
6
|
|
8
7
|
from ... import check
|
9
8
|
from ...lite.timeouts import Timeout
|
10
|
-
from ...subprocesses.
|
9
|
+
from ...subprocesses.asyncs import AbstractAsyncSubprocesses
|
11
10
|
from ...subprocesses.run import SubprocessRun
|
12
11
|
from ...subprocesses.run import SubprocessRunOutput
|
13
12
|
|
@@ -73,13 +72,5 @@ class AnyioSubprocesses(AbstractAsyncSubprocesses):
|
|
73
72
|
stderr=stderr.getvalue() if stderr is not None else None,
|
74
73
|
)
|
75
74
|
|
76
|
-
async def check_call(self, *cmd: str, stdout: ta.Any = sys.stderr, **kwargs: ta.Any) -> None:
|
77
|
-
with self.prepare_and_wrap(*cmd, stdout=stdout, check=True, **kwargs) as (cmd, kwargs): # noqa
|
78
|
-
await self.run(*cmd, **kwargs)
|
79
|
-
|
80
|
-
async def check_output(self, *cmd: str, **kwargs: ta.Any) -> bytes:
|
81
|
-
with self.prepare_and_wrap(*cmd, stdout=subprocess.PIPE, check=True, **kwargs) as (cmd, kwargs): # noqa
|
82
|
-
return check.not_none((await self.run(*cmd, **kwargs)).stdout)
|
83
|
-
|
84
75
|
|
85
76
|
anyio_subprocesses = AnyioSubprocesses()
|
@@ -6,12 +6,11 @@ import contextlib
|
|
6
6
|
import functools
|
7
7
|
import logging
|
8
8
|
import subprocess
|
9
|
-
import sys
|
10
9
|
import typing as ta
|
11
10
|
|
12
11
|
from ...lite.check import check
|
13
12
|
from ...lite.timeouts import TimeoutLike
|
14
|
-
from ...subprocesses.
|
13
|
+
from ...subprocesses.asyncs import AbstractAsyncSubprocesses
|
15
14
|
from ...subprocesses.run import SubprocessRun
|
16
15
|
from ...subprocesses.run import SubprocessRunOutput
|
17
16
|
from .timeouts import asyncio_maybe_timeout
|
@@ -208,24 +207,5 @@ class AsyncioSubprocesses(AbstractAsyncSubprocesses):
|
|
208
207
|
stderr=stderr,
|
209
208
|
)
|
210
209
|
|
211
|
-
#
|
212
|
-
|
213
|
-
async def check_call(
|
214
|
-
self,
|
215
|
-
*cmd: str,
|
216
|
-
stdout: ta.Any = sys.stderr,
|
217
|
-
**kwargs: ta.Any,
|
218
|
-
) -> None:
|
219
|
-
with self.prepare_and_wrap(*cmd, stdout=stdout, check=True, **kwargs) as (cmd, kwargs): # noqa
|
220
|
-
await self.run(*cmd, **kwargs)
|
221
|
-
|
222
|
-
async def check_output(
|
223
|
-
self,
|
224
|
-
*cmd: str,
|
225
|
-
**kwargs: ta.Any,
|
226
|
-
) -> bytes:
|
227
|
-
with self.prepare_and_wrap(*cmd, stdout=subprocess.PIPE, check=True, **kwargs) as (cmd, kwargs): # noqa
|
228
|
-
return check.not_none((await self.run(*cmd, **kwargs)).stdout)
|
229
|
-
|
230
210
|
|
231
211
|
asyncio_subprocesses = AsyncioSubprocesses()
|
omlish/lite/maysyncs.py
CHANGED
@@ -146,6 +146,7 @@ class _MgMaywaitable(_Maywaitable[_MgMaysync[T], T]):
|
|
146
146
|
|
147
147
|
if not isinstance(o, _MaysyncOp):
|
148
148
|
raise TypeError(o)
|
149
|
+
|
149
150
|
try:
|
150
151
|
i = o.x(*o.args, **o.kwargs).s()
|
151
152
|
except BaseException as ex: # noqa
|
@@ -173,6 +174,7 @@ class _MgMaywaitable(_Maywaitable[_MgMaysync[T], T]):
|
|
173
174
|
|
174
175
|
if not isinstance(o, _MaysyncOp):
|
175
176
|
raise TypeError(o)
|
177
|
+
|
176
178
|
try:
|
177
179
|
i = await o.x(*o.args, **o.kwargs).a()
|
178
180
|
except BaseException as ex: # noqa
|
@@ -206,6 +208,7 @@ class _MgMaysyncFn:
|
|
206
208
|
|
207
209
|
if not isinstance(o, _MaysyncFuture):
|
208
210
|
raise TypeError(o)
|
211
|
+
|
209
212
|
if not o.done:
|
210
213
|
try:
|
211
214
|
o.result = yield o.op
|
@@ -213,6 +216,8 @@ class _MgMaysyncFn:
|
|
213
216
|
o.error = e
|
214
217
|
o.done = True
|
215
218
|
|
219
|
+
del o
|
220
|
+
|
216
221
|
finally:
|
217
222
|
g.close()
|
218
223
|
|
@@ -240,6 +245,10 @@ class _MaysyncOp:
|
|
240
245
|
self.kwargs = kwargs
|
241
246
|
|
242
247
|
|
248
|
+
class _MaysyncFutureNotAwaitedError(RuntimeError):
|
249
|
+
pass
|
250
|
+
|
251
|
+
|
243
252
|
@ta.final
|
244
253
|
class _MaysyncFuture(ta.Generic[T]):
|
245
254
|
def __init__(
|
@@ -249,14 +258,15 @@ class _MaysyncFuture(ta.Generic[T]):
|
|
249
258
|
self.op = op
|
250
259
|
|
251
260
|
done: bool = False
|
252
|
-
result:
|
261
|
+
result: T
|
253
262
|
error: ta.Optional[BaseException] = None
|
254
263
|
|
255
264
|
def __await__(self):
|
256
265
|
if not self.done:
|
257
266
|
yield self
|
258
267
|
if not self.done:
|
259
|
-
raise
|
268
|
+
raise _MaysyncFutureNotAwaitedError
|
260
269
|
if self.error is not None:
|
261
270
|
raise self.error
|
262
|
-
|
271
|
+
else:
|
272
|
+
return self.result
|
@@ -1,9 +1,11 @@
|
|
1
1
|
# ruff: noqa: UP006 UP007 UP045
|
2
2
|
# @omlish-lite
|
3
3
|
import abc
|
4
|
+
import subprocess
|
4
5
|
import sys
|
5
6
|
import typing as ta
|
6
7
|
|
8
|
+
from ..lite.check import check
|
7
9
|
from ..lite.timeouts import TimeoutLike
|
8
10
|
from .base import BaseSubprocesses
|
9
11
|
from .run import SubprocessRun
|
@@ -13,9 +15,9 @@ from .run import SubprocessRunOutput
|
|
13
15
|
##
|
14
16
|
|
15
17
|
|
16
|
-
class
|
18
|
+
class AbstractAsyncSubprocesses(BaseSubprocesses):
|
17
19
|
@abc.abstractmethod
|
18
|
-
|
20
|
+
def run_(self, run: SubprocessRun) -> ta.Awaitable[SubprocessRunOutput]:
|
19
21
|
raise NotImplementedError
|
20
22
|
|
21
23
|
def run(
|
@@ -38,31 +40,41 @@ class _AbstractAsyncSubprocesses(BaseSubprocesses):
|
|
38
40
|
|
39
41
|
#
|
40
42
|
|
41
|
-
@abc.abstractmethod
|
42
43
|
async def check_call(
|
43
44
|
self,
|
44
45
|
*cmd: str,
|
45
46
|
stdout: ta.Any = sys.stderr,
|
46
47
|
**kwargs: ta.Any,
|
47
48
|
) -> None:
|
48
|
-
|
49
|
+
await self.run(
|
50
|
+
*cmd,
|
51
|
+
stdout=stdout,
|
52
|
+
check=True,
|
53
|
+
**kwargs,
|
54
|
+
)
|
49
55
|
|
50
|
-
@abc.abstractmethod
|
51
56
|
async def check_output(
|
52
57
|
self,
|
53
58
|
*cmd: str,
|
59
|
+
stdout: ta.Any = subprocess.PIPE,
|
54
60
|
**kwargs: ta.Any,
|
55
61
|
) -> bytes:
|
56
|
-
|
57
|
-
|
58
|
-
|
62
|
+
return check.not_none((await self.run(
|
63
|
+
*cmd,
|
64
|
+
stdout=stdout,
|
65
|
+
check=True,
|
66
|
+
**kwargs,
|
67
|
+
)).stdout)
|
59
68
|
|
60
69
|
async def check_output_str(
|
61
70
|
self,
|
62
71
|
*cmd: str,
|
63
72
|
**kwargs: ta.Any,
|
64
73
|
) -> str:
|
65
|
-
return (await self.check_output(
|
74
|
+
return (await self.check_output(
|
75
|
+
*cmd,
|
76
|
+
**kwargs,
|
77
|
+
)).decode().strip()
|
66
78
|
|
67
79
|
#
|
68
80
|
|
@@ -95,7 +107,3 @@ class _AbstractAsyncSubprocesses(BaseSubprocesses):
|
|
95
107
|
return None
|
96
108
|
else:
|
97
109
|
return ret.decode().strip()
|
98
|
-
|
99
|
-
|
100
|
-
class AbstractAsyncSubprocesses(_AbstractAsyncSubprocesses, abc.ABC):
|
101
|
-
pass
|
@@ -0,0 +1,152 @@
|
|
1
|
+
# ruff: noqa: UP006 UP007 UP045
|
2
|
+
# @omlish-lite
|
3
|
+
import abc
|
4
|
+
import sys
|
5
|
+
import typing as ta
|
6
|
+
|
7
|
+
from ..lite.maysyncs import Maywaitable
|
8
|
+
from ..lite.maysyncs import make_maysync
|
9
|
+
from ..lite.maysyncs import maysync
|
10
|
+
from ..lite.timeouts import TimeoutLike
|
11
|
+
from .asyncs import AbstractAsyncSubprocesses
|
12
|
+
from .base import BaseSubprocesses
|
13
|
+
from .run import SubprocessRun
|
14
|
+
from .run import SubprocessRunOutput
|
15
|
+
from .sync import AbstractSubprocesses
|
16
|
+
|
17
|
+
|
18
|
+
##
|
19
|
+
|
20
|
+
|
21
|
+
class AbstractMaysyncSubprocesses(BaseSubprocesses, abc.ABC):
|
22
|
+
@abc.abstractmethod
|
23
|
+
def run_(self, run: SubprocessRun) -> Maywaitable[SubprocessRunOutput]:
|
24
|
+
raise NotImplementedError
|
25
|
+
|
26
|
+
def run(
|
27
|
+
self,
|
28
|
+
*cmd: str,
|
29
|
+
input: ta.Any = None, # noqa
|
30
|
+
timeout: TimeoutLike = None,
|
31
|
+
check: bool = False,
|
32
|
+
capture_output: ta.Optional[bool] = None,
|
33
|
+
**kwargs: ta.Any,
|
34
|
+
) -> Maywaitable[SubprocessRunOutput]:
|
35
|
+
return self.run_(SubprocessRun(
|
36
|
+
cmd=cmd,
|
37
|
+
input=input,
|
38
|
+
timeout=timeout,
|
39
|
+
check=check,
|
40
|
+
capture_output=capture_output,
|
41
|
+
kwargs=kwargs,
|
42
|
+
))
|
43
|
+
|
44
|
+
#
|
45
|
+
|
46
|
+
@abc.abstractmethod
|
47
|
+
def check_call(
|
48
|
+
self,
|
49
|
+
*cmd: str,
|
50
|
+
stdout: ta.Any = sys.stderr,
|
51
|
+
**kwargs: ta.Any,
|
52
|
+
) -> Maywaitable[None]:
|
53
|
+
raise NotImplementedError
|
54
|
+
|
55
|
+
@abc.abstractmethod
|
56
|
+
def check_output(
|
57
|
+
self,
|
58
|
+
*cmd: str,
|
59
|
+
**kwargs: ta.Any,
|
60
|
+
) -> Maywaitable[bytes]:
|
61
|
+
raise NotImplementedError
|
62
|
+
|
63
|
+
#
|
64
|
+
|
65
|
+
@maysync
|
66
|
+
async def check_output_str(
|
67
|
+
self,
|
68
|
+
*cmd: str,
|
69
|
+
**kwargs: ta.Any,
|
70
|
+
) -> str:
|
71
|
+
return (await self.check_output(*cmd, **kwargs).m()).decode().strip()
|
72
|
+
|
73
|
+
#
|
74
|
+
|
75
|
+
@maysync
|
76
|
+
async def try_call(
|
77
|
+
self,
|
78
|
+
*cmd: str,
|
79
|
+
**kwargs: ta.Any,
|
80
|
+
) -> bool:
|
81
|
+
if isinstance(await self.async_try_fn(self.check_call(*cmd, **kwargs).m), Exception):
|
82
|
+
return False
|
83
|
+
else:
|
84
|
+
return True
|
85
|
+
|
86
|
+
@maysync
|
87
|
+
async def try_output(
|
88
|
+
self,
|
89
|
+
*cmd: str,
|
90
|
+
**kwargs: ta.Any,
|
91
|
+
) -> ta.Optional[bytes]:
|
92
|
+
if isinstance(ret := await self.async_try_fn(self.check_output(*cmd, **kwargs).m), Exception):
|
93
|
+
return None
|
94
|
+
else:
|
95
|
+
return ret
|
96
|
+
|
97
|
+
@maysync
|
98
|
+
async def try_output_str(
|
99
|
+
self,
|
100
|
+
*cmd: str,
|
101
|
+
**kwargs: ta.Any,
|
102
|
+
) -> ta.Optional[str]:
|
103
|
+
if (ret := await self.try_output(*cmd, **kwargs).m()) is None:
|
104
|
+
return None
|
105
|
+
else:
|
106
|
+
return ret.decode().strip()
|
107
|
+
|
108
|
+
|
109
|
+
##
|
110
|
+
|
111
|
+
|
112
|
+
class MaysyncSubprocesses(AbstractMaysyncSubprocesses):
|
113
|
+
def __init__(
|
114
|
+
self,
|
115
|
+
subprocesses: AbstractSubprocesses,
|
116
|
+
async_subprocesses: AbstractAsyncSubprocesses,
|
117
|
+
) -> None:
|
118
|
+
super().__init__()
|
119
|
+
|
120
|
+
self._subprocesses = subprocesses
|
121
|
+
self._async_subprocesses = async_subprocesses
|
122
|
+
|
123
|
+
#
|
124
|
+
|
125
|
+
def run_(self, run: SubprocessRun) -> Maywaitable[SubprocessRunOutput]:
|
126
|
+
return make_maysync(
|
127
|
+
self._subprocesses.run,
|
128
|
+
self._async_subprocesses.run,
|
129
|
+
)(run)
|
130
|
+
|
131
|
+
#
|
132
|
+
|
133
|
+
def check_call(
|
134
|
+
self,
|
135
|
+
*cmd: str,
|
136
|
+
stdout: ta.Any = sys.stderr,
|
137
|
+
**kwargs: ta.Any,
|
138
|
+
) -> Maywaitable[None]:
|
139
|
+
return make_maysync(
|
140
|
+
self._subprocesses.check_call,
|
141
|
+
self._async_subprocesses.check_call,
|
142
|
+
)(*cmd, stdout=stdout, **kwargs)
|
143
|
+
|
144
|
+
def check_output(
|
145
|
+
self,
|
146
|
+
*cmd: str,
|
147
|
+
**kwargs: ta.Any,
|
148
|
+
) -> Maywaitable[bytes]:
|
149
|
+
return make_maysync(
|
150
|
+
self._subprocesses.check_output,
|
151
|
+
self._async_subprocesses.check_output,
|
152
|
+
)(*cmd, **kwargs)
|
omlish/subprocesses/sync.py
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
omlish/.manifests.json,sha256=aT8yZ-Zh-9wfHl5Ym5ouiWC1i0cy7Q7RlhzavB6VLPI,8587
|
2
|
-
omlish/__about__.py,sha256=
|
2
|
+
omlish/__about__.py,sha256=nywiLIvIX-iNrqLzoBB2G9Oux2R2MJWTjuu4s5X9qzM,3543
|
3
3
|
omlish/__init__.py,sha256=SsyiITTuK0v74XpKV8dqNaCmjOlan1JZKrHQv5rWKPA,253
|
4
4
|
omlish/c3.py,sha256=rer-TPOFDU6fYq_AWio_AmA-ckZ8JDY5shIzQ_yXfzA,8414
|
5
5
|
omlish/cached.py,sha256=MLap_p0rdGoDIMVhXVHm1tsbcWobJF0OanoodV03Ju8,542
|
@@ -34,7 +34,7 @@ omlish/asyncs/anyio/backends.py,sha256=jJIymWoiedaEJJm82gvKiJ41EWLQZ-bcyNHpbDpKK
|
|
34
34
|
omlish/asyncs/anyio/futures.py,sha256=Nm1gLerZEnHk-rlsmr0UfK168IWIK6zA8EebZFtoY_E,2052
|
35
35
|
omlish/asyncs/anyio/signals.py,sha256=ySSut5prdnoy0-5Ws5V1M4cC2ON_vY550vU10d2NHk8,893
|
36
36
|
omlish/asyncs/anyio/streams.py,sha256=Zum2qd1t3EiH6yzGWFwxFw79m-IH2VY5sTUTiluFfIY,2164
|
37
|
-
omlish/asyncs/anyio/subprocesses.py,sha256=
|
37
|
+
omlish/asyncs/anyio/subprocesses.py,sha256=5nWYw9sPaelK2AJ17NHTHQ34Qa3DXCFkcTpvddzjboA,2500
|
38
38
|
omlish/asyncs/anyio/sync.py,sha256=ZmSNhSsEkPwlXThrpefhtVTxw4GJ9F0P-yKyo5vbbSk,1574
|
39
39
|
omlish/asyncs/anyio/utils.py,sha256=-mveSB20De6znphfMlIuEd_rwITkcSjFNO07isshDjk,1704
|
40
40
|
omlish/asyncs/asyncio/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
@@ -42,7 +42,7 @@ omlish/asyncs/asyncio/all.py,sha256=u2JpMEs-0AJ0Vd8yU10HvWD8rfKxdFfMiwBu2oDeuuQ,
|
|
42
42
|
omlish/asyncs/asyncio/channels.py,sha256=oniTpmw_eeKK70APyEZLhRUChwLwebE4N0_uZiwSKgQ,1085
|
43
43
|
omlish/asyncs/asyncio/sockets.py,sha256=i1a2DZ52IuvRQQQW8FJxEUFboqpKn_K08a_MsMaecqU,1264
|
44
44
|
omlish/asyncs/asyncio/streams.py,sha256=Laa9BNwajZ7Wt_rJoYMbQtfSX4Q4i-dVHhtYSekCHXM,1015
|
45
|
-
omlish/asyncs/asyncio/subprocesses.py,sha256=
|
45
|
+
omlish/asyncs/asyncio/subprocesses.py,sha256=8o-uWNsJhSoM7Egbofc23CeJFRmb4isb9zVVh1Fxjfk,6285
|
46
46
|
omlish/asyncs/asyncio/timeouts.py,sha256=lJ4qmDqyxUeAQCXJGiLL8pxYwoR1F1lntZ18HVf40Wo,452
|
47
47
|
omlish/asyncs/asyncio/utils.py,sha256=dCC4hXqCTKBpU5urAXsKUIIua2M9JXAtumwh7IUEu7E,2443
|
48
48
|
omlish/asyncs/bluelet/LICENSE,sha256=q5Kpj4s30qpi8H66tXFlh5v8_fkaKMFIzqdGfnN0Hz0,555
|
@@ -478,7 +478,7 @@ omlish/lite/json.py,sha256=m0Ce9eqUZG23-H7-oOp8n1sf4fzno5vtK4AK_4Vc-Mg,706
|
|
478
478
|
omlish/lite/logs.py,sha256=CWFG0NKGhqNeEgryF5atN2gkPYbUdTINEw_s1phbINM,51
|
479
479
|
omlish/lite/marshal.py,sha256=JD_8ox5-yeIo7MZ6iipCdiVxx33So52M02AtvFlRGC8,20392
|
480
480
|
omlish/lite/maybes.py,sha256=0p_fzb6yiOjEpvMKaQ53Q6CH1VPW1or7v7Lt1JIKcgM,4359
|
481
|
-
omlish/lite/maysyncs.py,sha256=
|
481
|
+
omlish/lite/maysyncs.py,sha256=qPYJw9adceaoW50PqyLRomlrhxjnzLBxswjyMaUk04M,5755
|
482
482
|
omlish/lite/pycharm.py,sha256=FRHGcCDo42UzZXqNwW_DkhI-6kb_CmJKPiQ8F6mYkLA,1174
|
483
483
|
omlish/lite/reflect.py,sha256=pzOY2PPuHH0omdtglkN6DheXDrGopdL3PtTJnejyLFU,2189
|
484
484
|
omlish/lite/reprs.py,sha256=Tiqf_ciD8FfS0ury7FcJ5G21yY342fW0vPacYlb8EO4,2014
|
@@ -748,12 +748,12 @@ omlish/sql/tabledefs/lower.py,sha256=i4_QkVlVH5U99O6pqokrB661AudNVJ9Q-OwtkKOBleU
|
|
748
748
|
omlish/sql/tabledefs/marshal.py,sha256=5Z7K433SzfN7-z8Yd7FJRzOV9tJv-ErRMA6inZ2iBCE,475
|
749
749
|
omlish/sql/tabledefs/tabledefs.py,sha256=lIhvlt0pk6G7RZAtDFsFXm5j0l9BvRfnP7vNGeydHtE,816
|
750
750
|
omlish/subprocesses/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
751
|
-
omlish/subprocesses/
|
751
|
+
omlish/subprocesses/asyncs.py,sha256=G9wj275s3r0ueftHFl73Lt4kMRBc2hJOKcoJQCDlBms,2663
|
752
752
|
omlish/subprocesses/base.py,sha256=r60N3ad4ooSvdgFmT94L_xZEy7FMbMX6JcG2VgpHo6w,6139
|
753
753
|
omlish/subprocesses/editor.py,sha256=xBrd7gY0akhRfDIBK5YIBrYMHECtl_8r499iKViyfpQ,2634
|
754
|
-
omlish/subprocesses/
|
754
|
+
omlish/subprocesses/maysyncs.py,sha256=XWWVC-jyjVJLcT-nWMZFf4jUQesRuBWWVhmwcG_fUWE,3818
|
755
755
|
omlish/subprocesses/run.py,sha256=8EeMm2FdNEFmEmbhhzJyHXASUhCCMMRN_-8ybqFhgLI,4378
|
756
|
-
omlish/subprocesses/sync.py,sha256=
|
756
|
+
omlish/subprocesses/sync.py,sha256=L-ZNj9RrZd69XjlKrXjt-EJ-XUpQF8E35Mh3b3SI3vc,3671
|
757
757
|
omlish/subprocesses/utils.py,sha256=v5uEzxmbmRvXwOl_0DtBa5Il6yITKYRgmVSGHcLsT4o,402
|
758
758
|
omlish/subprocesses/wrap.py,sha256=AhGV8rsnaVUMQCFYKkrjj35fs3O-VJLZC1hZ14dz3C8,769
|
759
759
|
omlish/term/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
@@ -895,9 +895,9 @@ omlish/typedvalues/marshal.py,sha256=AtBz7Jq-BfW8vwM7HSxSpR85JAXmxK2T0xDblmm1HI0
|
|
895
895
|
omlish/typedvalues/of_.py,sha256=UXkxSj504WI2UrFlqdZJbu2hyDwBhL7XVrc2qdR02GQ,1309
|
896
896
|
omlish/typedvalues/reflect.py,sha256=PAvKW6T4cW7u--iX80w3HWwZUS3SmIZ2_lQjT65uAyk,1026
|
897
897
|
omlish/typedvalues/values.py,sha256=ym46I-q2QJ_6l4UlERqv3yj87R-kp8nCKMRph0xQ3UA,1307
|
898
|
-
omlish-0.0.0.
|
899
|
-
omlish-0.0.0.
|
900
|
-
omlish-0.0.0.
|
901
|
-
omlish-0.0.0.
|
902
|
-
omlish-0.0.0.
|
903
|
-
omlish-0.0.0.
|
898
|
+
omlish-0.0.0.dev389.dist-info/licenses/LICENSE,sha256=B_hVtavaA8zCYDW99DYdcpDLKz1n3BBRjZrcbv8uG8c,1451
|
899
|
+
omlish-0.0.0.dev389.dist-info/METADATA,sha256=YuiaRpmbQmDNnnQ-xxr5mY0iJC-fWVgVqlOANsG00BE,18825
|
900
|
+
omlish-0.0.0.dev389.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
901
|
+
omlish-0.0.0.dev389.dist-info/entry_points.txt,sha256=Lt84WvRZJskWCAS7xnQGZIeVWksprtUHj0llrvVmod8,35
|
902
|
+
omlish-0.0.0.dev389.dist-info/top_level.txt,sha256=pePsKdLu7DvtUiecdYXJ78iO80uDNmBlqe-8hOzOmfs,7
|
903
|
+
omlish-0.0.0.dev389.dist-info/RECORD,,
|
omlish/subprocesses/maysync.py
DELETED
@@ -1,52 +0,0 @@
|
|
1
|
-
# ruff: noqa: UP006 UP007 UP045
|
2
|
-
# @omlish-lite
|
3
|
-
import abc
|
4
|
-
import sys
|
5
|
-
import typing as ta
|
6
|
-
|
7
|
-
from ..lite.maysyncs import make_maysync
|
8
|
-
from .async_ import AbstractAsyncSubprocesses
|
9
|
-
from .async_ import _AbstractAsyncSubprocesses
|
10
|
-
from .run import SubprocessRun
|
11
|
-
from .run import SubprocessRunOutput
|
12
|
-
from .sync import AbstractSubprocesses
|
13
|
-
|
14
|
-
|
15
|
-
##
|
16
|
-
|
17
|
-
|
18
|
-
class AbstractMaysyncSubprocesses(_AbstractAsyncSubprocesses, abc.ABC):
|
19
|
-
pass
|
20
|
-
|
21
|
-
|
22
|
-
##
|
23
|
-
|
24
|
-
|
25
|
-
class MaysyncSubprocesses(AbstractMaysyncSubprocesses):
|
26
|
-
def __init__(
|
27
|
-
self,
|
28
|
-
subprocesses: AbstractSubprocesses,
|
29
|
-
async_subprocesses: AbstractAsyncSubprocesses,
|
30
|
-
) -> None:
|
31
|
-
super().__init__()
|
32
|
-
|
33
|
-
self._subprocesses = subprocesses
|
34
|
-
self._async_subprocesses = async_subprocesses
|
35
|
-
|
36
|
-
async def run_(self, run: SubprocessRun) -> SubprocessRunOutput:
|
37
|
-
return await make_maysync(
|
38
|
-
self._subprocesses.run,
|
39
|
-
self._async_subprocesses.run,
|
40
|
-
)(run).m()
|
41
|
-
|
42
|
-
async def check_call(self, *cmd: str, stdout: ta.Any = sys.stderr, **kwargs: ta.Any) -> None:
|
43
|
-
return await make_maysync(
|
44
|
-
self._subprocesses.check_call,
|
45
|
-
self._async_subprocesses.check_call,
|
46
|
-
)(*cmd, **kwargs).m()
|
47
|
-
|
48
|
-
async def check_output(self, *cmd: str, **kwargs: ta.Any) -> bytes:
|
49
|
-
return await make_maysync(
|
50
|
-
self._subprocesses.check_output,
|
51
|
-
self._async_subprocesses.check_output,
|
52
|
-
)(*cmd, **kwargs).m()
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|