From db8da56c788a4924fa9e5b4c866ee84450a33511 Mon Sep 17 00:00:00 2001 From: Victor Stinner Date: Tue, 29 Jul 2014 23:16:04 +0200 Subject: [PATCH] PEP 475: don't deprecate signal.siginterrupt() anymore --- pep-0475.txt | 22 +--------------------- 1 file changed, 1 insertion(+), 21 deletions(-) diff --git a/pep-0475.txt b/pep-0475.txt index 0ab8e9051..ffa2b8cce 100644 --- a/pep-0475.txt +++ b/pep-0475.txt @@ -14,7 +14,7 @@ Abstract ======== Retry system calls failing with the ``EINTR`` error and recompute -timeout if needed. Deprecate the ``signal.siginterrupt()`` function. +timeout if needed. Rationale @@ -173,23 +173,6 @@ Note: The ``selector`` module already retries on ``InterruptedError``, but it doesn't recompute the timeout yet. -Deprecate siginterrupt() ------------------------- - -The function ``signal.siginterrupt()`` becomes useless with this PEP, -it should be deprecated. When ``signal.siginterrupt(signum, False)`` -is used, some system calls don't fail with ``EINTR`` when a signal is -received. Python cannot call its signal handler and interrupt the -system call. - -The function ``signal.siginterrupt()`` will be deprecated in Python -3.5. - -In Python 3.6, calling ``signal.siginterrupt(signum, False)`` will -raise an exception, whereas ``signal.siginterrupt(signum, True)`` will -only emit the deprecation warning. - - Backward Compatibility ====================== @@ -204,9 +187,6 @@ have a reliable behaviour on all platforms and all Python versions. For example, use a signal handle which raises an exception, or use a wakeup file descriptor. -Applications should not call ``signal.siginterrupt(signum, False)`` -anymore, since this call will raise an exception in Python 3.6. - For applications using event loops, ``signal.set_wakeup_fd()`` is the recommanded option to handle signals. The signal handler writes signal numbers into the file descriptor and the event loop is awaken to read