Repository navigation
Commit cfd457f
Reject an Xcode whose xcodebuild cannot exit cleanly, and retire the probe
The probe answered what it was for, on the real image:
Xcode_27_Release_Candidate.app -> prints "Xcode 27.0", exit 134
Xcode_27.0.0.app / Xcode_27.0.app / Xcode.app -> 27.0, exit 0
Two traps in one line, not one. The crashing app is FIRST in glob order, so
without `|| true` the failing status propagates out of the assignment and
`set -e` kills selection on candidate one -- before any working Xcode is tried,
and with no output at all, because the crash text went to /dev/null. That much
the previous commit fixed.
But it also prints a perfectly good version BEFORE aborting, so testing the
string alone accepts an Xcode whose xcodebuild dies. On this image that was
survivable only because all four report 27.0 and the tie-break keeps the last
one, which is luck: had the crashing app sorted last, it would have been chosen
and every build on it would have failed somewhere less obvious. Candidates are
now judged on their exit status too.
A/B against a fake /Applications holding a crasher that sorts first and prints a
version, plus a working Xcode: master exits 134 and selects nothing; this selects
the working one and exits 0.
The probe workflow goes, as its header said it would.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>1 parent 4c92f9f commit cfd457f
2 files changed
Lines changed: 24 additions & 86 deletions
This file was deleted.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
58 | 58 | | |
59 | 59 | | |
60 | 60 | | |
61 | | - | |
62 | | - | |
63 | | - | |
64 | | - | |
65 | | - | |
66 | | - | |
67 | | - | |
68 | | - | |
69 | | - | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
70 | 81 | | |
71 | 82 | | |
| 83 | + | |
| 84 | + | |
| 85 | + | |
| 86 | + | |
72 | 87 | | |
73 | 88 | | |
74 | 89 | | |
| |||
0 commit comments