[package]
edition = "2021"
name = "ant-core"
version = "0.10.0"
build = false
exclude = [
"wasm-tests",
"browser-tests",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Headless Rust library for the Autonomi network: data storage and retrieval with self-encryption and EVM payments, plus node lifecycle management."
readme = "README.md"
license = "MIT OR Apache-2.0"
repository = "https://github.com/WithAutonomi/ant-client"
[features]
browser-wasm = [
"dep:console_error_panic_hook",
"dep:futures-channel",
"dep:gloo-timers",
"dep:js-sys",
"dep:serde-wasm-bindgen",
"dep:wasm-bindgen",
"dep:wasm-bindgen-futures",
"dep:web-sys",
]
default = ["native"]
devnet = [
"native",
"dep:ant-node",
]
native = [
"ant-protocol/native",
"ant-protocol/logging",
"dep:async-stream",
"dep:axum",
"dep:flate2",
"dep:fs2",
"dep:reqwest",
"dep:self-replace",
"dep:semver",
"dep:sysinfo",
"dep:tar",
"dep:tempfile",
"tokio/full",
"dep:tokio-util",
"dep:tower-http",
"dep:tracing-subscriber",
"dep:utoipa",
"dep:zip",
]
test-utils = ["dep:fips204"]
[lib]
name = "ant_core"
crate-type = [
"rlib",
"cdylib",
]
path = "src/lib.rs"
[[example]]
name = "bench-quoting"
path = "examples/bench-quoting.rs"
[[example]]
name = "external-merkle-large"
path = "examples/external-merkle-large.rs"
required-features = ["devnet"]
[[example]]
name = "start-devnet-sepolia"
path = "examples/start-devnet-sepolia.rs"
[[example]]
name = "start-local-devnet"
path = "examples/start-local-devnet.rs"
required-features = ["devnet"]
[[test]]
name = "daemon_integration"
path = "tests/daemon_integration.rs"
[[test]]
name = "datamap_file"
path = "tests/datamap_file.rs"
[[test]]
name = "e2e_adr0004"
path = "tests/e2e_adr0004.rs"
[[test]]
name = "e2e_chunk"
path = "tests/e2e_chunk.rs"
[[test]]
name = "e2e_cost_estimate"
path = "tests/e2e_cost_estimate.rs"
[[test]]
name = "e2e_data"
path = "tests/e2e_data.rs"
[[test]]
name = "e2e_file"
path = "tests/e2e_file.rs"
[[test]]
name = "e2e_huge_file"
path = "tests/e2e_huge_file.rs"
[[test]]
name = "e2e_merkle"
path = "tests/e2e_merkle.rs"
[[test]]
name = "e2e_native_payment"
path = "tests/e2e_native_payment.rs"
required-features = [
"native",
"test-utils",
]
[[test]]
name = "e2e_payment"
path = "tests/e2e_payment.rs"
[[test]]
name = "e2e_security"
path = "tests/e2e_security.rs"
[[test]]
name = "e2e_upload_costs"
path = "tests/e2e_upload_costs.rs"
[[test]]
name = "log_forward_integration"
path = "tests/log_forward_integration.rs"
[[test]]
name = "merkle_unit"
path = "tests/merkle_unit.rs"
[[test]]
name = "node_add_integration"
path = "tests/node_add_integration.rs"
[[test]]
name = "unit_self_encrypt"
path = "tests/unit_self_encrypt.rs"
[dependencies.ant-node]
version = "0.20.0"
optional = true
[dependencies.ant-protocol]
version = "3.0.0"
features = ["rpc"]
default-features = false
[dependencies.async-stream]
version = "0.3"
optional = true
[dependencies.async-trait]
version = "0.1"
[dependencies.axum]
version = "0.8"
optional = true
[dependencies.base64]
version = "0.22"
[dependencies.blake3]
version = "1"
[dependencies.bytes]
version = "1"
[dependencies.fips204]
version = "0.4.6"
features = ["ml-dsa-65"]
optional = true
default-features = false
[dependencies.flate2]
version = "1"
optional = true
[dependencies.fs2]
version = "0.4"
optional = true
[dependencies.futures]
version = "0.3"
[dependencies.futures-channel]
version = "0.3"
optional = true
[dependencies.futures-core]
version = "0.3"
[dependencies.futures-util]
version = "0.3"
[dependencies.gloo-timers]
version = "0.3"
features = ["futures"]
optional = true
[dependencies.hex]
version = "0.4"
[dependencies.js-sys]
version = "0.3"
optional = true
[dependencies.lru]
version = "0.16"
[dependencies.rand]
version = "0.8"
[dependencies.reqwest]
version = "0.12"
features = [
"json",
"stream",
]
optional = true
[dependencies.rmp-serde]
version = "1"
[dependencies.saorsa-transport]
version = "0.37.0"
features = ["webrtc"]
default-features = false
[dependencies.self-replace]
version = "1"
optional = true
[dependencies.self_encryption]
version = "0.36"
[dependencies.semver]
version = "1"
optional = true
[dependencies.serde]
version = "1"
features = ["derive"]
[dependencies.serde-wasm-bindgen]
version = "0.6"
optional = true
[dependencies.serde_bytes]
version = "0.11"
[dependencies.serde_json]
version = "1"
[dependencies.sysinfo]
version = "0.32"
features = ["system"]
optional = true
default-features = false
[dependencies.tar]
version = "0.4"
optional = true
[dependencies.tempfile]
version = "3"
optional = true
[dependencies.thiserror]
version = "2"
[dependencies.tokio]
version = "1"
features = [
"sync",
"macros",
]
[dependencies.tokio-util]
version = "0.7"
features = ["rt"]
optional = true
[dependencies.toml]
version = "0.8"
[dependencies.tower-http]
version = "0.6.8"
features = ["cors"]
optional = true
[dependencies.tracing]
version = "0.1"
[dependencies.tracing-subscriber]
version = "0.3"
features = ["env-filter"]
optional = true
[dependencies.url]
version = "2"
[dependencies.utoipa]
version = "5"
features = ["axum_extras"]
optional = true
[dependencies.wasm-bindgen]
version = "0.2"
optional = true
[dependencies.wasm-bindgen-futures]
version = "0.4"
optional = true
[dependencies.web-sys]
version = "0.3"
features = [
"Event",
"MessageEvent",
"RtcConfiguration",
"RtcDataChannel",
"RtcDataChannelInit",
"RtcDataChannelState",
"RtcDataChannelType",
"RtcPeerConnection",
"RtcSdpType",
"RtcSessionDescription",
"RtcSessionDescriptionInit",
]
optional = true
[dependencies.web-time]
version = "1.1"
[dependencies.xor_name]
version = "5"
[dependencies.zip]
version = "2"
optional = true
[dev-dependencies.alloy]
version = "1.6"
features = ["node-bindings"]
[dev-dependencies.ant-node]
version = "0.20.0"
features = ["test-utils"]
[dev-dependencies.anyhow]
version = "1"
[dev-dependencies.rmp-serde]
version = "1"
[dev-dependencies.serial_test]
version = "3"
[dev-dependencies.tokio-test]
version = "0.4"
[target.'cfg(target_arch = "wasm32")'.dependencies.console_error_panic_hook]
version = "0.1"
optional = true
[target.'cfg(target_arch = "wasm32")'.dependencies.getrandom]
version = "0.2"
features = ["js"]
[target."cfg(unix)".dependencies.libc]
version = "0.2"
[target."cfg(unix)".dependencies.openssl]
version = "0.10"
features = ["vendored"]
[target."cfg(windows)".dependencies.windows-sys]
version = "0.61"
features = [
"Win32_Foundation",
"Win32_System_Console",
"Win32_System_Threading",
]