diff --git a/config/shrinker/shrinker-rules.pro b/config/shrinker/shrinker-rules.pro index 37c0909c..07cbb443 100644 --- a/config/shrinker/shrinker-rules.pro +++ b/config/shrinker/shrinker-rules.pro @@ -44,3 +44,42 @@ # Ignore warnings about specific classes not being available on Android JDK. -dontwarn java.util.concurrent.Flow$* + +# TODO: Remove once next stable version is released. +# Generic Moshi rules. +-keepnames @com.squareup.moshi.JsonClass class * +-keepnames class kotlin.jvm.internal.DefaultConstructorMarker +-keepclassmembers @com.squareup.moshi.JsonClass @kotlin.Metadata class * { + synthetic (...); +} + +-if @com.squareup.moshi.JsonClass class * +-keep class <1>JsonAdapter { + (...); + ; +} +-if @com.squareup.moshi.JsonClass class **$* +-keep class <1>_<2>JsonAdapter { + (...); + ; +} +-if @com.squareup.moshi.JsonClass class **$*$* +-keep class <1>_<2>_<3>JsonAdapter { + (...); + ; +} +-if @com.squareup.moshi.JsonClass class **$*$*$* +-keep class <1>_<2>_<3>_<4>JsonAdapter { + (...); + ; +} +-if @com.squareup.moshi.JsonClass class **$*$*$*$* +-keep class <1>_<2>_<3>_<4>_<5>JsonAdapter { + (...); + ; +} +-if @com.squareup.moshi.JsonClass class **$*$*$*$*$* +-keep class <1>_<2>_<3>_<4>_<5>_<6>JsonAdapter { + (...); + ; +}