Skip to content

Commit e377c32

Browse files
committed
Work around a mypy bug
1 parent b81444d commit e377c32

File tree

1 file changed

+13
-3
lines changed

1 file changed

+13
-3
lines changed

src/trio/_subprocess.py

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1122,13 +1122,26 @@ class UnixRunProcessMixin(TypedDict, total=False):
11221122
check: bool
11231123
deliver_cancel: Callable[[Process], Awaitable[None]] | None
11241124

1125+
# TODO: once https://github.com/python/mypy/issues/18692 is
1126+
# fixed, move the `UnixRunProcessArgs` definition down.
11251127
if sys.version_info >= (3, 11):
11261128
UnixProcessArgs = UnixProcessArgs3_11
1129+
1130+
class UnixRunProcessArgs(UnixProcessArgs3_11, UnixRunProcessMixin):
1131+
"""Arguments for run_process on Unix with 3.11+"""
1132+
11271133
elif sys.version_info >= (3, 10):
11281134
UnixProcessArgs = UnixProcessArgs3_10
1135+
1136+
class UnixRunProcessArgs(UnixProcessArgs3_10, UnixRunProcessMixin):
1137+
"""Arguments for run_process on Unix with 3.10+"""
1138+
11291139
else:
11301140
UnixProcessArgs = UnixProcessArgs3_9
11311141

1142+
class UnixRunProcessArgs(UnixProcessArgs3_9, UnixRunProcessMixin):
1143+
"""Arguments for run_process on Unix with 3.9+"""
1144+
11321145
@overload # type: ignore[no-overload-impl]
11331146
async def open_process(
11341147
command: StrOrBytesPath,
@@ -1147,9 +1160,6 @@ async def open_process(
11471160
**kwargs: Unpack[UnixProcessArgs],
11481161
) -> trio.Process: ...
11491162

1150-
class UnixRunProcessArgs(UnixProcessArgs, UnixRunProcessMixin):
1151-
pass
1152-
11531163
@overload # type: ignore[no-overload-impl]
11541164
async def run_process(
11551165
command: StrOrBytesPath,

0 commit comments

Comments
 (0)