plum-py
Pack/Unpack Memory.
Decision gist · record as of 2026-08-14
Yes, if you need binary pack/unpack functionality and can accept that the package is no longer maintained. The code is stable and has no known vulnerabilities, but you should plan for potential incompatibility with future Python versions and lack of support for bug reports. For new projects with long-term support requirements, consider whether the standard library struct module better fits your risk tolerance.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires Python 3.6 or later; package is abandoned as of August 2023 with no ongoing maintenance.
- Installation is straightforward with no runtime dependencies.
- However, the package is marked as abandoned with no commits since 1096 days ago, meaning no active maintenance or bug fixes are being applied.
License · maintenance · safety
permissive license (permissive) — Licensed under MIT (permissive), so you can use, modify, and distribute it freely with minimal restrictions, though you must include the license notice.
last release 2023-08-14 (1096 days)
0 known vulnerabilities (OSV.dev, 2026-08-14) · 118,331 downloads/mo, #12,123 on PyPI
Alternatives
Verify before relying
pip install plum-py
import plum
# Create a format and pack/unpack data
fmt = plum.Format('...') # define format specifiers
packed = fmt.pack(data)
unpacked = fmt.unpack(packed)- Whether the package remains compatible with Python versions beyond 3.11 as they are released
- Whether the extensibility mechanism and custom format specifiers are well-documented or require reverse-engineering
- Real-world performance characteristics compared to struct module for typical use cases
What it is and what it does
plum-py is a Python library for serializing and deserializing binary data—converting byte sequences to Python objects and back again. It works similarly to Python's built-in struct module but offers a broader set of format specifiers and allows you to define your own custom formats, making it useful for working with complex binary protocols, file formats, or network data without writing low-level bit manipulation code.
The package has no runtime dependencies and installs cleanly as a pure Python wheel. It supports Python 3.6 and later, including versions through 3.11. However, it has been abandoned since August 2023 with no recent commits, so while it is marked as production-stable, no active maintenance or updates are being made to address future Python compatibility or bugs.
Use it for
- Parse binary network protocols or message formats where you need to unpack structured byte data into Python objects
- Serialize Python data structures into binary form for storage or transmission over a wire
- Define custom binary format specifiers for domain-specific file formats or embedded system communication
- Replace or extend the standard library struct module when you need more format options or extensibility
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you need binary pack/unpack functionality and can accept that the package is no longer maintained.
The code is stable and has no known vulnerabilities, but you should plan for potential incompatibility with future Python versions and lack of support for bug reports. For new projects with long-term support requirements, consider whether the standard library struct module better fits your risk tolerance.
Install
plum-py on PyPI
Before you install
Installation is straightforward with no runtime dependencies. However, the package is marked as abandoned with no commits since 1096 days ago, meaning no active maintenance or bug fixes are being applied.
Requires Python 3.6 or later; package is abandoned as of August 2023 with no ongoing maintenance.
License in practice
Licensed under MIT (permissive), so you can use, modify, and distribute it freely with minimal restrictions, though you must include the license notice.
Quickstart
pip install plum-py
import plum
# Create a format and pack/unpack data
fmt = plum.Format('...') # define format specifiers
packed = fmt.pack(data)
unpacked = fmt.unpack(packed)
Verify before relying
- Whether the package remains compatible with Python versions beyond 3.11 as they are released
- Whether the extensibility mechanism and custom format specifiers are well-documented or require reverse-engineering
- Real-world performance characteristics compared to struct module for typical use cases
Package facts
| License | permissive license permissive |
| Python support | Supports the current Python release >=3.6 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | None |
| Maintenance | Abandoned 1,096 days since the last release |
| First released | |
| Downloads | 118,331 / month, #12,123 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 5 - Production/StableLicense :: OSI Approved :: MIT LicenseOperating System :: OS IndependentProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.7Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9 |
Evidence: plum_py-0.8.7-py3-none-any.whl
Tags
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 › “pack unpack bytes python”
- plum-pyTransforms byte sequences into Python objects and back using…
- constructConstruct is a declarative parser and builder for binary data that…
- bitstructPacks and unpacks Python values into bit-level binary structures,…
Give your agent the search over MCP, or paste the wish link into any chat.
More Software Development packages
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.
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.
FastAPI is a Python web framework for building REST APIs using type hints, with automatic request validation, serialization, and interactive API documentation.
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.
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.
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.
See also bitstruct · msgpack · kaitaistruct · cbitstruct · android_backup · pycstruct · construct-classes · PyByteBuffer · fasttransform · paradict