$npx skillfedfor your agent

thriftpy2

Pure python implementation of Apache Thrift.

Worth itPyPI Software DevelopmentReleased Aug 20261.7M downloads / mopermissive licensePlatform wheel

Decision gist · record as of 2026-08-14

platform wheels — thriftpy2-0.7.0-cp310-cp310-macosx_11_0_arm64.whl · thriftpy2-0.7.0-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl · thriftpy2-0.7.0-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
v0.7.0 · released 2026-08-09 · Python >=3.7 · 3 runtime deps: ply, ijson, typing_extensions

Yes. ThriftPy2 is actively maintained, has no known vulnerabilities, supports current Python versions (3.7+), and is widely used (top 5000 PyPI packages). Install it if you need Thrift RPC without compilation overhead. Medium install friction is acceptable given the broad platform coverage and stability.AI-flagged interpretation of the facts on this page — verify before relying

Before you install

  • Requires a .thrift file defining your service interface; Python 3.7 or later
  • Medium install friction due to compiled wheels for multiple Python versions and platforms.
  • The package is actively maintained with a recent release and no known vulnerabilities, making it a stable choice for production use.

License · maintenance · safety

permissive license (permissive) — MIT license permits unrestricted use, modification, and distribution in both open-source and commercial projects, with only attribution and license inclusion required.

last release 2026-08-09 (5 days) · last repo commit 2026-08-11 · 588 stars

0 known vulnerabilities (OSV.dev, 2026-08-14) · 1,677,333 downloads/mo, #3,662 on PyPI

Verify before relying

pip install thriftpy2

import thriftpy2
from thriftpy2.rpc import make_server

pingpong_thrift = thriftpy2.load("pingpong.thrift", module_name="pingpong_thrift")

class Dispatcher:
    def ping(self):
        return "pong"

server = make_server(pingpong_thrift.PingPong, Dispatcher(), '127.0.0.1', 6000)
server.serve()
  • Performance characteristics compared to official Apache Thrift implementation
  • Completeness of Cython optimization coverage across all protocols and transports
Same gist for agents: .md · .json

What it is and what it does

ThriftPy2 is a pure Python Thrift implementation that eliminates the need to compile or install the official Thrift package. You define your service interface in a .thrift file, then load it dynamically at runtime using thriftpy2.load(), which generates Python classes on the fly. This approach works with both synchronous and asynchronous code paths, supporting multiple protocols (binary, compact, JSON, Apache JSON) and transports (buffered, framed, HTTP).

The package is designed for developers building microservices or distributed systems who want the flexibility of Thrift's language-agnostic RPC without the compilation step. It includes helpers like make_server, make_client, make_aio_server, and make_aio_client to simplify server and client setup. Runtime dependencies are minimal: ply for parsing, ijson for JSON handling, and typing_extensions for type hints.

Use it for

  • Build RPC microservices that communicate with Thrift-based servers written in other languages
  • Dynamically load and parse Thrift service definitions at application startup without code generation
  • Create async/await-based Thrift servers and clients for high-concurrency applications
  • Migrate from the deprecated ThriftPy package by changing imports to thriftpy2
  • Implement HTTP-based Thrift transports for services behind load balancers or proxies

Worth the install?

AI-flagged interpretation of the facts on this page. Verify before relying on it.

Worth it

Yes.

ThriftPy2 is actively maintained, has no known vulnerabilities, supports current Python versions (3.7+), and is widely used (top 5000 PyPI packages). Install it if you need Thrift RPC without compilation overhead. Medium install friction is acceptable given the broad platform coverage and stability.

Install

thriftpy2 on PyPI

Before you install

Medium install friction due to compiled wheels for multiple Python versions and platforms. The package is actively maintained with a recent release and no known vulnerabilities, making it a stable choice for production use.

Requires a .thrift file defining your service interface; Python 3.7 or later

License in practice

MIT license permits unrestricted use, modification, and distribution in both open-source and commercial projects, with only attribution and license inclusion required.

Quickstart

pip install thriftpy2

import thriftpy2
from thriftpy2.rpc import make_server

pingpong_thrift = thriftpy2.load("pingpong.thrift", module_name="pingpong_thrift")

class Dispatcher:
    def ping(self):
        return "pong"

server = make_server(pingpong_thrift.PingPong, Dispatcher(), '127.0.0.1', 6000)
server.serve()

Verify before relying

  • Performance characteristics compared to official Apache Thrift implementation
  • Completeness of Cython optimization coverage across all protocols and transports

Package facts

