They were used to prevent older compiler versions from using specific API, but now these versions are even older than the first compiler version (namely 1.6) that can read this stdlib.
New stub version forces reindex & reimport for JPS-based projects,
making their compiler plugin libs consisten with the bundled JPS
compiler
^KTIJ-21982
^KT-52741 Verification Pending
This change leads to reproducible outputs when extracting zips
using this function.
KT-52741 in particular was invoking this function
during metadata transformation rendering the extracted klibs
as different between builds.
e.g.:
1.6.20-dev-myWildcard-510 (build number 510)
1.6.20-dev-myWildcard (no build number)
1.6.20-dev-myWildcard510 (no build number)
1.6.20-dev-google-pr210-510 (build number 510)
When loading default libraries, the code assumed that all subdirectories
of <kotlin native home>/klib/*/ corresponded to valid libraries. The bug
report only considers the case of .DS_STORE, which is generated by
Finder on MacOS, but this case has already been accounted for in the
code.
The fix filters out all subdirectories that are not stdlib and don’t have the
“org.jetbrains.kotlin” prefix.
Co-authored-by: Troels Lund <troels@google.com>
Adding -Xbundle-version and -Xbundle-short-version-string
compiler arguments. These can be used in the freeCompilerArgs
in the gradle configuration to control the version strings
in the Info.plist in generated frameworks.
```
version = "1.0"
macosX64("native") {
binaries.framework {
compilation.kotlinOptions.freeCompilerArgs += "-Xbundle-version=$version"
}
}
```
^KT-33117 Fixed.
Maybe in the future we could remove type from the
KtImplicitReceiverValue, because it has ktSymbol, and in theory
that should be enough to create corresponding KtType.
Unfortunately that is not the case for KtClassOrObjectSymbol --
it doesn't have the API for "default" type creation currently.
Regarding code in KtFirCallResolver.kt -- it seems like code there
needs some love in the future. Psi created via custom code there,
because for call x() FIR has receiver x with psi = null
But still cherry-pick them when serializing builtins because they are
used in builtins signatures.
Merge-request: KT-MR-6488
Merged-by: Ilya Gorbunov <Ilya.Gorbunov@jetbrains.com>