https://kotlinlang.org logo
Title
a

Adam Brown

04/15/2023, 11:26 PM
Showing Recent Issues
> Following dependencies exported in the debugFramework binary are not specified as API-dependencies of a corresponding source set:

  

  Files: [/Users/adam/.gradle/caches/modules-2/files-2.1/com.arkivanov.essenty/lifecycle-iosx64/1.0.0/e8175a0fe419ad009b07e14ea991fe54d39be10d/lifecycle.klib]
Interesting, having this build issue for my ios target. Haven't built on here in a while, but I don't think I changed anything very related to this recently.
I've got it added as an api dep in both my common source set as well as my iosMain source set
it looks like it's a problem with 2.0.0
a

Arkadii Ivanov

04/16/2023, 9:00 AM
Interesting! Do you have source sets setup correctly? Also worth trying clean build with --no-build-cache argument. And, are there more logs?
Try updating Essenty to the same version used by your version of Decompose.
a

Adam Brown

04/17/2023, 1:44 AM
oh interesting! let me look
huh different error:
Showing Recent Messages
File being compiled: /Users/runner/work/Decompose/Decompose/decompose/src/commonMain/kotlin/com/arkivanov/decompose/router/children/ChildrenFactory.kt

The root cause java.util.NoSuchElementException was thrown at: org.jetbrains.kotlin.backend.konan.lower.ObjectClassLowering.processObjectClass(ObjectClassLowering.kt:198)
Kotlin 1.8.20
ooo looks related to @Serializer maybe
a

Arkadii Ivanov

04/17/2023, 6:46 AM
This one is different indeed. You need to update Decompose and Essenty to the latest versions.
a

Adam Brown

04/18/2023, 2:26 AM
hey not related, but is that a multiplatform RentrantLock you have in there? I'd love to have to exposed, heck even its own lib. Having to apply the atomicfu compiler plugin just to get that lock is a bit much
a

Arkadii Ivanov

04/18/2023, 7:40 AM
I implemented Lock via expect/actual. On JVM it uses
synchronized
, on Darwin -
NSReentrantLock
I don't need other native targets yet, but there is POSIX mutex in case you need it. https://github.com/arkivanov/Decompose/blob/master/decompose/src/commonMain/kotlin/com/arkivanov/decompose/Lock.kt