ic-agent 0.18.0

Agent library to communicate with the Internet Computer, following the Public Specification.
Documentation
[package]
name = "ic-agent"
version = "0.18.0"
authors = ["DFINITY Stiftung <sdk@dfinity.org>"]
edition = "2021"
description = "Agent library to communicate with the Internet Computer, following the Public Specification."
homepage = "https://docs.rs/ic-agent"
documentation = "https://docs.rs/ic-agent"
repository = "https://github.com/dfinity/agent-rs"
license = "Apache-2.0"
readme = "README.md"
categories = ["api-bindings", "data-structures", "no-std"]
keywords = ["internet-computer", "agent", "icp", "dfinity"]
include = ["src", "Cargo.toml", "../LICENSE", "README.md"]
rust-version = "1.58.1"

[dependencies]
async-trait = "0.1.53"
base32 = "0.4.0"
base64 = "0.13.0"
byteorder = "1.3.2"
garcon = { version = "0.2", features = ["async"] }
hex = "0.4.0"
http = "0.2.6"
http-body = "0.4.5"
hyper-rustls = { version = "0.23.0", features = [ "webpki-roots" ] }
ic-types = "0.3.0"
k256 = { version = "0.11", features = ["pem"] }
leb128 = "0.2.5"
mime = "0.3.16"
rand = "0.8.5"
rustls = "0.20.4"
ring = { version = "0.16.11", features = ["std"] }
serde = { version = "1.0.136", features = ["derive"] }
serde_bytes = "0.11.2"
serde_cbor = "0.11.2"
sha2 = "0.10"
simple_asn1 = "0.6.1"
thiserror = "1.0.30"
url = "2.1.0"
pkcs8 = { version = "0.9", features = ["std"] }
sec1 = { version = "0.3", features = ["pem"]}
futures-util = "0.3.21"

[dependencies.reqwest]
version = "0.11.7"
default-features = false
features = [ "blocking", "json", "rustls-tls", "stream" ]
optional = true

[dependencies.pem]
version = "1.0"
optional = true

[dev-dependencies]
candid = "0.7.14"
mockito = "0.31.0"
proptest = "1.0.0"
serde_json = "1.0.79"
tokio = { version = "1.17.0", features = ["full"] }

[features]
default = ["pem", "reqwest"]
ic_ref_tests = ["default"] # Used to separate integration tests for ic-ref which need a server running.