Hey! Is `co.touchlab:kermit-crashlytics:0.1.9` pub...
# touchlab-tools
a
Hey! Is
co.touchlab:kermit-crashlytics:0.1.9
published? When trying to reference it I get:
Could not GET '<https://kotlin.bintray.com/kotlinx/co/touchlab/kermit-crashlytics/0.1.9/kermit-crashlytics-0.1.9.pom>'. Received status code 403 from server: Forbidden
Or is it published in different repository?
m
Hi! The Kermit-crashlytics module was added for the upcoming 1.0 release, which we should be published any day now. In the meantime you can access kermit-crashlytics with the
1.0.0-rc4
version. Keep in mind that the update to 1.0 changed a lot of the base kermit api so you’ll have to do some refactoring if you’re coming from
0.1.9
, and also that
kermit-crashlytics
is marked
Experimental
so its possible it will change in the future
🙇🏻 1
a
Thanks.
Ok, 1.0.0-rc4 worked fine, but now have the same problem with tests artifact.
Could not GET '<https://kotlin.bintray.com/kotlinx/co/touchlab/kermit-crashlytics-test/1.0.0-rc4/kermit-crashlytics-test-1.0.0-rc4.pom>'. Received status code 403 from server: Forbidden
Looks like this one is not published. Without this one can’t get our iosTests to run.
Nevermind. Found it:
implementation("co.touchlab:kermit-crashlytics-test:1.0.0")
Copy code
w: Interop library /Users/.gradle/caches/modules-2/files-2.1/co.touchlab/kermit-crashlytics-iosx64/1.0.0-rc4/b5b06dd334ae3c177c20d7cdca64d8df89df6c0d/kermit-crashlytics-cinterop-kermit-crashlytics can't be exported with -Xexport-library
We have a setup where our shared code is exported as SPM. When creating SPM framework we get this warning. Is that ok?
k
We're waiting on a blog post, but just make everything 1.0.0. That's been published, just not announced.
On the last question...
On the warning, if you can compile and run, then I'm not sure that's an issue. I think it is essentially saying you can't access crashlytics cinterop from you client code if you're exporting kermit-crashlytics.
However, how are you using SPM? To use
kermit-crashlytics
, you need to be building a static framework, and if you're using the Jetbrains XCFramework vs the 3rd party open source plugin, you're probably building a dynamic framework (
XCFramework
from Jetbrains has a bug with static framework that's fixed in kotlin 1.6.2x, which is a bit down the road)
a
Ok, will update to 1.0.0. We are using this library: https://github.com/ge-org/multiplatform-swiftpackage to create the SPM package. Actually tested and everything works fine even with that warning. Non-fatals and crashes are sent to Firebase.
k
That plugin should be OK. We're using that on one project. Will likely move to the JB one after 1.6.20 because it's easier to build just the target you want for local dev, which is a much faster round trip.
a
Does Jetbrains plan to have one in Kotlin 1.6.20? Currently we have a setup for local dev with Pod, but the switching is a bit cumbersome.
k
Have XCFramework support? Yes. You need to write your own
Package.swift
. We're doing local/remote dev with SPM now. Our work is kind of split between cocoapods and SPM at the moment, based on client needs.
XCFramework
task from JB exists now, but again, it doesn't do static frameworks due to a bug, fixed in 1.6.2x. We primarily do static, so it's a bit of a blocker.
a
Sounds nice. Thanks.