Skip to content
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

feat(rt): replace IO traits with hyper::rt ones #3230

Merged
merged 1 commit into from
Jul 10, 2023
Merged

Conversation

seanmonstar
Copy link
Member

@seanmonstar seanmonstar commented May 17, 2023

This replaces the usage of tokio::io::{AsyncRead, AsyncWrite} in hyper's public API with new traits in the hyper::rt module.

Closes #3110

Before merging

  • Determine naming (AsyncRead vs Read; ReadBuf and ReadBufCursor)
  • Determine minimal public methods for ReadBuf and Cursor
  • Document the types and methods
  • Prove that it is forwards-compatible with completion-based IO

@seanmonstar
Copy link
Member Author

cc @Noah-Kennedy, regarding making sure it's forwards-compatible.

@Noah-Kennedy
Copy link
Contributor

Ping me in a few days if I haven't looked at this

@seanmonstar seanmonstar force-pushed the io-traits branch 6 times, most recently from 1b0c922 to 60bc52a Compare July 3, 2023 19:08
@seanmonstar seanmonstar force-pushed the io-traits branch 2 times, most recently from ab1cad9 to e07f28f Compare July 10, 2023 17:28
@seanmonstar seanmonstar merged commit f9f65b7 into master Jul 10, 2023
17 checks passed
@seanmonstar seanmonstar deleted the io-traits branch July 10, 2023 18:11
0xE282B0 pushed a commit to 0xE282B0/hyper that referenced this pull request Jan 12, 2024
This replaces the usage of `tokio::io::{AsyncRead, AsyncWrite}` in hyper's public API with new traits in the `hyper::rt` module.

Closes hyperium#3110

BREAKING CHANGE: Any IO transport type provided must not implement `hyper::rt::{Read, Write}` instead of
  `tokio::io` traits. You can grab a helper type from `hyper-util` to wrap Tokio types, or implement the traits yourself,
  if it's a custom type.
0xE282B0 pushed a commit to 0xE282B0/hyper that referenced this pull request Jan 16, 2024
This replaces the usage of `tokio::io::{AsyncRead, AsyncWrite}` in hyper's public API with new traits in the `hyper::rt` module.

Closes hyperium#3110

BREAKING CHANGE: Any IO transport type provided must not implement `hyper::rt::{Read, Write}` instead of
  `tokio::io` traits. You can grab a helper type from `hyper-util` to wrap Tokio types, or implement the traits yourself,
  if it's a custom type.

Signed-off-by: Sven Pfennig <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

hyper should use its own IO traits
2 participants