[package]
edition = "2021"
name = "titan-api-codec"
version = "1.2.3"
authors = ["Christopher Dudley <chris.dudley@titandex.io>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Helpers for encoding and decoding Titan API messages"
homepage = "https://titan.exchange"
readme = "README.md"
license = "MIT"
repository = "https://github.com/Titan-Pathfinder/titan-sdk-rs"
[features]
brotli = ["dep:brotli"]
default = [
"brotli",
"enum-other",
"gzip",
"messagepack",
"zstd",
]
enum-other = ["titan-api-types/enum-other"]
gzip = ["dep:flate2"]
messagepack = ["dep:rmp-serde"]
zstd = [
"dep:zstd",
"dep:zstd-safe",
]
[lib]
name = "titan_api_codec"
path = "src/lib.rs"
[[test]]
name = "test_messagepack"
path = "tests/test_messagepack.rs"
[[bench]]
name = "compression"
path = "benches/compression.rs"
harness = false
[dependencies.brotli]
version = "8.0"
optional = true
[dependencies.bytes]
version = "1"
[dependencies.flate2]
version = "1.1"
optional = true
[dependencies.rmp-serde]
version = "1.3.0"
optional = true
[dependencies.serde]
version = "1.0"
[dependencies.thiserror]
version = "2.0"
[dependencies.titan-api-types]
version = "4.0.0"
features = ["serde"]
default-features = false
[dependencies.zstd]
version = "0.13.0"
optional = true
[dependencies.zstd-safe]
version = "7.0"
features = ["experimental"]
optional = true
[dev-dependencies.criterion]
version = "0.6.0"
[dev-dependencies.hex-literal]
version = "1.0.0"
[dev-dependencies.lipsum]
version = "0.9.1"
[dev-dependencies.rmpv]
version = "1.3.0"
[dev-dependencies.serde_bytes]
version = "0.11.17"