{"categories":[{"label":"Distributed Computing","url":"https://skillfed.io/packages/category/system-distributed-computing/2"},{"label":"Networking","url":"https://skillfed.io/packages/category/system-networking"},{"label":"Object Brokering","url":"https://skillfed.io/packages/category/software-development-object-brokering"}],"enrichment":{"capability":"Pyro5 enables remote method calls on Python objects across a network, letting you invoke methods on objects running on other machines as if they were local.","skillfed_tags":["distributed-systems","rpc","networking"],"use_cases":["Build a distributed system where computational tasks run on remote servers and are invoked from a central coordinator using normal Python method syntax.","Create a multi-machine application where objects on different hosts need to communicate transparently without explicit socket or RPC boilerplate.","Implement inter-process communication between Python processes on the same machine or across a network using a name server for dynamic object discovery.","Develop services that expose Python objects and clients invoke methods remotely with automatic serialization and error propagation.","Stream large datasets on-demand from a remote object using remote iterators instead of loading entire collections into memory upfront."],"what_it_does":"Pyro5 is a pure-Python library that lets you build distributed applications where objects communicate over a network using normal Python method calls. Instead of writing custom network code, you expose Python objects and call methods on them remotely as if they were local\u2014Pyro handles locating the object, serializing arguments, transmitting the call, and returning results. It supports multiple serializers (serpent, json, marshal, msgpack), secure SSL/TLS connections, IPv4/IPv6 and Unix domain sockets, and includes a name server for tracking object locations.\n\nThe library is designed for ease of use while offering advanced features like automatic reconnection, remote iterators, batched invocations, one-way calls, and correlation IDs for tracing. It has a stable foundation built on over 20 years of Pyro history and runs on CPython 3 and PyPy 3 across different platforms and architectures. The project is currently in low maintenance mode, meaning new features are unlikely but reported bugs are addressed.","worth_installing":"Yes, if you need straightforward remote method invocation in a distributed Python system. Pyro5 is mature, permissively licensed, has low install friction, and carries no known vulnerabilities. The trade-off is its low-maintenance status: expect bug fixes but not active feature development. It is well-suited for applications that do not require cutting-edge async patterns or frequent library updates."},"id":"pyro5","links":{"html":"https://skillfed.io/packages/pyro5","md":"https://skillfed.io/packages/pyro5.md","pypi":"https://pypi.org/project/pyro5/"},"maintenance":{"status":"active"},"meta":{"latest_release":"2026-06-19","license_spdx":null,"license_treatment":"permissive","name":"Pyro5","python_support":"supports_current","summary":"Remote object communication library, fifth major version"},"popularity":{"monthly_downloads":374075,"position":7149,"tier":"top_15000"},"security":{"n_vulnerabilities":0},"version":"5.17"}
