Skip to content

Releases: vapor/queues

1.13.0 - Misc cleanups

01 Aug 15:12
3dc8095
Compare
Choose a tag to compare

What's Changed

Misc cleanups by @gwynne in #123

  • Update Swift minimum version to 5.6 to match Vapor
  • CI updates

Reviewers

Thanks to the reviewers for their help:

This patch was released by @gwynne

Full Changelog: https://github.com//compare/1.12.1...1.13.0

Add missing platform specifiers

22 Mar 07:17
f1adaf4
Compare
Choose a tag to compare
This patch was authored and released by @gwynne.

Match Vapor's support

Add async job hooks

29 Jan 12:53
0f5891f
Compare
Choose a tag to compare
This patch was authored by @madsodgaard and released by @0xTim.
  • Bump Swift version to 5.5.2
  • Backport concurrency to older platforms
  • Add AsyncJobEventDelegate for async hooks
  • Replace Lock with NIOLock

Fix typos in QueueWorker log messages

29 Aug 16:24
c95c891
Compare
Choose a tag to compare
This patch was authored by @heldersrvio and released by @jdmcd.

Fixes a few typo'd log messages.

Allow public access to set ScheduleBuilder Calendar

25 Aug 21:08
8c13f6f
Compare
Choose a tag to compare
This patch was authored by @dylanshine and released by @0xTim.

Adds a new using(_:) API to the ScheduleBuilder to allow the calendar to be set when creating jobs on a schedule

Add ability to use custom `Calendar` in `ScheduleBuilder`

08 Aug 19:43
e2f6c71
Compare
Choose a tag to compare
This patch was authored by @dylanshine and released by @jdmcd.

This PR introduces the ability to pass a custom Calendar to the ScheduleBuilder.

I ran into an edge case where I have queues deployed across multiple regions and needed to schedule jobs based on specific time zones.

I also cleaned up some unused computed properties in the ScheduleBuilderTests suite.

Update Supported Swift Versions

02 Aug 12:27
eab1970
Compare
Choose a tag to compare
This patch was authored and released by @0xTim.

This removes support for Swift 5.2 and Swift 5.3, making Swift 5.4 the earliest supported version as announced

Make AsyncScheduledJob public so clients can conform to it

27 Oct 08:57
58b2d78
Compare
Choose a tag to compare
This patch was authored by @iKenndac and released by @0xTim.

This PR allows client apps to conform to the previously-added AsyncScheduledJob protocol by making it, and the associated adapter function from ScheduledJob, public.

Added AsyncScheduledJob and cleaned up AsyncJob.

27 Oct 00:38
bdb4171
Compare
Choose a tag to compare
This patch was authored by @Andrewangeta and released by @jdmcd.

Allows AsyncJobs to be added to the app via app.queues.add(...) method.

Async Await Support via AsyncJob

26 Oct 10:27
09f39d5
Compare
Choose a tag to compare
This patch was authored by @jdmcd and released by @0xTim.

Adds AsyncJob which allows you to specify a job that has async body implementations:

struct MyJobPayload: Content {
    let name: String
}

struct MyAsyncJob: AsyncJob {
    func dequeue(context: QueueContext, payload: MyJobPayload) async throws {
        print(payload.name)
    }

    func error(context: QueueContext, error: Error, payload: MyJobPayload) async throws {
        print(error)
    }
}

// In configure.swift 
app.queues.add(MyAsyncJob())