- Notifications
You must be signed in to change notification settings - Fork 136
Comparing changes
Open a pull request
base repository:swift-server/async-http-client
Uh oh!
There was an error while loading. Please reload this page.
base:1.29.0
head repository:swift-server/async-http-client
Uh oh!
There was an error while loading. Please reload this page.
compare:main
- 10 commits
- 31 files changed
- 7 contributors
Commits on Oct 9, 2025
Configuration menu - View commit details
Copy full SHA for c2a3a2c - Browse repository at this point
Copy the full SHA c2a3a2cView commit details
Commits on Oct 10, 2025
Configuration menu - View commit details
Copy full SHA for 353bbc8 - Browse repository at this point
Copy the full SHA 353bbc8View commit details
Commits on Oct 14, 2025
Avoid delays when inserting HTTP/2 handlers. (#864)
Motivation Right now, we insert HTTP/2 handlers in a callback on a future that is done very late. The result of this is that an entire ALPN negotiaton _can_ complete before this callback is attached. That can in rare cases cause the HTTP/2 handler to miss the server preamble, because it gets added too late. Modifications This patch refactors the existing code to close that window. It does so by passing a promise into the connection path and completing that promise _on_ the event loop where we add the ALPN handlers, which should ensure this will execute immediately when the ALPN negotiation completes. Immportantly, we attach our promise callbacks to that promise _before_ we hand it off, making sure the timing windows go away. Results Timing window is closed
Configuration menu - View commit details
Copy full SHA for 0ce87cb - Browse repository at this point
Copy the full SHA 0ce87cbView commit details
Commits on Oct 15, 2025
Resolve SendableMetatype issues (#865)
This resolves warnings around SendableMetatype in the AHC codebase, and gets our 6.2 builds working again.
Configuration menu - View commit details
Copy full SHA for efb14fe - Browse repository at this point
Copy the full SHA efb14feView commit details
Commits on Oct 30, 2025
Add explicit read permissions to workflows (#867)
Motivation: * More secure GitHub Actions workflows Modifications: Add explicit 'contents: read' permissions to workflows that did not have explicit permissions defined. This follows GitHub Actions security best practices by limiting the default GITHUB_TOKEN permissions. Result: An extra layer of security.
Configuration menu - View commit details
Copy full SHA for b2ae845 - Browse repository at this point
Copy the full SHA b2ae845View commit details
Commits on Nov 7, 2025
Configuration menu - View commit details
Copy full SHA for b2faff9 - Browse repository at this point
Copy the full SHA b2faff9View commit details
Commits on Nov 26, 2025
Don't hold a lock over a continuation in Transaction (#871)
Motivation: The various 'withMumbleContinuation' APIs are supposed to be invoked synchronously with the caller. This assumption allows a lock to be acquired before the call and released from the body of the 'withMumbleContinuation' after e.g. storing the continuation. However this isn't the case and the job may be re-enqueued on the executor meaning that this is pattern is vulnerable to deadlocks. Modifications: - Drop and reacquire the lock in Transaction Result: Lower chance of deadlock
Configuration menu - View commit details
Copy full SHA for ce04df0 - Browse repository at this point
Copy the full SHA ce04df0View commit details
Commits on Dec 1, 2025
Fix Connection Creation Crash (#873)
### Motivation When creating a connection, we wrongfully assumed that `failedToCreateNewConnection` will always be called before `http*ConnectionClosed` in the `HTTPConnectionPoolStateMachine`. However this is far from correct. In NIO Futures are fulfilled before `ChannelHandler` callbacks. Ordering in futures should not be assumed in such a complex project. ### Change We change the `http*ConnectionClosed` methods to be noops, if the connection is in the starting state. We instead wait for the `failedToCreateNewConnection` to create backoff timers and friends. rdar://164674912 --------- Co-authored-by: George Barnett <[email protected]>
Configuration menu - View commit details
Copy full SHA for 3c45dbd - Browse repository at this point
Copy the full SHA 3c45dbdView commit details Don't hold a lock over a continuation in test helpers (#872)
Motivation: The various 'withMumbleContinuation' APIs are supposed to be invoked synchronously with the caller. This assumption allows a lock to be acquired before the call and released from the body of the 'withMumbleContinuation' after e.g. storing the continuation. However this isn't the case and the job may be re-enqueued on the executor meaning that this is pattern is vulnerable to deadlocks. Modifications: - Rework the test helpers to avoid holding a lock when a continuation is created. - Switch to using NIOLockedValue box Result: Lower chance of deadlock
Configuration menu - View commit details
Copy full SHA for c464bf9 - Browse repository at this point
Copy the full SHA c464bf9View commit details
Commits on Dec 4, 2025
Remove CollectEverythingLogHandler implementation in favour of InMemo…
…ryLogHandler from swift-log (#874) Swift log now has an InMemoryLogHandler. Lets depend on that instead of having our own `CollectEverythingLogHandler`. I've added an extension on top, to make it easier to create the logger too Result: less code
Configuration menu - View commit details
Copy full SHA for 5dd84c7 - Browse repository at this point
Copy the full SHA 5dd84c7View commit details
This comparison is taking too long to generate.
Unfortunately it looks like we can’t render this comparison for you right now. It might be too big, or there might be something weird with your repository.
You can try running this command locally to see the comparison on your machine: git diff 1.29.0...main
Uh oh!
There was an error while loading. Please reload this page.