-
Notifications
You must be signed in to change notification settings - Fork 7.3k
Description
What kind of issue is this?
-
Question. This issue tracker is not the place for questions. If you want to ask how to do
something, or to understand why something isn't working the way you expect it to, use Stack
Overflow. https://stackoverflow.com/questions/tagged/retrofit -
Bug report. If you’ve found a bug, spend the time to write a failing test. Bugs with tests
get fixed. Here’s an example: https://gist.github.com/swankjesse/6608b4713ad80988cdc9 -
Feature Request. Start by telling us what problem you’re trying to solve. Often a solution
already exists! Don’t send pull requests to implement new features without first getting our
support. Sometimes we leave features out on purpose to keep the project small.
I wish there was support for KSP annotation processor for retrofit-response-type-keeper.
Also it would be great to improve retrofit's Readme, R8 / ProGuard section and mention problem #4011 (comment) with showing that retrofit-response-type-keeper
exists
Some story for background:
I had today problem described
- here: Serialization with proguard Kotlin/kotlinx.serialization#2385
- and here: [Android] [R8]
IllegalArgumentExceptionthrown when calling a service operation with unused return type #4011 (comment)
My build config is
- AGP ver "8.3.2"
- kotlin ver "1.9.22"
- ksp ver "1.9.22-1.0.17"
- kotlinx.serialization ver 1.6.3
- R8 full
Working solutions for problem are two:
- working rule
-keep, allowobfuscation, allowoptimization, allowaccessmodification @kotlinx.serialization.Serializable class * - usage of retrofit-response-type-keeper
retrofit-response-type-keeper is doing great job and is working fine, but for it to work I needed to add kapt plugin when all other processors (in my case it was hilt, room) support ksp.