--- id: pbtools version: "0.47.0" license: MIT license_treatment: permissive maintenance: dormant --- # pbtools — Google Protocol Buffers tools. License: permissive · Maintenance: dormant · Downloads: 228.0K/mo ## What it is and what it does pbtools is a Python tool that generates C source code from Protocol Buffer proto3 specifications and includes a proto3 language parser. It targets embedded and performance-sensitive C applications, generating code designed around arena-based memory allocation (no malloc/free), thread safety, and small memory footprint. The tool outputs C structs and encode/decode functions for each protobuf message. The generated C code is intended for scenarios where you need fast, lightweight protobuf serialization without dynamic memory management. You provide a proto3 file, run the code generator, and get C header and source files ready to compile into your application. Known limitations include lack of support for options, gRPC services, reserved fields, and public imports. Use it for: - Generate C protobuf serialization code for embedded systems or microcontrollers with tight memory constraints. - Build command-line tools or utilities that need to parse and validate proto3 definitions at development time. - Create C libraries that encode/decode protobuf messages using arena-based memory for predictable performance. - Integrate protobuf messaging into C applications where dynamic allocation must be avoided or minimized. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Generates C source code from Protocol Buffer proto3 definitions and parses proto3 language files in Python 3.6+. No. The project is dormant with last release on 2023-06-04 and no commits since 2024-04-06, combined with high install friction. Unless you are maintaining legacy code already using pbtools 0.47.0, prefer actively maintained alternatives. ## Install pip install pbtools uv add pbtools poetry add pbtools ## Installing pbtools Before you install: High install friction due to source distribution format. Project is dormant—last release was 2023-06-04, with no commits since 2024-04-06. No active maintenance signal. License in practice: MIT license is permissive; you may use, modify, and distribute this package freely with minimal restrictions, provided you retain the license notice. Quickstart: pip install pbtools pbtools generate_c_source examples/hello_world/hello_world.proto Requires Python 3.6+. Generated C code requires a C compiler and workspace memory management; char must be 8 bits. Verify before relying: - Whether the package works reliably with modern Python versions beyond 3.6. - Current status of known limitations (options, services/gRPC, reserved fields, public imports) and whether they affect typical use cases. - Whether high install friction (source distribution) causes build failures on common platforms. ## Package facts - License: MIT (permissive) - Python support: unspecified - Install friction: high - Maintenance: dormant - Downloads: 228.0K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags protobuf code generator, protocol buffers C source, proto3 parser python, generate C from proto, protobuf tools, protobuf, code-generation, embedded-c [View on SkillFed](https://skillfed.io/packages/pbtools) · [View on PyPI](https://pypi.org/project/pbtools/)