[package]
edition = "2021"
rust-version = "1.77"
name = "fang"
version = "0.11.0"
authors = [
"Ayrat Badykov <ayratin555@gmail.com>",
"Pepe Márquez <pepe.marquezromero@gmail.com>",
]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Background job processing library for Rust"
readme = "README.md"
license = "MIT"
repository = "https://github.com/ayrat555/fang"
[features]
asynk = [
"dep:tokio",
"dep:async-trait",
"dep:async-recursion",
]
asynk-mysql = [
"asynk-sqlx",
"sqlx?/mysql",
]
asynk-postgres = [
"asynk-sqlx",
"sqlx?/postgres",
]
asynk-sqlite = [
"asynk-sqlx",
"sqlx?/sqlite",
]
asynk-sqlx = [
"asynk",
"dep:sqlx",
]
blocking = [
"dep:diesel",
"dep:diesel-derive-enum",
"dep:dotenvy",
"diesel?/chrono",
"diesel?/serde_json",
"diesel?/uuid",
"diesel?/r2d2",
]
blocking-mysql = [
"blocking",
"diesel?/mysql",
]
blocking-postgres = [
"blocking",
"diesel?/postgres",
]
blocking-sqlite = [
"blocking",
"diesel?/sqlite",
]
default = [
"blocking",
"asynk-sqlx",
"derive-error",
"blocking-postgres",
"blocking-mysql",
"blocking-sqlite",
"migrations-postgres",
"migrations-sqlite",
"migrations-mysql",
]
derive-error = ["dep:fang-derive-error"]
migrations = [
"dep:diesel_migrations",
"dep:diesel",
]
migrations-mysql = [
"migrations",
"diesel?/mysql",
]
migrations-postgres = [
"migrations",
"diesel?/postgres",
]
migrations-sqlite = [
"migrations",
"diesel?/sqlite",
]
[lib]
name = "fang"
path = "src/lib.rs"
doctest = false
[dependencies.async-recursion]
version = "1"
optional = true
[dependencies.async-trait]
version = "0.1"
optional = true
[dependencies.chrono]
version = "0.4"
[dependencies.cron]
version = "0.17"
[dependencies.diesel]
version = "2.1"
optional = true
default-features = false
[dependencies.diesel-derive-enum]
version = "2.1"
features = ["postgres"]
optional = true
[dependencies.diesel_migrations]
version = "2.1.0"
optional = true
default-features = false
[dependencies.dotenvy]
version = "0.15"
optional = true
[dependencies.fang-derive-error]
version = "0.1.0"
optional = true
[dependencies.hex]
version = "0.4"
[dependencies.log]
version = "0.4"
[dependencies.serde]
version = "1.0"
[dependencies.serde_derive]
version = "1.0"
[dependencies.serde_json]
version = "1.0"
[dependencies.sha2]
version = "0.11"
[dependencies.sqlx]
version = "0.8"
features = [
"any",
"macros",
"chrono",
"uuid",
"json",
"runtime-tokio-rustls",
]
optional = true
[dependencies.thiserror]
version = "2"
[dependencies.tokio]
version = "1.25"
features = [
"rt",
"time",
"macros",
]
optional = true
[dependencies.typed-builder]
version = "0.23"
[dependencies.typetag]
version = "0.2"
[dependencies.url]
version = "2"
[dependencies.uuid]
version = "1.1"
features = ["v4"]
[dev-dependencies.diesel_migrations]
version = "2.1"
features = [
"postgres",
"sqlite",
"mysql",
]
[dev-dependencies.fang-derive-error]
version = "0.1.0"
[dev-dependencies.sqlx]
version = "0.8"
features = [
"any",
"macros",
"chrono",
"uuid",
"json",
"runtime-tokio-rustls",
"postgres",
"sqlite",
"mysql",
]