Skip to content

Releases: vapor/async-kit

1.21.0 - Add support for pruning of idle pool connections

23 Aug 13:28
6f3615c
Compare
Choose a tag to compare

What's Changed

Add support for pruning of idle pool connections by @gwynne in #110

EventLoopConnectionPool now supports optional periodic pruning of connections that have been idle for too long. Both the polling interval and the idle timeout are configurable.

Original credit for much of this code goes to @MahdiBM et al—and if I should have the opportunity to credit the et al, I will gladly do so!

Reviewers

Thanks to the reviewers for their help:

This patch was released by @gwynne

Full Changelog: 1.20.0...1.21.0

1.20.0 - Add `shutdownAsync`

31 Jul 16:01
e048c8e
Compare
Choose a tag to compare

What's Changed

Add shutdownAsync by @0xTim in #109

Even calling Dispatch’s .wait() can cause the concurrency pool to deadlock meaning the connection pool never returns. This provides a proper async version of shutdown().

Annotates the offending functions with @noasync

See https://swift-open-source.slack.com/archives/C9MMT6VGB/p1722432257179729 for more context

Reviewers

Thanks to the reviewers for their help:

This patch was released by @0xTim

Full Changelog: 1.19.1...1.20.0

1.19.1 - Fix typo in connection request error message

21 Jul 21:52
15b3fb7
Compare
Choose a tag to compare

What's Changed

Fix typo in connection request error message by @rausnitz in #108

There’s a parenthesis missing in the connection request error message.

This fixes vapor/async-kit#107.

This patch was released by @0xTim

Full Changelog: 1.19.0...1.19.1

1.19.0 - Clean up and soft-deprecate AsyncKit

31 Oct 15:06
7ece208
Compare
Choose a tag to compare

What's Changed

Clean up and soft-deprecate AsyncKit by @gwynne in #106

This update starts the official soft-deprecation of AsyncKit. It should not be used in new code (although it will remain included in Vapor and Fluent 4 for compatibility). It is not expected to receive new updates other than security fixes.

Other changes in this update:

  • Require the current Vapor minimum Swift version of 5.7
  • The ~ operator on EventLoopFuture is now public as was intended (not that anyone noticed it wasn’t 🙂)
  • The tests run faster
  • CI’s been updated

Reviewers

Thanks to the reviewers for their help:

This patch was released by @gwynne

Full Changelog: 1.18.0...1.19.0

1.18.0 - Heavily revise the implementation of EventLoopConnectionPool

13 Aug 12:55
eab9edf
Compare
Choose a tag to compare

What's Changed

Heavily revise the implementation of EventLoopConnectionPool by @gwynne in #102

Overview

This is a temporary stopgap measure to clean up some of the more extant issues with the existing implementation, pending the integration of a much more robust and advanced connection pool solution.

While technically there is no change in the public API surface, this is nonetheless being marked as semver-minor due to the significant changes in behavior. This PR has already revealed a query ordering bug in the Fluent benchmarks just by behaving more correctly.

Reviewers

Thanks to the reviewers for their help:

This patch was released by @gwynne

Full Changelog: 1.17.0...1.18.0

Update min Swift version to 5.6 and make platform versions consistent

14 Apr 00:57
a61da00
Compare
Choose a tag to compare

Deprecate EventLoop.performWithTask() in favor of NIO's version

10 Jan 17:21
9acea4c
Compare
Choose a tag to compare

Back deploy concurrency to older Apple Platforms

22 Dec 12:56
929808e
Compare
Choose a tag to compare
This patch was authored by @sevki and released by @0xTim.

Enables concurrency features on macOS 10.15 et al. Drops support for Swift 5.5.0 and 5.5.1 to match SwiftNIO

Fix NIO "Lock" deprecation warnings

03 Nov 17:33
3be4b64
Compare
Choose a tag to compare
This patch was authored and released by @gwynne.

Also drops support for Swift 5.4, since NIO has already done so.

More than half of the changes included in this update were contributed by @Colgates in #95 - thanks again!

Enable compilation on iOS

29 Jun 14:33
c3329e4
Compare
Choose a tag to compare
This patch was authored by @makleso6 and released by @0xTim.

This adds experimental support for building AsyncKit on iOS from iOS 11 onwards

Close #93