spierce7
12/31/2021, 4:03 PMiosSimulatorArm64()
target part of the ios()
target yet? Same for tvosSimulatorArm64()
and tvos()
.Sebastian Sellmair [JB]
01/02/2022, 1:19 PMRick Clephas
01/02/2022, 2:19 PMiosMain
source set automatically.
With that in mind how about making the targets of the shortcuts a parameter with a default value?
This way the current behaviour stays the same while it allows developers to easily add an extra target.
Then in a future release the new targets could become part of the default (once most of the libraries have added support for it).spierce7
01/02/2022, 9:19 PMthe benefit of the shortcuts is that you don’t need to configure the source sets100% agree with this.
When using a library that does not support this new target, then upgrading to a new Kotlin Version will just silently break importI mean - it gives you a build error right? That kind of seems like something that comes with the territory. Also - it should be pretty rare in the future that new targets are added, right? I created a ticket about this so that the discussion can be tracked - https://youtrack.jetbrains.com/issue/KT-50615
Sebastian Sellmair [JB]
01/10/2022, 8:44 AMspierce7
01/10/2022, 3:19 PMSebastian Sellmair [JB]
01/10/2022, 4:53 PMspierce7
01/10/2022, 6:06 PMMarc Reichelt
10/21/2022, 8:26 AMios()
situation?
Idea: how about having a flag in gradle.properties
to introduce the behavior change?
1. In the first step ios()
will preserve the old behavior, and the same for having this gradle property set: kotlin.mpp.ios.sourceSetBehavior=legacy
2. By setting kotlin.mpp.ios.sourceSetBehavior=allArchs
we can have ios()
including the arm64 arch (also same for watchos, tvos, the likes)
3. Then, in a future Kotlin version, the new behavior becomes the default
4. After the deprecation cycle is over the flag + old functionality can be removedMarc Reichelt
10/21/2022, 8:29 AMSebastian Sellmair [JB]
10/24/2022, 6:47 AMSebastian Sellmair [JB]
10/24/2022, 6:48 AMSebastian Sellmair [JB]
10/24/2022, 1:29 PM