From 6588a8105141b25554c46b3a135af3ca19bca995 Mon Sep 17 00:00:00 2001 From: sobolevn Date: Wed, 28 May 2025 10:15:03 +0300 Subject: [PATCH] Update `multiprocessing.forkserver` to 3.14 (#14174) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> --- stdlib/@tests/stubtest_allowlists/py314.txt | 1 - stdlib/multiprocessing/forkserver.pyi | 28 +++++++++++++++------ 2 files changed, 21 insertions(+), 8 deletions(-) diff --git a/stdlib/@tests/stubtest_allowlists/py314.txt b/stdlib/@tests/stubtest_allowlists/py314.txt index ca1e7ac42..38949fb66 100644 --- a/stdlib/@tests/stubtest_allowlists/py314.txt +++ b/stdlib/@tests/stubtest_allowlists/py314.txt @@ -15,7 +15,6 @@ fractions.Fraction.__rpow__ gzip.GzipFile.readinto gzip.GzipFile.readinto1 gzip.compress -multiprocessing.forkserver.main multiprocessing.managers.BaseListProxy.clear multiprocessing.managers.BaseListProxy.copy multiprocessing.managers.DictProxy.__ior__ diff --git a/stdlib/multiprocessing/forkserver.pyi b/stdlib/multiprocessing/forkserver.pyi index 31b982856..c4af295d2 100644 --- a/stdlib/multiprocessing/forkserver.pyi +++ b/stdlib/multiprocessing/forkserver.pyi @@ -1,3 +1,4 @@ +import sys from _typeshed import FileDescriptorLike, Unused from collections.abc import Sequence from struct import Struct @@ -14,13 +15,26 @@ class ForkServer: def connect_to_new_process(self, fds: Sequence[int]) -> tuple[int, int]: ... def ensure_running(self) -> None: ... -def main( - listener_fd: int | None, - alive_r: FileDescriptorLike, - preload: Sequence[str], - main_path: str | None = None, - sys_path: Unused = None, -) -> None: ... +if sys.version_info >= (3, 14): + def main( + listener_fd: int | None, + alive_r: FileDescriptorLike, + preload: Sequence[str], + main_path: str | None = None, + sys_path: list[str] | None = None, + *, + authkey_r: int | None = None, + ) -> None: ... + +else: + def main( + listener_fd: int | None, + alive_r: FileDescriptorLike, + preload: Sequence[str], + main_path: str | None = None, + sys_path: Unused = None, + ) -> None: ... + def read_signed(fd: int) -> Any: ... def write_signed(fd: int, n: int) -> None: ...