-
-
Notifications
You must be signed in to change notification settings - Fork 881
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
Update cocoapod to support arm64 simulators on m1 Macs #948
Comments
I'm not using M1 Mac, but I also get this specific error when running the app in release mode. |
I am also getting this error running on release mode and not using M1 Mac. |
I think this is more a problem with the google sdk rather than with the cocoapod, no? |
@petea ia marked as a maintainer in the pod page, but that pod don't see a update in a long time |
any update? |
Some people mirror the sdk with the arm64 support. Is there any change we can use this as a dependency for this project? |
+1 |
Have you tried replacing it? Could be an option if it's easy to replace with the original library |
I'm happy to announce that next week we'll be making a substantive update to Google Sign-In for iOS that will provide Simulator support on M1 Macs among other improvements. I'll provide another update here as soon as the new release is available. |
@petea fantastic! I actually had a go this afternoon at switching to the OpenGoogleSignInSDK from @AckeeCZ and found that for this module it would be pretty non-trivial to switch, so having the current underlying SDK working for M1 macs will be a big win. Just in case someone else has a better time of it than me or someone else wants to know why I say it's difficult here:
It's software, so anything is possible, and the OpenGoogleSignInSDK looks like a great solution - but for an Objective-C/Cocoapods project that needs more APIs than it currently has it would require a lot of adaptation. So I'll wait a week :-) Cheers |
Google Sign-In iOS 6.0.0 has been released and is now open source on GitHub! |
@mikehardy Have you had any chance to look into the upgrade? |
any update? |
Nope sorry. On billable work more than full time at the moment. |
I took another look at this morning. Unfortunately the change from v5 to v6 of the GoogleSignIn library represents a wide-ranging set of breaking API changes. https://github.com/google/GoogleSignIn-iOS/releases/tag/6.0.0
Things here that make it hard to actually do the work:
So, I ran out of time budget on this one again. Not sure when/if I'll have another time slice but what we really need here is someone with react-native skills to refresh the example app here as a basis for development, and with Objective-C skills to get busy with it. It would probably be easier to use the sample app in the new repository as a basis for a fresh implementation from scratch. |
That's unfortunate, sadly I can't help either since I don't do Objective C, can you think of any workaround to disable google-signin in the build for simulator? |
Yeah, in my project I'm currently running a new "arm64-hack" Then in At that point, you've hacked out the iOS bits that touch google signin. The last item that might catch you out is that if you are running under VS Code and attempt to compile in the terminal inside VSCode you'll run into the bug where VSCode terminals are running under Rosetta 2 for some reason, which I will cross-link with this reference here: microsoft/vscode#116763 It will work if you use Terminal outside VS Code though. My app is now running (or, limping) along on Apple Silicon, just without this google signin functionality at the moment. |
I will look into that, thanks a lot for your iinput |
This migration guide should help - https://developers.google.com/identity/sign-in/ios/quick-migration-guide |
That is a help - thanks @paulb777 - happy to see anyone else do a PR here of course, but if not I may have a timeslice for it again next week |
Also the example at firebase/quickstart-ios#1222 might be a useful template. |
Hi, I created a sign in library using the new module over the weekend. It is still very WIP and currently hosted at https://github.com/kalvin807/react-native-google-sign-in. Take a look if you are currently migrating your app :) |
@kalvin807, I attempted to create an ephemeral PR between your module and this one and it is not even a fork of this repo so I was unable to compare changes. This repo has 2300+ stars indicating a sizable community of interested people, I'm not sure why you would base your work in a hard-fork manner given the maintenance notice on the repo:
It appears you just need to ask if you would like to make wide-ranging changes like your first issue / release 1.0 roadmap. Given the openness to new collaborators in that message, hard-fork doesn't seem warranted unless I'm missing a technical reason for it? Curious if I'm missing something. |
@mikehardy I was planned to create a new library instead, but I do agree you on the popularity of the project already gained. I will create merge my project into this by PRs, to merge the new example and support on new iOS google signin module |
Oh that's excellent! Never underestimate the power of community over time - out of those 2300 stars, it may not seem like a lot of PRs come vs the amount of people using it, but if even 1% contribute back that's 20 people that can help test things and report issues and port to the latest react-native API (or whatever) which is an unbelievable benefit when it comes to year 3 or year 4 of a project. Always better to keep a community in one spot of you can. I'm excited to see the PRs and can help test, myself. I'm interested in getting the new arm64-capable version of underlying SDK merged of course, I just don't have time for the actual Objective-C work since I'm so slow at Objective-C 😅 |
This comment has been minimized.
This comment has been minimized.
Hello folks, I have started the work to upgrade this lib to google sign in SDK v6 to unblock this issue. I am planning to work on this in some spare time over the next few weeks. If you want to support me, you can do that via a one-time sponsorship here or by a regular, recurring sponsorship. All sponsorships are appreciated and will motivate me to spend time on this, such as this Sunday morning. 🤗 First step is almost done here #982 - updating the example app to latest RN. Next up I'll look into upgrading the underlying sdk. Thank you! 🙂 |
That's excellent @vonovak - honestly the example app being out of date was one of the biggest stumbling blocks for me to collaborate, I am so tired of fiddling with example apps ;-) - I usually just auto-generate them for that reason Once you've got that merged, if there's any progress I'll be happy to work with you to test on an M1 mac etc |
@mikehardy yes, example apps are that kind of work that does not really add anything new but still needs to be done 😆 . I'll look at that auto-generation script, thanks! I'll let you know when there's something to test - I don't have a M1 macbook. |
hello folks, I am pleased to report I made some progress and the latest google sign in sdk can be tested by installing
see more in #972 (comment) |
Fantastic @vonovak !! I'll do another round of testing on my M1 machine with this test-integrated and if I see anything I'll let you know. Assuming this works, with iOS+Hermes working on M1 with react-native 0.65 I'm down to one library left: fbsdk :-). Bit by bit... |
Hi all, Previously I was using yarn remove react-native-google-signin
yarn add react-native-google-signin/[email protected]
cd ios && pod install But I'm getting the duplicate symbols error. Been stuck on this for some days now. |
The cocoapod for this library is outdated and does not compile for iOS simulator on arm64 (Apple M1) Macs. Due to this arm64 Mac owners are forced to compile their apps in x86_64 emulated mode.
Here is a description of the update needed to resolve this problem from another library where this was recently fixed:
Steps to Reproduce
Expected Behavior
Actual Behavior
Environment
MacOS 11.2 (arm64 M1)
react-native 0.63.3
google-signin 5.0.0
RNGoogleSignin 5.0.0 (pod)
The text was updated successfully, but these errors were encountered: