Skip to content
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

No visible @interface for 'FBSDKLoginManager' declares the selector 'logInWithReadPermissions' #684

Closed
jonathanfoster opened this issue May 25, 2019 · 14 comments
Assignees

Comments

@jonathanfoster
Copy link

jonathanfoster commented May 25, 2019

I just updated my pods and ran into a compiler error in FirebaseUI/Facebook. The error is:

 No visible @interface for 'FBSDKLoginManager' declares the selector 'logInWithReadPermissions:fromViewController:handler:'

It occurs at https://github.com/firebase/FirebaseUI-iOS/blob/master/FacebookAuth/FirebaseFacebookAuthUI/FUIFacebookAuth.m#L139.

Has FirebaseUI 7.0.0 been officially released? As I was researching the issue, I found the latest FirebaseUI release is 6.2.1, but there's a v7.0.0-prerelease branch and the Podspec has been updated to 7.0.0 (https://github.com/firebase/FirebaseUI-iOS/blob/master/FirebaseUI.podspec#L3).

Here's the relevant output from pod install:

Using FBSDKCoreKit (5.0.1)
Using FBSDKLoginKit (5.0.1)
Using Firebase (6.1.0)
Using FirebaseABTesting (3.0.0)
Using FirebaseAnalytics (6.0.1)
Using FirebaseAnalyticsInterop (1.2.0)
Using FirebaseAuth (6.1.0)
Using FirebaseAuthInterop (1.0.0)
Using FirebaseCore (6.0.1)
Using FirebaseDatabase (6.0.0)
Using FirebaseInstanceID (4.1.0)
Using FirebaseMessaging (4.0.1)
Using FirebaseRemoteConfig (4.0.0)
Using FirebaseStorage (3.2.1)
Using FirebaseUI (7.0.0)
Using GoogleSignIn (4.4.0)

I'm referencing pods without a version specifier. Here's the relevant portion of my Podfile:

pod 'Firebase/Analytics'
pod 'Firebase/Auth'
pod 'Firebase/Core'
pod 'Firebase/Database'
pod 'Firebase/Messaging'
pod 'Firebase/RemoteConfig'
pod 'Firebase/Storage'
pod 'FirebaseUI/Auth'
pod 'FirebaseUI/Email'
pod 'FirebaseUI/Facebook'
pod 'FirebaseUI/Google'
@jonathanfoster
Copy link
Author

jonathanfoster commented May 25, 2019

Looks like the issue has already been resolved by @renkelvin in #683 and it's released in 6.2.1, but it hasn't made it to 7.0.0 yet.

I'd rather not pin FirebaseUI to ~6.0 because FirebaseUI/Auth pins Firebase to 5.0 and I'm on 6.0 now.

[!] CocoaPods could not find compatible versions for pod "Firebase/Auth":
  In snapshot (Podfile.lock):
    Firebase/Auth (= 6.1.0, ~> 6.0)

  In Podfile:
    Firebase/Auth

    FirebaseUI/Email (~> 6.0) was resolved to 6.0.0, which depends on
      FirebaseUI/Auth (= 6.0.0) was resolved to 6.0.0, which depends on
        Firebase/Auth (~> 5.0)

@jonathanfoster jonathanfoster changed the title Has FirebaseUI 7.0.0 been officially released to CocoaPods? No visible @interface for 'FBSDKLoginManager' declares the selector 'logInWithReadPermissions' May 26, 2019
@adamteale
Copy link

@jonathanfoster did you manage to find a solution?
I am experiencing the same error at https://github.com/firebase/FirebaseUI-iOS/blob/master/FacebookAuth/FirebaseFacebookAuthUI/FUIFacebookAuth.m#L139

@paulsUsername
Copy link

Yeah, this is causing a major issue over here. Can't build anymore. All that was done was upgrading to the latest version. We are using Firebase-UI

@jonathanfoster
Copy link
Author

@adamteale I ended up temporarily removing FirebaseUI/Facebook until this issue is resolved. Not sure if this is an option for your situation. Rolling back to v6.2.1 is probably the best way to go since v7.0 is prerelease. The fix looks super simple though so hopefully #686 can be merged quickly.

@jonathanfoster
Copy link
Author

Kudos to @morganchen12 for the fast turnaround time 💪. He merged #686 into v7.0.0-prerelease so we should be good. I can't verify myself right now, but if someone else can then I can close this issue.

@legolasW
Copy link

I rolled back to the v6.2.1, and for some reason it seems to be more problematic. After rolling back from 7.0.0 to 6.2.1, I got 10+ FBSDKLoginKit errors including:

/Users/legolas/Developer/BeyondFluencyApp/Pods/FBSDKLoginKit/FBSDKLoginKit/FBSDKLoginKit/Internal/FBSDKLoginManagerLogger.m:67:53: No known class method for selector 'objectForJSONString:error:'

