$npx skillfedfor your agent

ormsgpack

Fast, correct Python msgpack library supporting dataclasses, datetimes, and numpy

Worth itPyPI Released Jan 202652.7M downloads / moApache-2.0 OR MITPlatform wheel

Decision gist · record as of 2026-08-14

platform wheels — ormsgpack-1.12.2-cp310-cp310-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl · ormsgpack-1.12.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl · ormsgpack-1.12.2-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
v1.12.2 · released 2026-01-18 · Python >=3.10

Yes. ormsgpack is actively maintained, has no known vulnerabilities, supports current Python versions (3.10 or newer), and is widely used (top 1000 PyPI by downloads). Install it if you need fast, type-aware MessagePack serialization for dataclasses, datetimes, or numpy arrays. The medium install friction (compiled Rust dependency) is offset by pre-built wheels for common platforms and the performance gain over pure-Python alternatives.AI-flagged interpretation of the facts on this page — verify before relying

Before you install

  • Requires Python 3.10 or newer.
  • Source builds require Rust 1.81 or newer and maturin.
  • Medium install friction due to compiled Rust components; pre-built wheels cover common platforms (CPython 3.10–3.12, macOS, Linux, Windows, ARM), but source builds require Rust 1.81 or newer and maturin.

License · maintenance · safety

Apache-2.0 OR MIT (permissive) — Licensed under Apache-2.0 OR MIT (permissive dual license), allowing use in both open-source and proprietary projects with minimal restrictions.

last release 2026-01-18 (208 days) · last repo commit 2026-08-13 · 400 stars

0 known vulnerabilities (OSV.dev, 2026-08-14) · 52,745,996 downloads/mo, #557 on PyPI

Verify before relying

import ormsgpack
import datetime

event = {"type": "put", "time": datetime.datetime(1970, 1, 1)}
packed = ormsgpack.packb(event)
unpacked = ormsgpack.unpackb(packed)
  • Performance benchmarks against standard msgpack or other serializers in real-world workloads
  • Memory overhead or limits for very large objects or arrays
  • Compatibility guarantees with different MessagePack protocol versions
  • How datetime objects are formatted in the packed output
Same gist for agents: .md · .json

What it is and what it does

ormsgpack is a MessagePack serialization library written in Rust and exposed to Python, designed for speed and correctness. It serializes Python objects—including dataclasses, datetimes, and numpy arrays—into the compact MessagePack binary format and deserializes them back. The library is derived from orjson and follows semantic versioning, supporting CPython, PyPy, and GraalPy across multiple platforms.

You use it when you need to exchange structured data efficiently over networks or storage, or when you want faster serialization than the standard library's json or pickle modules. It handles type conversions transparently and offers options like OPT_SERIALIZE_NUMPY to control how specific types are encoded.

Use it for

  • Serialize and deserialize structured data in web APIs or microservices to reduce bandwidth and latency
  • Store Python objects in binary format for caching or persistence with smaller file sizes than JSON
  • Encode numpy arrays and dataclasses for efficient data exchange in scientific or data-processing pipelines
  • Replace pickle for untrusted data sources, since MessagePack is a simpler, safer format
  • Optimize message passing in distributed systems or message queues by reducing serialization overhead

Worth the install?

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

Worth it

Yes.

ormsgpack is actively maintained, has no known vulnerabilities, supports current Python versions (3.10 or newer), and is widely used (top 1000 PyPI by downloads). Install it if you need fast, type-aware MessagePack serialization for dataclasses, datetimes, or numpy arrays. The medium install friction (compiled Rust dependency) is offset by pre-built wheels for common platforms and the performance gain over pure-Python alternatives.

Install

ormsgpack on PyPI

Before you install

Medium install friction due to compiled Rust components; pre-built wheels cover common platforms (CPython 3.10–3.12, macOS, Linux, Windows, ARM), but source builds require Rust 1.81 or newer and maturin. Repository is active with recent commits and no known vulnerabilities.

Requires Python 3.10 or newer. Source builds require Rust 1.81 or newer and maturin.

License in practice

Licensed under Apache-2.0 OR MIT (permissive dual license), allowing use in both open-source and proprietary projects with minimal restrictions.

Quickstart

import ormsgpack
import datetime

event = {"type": "put", "time": datetime.datetime(1970, 1, 1)}
packed = ormsgpack.packb(event)
unpacked = ormsgpack.unpackb(packed)

Verify before relying

  • Performance benchmarks against standard msgpack or other serializers in real-world workloads
  • Memory overhead or limits for very large objects or arrays
  • Compatibility guarantees with different MessagePack protocol versions
  • How datetime objects are formatted in the packed output

Package facts

