mbonnin08/06/2021, 10:00 AM
, what's safe to strip and what am I exposing myself to if I strip too much?
Zac Sweers08/07/2021, 4:13 PM
contains a few things about the kotlin class (namely the kotlin version, metadata version, and a protobuf of metadata itself containing information about the kotlin language features. Only used by the compiler or kotlin-reflect (or kotlinx-metadata)
is related to this, but contain data specific to an entire module rather than specific classes. https://github.com/JetBrains/kotlin/blob/master/libraries/kotlinx-metadata/jvm/ReadMe.md#module-metadata
I believe is a protobuf of kotlin intrinsics like
that kotlin-reflect uses at runtime to load types
is similar to builtins but for metadata and I believe only used by kotlin-reflect or the compiler. I don’t know exactly what’s in these files though that’s different from what’s in
mbonnin08/07/2021, 4:18 PM
breaks top level function and stripping
breaks a few other things that I unfortunately can't remember anymore.
Zac Sweers08/07/2021, 5:05 PM
mbonnin08/07/2021, 5:09 PM
files so I'm not sure Gradle/the Kotlin compiler can look them up.
we keep all of them for instrumentation tests in androidDoes that mean they end up in the production APK too? Users shouldn't need to download all theses bytes?
Zac Sweers08/07/2021, 5:23 PM
mbonnin08/07/2021, 5:27 PM
either. Maybe it's ok though since it's not in the public API so Gradle should not try to do anything with the relocated classes.
Zac Sweers08/07/2021, 5:28 PM