Vendored version of msgpack-rust from crates.io
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Kornel cf880019f7
Some checks failed
Build / Tests (beta) (push) Has been cancelled
Build / Tests (stable) (push) Has been cancelled
Drop byteorder dep
2025-12-23 23:53:03 +00:00
.github/workflows CI 2025-12-23 23:38:29 +00:00
rmp Drop byteorder dep 2025-12-23 23:53:03 +00:00
rmp-serde Drop byteorder dep 2025-12-23 23:53:03 +00:00
rmpv Drop byteorder dep 2025-12-23 23:53:03 +00:00
rmpv-tests Clippy 2025-12-23 23:29:55 +00:00
.gitignore feat: upgrade serde to 1.0 (#122) 2017-04-22 11:53:50 +03:00
.rustfmt.toml Bump 2023-07-21 15:36:17 +01:00
Cargo.toml Clippy/fmt 2024-04-16 14:21:52 +01:00
LICENSE docs: add license file 2017-03-11 00:12:28 +03:00
README.md Update README 2024-04-30 14:13:56 +01:00

RMP - Rust MessagePack

RMP is a complete pure-Rust MessagePack implementation. MessagePack a compact self-describing binary serialization format.

This project consists of three crates:

Features

  • Convenient and powerful APIs

    RMP is designed to be lightweight and straightforward. There is a high-level API with support for Serde, which provides you convenient interface for encode/decode Rust's data structures using derive attribute. There are also low-level APIs, which give you full control over data encoding/decoding process, with no-std support and without heap allocations.

  • Zero-copy value decoding

    RMP allows to decode bytes from a buffer in a zero-copy manner. Parsing is implemented in safe Rust.

  • Robust, stable and tested

    This project is developed using TDD and CI, so any found bugs will be fixed without breaking existing functionality.

Why MessagePack?

It's smaller and much simpler to parse than JSON. The encoded data is self-describing and extensible, without using any schema definitions. It supports the same data types as JSON, plus binary data, non-string map keys, all float values, and 64-bit numbers. Msgpack values use <lenght><data> encoding, so they can be safely concatenated and read from a stream.

MessagePack is similar to CBOR, but has simpler data types (no bignums, decimal floats, dates, or indefinite-length sets, etc.)

Requirements

  • An up-to-date stable version of Rust, preferably from rustup.

Build Coverage Status