qdsfdhvh / compose-imageloader

Compose Image library for Kotlin Multiplatform.
https://qdsfdhvh.github.io/compose-imageloader/
MIT License
435 stars 15 forks source link

Function toByteArray can not be called: No function found for symbol - Compose Multiplatform Build time error #636

Open santyas opened 4 days ago

santyas commented 4 days ago

Hello! Hope you are fine!

Im getting this error at build console when I rebuild or make the compose multiplatform project from android studio:

Tasks:

Task :composeApp:linkReleaseFrameworkIosArm64 Task :composeApp:linkDebugFrameworkIosX64

i: <io.github.qdsfdhvh:image-loader> @ /Users/runner/work/compose-imageloader/compose-imageloader/image-loader/src/darwinMain/kotlin/com/seiko/imageloader/util/Platform.darwin.kt:12:15: Function 'toByteArray' can not be called: No function found for symbol 'io.ktor.util/toByteArray|-4507240011958277589[0]'

<missing declarations>: No function found for symbol 'io.ktor.util/toByteArray|-4507240011958277589[0]'

This is my gradle setting: https://gist.github.com/santyas/5a79f1d997a571c3ebfb8d0354c8ffee

I want to clarify that I do not have this library directly installed, I am not using it explicitly but I understand some of my dependencies.

Let me know if you need more relevant information :) Thank you!

qdsfdhvh commented 3 days ago

It seems to be caused by ktor version conflict, the library is currently using 3.0.0-rc1, you can try to upgrade your ktor to 3.0.0+, maybe it can be fixed.

santyas commented 3 days ago

At the moment I use 3.0.0 as I have declared in the gradle link

qdsfdhvh commented 3 days ago

Hi, sorry for only replying now, what is the version of compose-imageloader, if it is lower, you can try to upgrade the version of compose-imageloader, or lower the version of ktor to 2.+ first.

santyas commented 3 days ago

I don't have compose-imageloader installed directly for me into the libs.version.toml or gradle setting. Possibly some of the libraries that I have installed use it behind the scenes. Is there any method to find it?

santyas commented 3 days ago

Ive found this one https://github.com/Chaintech-Network/QRKitComposeMultiplatform/blob/main/gradle/libs.versions.toml Im using that library in my project

qdsfdhvh commented 2 days ago

1.6.4 adapts ktor 2.3.3, so it conflicts with ktor 3.+. You can rely on image-loader 1.8.2+ to bring it up to a newer version, but since I can't see the network.chaintech:qr-kit source, maybe have other conflicts.

