Am I the only one having some sort of "cache" prob...
# touchlab-tools
c
Am I the only one having some sort of "cache" problems with ios builds? I think it's something with the new cocoapodsext, need to try with the old xcodesync plugin but that's the only thing I've changed so far "cache" problem example: I add a print("hi") on the common code, on android it is printed, on ios it doesn't appear for a random amount of builds/clean; lib is rebuilt every time I change a single line (build time is up to 3 minutes), but code seems to be "old" EDIT: can confirm I have problems with the cocoapodsext plugin, using the old xcodesync method code is updated correctly at each run
r
Are you using a static or dynamic framework? Does the behavior change if you toggle between those? We’ve seen an issue where dynamic frameworks require a clean in xcode (cmd+shift+k) to pick up changes from Kotlin. However, dynamic is also necessary for debugging to work so that’s what we use in KaMPKit by default.
k
It is almost certainly that the cocoapodsext plugin is set to use a dynamic framework, and the older cocoapod will produce a static framework. xcodesync is unrelated. That just pulls Kotlin files into xcode for debugging, but does nothing for compiling code, and xcodesync is fully not needed as you can just reference a folder.
Basically, what Russell said.
c
I was using
Copy code
cocoapodsext {
    ...
    isStatic = false
}
so I think this was not the issue. Sorry for the mistake about xcodesync, I don't know at all what those plugin are doing since I'm mainly working on the android side and I'm not really into all that cocoapods stuff (I am at "pod init, pod install" level). Anyway I'm not sure if cmd+shift+k works since I'm not the one working on the ios side, maybe I'll try in the next days. For now I just switched back to the old config since I needed everything up and running asap. Thanks for the hint, as usual!
k
It should be
isStatic = true
to avoid the refresh issue. Xcode frameworks can be static or dynamic. The default cocoapods plugin can only make static frameworks. We forked the cocoapods plugin so we could make dynamics frameworks. Having them dynamic allows us to attache the debugger. However, for some reason with dynamic frameworks you need to clean build each time. We’re looking into it.