# The proguard configuration file for the following section is /home/jenkins/.jenkins/workspace/invite-person/respect-app-compose/build/intermediates/aapt_proguard_file/release/processReleaseResources/aapt_rules.txt -keep class androidx.camera.core.impl.MetadataHolderService { (); } -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.datatransport.runtime.backends.TransportBackendDiscovery { (); } -keep class com.google.android.datatransport.runtime.scheduling.jobscheduling.AlarmManagerSchedulerBroadcastReceiver { (); } -keep class com.google.android.datatransport.runtime.scheduling.jobscheduling.JobInfoSchedulerService { (); } -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 com.google.mlkit.common.internal.MlKitComponentDiscoveryService { (); } -keep class com.google.mlkit.common.internal.MlKitInitProvider { (); } -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/invite-person/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/invite-person/respect-app-compose/build/intermediates/default_proguard_files/global/proguard-android-optimize.txt-8.13.2 # 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/invite-person/respect-app-compose/build/intermediates/default_proguard_files/global/proguard-android-optimize.txt-8.13.2 # The proguard configuration file for the following section is /home/jenkins/.jenkins/workspace/invite-person/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/invite-person/respect-app-compose/proguard-rules.pro # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/13937312c6f2ba6003a74b70fe27362d/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/13937312c6f2ba6003a74b70fe27362d/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/03e1681eb74311cac3cc0f8bdbd347d4/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/03e1681eb74311cac3cc0f8bdbd347d4/transformed/material-1.13.0/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/a49517e2bd7009a5f0630a0dc36c22d2/transformed/coil-core-release/proguard.txt -dontwarn coil3.PlatformContext # End of content from /home/jenkins/.gradle/caches/8.13/transforms/a49517e2bd7009a5f0630a0dc36c22d2/transformed/coil-core-release/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/0589c6186f87660494fc7e97d19c6613/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/0589c6186f87660494fc7e97d19c6613/transformed/preference-1.2.1/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/3f12a0eb0e3667fab9d92604a5d7606f/transformed/biometric-1.4.0-alpha02/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/3f12a0eb0e3667fab9d92604a5d7606f/transformed/biometric-1.4.0-alpha02/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/a4130ea513da47018162f96fbcbebf06/transformed/camera-video-1.5.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/a4130ea513da47018162f96fbcbebf06/transformed/camera-video-1.5.1/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/6a5fb0cfb43768154c7d95d98c64c11f/transformed/camera-extensions-1.5.1/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. # Needs to keep the classes implementing the vendor library interfaces in the extensions module. # Otherwise, it will cause AbstractMethodError if proguard is enabled. -keep class androidx.camera.extensions.ExtensionsManager$** {*;} -keep class androidx.camera.extensions.internal.sessionprocessor.AdvancedSessionProcessor$** {*;} -keep class androidx.camera.extensions.internal.sessionprocessor.StillCaptureProcessor** {*;} -keep class androidx.camera.extensions.internal.sessionprocessor.PreviewProcessor** {*;} # End of content from /home/jenkins/.gradle/caches/8.13/transforms/6a5fb0cfb43768154c7d95d98c64c11f/transformed/camera-extensions-1.5.1/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/24e63af4a456f9bb620c70f86a200211/transformed/camera-camera2-1.5.1/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. # This is necessary for default initialization using Camera2Config -keep public class androidx.camera.camera2.Camera2Config$DefaultProvider { *; } # This is used to workaround a framework issue. See b/397601512. -keepclassmembers class * extends android.hardware.camera2.CameraCaptureSession$CaptureCallback { public void onReadoutStarted(android.hardware.camera2.CameraCaptureSession,android.hardware.camera2.CaptureRequest,long,long); } # End of content from /home/jenkins/.gradle/caches/8.13/transforms/24e63af4a456f9bb620c70f86a200211/transformed/camera-camera2-1.5.1/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/9aa31fe1dca7d1970c33d272ac8779ed/transformed/camera-lifecycle-1.5.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/9aa31fe1dca7d1970c33d272ac8779ed/transformed/camera-lifecycle-1.5.1/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/2aaadeec3770b074525c49afea1aa38e/transformed/camera-core-1.5.1/proguard.txt # Copyright (C) 2023 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. # Keeps the quirk classes to prevent them from being merged incorrectly. For more information, # please see b/278818703. Preserve Quirk subclasses and their names for correct name mapping in # QuirkSettings. -keep,allowshrinking class ** extends androidx.camera.core.impl.Quirk # End of content from /home/jenkins/.gradle/caches/8.13/transforms/2aaadeec3770b074525c49afea1aa38e/transformed/camera-core-1.5.1/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/0d0f14df63bb12e103267df1f6646a52/transformed/camera-view-1.5.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/0d0f14df63bb12e103267df1f6646a52/transformed/camera-view-1.5.1/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/d6ecc45c6eaa40878ca69d36dec636ae/transformed/barcode-scanning-17.3.0/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.mlkit_vision_barcode_bundled.zzeh { ; } # This prevents the names of native methods from being obfuscated and prevents # UnsatisfiedLinkErrors. -keepclasseswithmembernames class * { native ; } # End of content from /home/jenkins/.gradle/caches/8.13/transforms/d6ecc45c6eaa40878ca69d36dec636ae/transformed/barcode-scanning-17.3.0/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/7d9c42d5402de012f7dfec698fcb2be5/transformed/common-18.11.0/proguard.txt # Annotations are implemented as attributes, so we have to explicitly keep them. # Catch all which encompasses attributes like RuntimeVisibleParameterAnnotations # and RuntimeVisibleTypeAnnotations -keepattributes RuntimeVisible*Annotation* # JNI is an entry point that's hard to keep track of, so there's # an annotation to mark fields and methods used by native code. # Keep the annotations that proguard needs to process. -keep class com.google.android.apps.common.proguard.UsedBy* # Just because native code accesses members of a class, does not mean that the # class itself needs to be annotated - only annotate classes that are # referenced themselves in native code. -keep @com.google.android.apps.common.proguard.UsedBy* class * { (); } -keepclassmembers class * { @com.google.android.apps.common.proguard.UsedBy* *; } # End of content from /home/jenkins/.gradle/caches/8.13/transforms/7d9c42d5402de012f7dfec698fcb2be5/transformed/common-18.11.0/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/483d0c4b5d4606b507923093068e974a/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/483d0c4b5d4606b507923093068e974a/transformed/appcompat-1.7.1/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/0ac584ed3a60baabcb1353bef3436bb9/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/0ac584ed3a60baabcb1353bef3436bb9/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/83e9307300f8c5bf222ced16906fbf35/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/83e9307300f8c5bf222ced16906fbf35/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/5c329a106c39477b3b8183a15c71eb42/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/5c329a106c39477b3b8183a15c71eb42/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/c9311b59a5ce35b5eacf1eb4ccd20e92/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/c9311b59a5ce35b5eacf1eb4ccd20e92/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/e6956f053c82f6faa5b91ee99139803d/transformed/play-services-tasks-18.2.0/proguard.txt # End of content from /home/jenkins/.gradle/caches/8.13/transforms/e6956f053c82f6faa5b91ee99139803d/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/765397744f26ad7cce892cace9ec8ce9/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/765397744f26ad7cce892cace9ec8ce9/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/f7e43a431ff3e17305af4a2d37066a35/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/f7e43a431ff3e17305af4a2d37066a35/transformed/fragment-1.8.9/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/32a4ef33107a841eb8aa69c1a68fceb4/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/32a4ef33107a841eb8aa69c1a68fceb4/transformed/navigation-common-release/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/7945c544017fa4391950d33493453018/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/7945c544017fa4391950d33493453018/transformed/navigation-compose-release/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/a834159d795b835a37ec73974bb00b00/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/a834159d795b835a37ec73974bb00b00/transformed/navigation-runtime-release/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/aa6940715f5544539add8386188eb101/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/aa6940715f5544539add8386188eb101/transformed/room-runtime/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/f76b72ba3d2adec73a46406ea434f8db/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/f76b72ba3d2adec73a46406ea434f8db/transformed/work-runtime-2.10.4/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/c11a634e65f2339147ca0473e5a95283/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/c11a634e65f2339147ca0473e5a95283/transformed/room-ktx-2.8.2/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/1cf893b1a986d4ece4c1a49331a07ac5/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/1cf893b1a986d4ece4c1a49331a07ac5/transformed/room-paging/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/db268c1536060db59c50b2e37b146051/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/db268c1536060db59c50b2e37b146051/transformed/paging-common/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/0bc3ca788b855525a34116b06acb7a1c/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/0bc3ca788b855525a34116b06acb7a1c/transformed/paging-compose/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/7153599633b3f87802dcb2c478077b63/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/7153599633b3f87802dcb2c478077b63/transformed/material/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/57aee9f34c563771895caffe0956160f/transformed/reorderable-release/proguard.txt # End of content from /home/jenkins/.gradle/caches/8.13/transforms/57aee9f34c563771895caffe0956160f/transformed/reorderable-release/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/5c07ac6b48f1810dede6f7bbd9e4f85a/transformed/material3-window-size-class/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/5c07ac6b48f1810dede6f7bbd9e4f85a/transformed/material3-window-size-class/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/e1b047e3059e2baa05b596278cf47d5a/transformed/material3/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/e1b047e3059e2baa05b596278cf47d5a/transformed/material3/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/6f6dac643920d4512c40eb1c2ac31873/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/6f6dac643920d4512c40eb1c2ac31873/transformed/material-ripple/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/95630347d9e94628f711b45e0dd714a8/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/95630347d9e94628f711b45e0dd714a8/transformed/animation-core/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/f1889f49ff26a5776be8ed4a1a10bc4e/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/f1889f49ff26a5776be8ed4a1a10bc4e/transformed/animation/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/d2760c37ed57a608abdd1a56510b8e18/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/d2760c37ed57a608abdd1a56510b8e18/transformed/foundation-layout/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/214596aa633362057b9a6ee15a4284c4/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/214596aa633362057b9a6ee15a4284c4/transformed/foundation-release/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/27664efbbd913aa7f385549d558a8005/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/27664efbbd913aa7f385549d558a8005/transformed/ui-tooling-preview/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/2fdab37e13170c567d58fd65ce638be8/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/2fdab37e13170c567d58fd65ce638be8/transformed/ui-util/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/c7ba4567aab55da73e22217b982073db/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/c7ba4567aab55da73e22217b982073db/transformed/ui-unit/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/0c80ebc22cdaebbd931d1229c596ed8e/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/0c80ebc22cdaebbd931d1229c596ed8e/transformed/ui-graphics/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/96e48545aa3d089b9f5c4a8ed4d6f669/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/96e48545aa3d089b9f5c4a8ed4d6f669/transformed/ui-geometry/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/b3100fadd7c15b311c31c71ea71396aa/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/b3100fadd7c15b311c31c71ea71396aa/transformed/ui-text/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/b4953b3641c78772c5e3c46a21bbbc32/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/b4953b3641c78772c5e3c46a21bbbc32/transformed/lifecycle-process-2.9.4/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/8ba266b8ab91b2f636bda14494fc5694/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/8ba266b8ab91b2f636bda14494fc5694/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/1740ec1015b51ffb70cc8df7f228f13f/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/1740ec1015b51ffb70cc8df7f228f13f/transformed/lifecycle-viewmodel-savedstate-release/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/a5f002153544e68c05ce6c179fb56848/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/a5f002153544e68c05ce6c179fb56848/transformed/lifecycle-viewmodel-release/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/e74a0f732dd9b85ae270607093d047b5/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/e74a0f732dd9b85ae270607093d047b5/transformed/webkit-1.14.0/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/7faf09e3b7482fcefbe116b432d1c68d/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/7faf09e3b7482fcefbe116b432d1c68d/transformed/coordinatorlayout-1.1.0/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/e8241c887418443836926c707aea2d80/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/e8241c887418443836926c707aea2d80/transformed/transition-1.6.0/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/8ce82453af69174f3aa84cddbfef096d/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/8ce82453af69174f3aa84cddbfef096d/transformed/dynamicanimation-1.1.0/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/86238b4502eaac43e76c68b9abbfa2c1/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/86238b4502eaac43e76c68b9abbfa2c1/transformed/recyclerview-1.2.1/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/e9ad73cf2a35fe25de056530a425fe67/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/e9ad73cf2a35fe25de056530a425fe67/transformed/vectordrawable-animated-1.1.0/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/454a8a7cd665de5abc9782c30a0c9dac/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/454a8a7cd665de5abc9782c30a0c9dac/transformed/window-1.0.0/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/64d348a0988db69ab4c7a6cdd8bcca70/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/64d348a0988db69ab4c7a6cdd8bcca70/transformed/runtime-annotation/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/f7e8f717ea71165f12ee9a35e009cf15/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/f7e8f717ea71165f12ee9a35e009cf15/transformed/runtime/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/b51668553defa9ccbe09c0f0fe61bb1f/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/b51668553defa9ccbe09c0f0fe61bb1f/transformed/runtime-saveable/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/17803a30b0c5f8481308e5f361939313/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/17803a30b0c5f8481308e5f361939313/transformed/savedstate-release/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/48f39b400ef782bb13f63ea05c3060d2/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/48f39b400ef782bb13f63ea05c3060d2/transformed/savedstate-ktx-1.3.2/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/21cbd62d4a29ca4c75c834f741af684d/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/21cbd62d4a29ca4c75c834f741af684d/transformed/savedstate-compose/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/505dc5358795faf98724c8edc83fee25/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/505dc5358795faf98724c8edc83fee25/transformed/core-ktx-1.16.0/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/94ab21ef2063c98bbe6640127f380e62/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/94ab21ef2063c98bbe6640127f380e62/transformed/graphics-path-1.0.1/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/03d9b6cf867138466e899271f9887408/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/03d9b6cf867138466e899271f9887408/transformed/core-1.16.0/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/1209e110e5b8ef3e0f990c70e5be54ce/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/1209e110e5b8ef3e0f990c70e5be54ce/transformed/lifecycle-runtime-release/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/e8caf78baa337ee9838d40462bc1720d/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/e8caf78baa337ee9838d40462bc1720d/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/9d9b50e8ad7cb79433e1a60bcbfe2f5d/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/9d9b50e8ad7cb79433e1a60bcbfe2f5d/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/b31b1510dfffcb3799bd0f1028ce25e6/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/b31b1510dfffcb3799bd0f1028ce25e6/transformed/lifecycle-service-2.9.4/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/c2a59ab1e1573a1c0d45adbae20f2672/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/c2a59ab1e1573a1c0d45adbae20f2672/transformed/lifecycle-livedata-2.9.4/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/49ef82d9cabe820f54d1c174d1c2996c/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/49ef82d9cabe820f54d1c174d1c2996c/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/a70da92a782036109eb0cd121cde7a42/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/a70da92a782036109eb0cd121cde7a42/transformed/lifecycle-runtime-compose-release/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/4155dc9fa822bbe8484047d250911201/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/4155dc9fa822bbe8484047d250911201/transformed/lifecycle-viewmodel-compose-release/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/07ef0d198554bf79c95eae09fffc1ccd/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/07ef0d198554bf79c95eae09fffc1ccd/transformed/ui/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/fa9a66968ceba6dd7168f6389a9e0016/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/fa9a66968ceba6dd7168f6389a9e0016/transformed/activity-ktx-1.11.0/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/a44433c40f6086c0295f1824bde1b461/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/a44433c40f6086c0295f1824bde1b461/transformed/activity-1.11.0/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/03bcab0c0077594e7fff326a3880d9ba/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/03bcab0c0077594e7fff326a3880d9ba/transformed/activity-compose-1.11.0/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/88c11021201cdb4fa9c8b1c550170564/transformed/sqlite-bundled/proguard.txt -keepclasseswithmembers class androidx.sqlite.driver.bundled.** { native ; } # End of content from /home/jenkins/.gradle/caches/8.13/transforms/88c11021201cdb4fa9c8b1c550170564/transformed/sqlite-bundled/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/9fceecbc798f747072362e68580023a6/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/9fceecbc798f747072362e68580023a6/transformed/sqlite-framework/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/a1cfb99233ca70cc775908163f7cffd8/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/a1cfb99233ca70cc775908163f7cffd8/transformed/sqlite/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/61e1326877cd8ea415df80736e305be1/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/61e1326877cd8ea415df80736e305be1/transformed/acra-core-5.13.1/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/284f26a3a471b385966a7a26b48f56f5/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/284f26a3a471b385966a7a26b48f56f5/transformed/googleid-1.1.0/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/184ac9238929ff6f78f8ade373df157c/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/184ac9238929ff6f78f8ade373df157c/transformed/okhttp-release/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/4ee710a3bac5dec529a57bc80c5f77d8/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/4ee710a3bac5dec529a57bc80c5f77d8/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/c31619e1620c88c141a087c6eabcfb59/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/c31619e1620c88c141a087c6eabcfb59/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/c31619e1620c88c141a087c6eabcfb59/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/c31619e1620c88c141a087c6eabcfb59/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/36cbbc10f9a0a4822296b62243a00b0e/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/36cbbc10f9a0a4822296b62243a00b0e/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/8752f44d44b470cbcdfea15fbe09df69/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/8752f44d44b470cbcdfea15fbe09df69/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/93757b1f6a32fc0d2ee80622e0478b29/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/93757b1f6a32fc0d2ee80622e0478b29/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/2dcbc145f04a43d59b58962aeb77bc21/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/2dcbc145f04a43d59b58962aeb77bc21/transformed/core-viewtree-1.0.0/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/356c29287c16dc35931cca37d4450b92/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/356c29287c16dc35931cca37d4450b92/transformed/annotation-experimental-1.5.0/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/b514aaf8b3ddffc774f34483efbaa681/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/b514aaf8b3ddffc774f34483efbaa681/transformed/startup-runtime-1.2.0/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/557b0b52dd164b42762915310f63cf54/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/557b0b52dd164b42762915310f63cf54/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/3bac3b1685308cfa83863a925528ae98/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/3bac3b1685308cfa83863a925528ae98/transformed/versionedparcelable-1.1.1/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/4b99233c502355d9bc896246f9cbc1a3/transformed/featurecombinationquery-1.5.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/4b99233c502355d9bc896246f9cbc1a3/transformed/featurecombinationquery-1.5.1/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/a645809bfcbbf107210f7c70f031a85e/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/a645809bfcbbf107210f7c70f031a85e/transformed/exifinterface-1.4.1/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/c5d465a3b41eb23905cdbdf582a7c00c/transformed/transport-backend-cct-2.3.3/proguard.txt -dontwarn com.google.auto.value.AutoValue -dontwarn com.google.auto.value.AutoValue$Builder # End of content from /home/jenkins/.gradle/caches/8.13/transforms/c5d465a3b41eb23905cdbdf582a7c00c/transformed/transport-backend-cct-2.3.3/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/b4f22e55f4d5de9c7192c80e43f934c8/transformed/transport-runtime-2.2.6/proguard.txt -dontwarn com.google.auto.value.AutoValue -dontwarn com.google.auto.value.AutoValue$Builder # End of content from /home/jenkins/.gradle/caches/8.13/transforms/b4f22e55f4d5de9c7192c80e43f934c8/transformed/transport-runtime-2.2.6/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/f75350bc6329f48697ec7f6b9ddf0a72/transformed/transport-api-2.2.1/proguard.txt -dontwarn com.google.auto.value.AutoValue -dontwarn com.google.auto.value.AutoValue$Builder # End of content from /home/jenkins/.gradle/caches/8.13/transforms/f75350bc6329f48697ec7f6b9ddf0a72/transformed/transport-api-2.2.1/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/104b65d1b4ce7ecacbe95f2caa4af579/transformed/firebase-components-16.1.0/proguard.txt -dontwarn com.google.firebase.components.Component$Instantiation -dontwarn com.google.firebase.components.Component$ComponentType -keep class * implements com.google.firebase.components.ComponentRegistrar # End of content from /home/jenkins/.gradle/caches/8.13/transforms/104b65d1b4ce7ecacbe95f2caa4af579/transformed/firebase-components-16.1.0/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/c99e5252051d543f32013d7f1f4084f9/transformed/firebase-encoders-json-17.1.0/proguard.txt # End of content from /home/jenkins/.gradle/caches/8.13/transforms/c99e5252051d543f32013d7f1f4084f9/transformed/firebase-encoders-json-17.1.0/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/373b5599397dce2f1ec399665d320a1f/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/373b5599397dce2f1ec399665d320a1f/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/0d3f014209a388b385806a568775605c/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/0d3f014209a388b385806a568775605c/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/0d3f014209a388b385806a568775605c/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/0d3f014209a388b385806a568775605c/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/0d3f014209a388b385806a568775605c/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/0d3f014209a388b385806a568775605c/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/0d3f014209a388b385806a568775605c/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/0d3f014209a388b385806a568775605c/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/0d3f014209a388b385806a568775605c/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/0d3f014209a388b385806a568775605c/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/0d3f014209a388b385806a568775605c/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/0d3f014209a388b385806a568775605c/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/0d3f014209a388b385806a568775605c/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/0d3f014209a388b385806a568775605c/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/0d3f014209a388b385806a568775605c/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/0d3f014209a388b385806a568775605c/transformed/shrink-rules/lib/META-INF/proguard/reflect.pro # The proguard configuration file for the following section is # End of content from