Patch 7.4.1234
Problem: Demo server only runs with Python 2.
Solution: Make it run with Python 3 as well. (Ken Takata)
Files: runtime/tools/demoserver.py
*** ../vim-7.4.1233/runtime/tools/demoserver.py 2016-01-28 22:36:15.056065002
+0100
--- runtime/tools/demoserver.py 2016-02-01 21:54:33.388772528 +0100
***************
*** 11,59 ****
#
# See ":help channel-demo" in Vim.
! import SocketServer
import json
import socket
import sys
import threading
thesocket = None
! class ThreadedTCPRequestHandler(SocketServer.BaseRequestHandler):
def handle(self):
! print "=== socket opened ==="
global thesocket
thesocket = self.request
while True:
try:
! data = self.request.recv(4096)
except socket.error:
! print "=== socket error ==="
break
except IOError:
! print "=== socket closed ==="
break
if data == '':
! print "=== socket closed ==="
break
! print "received: {}".format(data)
try:
decoded = json.loads(data)
except ValueError:
! print "json decoding failed"
! decoded = [0, '']
! if decoded[1] == 'hello!':
! response = "got it"
! else:
! response = "what?"
! encoded = json.dumps([decoded[0], response])
! print "sending {}".format(encoded)
! self.request.sendall(encoded)
thesocket = None
! class ThreadedTCPServer(SocketServer.ThreadingMixIn, SocketServer.TCPServer):
pass
if __name__ == "__main__":
--- 11,69 ----
#
# See ":help channel-demo" in Vim.
! from __future__ import print_function
import json
import socket
import sys
import threading
+ try:
+ # Python 3
+ import socketserver
+ except ImportError:
+ # Python 2
+ import SocketServer as socketserver
+
thesocket = None
! class ThreadedTCPRequestHandler(socketserver.BaseRequestHandler):
def handle(self):
! print("=== socket opened ===")
global thesocket
thesocket = self.request
while True:
try:
! data = self.request.recv(4096).decode('utf-8')
except socket.error:
! print("=== socket error ===")
break
except IOError:
! print("=== socket closed ===")
break
if data == '':
! print("=== socket closed ===")
break
! print("received: {}".format(data))
try:
decoded = json.loads(data)
except ValueError:
! print("json decoding failed")
! decoded = [-1, '']
! # Send a response if the sequence number is positive.
! # Negative numbers are used for "eval" responses.
! if decoded[0] >= 0:
! if decoded[1] == 'hello!':
! response = "got it"
! else:
! response = "what?"
! encoded = json.dumps([decoded[0], response])
! print("sending {}".format(encoded))
! self.request.sendall(encoded.encode('utf-8'))
thesocket = None
! class ThreadedTCPServer(socketserver.ThreadingMixIn, socketserver.TCPServer):
pass
if __name__ == "__main__":
***************
*** 69,87 ****
# Exit the server thread when the main thread terminates
server_thread.daemon = True
server_thread.start()
! print "Server loop running in thread: ", server_thread.name
! print "Listening on port {}".format(PORT)
while True:
typed = sys.stdin.readline()
if "quit" in typed:
! print "Goodbye!"
break
if thesocket is None:
! print "No socket yet"
else:
! print "sending {}".format(typed)
! thesocket.sendall(typed)
server.shutdown()
server.server_close()
--- 79,97 ----
# Exit the server thread when the main thread terminates
server_thread.daemon = True
server_thread.start()
! print("Server loop running in thread: ", server_thread.name)
! print("Listening on port {}".format(PORT))
while True:
typed = sys.stdin.readline()
if "quit" in typed:
! print("Goodbye!")
break
if thesocket is None:
! print("No socket yet")
else:
! print("sending {}".format(typed))
! thesocket.sendall(typed.encode('utf-8'))
server.shutdown()
server.server_close()
*** ../vim-7.4.1233/src/version.c 2016-02-01 21:47:06.749437720 +0100
--- src/version.c 2016-02-01 21:55:46.456009503 +0100
***************
*** 744,745 ****
--- 744,747 ----
{ /* Add new patch number below this line */
+ /**/
+ 1234,
/**/
--
hundred-and-one symptoms of being an internet addict:
92. It takes you two hours to check all 14 of your mailboxes.
/// Bram Moolenaar -- [email protected] -- http://www.Moolenaar.net \\\
/// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\ an exciting new programming language -- http://www.Zimbu.org ///
\\\ help me help AIDS victims -- http://ICCF-Holland.org ///
--
--
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
---
You received this message because you are subscribed to the Google Groups
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.