Skip to content

Hyper Upgrade #1925

Closed
Closed
@jdisanti

Description

@jdisanti

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 and poison to hyper-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 to AwsSmithyAsync—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

Metadata

Metadata

Assignees

No one assigned

    Labels

    clienttrackingMeta-issues to track overall progress

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions