patch 7.4.1621
Problem:    Channel test doesn't work with Python 2.6.
Solution:   Add number in formatting placeholder. (Wiredool)
diff --git a/src/testdir/test_channel.py b/src/testdir/test_channel.py
index ca12007..61e76ec 100644
--- a/src/testdir/test_channel.py
+++ b/src/testdir/test_channel.py
@@ -35,7 +35,7 @@
             if received == '':
                 print("=== socket closed ===")
                 break
-            print("received: {}".format(received))
+            print("received: {0}".format(received))
 
             # We may receive two messages at once. Take the part up to the
             # matching "]" (recognized by finding "][").
@@ -49,7 +49,7 @@
                      used = todo[:splitidx + 1]
                      todo = todo[splitidx + 1:]
                 if used != received:
-                    print("using: {}".format(used))
+                    print("using: {0}".format(used))
 
                 try:
                     decoded = json.loads(used)
@@ -70,48 +70,48 @@
                         # replying to the request.
                         cmd = '["ex","call append(\\"$\\",\\"added1\\")"]'
                         cmd += '["ex","call append(\\"$\\",\\"added2\\")"]'
-                        print("sending: {}".format(cmd))
+                        print("sending: {0}".format(cmd))
                         self.request.sendall(cmd.encode('utf-8'))
                         response = "ok"
                     elif decoded[1] == 'do normal':
                         # Send a normal command.
                         cmd = '["normal","G$s more\u001b"]'
-                        print("sending: {}".format(cmd))
+                        print("sending: {0}".format(cmd))
                         self.request.sendall(cmd.encode('utf-8'))
                         response = "ok"
                     elif decoded[1] == 'eval-works':
                         # Send an eval request.  We ignore the response.
                         cmd = '["expr","\\"foo\\" . 123", -1]'
-                        print("sending: {}".format(cmd))
+                        print("sending: {0}".format(cmd))
                         self.request.sendall(cmd.encode('utf-8'))
                         response = "ok"
                     elif decoded[1] == 'eval-fails':
                         # Send an eval request that will fail.
                         cmd = '["expr","xxx", -2]'
-                        print("sending: {}".format(cmd))
+                        print("sending: {0}".format(cmd))
                         self.request.sendall(cmd.encode('utf-8'))
                         response = "ok"
                     elif decoded[1] == 'eval-error':
                         # Send an eval request that works but the result can't
                         # be encoded.
                         cmd = '["expr","function(\\"tr\\")", -3]'
-                        print("sending: {}".format(cmd))
+                        print("sending: {0}".format(cmd))
                         self.request.sendall(cmd.encode('utf-8'))
                         response = "ok"
                     elif decoded[1] == 'eval-bad':
                         # Send an eval request missing the third argument.
                         cmd = '["expr","xxx"]'
-                        print("sending: {}".format(cmd))
+                        print("sending: {0}".format(cmd))
                         self.request.sendall(cmd.encode('utf-8'))
                         response = "ok"
                     elif decoded[1] == 'malformed1':
                         cmd = '["ex",":"]wrong!["ex","smi"]'
-                        print("sending: {}".format(cmd))
+                        print("sending: {0}".format(cmd))
                         self.request.sendall(cmd.encode('utf-8'))
                         response = "ok"
                     elif decoded[1] == 'malformed2':
                         cmd = '"unterminated string'
-                        print("sending: {}".format(cmd))
+                        print("sending: {0}".format(cmd))
                         self.request.sendall(cmd.encode('utf-8'))
                         response = "ok"
                         # Need to wait for Vim to give up, otherwise the double
@@ -119,7 +119,7 @@
                         time.sleep(0.2)
                     elif decoded[1] == 'malformed3':
                         cmd = '["ex","missing ]"'
-                        print("sending: {}".format(cmd))
+                        print("sending: {0}".format(cmd))
                         self.request.sendall(cmd.encode('utf-8'))
                         response = "ok"
                         # Need to wait for Vim to give up, otherwise the ]
