# The proguard configuration file for the following section is /home/jenkins/.jenkins/workspace/main-end-to-end-fix/respect-app-compose/build/intermediates/aapt_proguard_file/release/processReleaseResources/aapt_rules.txt -keep class androidx.core.app.CoreComponentFactory { (); } -keep class androidx.core.content.FileProvider { (); } -keep class androidx.credentials.playservices.CredentialProviderMetadataHolder { (); } -keep class androidx.credentials.playservices.HiddenActivity { (); } -keep class androidx.credentials.playservices.IdentityCredentialApiHiddenActivity { (); } -keep class androidx.profileinstaller.ProfileInstallReceiver { (); } -keep class androidx.room.MultiInstanceInvalidationService { (); } -keep class androidx.startup.InitializationProvider { (); } -keep class androidx.work.impl.background.systemalarm.ConstraintProxy$BatteryChargingProxy { (); } -keep class androidx.work.impl.background.systemalarm.ConstraintProxy$BatteryNotLowProxy { (); } -keep class androidx.work.impl.background.systemalarm.ConstraintProxy$NetworkStateProxy { (); } -keep class androidx.work.impl.background.systemalarm.ConstraintProxy$StorageNotLowProxy { (); } -keep class androidx.work.impl.background.systemalarm.ConstraintProxyUpdateReceiver { (); } -keep class androidx.work.impl.background.systemalarm.RescheduleReceiver { (); } -keep class androidx.work.impl.background.systemalarm.SystemAlarmService { (); } -keep class androidx.work.impl.background.systemjob.SystemJobService { (); } -keep class androidx.work.impl.diagnostics.DiagnosticsReceiver { (); } -keep class androidx.work.impl.foreground.SystemForegroundService { (); } -keep class androidx.work.impl.utils.ForceStopRunnable$BroadcastReceiver { (); } -keep class com.google.android.gms.auth.api.signin.RevocationBoundService { (); } -keep class com.google.android.gms.auth.api.signin.internal.SignInHubActivity { (); } -keep class com.google.android.gms.common.api.GoogleApiActivity { (); } -keep class org.acra.attachment.AcraContentProvider { (); } -keep class org.acra.sender.JobSenderService { (); } -keep class org.acra.sender.LegacySenderService { (); } -keep class org.jetbrains.compose.resources.AndroidContextProvider { (); } -keep class world.respect.MainActivity { (); } -keep class world.respect.RespectApp { (); } -keep class world.respect.WebViewActivity { (); } -keep class android.widget.Space { (android.content.Context, android.util.AttributeSet); } -keep class androidx.appcompat.app.AlertController$RecycleListView { (android.content.Context, android.util.AttributeSet); } -keep class androidx.appcompat.view.menu.ActionMenuItemView { (android.content.Context, android.util.AttributeSet); } -keep class androidx.appcompat.view.menu.ExpandedMenuView { (android.content.Context, android.util.AttributeSet); } -keep class androidx.appcompat.view.menu.ListMenuItemView { (android.content.Context, android.util.AttributeSet); } -keep class androidx.appcompat.widget.ActionBarContainer { (android.content.Context, android.util.AttributeSet); } -keep class androidx.appcompat.widget.ActionBarContextView { (android.content.Context, android.util.AttributeSet); } -keep class androidx.appcompat.widget.ActionBarOverlayLayout { (android.content.Context, android.util.AttributeSet); } -keep class androidx.appcompat.widget.ActionMenuView { (android.content.Context, android.util.AttributeSet); } -keep class androidx.appcompat.widget.ActivityChooserView$InnerLayout { (android.content.Context, android.util.AttributeSet); } -keep class androidx.appcompat.widget.AlertDialogLayout { (android.content.Context, android.util.AttributeSet); } -keep class androidx.appcompat.widget.ButtonBarLayout { (android.content.Context, android.util.AttributeSet); } -keep class androidx.appcompat.widget.ContentFrameLayout { (android.content.Context, android.util.AttributeSet); } -keep class androidx.appcompat.widget.DialogTitle { (android.content.Context, android.util.AttributeSet); } -keep class androidx.appcompat.widget.FitWindowsFrameLayout { (android.content.Context, android.util.AttributeSet); } -keep class androidx.appcompat.widget.FitWindowsLinearLayout { (android.content.Context, android.util.AttributeSet); } -keep class androidx.appcompat.widget.LinearLayoutCompat { (android.content.Context, android.util.AttributeSet); } -keep class androidx.appcompat.widget.SearchView$SearchAutoComplete { (android.content.Context, android.util.AttributeSet); } -keep class androidx.appcompat.widget.SwitchCompat { (android.content.Context, android.util.AttributeSet); } -keep class androidx.appcompat.widget.Toolbar { (android.content.Context, android.util.AttributeSet); } -keep class androidx.appcompat.widget.ViewStubCompat { (android.content.Context, android.util.AttributeSet); } -keep class androidx.constraintlayout.helper.widget.Flow { (android.content.Context, android.util.AttributeSet); } -keep class androidx.constraintlayout.widget.ConstraintLayout { (android.content.Context, android.util.AttributeSet); } -keep class androidx.coordinatorlayout.widget.CoordinatorLayout { (android.content.Context, android.util.AttributeSet); } -keep class androidx.core.widget.NestedScrollView { (android.content.Context, android.util.AttributeSet); } -keep class androidx.fragment.app.FragmentContainerView { (android.content.Context, android.util.AttributeSet); } -keep class androidx.preference.UnPressableLinearLayout { (android.content.Context, android.util.AttributeSet); } -keep class androidx.preference.internal.PreferenceImageView { (android.content.Context, android.util.AttributeSet); } -keep class androidx.recyclerview.widget.RecyclerView { (android.content.Context, android.util.AttributeSet); } -keep class com.google.android.material.appbar.AppBarLayout { (android.content.Context, android.util.AttributeSet); } -keep class com.google.android.material.appbar.MaterialToolbar { (android.content.Context, android.util.AttributeSet); } -keep class com.google.android.material.button.MaterialButton { (android.content.Context, android.util.AttributeSet); } -keep class com.google.android.material.button.MaterialButtonToggleGroup { (android.content.Context, android.util.AttributeSet); } -keep class com.google.android.material.chip.Chip { (android.content.Context, android.util.AttributeSet); } -keep class com.google.android.material.datepicker.MaterialCalendarGridView { (android.content.Context, android.util.AttributeSet); } -keep class com.google.android.material.divider.MaterialDivider { (android.content.Context, android.util.AttributeSet); } -keep class com.google.android.material.internal.BaselineLayout { (android.content.Context, android.util.AttributeSet); } -keep class com.google.android.material.internal.CheckableImageButton { (android.content.Context, android.util.AttributeSet); } -keep class com.google.android.material.internal.ClippableRoundedCornerLayout { (android.content.Context, android.util.AttributeSet); } -keep class com.google.android.material.internal.NavigationMenuItemView { (android.content.Context, android.util.AttributeSet); } -keep class com.google.android.material.internal.NavigationMenuView { (android.content.Context, android.util.AttributeSet); } -keep class com.google.android.material.internal.TouchObserverFrameLayout { (android.content.Context, android.util.AttributeSet); } -keep class com.google.android.material.snackbar.Snackbar$SnackbarLayout { (android.content.Context, android.util.AttributeSet); } -keep class com.google.android.material.snackbar.SnackbarContentLayout { (android.content.Context, android.util.AttributeSet); } -keep class com.google.android.material.textfield.TextInputEditText { (android.content.Context, android.util.AttributeSet); } -keep class com.google.android.material.textfield.TextInputLayout { (android.content.Context, android.util.AttributeSet); } -keep class com.google.android.material.timepicker.ChipTextInputComboView { (android.content.Context, android.util.AttributeSet); } -keep class com.google.android.material.timepicker.ClockFaceView { (android.content.Context, android.util.AttributeSet); } -keep class com.google.android.material.timepicker.ClockHandView { (android.content.Context, android.util.AttributeSet); } -keep class com.google.android.material.timepicker.TimePickerView { (android.content.Context, android.util.AttributeSet); } # End of content from /home/jenkins/.jenkins/workspace/main-end-to-end-fix/respect-app-compose/build/intermediates/aapt_proguard_file/release/processReleaseResources/aapt_rules.txt # The proguard configuration file for the following section is /home/jenkins/.jenkins/workspace/main-end-to-end-fix/respect-app-compose/build/intermediates/default_proguard_files/global/proguard-android-optimize.txt-8.12.3 # This is a configuration file for ProGuard. # http://proguard.sourceforge.net/index.html#manual/usage.html # # Starting with version 2.2 of the Android plugin for Gradle, this file is distributed together with # the plugin and unpacked at build-time. The files in $ANDROID_HOME are no longer maintained and # will be ignored by new version of the Android plugin for Gradle. # Optimizations: If you don't want to optimize, use the proguard-android.txt configuration file # instead of this one, which turns off the optimization flags. -allowaccessmodification # Preserve some attributes that may be required for reflection. -keepattributes AnnotationDefault, EnclosingMethod, InnerClasses, RuntimeVisibleAnnotations, RuntimeVisibleParameterAnnotations, RuntimeVisibleTypeAnnotations, Signature -keep public class com.google.vending.licensing.ILicensingService -keep public class com.android.vending.licensing.ILicensingService -keep public class com.google.android.vending.licensing.ILicensingService -dontnote com.android.vending.licensing.ILicensingService -dontnote com.google.vending.licensing.ILicensingService -dontnote com.google.android.vending.licensing.ILicensingService # For native methods, see https://www.guardsquare.com/manual/configuration/examples#native -keepclasseswithmembernames,includedescriptorclasses class * { native ; } # Keep setters in Views so that animations can still work. -keepclassmembers public class * extends android.view.View { void set*(***); *** get*(); } # We want to keep methods in Activity that could be used in the XML attribute onClick. -keepclassmembers class * extends android.app.Activity { public void *(android.view.View); } # For enumeration classes, see https://www.guardsquare.com/manual/configuration/examples#enumerations -keepclassmembers enum * { public static **[] values(); public static ** valueOf(java.lang.String); } -keepclassmembers class * implements android.os.Parcelable { public static final ** CREATOR; } # Preserve annotated Javascript interface methods. -keepclassmembers class * { @android.webkit.JavascriptInterface ; } # The support libraries contains references to newer platform versions. # Don't warn about those in case this app is linking against an older # platform version. We know about them, and they are safe. -dontnote android.support.** -dontnote androidx.** -dontwarn android.support.** -dontwarn androidx.** # Understand the @Keep support annotation. -keep class android.support.annotation.Keep -keep @android.support.annotation.Keep class * {*;} -keepclasseswithmembers class * { @android.support.annotation.Keep ; } -keepclasseswithmembers class * { @android.support.annotation.Keep ; } -keepclasseswithmembers class * { @android.support.annotation.Keep (...); } # These classes are duplicated between android.jar and org.apache.http.legacy.jar. -dontnote org.apache.http.** -dontnote android.net.http.** # These classes are duplicated between android.jar and core-lambda-stubs.jar. -dontnote java.lang.invoke.** # End of content from /home/jenkins/.jenkins/workspace/main-end-to-end-fix/respect-app-compose/build/intermediates/default_proguard_files/global/proguard-android-optimize.txt-8.12.3 # The proguard configuration file for the following section is /home/jenkins/.jenkins/workspace/main-end-to-end-fix/respect-app-compose/proguard-rules.pro # Begin XXHash rules # XXHash factories uses reflection -keep class net.jpountz.xxhash.XXHash32JavaSafe { public (...); public static ** INSTANCE; } -keep class net.jpountz.xxhash.XXHash32JavaSafe$Factory { public (...); public static ** INSTANCE; } # XXHash : XXHashFactory uses reflection -keep class net.jpountz.xxhash.XXHash64JavaSafe { public (...); public static ** INSTANCE; } -keep class net.jpountz.xxhash.XXHash64JavaSafe$Factory { public (...); public static ** INSTANCE; } -keep class net.jpountz.xxhash.StreamingXXHash32JavaSafe { public (...); public static ** INSTANCE; } -keep class net.jpountz.xxhash.StreamingXXHash32JavaSafe$Factory { public (...); public static ** INSTANCE; } # XXHash : XXHashFactory uses reflection -keep class net.jpountz.xxhash.StreamingXXHash64JavaSafe { public (...); public static ** INSTANCE; } -keep class net.jpountz.xxhash.StreamingXXHash64JavaSafe$Factory { public (...); public static ** INSTANCE; } # End XXHash rules ## Napier bug as per https://github.com/AAkira/Napier/issues/132 -keep class io.github.aakira.napier.** { *; } ## End Napier rule # Begin ACRA Rules: ACRA does not cooperate with R8 and has no significant effect on APK size # #-keepclassmembers class org.acra.config.DefaultRetryPolicy { # public (...); #} # #-keepclassmembers class org.acra.attachment.DefaultAttachmentProvider { # public (...); #} -keep class org.acra.** { *; } -keep class world.respect.app.BuildConfig # End ACRA Rules. # End of content from /home/jenkins/.jenkins/workspace/main-end-to-end-fix/respect-app-compose/proguard-rules.pro # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/96bc9dba1dc7b54aa89b72c25aa4da68/transformed/credentials-play-services-auth-1.5.0/proguard.txt -if class androidx.credentials.CredentialManager -keep class androidx.credentials.playservices.CredentialProviderPlayServicesImpl { *; } # End of content from /home/jenkins/.gradle/caches/8.13/transforms/96bc9dba1dc7b54aa89b72c25aa4da68/transformed/credentials-play-services-auth-1.5.0/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/b53a1699c715a319f9313080cd8a472c/transformed/material-1.13.0/proguard.txt # Copyright (C) 2015 The Android Open Source Project # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # CoordinatorLayout resolves the behaviors of its child components with reflection. -keep public class * extends androidx.coordinatorlayout.widget.CoordinatorLayout$Behavior { public (android.content.Context, android.util.AttributeSet); public (); } # Make sure we keep annotations for CoordinatorLayout's DefaultBehavior -keepattributes RuntimeVisible*Annotation* # Copyright (C) 2018 The Android Open Source Project # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # AppCompatViewInflater reads the viewInflaterClass theme attribute which then # reflectively instantiates MaterialComponentsViewInflater using the no-argument # constructor. We only need to keep this constructor and the class name if # AppCompatViewInflater is also being kept. -if class androidx.appcompat.app.AppCompatViewInflater -keep class com.google.android.material.theme.MaterialComponentsViewInflater { (); } # End of content from /home/jenkins/.gradle/caches/8.13/transforms/b53a1699c715a319f9313080cd8a472c/transformed/material-1.13.0/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/cf735d074cb7991921b943ae4da1ffe7/transformed/biometric-1.1.0/proguard.txt # Copyright (C) 2020 The Android Open Source Project # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # Never inline methods, but allow shrinking and obfuscation. -keepclassmembernames,allowobfuscation,allowshrinking class androidx.biometric.AuthenticationCallbackProvider$Api* { ; } -keepclassmembernames,allowobfuscation,allowshrinking class androidx.biometric.BiometricFragment$Api* { ; } -keepclassmembernames,allowobfuscation,allowshrinking class androidx.biometric.BiometricManager$Api* { ; } -keepclassmembernames,allowobfuscation,allowshrinking class androidx.biometric.CancellationSignalProvider$Api* { ; } -keepclassmembernames,allowobfuscation,allowshrinking class androidx.biometric.CryptoObjectUtils$Api* { ; } -keepclassmembernames,allowobfuscation,allowshrinking class androidx.biometric.FingerprintDialogFragment$Api* { ; } -keepclassmembernames,allowobfuscation,allowshrinking class androidx.biometric.KeyguardUtils$Api* { ; } -keepclassmembernames,allowobfuscation,allowshrinking class androidx.biometric.PackageUtils$Api* { ; } # End of content from /home/jenkins/.gradle/caches/8.13/transforms/cf735d074cb7991921b943ae4da1ffe7/transformed/biometric-1.1.0/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/c03ff8d474ec0d71a1c3a360fd25d503/transformed/coil-core-release/proguard.txt -dontwarn coil3.PlatformContext # End of content from /home/jenkins/.gradle/caches/8.13/transforms/c03ff8d474ec0d71a1c3a360fd25d503/transformed/coil-core-release/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/670a2f1946052af1db3e1c2533945835/transformed/preference-1.2.1/proguard.txt # Copyright (C) 2015 The Android Open Source Project # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # Preference objects are inflated via reflection -keep public class androidx.preference.Preference { public (android.content.Context, android.util.AttributeSet); } -keep public class * extends androidx.preference.Preference { public (android.content.Context, android.util.AttributeSet); } # End of content from /home/jenkins/.gradle/caches/8.13/transforms/670a2f1946052af1db3e1c2533945835/transformed/preference-1.2.1/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/bbfc3ac36a1cdeb536ea1d4a18bbb8f9/transformed/appcompat-1.7.1/proguard.txt # Copyright (C) 2018 The Android Open Source Project # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # Never inline methods, but allow shrinking and obfuscation. -keepclassmembernames,allowobfuscation,allowshrinking class androidx.appcompat.widget.AppCompatTextViewAutoSizeHelper$Impl* { ; } # End of content from /home/jenkins/.gradle/caches/8.13/transforms/bbfc3ac36a1cdeb536ea1d4a18bbb8f9/transformed/appcompat-1.7.1/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/aa4b6a3ccb649849ed344fd595650975/transformed/play-services-fido-21.0.0/proguard.txt # Methods enable and disable in this class are complained as unresolved # references, but they are system APIs and are not used by Fido client apps. -dontwarn android.nfc.NfcAdapter -dontwarn dalvik.system.VMStack -dontwarn com.google.common.flogger.backend.google.GooglePlatform -dontwarn com.google.common.flogger.backend.system.DefaultPlatform # End of content from /home/jenkins/.gradle/caches/8.13/transforms/aa4b6a3ccb649849ed344fd595650975/transformed/play-services-fido-21.0.0/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/dff69ea804f18e9cc6ee1d3d7e570a8f/transformed/play-services-identity-credentials-16.0.0-alpha02/proguard.txt # Proguard cannot process META-INF/versions/9. # See https://discuss.gradle.org/t/meta-inf-version-duplicate-error-when-using-proguard/31380 -dontwarn module-info # End of content from /home/jenkins/.gradle/caches/8.13/transforms/dff69ea804f18e9cc6ee1d3d7e570a8f/transformed/play-services-identity-credentials-16.0.0-alpha02/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/21d72cb8b405d1291b99a93094284322/transformed/play-services-auth-base-18.0.10/proguard.txt # We keep all fields for every generated proto file as the runtime uses # reflection over them that ProGuard cannot detect. Without this keep # rule, fields may be removed that would cause runtime failures. -keepclassmembers class * extends com.google.android.gms.internal.auth.zzev { ; } # End of content from /home/jenkins/.gradle/caches/8.13/transforms/21d72cb8b405d1291b99a93094284322/transformed/play-services-auth-base-18.0.10/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/9e3dc284201a37c585b1934ad6692695/transformed/play-services-base-18.5.0/proguard.txt # b/35135904 Ensure that proguard will not strip the mResultGuardian. -keepclassmembers class com.google.android.gms.common.api.internal.BasePendingResult { com.google.android.gms.common.api.internal.BasePendingResult$ReleasableResultGuardian mResultGuardian; } # End of content from /home/jenkins/.gradle/caches/8.13/transforms/9e3dc284201a37c585b1934ad6692695/transformed/play-services-base-18.5.0/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/8d46706e85a86c775ee6d75779d1be1e/transformed/play-services-tasks-18.2.0/proguard.txt # End of content from /home/jenkins/.gradle/caches/8.13/transforms/8d46706e85a86c775ee6d75779d1be1e/transformed/play-services-tasks-18.2.0/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/28b375ccdaa57d0e1632417863ad6c06/transformed/play-services-basement-18.4.0/proguard.txt # Needed when building against pre-Marshmallow SDK. -dontwarn android.security.NetworkSecurityPolicy # Needed when building against Marshmallow SDK. -dontwarn android.app.Notification # Protobuf has references not on the Android boot classpath -dontwarn sun.misc.Unsafe -dontwarn libcore.io.Memory # Annotations used during internal SDK shrinking. -dontwarn com.google.android.apps.common.proguard.UsedBy* -dontwarn com.google.android.apps.common.proguard.SideEffectFree # Annotations referenced by the SDK but whose definitions are contained in # non-required dependencies. -dontwarn javax.annotation.** -dontwarn org.checkerframework.** -dontwarn com.google.errorprone.annotations.** -dontwarn org.jspecify.nullness.NullMarked # Annotations no longer exist. Suppression prevents ProGuard failures in # SDKs which depend on earlier versions of play-services-basement. -dontwarn com.google.android.gms.common.util.VisibleForTesting # Proguard flags for consumers of the Google Play services SDK # https://developers.google.com/android/guides/setup#add_google_play_services_to_your_project # Keep SafeParcelable NULL value, needed for reflection by DowngradeableSafeParcel -keepclassmembers public class com.google.android.gms.common.internal.safeparcel.SafeParcelable { public static final *** NULL; } # Needed for Parcelable/SafeParcelable classes & their creators to not get renamed, as they are # found via reflection. -keep class com.google.android.gms.common.internal.ReflectedParcelable -keepnames class * implements com.google.android.gms.common.internal.ReflectedParcelable -keepclassmembers class * implements android.os.Parcelable { public static final *** CREATOR; } # Keep the classes/members we need for client functionality. -keep @interface android.support.annotation.Keep -keep @androidx.annotation.Keep class * -keepclasseswithmembers class * { @androidx.annotation.Keep ; } -keepclasseswithmembers class * { @androidx.annotation.Keep ; } # Keep androidX equivalent of above android.support to allow Jetification. -keep @interface androidx.annotation.Keep -keep @androidx.annotation.Keep class * -keepclasseswithmembers class * { @androidx.annotation.Keep ; } -keepclasseswithmembers class * { @androidx.annotation.Keep ; } # Keep the names of classes/members we need for client functionality. -keep @interface com.google.android.gms.common.annotation.KeepName -keepnames @com.google.android.gms.common.annotation.KeepName class * -keepclassmembernames class * { @com.google.android.gms.common.annotation.KeepName *; } # Keep Dynamite API entry points -keep @interface com.google.android.gms.common.util.DynamiteApi -keep @com.google.android.gms.common.util.DynamiteApi public class * { public ; public ; } # End of content from /home/jenkins/.gradle/caches/8.13/transforms/28b375ccdaa57d0e1632417863ad6c06/transformed/play-services-basement-18.4.0/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/cc802a009add5159e605b53516cdad9d/transformed/fragment-1.8.9/proguard.txt # Copyright (C) 2020 The Android Open Source Project # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # The default FragmentFactory creates Fragment instances using reflection -if public class ** extends androidx.fragment.app.Fragment -keepclasseswithmembers,allowobfuscation public class <1> { public (); } # FragmentTransition will reflectively lookup: # androidx.transition.FragmentTransitionSupport # We should ensure that we keep the constructor if the code using this is alive -if class androidx.fragment.app.FragmentTransition { private static androidx.fragment.app.FragmentTransitionImpl resolveSupportImpl(); } -keep class androidx.transition.FragmentTransitionSupport { public (); } # End of content from /home/jenkins/.gradle/caches/8.13/transforms/cc802a009add5159e605b53516cdad9d/transformed/fragment-1.8.9/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/05671bc3b9b95b8836454bd131276cf0/transformed/navigation-common-release/proguard.txt # Copyright (C) 2019 The Android Open Source Project # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # NavArgsLazy creates NavArgs instances using reflection -if public class ** implements androidx.navigation.NavArgs -keepclassmembers public class <1> { ** fromBundle(android.os.Bundle); } # Retain the @Navigator.Name annotation on each subclass of Navigator. # R8 full mode only retains annotations on items matched by a -keep rule, # hence the extra -keep rule for the subclasses of Navigator. # # A -keep rule for the Navigator.Name annotation class is not required # since the annotation is referenced from the code. -keepattributes RuntimeVisibleAnnotations -keep,allowobfuscation,allowshrinking class * extends androidx.navigation.Navigator # End of content from /home/jenkins/.gradle/caches/8.13/transforms/05671bc3b9b95b8836454bd131276cf0/transformed/navigation-common-release/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/e79c1b57c10442f4a6a9300c4237cd4e/transformed/navigation-compose-release/proguard.txt # Intentionally empty proguard rules to indicate this library is safe to shrink # End of content from /home/jenkins/.gradle/caches/8.13/transforms/e79c1b57c10442f4a6a9300c4237cd4e/transformed/navigation-compose-release/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/1dae2697b8f3fed49c9e287c96abff8c/transformed/navigation-runtime-release/proguard.txt # Intentionally empty proguard rules to indicate this library is safe to shrink # End of content from /home/jenkins/.gradle/caches/8.13/transforms/1dae2697b8f3fed49c9e287c96abff8c/transformed/navigation-runtime-release/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/955706aeb25acdd9a9a47c6b34529c6c/transformed/room-runtime/proguard.txt -keep class * extends androidx.room.RoomDatabase { void (); } -dontwarn androidx.room.paging.** -dontwarn androidx.lifecycle.LiveData # End of content from /home/jenkins/.gradle/caches/8.13/transforms/955706aeb25acdd9a9a47c6b34529c6c/transformed/room-runtime/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/746548d11a63a1f5ea980a2350b79b00/transformed/work-runtime-2.10.4/proguard.txt # Keep ListenableWorker / Worker if not removed during shrinking -keepnames class * extends androidx.work.ListenableWorker # Keep all constructors on ListenableWorker, Worker if class is kept -keepclassmembers public class * extends androidx.work.ListenableWorker { public (...); } # We need to keep WorkerParameters for the ListenableWorker constructor that is used by the # default instantiation strategy in WorkerFactory. -keep class androidx.work.WorkerParameters # Keep InputMerger if not removed during shrinking -keepnames class * extends androidx.work.InputMerger # Keep constructor on InputMerger if class is kept -keepclassmembers class * extends androidx.work.InputMerger { void (); } # End of content from /home/jenkins/.gradle/caches/8.13/transforms/746548d11a63a1f5ea980a2350b79b00/transformed/work-runtime-2.10.4/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/c9eef494ada702d2c32a24734b1c0252/transformed/room-ktx-2.8.2/proguard.txt # Intentionally empty proguard rules to indicate this library is safe to shrink # End of content from /home/jenkins/.gradle/caches/8.13/transforms/c9eef494ada702d2c32a24734b1c0252/transformed/room-ktx-2.8.2/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/772aa4684ef591fd2b75c877ff1f41fe/transformed/room-paging/proguard.txt # Intentionally empty proguard rules to indicate this library is safe to shrink # End of content from /home/jenkins/.gradle/caches/8.13/transforms/772aa4684ef591fd2b75c877ff1f41fe/transformed/room-paging/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/35fa1a1862bef28ffdb502179ca7f8ee/transformed/paging-common/proguard.txt # Intentionally empty proguard rules to indicate this library is safe to shrink # End of content from /home/jenkins/.gradle/caches/8.13/transforms/35fa1a1862bef28ffdb502179ca7f8ee/transformed/paging-common/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/fe418507131414a90ec54ad94913e597/transformed/paging-compose/proguard.txt # Intentionally empty proguard rules to indicate this library is safe to shrink # End of content from /home/jenkins/.gradle/caches/8.13/transforms/fe418507131414a90ec54ad94913e597/transformed/paging-compose/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/6ae233fdf4fd8435c5d0963580f1a272/transformed/material/proguard.txt # Intentionally empty proguard rules to indicate this library is safe to shrink # End of content from /home/jenkins/.gradle/caches/8.13/transforms/6ae233fdf4fd8435c5d0963580f1a272/transformed/material/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/0958700d8276732bd52b9d6e4e8bd97c/transformed/animation-core/proguard.txt # Copyright (C) 2020 The Android Open Source Project # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # Keep all the functions created to throw an exception. We don't want these functions to be # inlined in any way, which R8 will do by default. The whole point of these functions is to # reduce the amount of code generated at the call site. -keepclassmembers,allowshrinking,allowobfuscation class androidx.compose.**.* { static void throw*Exception(...); static void throw*ExceptionForNullCheck(...); # For methods returning Nothing static java.lang.Void throw*Exception(...); static java.lang.Void throw*ExceptionForNullCheck(...); } # End of content from /home/jenkins/.gradle/caches/8.13/transforms/0958700d8276732bd52b9d6e4e8bd97c/transformed/animation-core/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/d6b9d4c2320c2ca452af90d9c51fb8e8/transformed/material-ripple/proguard.txt # Intentionally empty proguard rules to indicate this library is safe to shrink # End of content from /home/jenkins/.gradle/caches/8.13/transforms/d6b9d4c2320c2ca452af90d9c51fb8e8/transformed/material-ripple/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/efa3a7fc2753513563fda3502582f20b/transformed/animation/proguard.txt # Intentionally empty proguard rules to indicate this library is safe to shrink # End of content from /home/jenkins/.gradle/caches/8.13/transforms/efa3a7fc2753513563fda3502582f20b/transformed/animation/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/8ef9654dfba74117a79d443767d93ed9/transformed/foundation-layout/proguard.txt # Copyright (C) 2020 The Android Open Source Project # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # Keep all the functions created to throw an exception. We don't want these functions to be # inlined in any way, which R8 will do by default. The whole point of these functions is to # reduce the amount of code generated at the call site. -keepclassmembers,allowshrinking,allowobfuscation class androidx.compose.**.* { static void throw*Exception(...); static void throw*ExceptionForNullCheck(...); # For methods returning Nothing static java.lang.Void throw*Exception(...); static java.lang.Void throw*ExceptionForNullCheck(...); } # End of content from /home/jenkins/.gradle/caches/8.13/transforms/8ef9654dfba74117a79d443767d93ed9/transformed/foundation-layout/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/67893289341e4adbfdb317277b49635b/transformed/foundation-release/proguard.txt # Copyright (C) 2020 The Android Open Source Project # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # Keep all the functions created to throw an exception. We don't want these functions to be # inlined in any way, which R8 will do by default. The whole point of these functions is to # reduce the amount of code generated at the call site. -keepclassmembers,allowshrinking,allowobfuscation class androidx.compose.**.* { static void throw*Exception(...); # For methods returning Nothing static java.lang.Void throw*Exception(...); } # End of content from /home/jenkins/.gradle/caches/8.13/transforms/67893289341e4adbfdb317277b49635b/transformed/foundation-release/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/f62ba27815fd5de879a418eef4a350a4/transformed/ui-tooling-preview/proguard.txt # Intentionally empty proguard rules to indicate this library is safe to shrink # End of content from /home/jenkins/.gradle/caches/8.13/transforms/f62ba27815fd5de879a418eef4a350a4/transformed/ui-tooling-preview/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/18f23a8da9ebcb6a07125ed23c204316/transformed/ui-util/proguard.txt # Copyright (C) 2020 The Android Open Source Project # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # Keep all the functions created to throw an exception. We don't want these functions to be # inlined in any way, which R8 will do by default. The whole point of these functions is to # reduce the amount of code generated at the call site. -keepclassmembers,allowshrinking,allowobfuscation class androidx.compose.**.* { static void throw*Exception(...); static void throw*ExceptionForNullCheck(...); # For methods returning Nothing static java.lang.Void throw*Exception(...); static java.lang.Void throw*ExceptionForNullCheck(...); } # End of content from /home/jenkins/.gradle/caches/8.13/transforms/18f23a8da9ebcb6a07125ed23c204316/transformed/ui-util/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/90604e3c51ae9334babe0d565a6561c5/transformed/ui-unit/proguard.txt # Copyright (C) 2020 The Android Open Source Project # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # Keep all the functions created to throw an exception. We don't want these functions to be # inlined in any way, which R8 will do by default. The whole point of these functions is to # reduce the amount of code generated at the call site. -keepclassmembers,allowshrinking,allowobfuscation class androidx.compose.**.* { static void throw*Exception(...); static void throw*ExceptionForNullCheck(...); # For methods returning Nothing static java.lang.Void throw*Exception(...); static java.lang.Void throw*ExceptionForNullCheck(...); } # End of content from /home/jenkins/.gradle/caches/8.13/transforms/90604e3c51ae9334babe0d565a6561c5/transformed/ui-unit/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/548631ea18765b09be342a3a2f4e2ec1/transformed/ui-graphics/proguard.txt # Copyright (C) 2020 The Android Open Source Project # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # Keep all the functions created to throw an exception. We don't want these functions to be # inlined in any way, which R8 will do by default. The whole point of these functions is to # reduce the amount of code generated at the call site. -keepclassmembers,allowshrinking,allowobfuscation class androidx.compose.**.* { static void throw*Exception(...); static void throw*ExceptionForNullCheck(...); # For methods returning Nothing static java.lang.Void throw*Exception(...); static java.lang.Void throw*ExceptionForNullCheck(...); } -keepclassmembers class androidx.compose.ui.graphics.layer.view.ViewLayerContainer { protected void dispatchGetDisplayList(); } -keepclassmembers class androidx.compose.ui.graphics.layer.view.PlaceholderHardwareCanvas { public int drawRenderNode(...); public boolean isHardwareAccelerated(); } # End of content from /home/jenkins/.gradle/caches/8.13/transforms/548631ea18765b09be342a3a2f4e2ec1/transformed/ui-graphics/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/ab6fee9047c64ef2a1bb3d8727a1f717/transformed/ui-geometry/proguard.txt # Intentionally empty proguard rules to indicate this library is safe to shrink # End of content from /home/jenkins/.gradle/caches/8.13/transforms/ab6fee9047c64ef2a1bb3d8727a1f717/transformed/ui-geometry/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/df997454960b3be4aa2f29efc6f0dd1d/transformed/ui-text/proguard.txt # Copyright (C) 2020 The Android Open Source Project # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # Keep all the functions created to throw an exception. We don't want these functions to be # inlined in any way, which R8 will do by default. The whole point of these functions is to # reduce the amount of code generated at the call site. -keepclassmembers,allowshrinking,allowobfuscation class androidx.compose.**.* { static void throw*Exception(...); static void throw*ExceptionForNullCheck(...); # For methods returning Nothing static java.lang.Void throw*Exception(...); static java.lang.Void throw*ExceptionForNullCheck(...); } # End of content from /home/jenkins/.gradle/caches/8.13/transforms/df997454960b3be4aa2f29efc6f0dd1d/transformed/ui-text/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/6b795de30c472e437fc7bc112022b893/transformed/lifecycle-process-2.9.4/proguard.txt # this rule is need to work properly when app is compiled with api 28, see b/142778206 -keepclassmembers class * extends androidx.lifecycle.EmptyActivityLifecycleCallbacks { *; } # End of content from /home/jenkins/.gradle/caches/8.13/transforms/6b795de30c472e437fc7bc112022b893/transformed/lifecycle-process-2.9.4/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/5584c5e61923e097ba539e75cc154af3/transformed/lifecycle-livedata-core-ktx-2.9.4/proguard.txt # Intentionally empty proguard rules to indicate this library is safe to shrink # End of content from /home/jenkins/.gradle/caches/8.13/transforms/5584c5e61923e097ba539e75cc154af3/transformed/lifecycle-livedata-core-ktx-2.9.4/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/71c9d395106dbf9ee4e1c974a3b9277a/transformed/lifecycle-viewmodel-savedstate-release/proguard.txt -keepclassmembers,allowobfuscation class * extends androidx.lifecycle.ViewModel { (androidx.lifecycle.SavedStateHandle); } -keepclassmembers,allowobfuscation class * extends androidx.lifecycle.AndroidViewModel { (android.app.Application,androidx.lifecycle.SavedStateHandle); } # End of content from /home/jenkins/.gradle/caches/8.13/transforms/71c9d395106dbf9ee4e1c974a3b9277a/transformed/lifecycle-viewmodel-savedstate-release/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/9a5a3099e41639b4d5ab548ab44152ef/transformed/lifecycle-viewmodel-release/proguard.txt -keepclassmembers,allowobfuscation class * extends androidx.lifecycle.ViewModel { (); } -keepclassmembers,allowobfuscation class * extends androidx.lifecycle.AndroidViewModel { (android.app.Application); } # End of content from /home/jenkins/.gradle/caches/8.13/transforms/9a5a3099e41639b4d5ab548ab44152ef/transformed/lifecycle-viewmodel-release/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/d2360cf7fe8f1803199b2a32bbdcfcfe/transformed/webkit-1.14.0/proguard.txt # Copyright 2018 The Chromium Authors # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. # We need to avoid obfuscating the support library boundary interface because # this API is shared with the Android Support Library. # Note that we only 'keep' the package org.chromium.support_lib_boundary itself, # any sub-packages of that package can still be obfuscated. -keep public class org.chromium.support_lib_boundary.* { public *; } # Copyright (C) 2018 The Android Open Source Project # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # Prevent WebViewClientCompat from being renamed, since chromium depends on this name. -keepnames public class androidx.webkit.WebViewClientCompat # Prevent ProcessGlobalConfig and member sProcessGlobalConfig from being renamed, since chromium # depends on this name. -keepnames public class androidx.webkit.ProcessGlobalConfig { private static final *** sProcessGlobalConfig; } -keepclassmembers class androidx.webkit.internal.PageImpl { private final org.chromium.support_lib_boundary.WebViewPageBoundaryInterface mPageBoundaryInterface; } # End of content from /home/jenkins/.gradle/caches/8.13/transforms/d2360cf7fe8f1803199b2a32bbdcfcfe/transformed/webkit-1.14.0/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/7ebd041e049e9096a119595eea618f32/transformed/coordinatorlayout-1.1.0/proguard.txt # Copyright (C) 2016 The Android Open Source Project # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # CoordinatorLayout resolves the behaviors of its child components with reflection. -keep public class * extends androidx.coordinatorlayout.widget.CoordinatorLayout$Behavior { public (android.content.Context, android.util.AttributeSet); public (); } # Make sure we keep annotations for CoordinatorLayout's DefaultBehavior and ViewPager's DecorView -keepattributes *Annotation* # End of content from /home/jenkins/.gradle/caches/8.13/transforms/7ebd041e049e9096a119595eea618f32/transformed/coordinatorlayout-1.1.0/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/faad34cc369652b34f04ec4a31e820e8/transformed/transition-1.6.0/proguard.txt # Copyright (C) 2017 The Android Open Source Project # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # Keep a field in transition that is used to keep a reference to weakly-referenced object -keepclassmembers class androidx.transition.ChangeBounds$* extends android.animation.AnimatorListenerAdapter { androidx.transition.ChangeBounds$ViewBounds mViewBounds; } # End of content from /home/jenkins/.gradle/caches/8.13/transforms/faad34cc369652b34f04ec4a31e820e8/transformed/transition-1.6.0/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/59302b017c7f4af5a42e5d0aa0cf3950/transformed/dynamicanimation-1.1.0/proguard.txt # Intentionally empty proguard rules to indicate this library is safe to shrink # End of content from /home/jenkins/.gradle/caches/8.13/transforms/59302b017c7f4af5a42e5d0aa0cf3950/transformed/dynamicanimation-1.1.0/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/37821e31db1a66c288d1fc009195efcd/transformed/recyclerview-1.2.1/proguard.txt # Copyright (C) 2015 The Android Open Source Project # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # When layoutManager xml attribute is used, RecyclerView inflates #LayoutManagers' constructors using reflection. -keep public class * extends androidx.recyclerview.widget.RecyclerView$LayoutManager { public (android.content.Context, android.util.AttributeSet, int, int); public (); } -keepclassmembers class androidx.recyclerview.widget.RecyclerView { public void suppressLayout(boolean); public boolean isLayoutSuppressed(); } # End of content from /home/jenkins/.gradle/caches/8.13/transforms/37821e31db1a66c288d1fc009195efcd/transformed/recyclerview-1.2.1/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/671b9d21e0a7931ac2fdd8d0e60cc3d9/transformed/vectordrawable-animated-1.1.0/proguard.txt # Copyright (C) 2016 The Android Open Source Project # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # keep setters in VectorDrawables so that animations can still work. -keepclassmembers class androidx.vectordrawable.graphics.drawable.VectorDrawableCompat$* { void set*(***); *** get*(); } # End of content from /home/jenkins/.gradle/caches/8.13/transforms/671b9d21e0a7931ac2fdd8d0e60cc3d9/transformed/vectordrawable-animated-1.1.0/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/1fd97b615770969bc6b0c11741750caf/transformed/window-1.0.0/proguard.txt # Copyright (C) 2020 The Android Open Source Project # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # A rule that will keep classes that implement SidecarInterface$SidecarCallback if Sidecar seems # be used. See b/157286362 and b/165268619 for details. # TODO(b/208543178) investigate how to pass header jar to R8 so we don't need this rule -if class androidx.window.layout.SidecarCompat { public setExtensionCallback(androidx.window.layout.ExtensionInterfaceCompat$ExtensionCallbackInterface); } -keep class androidx.window.layout.SidecarCompat$TranslatingCallback, androidx.window.layout.SidecarCompat$DistinctSidecarElementCallback { public onDeviceStateChanged(androidx.window.sidecar.SidecarDeviceState); public onWindowLayoutChanged(android.os.IBinder, androidx.window.sidecar.SidecarWindowLayoutInfo); } # End of content from /home/jenkins/.gradle/caches/8.13/transforms/1fd97b615770969bc6b0c11741750caf/transformed/window-1.0.0/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/face514ac012e42e44a98e84620807b9/transformed/runtime-annotation/proguard.txt # Intentionally empty proguard rules to indicate this library is safe to shrink # End of content from /home/jenkins/.gradle/caches/8.13/transforms/face514ac012e42e44a98e84620807b9/transformed/runtime-annotation/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/68b3d0088b0e44e77d2e1c2b4cdadeef/transformed/runtime/proguard.txt -assumenosideeffects public class androidx.compose.runtime.ComposerKt { void sourceInformation(androidx.compose.runtime.Composer,java.lang.String); void sourceInformationMarkerStart(androidx.compose.runtime.Composer,int,java.lang.String); void sourceInformationMarkerEnd(androidx.compose.runtime.Composer); } # Composer's class initializer doesn't do anything but create an EMPTY object. Marking the # initializers as having no side effects can help encourage shrinkers to merge/devirtualize Composer # with ComposerImpl. -assumenosideeffects public class androidx.compose.runtime.Composer { void (); } -assumenosideeffects public class androidx.compose.runtime.ComposerImpl { void (); } # Keep all the functions created to throw an exception. We don't want these functions to be # inlined in any way, which R8 will do by default. The whole point of these functions is to # reduce the amount of code generated at the call site. -keepclassmembers,allowshrinking,allowobfuscation class androidx.compose.runtime.** { # java.lang.Void == methods that return Nothing static void throw*Exception(...); static void throw*ExceptionForNullCheck(...); static java.lang.Void throw*Exception(...); static java.lang.Void throw*ExceptionForNullCheck(...); # For functions generating error messages static java.lang.String exceptionMessage*(...); java.lang.String exceptionMessage*(...); static void compose*RuntimeError(...); static java.lang.Void compose*RuntimeError(...); } # Runtime uses this field to enable group key based stack trace collection. -assumevalues class androidx.compose.runtime.tooling.ComposeStackTraceMode { private static boolean isMinified return true; } # End of content from /home/jenkins/.gradle/caches/8.13/transforms/68b3d0088b0e44e77d2e1c2b4cdadeef/transformed/runtime/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/f758d07e7ed1e2fada8cd42c399e2be1/transformed/runtime-saveable/proguard.txt # Intentionally empty proguard rules to indicate this library is safe to shrink # End of content from /home/jenkins/.gradle/caches/8.13/transforms/f758d07e7ed1e2fada8cd42c399e2be1/transformed/runtime-saveable/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/ab2fc6f04eb57aa0b6cc8f6d1483626e/transformed/savedstate-release/proguard.txt # Copyright (C) 2019 The Android Open Source Project # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. -keepclassmembers,allowobfuscation class * implements androidx.savedstate.SavedStateRegistry$AutoRecreated { (); } # End of content from /home/jenkins/.gradle/caches/8.13/transforms/ab2fc6f04eb57aa0b6cc8f6d1483626e/transformed/savedstate-release/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/eb84c0726a7fe9b7f6cefb676ce2ca5e/transformed/savedstate-ktx-1.3.2/proguard.txt # Intentionally empty proguard rules to indicate this library is safe to shrink # End of content from /home/jenkins/.gradle/caches/8.13/transforms/eb84c0726a7fe9b7f6cefb676ce2ca5e/transformed/savedstate-ktx-1.3.2/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/ca49142f3afcdc4ac7753d39ae1c9d2f/transformed/savedstate-compose/proguard.txt # Workaround for https://issuetracker.google.com/issues/346808608 # # `androidx.savedstate.compose.LocalSavedStateRegistryOwner` will reflectively lookup for # `androidx.compose.ui.platform.LocalSavedStateRegistryOwner` to ensure backward compatibility # when using SavedState >= 1.3 with Compose <= 1.7. # # We need to keep the getter if the code using this is included. # # We need to suppress `ShrinkerUnresolvedReference` because the `LocalComposition` is in a # different module. # #noinspection ShrinkerUnresolvedReference -if public class androidx.compose.ui.platform.AndroidCompositionLocals_androidKt { public static *** getLocalSavedStateRegistryOwner(); } -keep public class androidx.compose.ui.platform.AndroidCompositionLocals_androidKt { public static *** getLocalSavedStateRegistryOwner(); } # End of content from /home/jenkins/.gradle/caches/8.13/transforms/ca49142f3afcdc4ac7753d39ae1c9d2f/transformed/savedstate-compose/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/2c672c4f74f19707f4b88cf145a26937/transformed/core-ktx-1.16.0/proguard.txt # Intentionally empty proguard rules to indicate this library is safe to shrink # End of content from /home/jenkins/.gradle/caches/8.13/transforms/2c672c4f74f19707f4b88cf145a26937/transformed/core-ktx-1.16.0/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/94129fa837143ed57a1ac82f947cb5e7/transformed/graphics-path-1.0.1/proguard.txt -keepclasseswithmembers class androidx.graphics.path.** { native ; } # End of content from /home/jenkins/.gradle/caches/8.13/transforms/94129fa837143ed57a1ac82f947cb5e7/transformed/graphics-path-1.0.1/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/4e893a4b18fc9d13e9521c671745c5d1/transformed/core-1.16.0/proguard.txt # Never inline methods, but allow shrinking and obfuscation. -keepclassmembernames,allowobfuscation,allowshrinking class androidx.core.view.ViewCompat$Api* { ; } -keepclassmembernames,allowobfuscation,allowshrinking class androidx.core.view.WindowInsetsCompat$*Impl* { ; } -keepclassmembernames,allowobfuscation,allowshrinking class androidx.core.app.NotificationCompat$*$Api*Impl { ; } -keepclassmembernames,allowobfuscation,allowshrinking class androidx.core.os.UserHandleCompat$Api*Impl { ; } -keepclassmembernames,allowobfuscation,allowshrinking class androidx.core.widget.EdgeEffectCompat$Api*Impl { ; } # End of content from /home/jenkins/.gradle/caches/8.13/transforms/4e893a4b18fc9d13e9521c671745c5d1/transformed/core-1.16.0/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/4927301ffcf0866f5388d7ec34c397a2/transformed/lifecycle-runtime-release/proguard.txt -keepattributes AnnotationDefault, RuntimeVisibleAnnotations, RuntimeVisibleParameterAnnotations, RuntimeVisibleTypeAnnotations -keepclassmembers enum androidx.lifecycle.Lifecycle$Event { ; } -keep class * implements androidx.lifecycle.GeneratedAdapter { (...); } -keepclassmembers class ** { @androidx.lifecycle.OnLifecycleEvent *; } # The deprecated `android.app.Fragment` creates `Fragment` instances using reflection. # See: b/338958225, b/341537875 -keepclasseswithmembers,allowobfuscation public class androidx.lifecycle.ReportFragment { public (); } # this rule is need to work properly when app is compiled with api 28, see b/142778206 # Also this rule prevents registerIn from being inlined. -keepclassmembers class androidx.lifecycle.ReportFragment$LifecycleCallbacks { *; } # End of content from /home/jenkins/.gradle/caches/8.13/transforms/4927301ffcf0866f5388d7ec34c397a2/transformed/lifecycle-runtime-release/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/deb17557af6a8612d756004c5ba808d3/transformed/lifecycle-viewmodel-ktx-2.9.4/proguard.txt # Intentionally empty proguard rules to indicate this library is safe to shrink # End of content from /home/jenkins/.gradle/caches/8.13/transforms/deb17557af6a8612d756004c5ba808d3/transformed/lifecycle-viewmodel-ktx-2.9.4/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/ae798796707591c25bfefa9656cad15d/transformed/lifecycle-service-2.9.4/proguard.txt # Intentionally empty proguard rules to indicate this library is safe to shrink # End of content from /home/jenkins/.gradle/caches/8.13/transforms/ae798796707591c25bfefa9656cad15d/transformed/lifecycle-service-2.9.4/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/a6fcff62f1e986ed439f1a2e2d4234eb/transformed/lifecycle-livedata-2.9.4/proguard.txt # Intentionally empty proguard rules to indicate this library is safe to shrink # End of content from /home/jenkins/.gradle/caches/8.13/transforms/a6fcff62f1e986ed439f1a2e2d4234eb/transformed/lifecycle-livedata-2.9.4/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/bdeca72e6f10aff7dd636ed3710fbaec/transformed/lifecycle-livedata-core-2.9.4/proguard.txt # Intentionally empty proguard rules to indicate this library is safe to shrink # End of content from /home/jenkins/.gradle/caches/8.13/transforms/bdeca72e6f10aff7dd636ed3710fbaec/transformed/lifecycle-livedata-core-2.9.4/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/ab237291bca574be9bb59c3d51e39457/transformed/shrink-rules/lib/META-INF/proguard/androidx-lifecycle-lifecycle-common-java8.pro # Intentionally empty proguard rules to indicate this library is safe to shrink # End of content from /home/jenkins/.gradle/caches/8.13/transforms/ab237291bca574be9bb59c3d51e39457/transformed/shrink-rules/lib/META-INF/proguard/androidx-lifecycle-lifecycle-common-java8.pro # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/122f1b7c8f8d404286e573adf45e118d/transformed/lifecycle-runtime-compose-release/proguard.txt # Workaround for https://issuetracker.google.com/issues/346808608 # # `androidx.lifecycle.compose.LocalLifecycleOwner` will reflectively lookup for # `androidx.compose.ui.platform.LocalLifecycleOwner` to ensure backward compatibility # when using Lifecycle 2.8+ with Compose 1.6. # # We need to keep the getter if the code using this is included. # # We need to suppress `ShrinkerUnresolvedReference` because the `LocalComposition` is in a # different module. # #noinspection ShrinkerUnresolvedReference -if public class androidx.compose.ui.platform.AndroidCompositionLocals_androidKt { public static *** getLocalLifecycleOwner(); } -keep public class androidx.compose.ui.platform.AndroidCompositionLocals_androidKt { public static *** getLocalLifecycleOwner(); } # End of content from /home/jenkins/.gradle/caches/8.13/transforms/122f1b7c8f8d404286e573adf45e118d/transformed/lifecycle-runtime-compose-release/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/d2cd3d7b4d6bbd56c730953ef099522c/transformed/lifecycle-viewmodel-compose-release/proguard.txt # Intentionally empty proguard rules to indicate this library is safe to shrink # End of content from /home/jenkins/.gradle/caches/8.13/transforms/d2cd3d7b4d6bbd56c730953ef099522c/transformed/lifecycle-viewmodel-compose-release/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/7bc2922d345d6e3071caf8c96244f533/transformed/ui/proguard.txt # Copyright (C) 2020 The Android Open Source Project # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # We supply these as stubs and are able to link to them at runtime # because they are hidden public classes in Android. We don't want # R8 to complain about them not being there during optimization. -dontwarn android.view.RenderNode -dontwarn android.view.DisplayListCanvas -dontwarn android.view.HardwareCanvas -keepclassmembers class androidx.compose.ui.platform.ViewLayerContainer { protected void dispatchGetDisplayList(); } -keepclassmembers class androidx.compose.ui.platform.AndroidComposeView { android.view.View findViewByAccessibilityIdTraversal(int); } # Users can create Modifier.Node instances that implement multiple Modifier.Node interfaces, # so we cannot tell whether two modifier.node instances are of the same type without using # reflection to determine the class type. See b/265188224 for more context. -keep,allowshrinking class * extends androidx.compose.ui.node.ModifierNodeElement # Keep all the functions created to throw an exception. We don't want these functions to be # inlined in any way, which R8 will do by default. The whole point of these functions is to # reduce the amount of code generated at the call site. -keepclassmembers,allowshrinking,allowobfuscation class androidx.compose.**.* { static void throw*Exception(...); static void throw*ExceptionForNullCheck(...); # For methods returning Nothing static java.lang.Void throw*Exception(...); static java.lang.Void throw*ExceptionForNullCheck(...); # For functions generating error messages static java.lang.String exceptionMessage*(...); java.lang.String exceptionMessage*(...); } # When pointer input modifier nodes are added dynamically and have the same keys (common when # developers `Unit` for their keys), we need a way to differentiate them and using a # functional interface and comparing classes allows us to do that. -keepnames class androidx.compose.ui.input.pointer.PointerInputEventHandler { *; } # End of content from /home/jenkins/.gradle/caches/8.13/transforms/7bc2922d345d6e3071caf8c96244f533/transformed/ui/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/36c8c4540db60c4ce2305e57010dc64b/transformed/activity-ktx-1.11.0/proguard.txt # Intentionally empty proguard rules to indicate this library is safe to shrink # End of content from /home/jenkins/.gradle/caches/8.13/transforms/36c8c4540db60c4ce2305e57010dc64b/transformed/activity-ktx-1.11.0/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/72fe8b65843d223c079839e130a3f5d6/transformed/activity-1.11.0/proguard.txt # Intentionally empty proguard rules to indicate this library is safe to shrink # End of content from /home/jenkins/.gradle/caches/8.13/transforms/72fe8b65843d223c079839e130a3f5d6/transformed/activity-1.11.0/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/16cb86e689027dd69de8dc74e3f1f2b0/transformed/activity-compose-1.11.0/proguard.txt # Intentionally empty proguard rules to indicate this library is safe to shrink # End of content from /home/jenkins/.gradle/caches/8.13/transforms/16cb86e689027dd69de8dc74e3f1f2b0/transformed/activity-compose-1.11.0/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/611bd09acf98f008535c8babefdf22c1/transformed/sqlite-bundled/proguard.txt -keepclasseswithmembers class androidx.sqlite.driver.bundled.** { native ; } # End of content from /home/jenkins/.gradle/caches/8.13/transforms/611bd09acf98f008535c8babefdf22c1/transformed/sqlite-bundled/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/b4d6d6989c47becd82b5865338a515f9/transformed/sqlite-framework/proguard.txt # Intentionally empty proguard rules to indicate this library is safe to shrink # End of content from /home/jenkins/.gradle/caches/8.13/transforms/b4d6d6989c47becd82b5865338a515f9/transformed/sqlite-framework/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/3dcdb50449e0e2611306810e69495693/transformed/sqlite/proguard.txt # Intentionally empty proguard rules to indicate this library is safe to shrink # End of content from /home/jenkins/.gradle/caches/8.13/transforms/3dcdb50449e0e2611306810e69495693/transformed/sqlite/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/632031a1b78ba59b2f3dc3399cab3d02/transformed/acra-core-5.13.1/proguard.txt # Restore some Source file names and restore approximate line numbers in the stack traces, # otherwise the stack traces are pretty useless -keepattributes SourceFile,LineNumberTable # ACRA loads Plugins using reflection -keep class * implements org.acra.plugins.Plugin {*;} # ACRA uses enum fields in json -keep enum org.acra.** {*;} # autodsl accesses constructors using reflection -keepclassmembers class * implements org.acra.config.Configuration { (...); } # ACRA creates a proxy for this interface -keep interface org.acra.ErrorReporter { void (); } -dontwarn android.support.** -dontwarn com.faendir.kotlin.autodsl.DslInspect -dontwarn com.faendir.kotlin.autodsl.DslMandatory -dontwarn com.google.auto.service.AutoService # End of content from /home/jenkins/.gradle/caches/8.13/transforms/632031a1b78ba59b2f3dc3399cab3d02/transformed/acra-core-5.13.1/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/0b8b3ba694c9956a2a9e82472864ca77/transformed/googleid-1.1.0/proguard.txt # Proguard cannot process META-INF/versions/9. # See https://discuss.gradle.org/t/meta-inf-version-duplicate-error-when-using-proguard/31380 -dontwarn module-info # End of content from /home/jenkins/.gradle/caches/8.13/transforms/0b8b3ba694c9956a2a9e82472864ca77/transformed/googleid-1.1.0/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/ef7fc8bd8170b314119aeee8551790c0/transformed/okhttp-release/proguard.txt # JSR 305 annotations are for embedding nullability information. -dontwarn javax.annotation.** # Animal Sniffer compileOnly dependency to ensure APIs are compatible with older versions of Java. -dontwarn org.codehaus.mojo.animal_sniffer.* # OkHttp platform used only on JVM and when Conscrypt and other security providers are available. # May be used with robolectric or deliberate use of Bouncy Castle on Android -dontwarn okhttp3.internal.platform.** -dontwarn org.conscrypt.** -dontwarn org.bouncycastle.** -dontwarn org.openjsse.** # End of content from /home/jenkins/.gradle/caches/8.13/transforms/ef7fc8bd8170b314119aeee8551790c0/transformed/okhttp-release/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/9bd37cad048c2a6e032c83cf0fefcf5e/transformed/shrink-rules/lib/META-INF/proguard/ktor.pro # Most of volatile fields are updated with AtomicFU and should not be mangled/removed -keepclassmembers class io.ktor.** { volatile ; } -keepclassmembernames class io.ktor.** { volatile ; } # client engines are loaded using ServiceLoader so we need to keep them -keep class io.ktor.client.engine.** implements io.ktor.client.HttpClientEngineContainer # End of content from /home/jenkins/.gradle/caches/8.13/transforms/9bd37cad048c2a6e032c83cf0fefcf5e/transformed/shrink-rules/lib/META-INF/proguard/ktor.pro # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/2eab7094eda89d58d9e2ce958e028e7c/transformed/shrink-rules/lib/META-INF/com.android.tools/r8/kotlinx-serialization-common.pro # Keep `Companion` object fields of serializable classes. # This avoids serializer lookup through `getDeclaredClasses` as done for named companion objects. -if @kotlinx.serialization.Serializable class ** -keepclassmembers class <1> { static <1>$* Companion; } # Keep names for named companion object from obfuscation # Names of a class and of a field are important in lookup of named companion in runtime -keepnames @kotlinx.serialization.internal.NamedCompanion class * -if @kotlinx.serialization.internal.NamedCompanion class * -keepclassmembernames class * { static <1> *; } # Keep `serializer()` on companion objects (both default and named) of serializable classes. -if @kotlinx.serialization.Serializable class ** { static **$* *; } -keepclassmembers class <2>$<3> { kotlinx.serialization.KSerializer serializer(...); } # Keep `INSTANCE.serializer()` of serializable objects. -if @kotlinx.serialization.Serializable class ** { public static ** INSTANCE; } -keepclassmembers class <1> { public static <1> INSTANCE; kotlinx.serialization.KSerializer serializer(...); } # @Serializable and @Polymorphic are used at runtime for polymorphic serialization. -keepattributes RuntimeVisibleAnnotations,AnnotationDefault # Don't print notes about potential mistakes or omissions in the configuration for kotlinx-serialization classes # See also https://github.com/Kotlin/kotlinx.serialization/issues/1900 -dontnote kotlinx.serialization.** # Serialization core uses `java.lang.ClassValue` for caching inside these specified classes. # If there is no `java.lang.ClassValue` (for example, in Android), then R8/ProGuard will print a warning. # However, since in this case they will not be used, we can disable these warnings -dontwarn kotlinx.serialization.internal.ClassValueReferences # disable optimisation for descriptor field because in some versions of ProGuard, optimization generates incorrect bytecode that causes a verification error # see https://github.com/Kotlin/kotlinx.serialization/issues/2719 -keepclassmembers public class **$$serializer { private ** descriptor; } # End of content from /home/jenkins/.gradle/caches/8.13/transforms/2eab7094eda89d58d9e2ce958e028e7c/transformed/shrink-rules/lib/META-INF/com.android.tools/r8/kotlinx-serialization-common.pro # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/2eab7094eda89d58d9e2ce958e028e7c/transformed/shrink-rules/lib/META-INF/com.android.tools/r8/kotlinx-serialization-r8.pro # Rule to save runtime annotations on serializable class. # If the R8 full mode is used, annotations are removed from classes-files. # # For the annotation serializer, it is necessary to read the `Serializable` annotation inside the serializer() function - if it is present, # then `SealedClassSerializer` is used, if absent, then `PolymorphicSerializer'. # # When using R8 full mode, all interfaces will be serialized using `PolymorphicSerializer`. # # see https://github.com/Kotlin/kotlinx.serialization/issues/2050 -if @kotlinx.serialization.Serializable class ** -keep, allowshrinking, allowoptimization, allowobfuscation, allowaccessmodification class <1> # Rule to save INSTANCE field and serializer function for Kotlin serializable objects. # # R8 full mode works differently if the instance is not explicitly accessed in the code. # # see https://github.com/Kotlin/kotlinx.serialization/issues/2861 # see https://issuetracker.google.com/issues/379996140 -keepclassmembers @kotlinx.serialization.Serializable class ** { public static ** INSTANCE; kotlinx.serialization.KSerializer serializer(...); } # End of content from /home/jenkins/.gradle/caches/8.13/transforms/2eab7094eda89d58d9e2ce958e028e7c/transformed/shrink-rules/lib/META-INF/com.android.tools/r8/kotlinx-serialization-r8.pro # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/8efc5a8510bc38a59128c72100860e94/transformed/shrink-rules/lib/META-INF/proguard/datetime.pro # We depend on kotlinx-serialization as compileOnly. # If the serializers don't get used, the library works properly even without the # kotlinx-serialization dependency, but Proguard emits warnings about datetime # classes mentioning some serialization-related entities. # These rules should not cause problems: if a project actually relies on # serialization, then much more than just these two classes will be required, # so telling Proguard not to worry if these two are missing will not prevent it # from emitting errors for code that does use serialization but somehow forgot # to depend on it. -dontwarn kotlinx.serialization.KSerializer -dontwarn kotlinx.serialization.Serializable # End of content from /home/jenkins/.gradle/caches/8.13/transforms/8efc5a8510bc38a59128c72100860e94/transformed/shrink-rules/lib/META-INF/proguard/datetime.pro # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/f42e661c2d47b12d357719a77453aae0/transformed/shrink-rules/lib/META-INF/com.android.tools/r8-from-1.6.0/coroutines.pro # Allow R8 to optimize away the FastServiceLoader. # Together with ServiceLoader optimization in R8 # this results in direct instantiation when loading Dispatchers.Main -assumenosideeffects class kotlinx.coroutines.internal.MainDispatcherLoader { boolean FAST_SERVICE_LOADER_ENABLED return false; } -assumenosideeffects class kotlinx.coroutines.internal.FastServiceLoaderKt { boolean ANDROID_DETECTED return true; } # Disable support for "Missing Main Dispatcher", since we always have Android main dispatcher -assumenosideeffects class kotlinx.coroutines.internal.MainDispatchersKt { boolean SUPPORT_MISSING return false; } # Statically turn off all debugging facilities and assertions -assumenosideeffects class kotlinx.coroutines.DebugKt { boolean getASSERTIONS_ENABLED() return false; boolean getDEBUG() return false; boolean getRECOVER_STACK_TRACES() return false; } # End of content from /home/jenkins/.gradle/caches/8.13/transforms/f42e661c2d47b12d357719a77453aae0/transformed/shrink-rules/lib/META-INF/com.android.tools/r8-from-1.6.0/coroutines.pro # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/68f16f8f335c4d843926a4df99371589/transformed/shrink-rules/lib/META-INF/com.android.tools/r8/coroutines.pro # When editing this file, update the following files as well: # - META-INF/proguard/coroutines.pro # - META-INF/com.android.tools/proguard/coroutines.pro # Most of volatile fields are updated with AFU and should not be mangled -keepclassmembers class kotlinx.coroutines.** { volatile ; } # Same story for the standard library's SafeContinuation that also uses AtomicReferenceFieldUpdater -keepclassmembers class kotlin.coroutines.SafeContinuation { volatile ; } # These classes are only required by kotlinx.coroutines.debug.internal.AgentPremain, which is only loaded when # kotlinx-coroutines-core is used as a Java agent, so these are not needed in contexts where ProGuard is used. -dontwarn java.lang.instrument.ClassFileTransformer -dontwarn sun.misc.SignalHandler -dontwarn java.lang.instrument.Instrumentation -dontwarn sun.misc.Signal # Only used in `kotlinx.coroutines.internal.ExceptionsConstructor`. # The case when it is not available is hidden in a `try`-`catch`, as well as a check for Android. -dontwarn java.lang.ClassValue # An annotation used for build tooling, won't be directly accessed. -dontwarn org.codehaus.mojo.animal_sniffer.IgnoreJRERequirement # End of content from /home/jenkins/.gradle/caches/8.13/transforms/68f16f8f335c4d843926a4df99371589/transformed/shrink-rules/lib/META-INF/com.android.tools/r8/coroutines.pro # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/dbfa786d087927963b8b609d43314ee7/transformed/core-viewtree-1.0.0/proguard.txt # Intentionally empty proguard rules to indicate this library is safe to shrink # End of content from /home/jenkins/.gradle/caches/8.13/transforms/dbfa786d087927963b8b609d43314ee7/transformed/core-viewtree-1.0.0/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/97a8bbdb09115af202f95e92e2b8d2a9/transformed/annotation-experimental-1.5.0/proguard.txt # Intentionally empty proguard rules to indicate this library is safe to shrink # End of content from /home/jenkins/.gradle/caches/8.13/transforms/97a8bbdb09115af202f95e92e2b8d2a9/transformed/annotation-experimental-1.5.0/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/dc41ba3e355c9cf5ab98a5934617c708/transformed/startup-runtime-1.2.0/proguard.txt # It's important that we preserve initializer names, given they are used in the AndroidManifest.xml. -keepnames class * extends androidx.startup.Initializer # These Proguard rules ensures that ComponentInitializers are are neither shrunk nor obfuscated, # and are a part of the primary dex file. This is because they are discovered and instantiated # during application startup. -keep class * extends androidx.startup.Initializer { # Keep the public no-argument constructor while allowing other methods to be optimized. (); } -assumenosideeffects class androidx.startup.StartupLogger { public static ; } # End of content from /home/jenkins/.gradle/caches/8.13/transforms/dc41ba3e355c9cf5ab98a5934617c708/transformed/startup-runtime-1.2.0/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/b7d409ef2a759ca9fdce102897f3d240/transformed/shrink-rules/lib/META-INF/proguard/androidx-collection-collection-ktx.pro # Intentionally empty proguard rules to indicate this library is safe to shrink # End of content from /home/jenkins/.gradle/caches/8.13/transforms/b7d409ef2a759ca9fdce102897f3d240/transformed/shrink-rules/lib/META-INF/proguard/androidx-collection-collection-ktx.pro # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/74dca8d303d9eeac09d7b5ad18d3d4d8/transformed/versionedparcelable-1.1.1/proguard.txt -keep class * implements androidx.versionedparcelable.VersionedParcelable -keep public class android.support.**Parcelizer { *; } -keep public class androidx.**Parcelizer { *; } -keep public class androidx.versionedparcelable.ParcelImpl # End of content from /home/jenkins/.gradle/caches/8.13/transforms/74dca8d303d9eeac09d7b5ad18d3d4d8/transformed/versionedparcelable-1.1.1/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/e650aaf6db2874d95df122faa632095b/transformed/exifinterface-1.4.1/proguard.txt # Intentionally empty proguard rules to indicate this library is safe to shrink # End of content from /home/jenkins/.gradle/caches/8.13/transforms/e650aaf6db2874d95df122faa632095b/transformed/exifinterface-1.4.1/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/c98a7e71ffc55fe555f48ed513e82c74/transformed/shrink-rules/lib/META-INF/proguard/androidx-annotations.pro -keep,allowobfuscation @interface androidx.annotation.Keep -keep @androidx.annotation.Keep class * {*;} -keepclasseswithmembers class * { @androidx.annotation.Keep ; } -keepclasseswithmembers class * { @androidx.annotation.Keep ; } -keepclasseswithmembers class * { @androidx.annotation.Keep (...); } -keepclassmembers,allowobfuscation class * { @androidx.annotation.DoNotInline ; } # End of content from /home/jenkins/.gradle/caches/8.13/transforms/c98a7e71ffc55fe555f48ed513e82c74/transformed/shrink-rules/lib/META-INF/proguard/androidx-annotations.pro # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/61dc2f5abf7af16281b7413b8c52f4b6/transformed/shrink-rules/lib/META-INF/proguard/collect.pro -dontwarn java.lang.SafeVarargs # The nested FieldSettersHolder class looks these up. # # We use -keepclassmembernames because we want for ImmutableMultimap and its # fields to be stripped if it's unused: -keepclassmembernames says that, *if* # you're keeping the fields, you need to leave their names untouched. (Anyone # who is using ImmutableMultimap will certainly be using its fields. So we # don't need to worry that an ImmutableMultimap user will have the fields # optimized away.) # # This configuration is untested.... -keepclassmembernames class com.google.common.collect.ImmutableMultimap { *** map; *** size; } # similarly: -keepclassmembernames class com.google.common.collect.ConcurrentHashMultiset { *** countMap; } # similarly: -keepclassmembernames class com.google.common.collect.ImmutableSetMultimap { *** emptySet; } # similarly: -keepclassmembernames class com.google.common.collect.AbstractSortedMultiset { *** comparator; } # similarly: -keepclassmembernames class com.google.common.collect.TreeMultiset { *** range; *** rootReference; *** header; } # End of content from /home/jenkins/.gradle/caches/8.13/transforms/61dc2f5abf7af16281b7413b8c52f4b6/transformed/shrink-rules/lib/META-INF/proguard/collect.pro # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/61dc2f5abf7af16281b7413b8c52f4b6/transformed/shrink-rules/lib/META-INF/proguard/hash.pro # LittleEndianByteArray uses this -dontwarn sun.misc.Unsafe # Striped64 appears to make some assumptions about object layout that # really might not be safe. This should be investigated. -keepclassmembers class com.google.common.hash.Striped64 { *** base; *** busy; } -keepclassmembers class com.google.common.hash.Striped64$Cell { ; } # End of content from /home/jenkins/.gradle/caches/8.13/transforms/61dc2f5abf7af16281b7413b8c52f4b6/transformed/shrink-rules/lib/META-INF/proguard/hash.pro # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/61dc2f5abf7af16281b7413b8c52f4b6/transformed/shrink-rules/lib/META-INF/proguard/cache.pro # Striped64 uses this -dontwarn sun.misc.Unsafe # Striped64 appears to make some assumptions about object layout that # really might not be safe. This should be investigated. -keepclassmembers class com.google.common.cache.Striped64 { *** base; *** busy; } -keepclassmembers class com.google.common.cache.Striped64$Cell { ; } # End of content from /home/jenkins/.gradle/caches/8.13/transforms/61dc2f5abf7af16281b7413b8c52f4b6/transformed/shrink-rules/lib/META-INF/proguard/cache.pro # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/61dc2f5abf7af16281b7413b8c52f4b6/transformed/shrink-rules/lib/META-INF/proguard/base.pro # Note: We intentionally don't add the flags we'd need to make Flags and Enums # work. That's because the Proguard configuration required to make them work on # optimized code would preclude lots of optimization, like converting enums # into ints. # Throwables uses internal APIs for lazy stack trace resolution -dontnote sun.misc.SharedSecrets -keep class sun.misc.SharedSecrets { *** getJavaLangAccess(...); } -dontnote sun.misc.JavaLangAccess -keep class sun.misc.JavaLangAccess { *** getStackTraceElement(...); *** getStackTraceDepth(...); } # FinalizableReferenceQueue calls this reflectively # Proguard is intelligent enough to spot the use of reflection onto this, so we # only need to keep the names, and allow it to be stripped out if # FinalizableReferenceQueue is unused. -keepnames class com.google.common.base.internal.Finalizer { *** startFinalizer(...); } # However, it cannot "spot" that this method needs to be kept IF the class is. -keepclassmembers class com.google.common.base.internal.Finalizer { *** startFinalizer(...); } -keepnames class com.google.common.base.FinalizableReference { void finalizeReferent(); } -keepclassmembers class com.google.common.base.FinalizableReference { void finalizeReferent(); } # End of content from /home/jenkins/.gradle/caches/8.13/transforms/61dc2f5abf7af16281b7413b8c52f4b6/transformed/shrink-rules/lib/META-INF/proguard/base.pro # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/61dc2f5abf7af16281b7413b8c52f4b6/transformed/shrink-rules/lib/META-INF/proguard/primitives.pro # UnsignedBytes uses this -dontwarn sun.misc.Unsafe # End of content from /home/jenkins/.gradle/caches/8.13/transforms/61dc2f5abf7af16281b7413b8c52f4b6/transformed/shrink-rules/lib/META-INF/proguard/primitives.pro # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/61dc2f5abf7af16281b7413b8c52f4b6/transformed/shrink-rules/lib/META-INF/proguard/io.pro -keep class java.lang.Throwable { *** addSuppressed(...); } # End of content from /home/jenkins/.gradle/caches/8.13/transforms/61dc2f5abf7af16281b7413b8c52f4b6/transformed/shrink-rules/lib/META-INF/proguard/io.pro # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/61dc2f5abf7af16281b7413b8c52f4b6/transformed/shrink-rules/lib/META-INF/proguard/concurrent.pro # Futures.getChecked, in both of its variants, is incompatible with proguard. # Used by AtomicReferenceFieldUpdater and sun.misc.Unsafe -keepclassmembers class com.google.common.util.concurrent.AbstractFuture** { *** waiters; *** value; *** listeners; *** thread; *** next; } -keepclassmembers class com.google.common.util.concurrent.AtomicDouble { *** value; } -keepclassmembers class com.google.common.util.concurrent.AggregateFutureState { *** remaining; *** seenExceptions; } # Since Unsafe is using the field offsets of these inner classes, we don't want # to have class merging or similar tricks applied to these classes and their # fields. It's safe to allow obfuscation, since the by-name references are # already preserved in the -keep statement above. -keep,allowshrinking,allowobfuscation class com.google.common.util.concurrent.AbstractFuture** { ; } # AbstractFuture uses this -dontwarn sun.misc.Unsafe # MoreExecutors references AppEngine -dontnote com.google.appengine.api.ThreadManager -keep class com.google.appengine.api.ThreadManager { static *** currentRequestThreadFactory(...); } -dontnote com.google.apphosting.api.ApiProxy -keep class com.google.apphosting.api.ApiProxy { static *** getCurrentEnvironment (...); } -dontwarn java.lang.SafeVarargs # End of content from /home/jenkins/.gradle/caches/8.13/transforms/61dc2f5abf7af16281b7413b8c52f4b6/transformed/shrink-rules/lib/META-INF/proguard/concurrent.pro # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/61dc2f5abf7af16281b7413b8c52f4b6/transformed/shrink-rules/lib/META-INF/proguard/reflect.pro # Warning: common.reflect (like reflection in general) is typically slow and # unreliable under Android. We do not recommend using it. This Proguard config # exists only to avoid breaking the builds of users who already have # common.reflect in their transitive dependencies. # -dontwarn com.google.common.reflect.Invokable -dontwarn com.google.common.reflect.Invokable$ConstructorInvokable -dontwarn com.google.common.reflect.Invokable$MethodInvokable -dontwarn com.google.common.reflect.Parameter # End of content from /home/jenkins/.gradle/caches/8.13/transforms/61dc2f5abf7af16281b7413b8c52f4b6/transformed/shrink-rules/lib/META-INF/proguard/reflect.pro # The proguard configuration file for the following section is # End of content from