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

Pod installation issue: KSCrashAblyFork not found #615

Closed
mattheworiordan opened this issue Jun 22, 2017 · 22 comments
Closed

Pod installation issue: KSCrashAblyFork not found #615

mattheworiordan opened this issue Jun 22, 2017 · 22 comments
Labels
bug Something isn't working. It's clear that this does need to be fixed.

Comments

@mattheworiordan
Copy link
Member

Not able to compile Ably target on Pods for iOS/Objective-C client. Error: "Module 'KSCrashAblyFork' not found" when compiling ARTRest.m. The target for compiling KSCrashAblyFork appears successful prior to this failing point.

compilingfailed

@mattheworiordan mattheworiordan added the bug Something isn't working. It's clear that this does need to be fixed. label Jun 22, 2017
@mattheworiordan
Copy link
Member Author

From customer on how to reproduce. I asked for the project, they have not sent it.

as in cocopods, ably version 1.0.5
I just created a new empty iOS project on XCode, then install Ably through cocoapods. Reopen the project with the pods generated "workspace", and build. You will see the error. This should be enough for you to reproduce the problem.

@ricardopereira can you confirm if you get this issue when doing the above?

@ricardopereira
Copy link
Contributor

@mattheworiordan The latest version (1.0.5) is working fine for me. Please run pod update or more specifically pod repo update to update local specs repositories and try it again.

@mattheworiordan
Copy link
Member Author

@ricardopereira it's not me who has the issue, it's the customer :/ I'll ask them.

@tcard
Copy link
Contributor

tcard commented Jul 5, 2017

This has also been reported by @matt-OfferUp. I also cannot reproduce this. I've tried to spot any config difference between KSCrashAblyFork and other dependencies without finding any. Besides what @ricardopereira says I can only recommend doing a full pod cache clean and then trying again:

pod deintegrate
pod cache clean --all
pod update
pod install

@matt-OfferUp
Copy link

I did all the steps above and am still getting the same error

@ricardopereira
Copy link
Contributor

@matt-OfferUp Could you tell us your CocoaPods version please (pod --version)?

@matt-OfferUp
Copy link

We are running version 1.1.1

@ricardopereira
Copy link
Contributor

@matt-OfferUp Thanks. Could you update the CocoaPods to 1.2.1 and try again (pod update)?

@matt-OfferUp
Copy link

I updated to 1.2.1 and still have the same issue. I even deintegrated, cleaned cache, and updated again and still didnt work.

@mattheworiordan
Copy link
Member Author

@ricardopereira @tcard any further suggestion? It's a bit of a concern we cannot get this working wth Matt. Can you please have a think what else we can do to get to the bottom of this issue?

@matt-OfferUp
Copy link

A quick work around, until we can figure out what the issue is, is to replace @import KSCrashAblyFork with #import <KSCrashAblyFork/KSCrash.h> in ARTRest.m.

If I make this change locally I can build and everything looks good.

@mattheworiordan
Copy link
Member Author

@matt-OfferUp thanks for the notes on the workaround.

I am back from holiday now so will see what we can do to prioritise a more permanent fix tomorrow.

@ricardopereira
Copy link
Contributor

@matt-OfferUp What's the app iOS deployment target (lowest operating system version that the app can run on)? You can only use modules (the "semantic import" like@import) on iOS 7 and macOS Mavericks. It could be related. Or KSCrashAblyFork has the DEFINES_MODULE flag off.

@matt-OfferUp
Copy link

Our deployment target is iOS 9.0 so that shouldn't be an issue. I checked DEFINES_MODULE in KSCrashAblyFork and it was off, though when I manually turn it on it still fails in the same place. (I also tried manually turning on DEFINES_MODULE in the ably pod and in the Pods project, none of which worked)

@tcard
Copy link
Contributor

tcard commented Jul 19, 2017

@ricardopereira Is there any downside to just using #import <KSCrashAblyFork/KSCrash.h>?

@ricardopereira
Copy link
Contributor

@tcard No, it's fine. I have a feeling that all #import are mapped to use @import automatically. Should be fine.

@smhk
Copy link

smhk commented Jul 24, 2017

For what it's worth, I went with

use_frameworks!

in the Podfile and it did seem to solve the problem.

target 'MyProject' do
use_frameworks!
pod 'Ably', '~> 1.0'
end

As has been said, it's fairly depressing that Ably is in Objective-C :/

@mattheworiordan
Copy link
Member Author

As has been said, it's fairly depressing that Ably is in Objective-C :/

Well we'd prefer Swift of course and all of our tests are in Swift for this reason, however there are reasons to use Objective-C even if it's a horrible language, such as portability. For example, see the Sentry library which was rewritten from Swift into Obj-C specifically for this reason.

What is depressing about it being Obj-C given you're just using an exposed API that is Swift/Obj-C independent?

@mattheworiordan
Copy link
Member Author

@smhk, did you see https://github.com/ably/ably-ios/releases/tag/1.0.7? It should fix this issue. It would be good to know if it does for you. Additionally, can you confirm if you have Carthage issues too?

@smhk
Copy link

smhk commented Jul 24, 2017

Sadly I do have carthage issues: as soon as I get a chance, I will try that release you mention.

I kind of have to press on though, now that I've got it stabilized!

Sorry for the disappointment I expressed: I'm a "leading expert" (I guess) in every baas, and I LOVE what you're doing with Ably; I'm investigating for a biggish client that has come along.

You can imagine my disappointment when the iOS pipeline was all messed up. :(

I mean, it should just be click-play. It's just (no offense) not professional at the moment, it's "beta".

@mattheworiordan
Copy link
Member Author

mattheworiordan commented Jul 24, 2017

@smhk I cannot agree with everything you say unfortunately.

Sadly I do have carthage issues: as soon as I get a chance, I will try that release you mention.

Ok, as requested, please advise what the issue is as without that, it's unlikely we'll be able to fix it. As you can see https://github.com/ably/ably-ios/issues?utf8=%E2%9C%93&q=is%3Aissue%20is%3Aopen%20carthage, you are the only one affected by this right now.

I kind of have to press on though, now that I've got it stabilized!

Understood. I would appreciate it if you have time through to try the fix as that was released specifically to address the problem you reported today.

You can imagine my disappointment when the iOS pipeline was all messed up. :(

Sure, but as you know as an expert, regressions occur. This regression is a direct result of the work we did to include exception reporting to our internal error service so that we can identify critical issues without customers reporting them and get fixes out for them. See #603

I mean, it should just be click-play. It's just (no offense) not professional at the moment, it's "beta".

No, it's not beta. It's been stable since 0.8 and used in production with millions of clients. I am not quite sure how you see this as beta because of an installation issue? I apologise there is a regression in the library due to the inclusion of a new dependency, but that really does not mean it's beta, it's a bug and we're (as far as I can tell), being incredibly responsive to help address the problem (you reported it today and we have released, what we hope to be, a fix in the same day)

@smhk
Copy link

smhk commented Jul 24, 2017

You are INCREDIBLY responsive and I am a HUGE fan of Ably. Catch you tomorrow :)

@tcard tcard closed this as completed Nov 3, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working. It's clear that this does need to be fixed.
Development

No branches or pull requests

5 participants