Skip to content

Conversation

@Renegade334
Copy link
Member

The current structure of internal/streams/end-of-stream sets module.exports to the eos function, and defines other exports as properties on this function.

However, eos is exported directly from the public stream API, which currently exposes the rest of the module along with it.

Changed to a conventional module namespace.

@nodejs-github-bot
Copy link
Collaborator

Review requested:

  • @nodejs/streams

@nodejs-github-bot nodejs-github-bot added lib / src Issues and PRs related to general changes in the lib or src directory. needs-ci PRs that need a full CI run. labels Jan 20, 2026
@codecov
Copy link

codecov bot commented Jan 21, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 88.53%. Comparing base (91a9978) to head (db1690e).
⚠️ Report is 6 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main   #61455      +/-   ##
==========================================
- Coverage   88.54%   88.53%   -0.01%     
==========================================
  Files         704      704              
  Lines      208971   208973       +2     
  Branches    40341    40341              
==========================================
- Hits       185026   185011      -15     
- Misses      15919    15936      +17     
  Partials     8026     8026              
Files with missing lines Coverage Δ
lib/internal/streams/add-abort-signal.js 100.00% <100.00%> (ø)
lib/internal/streams/compose.js 96.88% <100.00%> (ø)
lib/internal/streams/duplexify.js 96.56% <100.00%> (ø)
lib/internal/streams/end-of-stream.js 97.42% <100.00%> (+0.01%) ⬆️
lib/internal/streams/pipeline.js 95.12% <100.00%> (ø)
lib/internal/streams/readable.js 96.26% <100.00%> (ø)
lib/internal/streams/writable.js 96.64% <100.00%> (ø)
lib/internal/webstreams/adapters.js 85.57% <100.00%> (ø)
lib/stream.js 100.00% <100.00%> (ø)

... and 36 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@MattiasBuelens
Copy link
Contributor

Is this technically a breaking change? Would there be someone out there that was using require('stream').finished.finished?

And even if they were, they really should be using require('stream/promises').finished instead... 😅

@Renegade334
Copy link
Member Author

Would there be someone out there that was using require('stream').finished.finished?

GH code search shows no uses, I wouldn't say there's any great benefit to marking this as a major change, but happy to be overruled.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

lib / src Issues and PRs related to general changes in the lib or src directory. needs-ci PRs that need a full CI run.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants