[package] name = "lemmy_utils" version.workspace = true edition.workspace = true description.workspace = true license.workspace = true homepage.workspace = true documentation.workspace = true repository.workspace = true [lib] name = "lemmy_utils" path = "src/lib.rs" doctest = false [[bin]] name = "lemmy_util_bin" path = "src/main.rs" required-features = ["full"] [lints] workspace = true [features] full = [ "dep:ts-rs", "dep:diesel", "dep:rosetta-i18n", "dep:actix-web", "dep:reqwest-middleware", "dep:tracing", "dep:actix-web", "dep:serde_json", "dep:anyhow", "dep:tracing-error", "dep:http", "dep:deser-hjson", "dep:regex", "dep:urlencoding", "dep:doku", "dep:url", "dep:smart-default", "dep:enum-map", "dep:futures", "dep:tokio", "dep:html2text", "dep:lettre", "dep:uuid", "dep:itertools", "dep:markdown-it", ] [dependencies] regex = { workspace = true, optional = true } tracing = { workspace = true, optional = true } tracing-error = { workspace = true, optional = true } itertools = { workspace = true, optional = true } serde = { workspace = true } serde_json = { workspace = true, optional = true } url = { workspace = true, optional = true } actix-web = { workspace = true, optional = true } anyhow = { workspace = true, optional = true } reqwest-middleware = { workspace = true, optional = true } strum = { workspace = true } futures = { workspace = true, optional = true } diesel = { workspace = true, features = ["chrono"], optional = true } http = { workspace = true, optional = true } doku = { workspace = true, features = ["url-2"], optional = true } uuid = { workspace = true, features = ["serde", "v4"], optional = true } rosetta-i18n = { workspace = true, optional = true } tokio = { workspace = true, optional = true } urlencoding = { workspace = true, optional = true } html2text = { version = "0.12.5", optional = true } deser-hjson = { version = "2.2.4", optional = true } smart-default = { version = "0.7.1", optional = true } lettre = { version = "0.11.7", default-features = false, features = [ "builder", "tokio1", "tokio1-rustls-tls", "smtp-transport", ], optional = true } markdown-it = { version = "0.6.1", optional = true } ts-rs = { workspace = true, optional = true } enum-map = { workspace = true, optional = true } cfg-if = "1" clearurls = { version = "0.0.4", features = ["linkify"] } [dev-dependencies] reqwest = { workspace = true } pretty_assertions = { workspace = true } [build-dependencies] rosetta-build = { version = "0.1.3", default-features = false }