From 374992bff7d5b5662040675adc7cd8184ed68bc3 Mon Sep 17 00:00:00 2001 From: Shantanu Date: Fri, 21 Feb 2020 02:57:07 -0800 Subject: [PATCH] resource: various fixes (#3747) * resource: mark positional-only args * resource: alias error to OSError * resource: no longer seems incomplete At least for Linux and Mac. Might be some things missing for FreeBSD * resource: fix platform availability * resource: update whitelist --- stdlib/3/resource.pyi | 30 +++++++++++++++--------------- tests/stubtest_whitelists/py38.txt | 3 --- 2 files changed, 15 insertions(+), 18 deletions(-) diff --git a/stdlib/3/resource.pyi b/stdlib/3/resource.pyi index b4a6829f3..280b581d0 100644 --- a/stdlib/3/resource.pyi +++ b/stdlib/3/resource.pyi @@ -1,7 +1,6 @@ # Stubs for resource -# NOTE: These are incomplete! - +import sys from typing import Tuple, Optional, NamedTuple RLIMIT_AS: int @@ -10,20 +9,21 @@ RLIMIT_CPU: int RLIMIT_DATA: int RLIMIT_FSIZE: int RLIMIT_MEMLOCK: int -RLIMIT_MSGQUEUE: int -RLIMIT_NICE: int RLIMIT_NOFILE: int RLIMIT_NPROC: int -RLIMIT_OFILE: int RLIMIT_RSS: int -RLIMIT_RTPRIO: int -RLIMIT_RTTIME: int -RLIMIT_SIGPENDING: int RLIMIT_STACK: int RLIM_INFINITY: int RUSAGE_CHILDREN: int RUSAGE_SELF: int -RUSAGE_THREAD: int +if sys.platform == "linux": + RLIMIT_MSGQUEUE: int + RLIMIT_NICE: int + RLIMIT_OFILE: int + RLIMIT_RTPRIO: int + RLIMIT_RTTIME: int + RLIMIT_SIGPENDING: int + RUSAGE_THREAD: int class _RUsage(NamedTuple): ru_utime: float @@ -44,10 +44,10 @@ class _RUsage(NamedTuple): ru_nivcsw: int def getpagesize() -> int: ... -def getrlimit(resource: int) -> Tuple[int, int]: ... -def getrusage(who: int) -> _RUsage: ... -def prlimit(pid: int, resource: int, limits: Optional[Tuple[int, int]]) -> Tuple[int, int]: ... -def setrlimit(resource: int, limits: Tuple[int, int]) -> None: ... +def getrlimit(__resource: int) -> Tuple[int, int]: ... +def getrusage(__who: int) -> _RUsage: ... +def setrlimit(__resource: int, __limits: Tuple[int, int]) -> None: ... +if sys.platform == "linux": + def prlimit(pid: int, resource: int, limits: Optional[Tuple[int, int]]) -> Tuple[int, int]: ... -# NOTE: This is an alias of OSError in Python 3.3. -class error(Exception): ... +error = OSError diff --git a/tests/stubtest_whitelists/py38.txt b/tests/stubtest_whitelists/py38.txt index 1c800f387..c0f198a86 100644 --- a/tests/stubtest_whitelists/py38.txt +++ b/tests/stubtest_whitelists/py38.txt @@ -198,9 +198,6 @@ pyclbr.Function.__init__ queue.SimpleQueue.__init__ random.Random.getrandbits random.getrandbits -resource.getrlimit -resource.getrusage -resource.setrlimit secrets.SystemRandom.getstate secrets.compare_digest select.epoll.__exit__