realm / realm-java

Realm is a mobile database: a replacement for SQLite & ORMs
http://realm.io
Apache License 2.0
11.45k stars 1.75k forks source link

kapt plugin throwing error with kotlinx.coroutines 1.7.x #7854

Open ElegyD opened 8 months ago

ElegyD commented 8 months ago

How frequently does the bug occur?

Always

Description

I have updated my app dependencies and some now depend on org.jetbrains.kotlinx:kotlinx-coroutines-core:1.7.1 and org.jetbrains.kotlinx:kotlinx-coroutines-android:1.7.1. Before, they were version 1.6.4. When building the project now, Realm throws an error Field "xyz" of type "@org.jetbrains.annotations.Nullable byte[]" is not supported. Field xyz being a variable of a RealmObject implemented in Kotlin (var xyz: ByteArray? = null).

I tried updating both to the latest version (as of now 1.7.3) but the issue remains. When explicitly downgrading to version 1.6.4 it works again: implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.4!!") implementation("org.jetbrains.kotlinx:kotlinx-coroutines-android:1.6.4!!")

The release notes of kotlinx-coroutines 1.7.0 list some breaking changes, but I haven't been able to find more details.

Stacktrace & log output

> Task :app:kaptDebugKotlin FAILED
error: Field "xyz" of type "@org.jetbrains.annotations.Nullable byte[]" is not supported.
public class Foo extends io.realm.RealmObject {
       ^
warning: Unclosed files for the types 'io.realm.foo_bar_FooRealmProxy'; these types will not undergo annotation processing

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:kaptDebugKotlin'.
> A failure occurred while executing org.jetbrains.kotlin.gradle.internal.KaptWithoutKotlincTask$KaptExecutionWorkAction
   > java.lang.reflect.InvocationTargetException (no error message)

* Try:
> Run with --stacktrace option to get the stack trace.
> Run with --info or --debug option to get more log output.
> Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 21s
40 actionable tasks: 40 executed

Can you reproduce the bug?

Always

Reproduction Steps

Version

10.17.0

What Atlas App Services are you using?

Local Database only

Are you using encryption?

No

Platform OS and version(s)

Android 14, SDK 34

Build environment

Android Studio version: Giraffe 2022.3.1 Patch 2 Android Build Tools version: 33.0.1 Gradle version: 8.0 Kotlin & kapt version: 1.9.0

dejiapps commented 8 months ago

I'm having the same issue!!

vitalyveldyasov commented 2 months ago

I have the same error. I tried kotlinx-coroutines-core:1.7.x, 1.8.0

mgoyanes commented 2 months ago

Also have the same issue

caeduk commented 2 months ago

this solves the issue:

configurations.all {
        resolutionStrategy {
            force("org.jetbrains:annotations:13.0")
       }
}