Skip to content

Added Support for Compression#1017

Merged
tunnckoCore merged 3 commits intonode-formidable:masterfrom
Bishops-exe:master
Feb 18, 2026
Merged

Added Support for Compression#1017
tunnckoCore merged 3 commits intonode-formidable:masterfrom
Bishops-exe:master

Conversation

@Bishops-exe
Copy link
Copy Markdown
Contributor

For:

Gzip, Deflate, Brotli and Compress

@tunnckoCore
Copy link
Copy Markdown
Member

@Coding4ever123 thanks for that. I'll keep it in mind.

@Bishops-exe
Copy link
Copy Markdown
Contributor Author

Any update?

@tunnckoCore
Copy link
Copy Markdown
Member

@Coding4ever123 not yet. But i believe a temporary workaround is through plugins? 🤔

Copy link
Copy Markdown
Member

@tunnckoCore tunnckoCore left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

looks good.

@tunnckoCore
Copy link
Copy Markdown
Member

@AdrianDoesCoding merged. not sure when it could be included in a release though. probably soon.

@tunnckoCore tunnckoCore merged commit 1a7f4a9 into node-formidable:master Feb 18, 2026
1 check passed
guimard added a commit to guimard/formidable that referenced this pull request Apr 17, 2026
Since parse() was made async in 3.3.2, it awaits writeHeaders() before
attaching its data listener (req.pipe after node-formidable#1017). If a caller has
attached a 'data' listener on the request before calling form.parse()
(e.g. for content-length accounting), the request stream is already in
flowing mode. Chunks that arrive during the await are emitted and lost
before Formidable pipes the stream, causing the first part(s) of a
multipart body to be silently dropped.

Pause the request at the top of parse() so that chunks are buffered
internally until the parser is ready. req.pipe(pipe) resumes the
stream, so no explicit resume is needed.

Fixes the regression exposed by downstream node-form-data tests
(test-ranged-filestream.js), where the caller adds a req.on('data')
listener for content-length accounting before form.parse(req).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants