-
Notifications
You must be signed in to change notification settings - Fork 0
Comparing changes
Open a pull request
base repository: ahoppen/async-http-client
base: main
head repository: swift-server/async-http-client
compare: main
- 14 commits
- 41 files changed
- 9 contributors
Commits on Aug 24, 2025
-
Fix trailing space in ConnectionPool.Key string (swift-server#855)
Motivation: The trailing space is visible in log message metadata, and depending upon the log handler in use, will sometimes be visible due to quoting. Modifications: Just remove the trailing space. Result: There won't be a trailing space in the key anymore. This has no functional impact whatsoever as far as I was able to determine.
Configuration menu - View commit details
-
Copy full SHA for 254d340 - Browse repository at this point
Copy the full SHA 254d340View commit details
Commits on Sep 9, 2025
-
Add support for HTTP/1 connection pre-warming (swift-server#856)
Motivation This patch adds support for HTTP/1 connection pre-warming. This allows the user to request that the HTTP/1 connection pool create and maintain extra connections, above-and-beyond those strictly needed to run the pool. This pool can be used to absorb small spikes in request traffic without increasing latency to account for connection creation. Modifications - Added new configuration properties for pre-warmed connections. - Amended the HTTP/1 state machine to create new connections where necessary. - Added state machine tests. Results Pre-warmed connections are available.
Configuration menu - View commit details
-
Copy full SHA for 7dc119c - Browse repository at this point
Copy the full SHA 7dc119cView commit details
Commits on Sep 22, 2025
-
Enable Swift 6.2 jobs in CI (swift-server#859)
Motivation: Swift 6.2 has been released, we should add it to our CI coverage. Modifications: Add additional Swift 6.2 jobs where appropriate in main.yml, pull_request.yml Result: Improved test coverage.
Configuration menu - View commit details
-
Copy full SHA for 31c8b04 - Browse repository at this point
Copy the full SHA 31c8b04View commit details
Commits on Oct 7, 2025
-
Introduce built-in swift-distributed-tracing support (swift-server#857)
Co-authored-by: Moritz Lang <16192401+slashmo@users.noreply.github.com> Co-authored-by: George Barnett <gbarnett@apple.com>
Configuration menu - View commit details
-
Copy full SHA for 8430dd4 - Browse repository at this point
Copy the full SHA 8430dd4View commit details
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. (swift-server#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 (swift-server#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 (swift-server#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 (swift-server#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 (swift-server#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 <gbarnett@apple.com>
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 (swift-server#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 (swift-server#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 main...main