-
Notifications
You must be signed in to change notification settings - Fork 29.7k
Detect additional ARM ffi CocoaPods error #94385
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
| ); | ||
| expect(usage.events, contains(const TestUsageEvent('pod-install-failure', 'arm-ffi'))); | ||
| final Map<String, String> possibleErrors = <String, String>{ | ||
| 'symbol not found': 'LoadError - dlsym(0x7fbbeb6837d0, Init_ffi_c): symbol not found - /Library/Ruby/Gems/2.6.0/gems/ffi-1.13.1/lib/ffi_c.bundle', |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is the original message.
| expect(usage.events, contains(const TestUsageEvent('pod-install-failure', 'arm-ffi'))); | ||
| final Map<String, String> possibleErrors = <String, String>{ | ||
| 'symbol not found': 'LoadError - dlsym(0x7fbbeb6837d0, Init_ffi_c): symbol not found - /Library/Ruby/Gems/2.6.0/gems/ffi-1.13.1/lib/ffi_c.bundle', | ||
| 'incompatible architecture': "LoadError - (mach-o file, but is an incompatible architecture (have 'arm64', need 'x86_64')), '/usr/lib/ffi_c.bundle' (no such file) - /Library/Ruby/Gems/2.6.0/gems/ffi-1.15.4/lib/ffi_c.bundle", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| 'incompatible architecture': "LoadError - (mach-o file, but is an incompatible architecture (have 'arm64', need 'x86_64')), '/usr/lib/ffi_c.bundle' (no such file) - /Library/Ruby/Gems/2.6.0/gems/ffi-1.15.4/lib/ffi_c.bundle", | ||
| }; | ||
| possibleErrors.forEach((String errorName, String cocoaPodsError) { | ||
| testUsingContext('ffi $errorName failure on ARM macOS prompts gem install', () async { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Same test, two different errors to parse.
| ); | ||
| } else if (stdout.contains('Init_ffi_c') && | ||
| stdout.contains('symbol not found') && | ||
| } else if (stdout.contains('ffi_c.bundle') && stdout.contains('LoadError') && |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Both reported errors contain ffi_c.bundle and LoadError.
|
Friendly ping @christopherfujino |
christopherfujino
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM

CocoaPods crashes on ARM Macs if the x86 version of the
ffigem isn't installed.#70801 detected one crash, but there have been additional crash messages reported. Parse
LoadErrorand the file in questionffi_c.bundleso users get a prompt in both cases about how to fix it (withsudoso we can't just do it ourselves)Fixes #93908.
Pre-launch Checklist
///).