polymesh-api 3.13.1

Polymesh Rust API
Documentation
[package]
name = "polymesh-api"
version = "3.13.1"
edition = "2021"
authors = ["Robert G. Jakabosky <robert@polymesh.network>"]
license = "Apache-2.0"
description = "Polymesh Rust API"
keywords = ["polymesh", "blockchain", "substrate", "codegen"]
repository = "https://github.com/PolymeshAssociation/polymesh-api"
homepage = "https://github.com/PolymeshAssociation/polymesh-api"

[workspace]
members = [
  "crates/polymesh-api-codegen-macro",
  "crates/polymesh-api-codegen",
  "crates/polymesh-api-client",
  "crates/polymesh-api-client-extras",
  "crates/polymesh-api-ink",
  "crates/polymesh-api-tester",
  "crates/polymesh-offline-signer",

  "examples/simple_transfer",
  "examples/subxt-transfer",
  "examples/get_authorizations",
  "examples/add_secondary_keys_with_auth",
  "examples/subscribe_blocks",
  "examples/test_api",
  "examples/dump_blocks",
  "examples/create_users",
]

## Keep common dependencies here.
[workspace.dependencies]
# Our crates
polymesh-api-client = { version = "3.11.1", path = "crates/polymesh-api-client", default-features = false }
polymesh-api-ink = { version = "1.6.0", path = "crates/polymesh-api-ink", default-features = false }
polymesh-api-codegen = { version = "3.7.3", path = "crates/polymesh-api-codegen", default-features = false }
polymesh-api-codegen-macro = { version = "3.7.3", path = "crates/polymesh-api-codegen-macro", default-features = false }
polymesh-api = { version = "3.13.1", path = "./", default-features = false }
polymesh-api-client-extras = { version = "3.6.2", path = "crates/polymesh-api-client-extras", default-features = false }
polymesh-api-tester = { version = "0.10.1", path = "crates/polymesh-api-tester", default-features = false }

# Substrate shared deps.
frame-metadata = { version = "=15.1.0", default-features = false }
primitive-types = { version = "0.12.0", default-features = false }
scale-info = { version = "2.5", default-features = false }
sp-arithmetic = { version = "26.1", default-features = false }
sp-application-crypto = { version = "40.1", default-features = false }
sp-core = { version = "36.1", default-features = false }
sp-crypto-hashing = { version = "0.1", default-features = false }
sp-io = { version = "40.0", default-features = false }
sp-keyring = { version = "41.0", default-features = false }
sp-runtime = { version = "41.1", default-features = false }
sp-std = { version = "14.0", default-features = false }
sp-weights = { version = "31.1", default-features = false }

# Subxt signer
subxt-signer = { version = "0.41", default-features = false }

# Ink!
ink = { version = "4.3", default-features = false }

# Other shared deps.
serde_json = { version = "1.0", default-features = false }
serde-big-array = { version = "0.4.1" }
serde = { version = "1.0" }
impl-serde = { version = "0.3.1", default-features = false }
async-trait = { version = "0.1" }

[dependencies]
log = "0.4"

polymesh-api-codegen-macro = { workspace = true, default-features = false }
polymesh-api-client = { workspace = true, optional = true, default-features = false }

# For Ink! Smart Contract support.
polymesh-api-ink = { workspace = true, optional = true, default-features = false }
ink = { workspace = true, optional = true, default-features = false }

# substrate
codec = { version = "3", package = "parity-scale-codec", default-features = false }
scale-info = { workspace = true, default-features = false, optional = true }

# RPC Client needs these.
async-trait = { workspace = true, optional = true }
serde-big-array = { workspace = true, optional = true }
serde_json = { workspace = true, features = ["preserve_order", "arbitrary_precision"], optional = true }
serde = { workspace = true, optional = true }

[dev-dependencies]
anyhow = "1"
log = "0.4"
hex = "0.4"
dotenv = "0.15"
env_logger = "0.11"

tokio = { version = "1.19", features = ["rt"] }

[features]
default = [ "std", "polymesh_v7", "rpc", "serde", "v14" ]

polymesh_v7 = []
polymesh_v8 = [ "polymesh-api-client?/polymesh_v8" ]

# Download the chain metadata from a RPC node.
download_metadata = [
  "polymesh-api-codegen-macro/download_metadata",
]

rpc = [
  "async-trait",
  "polymesh-api-client",
]

v14 = [
  "polymesh-api-codegen-macro/v14",
  "polymesh-api-client/v14",
]

ink = [
  "polymesh-api-codegen-macro/v14",
  "polymesh-api-ink",
  "polymesh-api-codegen-macro/ink",
  "polymesh-api-codegen-macro/no_std",
  "dep:ink",
  "type_info",
]

type_info = [
  "scale-info",
  "polymesh-api-client?/type_info",
]

wasm = [
  "v14",
	"rpc",
  "polymesh-api-codegen-macro/no_std",
  "polymesh-api-client/wasm",
]

serde = [
  "dep:serde",
  "polymesh-api-client/serde",
  "serde-big-array",
	"codec/serde",
]

std = [
  "polymesh-api-codegen-macro/std",
  "polymesh-api-client?/std",
  "polymesh-api-ink?/std",
  "scale-info?/std",
  "ink?/std",
]