Licensepermissive license permissive
Python supportSupports the current Python release >=3.7
Install frictionMedium. Platform-specific wheel
Runtime dependencies
3 packages
plyijsontyping_extensions
MaintenanceActively maintained 5 days since the last release
Last repo commit
First released
Downloads1,677,333 / month, #3,662 on PyPI 30-day window, as of 2026-08-14
Known vulnerabilitiesNone known OSV.dev, checked 2026-08-14
Classifiers
Development Status :: 4 - BetaIntended Audience :: DevelopersLicense :: OSI Approved :: MIT LicenseProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Programming Language :: Python :: 3.7Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9Programming Language :: Python :: Implementation :: CPythonProgramming Language :: Python :: Implementation :: PyPyTopic :: Software Development

Evidence: thriftpy2-0.7.0-cp310-cp310-macosx_11_0_arm64.whl; thriftpy2-0.7.0-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl; thriftpy2-0.7.0-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl; thriftpy2-0.7.0-cp310-cp310-musllinux_1_2_aarch64.whl; thriftpy2-0.7.0-cp310-cp310-musllinux_1_2_x86_64.whl; thriftpy2-0.7.0-cp310-cp310-win32.whl; thriftpy2-0.7.0-cp310-cp310-win_amd64.whl; thriftpy2-0.7.0-cp310-cp310-win_arm64.whl; thriftpy2-0.7.0-cp311-cp311-macosx_11_0_arm64.whl; thriftpy2-0.7.0-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl; thriftpy2-0.7.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl; thriftpy2-0.7.0-cp311-cp311-musllinux_1_2_aarch64.whl; thriftpy2-0.7.0-cp311-cp311-musllinux_1_2_x86_64.whl; thriftpy2-0.7.0-cp311-cp311-win32.whl; thriftpy2-0.7.0-cp311-cp311-win_amd64.whl; thriftpy2-0.7.0-cp311-cp311-win_arm64.whl; thriftpy2-0.7.0-cp312-cp312-macosx_11_0_arm64.whl; thriftpy2-0.7.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl; thriftpy2-0.7.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl; thriftpy2-0.7.0-cp312-cp312-musllinux_1_2_aarch64.whl

Tags

Capabilities
thrift rpc client serverapache thrift pythonthrift idl loaderrpc protocol implementationthrift without code generationasync thrift serverthrift binary protocol
Topics
rpc-frameworkthrift-protocolasync-support
PyPI keywords
thriftpythonthriftpythriftpy2

Let your AI agent find packages like this

Example. Real query, live index.

You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.

wish › “thrift rpc client server”

  • thriftpy2ThriftPy2 is a pure Python implementation of Apache Thrift that lets…
  • thriftThrift is the Python bindings for Apache Thrift, an RPC framework…
  • thrift-saslImplements SASL authentication transports for Thrift RPC clients,…

Give your agent the search over MCP, or paste the wish link into any chat.

More Software Development packages

typing-extensions Worth it
PyPI · Software Development · released Jul 2026

Provides backported and experimental type hints for Python 3.9+, allowing use of newer typing features on older Python versions and enabling early experimentation with type system PEPs before they enter the standard library.

PSF-2.0pure Python · 3.9+
1.9Bdownloads / mo
numpy Worth it
PyPI · Software Development · released Aug 2026

NumPy provides an N-dimensional array object and a comprehensive suite of mathematical, linear algebra, Fourier transform, and random number functions for scientific computing in Python.

BSD-3-Clause AND 0BSD AND MIT AND Zlib AND CC0-1.0compiled wheel · 3.12+
1.1Bdownloads / mo
fastapi Worth it
PyPI · Software Development · released Jul 2026

FastAPI is a Python web framework for building REST APIs using type hints, with automatic request validation, serialization, and interactive API documentation.

MITpure Python · 3.10+
568.6Mdownloads / mo
annotated-doc With conditions
PyPI · Software Development · released Jul 2026

Provides a way to document function parameters, class attributes, return types, and variables inline using Python's `Annotated` type hint syntax instead of traditional docstrings.

MITpure Python · 3.9+
456.2Mdownloads / mo
typer Worth it
PyPI · Software Development · released Aug 2026

Typer builds command-line applications from Python functions using type hints, automatically generating help text, argument parsing, and shell completion.

Install it if you are building CLIs in Python.

MITpure Python · 3.10+
369.3Mdownloads / mo
distlib With conditions
PyPI · Software Development · released Jun 2026

Distlib provides low-level packaging utilities for building, distributing, and managing Python software—including metadata handling, version specifiers, wheel support, script installation, and dependency resolution.

permissive licensepure Python
323.3Mdownloads / mo

See also thrift-sasl · thrift · pure-transport · hmsclient · ajsonrpc · opentelemetry-exporter-jaeger-thrift · hive-metastore-client · json-rpc · python-lsp-jsonrpc · jsonrpcclient