Virtualenv-based automation of test activities
The Pushy package provides applicaton developers with a simple interface for connecting two Python interpreters, either on the local host, or over a network. Once connected, the interpreters may access objects in each other, as if they were local. Where objects are mutable (i.e. may change over time), then objects are “proxied”. This means that a local object is created that mirrors the remote object, and sends all local function/attribute access calls to the remote object. Special care has been taken to proxy builtin types properly, so that proxied objects may be passed to Python’s various builtin functions.
Pushy contains multiple transports for connecting interpreters, as well as a means for users to provide their own transport modules. Builtin transports are provided for connecting to local interpreters, and to remote interpreters via SSH, named pipes (using SMB) on Microsoft Windows, and over plain old TCP/IP sockets (using daemon).