ci: stop piping the macOS xcodebuild through xcbeautify - #391
Merged
Conversation
kraenhansen
force-pushed
the
kh/ci-capture-xcodebuild-log
branch
from
August 10, 2026 19:29
e362967 to
1061c57
Compare
xcbeautify prints the failure summary of a failed archive but not the output of the script phase that actually failed, and its stdout is block-buffered through the pipe, so the tail of the build never reaches the job log either. A failing archive left nothing to diagnose. Take the raw xcodebuild output instead: verbose, but complete and correctly ordered. It was the only use of xcbeautify in the repo. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
kraenhansen
force-pushed
the
kh/ci-capture-xcodebuild-log
branch
from
August 10, 2026 19:30
1061c57 to
1d5868e
Compare
Keeps the existing rationale for the gate and adds the issue tracking the react-native-macos version block that keeps it in place for now. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
kraenhansen
force-pushed
the
kh/ci-capture-xcodebuild-log
branch
from
August 10, 2026 19:35
cd18ce7 to
6495d95
Compare
kraenhansen
marked this pull request as ready for review
August 10, 2026 20:00
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.
When the macOS test app's
xcodebuild archivefails in a script phase, the job log is currently undiagnosable: xcbeautify prints the failure summary (** ARCHIVE FAILED **plus the list of failed phases) but not the phase's own output, and its stdout is block-buffered through the pipe, so only the first handful of build lines ever reach the job log — out of order, after the summary — before the process exits.Hit while investigating the macOS failure on #372 (tracked in #392), where both
[RN] [1] Build Hermescand[CP] Copy XCFrameworkswere reported as failed with zero output explaining either; the actual cause had to be reproduced locally.This drops the pipe entirely and takes the raw
xcodebuildoutput: verbose, but complete and correctly ordered, and the step's exit code is nowxcodebuild's own (so theset -o pipefailguard is no longer needed). It was the only use of xcbeautify in the repo.Also points the
test-macosjob's label gate at #392, which is the current reason the job doesn't run by default.Independent of #372 — this applies to
mainas-is.Test plan
Test app (macOS)on this PR (label-gated onMacOS 💻, added) — build succeeds and the log shows raw xcodebuild output🤖 Generated with Claude Code