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

Missing impl Read/Write for Pin<P> #3412

Closed
coolreader18 opened this issue Nov 15, 2023 · 0 comments · Fixed by #3413
Closed

Missing impl Read/Write for Pin<P> #3412

coolreader18 opened this issue Nov 15, 2023 · 0 comments · Fixed by #3413
Labels
C-bug Category: bug. Something is wrong. This is bad!

Comments

@coolreader18
Copy link
Contributor

Original: #3110 (comment)

Without {Read,Write} for Pin<P> implementations, something like Pin<Box<T: Read>> doesn't actually impl Read. It seems like a pretty obvious blanket impl to have (e.g. Future has impl<P> Future for Pin<P> where P: DerefMut<Target: Future>, tokio has impl<P> Async{Read,Write} for Pin<P> where P: DerefMut<Target: Async{Read,Write}> + Unpin), and because Pin is #[fundamental] it would actually be a breaking change to add one in the future.

@coolreader18 coolreader18 added the C-bug Category: bug. Something is wrong. This is bad! label Nov 15, 2023
coolreader18 added a commit to coolreader18/hyper that referenced this issue Nov 15, 2023
Without these impls, something like Pin<Box<T: Read>> does not actually
implement Read.

Closes hyperium#3412

BREAKING CHANGE: Pin is #[fundamental], so this theoretically conflicts
  with existing user Read/Write for Pin<...> impls. However, those impls
  probably don't exist yet.
seanmonstar pushed a commit that referenced this issue Nov 16, 2023
Without these impls, something like Pin<Box<T: Read>> does not actually
implement Read.

Closes #3412

BREAKING CHANGE: Pin is #[fundamental], so this theoretically conflicts
  with existing user Read/Write for Pin<...> impls. However, those impls
  probably don't exist yet.
0xE282B0 pushed a commit to 0xE282B0/hyper that referenced this issue Jan 12, 2024
Without these impls, something like Pin<Box<T: Read>> does not actually
implement Read.

Closes hyperium#3412

BREAKING CHANGE: Pin is #[fundamental], so this theoretically conflicts
  with existing user Read/Write for Pin<...> impls. However, those impls
  probably don't exist yet.
0xE282B0 pushed a commit to 0xE282B0/hyper that referenced this issue Jan 16, 2024
Without these impls, something like Pin<Box<T: Read>> does not actually
implement Read.

Closes hyperium#3412

BREAKING CHANGE: Pin is #[fundamental], so this theoretically conflicts
  with existing user Read/Write for Pin<...> impls. However, those impls
  probably don't exist yet.

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
C-bug Category: bug. Something is wrong. This is bad!
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant