--- id: pyro4 version: "4.82" license: MIT license_treatment: permissive maintenance: abandoned --- # Pyro4 — distributed object middleware for Python (RPC) License: permissive · Maintenance: abandoned · Downloads: 177.2K/mo ## What it is and what it does Pyro4 is a distributed object middleware library that lets you call methods on Python objects as if they were local, even when they run on different machines. It handles the network communication, object location, and serialization transparently, so you write code that looks like ordinary Python while Pyro4 manages the complexity of finding and executing the remote object. The library is designed for building distributed applications with minimal boilerplate. It supports a wide range of Python data types and method signatures, and runs on multiple platforms and Python versions. However, it has been abandoned since late 2021, with no active maintenance, security updates, or bug fixes—making it a legacy choice suitable only for existing systems or projects where no alternatives are available. Use it for: - Build a distributed system where multiple Python processes on different machines need to share objects and call methods on each other. - Create a simple RPC framework for internal tools or microservices that need lightweight remote object access without heavyweight frameworks. - Implement inter-process communication (IPC) between Python applications on the same network. - Prototype distributed computing scenarios where objects need to be located and invoked remotely with minimal setup. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Pyro4 enables Python objects to communicate over a network using normal method calls, handling remote object location and serialization automatically. No, unless you are maintaining an existing system already using Pyro4. The package is abandoned (last release 2021-12-25) with no active maintenance or security updates. For new projects, choose a maintained alternative like gRPC, FastAPI with async, or another actively supported RPC framework. The low install friction and permissive license do not offset the maintenance risk. ## Install pip install pyro4 uv add pyro4 poetry add pyro4 ## Installing Pyro4 Before you install: Low install friction with only two runtime dependencies (serpent, selectors34). However, the package is abandoned—last release was 2021-12-25, over 1693 days ago. No active maintenance or security updates should be expected. License in practice: MIT license is permissive; you can use, modify, and distribute Pyro4 freely in commercial and private projects with minimal restrictions. Quickstart: pip install Pyro4 import Pyro4 @Pyro4.expose class MyObject: def greet(self, name): return f"Hello, {name}!" uri = Pyro4.Daemon.serveSimple({MyObject: "example.myobject"}) Verify before relying: - Whether selectors34 (a Python 2 backport) is still functional in modern Python environments or if it creates compatibility issues. - Current state of the Github repository and whether community forks or maintained alternatives exist. - Real-world reliability and security posture of the abandoned codebase in production use. ## Package facts - License: MIT (permissive) - Python support: unspecified - Install friction: low - Maintenance: abandoned - Downloads: 177.2K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags distributed object middleware, remote method calls python, RPC framework, python network objects, inter-process communication, distributed computing library, object brokering, legacy, abandoned, rpc [View on SkillFed](https://skillfed.io/packages/pyro4) · [View on PyPI](https://pypi.org/project/pyro4/)