Make Http().webSocketClientFlow reusable by creating "reconstructing" wrapper stage
Open
1 - triaged
t:core
- Dominant language
- Scala
- Stars
- 1.4k
- Forks
- 584
- Avg merge
- 14h 33m
- Merged PRs (30d)
- 24
Description
`Http().webSocketClientFlow` isn't reusable right now. This is documented but still trips up users now and then. I think we could provide a general wrapper flow that takes a constructor function `() => Flow[T, U]` which would reconstruct the flow on each materialization and connect it to its inputs and outputs.
Contributor guide
Research direction
Start at Http().webSocketClientFlow and its documentation, then trace how the flow is materialized and connected to inputs and outputs. The work is complete when a general wrapper accepts a () => Flow[T, U], reconstructs it for each materialization, and makes the client flow reusable.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- scala
- Domain
- backend, networking
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100