{"categories":[{"label":"Dynamic Content","url":"https://skillfed.io/packages/category/internet-www-http-dynamic-content/2"}],"enrichment":{"capability":"Spyne is a framework for building remote procedure call (RPC) services that can expose application logic over multiple protocols (SOAP, REST, JSON, MessagePack) and transports (HTTP, WSGI, Twisted, Django) with a single code definition.","skillfed_tags":["soap-wsdl","multi-protocol-rpc","abandoned"],"use_cases":["Expose legacy business logic as both SOAP and REST endpoints without duplicating service code","Generate WSDL contracts and client stubs for enterprise integration scenarios","Build multi-protocol RPC services that serve SOAP clients, JSON REST clients, and MessagePack consumers from one codebase","Integrate complex database models with automatic serialization and deserialization via SQLAlchemy","Migrate SOAP-based systems to modern transports by keeping service definitions stable while swapping protocol handlers"],"what_it_does":"Spyne is a framework for defining RPC services once and exposing them over multiple protocols and transports without rewriting the service logic. It handles SOAP/WSDL generation, REST endpoints, JSON, MessagePack, and other serialization formats, integrating with WSGI, Twisted, Django, and other Python web stacks. The core idea is to let you define your service interface using Python decorators and type hints, then automatically generate the protocol-specific plumbing\u2014WSDL documents, serializers, deserializers, and transport handlers.\n\nThe framework supports complex data models through SQLAlchemy integration, handles polymorphic types, manages relationships, and provides both synchronous and asynchronous execution paths. It has been in production use since 2012 and claims to support Python 2.7 and 3.6 through 3.10, though active development ceased around 2022. No runtime dependencies are required for basic use, though specific transports (Twisted, Django) and features (SQLAlchemy ORM mapping) require optional integration.","worth_installing":"No. Spyne is abandoned (1653 days without release) and carries high install friction. While it works with modern Python versions and has no known vulnerabilities, the lack of active maintenance means security patches, compatibility fixes, and feature updates are unlikely. For new projects, choose an actively maintained alternative like FastAPI, gRPC, or a dedicated SOAP library. For existing Spyne deployments, plan a migration path."},"id":"spyne","links":{"html":"https://skillfed.io/packages/spyne","md":"https://skillfed.io/packages/spyne.md","pypi":"https://pypi.org/project/spyne/"},"maintenance":{"status":"abandoned"},"meta":{"latest_release":"2022-02-03","license_spdx":null,"license_treatment":"copyleft","name":"spyne","python_support":"unspecified","summary":"A transport and architecture agnostic rpc library that focuses on exposing public services with a well-defined API."},"popularity":{"monthly_downloads":232680,"position":9057,"tier":"top_15000"},"security":{"n_vulnerabilities":0},"version":"2.14.0"}
