WebTransportSession shouldn't take ownership of Connection<C, B>
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 890
- Forks
- 136
- Avg merge
- 14d 20h
- Merged PRs (30d)
- 2
Description
I believe the spec allows sharing the same connection for multiple sessions and multiple requests as well, since WebTransportSession is wrapping it Mutex anyway to store it, making the argument itself as Arc<Mutex<Connection<C, B>>> might be helpful.
Preferably async Mutex, as we have to use
async fn Connection::accept(&mut self)
for incoming requests
#289 and #186 are related
making the connection cloneable and keeping the mutability internally would allow sharing same connections for multiple sessions is probably better than having Arc<Mutex<Connection<C, B>>> everywhere
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reading the WebTransportSession and Connection APIs described in this issue, then review related issues #289 and #186. Determine how shared connections and incoming requests should be represented without transferring ownership, and define completion around a decided, tested API design that supports multiple sessions and requests.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- backend-api-design, networking
- Issue type
- Refactor
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100