[package]
name = "pathfinder-common"
version = { workspace = true }
authors = { workspace = true }
edition = { workspace = true }
license = { workspace = true }
rust-version = { workspace = true }
description = "Common types and utilities for Pathfinder"
repository = "https://github.com/equilibriumco/pathfinder"
keywords = ["starknet", "ethereum", "blockchain", "web3", "types"]
categories = [
    "cryptography::cryptocurrencies",
    "data-structures",
    "development-tools",
    "web-programming",
    "network-programming",
]

[features]
full-serde = []

[dependencies]
anyhow = { workspace = true }
base64 = { workspace = true }
bitvec = { workspace = true }
bytes = { workspace = true }
fake = { workspace = true, features = ["derive"] }
metrics = { workspace = true }
num-bigint = { workspace = true }
num-traits = "0.2"
paste = { workspace = true }
pathfinder-crypto = { version = "0.22.6", path = "../crypto" }
pathfinder-tagged = { version = "0.1.0", path = "../tagged" }
pathfinder-tagged-debug-derive = { version = "0.1.0", path = "../tagged-debug-derive" }
primitive-types = { workspace = true, features = ["serde"] }
rand = { workspace = true }
serde = { workspace = true, features = ["derive"] }
serde_json = { workspace = true, features = [
    "arbitrary_precision",
    "raw_value",
] }
serde_with = { workspace = true }
sha3 = { workspace = true }
thiserror = { workspace = true }

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