Status Update
Comments
el...@google.com <el...@google.com> #2
For Kotlin 2.0 and KSP 2.0 the Cannot change attributes of configuration ':composeApp:debugFrameworkIosX64' after it has been locked for mutation
really seems like a KSP issue. You should file a bug in their repository with a sample app if possible.
If you downgrade to Kotlin 1.9 then things 'should' work, there are example apps out there with such configuration, like the following one:
ap...@google.com <ap...@google.com> #3
Will try to use the example provided by you to check if it fixes the issue.
el...@google.com <el...@google.com>
na...@google.com <na...@google.com> #4
Note that this issue happens when applying the Compose, KSP and Room Plugin together in Kotlin 2.0.x, the workaround for now is to not use the Room Gradle Plugin and instead specify the schema location vis KSP arguments:
// In the build.gradle
ksp {
arg("room.schemaLocation", "${projectDir}/schemas")
}
li...@linkly.com.au <li...@linkly.com.au> #5
Hi, I encountered a similar problem and was able to resolve it by updating the dependencies
room = "2.7.0-alpha08"
ksp = "2.0.20-1.0.25"
compose-plugin = "1.6.11"
kotlin = "2.0.20"
el...@google.com <el...@google.com> #6
Hi, do you have a sample for us to reproduce the same error on our end? Thanks!
el...@google.com <el...@google.com> #7
Hi, do you have any updates on this for us? Thanks!
el...@google.com <el...@google.com> #8
Closing this issue now, please let us know if the issue persists.
Description
Component used: Room Version used: 2.7.0-alpha-07 (multiplatform) Devices/Android versions reproduced on: No run device needed. Only a Mac to compile on iOS
If this is a bug in the library, we would appreciate if you could attach:
Tested commands :
I'm using a relation with Kotlin Uuid (experimental in 2.0.20) mapped to ByteArray (with UuidTypeAdapter) and stored as BLOB in the database. When I try to run the ksp task to generate iOS code, an error occurs.
I suppose the same issue happens for every non JVM targets.
When I don't use relation (Replace MyEntityEmbed by MyFirstEntity in MyDao), the code compiles correctly.
I think room tries to generate a code near to the one generated for android which uses ByteBuffer to decode BLOBs.