Skip to content

Add iBazel protocol forwarding#99

Open
longlho wants to merge 1 commit into
keith:mainfrom
perplexityai:main
Open

Add iBazel protocol forwarding#99
longlho wants to merge 1 commit into
keith:mainfrom
perplexityai:main

Conversation

@longlho

@longlho longlho commented Jul 18, 2026

Copy link
Copy Markdown

Why

Wrapping protocol-aware dev servers in multirun currently consumes iBazel's stdin protocol at the parent, so children such as js_run_devserver miss rebuild notifications and HMR degrades.

What changed

  • Add multirun(..., ibazel_notify_changes = True), which advertises legacy and v1 iBazel notification capabilities and runs children in parallel.
  • Detect protocol-aware children directly or through command wrappers.
  • Send legacy notifications to legacy and v1 children, but send structured IBAZEL_EVENT messages only to v1 children.
  • Keep ordinary children disconnected from control input and preserve existing multirun behavior unless notification forwarding is enabled.
  • Document that non-capable children are not restarted.

Depends on ibazel@v0.30.0+ for structured IBAZEL_EVENT notifications. Legacy notifications continue to work with existing iBazel releases.

Related: bazelbuild/bazel-watcher#833

Verification

Ran patched iBazel against the fixture and confirmed notifications arrive before stdin closes. Legacy events reach both legacy and v1 children, structured events reach only v1 children, and the plain child receives neither.

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.

1 participant