antimatter 1.0.1

antimatter.io Rust library for data control
Documentation
[package]
name = "antimatter"
description = "antimatter.io Rust library for data control"
# This gets dynamically filled in at build time from client/VERSION.txt
version = "1.0.1"
edition = "2021"
authors = ["The Antimatter Team <support@antimatter.io>"]
license = "Apache-2.0"
homepage  = "https://antimatter.io"
readme = "README.md"

[dependencies]
# do not edit this line, it's modified dynamically at build time
antimatter_api = { path = "../gen", version = "1.0.1" }

# TODO: delete aes-gcm
aes-gcm = "0.10.3"
anyhow = "1"
async-trait = "0.1.74"
base64 = "0.21.2"
bytes = "1.5.0"
chrono = "0.4.35"
ciborium = "0.2.1"
env_logger = "0.10.1"
futures = "0.3.29"
generic-array = "0.14.7"
hex = "0.4.3"
itertools = "0.10.0"
lazy_static = "1.4.0"
log = "0.4.20"
lru = "0.12.2"
mini-redis = "0.4"
object = "0.32.1"
rand = "0.8.5"
reqwest = "0.11.22"
ring = "0.17.8"
rusoto_core = "0.48.0"
rusoto_s3 = "0.48.0"
serde = { version = "1.0.188", features = ["derive"] }
serde_bytes = "0.11.14"
serde_json = "1.0.108"
serde_repr = "0.1.18"
serde_tuple = "0.5.0"
tempfile = "3.8.1"
tokio = { version = "1.34.0", features = ["full"] }

# Stuff for OPA WASM

thiserror = "1"
tracing = "0.1.27"
wasmtime = { version = ">=16, <20" }
tokio-tar = { version = "0.3", optional = true }
async-compression = { version = "0.4", optional = true, features = ["tokio", "gzip"] }
futures-util = { version = "0.3", optional = true }
digest = { version = "0.10", optional = true }
hmac = { version = "0.12", optional = true }
json-patch = { version = ">=0.2.3, <1.3.0", optional = true, default-features = false }
md-5 = { version = "0.10", optional = true }
semver = { version = "1", optional = true }
sha1 = { version = "0.10", optional = true }
sha2 = { version = "0.10", optional = true }
sprintf = { version = "0.2", optional = true }
parse-size = { version = "1", features = ["std"], optional = true }
serde_yaml = { version = "0.9.1", optional = true }
form_urlencoded = { version = "1", optional = true }
urlencoding = { version = "2", optional = true }
chrono-tz = { version = ">=0.6, <0.9.0", optional = true }
chronoutil = { version = "0.2", optional = true }
duration-str = { version = "0.7", optional = true, default-features = false }
url = "2.5.0"

[features]
default = ["all-builtins", "loader"]

loader = [
    "dep:tokio-tar",
    "dep:async-compression",
    "dep:futures-util",
    "tokio/fs",
    "tokio/io-util",
]

rng = []
time = []

base64url-builtins = []
crypto-digest-builtins = ["dep:digest"]
crypto-hmac-builtins = ["dep:hmac"]
crypto-md5-builtins = ["dep:md-5"]
crypto-sha1-builtins = ["dep:sha1"]
crypto-sha2-builtins = ["dep:sha2"]
hex-builtins = []
semver-builtins = ["dep:semver"]
sprintf-builtins = ["dep:sprintf"]
json-builtins = ["dep:json-patch"]
units-builtins = ["dep:parse-size"]
rand-builtins = ["rng"]
yaml-builtins = ["dep:serde_yaml"]
urlquery-builtins = ["dep:form_urlencoded", "dep:urlencoding"]
time-builtins = ["time", "dep:chrono-tz", "dep:duration-str", "dep:chronoutil"]

all-crypto-builtins = [
    "crypto-digest-builtins",
    "crypto-hmac-builtins",
    "crypto-md5-builtins",
    "crypto-sha1-builtins",
    "crypto-sha2-builtins",
]

all-builtins = [
    "all-crypto-builtins",
    "base64url-builtins",
    "hex-builtins",
    "json-builtins",
    "rand-builtins",
    "semver-builtins",
    "sprintf-builtins",
    "units-builtins",
    "yaml-builtins",
    "urlquery-builtins",
    "time-builtins",
]

[dev-dependencies]
criterion = "0.5.1"

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