chatmail / chatmail/async-smtp
async-std `TcpStream` impls `BufRead` w/ `AsyncWrite`
- Dominant language
- Rust
- Stars
- 74
- Forks
- 16
- PR merge metrics
- No merged PRs in 30d
Description
https://github.com/async-email/async-smtp/commit/eed4f0bfcc12e5cb5672073fbd83d56f3b81eec5
So wrapping TcpStream with BufReader should work ?
Even if I wrap it to BufReader then it wants AsyncWrite too complicating setting stuff like async-native-tls up ?
I could implement my own type with those implemented but probably doc neeeds to be adjusted - it's not as straightforward now in combination with the types it's usually used as the doc points to direct use with TcpStream.
```
45 | let mut transport = SmtpTransport::new(client, reader).await?;
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `AsyncWrite` is not implemented for `std::io::BufReader>`
```
Repro: https://github.com/pinkforest/repro-async-std-async-smtp
For now I'm just using 0.8 as but got to refactor and port this stuff over off async-std probably
Contributor guide
No contributing guide indexed for this repository
Research direction
Start with the documentation or examples referenced by the direct TcpStream usage, then compare that guidance with the linked repro and the SmtpTransport::new trait error. Done means the documentation accurately explains the required AsyncWrite behavior when wrapping TcpStream or using TLS.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- backend
- Issue type
- Documentation
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100