[package] name = "mml-lib" description = "Rust implementation of the Emacs MIME message Meta Language (MML)" version = "1.1.0" authors = ["soywod "] edition = "2021" license = "MIT" categories = ["asynchronous", "email", "text-processing"] keywords = ["email", "mime", "message", "mml", "emacs"] homepage = "https://pimalaya.org/" documentation = "https://docs.rs/mml-lib/latest/mml/" repository = "https://github.com/pimalaya/core/tree/master/mml/" [package.metadata.docs.rs] features = ["command", "keyring", "derive"] rustdoc-args = ["--cfg", "docsrs"] [lib] name = "mml" [features] default = [ "tokio", #"async-std", "rustls", #"native-tls", "compiler", "interpreter", #"pgp-commands", #"pgp-gpg", #"pgp-native", #"command", #"keyring", #"derive", #"vendored", ] # Async runtime (for native PGP public key discovery) # tokio = ["pgp-lib?/tokio", "process-lib?/tokio", "secret-lib?/tokio"] async-std = ["pgp-lib?/async-std", "process-lib?/async-std", "secret-lib?/async-std"] # Rust crypto (for native PGP public key discovery) # rustls = ["pgp-lib?/rustls", "secret-lib?/rustls"] native-tls = ["pgp-lib?/native-tls", "secret-lib?/openssl"] # Compiler (MML to Mime) # compiler = ["dep:chumsky", "dep:shellexpand-utils", "dep:tree_magic_mini"] # Interpreter (Mime to MML) # interpreter = ["dep:nanohtml2text"] # Pretty Good Privacy # pgp = [] pgp-commands = ["dep:process-lib", "pgp"] pgp-gpg = ["dep:gpgme", "pgp"] pgp-native = ["dep:pgp-lib", "dep:secret-lib", "dep:shellexpand-utils", "pgp"] # Secret backends # command = ["secret-lib?/command"] keyring = ["secret-lib?/keyring"] # Serde (de)serialization # derive = ["dep:serde", "process-lib?/derive", "secret-lib?/derive"] # Vendored (mostly for OpenSSL) # vendored = ["pgp-lib?/vendored", "secret-lib?/vendored"] [dev-dependencies] concat-with = "0.2" tempfile = "3.8" test-log = { version = "0.2", default-features = false, features = ["color", "trace"] } tokio = { version = "1.23", features = ["full"] } [dependencies] async-recursion = "1" chumsky = { version = "=1.0.0-alpha.7", optional = true, default-features = false, features = ["std", "label"] } gpgme = { version = "0.11", optional = true } mail-builder = "0.3" mail-parser = "0.9" nanohtml2text = { version = "0.1", optional = true } pgp-lib = { version = "1", optional = true, default-features = false, features = ["key-discovery"], path = "../pgp" } process-lib = { version = "1", optional = true, default-features = false, path = "../process" } secret-lib = { version = "1", optional = true, default-features = false, path = "../secret" } serde = { version = "1", optional = true, features = ["derive"] } shellexpand-utils = { version = "=0.2.1", optional = true } thiserror = "1" tracing = "0.1" tree_magic_mini = { version = "3", optional = true }