# The proguard configuration file for the following section is /home/jenkins/.jenkins/workspace/RESPECT-curriculum-mapping/respect-app-compose/build/intermediates/aapt_proguard_file/release/processReleaseResources/aapt_rules.txt -keep class androidx.core.app.CoreComponentFactory { (); } -keep class androidx.profileinstaller.ProfileInstallReceiver { (); } -keep class androidx.room.MultiInstanceInvalidationService { (); } -keep class androidx.startup.InitializationProvider { (); } -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.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.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.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/RESPECT-curriculum-mapping/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/RESPECT-curriculum-mapping/respect-app-compose/build/intermediates/default_proguard_files/global/proguard-android-optimize.txt-8.11.1 # 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/RESPECT-curriculum-mapping/respect-app-compose/build/intermediates/default_proguard_files/global/proguard-android-optimize.txt-8.11.1 # The proguard configuration file for the following section is /home/jenkins/.jenkins/workspace/RESPECT-curriculum-mapping/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 # End of content from /home/jenkins/.jenkins/workspace/RESPECT-curriculum-mapping/respect-app-compose/proguard-rules.pro # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/3dd09da0684a0527c2912e0e6d539c50/transformed/material-1.12.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/3dd09da0684a0527c2912e0e6d539c50/transformed/material-1.12.0/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/b053e504f099bee4b263340dc77f972e/transformed/coil-core-release/proguard.txt -dontwarn coil3.PlatformContext # End of content from /home/jenkins/.gradle/caches/8.13/transforms/b053e504f099bee4b263340dc77f972e/transformed/coil-core-release/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/4e843fa78941a9f456f435d58305e544/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/4e843fa78941a9f456f435d58305e544/transformed/appcompat-1.7.1/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/2ab5548ad37de081dfe888ce4f28c812/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/2ab5548ad37de081dfe888ce4f28c812/transformed/navigation-runtime-release/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/004bb972be429a459e5fb6a18f1903f1/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/004bb972be429a459e5fb6a18f1903f1/transformed/navigation-common-release/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/d49845593f10e7610c04aeec994bae7a/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/d49845593f10e7610c04aeec994bae7a/transformed/navigation-compose-release/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/9ede89892ca7b7ef14835147440868e8/transformed/fragment-1.8.8/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/9ede89892ca7b7ef14835147440868e8/transformed/fragment-1.8.8/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/1acf6de3d1705efb2fb09f02f929350c/transformed/material-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/1acf6de3d1705efb2fb09f02f929350c/transformed/material-release/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/88dc3b8205f12cb81098debf8d069af0/transformed/animation-core-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(...); 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/88dc3b8205f12cb81098debf8d069af0/transformed/animation-core-release/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/6e702c38d42c8369914e37358be0b38a/transformed/material-ripple-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/6e702c38d42c8369914e37358be0b38a/transformed/material-ripple-release/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/5978cd2394f0be5d73d2d626d9efb6dc/transformed/animation-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/5978cd2394f0be5d73d2d626d9efb6dc/transformed/animation-release/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/41fc8064a1f2e37851d5e73d91495072/transformed/foundation-layout-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(...); 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/41fc8064a1f2e37851d5e73d91495072/transformed/foundation-layout-release/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/490e7a5d48613452031fe2d014ff325d/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/490e7a5d48613452031fe2d014ff325d/transformed/foundation-release/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/9548526741614f39af8dac9a5880983a/transformed/ui-unit-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(...); 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/9548526741614f39af8dac9a5880983a/transformed/ui-unit-release/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/df02cdc0a03eb3eef736881a9bbd1ad8/transformed/ui-geometry-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/df02cdc0a03eb3eef736881a9bbd1ad8/transformed/ui-geometry-release/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/c86fac3942bda640cf25e7e5b0b685df/transformed/ui-graphics-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(...); 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/c86fac3942bda640cf25e7e5b0b685df/transformed/ui-graphics-release/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/0ff9e5baa0f0e5f3f01f8db04c43a8cd/transformed/ui-util-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(...); 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/0ff9e5baa0f0e5f3f01f8db04c43a8cd/transformed/ui-util-release/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/339a3de8515f6917e243892b07750eb9/transformed/ui-text-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(...); 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/339a3de8515f6917e243892b07750eb9/transformed/ui-text-release/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/eb5a243c4d1c8255fcafd64946402558/transformed/ui-tooling-preview-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/eb5a243c4d1c8255fcafd64946402558/transformed/ui-tooling-preview-release/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/1b98268d8a2dac205adf4e51cd94c141/transformed/transition-1.5.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/1b98268d8a2dac205adf4e51cd94c141/transformed/transition-1.5.0/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/9368cee561b2a3ed6ff94623b8dfb6f2/transformed/lifecycle-process-2.9.1/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/9368cee561b2a3ed6ff94623b8dfb6f2/transformed/lifecycle-process-2.9.1/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/0b058a94715eb4678e87603c0fb6eadc/transformed/lifecycle-livedata-core-ktx-2.9.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/0b058a94715eb4678e87603c0fb6eadc/transformed/lifecycle-livedata-core-ktx-2.9.1/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/8a59764a521b7a29a015a43fc2da5dd0/transformed/lifecycle-livedata-core-2.9.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/8a59764a521b7a29a015a43fc2da5dd0/transformed/lifecycle-livedata-core-2.9.1/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/7dd9de3fd09463ab45b0ee2d9dd3ecbd/transformed/savedstate-ktx-1.3.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/7dd9de3fd09463ab45b0ee2d9dd3ecbd/transformed/savedstate-ktx-1.3.0/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/8cbbd341d89388a2b63abace5ceca41b/transformed/savedstate-compose-release/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/8cbbd341d89388a2b63abace5ceca41b/transformed/savedstate-compose-release/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/e5521dea69df147b08d4cc7072b9a088/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/e5521dea69df147b08d4cc7072b9a088/transformed/savedstate-release/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/9a70dbcd23b96cefd4a68adf6115e06b/transformed/webkit-1.8.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; } # End of content from /home/jenkins/.gradle/caches/8.13/transforms/9a70dbcd23b96cefd4a68adf6115e06b/transformed/webkit-1.8.0/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/b2a6fe0420adb6a3da445538a6eb49d3/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/b2a6fe0420adb6a3da445538a6eb49d3/transformed/coordinatorlayout-1.1.0/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/790e90992d23ee8087d1cd679580b53b/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/790e90992d23ee8087d1cd679580b53b/transformed/vectordrawable-animated-1.1.0/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/3c6393a20b5ff46d18f0315d8cac6641/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/3c6393a20b5ff46d18f0315d8cac6641/transformed/window-1.0.0/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/1f343e665299bf8ac5227caf1b422da1/transformed/recyclerview-1.1.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. # 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/1f343e665299bf8ac5227caf1b422da1/transformed/recyclerview-1.1.0/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/9f3dda29c25c1e1421c914500de3a6cf/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/9f3dda29c25c1e1421c914500de3a6cf/transformed/graphics-path-1.0.1/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/22c3b74d262630cfeafc3eb147149fb7/transformed/core-1.15.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/22c3b74d262630cfeafc3eb147149fb7/transformed/core-1.15.0/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/91ca3c7c78be6f2ce17342cd0bd90f95/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/91ca3c7c78be6f2ce17342cd0bd90f95/transformed/lifecycle-runtime-release/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/ca61636d86bd7d4fb614b67c0df970a4/transformed/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/ca61636d86bd7d4fb614b67c0df970a4/transformed/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/443588034a627fdaa027e756df858261/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/443588034a627fdaa027e756df858261/transformed/lifecycle-viewmodel-savedstate-release/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/b60bb39e6acf6409e109151a96a15d52/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/b60bb39e6acf6409e109151a96a15d52/transformed/lifecycle-viewmodel-release/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/fc04de7d575659ab6a61df6ccc670067/transformed/lifecycle-livedata-2.9.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/fc04de7d575659ab6a61df6ccc670067/transformed/lifecycle-livedata-2.9.1/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/665d798e2afd2089f87f2daa018a0691/transformed/lifecycle-viewmodel-ktx-2.9.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/665d798e2afd2089f87f2daa018a0691/transformed/lifecycle-viewmodel-ktx-2.9.1/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/88a3bcab0e98b073916a6c00d75be114/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/88a3bcab0e98b073916a6c00d75be114/transformed/lifecycle-runtime-compose-release/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/b80d437dd44283197dc5e37245200af0/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/b80d437dd44283197dc5e37245200af0/transformed/lifecycle-viewmodel-compose-release/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/185d03ef4bef17f73d34ece27182ed6c/transformed/ui-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. # 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/185d03ef4bef17f73d34ece27182ed6c/transformed/ui-release/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/b3c87b68b9ef0c0e9c1156c5783e2954/transformed/rules/lib/META-INF/proguard/okhttp3.pro # JSR 305 annotations are for embedding nullability information. -dontwarn javax.annotation.** # A resource is loaded with a relative path so the package of this class must be preserved. -keepnames class okhttp3.internal.publicsuffix.PublicSuffixDatabase # 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. -dontwarn okhttp3.internal.platform.** -dontwarn org.conscrypt.** -dontwarn org.bouncycastle.** -dontwarn org.openjsse.** # End of content from /home/jenkins/.gradle/caches/8.13/transforms/b3c87b68b9ef0c0e9c1156c5783e2954/transformed/rules/lib/META-INF/proguard/okhttp3.pro # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/77114c346bef260ebe422b4fb3f9ab9c/transformed/room-runtime-release/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/77114c346bef260ebe422b4fb3f9ab9c/transformed/room-runtime-release/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/09c7af0e45abf5b7d374a7af9a6e79e6/transformed/room-ktx-2.7.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/09c7af0e45abf5b7d374a7af9a6e79e6/transformed/room-ktx-2.7.2/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/f12b81b9c6ce0a73f35e8889e7b1e3e2/transformed/sqlite-bundled-release/proguard.txt -keepclasseswithmembernames class androidx.sqlite.driver.bundled.** { native ; } # End of content from /home/jenkins/.gradle/caches/8.13/transforms/f12b81b9c6ce0a73f35e8889e7b1e3e2/transformed/sqlite-bundled-release/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/ff3d1c22aefcee0b4de6b59270f67a2c/transformed/sqlite-framework-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/ff3d1c22aefcee0b4de6b59270f67a2c/transformed/sqlite-framework-release/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/f5a38baf68b794946f9f05ffc43214e9/transformed/sqlite-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/f5a38baf68b794946f9f05ffc43214e9/transformed/sqlite-release/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/d43c4d19f6e1c4b66020cbae5f2c01a8/transformed/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/d43c4d19f6e1c4b66020cbae5f2c01a8/transformed/rules/lib/META-INF/proguard/ktor.pro # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/ba43c73556692ee10ccc92f72d1ebea6/transformed/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/ba43c73556692ee10ccc92f72d1ebea6/transformed/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/ba43c73556692ee10ccc92f72d1ebea6/transformed/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/ba43c73556692ee10ccc92f72d1ebea6/transformed/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/b3dfb4aa2cbc7eb27f5a1a10a9815909/transformed/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/b3dfb4aa2cbc7eb27f5a1a10a9815909/transformed/rules/lib/META-INF/proguard/datetime.pro # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/e4841026d8b1b6ed8615a3a15b6b77a0/transformed/runtime-saveable-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/e4841026d8b1b6ed8615a3a15b6b77a0/transformed/runtime-saveable-release/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/ab7d2f514dc4da4cb5b3fa201e993b7f/transformed/runtime-release/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(...); } # Intentionally empty proguard rules to indicate this library is safe to shrink # End of content from /home/jenkins/.gradle/caches/8.13/transforms/ab7d2f514dc4da4cb5b3fa201e993b7f/transformed/runtime-release/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/3f4f46357a41b9afb267b3c8777df819/transformed/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/3f4f46357a41b9afb267b3c8777df819/transformed/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/962146115a18985ef561cd0e0fdc0f61/transformed/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/962146115a18985ef561cd0e0fdc0f61/transformed/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/32dd1e10318aa7d54bd076c56948e90c/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/32dd1e10318aa7d54bd076c56948e90c/transformed/core-viewtree-1.0.0/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/72049cd036caa55eeb6492537f71a7cb/transformed/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/72049cd036caa55eeb6492537f71a7cb/transformed/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/f066ba9a9c1ba5f97b5a960f4ebb19e8/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/f066ba9a9c1ba5f97b5a960f4ebb19e8/transformed/versionedparcelable-1.1.1/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/a275ea32f6f344c73b577cbe42087285/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/a275ea32f6f344c73b577cbe42087285/transformed/exifinterface-1.4.1/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/e0d5dd62e978284cc19552287f957917/transformed/startup-runtime-1.1.1/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/e0d5dd62e978284cc19552287f957917/transformed/startup-runtime-1.1.1/proguard.txt # The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.13/transforms/00d1c84472beff8ed286c3c7c4b90cd5/transformed/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/00d1c84472beff8ed286c3c7c4b90cd5/transformed/rules/lib/META-INF/proguard/androidx-annotations.pro # The proguard configuration file for the following section is # End of content from