network.chaintech:qr-kit:3.0.1
|    +--- org.jetbrains.kotlin:kotlin-stdlib:2.0.20 -> 2.0.21
|    +--- org.jetbrains.compose.runtime:runtime:1.7.0-rc01 -> 1.7.0 (*)
|    +--- org.jetbrains.compose.material3:material3:1.7.0-rc01 -> 1.7.0 (*)
|    +--- org.jetbrains.compose.material:material-icons-extended:1.7.0-rc01 -> 1.7.0 (*)
|    +--- org.jetbrains.compose.components:components-resources:1.7.0-rc01 -> 1.7.0 (*)
+|    +--- io.github.qdsfdhvh:image-loader:1.6.4
|    |    +--- org.jetbrains.compose.ui:ui:1.4.3 -> 1.7.0 (*)
|    |    +--- org.jetbrains.kotlinx:kotlinx-coroutines-core:1.7.2 -> 1.8.0 (*)
|    |    +--- com.squareup.okio:okio:3.4.0
|    |    +--- io.ktor:ktor-client-core:2.3.3
|    |    |    +--- org.jetbrains.kotlinx:kotlinx-coroutines-core:1.7.1 -> 1.8.0 (*)
|    |    |    +--- io.ktor:ktor-http:2.3.3
|    |    |    |    +--- org.jetbrains.kotlinx:kotlinx-coroutines-core:1.7.1 -> 1.8.0 (*)
|    |    |    |    +--- io.ktor:ktor-utils:2.3.3
|    |    |    |    |    +--- org.jetbrains.kotlinx:kotlinx-coroutines-core:1.7.1 -> 1.8.0 (*)
|    |    |    |    |    +--- io.ktor:ktor-io:2.3.3
|    |    |    |    |    |    +--- org.jetbrains.kotlinx:kotlinx-coroutines-core:1.7.1 -> 1.8.0 (*)
|    |    |    |    |    |    \--- org.jetbrains.kotlinx:atomicfu:0.19.0 -> 0.23.2 (*)
|    |    |    |    |    \--- org.jetbrains.kotlinx:atomicfu:0.19.0 -> 0.23.2 (*)
|    |    |    |    \--- org.jetbrains.kotlinx:atomicfu:0.19.0 -> 0.23.2 (*)
|    |    |    +--- io.ktor:ktor-events:2.3.3
|    |    |    |    +--- org.jetbrains.kotlinx:kotlinx-coroutines-core:1.7.1 -> 1.8.0 (*)
|    |    |    |    +--- io.ktor:ktor-http:2.3.3 (*)
|    |    |    |    +--- io.ktor:ktor-utils:2.3.3 (*)
|    |    |    |    \--- org.jetbrains.kotlinx:atomicfu:0.19.0 -> 0.23.2 (*)
|    |    |    +--- io.ktor:ktor-websocket-serialization:2.3.3
|    |    |    |    +--- org.jetbrains.kotlinx:kotlinx-coroutines-core:1.7.1 -> 1.8.0 (*)
|    |    |    |    +--- io.ktor:ktor-http:2.3.3 (*)
|    |    |    |    +--- io.ktor:ktor-serialization:2.3.3
|    |    |    |    |    +--- org.jetbrains.kotlinx:kotlinx-coroutines-core:1.7.1 -> 1.8.0 (*)
|    |    |    |    |    +--- io.ktor:ktor-http:2.3.3 (*)
|    |    |    |    |    +--- io.ktor:ktor-websockets:2.3.3
|    |    |    |    |    |    +--- org.jetbrains.kotlinx:kotlinx-coroutines-core:1.7.1 -> 1.8.0 (*)
|    |    |    |    |    |    +--- io.ktor:ktor-http:2.3.3 (*)
|    |    |    |    |    |    \--- org.jetbrains.kotlinx:atomicfu:0.19.0 -> 0.23.2 (*)
|    |    |    |    |    \--- org.jetbrains.kotlinx:atomicfu:0.19.0 -> 0.23.2 (*)
|    |    |    |    \--- org.jetbrains.kotlinx:atomicfu:0.19.0 -> 0.23.2 (*)
|    |    |    \--- org.jetbrains.kotlinx:atomicfu:0.19.0 -> 0.23.2 (*)
|    |    +--- com.eygraber:uri-kmp:0.0.12
|    |    +--- io.ktor:ktor-client-darwin:2.3.3
|    |    |    +--- org.jetbrains.kotlinx:kotlinx-coroutines-core:1.7.1 -> 1.8.0 (*)
|    |    |    +--- org.jetbrains.kotlinx:atomicfu:0.19.0 -> 0.23.2 (*)
|    |    |    \--- io.ktor:ktor-client-core:2.3.3 (*)
|    |    \--- androidx.collection:collection:1.3.0-alpha04
|    |         \--- org.jetbrains.kotlin:kotlin-stdlib:1.8.10 -> 2.0.21
|    \--- network.chaintech:cmp-image-pick-n-crop:1.0.3
|         +--- org.jetbrains.kotlin:kotlin-stdlib:2.0.0 -> 2.0.21
|         +--- org.jetbrains.compose.runtime:runtime:1.7.0-alpha03 -> 1.7.0 (*)
|         +--- org.jetbrains.compose.foundation:foundation:1.7.0-alpha03 -> 1.7.0 (*)
|         +--- org.jetbrains.compose.material3:material3:1.7.0-alpha03 -> 1.7.0 (*)
|         +--- org.jetbrains.compose.components:components-resources:1.7.0-alpha03 -> 1.7.0 (*)
|         \--- org.jetbrains.compose.components:components-ui-tooling-preview:1.7.0-alpha03
|              \--- org.jetbrains.kotlin:kotlin-stdlib:1.9.23 -> 2.0.21