1""" 2:: 3 4 ##### ##### #### 5 ## ## ## ## ## #### 6 ## ## ## ## ## # 7 ##### ##### ## ## ## ## 8 ## ## ## ## ## ## # 9 ## ## ## ### ## ### 10 ## ## ## ## ##### 11 -------------------- ## ------------------------------------------ 12 ## 13 14Remote Python Call (RPyC) 15Licensed under the MIT license (see `LICENSE` file) 16 17A transparent, symmetric and light-weight RPC and distributed computing 18library for python. 19 20Usage:: 21 22 >>> import rpyc 23 >>> c = rpyc.connect_by_service("SERVICENAME") 24 >>> print c.root.some_function(1, 2, 3) 25 26Classic-style usage:: 27 28 >>> import rpyc 29 >>> # `hostname` is assumed to be running a slave-service server 30 >>> c = rpyc.classic.connect("hostname") 31 >>> print c.execute("x = 5") 32 None 33 >>> print c.eval("x + 2") 34 7 35 >>> print c.modules.os.listdir(".") #doctest: +ELLIPSIS 36 [...] 37 >>> print c.modules["xml.dom.minidom"].parseString("<a/>") #doctest: +ELLIPSIS 38 <xml.dom.minidom.Document instance at ...> 39 >>> f = c.builtin.open("foobar.txt", "rb") #doctest: +SKIP 40 >>> print f.read(100) #doctest: +SKIP 41 ... 42 43""" 44# flake8: noqa: F401 45from rpyc.core import (SocketStream, TunneledSocketStream, PipeStream, Channel, 46 Connection, Service, BaseNetref, AsyncResult, GenericException, 47 AsyncResultTimeout, VoidService, SlaveService, MasterService, ClassicService) 48from rpyc.utils.factory import (connect_stream, connect_channel, connect_pipes, 49 connect_stdpipes, connect, ssl_connect, discover, connect_by_service, connect_subproc, 50 connect_thread, ssh_connect) 51from rpyc.utils.helpers import async_, timed, buffiter, BgServingThread, restricted 52from rpyc.utils import classic 53from rpyc.version import version as __version__ 54 55from rpyc.lib import setup_logger, spawn 56from rpyc.utils.server import OneShotServer, ThreadedServer, ThreadPoolServer, ForkingServer 57 58__author__ = "Tomer Filiba (tomerfiliba@gmail.com)" 59 60globals()['async'] = async_ # backward compatibility 61