Closed
Description
This tracks progress on the upgrade to Hyper 1.0
Many of these changes are prototyped in this branch which can send an E2E request with RusTLS
Implementation Tasks
Upstream Changes
- Backport
capture_connection
andpoison
tohyper-util
- Create crate for 0.14 -> 1.x bridge. This allows us to use hyper-rustls and hyper-nativetls against the RC (or 1.0)
SDK changes
- Backwards compatible solution for SegmentedBuf in
ByteStream
- hyper::body::channel() replacement for
dvr
- Careful upgrade + testing of
AwsChunkedBody
—the Frame API changes the flow here a little bit - Update all tests
- Update Checksum Body
- Add
Spawn
toAwsSmithyAsync
—bridge this with Hyper Executor (you now must provide an executor to create a Hyper builder) - Event Stream Upgrade
Testing Tasks
- Simple request/response with:
- Native TLS
- Rustls
- Streaming request/response with:
- Native TLS
- Rustls
- Checksum validating response (S3 with checksums)
- Checksum calculating request (S3 with checksums)
- Unidirectional event stream operation (e.g., Transcribe Streaming and S3 Select):
- HTTP/1.1
- h2
- Native TLS
- Rustls
- Bidirectional event stream operation (Pokemon client/server test?):
- h2
- Native TLS
- Rustls