FastMask/app/proguard-rules.pro
Paweł Orzech 5ab1be6cd4
Release v1.1: Fix ProGuard/R8 minification crash
- Fix ParameterizedType casting error in release builds
- Add ProGuard rules for Google Tink (security-crypto dependency)
- Add dontwarn rules for Tink optional dependencies
- Bump version to 1.1
- Update README with changelog
2026-01-31 02:10:24 +01:00

57 lines
1.9 KiB
Prolog

# Add project specific ProGuard rules here.
# You can control the set of applied configuration files using the
# proguardFiles setting in build.gradle.kts.
# Keep Kotlin serialization
-keepattributes *Annotation*, InnerClasses
-dontnote kotlinx.serialization.AnnotationsKt
-keepclassmembers class kotlinx.serialization.json.** {
*** Companion;
}
-keepclasseswithmembers class kotlinx.serialization.json.** {
kotlinx.serialization.KSerializer serializer(...);
}
# Keep JMAP models
-keep,includedescriptorclasses class com.fastmask.data.api.**$$serializer { *; }
-keepclassmembers class com.fastmask.data.api.** {
*** Companion;
}
-keepclasseswithmembers class com.fastmask.data.api.** {
kotlinx.serialization.KSerializer serializer(...);
}
# Retrofit
-keepattributes Signature, InnerClasses, EnclosingMethod
-keepattributes RuntimeVisibleAnnotations, RuntimeVisibleParameterAnnotations
-keepclassmembers,allowshrinking,allowobfuscation interface * {
@retrofit2.http.* <methods>;
}
-dontwarn org.codehaus.mojo.animal_sniffer.IgnoreJRERequirement
-dontwarn javax.annotation.**
-dontwarn kotlin.Unit
-dontwarn retrofit2.KotlinExtensions
-dontwarn retrofit2.KotlinExtensions$*
# OkHttp
-dontwarn okhttp3.**
-dontwarn okio.**
# Google Tink (used by security-crypto)
-keep class com.google.crypto.tink.** { *; }
-keepclassmembers class * extends com.google.crypto.tink.shaded.protobuf.GeneratedMessageLite {
<fields>;
}
# Tink optional dependencies (not used but referenced)
-dontwarn com.google.api.client.http.**
-dontwarn com.google.errorprone.annotations.InlineMe
-dontwarn org.joda.time.**
# Google Error Prone annotations
-dontwarn com.google.errorprone.annotations.CanIgnoreReturnValue
-dontwarn com.google.errorprone.annotations.CheckReturnValue
-dontwarn com.google.errorprone.annotations.Immutable
-dontwarn com.google.errorprone.annotations.RestrictedApi
-dontwarn javax.annotation.**