]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
Debug output is now printed to sys.stderr .
authorBrett Cannon <bcannon@gmail.com>
Sat, 10 Jul 2004 23:14:30 +0000 (23:14 +0000)
committerBrett Cannon <bcannon@gmail.com>
Sat, 10 Jul 2004 23:14:30 +0000 (23:14 +0000)
Closes bug #980938.

Lib/smtplib.py
Misc/NEWS

index daadee2c344e8e636c91e0d3bedf0c7414d626fd..2e124838850f0bac1979257343540bbf4c3a8012 100755 (executable)
@@ -47,6 +47,7 @@ import rfc822
 import base64
 import hmac
 from email.base64MIME import encode as encode_base64
+from sys import stderr
 
 __all__ = ["SMTPException","SMTPServerDisconnected","SMTPResponseException",
            "SMTPSenderRefused","SMTPRecipientsRefused","SMTPDataError",
@@ -282,17 +283,17 @@ class SMTP:
                 except ValueError:
                     raise socket.error, "nonnumeric port"
         if not port: port = SMTP_PORT
-        if self.debuglevel > 0: print 'connect:', (host, port)
+        if self.debuglevel > 0: print>>stderr, 'connect:', (host, port)
         msg = "getaddrinfo returns an empty list"
         self.sock = None
         for res in socket.getaddrinfo(host, port, 0, socket.SOCK_STREAM):
             af, socktype, proto, canonname, sa = res
             try:
                 self.sock = socket.socket(af, socktype, proto)
-                if self.debuglevel > 0: print 'connect:', (host, port)
+                if self.debuglevel > 0: print>>stderr, 'connect:', (host, port)
                 self.sock.connect(sa)
             except socket.error, msg:
-                if self.debuglevel > 0: print 'connect fail:', (host, port)
+                if self.debuglevel > 0: print>>stderr, 'connect fail:', (host, port)
                 if self.sock:
                     self.sock.close()
                 self.sock = None
@@ -301,12 +302,12 @@ class SMTP:
         if not self.sock:
             raise socket.error, msg
         (code, msg) = self.getreply()
-        if self.debuglevel > 0: print "connect:", msg
+        if self.debuglevel > 0: print>>stderr, "connect:", msg
         return (code, msg)
 
     def send(self, str):
         """Send `str' to the server."""
-        if self.debuglevel > 0: print 'send:', repr(str)
+        if self.debuglevel > 0: print>>stderr, 'send:', repr(str)
         if self.sock:
             try:
                 self.sock.sendall(str)
@@ -345,7 +346,7 @@ class SMTP:
             if line == '':
                 self.close()
                 raise SMTPServerDisconnected("Connection unexpectedly closed")
-            if self.debuglevel > 0: print 'reply:', repr(line)
+            if self.debuglevel > 0: print>>stderr, 'reply:', repr(line)
             resp.append(line[4:].strip())
             code=line[:3]
             # Check that the error code is syntactically correct.
@@ -361,7 +362,7 @@ class SMTP:
 
         errmsg = "\n".join(resp)
         if self.debuglevel > 0:
-            print 'reply: retcode (%s); Msg: %s' % (errcode,errmsg)
+            print>>stderr, 'reply: retcode (%s); Msg: %s' % (errcode,errmsg)
         return errcode, errmsg
 
     def docmd(self, cmd, args=""):
@@ -474,7 +475,7 @@ class SMTP:
         """
         self.putcmd("data")
         (code,repl)=self.getreply()
-        if self.debuglevel >0 : print "data:", (code,repl)
+        if self.debuglevel >0 : print>>stderr, "data:", (code,repl)
         if code != 354:
             raise SMTPDataError(code,repl)
         else:
@@ -484,7 +485,7 @@ class SMTP:
             q = q + "." + CRLF
             self.send(q)
             (code,msg)=self.getreply()
-            if self.debuglevel >0 : print "data:", (code,msg)
+            if self.debuglevel >0 : print>>stderr, "data:", (code,msg)
             return (code,msg)
 
     def verify(self, address):
index 8260e636efa924db75e545251793bf7f9f8a1e02..73abaa4a203d0d20d903da69964f59ec61619738 100644 (file)
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -29,6 +29,8 @@ Extension modules
 Library
 -------
 
+- Bug #980938: smtplib now prints debug output to sys.stderr.
+
 - Bug #930024: posixpath.realpath() now handles infinite loops in symlinks by
   returning the last point in the path that was not part of any loop.  Thanks
   AM Kuchling.