reallyme-codec 0.3.1

ReallyMe codec utilities for PEM, lowercase hex, multibase, multicodec, multikey, CBOR, JCS, and base encodings.
Documentation
# SPDX-FileCopyrightText: 2026 ReallyMe LLC
#
# SPDX-License-Identifier: MIT OR Apache-2.0

[package]
name = "reallyme-codec"
version = "0.3.1"
edition.workspace = true
rust-version.workspace = true
license.workspace = true
repository.workspace = true
publish = true
description = "ReallyMe codec utilities for PEM, lowercase hex, multibase, multicodec, multikey, CBOR, JCS, and base encodings."
readme = "README.md"
include = ["/src/**/*.rs", "/Cargo.toml", "/README.md", "/LICENSE", "/NOTICE"]

[dependencies]
codec-base64 = { package = "reallyme-codec-base64", version = "=0.3.1", path = "../base64", optional = true }
codec-base64url = { package = "reallyme-codec-base64url", version = "=0.3.1", path = "../base64url", optional = true }
codec-cbor = { package = "reallyme-codec-cbor", version = "=0.3.1", path = "../cbor", optional = true }
codec-hex = { package = "reallyme-codec-hex", version = "=0.3.1", path = "../hex", optional = true }
codec-jcs = { package = "reallyme-codec-jcs", version = "=0.3.1", path = "../jcs", optional = true }
codec-multibase = { package = "reallyme-codec-multibase", version = "=0.3.1", path = "../multibase", optional = true }
codec-multicodec = { package = "reallyme-codec-multicodec", version = "=0.3.1", path = "../multicodec", optional = true }
codec-multikey = { package = "reallyme-codec-multikey", version = "=0.3.1", path = "../multikey", optional = true }
codec-pem = { package = "reallyme-codec-pem", version = "=0.3.1", path = "../pem", optional = true }
codec-proto = { package = "reallyme-codec-proto", version = "=0.3.1", path = "../proto", default-features = false, features = ["generated"], optional = true }
buffa = { workspace = true, optional = true }
thiserror = { workspace = true, optional = true }
zeroize = { workspace = true, optional = true }

[features]
default = [
    "base64",
    "base64url",
    "cbor",
    "hex",
    "jcs",
    "multibase",
    "multicodec",
    "multikey",
    "pem",
]
base64 = ["dep:codec-base64"]
base64url = ["dep:codec-base64url"]
cbor = ["dep:codec-cbor"]
hex = ["dep:codec-hex"]
jcs = ["dep:codec-jcs"]
multibase = ["dep:codec-multibase", "base64url"]
multicodec = ["dep:codec-multicodec", "dep:thiserror"]
multikey = ["dep:codec-multikey", "multibase", "multicodec"]
pem = ["dep:codec-pem"]
operation-contract = [
    "base64",
    "base64url",
    "cbor",
    "hex",
    "jcs",
    "multicodec",
    "multikey",
    "pem",
    "dep:buffa",
    "dep:codec-proto",
    "dep:thiserror",
    "dep:zeroize",
]
serde = ["base64url", "codec-base64url/serde"]

[lints]
workspace = true

[dev-dependencies]
serde_json = { workspace = true }