Mohit Khanna
06/22/2021, 7:55 PMEvan
06/22/2021, 8:15 PMinternal
will help cut down on the iOS binary size.
I’m interested if anyone else has other insights or optimizations!kpgalligan
06/22/2021, 8:20 PMEvan
06/22/2021, 8:27 PMinternal
still the best way to reduce the size of a resulting iOS binary as far as you know?
Has there been any further R&D on this topic?kpgalligan
06/22/2021, 8:27 PMkpgalligan
06/22/2021, 8:31 PMkpgalligan
06/22/2021, 8:34 PMkpgalligan
06/22/2021, 8:35 PMkpgalligan
06/22/2021, 8:36 PMkpgalligan
06/22/2021, 8:37 PMkpgalligan
06/22/2021, 8:38 PMkpgalligan
06/22/2021, 8:38 PMkpgalligan
06/22/2021, 8:39 PMkpgalligan
06/22/2021, 8:40 PMkpgalligan
06/22/2021, 8:40 PMkpgalligan
06/22/2021, 8:44 PMkpgalligan
06/22/2021, 8:44 PMSam
06/22/2021, 8:45 PMkpgalligan
06/22/2021, 8:45 PMkpgalligan
06/22/2021, 8:46 PMK/N binaries must include the Kotlin runtime which will add some weight to the app.Yes, true, but the reason you can't have multiple dependent frameworks, and (I would guess) a reason why you can't do reflection, etc, is because it doesn't include all of the runtime. Just the part you need. Swift used to require the runtime be included, which added ~20m, but apple (and apple devs) knew that was only temporary.
kpgalligan
06/22/2021, 8:47 PMkpgalligan
06/22/2021, 8:48 PMkpgalligan
06/22/2021, 8:50 PMkpgalligan
06/22/2021, 8:51 PMkpgalligan
06/22/2021, 8:54 PMYev Kanivets
06/23/2021, 4:19 AMYev Kanivets
06/23/2021, 4:20 AMPavlo Huk
06/23/2021, 7:24 AMPavlo Huk
06/23/2021, 7:42 AMMohit Khanna
06/23/2021, 6:39 PMkpgalligan
06/24/2021, 11:34 AMhandled at language level in upcoming versionsWell, I would expect the Kotlin team would say
internal
is already in the language. If it's your own code, we recommend doing this now, but obviously there's a limit to this.
combination of annotation and compile time pluginWe've explored this. We tried writing a compiler plugin that would change visibility to
internal
unless annotated. The first major issue is that currently you can't change the visibility of existing classes. We'd need to modify the plugin sdk somewhat. JB has suggested we could do that and submit the changes, but we haven't gone down that road yet. There are bigger issues. You'd want to make sure anything you make visible to objc also has anything it references visible. That includes parameter and return types, specifically referenced generics, etc. Not impossible, but there's certainly room for issues.kpgalligan
06/24/2021, 11:35 AMkpgalligan
06/24/2021, 11:36 AMkpgalligan
06/24/2021, 11:40 AMkpgalligan
06/24/2021, 11:43 AMMohit Khanna
06/24/2021, 8:02 PMkpgalligan
06/24/2021, 8:10 PM