-
Notifications
You must be signed in to change notification settings - Fork 500
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add default proguard config for sample app #138
Add default proguard config for sample app #138
Conversation
Update Kotline to 1.2.51 Include consumer proguard file in every variant Add default proguard config for sample app Run Proguard on release build type for sample app
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice work! That Proguard file has some really weird things. I commented on some.
A few more suggestions: you named proguard-project.pro instead of proguard-rules.pro. Also, I counted |
@bernaferrari This is on purpose, I want to make clear that these are project specific rules. The name of the file is not really a problem.
|
Fine. I tried the new configurations on my app that crashes with MvRx. I was able to make it stop crashing with the following configuration:
I suggest adding it to the library, since everyone using mvrx+epoxy+proguard will get a crash without it (probably because of reflection), which is not fun. |
I disagree. The config should be very topical and only contain keep rules for classes in the lib (not for anything it depends on). This is why this is part of the demo app, but it should not be part of the lib itself. |
I think you should at least add on wiki that mvrx crashes without some proguard rules, else this will catch a lot of people on surprise. |
Well the rules are now in the demo app. But I agree, let me update the README... |
If I were you I would probably split in the demo what is necessary for the
library and what is necessary for the demo (which include retrofit and
okhttp that is independent of mvrx).
…On Fri, Nov 16, 2018, 22:58 rossbacher ***@***.***> wrote:
Well the rules are now in the demo app. But I agree, let me update the
README...
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#138 (comment)>, or mute
the thread
<https://github.com/notifications/unsubscribe-auth/AAVblaS_epCzHugoRPj29OV6K70A_5zdks5uv18ggaJpZM4Ye4JX>
.
|
Updated proguard file to distinguish between Kotlin/Rx and lib rules
I also updated the Wiki with a Proguard/Dexguard section here: https://github.com/airbnb/MvRx/wiki#proguarddexguard |
Done: https://github.com/airbnb/MvRx/wiki#proguarddexguard |
Done. |
Great, awesome, thanks! |
…ialState (#181) #169 Added a new initialState method and ability to not use @JvmStatic all of these need keep rules. Closes #176 ** Note: Kotlin 1.3+ requires this keep rule as well: keep class kotlin.reflect.jvm.internal.impl.serialization.deserialization.builtins.BuiltInsLoaderImpl Per the discussion in #138, this is not a project specific rule, so not including it in the proguard file, but updated wiki to suggest it. Tested on sample app. Created #182 to prevent this from the future. Would be a great first task if anyone from the community wants to jump on it :)
Update AGP to 3.2.0
Update Kotlin to 1.2.51
Include consumer proguard file in every variant
Add default proguard config for sample app
Run Proguard on release build type for sample app
Fixes: #126