-
-
Notifications
You must be signed in to change notification settings - Fork 52
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add URLSession support #598
Closed
Closed
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
adam-fowler
force-pushed
the
urlsession
branch
2 times, most recently
from
December 22, 2023 06:35
2142df8
to
6aec936
Compare
adam-fowler
force-pushed
the
async-nonblocking-fileio
branch
from
December 24, 2023 06:44
b30be93
to
515e7df
Compare
adam-fowler
force-pushed
the
urlsession
branch
from
December 24, 2023 06:45
6aec936
to
fc29531
Compare
* make Credential Provider tests async * Make all AWSClient tests async * Make endpoint, service, middleware logging tests async * Make paginate, payload and waiter tests async * Last non async call
* Remove SotoCrypto * Remove @available/format
* Remove eventLoop from execute commands * Remove commented out code
* Remove EventLoop paginate * Remove Async from PaginateTests * Remove @available(macOS...
* Remove EventLoop version of waiters * Speed up waiter tests
* Add ExpiringValue actor * Replace EventLoop endpoint discovery * Rename AWSClient+EndpointDiscovery+async * Add tests for ExpiringValue, add comments * more comments * Remove Date.now * Add logging for endpoint discovery * Update Sources/SotoCore/AWSClient+EndpointDiscovery.swift Co-authored-by: Tim Condon <[email protected]> * Add comment about endpoint renewal --------- Co-authored-by: Tim Condon <[email protected]>
* Remove AWSClient.execute calls with EventLoop * Fix STSAssumeRole after removing EventLoop execute * Fix AWSClient waiter code * Remove commented out code * Remove EL credential functions * Merge async files with parent implementations * Delete AWSClient+Waiter+async.swift * Fix up paginate code * Remove EventLoop from execute closure * Changes requested in PR * Update Sources/SotoCore/Waiters/AWSClient+Waiter.swift Co-authored-by: Tim Condon <[email protected]> --------- Co-authored-by: Tim Condon <[email protected]>
* Make credential providers async * Fix tests Also add support for initialising an ExpiringValue with an updating closure. Needed to add another state to get this working. * getTaskProviderTask -> getCredentialProviderTask * Format copyright 2023 * validation changes * Fix issues with credential providers Add error state for ExpiringValue where previous getValue returned an error * Don't throw error during credential provider selection If credential provider fails to provide a credential don't throw an error when you are shutting it down * Shutdown test for rotating credential provider And fixed a bug * Added testDeferredCredentialProviderSetupShutdown
* Use async HTTPClient calls Currently streaming is not working * Comments * Extract HTTPBody out so it can be used in request * Flush body, when not expecting anything * Remove eventLoop from function comment headers
* Add support for returning streamed responses * Remove old response streaming fiunctions * Remove unused function * Comment update
* Add support for request streaming * Remove commented out code
* S3 signed requests * Remove old streaming code and AWSPayload * comments * Add todo comment * bufferSequence -> asyncSequence * compile fix * Make HTTPBody(asyncSequence:length:) public * Add helper init for AWSResponseError * Make ByteBufferAsyncSequence public * if response body is buffer then print as string * Compile fix
* Rename HTTPBody to AWSHTTPBody * Add AWSResponse to Codable userInfo * Add decode functions for AWSResponse * ResponseContainer for decoding * Fix tests after userInfo changes * Remove DictionaryDecoder Now we pass the response via uesrInfo to the decoder and decode header, body and payload in the init(from) function, we can use the JSONDecoder for decoding responses. * Fix tests * Re-organise root element code * Fix after merge * Update Sources/SotoCore/Encoder/ResponseContainer.swift Co-authored-by: Tim Condon <[email protected]> --------- Co-authored-by: Tim Condon <[email protected]>
* Add EventStream type * Split event stream code into two files * If response is chunked assume it is raw * Fix test errors * Fix a couple strict concurrency issues I missed * Add tests for EventStreams * Changes from PR review
* reorder execute * process response in execute * Collapse AWSHTTPResponse and AWSResponse into one * Collpase AWSRequest and AWSHTTPRequest into one * Add HTTP to request and response type names * Remove new middleware until we need it No need to include in this PR * Remove re-org to make PR review easier * Changes from PR comments * Another fix
* import SotoXML as implementation only * formatting
Also remove exposing EventLoopGroup in AWSClient as it is no longer needed
adam-fowler
force-pushed
the
async-nonblocking-fileio
branch
from
February 17, 2024 10:14
515e7df
to
1a059d2
Compare
adam-fowler
force-pushed
the
urlsession
branch
from
February 17, 2024 11:39
fc29531
to
6bd7daf
Compare
adam-fowler
changed the base branch from
async-nonblocking-fileio
to
aws-http-client
February 17, 2024 11:39
adam-fowler
changed the title
Reimplement AWSHTTPClient protocol and add URLSession support
Add URLSession support
Feb 17, 2024
adam-fowler
force-pushed
the
aws-http-client
branch
from
March 25, 2024 15:59
5a5847e
to
3d95b70
Compare
adam-fowler
force-pushed
the
aws-http-client
branch
from
March 31, 2024 08:12
a86be62
to
b79e41c
Compare
Closing in favour of #612 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
No description provided.