panorama/imap/Cargo.toml

50 lines
1.4 KiB
TOML

[package]
name = "panorama-imap"
description = "IMAP protocol implementation with high-level async client."
version = "0.0.4"
edition = "2018"
authors = ["Michael Zhang <mail@mzhang.io>"]
keywords = ["imap", "email", "parser"]
license = "GPL-3.0-or-later"
categories = ["email"]
repository = "https://git.mzhang.io/michael/panorama"
documentation = "https://docs.rs/panorama-imap"
readme = "README.md"
workspace = ".."
[features]
default = ["pool", "rfc2177", "rfc6154"]
low-level = []
pool = ["crossbeam"]
rfc2087 = [] # quota
rfc2177 = [] # idle
rfc4315 = [] # uidplus
rfc6154 = [] # list
fuzzing = ["arbitrary", "panorama-proto-common/fuzzing"]
[dependencies]
anyhow = { version = "1.0.45", features = ["backtrace"] }
async-trait = "0.1.51"
bitflags = "1.3.2"
bytes = "1.1.0"
chrono = "0.4.19"
derivative = "2.2.0"
derive_builder = "0.10.2"
format-bytes = "0.2.2"
futures = "0.3.17"
log = "0.4.14"
nom = "7.0.0"
stderrlog = { version = "0.5.1", optional = true }
tokio = { version = "1.13.0", features = ["full"] }
tokio-rustls = { version = "0.23.1", features = ["dangerous_configuration"] }
tokio-util = { version = "0.6.9", features = ["codec"] }
webpki-roots = "0.22.1"
panorama-proto-common = { path = "../proto-common" }
crossbeam = { version = "0.8.1", optional = true }
# for fuzzing
arbitrary = { version = "1.0.2", optional = true, features = ["derive"] }
[dev-dependencies]
maplit = "1.0.2"