@@ -127,37 +127,37 @@
                         time.sleep(0.2)
                     elif decoded[1] == 'split':
                         cmd = '["ex","let '
-                        print("sending: {}".format(cmd))
+                        print("sending: {0}".format(cmd))
                         self.request.sendall(cmd.encode('utf-8'))
                         time.sleep(0.01)
                         cmd = 'g:split = 123"]'
-                        print("sending: {}".format(cmd))
+                        print("sending: {0}".format(cmd))
                         self.request.sendall(cmd.encode('utf-8'))
                         response = "ok"
                     elif decoded[1] == 'an expr':
                         # Send an expr request.
                         cmd = '["expr","setline(\\"$\\", [\\"one\\",\\"two\\",\\"three\\"])"]'
-                        print("sending: {}".format(cmd))
+                        print("sending: {0}".format(cmd))
                         self.request.sendall(cmd.encode('utf-8'))
                         response = "ok"
                     elif decoded[1] == 'call-func':
                         cmd = '["call","MyFunction",[1,2,3], 0]'
-                        print("sending: {}".format(cmd))
+                        print("sending: {0}".format(cmd))
                         self.request.sendall(cmd.encode('utf-8'))
                         response = "ok"
                     elif decoded[1] == 'redraw':
                         cmd = '["redraw",""]'
-                        print("sending: {}".format(cmd))
+                        print("sending: {0}".format(cmd))
                         self.request.sendall(cmd.encode('utf-8'))
                         response = "ok"
                     elif decoded[1] == 'redraw!':
                         cmd = '["redraw","force"]'
-                        print("sending: {}".format(cmd))
+                        print("sending: {0}".format(cmd))
                         self.request.sendall(cmd.encode('utf-8'))
                         response = "ok"
                     elif decoded[1] == 'empty-request':
                         cmd = '[]'
-                        print("sending: {}".format(cmd))
+                        print("sending: {0}".format(cmd))
                         self.request.sendall(cmd.encode('utf-8'))
                         response = "ok"
                     elif decoded[1] == 'eval-result':
@@ -165,17 +165,17 @@
                         response = last_eval
                     elif decoded[1] == 'call me':
                         cmd = '[0,"we called you"]'
-                        print("sending: {}".format(cmd))
+                        print("sending: {0}".format(cmd))
                         self.request.sendall(cmd.encode('utf-8'))
                         response = "ok"
                     elif decoded[1] == 'call me again':
                         cmd = '[0,"we did call you"]'
-                        print("sending: {}".format(cmd))
+                        print("sending: {0}".format(cmd))
                         self.request.sendall(cmd.encode('utf-8'))
                         response = ""
                     elif decoded[1] == 'send zero':
                         cmd = '[0,"zero index"]'
-                        print("sending: {}".format(cmd))
+                        print("sending: {0}".format(cmd))
                         self.request.sendall(cmd.encode('utf-8'))
                         response = "sent zero"
                     elif decoded[1] == 'close me':
@@ -199,7 +199,7 @@
                         print("no response")
                     else:
                         encoded = json.dumps([decoded[0], response])
-                        print("sending: {}".format(encoded))
+                        print("sending: {0}".format(encoded))
                         self.request.sendall(encoded.encode('utf-8'))
 
                 # Negative numbers are used for "eval" responses.
@@ -212,7 +212,7 @@
 def writePortInFile(port):
     # Write the port number in Xportnr, so that the test knows it.
     f = open("Xportnr", "w")
-    f.write("{}".format(port))
+    f.write("{0}".format(port))
     f.close()
 
 if __name__ == "__main__":
@@ -238,7 +238,7 @@
 
     writePortInFile(port)
 
-    print("Listening on port {}".format(port))
+    print("Listening on port {0}".format(port))
 
     # Main thread terminates, but the server continues running
     # until server.shutdown() is called.
diff --git a/src/version.c b/src/version.c
index 95067e9..cb8b971 100644
--- a/src/version.c
+++ b/src/version.c
@@ -749,6 +749,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    1621,
+/**/
     1620,
 /**/
     1619,