-
Notifications
You must be signed in to change notification settings - Fork 190
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 Initial Support for Hyper 1.0 #3461
Conversation
f4a041c
to
04a6656
Compare
A new generated diff is ready to view.
A new doc preview is ready to view. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks great! Just a couple minor/non-blocking things.
hyper_rustls::HttpsConnectorBuilder::new() | ||
.with_tls_config( | ||
rustls::ClientConfig::builder_with_provider(Arc::new(restrict_ciphers(crypto_provider))) | ||
//.with_safe_default_kx_groups() |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ah they removed that — it is only safe now.
None | ||
} | ||
|
||
// TODO(https://github.com/awslabs/aws-sdk-rust/issues/1090): CacheKey must also include ptr equality to RuntimeComponents |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think pointer equality will end up ballooning the cached connectors into a memory leak if someone uses a config override on a operation. We'll have to come up with something else.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ah yeah—that comment is badly worded. It should be the specific components of RC that are used.
A new generated diff is ready to view.
A new doc preview is ready to view. |
A new generated diff is ready to view.
A new doc preview is ready to view. |
A new generated diff is ready to view.
A new doc preview is ready to view. |
A new generated diff is ready to view.
A new doc preview is ready to view. |
A new generated diff is ready to view.
A new doc preview is ready to view. |
A new generated diff is ready to view.
A new doc preview is ready to view. |
e5aa298
to
a8874a7
Compare
A new generated diff is ready to view.
A new doc preview is ready to view. |
@@ -28,7 +28,6 @@ hex = "0.4" | |||
hmac = "0.12" | |||
http0 = { version = "0.2", optional = true, package = "http" } | |||
http = { version = "1", optional = true } | |||
num-bigint = { version = "0.4.2", optional = true } |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice!
Motivation and Context
Description
This adds a minimal Hyper client, focusing on not exposing any unstable APIs. For this reason, the
Client::Builder
customization API is not exposed anymore. We do this because at some point in the future, we will likely move away from the hyper-util based Client.The code for this was lifted directly from the Hyper 0.14 implementation but updated for new traits.
However, this does come with some new valuable pieces:
Testing
Checklist
CHANGELOG.next.toml
if I made changes to the smithy-rs codegen or runtime cratesCHANGELOG.next.toml
if I made changes to the AWS SDK, generated SDK code, or SDK runtime cratesBy submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.