bpo-38493: Add os.CLD_KILLED and os.CLD_STOPPED. (GH-16821)

This commit is contained in:
Dong-hee Na 2019-10-21 16:01:05 +09:00 committed by Serhiy Storchaka
parent a9ed91e6c2
commit 2eba6ad7bf
5 changed files with 29 additions and 0 deletions

View File

@ -3946,8 +3946,10 @@ written in Python, such as a mail server's external command delivery program.
.. data:: CLD_EXITED
CLD_KILLED
CLD_DUMPED
CLD_TRAPPED
CLD_STOPPED
CLD_CONTINUED
These are the possible values for :attr:`si_code` in the result returned by
@ -3957,6 +3959,9 @@ written in Python, such as a mail server's external command delivery program.
.. versionadded:: 3.3
.. versionchanged:: 3.9
Added :data:`CLD_KILLED` and :data:`CLD_STOPPED` values.
.. function:: waitpid(pid, options)

View File

@ -125,6 +125,12 @@ that schedules a shutdown for the default executor that waits on the
:func:`asyncio.run` has been updated to use the new :term:`coroutine`.
(Contributed by Kyle Stanley in :issue:`34037`.)
os
__
Added :data:`~os.CLD_KILLED` and :data:`~os.CLD_STOPPED` for :attr:`si_code`.
(Contributed by Dong-hee Na in :issue:`38493`.)
threading
---------

View File

@ -1226,6 +1226,16 @@ class PosixTester(unittest.TestCase):
finally:
posix.close(f)
@unittest.skipUnless(hasattr(signal, 'SIGCHLD'), 'CLD_XXXX be placed in si_code for a SIGCHLD signal')
@unittest.skipUnless(hasattr(os, 'waitid_result'), "test needs os.waitid_result")
def test_cld_xxxx_constants(self):
os.CLD_EXITED
os.CLD_KILLED
os.CLD_DUMPED
os.CLD_TRAPPED
os.CLD_STOPPED
os.CLD_CONTINUED
@unittest.skipUnless(os.symlink in os.supports_dir_fd, "test needs dir_fd support in os.symlink()")
def test_symlink_dir_fd(self):
f = posix.open(posix.getcwd(), posix.O_RDONLY)

View File

@ -0,0 +1,2 @@
Added :data:`~os.CLD_KILLED` and :data:`~os.CLD_STOPPED` for :attr:`si_code`.
Patch by Dong-hee Na.

View File

@ -14057,12 +14057,18 @@ all_ins(PyObject *m)
#ifdef CLD_EXITED
if (PyModule_AddIntMacro(m, CLD_EXITED)) return -1;
#endif
#ifdef CLD_KILLED
if (PyModule_AddIntMacro(m, CLD_KILLED)) return -1;
#endif
#ifdef CLD_DUMPED
if (PyModule_AddIntMacro(m, CLD_DUMPED)) return -1;
#endif
#ifdef CLD_TRAPPED
if (PyModule_AddIntMacro(m, CLD_TRAPPED)) return -1;
#endif
#ifdef CLD_STOPPED
if (PyModule_AddIntMacro(m, CLD_STOPPED)) return -1;
#endif
#ifdef CLD_CONTINUED
if (PyModule_AddIntMacro(m, CLD_CONTINUED)) return -1;
#endif