This repository has been archived by the owner on Mar 29, 2024. It is now read-only.
Support build client from tonic::transport::Channel #84
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.
Provides the ability for users to control the basic connection.
The original requirement is that I need to pass the raw rustls connector to tonic. Obviously, the current API can't.
So I think exposing the channel API would be a great solution. Users could change HTTP2 parameters and even solve #73 #80
#76. Because users can handle them just by adding layers to thetonic::transport::Channel
.Checked by
cargo-semver-checks
, and it doesn't break the semver.Update: It seems that only expose channel can't work with balance_list very well. Trying to find a better solution.
Currently, etcd-rs uses tonic::transport, a high abstraction module. It is not possible to allow users to use the balancer through their own connector. Rewrite entry with tower service could solve this, but it's a very big change.