LicenseApache-2.0 OR MIT permissive
Python supportSupports the current Python release >=3.10
Install frictionMedium. Platform-specific wheel
Runtime dependenciesNone
MaintenanceActively maintained 208 days since the last release
Last repo commit
First released
Downloads52,745,996 / month, #557 on PyPI 30-day window, as of 2026-08-14
Known vulnerabilitiesNone known OSV.dev, checked 2026-08-14
Classifiers
Development Status :: 5 - Production/StableIntended Audience :: DevelopersLicense :: OSI Approved :: Apache Software LicenseLicense :: OSI Approved :: MIT LicenseOperating System :: MacOSOperating System :: Microsoft :: WindowsOperating System :: POSIX :: LinuxProgramming Language :: PythonProgramming 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 :: Implementation :: CPythonProgramming Language :: Python :: Implementation :: GraalPyProgramming Language :: Python :: Implementation :: PyPyProgramming Language :: RustTyping :: Typed

Evidence: ormsgpack-1.12.2-cp310-cp310-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl; ormsgpack-1.12.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl; ormsgpack-1.12.2-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl; ormsgpack-1.12.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl; ormsgpack-1.12.2-cp310-cp310-musllinux_1_2_aarch64.whl; ormsgpack-1.12.2-cp310-cp310-musllinux_1_2_armv7l.whl; ormsgpack-1.12.2-cp310-cp310-musllinux_1_2_x86_64.whl; ormsgpack-1.12.2-cp310-cp310-win_amd64.whl; ormsgpack-1.12.2-cp311-cp311-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl; ormsgpack-1.12.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl; ormsgpack-1.12.2-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl; ormsgpack-1.12.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl; ormsgpack-1.12.2-cp311-cp311-musllinux_1_2_aarch64.whl; ormsgpack-1.12.2-cp311-cp311-musllinux_1_2_armv7l.whl; ormsgpack-1.12.2-cp311-cp311-musllinux_1_2_x86_64.whl; ormsgpack-1.12.2-cp311-cp311-win_amd64.whl; ormsgpack-1.12.2-cp311-cp311-win_arm64.whl; ormsgpack-1.12.2-cp312-cp312-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl; ormsgpack-1.12.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl; ormsgpack-1.12.2-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl

Tags

Capabilities
msgpack serialization pythonfast binary serializationmessagepack encoder decoderdataclass serializationnumpy array serializationdatetime msgpackhigh-performance msgpack
Topics
serializationmsgpackperformance
PyPI keywords
fastmsgpackdataclassdataclassesdatetime

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 › “fast binary serialization”

  • ormsgpackormsgpack is a fast MessagePack serialization library for Python that…
  • cborSerializes and deserializes data in CBOR (Concise Binary Object…
  • aliyun-log-fastpbSerializes Aliyun Log data structures to protobuf bytes using…

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

Similar packages

msgpack Worth it
PyPI · File Formats · released Jun 2026

msgpack serializes and deserializes Python objects to and from MessagePack's efficient binary format, supporting both one-shot and streaming operations with optional custom type handlers.

Apache-2.0compiled wheel · 3.10+
286.6Mdownloads / mo
orjson Worth it
PyPI · released May 2026

orjson is a fast JSON serialization and deserialization library that replaces Python's standard json module with native support for dataclasses, datetime, numpy arrays, and UUID objects.

Install it if you need faster JSON performance or native serialization of dataclasses, datetime, or numpy objects.

MPL-2.0 AND (Apache-2.0 OR MIT)compiled wheel · 3.10+
222.6Mdownloads / mo
u-msgpack-python Worth it
PyPI · Software Development · released May 2023

u-msgpack-python serializes and deserializes data in MessagePack format, a compact binary protocol compatible with Python 2, Python 3, CPython, and PyPy.

MITpure Python
1.8Mdownloads / mo
msgpack-python Skip
PyPI · Software Development · released Mar 2018

MessagePack serialization and deserialization for Python; this package is deprecated and should not be used—install msgpack instead.

Apache-2.0builds from sourceabandoned
1.3Mdownloads / mo
msgspec Worth it
PyPI · released Apr 2026

msgspec encodes and decodes JSON, MessagePack, YAML, and TOML with built-in schema validation using Python type annotations, optimized for speed with no runtime dependencies.

BSD-3-Clausecompiled wheel · 3.10+
44.2Mdownloads / mo
msgspec-m With conditions
PyPI · Software Development · released Nov 2025

msgspec-m is a fast serialization and validation library supporting JSON, MessagePack, YAML, and TOML with zero-cost schema validation using Python type annotations.

However, be aware that it receives only minimal maintenance and packaging updates—not new features—so evaluate whether upstream msgspec or the original fork better…

BSD-3-Clausecompiled wheel · 3.9+aging
74.8Kdownloads / mo

See also msgpack-numpy-opentensor · flask-orjson · msgpack-numpy · srsly