/Users/legolas/Developer/BeyondFluencyApp/Pods/FBSDKLoginKit/FBSDKLoginKit/FBSDKLoginKit/Internal/FBSDKLoginManagerLogger.m:158:56: No known class method for selector 'JSONStringForObject:error:invalidObjectHandler:'

@legolasW
Copy link

@jonathanfoster I just tested the v7.0.0 and sadly it still throws this error:
/Users/legolas/Developer/BeyondFluencyApp/Pods/FirebaseUI/FacebookAuth/FirebaseFacebookAuthUI/FUIFacebookAuth.m:139:18: No visible @interface for 'FBSDKLoginManager' declares the selector 'logInWithReadPermissions:fromViewController:handler:'

@adamdrichardson
Copy link

adamdrichardson commented May 29, 2019

@jonathanfoster I have just done a fresh install of FirebaseUI and a clean build and it compiles with no errors so looks like it is working

@legolasW
Copy link

I'm confused. I created a new project with podfile:

pod 'Firebase/Core'
pod 'FirebaseUI'

And the errors remains: No visible @interface for 'FBSDKLoginManager' declares the selector 'logInWithReadPermissions:fromViewController:handler:'

Here are the dependencies:
Using BoringSSL-GRPC (0.0.3)
Using FBSDKCoreKit (5.0.1)
Using FBSDKLoginKit (5.0.1)
Using Firebase (6.1.0)
Using FirebaseAnalytics (6.0.1)
Using FirebaseAuth (6.1.0)
Using FirebaseAuthInterop (1.0.0)
Using FirebaseCore (6.0.1)
Using FirebaseDatabase (6.0.0)
Using FirebaseFirestore (1.3.1)
Using FirebaseInstanceID (4.1.0)
Using FirebaseStorage (3.2.1)
Using FirebaseUI (7.0.0)
Using GTMSessionFetcher (1.2.2)
Using GoogleAppMeasurement (6.0.1)
Using GoogleSignIn (4.4.0)
Using GoogleToolboxForMac (2.2.1)
Using GoogleUtilities (6.2.0)
Using Protobuf (3.8.0)
Using SDWebImage (4.4.6)
Using gRPC-C++ (0.0.8)
Using gRPC-Core (1.19.0)
Using leveldb-library (1.20)
Using nanopb (0.3.901)

@mkonapelsky
Copy link

Same here. new project with podfile:

pod 'Firebase/Core'
pod 'FirebaseUI'

ERROR: No visible @interface for 'FBSDKLoginManager' declares the selector 'logInWithReadPermissions:fromViewController:handler:'

Using BoringSSL-GRPC (0.0.3)
Using FBSDKCoreKit (5.0.1)
Using FBSDKLoginKit (5.0.1)
Using Firebase (6.1.0)
Using FirebaseAnalytics (6.0.1)
Using FirebaseAuth (6.1.0)
Using FirebaseAuthInterop (1.0.0)
Using FirebaseCore (6.0.1)
Using FirebaseDatabase (6.0.0)
Using FirebaseFirestore (1.3.1)
Using FirebaseInstanceID (4.1.0)
Using FirebaseStorage (3.2.1)
Using FirebaseUI (7.0.0)
Using GTMSessionFetcher (1.2.2)
Using GoogleAppMeasurement (6.0.1)
Using GoogleSignIn (4.4.0)
Using GoogleToolboxForMac (2.2.1)
Using GoogleUtilities (6.2.0)
Using Protobuf (3.8.0)
Using SDWebImage (4.4.6)
Using gRPC-C++ (0.0.8)
Using gRPC-Core (1.19.0)
Using leveldb-library (1.20)
Using nanopb (0.3.901)

@jonathanfoster
Copy link
Author

jonathanfoster commented May 29, 2019

@legolasW, @mkonapelsky: I ran into the same issue and I was able to get latest by cleaning the pod cache and deleting the existing Pods directory.

pod cache clean --all
rm -rf Pods/

@mkonapelsky
Copy link

@legolasW, @mkonapelsky: I ran into the same issue and I was able to get latest by cleaning the pod cache and deleting the existing Pods directory.

pod cache clean --all
rm -rf Pods/

I could have sworn I ran these ... anyway, that worked.

@jimijon
Copy link

jimijon commented Jun 1, 2019

same here... what was the fix?

@jonathanfoster
Copy link
Author

@jimijon The fix was merged into 7.0.0, but because the version number wasn't bumped you have to clean the pod cache and delete your Pods directory.

pod cache clean --all
rm -rf Pods/

8.0.1 was released to address this issue, but it introduced a new Facebook login bug so you'll want to pin FirebaseUI to 7.0.0 until the new issue is resolved (#695).

pod 'FirebaseUI', '~> 7.0'

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

9 participants