changeset 26673:ab1af5e7d734

mail: drop python 2.5 support
author timeless@mozdev.org
date Wed, 14 Oct 2015 22:21:05 -0400
parents 90df14eb3d0e
children fd4a38bd7e49
files mercurial/mail.py
diffstat 1 files changed, 20 insertions(+), 24 deletions(-) [+]
line wrap: on
line diff
--- a/mercurial/mail.py	Tue Oct 13 22:53:08 2015 -0700
+++ b/mercurial/mail.py	Wed Oct 14 22:21:05 2015 -0400
@@ -70,31 +70,27 @@
             self.does_esmtp = 0
         return (resp, reply)
 
-if util.safehasattr(smtplib.SMTP, '_get_socket'):
-    class SMTPS(smtplib.SMTP):
-        '''Derived class to verify the peer certificate for SMTPS.
-
-        This class allows to pass any keyword arguments to SSL socket creation.
-        '''
-        def __init__(self, sslkwargs, keyfile=None, certfile=None, **kwargs):
-            self.keyfile = keyfile
-            self.certfile = certfile
-            smtplib.SMTP.__init__(self, **kwargs)
-            self.default_port = smtplib.SMTP_SSL_PORT
-            self._sslkwargs = sslkwargs
+class SMTPS(smtplib.SMTP):
+    '''Derived class to verify the peer certificate for SMTPS.
 
-        def _get_socket(self, host, port, timeout):
-            if self.debuglevel > 0:
-                print >> sys.stderr, 'connect:', (host, port)
-            new_socket = socket.create_connection((host, port), timeout)
-            new_socket = sslutil.wrapsocket(new_socket,
-                                            self.keyfile, self.certfile,
-                                            **self._sslkwargs)
-            self.file = smtplib.SSLFakeFile(new_socket)
-            return new_socket
-else:
-    def SMTPS(sslkwargs, keyfile=None, certfile=None, **kwargs):
-        raise error.Abort(_('SMTPS requires Python 2.6 or later'))
+    This class allows to pass any keyword arguments to SSL socket creation.
+    '''
+    def __init__(self, sslkwargs, keyfile=None, certfile=None, **kwargs):
+        self.keyfile = keyfile
+        self.certfile = certfile
+        smtplib.SMTP.__init__(self, **kwargs)
+        self.default_port = smtplib.SMTP_SSL_PORT
+        self._sslkwargs = sslkwargs
+
+    def _get_socket(self, host, port, timeout):
+        if self.debuglevel > 0:
+            print >> sys.stderr, 'connect:', (host, port)
+        new_socket = socket.create_connection((host, port), timeout)
+        new_socket = sslutil.wrapsocket(new_socket,
+                                        self.keyfile, self.certfile,
+                                        **self._sslkwargs)
+        self.file = smtplib.SSLFakeFile(new_socket)
+        return new_socket
 
 def _smtp(ui):
     '''build an smtp connection and return a function to send mail'''