[Python-checkins] cpython: subprocess: enhance ResourceWarning message

victor.stinner python-checkins at python.org
Tue Jun 14 10:45:00 EDT 2016


https://hg.python.org/cpython/rev/5bee11956448
changeset:   102037:5bee11956448
user:        Victor Stinner <victor.stinner at gmail.com>
date:        Tue Jun 14 16:42:59 2016 +0200
summary:
  subprocess: enhance ResourceWarning message

* Add the process identifier to the warning message
* Add also a comment to explain the issue

files:
  Lib/subprocess.py |  7 ++++---
  1 files changed, 4 insertions(+), 3 deletions(-)


diff --git a/Lib/subprocess.py b/Lib/subprocess.py
--- a/Lib/subprocess.py
+++ b/Lib/subprocess.py
@@ -993,7 +993,6 @@
 
             raise
 
-
     def _translate_newlines(self, data, encoding):
         data = data.decode(encoding)
         return data.replace("\r\n", "\n").replace("\r", "\n")
@@ -1018,8 +1017,10 @@
             # We didn't get to successfully create a child process.
             return
         if self.returncode is None:
-            warnings.warn("running subprocess %r" % self, ResourceWarning,
-                          source=self)
+            # Not reading subprocess exit status creates a zombi process which
+            # is only destroyed at the parent python process exit
+            warnings.warn("subprocess %s is still running" % self.pid,
+                          ResourceWarning, source=self)
         # In case the child hasn't been waited on, check if it's done.
         self._internal_poll(_deadstate=_maxsize)
         if self.returncode is None and _active is not None:

-- 
Repository URL: https://hg.python.org/cpython


More information about the Python-checkins mailing list