ironoxide 0.23.0

A pure-Rust SDK for accessing IronCore's privacy platform
Documentation
[package]
name = "ironoxide"
version = "0.23.0"
authors = ["IronCore Labs <info@ironcorelabs.com>"]
readme = "README.md"
license = "AGPL-3.0-only"
repository = "https://github.com/IronCoreLabs/ironoxide"
documentation = "https://docs.rs/ironoxide"
categories = ["cryptography"]
keywords = ["cryptography", "proxy-re-encryption", "PRE", "ECC", "transform-encryption"]
description = "A pure-Rust SDK for accessing IronCore's privacy platform"
edition = "2018"

[dependencies]
async-trait = "0.1.21"
base64 = "~0.12.1"
base64-serde = "~0.5.1"
bytes = "~0.5"
serde = { version = "~1.0", features = ["derive"] }
serde_json = "~1.0"
# default features force a dependency on openssl-sys, which we want to avoid for embedded applications
publicsuffix = { version = "~1.5.4", default-features = false }
rand = "~0.7"
rand_chacha = "~0.2.2"
regex = "~1.3"
ring = { version = "~0.16", features = ["std"] }
recrypt = "~0.11"
url= "~2.1.0"
reqwest = { version = "~0.10.0", features = ["json"], default-features = false }
hex = "~0.4"
itertools = "~0.9.0"
futures = "~0.3.1"
quick-error = "~1.2"
lazy_static = "~1.4"
chrono = { version = "~0.4", features = ["serde"] }
percent-encoding="~2.1"
log = "~0.4"
protobuf = { version = "~2.14", features = ["with-bytes"] }
vec1 = "~1.4.0"
# ironoxide requires rt-threaded at runtime, but not at compile time
tokio = { version = "~0.2.0", features = ["time", "rt-threaded"] }
dashmap = "3.4.0"
ironcore-search-helpers = { version = "~0.1.0", optional = true }
jsonwebtoken = "~7.1.2"

[dev-dependencies]
galvanic-assert = "~0.8"
uuid = { version = "~0.8", features = ["v4"], default-features = false }
double = "~0.2.4"
criterion = "~0.3"
tokio = { version = "~0.2.0", features = ["macros"] }

[build-dependencies]
protobuf-codegen-pure = "~2.14"

[package.metadata.docs.rs]
all-features = true

[features]
beta = ["ironcore-search-helpers"]
blocking = []

# NOTE: ironoxide requires a TLS implementation. Choose one of the following

# enable to use statically compiled openssl on supported OpenSSL platforms; use with 'default-features = false'
tls-vendored-openssl = ["reqwest/native-tls-vendored"]

# enable to use rustls-tls; use with 'default-features = false'
tls-rustls = ["reqwest/rustls-tls"]

# dynamically use the target platform's native TLS
tls-default = ["reqwest/default-tls"]

default = ["tls-default"]

[profile.dev]
opt-level = 2
debug = true

[profile.test]
opt-level = 2
debug = true

[profile.release]
opt-level = 3
debug = false
lto = true

[[bench]]
name = "ironoxide_bench"
harness = false