aboutsummaryrefslogtreecommitdiff
path: root/core/proguard/kotlin.flags
blob: ef6bf0e9e3559f4f5e838aa0aee8f8ba3671f7b0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
# Ignore missing Kotlin meta-annotations so that Java-only projects can depend
# on projects that happen to be written in Kotlin but do not have a run-time
# dependency on the Kotlin standard library. Note these annotations are RUNTIME
# retention, but we won't need them available in Java-only projects.
-dontwarn kotlin.Metadata
-dontwarn kotlin.annotation.AnnotationRetention
-dontwarn kotlin.annotation.AnnotationTarget
-dontwarn kotlin.annotation.Retention
-dontwarn kotlin.annotation.Target

# Kotlin DebugMetadata has no value in release builds, these two rules, will
# allow AppReduce to strip out DebutMetadata.
# TODO(b/302383328): Restore the below checkdiscard after resolving transitive
# inclusion of kotlin-stdlib from androidx.annotation library deps.
# -checkdiscard interface kotlin.coroutines.jvm.internal.DebugMetadata
-assumenosideeffects class kotlin.coroutines.jvm.internal.DebugMetadataKt {
  *** getDebugMetadataAnnotation(...);
}
-assumevalues class kotlin.coroutines.jvm.internal.DebugMetadataKt {
  *** getDebugMetadataAnnotation(...) return null;
}