Repository navigation
Upgrade bufout to v1.0.0 and remove EventEmitter listener limits (main) - #463
Merged
Merged
Conversation
* chore: upgrade bufout to v1.0.0 and drop defaultMaxListeners bumps bufout v1.0.0 keeps the number of listeners on the process and on the output streams constant regardless of how many children are spawned concurrently: a single shared exit/SIGINT listener is attached only while children are running, and every child pipes into one shared pass-through per destination stream. That removes the reason the CLIs raised EventEmitter.defaultMaxListeners to 100, so those assignments (and the now-unused node:events / node:stream imports) are gone and Node's default limit applies again, restoring the leak warning it exists to give. Verified with 80 concurrent children in both "inherit" and "buffered" mode, plus the SpawnFailure flush path, at the default limit of 10: no MaxListenersExceededWarning, and process listener counts return to zero. The public API is unchanged from 0.3.x — the major bump reflects the 1.0.0 milestone, not a breaking change to spawn/SpawnFailure. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01BAjP89a9VA9EtQsVBxGcto * ci: trigger label-gated jobs The Check workflow only runs on opened/synchronize/reopened, so the Apple/Android/Ferric jobs gated on labels never evaluated the labels added after the pull request was opened. This empty commit fires a synchronize event so they run. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01BAjP89a9VA9EtQsVBxGcto --------- Co-authored-by: Claude <noreply@anthropic.com> (cherry picked from commit 48fa7fc)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Cherry-picks #438 from
nextontomain, so the bufout listener-leak fix ships as patch releases rather than only through the rc releases in #394.Merging this PR will:
bufoutto^1.0.0in@react-native-node-api/cli-utils.EventEmitter.defaultMaxListeners = 100workarounds fromcmake-rn,ferric-cliandreact-native-node-api.Additional context intended for coding agents and bots
Relation to
nextThis is
git cherry-pick -x 48fa7fc(#438, merged intonext), applied cleanly with no conflicts. Once this merges,nextwill be rebased ontomainand force-pushed; the rebase drops the original #438 commit as already-applied.next's.changeset/pre.jsonlists no consumed changesets, so the moved.changeset/bufout-one-point-oh.mdis versioned frommainonly.Test plan and verification
pnpm install --frozen-lockfile(lockfile up to date)pnpm run build(passed)pnpm run prettier:check(passed)pnpm run depcheck(passed)pnpm run lintlocally reports 4 errors inapps/test-app/App.tsx, all from example addon types that only exist after the native bootstrap, and none in files touched here; CI runs it with the bootstrap in place.🤖 Generated with Claude Code