Phil Saul
12/03/2021, 8:57 AMNicolas Picon
12/03/2021, 10:34 AMAuthenticationClientFake.kt: (26, 43): This type is final, so it cannot be inherited from
Is there some plan to support this compiler plugin with Kotlin Native?Siggi Gunnarss
12/03/2021, 2:32 PMkpgalligan
12/03/2021, 4:05 PMkpgalligan
12/03/2021, 4:06 PMkpgalligan
12/03/2021, 4:11 PMAnamika Trivedi
12/03/2021, 7:46 PMdwursteisen
12/04/2021, 10:00 AMtypealias Seconds = Float
. The library is built for Android/JVM/JS.
When I’m using this library in an android application, I can’t import my alias.
I checked in the aar
file: the typealias is present. Also, using my lib in a jvm or js project. the Seconds
alias can be imported. I don’t understand why I can’t import it while I don’t have any issue with other class for my library. Did you already get this issue?Rahul Rawat
12/05/2021, 8:01 AMUnable to resolve dependency for ':@debug/compileClasspath': Could not resolve co.touchlab:kermit:1.0.2.
Show Details
Affected Modules: AddressLibrary
Unable to resolve dependency for ':@debugUnitTest/compileClasspath': Could not resolve co.touchlab:kermit:1.0.2.
Show Details
Affected Modules: AddressLibrary
Unable to resolve dependency for ':@debugAndroidTest/compileClasspath': Could not resolve co.touchlab:kermit:1.0.2.
Show Details
Affected Modules: AddressLibrary
Can anyone help me with any way on how to make them go away or why they are coming?John O'Reilly
12/05/2021, 9:41 AMjvmMain
)...anybody know why that would be the case (the KMP module in this case targets just android and JVM) ?
private static boolean isAndroid() {
try {
Class.forName("android.os.Build");
return true;
} catch (ClassNotFoundException ex) {
return false;
}
}
oshai
12/05/2021, 3:22 PMLuc Girardin
12/05/2021, 5:02 PMAmin Bahiraei
12/06/2021, 5:36 AMPavel Repkin
12/06/2021, 10:57 AM(/Users/par/code/my/github/kmm_cocoa/MyApplicationwithframework/shared/src/iosMain/kotlin/com/example/myapplicationwithframework/Platform.kt:10:15)
at 5 shared 0x000000010b99e05d kfun:com.example.myapplicationwithframework.Platform#<init>(){} + 1181 (/Users/par/code/my/github/kmm_cocoa/MyApplicationwithframework/shared/src/iosMain/kotlin/com/example/myapplicationwithframework/Platform.kt:6:35)
at 6 shared 0x000000010b99dacd kfun:com.example.myapplicationwithframework.Greeting#greeting(){}kotlin.String + 413 (/Users/par/code/my/github/kmm_cocoa/MyApplicationwithframework/shared/src/commonMain/kotlin/com/example/myapplicationwithframework/Greeting.kt:5:26)
I know that debug information is located inside .dsym files, but I have no idea how to fix the issue.
Doesn’t CocopoaPods distribution support crash debugging yet?
EDIT
Stack trace from a CocoaPods distributed app
Uncaught Kotlin exception: kotlin.IllegalStateException: fruit expired
at 0 iosApp 0x00000001013e9131 kfun:kotlin.Throwable#<init>(kotlin.String?){} + 97
at 1 iosApp 0x00000001013e397d kfun:kotlin.Exception#<init>(kotlin.String?){} + 93
at 2 iosApp 0x00000001013e3a7d kfun:kotlin.RuntimeException#<init>(kotlin.String?){} + 93
at 3 iosApp 0x00000001013e3dad kfun:kotlin.IllegalStateException#<init>(kotlin.String?){} + 93
at 4 iosApp 0x00000001013d8302 kfun:com.example.myapplication.Platform#fruit(){}kotlin.String + 146
at 5 iosApp 0x00000001013d7f53 kfun:com.example.myapplication.Platform#<init>(){} + 1587
Ernestas
12/06/2021, 12:01 PMOsman Saral
12/07/2021, 1:08 PMenum ResponseStateEnum<T: AnyObject> {
case loading
case success(T)
case error(RestClientException)
init(_ state: ResponseState<T>?) {
if state is ResponseStateLoading {
self = .loading
} else if let state = state as? ResponseStateSuccess<T>, let content = state.content {
self = .success(content)
} else if let state = state as? ResponseStateError {
self = .error(state.exception)
} else {
fatalError("ResponseStateEnum not syncronized with ResponseState class")
}
}
}
now I get this log
(lldb) po type(of: state!)
PKMMResponseStateLoading
(lldb) po state is PKMMResponseStateLoading
false
Did anything change about sealed classes?tylerwilson
12/07/2021, 3:48 PMJemo
12/07/2021, 4:14 PMbuildTypes
in KMM project? In a plain android project (without KMM) I could have a different base urls written inside app build.gradle
and then I can access that values from code for ex: BuildConfig.BaseUrl
so how to achieve similar behaviour for KMM shared module? as I know I can't access buildConfig from that module.Igor Milakovic
12/07/2021, 5:24 PMiosApp
and androidApp
folders?
Thanks!ursus
12/08/2021, 6:08 AMeygraber
12/08/2021, 6:45 PMnschulzke
12/08/2021, 11:49 PMTask 'embedAndSignAppleFrameworkForXcode' not found in project ':shared'.
I'm running ./gradlew :shared:embedAndSignAppleFrameworkForXcode
from XCode 13.1 on an M1 mac. When I'm on Kotlin 1.5.21, it finds the task and fails because 1.5.21 isn't compatible with Apple Silicon. When I upgrade to Kotlin 1.5.31, I get the above error.
I've double-checked in the log, and all the required environment variables are set by XCode before ./gradlew
is called.hsyogesh
12/09/2021, 7:13 AMkotlin {
android {
publishLibraryVariants("release","debug")
publishing {
publications {
create<MavenPublication>("aar") {
version = "1.0.6"
groupId = "Mobile-Shared"
artifactId = "shared"
artifact("$buildDir/outputs/aar/${project.name}-release.aar")
}
}
}
}
iosX64()
iosArm64()
artifactory {
clientConfig.isIncludeEnvVars = true
setContextUrl("<https://amaas-eos-mw1.cec.lab.emc.com/artifactory/UnityCloud_Generic/android>")
publish(delegateClosureOf<PublisherConfig> {
repository(delegateClosureOf<DoubleDelegateWrapper> {
setProperty("repoKey", "CloudIQ-Mobile-Shared")
setProperty("username", "${articatofryUserName}")
setProperty("password", "${articatofryPassword}")
setProperty("maven", true)
})
defaults(delegateClosureOf<groovy.lang.GroovyObject> {
invokeMethod("publications", "aar")
setPublishPom(true)
setProperty("publishArtifacts", true)
setProperty("publishPom", true)
})
})
}
sendoav
12/09/2021, 2:29 PMCarson Holzheimer
12/09/2021, 2:55 PMdependsOn("syncFramework"), dependsOn("build")
but whenever I build, it doesn't run the task.rsetkus
12/09/2021, 4:13 PM* What went wrong:
Gradle build daemon disappeared unexpectedly (it may have been killed or may have crashed)
Gradle properties:
org.gradle.java.home=/Library/Java/JavaVirtualMachines/jdk1.8.0_311.jdk/Contents/Home
org.gradle.jvmargs=-Xmx6G
org.gradle.daemon=true
org.gradle.parallel=true
Gradle deamon gets killed/disappears at 2g - 3g memory usage.
Task to build fat framework:
tasks.register<FatFrameworkTask>("releaseFatFramework") {
baseName = "MyKMM"
destinationDir = buildDir.resolve("fat-framework/release")
from(
iosArm64().binaries.getFramework("RELEASE"),
iosX64().binaries.getFramework("RELEASE")
)
}
Environment: Java 8, 11 and 17, Kotlin 1.4.32, Gradle 6.5.1, macOS Big Sur
Any ideas what is wrong? It used to build fine.Anamika Trivedi
12/09/2021, 5:49 PMBart Whiteley
12/09/2021, 6:46 PMkotlin-gradle-plugin:1.6.0
my iOS framework doesn’t have bitcode, but kotlin-gradle-plugin:1.5.31
works. What am I doing wrong? I have this:
ios {
binaries {
framework {
baseName = "kmmsharedmodule"
embedBitcode("bitcode")
xcf.add(this)
}
}
}
Jeff Tycz
12/09/2021, 9:11 PMcouldnt find inline method ColumnKt;.Column
and all I have is just a column added. Can you not create an Android app in compose in a KMM app? I can create a new compose app and it works just fineIgor Milakovic
12/09/2021, 11:23 PMandroidApp
, iosApp
, commonMain
, androidMain
and iosMain
. How/where do you implement Crashlytics to capture crash reports in any scenario? Thanks!Igor Milakovic
12/09/2021, 11:23 PMandroidApp
, iosApp
, commonMain
, androidMain
and iosMain
. How/where do you implement Crashlytics to capture crash reports in any scenario? Thanks!Grégory Lureau
12/09/2021, 11:38 PMkpgalligan
12/10/2021, 1:17 PMIgor Milakovic
12/10/2021, 4:17 PMkpgalligan
12/10/2021, 4:19 PMIgor Milakovic
12/10/2021, 4:21 PMkpgalligan
12/10/2021, 4:22 PMcommonMain
and iosMain
are the only thing it cares about. For Android, commonMain
and androidMain
(and I guess androidApp
) are all that it cares about. It's kind of hard to describe what I mean there, but from the compiler and runtime's perspective, commonMain
is just more platform-specific Kotlin (that just happens to have nothing platform specific in it).commonMain
. The way we do that (with Kermit) is there's a "common" LogWriter that will write to Android's Crashlytics on Android. You could do that on your own by simply defining an interface and passing in an implementation on start, but that's what the Kermit LogWriter exists to do.Igor Milakovic
12/10/2021, 4:28 PMkpgalligan
12/10/2021, 4:29 PMIgor Milakovic
12/10/2021, 4:29 PMkpgalligan
12/10/2021, 4:31 PMIgor Milakovic
12/10/2021, 4:32 PMkpgalligan
12/10/2021, 4:32 PMisStatic
needs to be true
cocoapods {
framework {
isStatic = true
}
}
Igor Milakovic
12/10/2021, 4:37 PMkpgalligan
12/10/2021, 4:44 PMIgor Milakovic
12/10/2021, 4:46 PMkpgalligan
12/10/2021, 4:46 PMIgor Milakovic
12/10/2021, 4:46 PMClive Jefferies
12/16/2021, 9:01 AMIgor Milakovic
12/20/2021, 4:05 PM.app.dSYM
?
warning: (x86_64) could not find object file symbol for symbol _kfun:co.touchlab.crashkios#transformException(kotlin.Throwable;kotlin.Function3<kotlin.String,kotlin.String,kotlin.collections.List<kotlin.Long>,kotlin.Unit>){}
warning: (x86_64) could not find object file symbol for symbol _kfun:co.touchlab.crashkios.transformException$throwableBoilerplate#internal
warning: (x86_64) could not find object file symbol for symbol __Konan_init_co.touchlab:crashkios-core
warning: (x86_64) could not find object file symbol for symbol GCC_except_table0
warning: (x86_64) could not find object file symbol for symbol GCC_except_table1
warning: (x86_64) could not find object file symbol for symbol ___unnamed_1
warning: (x86_64) could not find object file symbol for symbol ___unnamed_2
warning: (x86_64) could not find object file symbol for symbol ___unnamed_3
warning: (x86_64) could not find object file symbol for symbol ___unnamed_4
warning: (x86_64) could not find object file symbol for symbol ___unnamed_5
warning: (x86_64) could not find object file symbol for symbol ___unnamed_6
kpgalligan
12/20/2021, 4:13 PMIgor Milakovic
12/20/2021, 4:16 PM