Keep parsed and evaled stdout free of warnings #24015

Merged
MikeMcQuaid opened 4:16am on September 17, 2026 wanted to merge 235 Ξ” into homebrew/brew main from
bundle_env_stderr
Diff Delta:
235
Classified as:  General

MikeMcQuaid's Description of Work



  • brew bundle env --check, exec --check and sh --check run the checker without redirecting stdout, so Skipping lines for entries in HOMEBREW_BUNDLE_*_SKIP or unsupported on the platform corrupted eval "$(brew bundle env --check)" and piped brew bundle check. Print them with opoo like other warnings, without a GitHub Actions annotation as they are routine, and let the OS prepends supply only the reason so the warning is printed in one place. Drop the unused silent: keyword.


  • brew update --auto-update runs before brew outdated --json and brew bundle env, so its custom Git remote and stashed changes hints now go to stderr like the rest of the update report.

  • Loading a cask from a URL printed ==> Downloading into brew info --json=v2 <url>, so guard it on a TTY like api.rb.


  • brew verify --json printed has a valid attestation before the JSON.



  • [x] Have you followed our Contributing guidelines?

  • [x] Have you checked for other open Pull Requests for the same change?

  • [x] Have you explained what your changes do? Performance claims (e.g. "this is faster") must include brew benchmark results.

  • [x] Have you explained why you'd like these changes included, not just what they do?

  • [x] For bug fixes, have you given step-by-step brew commands to reproduce the bug?

  • [x] Have you written new tests (excluding integration tests)? Here's an example.

  • [x] Have you successfully run brew lgtm (style, typechecking and tests) locally?



  • [x] I did not use AI/LLM to create this PR, or I disclosed the tool/model below and reviewed its output; I did not attribute commits to AI and will answer maintainer questions and review comments myself without AI/LLM.

Claude with Fable 5.1 at Extra High effort, with local review and testing.


10 total changed files
(1 file ignored)
Loading changes...
Loading changes...
Loading changes...
Loading changes...
Loading changes...
You are now leaving the Pull Request Diff Zone
Approve, request changes, or stare into the void (reviewer's choice) πŸ˜