oxidite-queue 2.1.0

Background job queue with cron scheduling, DLQ, and retry logic for Oxidite
Documentation
pub mod job;
pub mod queue;
pub mod worker;
pub mod stats;

pub use job::{Job, JobStatus, JobResult};
pub use queue::{Queue, QueueBackend, MemoryBackend};
pub mod redis;
pub use crate::redis::RedisBackend;
pub mod postgres;
pub use crate::postgres::PostgresBackend;
pub use worker::Worker;
pub use stats::{QueueStats, StatsTracker};

use thiserror::Error;

#[derive(Error, Debug)]
pub enum QueueError {
    #[error("Serialization error: {0}")]
    SerializationError(#[from] serde_json::Error),
    
    #[error("Job failed: {0}")]
    JobFailed(String),
    
    #[error("Queue full")]
    QueueFull,
    
    #[error("Backend error: {0}")]
    BackendError(String),
}

pub type Result<T> = std::result::Result<T, QueueError>;