Changelog

View Source

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[0.1.0] - 2025-01-03

Added

  • Initial release of Bedrock Job Queue
  • Bedrock.JobQueue - Main module with use macro for defining job queues
  • Bedrock.JobQueue.Job - Behaviour for defining job workers with perform/2 callback
  • Topic-based routing to worker modules via workers map
  • Priority ordering (lower numbers = higher priority)
  • Scheduled jobs with :at (DateTime) and :in (delay in ms) options
  • Automatic retries with exponential backoff
  • Multi-tenant support via queue IDs
  • Transactional enqueueing within Bedrock transactions
  • Consumer architecture with Scanner, Manager, and Worker processes
  • Configurable concurrency and batch size
  • Queue statistics via stats/2
  • Job return values: :ok, {:ok, result}, {:error, reason}, {:snooze, ms}, {:discard, reason}
  • Coffee Shop interactive Livebook tutorial