swift-server / swift-server/async-http-client
`HTTPClient.execute(...) async throws` API violates Structured Concurrency
Nobody has claimed this yet.
- Dominant language
- Swift
- Stars
- 1.1k
- Forks
- 156
- PR merge metrics
- No merged PRs in 30d
Description
Structured Concurrency mandates that upon the return of a function any background work it may have started has completed.
With HTTPClient.execute(...) async throws that's clearly not the case as it returns a half-finished HTTPClientResponse where the response.body yet has to arrive.
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 reviewing the HTTPClient.execute(...) async throws API and the HTTPClientResponse body lifecycle. Determine how the API can satisfy Structured Concurrency by ensuring background response-body work is complete when the function returns, then define the affected API behavior and validation criteria.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- swift
- Domain
- api, backend-api-design
- Issue type
- Bug
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100