Skip to content

Releases: maxcountryman/underway

v0.2.0

16 Jul 15:14

Choose a tag to compare

What's Changed

  • Breaking: Queues are now stored and passed as Arc<Queue<_>>;
    Worker::new and Scheduler::new take Arc<Queue<_>> instead of Queue<_>. #100
  • Breaking: Job::run_worker and Job::run_scheduler have been removed. #100
  • Breaking: Job::run and Job::start now take &self rather than consuming self. #100
  • Fix: Shutdown channels are now unique. #97
  • Add: Job::queue, Job::worker, and Job::scheduler helpers for
    zero‑boilerplate executor creation. #100
  • Add: enqueue_multi et al, allowing batched enqueue. #79

Migration to 0.2.0:

  • Before:
let queue = Queue::builder().build().await?;
let job = Job::builder().queue(queue.clone()).build();
Worker::new(queue.clone(), job.clone()).run().await;
  • After:
let job = Job::builder().pool(pool).build().await?;
job.worker().run().await;

New Contributors

Full Changelog: v0.1.2...v0.2.0

v0.1.2

20 Nov 16:21

Choose a tag to compare

What's Changed

  • Provide additional worker and scheduler tracing instrumentation #71, #72

Full Changelog: v0.1.1...v0.1.2

v0.1.1

17 Nov 15:24

Choose a tag to compare

What's Changed

  • Fix: Job cancellation should lock rows to be cancelled #67

Full Changelog: v0.1.0...v0.1.1

v0.1.0

14 Nov 15:49

Choose a tag to compare

What's Changed

  • Breaking: Worker and scheduler setters have been renamed #42
  • Breaking: Migrations have been reworked to compensate for features that will land in sqlx 0.9.0 #44
  • Breaking: Job enqueues now return an EnqueuedJob type #46
  • Breaking: Task ID is now a newtype #47
  • Breaking: Task dequeues are now encapsulated such that they are visible as they're being processed #55, #59, #60, #64, #65
  • Breaking: Task schedule "name" column renamed to "task_queue_name" for consistency #58
  • Breaking: Scheduler iterator has been refactored to use Zoned directly #62
  • Task attempts are now recorded in a separate table, providing a complete log of task execution history #50

As of this release, all releases going forward will adhere to semantic versioning principles.

Full Changelog: v0.0.6...v0.1.0