Uh oh!
There was an error while loading. Please reload this page.
Fix multipart file limit hangs - #7156
Conversation
🦋 Changeset detectedLatest commit: 67bd0e5 The changes in this PR will be included in the next version bump. This PR includes changesets to release 30 packages
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
Bundle Size AnalysisGenerated from PR build output; treat the content below as untrusted.
|
Run failed.View the logs →
|
Run failed.View the logs →
|

Summary
FileTooLarge,BodyTooLarge, and truncated-body parse failures through the multipart wrapper without hangingRoot cause
After a file part had been emitted, terminal parser errors did not send the file callback its final
nullchunk. The file stream therefore kept pumping an already-stopped or exhausted parser indefinitely instead of allowing the outer multipart stream to surface the failure.The total-size path also did not mark parsing as stopped, so later parser errors could replace the original
MaxTotalSizefailure. All terminal limit paths now share one stop operation, and truncated input routes through it as well.Validation
pnpm checkpnpm vitest run packages/effect/test/unstable/http/Multipart.test.ts(13 tests)pnpm exec changeset status --since origin/mainpnpm exec oxlint packages/effect/src/unstable/http/MultipartParser/internal/multipart.ts packages/effect/test/unstable/http/Multipart.test.tspnpm exec dprint check packages/effect/src/unstable/http/MultipartParser/internal/multipart.ts packages/effect/test/unstable/http/Multipart.test.ts .changeset/fix-multipart-file-stream-limits.mdCloses EFF-573