[package]
edition = "2021"
name = "later"
version = "0.0.44"
authors = ["Mohammad Mustakim Ali <i@mustak.im>"]
build = "build.rs"
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Distributed Background jobs manager and runner for Rust"
documentation = "https://docs.rs/later"
readme = "README.md"
categories = ["web-programming"]
license = "MIT/Apache-2.0"
repository = "https://github.com/mustakimali/later"
[features]
all = [
"postgres",
"redis",
"sqlite",
"dashboard",
"prometheus",
"retained-log",
]
dashboard = [
"dep:serde-querystring",
"dep:thiserror",
]
default = []
postgres = [
"dep:sqlx",
"sqlx/postgres",
"sqlx/uuid",
"sqlx/chrono",
]
prometheus = ["dep:prometheus"]
redis = ["dep:redis"]
retained-log = []
sqlite = [
"dep:sqlx",
"sqlx/sqlite",
"dep:libsqlite3-sys",
]
[lib]
name = "later"
path = "src/lib.rs"
[[example]]
name = "dashboard"
path = "examples/dashboard.rs"
required-features = ["dashboard"]
[[example]]
name = "postgres"
path = "examples/postgres.rs"
required-features = ["postgres"]
[[example]]
name = "schema"
path = "examples/schema.rs"
required-features = ["postgres"]
[[example]]
name = "sqlite"
path = "examples/sqlite.rs"
required-features = ["sqlite"]
[[example]]
name = "throughput"
path = "examples/throughput.rs"
[[test]]
name = "distribution"
path = "tests/distribution.rs"
[[test]]
name = "partition"
path = "tests/partition.rs"
[[test]]
name = "partition_postgres"
path = "tests/partition_postgres.rs"
[[test]]
name = "payload_decode"
path = "tests/payload_decode.rs"
[[test]]
name = "recurring"
path = "tests/recurring.rs"
[dependencies.anyhow]
version = "1.0.60"
[dependencies.async-lock]
version = "3.4"
[dependencies.async-recursion]
version = "1.0"
[dependencies.async-std]
version = "1.12.0"
[dependencies.async-trait]
version = "0.1.66"
[dependencies.blake3]
version = "1.3.1"
[dependencies.chrono]
version = "0.4.42"
features = ["serde"]
[dependencies.cron]
version = "0.11"
[dependencies.futures]
version = "0.3.23"
[dependencies.futures-core]
version = "0.3.21"
[dependencies.later-derive]
version = "0.0.34"
[dependencies.opentelemetry]
version = "0.17.0"
[dependencies.prometheus]
version = "0.13.1"
optional = true
[dependencies.redis]
version = "0.21.8"
features = ["tokio-comp"]
optional = true
[dependencies.rmp-serde]
version = "1.3"
[dependencies.rusty_ulid]
version = "1.0.0"
[dependencies.serde]
version = "1.0"
features = ["derive"]
[dependencies.serde-querystring]
version = "0.0.8"
optional = true
[dependencies.serde_json]
version = "1.0"
[dependencies.sqlx]
version = "0.8.6"
features = [
"runtime-tokio-rustls",
"migrate",
"macros",
]
optional = true
default-features = false
[dependencies.thiserror]
version = "1.0"
optional = true
[dependencies.tokio]
version = "1.38.2"
features = ["full"]
[dependencies.tracing]
version = "0.1"
[dependencies.tracing-opentelemetry]
version = "0.17.4"
[dependencies.typed-builder]
version = "0.23.2"
[dev-dependencies.actix-web]
version = "4"
[dev-dependencies.tempfile]
version = "=3.3.0"
[dev-dependencies.test-case]
version = "3.3.1"
[build-dependencies.libsqlite3-sys]
version = "0.30"
features = ["bundled"]
optional = true