-
Notifications
You must be signed in to change notification settings - Fork 554
Integrate async transport with SDK #4615
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
Open
srothh
wants to merge
107
commits into
srothh/async-transport
Choose a base branch
from
srothh/async-transport-integration
base: srothh/async-transport
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from all commits
Commits
Show all changes
107 commits
Select commit
Hold shift + click to select a range
63b1f24
ref(transport): Added shared sync/async transport superclass and crea…
srothh 666ff3a
ref(transport) Removed Todo and reverted class name change
srothh 748764e
test(transport): Add test for HTTP error status handling
srothh ee6dbee
test(transport): Restore accidentally removed comments
srothh 19405fd
ref(transport) Refactor class names to reflect previous functionality
srothh 3736c03
ref(transport): Add flush_async in the Transport abc
srothh 3607d44
ref(transport): Move flush_async from ABC
srothh 0ba5a83
ref(transport): add async type annotations to HTTPTransportCore
srothh 9bb628e
ref(transport): Add abstract base class for worker implementation
srothh a81487e
ref(transport): Add _create_worker factory method to Transport
srothh 8960e6f
ref(worker): Add flush_async method to Worker ABC
srothh 0f7937b
ref(worker): Move worker flush_async from Worker ABC
srothh 268ea1a
ref(worker): Amend function signature for coroutines
srothh b3c05cc
feat(transport): Add an async task-based worker for transport
srothh fb0ad18
ref(worker): Make worker work with new ABC interface
srothh 7edbbaf
fix(worker): Check if callbacks from worker queue are coroutines or f…
srothh 0f63d24
ref(worker): Amend return type of submit and flush to accomodate for …
srothh 2430e2e
ref(worker): Add type parameters for AsyncWorker variables
srothh 96fcd85
ref(worker): Remove loop upon killing worker
srothh 331e40b
feat(worker): Enable concurrent callbacks on async task worker
srothh 5f67485
fix(worker): Modify kill behaviour to mirror threaded worker
srothh 97c5e3d
ref(worker): add proper type annotation to worker task list
srothh 8809b08
feat(transport): Add async transport class
srothh 7c5dec0
ref(transport): Fix event loop handling in async transport
srothh b0390e6
feat(transport): Add kill method for async transport
srothh f01b00d
ref(transport): Fix type errors in async transport
srothh 23b8ea2
Add silent failing to kill on event loop errors
srothh 176a1d1
ref(transport): Fix event loop check in make_transport
srothh 4fe61bf
ref(transport): Add missing transport instantiation in non-async context
srothh 52c9e36
ref(transport): Fix httpcore async specific request handling
srothh 6d69406
ref(transport): Add gc safety to async kill
srothh 3629609
ref(transport): Add missing httpcore extensions
srothh 21cde52
fix(transport): Fix fallback sync transport creating async worker
srothh c541bd7
ref(transport): Make kill optionally return a task for async
srothh 2808062
Integrate AsyncHttpTransport as a new experimental option
srothh ea5f557
ref(transport): Fix type issues in AsyncTransport
srothh c61eb02
ref(transport): Add missing async transport loop type annotation
srothh 38baead
fix(client): Fix mypy type errors
srothh e4ed773
ref(client): Fix mypy inheritance type error
srothh 236ae2c
ref(client): Move mypy annotations to correct place
srothh 9dd546c
ref(client): Add event loop handling to client flush/close
srothh f4ac157
ref(client): Moved close done callback into async task
srothh ed392e9
ref(client): Move timeout check in client to properly cover async
srothh 50553d4
feat(asyncio): Add patching for loop.close in asyncio
srothh 4a7b8ce
ref(asyncio): Fix mypy type annotation errors
srothh cd8a35f
ref(client): Fix redundant async flush helper flushes
srothh b9f2ec7
ref(client): remove wrongful indent
srothh 98d74ed
test(transport): Add inital transport tests
srothh 9df5ec5
fix(requirements): Fix requirements for async transport testing on py…
srothh 23d8740
fix(dependencies): Remove version constraint from httpcore
srothh a496787
fix(dependencies): Version guards for correct httpcore version
srothh 32a9abd
ref(tox): remove anyio version pin
srothh a69f7bb
Revert "ref(tox): remove anyio version pin"
srothh c80b095
ref(dependencies): Revert dependency changes
srothh 5904968
ref(test): Remove flush from async transport test
srothh 09034b7
ref(client): Remove wrongful indents in client sync flush
srothh 21b1cda
fix(testing): Changed httpx anyio version pin to >=3, <5
srothh 9d0cde4
fix(test): Properly modify httpx anyio pin
srothh f21e2ea
fix(test): Add fastapi anyio pin for <0.8
srothh 76aae83
feat(test): Add tests for specific async transport functionality
srothh 4c1e99b
feat(test): Add flush to async transport test
srothh 6df7037
ref(client): Adapt client for blocking kill in async transport
srothh 25c04fc
ref(client): Fix transport shutdown if loop is not running
srothh e8d889c
ref(test): Add config tests for SSL/proxy for async
srothh a644465
feat(transport): Add async transport class
srothh c935e9e
ref(transport): Fix event loop handling in async transport
srothh b90daf4
feat(transport): Add kill method for async transport
srothh e1d7cdb
ref(transport): Fix type errors in async transport
srothh 90346a5
Add silent failing to kill on event loop errors
srothh 47416f4
ref(transport): Fix event loop check in make_transport
srothh 73cdc6d
ref(transport): Add missing transport instantiation in non-async context
srothh 1ae8708
ref(transport): Fix httpcore async specific request handling
srothh 6f18657
ref(transport): Add gc safety to async kill
srothh 87a9b2f
ref(transport): Add missing httpcore extensions
srothh 4fd7fa0
fix(transport): Fix fallback sync transport creating async worker
srothh 69734cd
ref(transport): Make kill optionally return a task for async
srothh f5ef707
ref(transport): Adapt transport for synchronous flush interface
srothh fca8740
ref(transport): Fix mypy error
srothh 4b0d09b
Merge branch 'srothh/async-transport' into srothh/async-transport-int…
srothh e23efd7
ref(transport): Make client work with sync flush changes
srothh 55b606a
ref(client): Properly add client changes for sync flush
srothh d89abed
feat(transport): Add async transport class
srothh 5e1e0c6
ref(transport): Fix event loop handling in async transport
srothh 8fdf43d
feat(transport): Add kill method for async transport
srothh 6619670
ref(transport): Fix type errors in async transport
srothh 2eee1b1
Add silent failing to kill on event loop errors
srothh 6c787a4
ref(transport): Fix event loop check in make_transport
srothh b79d346
ref(transport): Add missing transport instantiation in non-async context
srothh 1717888
ref(transport): Fix httpcore async specific request handling
srothh e1fd57a
ref(transport): Add gc safety to async kill
srothh b87c68e
ref(transport): Add missing httpcore extensions
srothh a827d0d
fix(transport): Fix fallback sync transport creating async worker
srothh ee0b440
ref(transport): Make kill optionally return a task for async
srothh 70f228e
ref(transport): Adapt transport for synchronous flush interface
srothh 328d8ad
ref(transport): Fix mypy error
srothh ef61134
ref(transport): Make transport loop public
srothh ad93516
Merge branch 'srothh/async-transport' into srothh/async-transport-int…
srothh 42d3a34
ref(transport): Add import checking for async transport
srothh 10d85f6
ref(transport): Fix typing errors
srothh aaae195
ref(transport): Fix import checking
srothh de47da2
Merge branch 'srothh/async-transport' into srothh/async-transport-int…
srothh 6e2c4f6
ref(client): Fix type checking with fallback asynctransport
srothh 9da7be8
ref(asyncio): Refactor loop close patch in asyncio integration
srothh 8a5ab06
ref(client): Split client flush into seperate function for readability
srothh 295a0e9
ref(transport): Refactor async transport to be more aligned with sync
srothh e754a85
Merge branch 'srothh/async-transport' into srothh/async-transport-int…
srothh 9f226cf
Merge branch 'srothh/async-transport' into srothh/async-transport-int…
srothh File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or 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
This file contains hidden or 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
This file contains hidden or 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
This file contains hidden or 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
This file contains hidden or 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
This file contains hidden or 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
This file contains hidden or 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
This file contains hidden or 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
Oops, something went wrong.
Oops, something went wrong.
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.
Uh oh!
There was an error while loading. Please reload this page.