fix(build): Improve error for xcarchive/IPA uploads on non-ARM64#3211
Merged
runningcode merged 3 commits intomasterfrom Mar 12, 2026
Merged
fix(build): Improve error for xcarchive/IPA uploads on non-ARM64#3211runningcode merged 3 commits intomasterfrom
runningcode merged 3 commits intomasterfrom
Conversation
When users try to upload .xcarchive or .ipa files from a non-Apple Silicon Mac (e.g. Intel-based Xcode Cloud), they get a confusing error that only mentions Android formats (APK, AAB). The real reason is that xcarchive/IPA processing is compile-time gated to ARM64 macOS. Add a targeted check on non-ARM64 platforms that detects these file extensions and returns a clear error explaining the Apple Silicon requirement. EME-951 Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
szokeasaurusrex
approved these changes
Mar 12, 2026
src/commands/build/upload.rs
Outdated
|
|
||
| debug!("File format validation failed"); | ||
|
|
||
| #[cfg(not(all(target_os = "macos", target_arch = "aarch64")))] |
Member
There was a problem hiding this comment.
l: I was thinking it might make more sense to have this error only on x86_64 macOS builds, given that the users in #2919 were only confused about the lack of support on Intel Macs, and Xcode Cloud specifically.
Contributor
Author
There was a problem hiding this comment.
Yes, that's a good point but this error would also occur if somehow a user tried to upload an xcarchive on a linux or other machine.
ByteView::open() calls File::open() internally, which fails with a generic I/O error on directories. Since .xcarchive is a directory bundle, the previous validation in validate_is_supported_build() was unreachable — users on non-Apple Silicon got a confusing "Is a directory" error instead of the intended helpful message. Move the extension check before ByteView::open() so the clear error message is shown. Co-Authored-By: Claude Opus 4.6 (1M context) <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.
Summary
.xcarchiveor.ipafiles from a non-Apple Silicon Mac (e.g. Intel-based Xcode Cloud), the error now clearly states the Apple Silicon requirement instead of showing a confusing message that only lists Android formats (APK, AAB).Fixes EME-951
🤖 Generated with Claude Code