outbox-pattern-processor 0.4.0

Library to make easier to dispatch your outbox-pattern data from database to SQS, SNS and/or HTTP(S) gateways
Documentation
[package]
name = "outbox-pattern-processor"
version = "0.4.0"
edition = "2021"
authors = [
    "Diogo Deroldo <diogoderoldo@gmail.com>"
]
license = "MIT"
description = "Library to make easier to dispatch your outbox-pattern data from database to SQS, SNS and/or HTTP(S) gateways"
readme = "README.md"
homepage = "https://github.com/deroldo/outbox-pattern-processor"
repository = "https://github.com/deroldo/outbox-pattern-processor"
keywords = ["outbox", "outbox-pattern", "outbox-table", "outbox-event"]
categories = ["web-programming"]

[features]
default = [
    "dep:tokio",
    "dep:tracing",
    "dep:aws-sdk-sqs",
    "dep:aws-sdk-sns",
    "dep:aws-config",
    "dep:reqwest",
    "dep:reqwest-middleware",
    "dep:serde",
    "dep:serde_json",
    "dep:sqlx",
    "dep:uuid",
    "dep:regex",
    "dep:cron",
]

[dependencies]
tokio = { version = "1.40.0", features = ["full"], optional = true }

tracing = { version = "0.1.40", optional = true }

aws-sdk-sqs = { version = "1.44.0", optional = true }
aws-sdk-sns = { version = "1.45.0", optional = true }
aws-config = { version = "1.5.7", features = ["behavior-version-latest"], optional = true }

reqwest = { version = "0.12.8", default-features = false, features = ["json", "rustls-tls"], optional = true }
reqwest-middleware = { version = "0.3.3", optional = true }

serde = { version = "1.0.210", features = ["derive"], optional = true }
serde_json = { version = "1.0.128", features = ["preserve_order"], optional = true }

sqlx = { version = "0.9.0", features = ["runtime-tokio", "tls-rustls", "postgres", "chrono", "uuid", "rust_decimal", "migrate"], optional = true }
uuid = { version = "1.10.0", features = ["v4", "v7", "serde"], optional = true }
regex = { version = "1.11.0", optional = true }

cron = { version = "0.12.1", optional = true }

[dev-dependencies]
rand = { version = "0.8.5" }
serial_test = { version = "3.1.1" }
test-context = { version = "0.3.0" }
wiremock = { version = "0.6.2" }