Commit Graph

91263 Commits

Author SHA1 Message Date
Artem Kobzar 804eb61bf0 feat: add polyfills insertion for ES Next used features 2022-02-16 10:49:11 +00:00
Mikhail Glukhikh 76ff717091 FIR2IR: don't create non-lazy fake overrides inside lazy class
This commit allows to calculate member with initial signature properly.
Only lazy IR members are suitable to calculate initial signature.
Before this commit we sometimes built non-lazy children for lazy class.
Now we build lazy children (with an exception of private declarations).
2022-02-16 09:24:12 +00:00
Alexander Likhachev 80a68ec433 [Build] Remove local publishing workaround for configuration cache
#KTI-759 Fixed
2022-02-16 08:28:14 +00:00
Alexander Likhachev 589ddc7b98 Revert "[Gradle] Add IT that useExperimentalAnnotation produces deprecation warn"
This reverts commit 7bb46121
2022-02-16 08:27:46 +00:00
Alexander Likhachev aba495f63c [Gradle] Remove deprecated experimental annotation methods & properties
#KT-47763 Fixed
2022-02-16 08:27:46 +00:00
Pavel Kirpichenkov 0bf6f1eb83 [MPP] Fix default parameter value for optimistic commonization in KGP
KT-51332
2022-02-15 21:29:46 +03:00
Yahor Berdnikau 570da57739 Add 'kotlin.native.distribution.baseDownloadUrl' property
This property will allow customizing Kotlin/Native compiler download
url. For example, useful when company does not allow contacting internet
directly and requires using proxy.

^KT-47746 Fixed
2022-02-15 16:04:51 +01:00
Svyatoslav Scherbina d0a26d1d85 [Gradle, Native] Enable embeddable compiler jar by default
For Kotlin/Native compilations, apply generic (backend-agnostic)
compiler plugin artifacts instead of Native-specific ones by default.

`kotlin.native.useEmbeddableCompilerJar=false` project property allows
switching to the previous legacy behaviour. This flag will be removed
in a future release.

^KT-48595 Fixed
2022-02-15 14:35:56 +00:00
Svyatoslav Scherbina 0c6421d53f Native: switch CLI compiler and tools to embeddable compiler jar
To keep it consistent with Gradle plugin. See ^KT-48595
CLI compiler launched with arguments obtained from Gradle log
should be able to handle plugins.
2022-02-15 14:35:07 +00:00
Dmitriy Novozhilov 4f4755a976 Advance bootstrap to 1.7.0-dev-1816 2022-02-15 14:49:19 +03:00
Hung Nguyen 39b7c6e326 KT-34862: Clean up tests for incremental compilation after cache hit
Make sure that:
  - Compilation with -Pkotlin.incremental.useClasspathSnapshot=true or
    -Dkotlin.incremental.classpath.snapshot.enabled=true is incremental
    after cache hit.
  - Default compilation (using build history files) is non-incremental
    after cache hit.

Also unify the related tests into
BuildCacheRelocationIT.testKotlinIncrementalCompilation*. We don't need
corresponding tests in BuildCacheIT because BuildCacheRelocationIT
already covers it.
2022-02-15 14:05:58 +03:00
Pavel Punegov 33931bf010 [K/N][test] Ignore test that uses JvmInline 2022-02-15 12:41:25 +03:00
Yahor Berdnikau ff3a08de6e Cleanup JVM toolchain implementation
Remove support for <Gradle 6.7 and fix extension method to accept
'JavaToolchainSpec' instead of 'Any'.

^KT-47924 Fixed
2022-02-15 09:36:31 +00:00
Svyatoslav Kuzmich 016143328a [Wasm][Gradle] Enable asyncWebAssembly and topLevelAwait in webpack.
Needed for new async module ESM launchers.

Merge-request: KT-MR-5738
Merged-by: Svyatoslav Kuzmich <svyatoslav.kuzmich@jetbrains.com>
2022-02-15 09:19:05 +00:00
Mikhail Glukhikh 582e8fc9ad Fix PSI consistency test accordingly to changes in RawFirBuilder 2022-02-15 11:48:54 +03:00
Mikhail Glukhikh 2ac2fa5353 Flatten if chains also in LT FIR 2022-02-15 11:48:54 +03:00
Jinseong Jeon bb766a5235 RAW FIR: flatten if chains 2022-02-15 11:48:53 +03:00
Mikhail Glukhikh 5cec068d36 FIR2IR: fix generation of source overridden symbols
This commit makes source overridden and f/o overridden consistent.
2022-02-15 08:40:28 +00:00
Mikhail Glukhikh 74fe603a29 FIR: add IR text test for overrides generation 2022-02-15 08:40:28 +00:00
Ilmir Usmanov 714c5091cc Add regression test for KT-51254
#KT-51254 Fixed
2022-02-15 08:11:21 +01:00
Ilmir Usmanov 00a08fc6a4 Minor. Add tests and comment about copying generic parameters to
constructor, but not function reference to the constructor.

 #KT-32162
2022-02-15 08:11:19 +01:00
Ilmir Usmanov 84ccf412cb Minor. Ignore some tests on old JVM, JS_IR, JS and WASM
#KT-32162
2022-02-15 08:11:18 +01:00
Ilmir Usmanov 2fedb97d16 Correctly map nullable generic underlying value of inline class
if upper bound is primitive type.
 #KT-32162
2022-02-15 08:11:17 +01:00
Ilmir Usmanov 71729ec43c Copy type parameter to function reference
This fixes callable references to inline class with generic underlying
value constructor.
 #KT-32162
2022-02-15 08:11:16 +01:00
Ilmir Usmanov 9bdbbb44cf Do not generate not-null assertions if underlying type is nullable
in case of deep upper bound hierarchy of generic underlying value,
especially when upper bound is another inline class with generic
underlying value.
 #KT-32162
2022-02-15 08:11:15 +01:00
Ilmir Usmanov a7e2f7a6b6 Map nullable type parameter with nullable inline class upper bound
which, in turn, has primitive or nullable underlying type to inline
class.
 #KT-32162
2022-02-15 08:11:15 +01:00
Ilmir Usmanov e8977d77e6 Do not count type parameters of inline class with generic underlying
value twice, when counting type parameters for inner class inside
init block.
 #KT-32162
2022-02-15 08:11:14 +01:00
Ilmir Usmanov cece7120df Minor. Add more tests 2022-02-15 08:11:13 +01:00
Ilmir Usmanov c8817893d4 Support default parameters of inline type with generic underlying value
#KT-32162
2022-02-15 08:11:11 +01:00
Ilmir Usmanov 4f95171472 Minor. Add tests 2022-02-15 08:11:10 +01:00
Ilmir Usmanov 909b455758 Support generic underlying type of inline class in FIR
#KT-32162
2022-02-15 08:11:09 +01:00
Ilmir Usmanov 9060168542 Support generic underlying type of inline class
Use upper bound in JVM representation.
 #KT-32162
2022-02-15 08:11:08 +01:00
Dmitry Petrov 732b8d4067 IR fix isMarkedNullable for DNN types 2022-02-15 05:20:42 +00:00
Dmitry Petrov 4802061b87 JS_IR fix erasedUpperBound for DNN types 2022-02-15 05:20:42 +00:00
Alexander Udalov 7952e8b28f Add JVM target bytecode version 18
#KT-51309 Fixed
2022-02-14 21:21:57 +01:00
Vyacheslav Gerasimov 649f246cef Build: Normalize line separators in components.xml
of kotlin-scripting-dependencies-maven-all jar to produce same binaries
on linux and windows

 #KTI-782
2022-02-14 18:59:06 +03:00
Sergey Igushkin 6cc73a73ce KT-MR-5666 Make CompilationDetails.directlyIncludedSourceSets read-only 2022-02-14 15:05:15 +00:00
Anton Lakotka b3bd92ddaa [Gradle] update testKpmModelMapping to run only MPP + Android tests
Add test config for running KPM model mapping with advanced gradle
version
2022-02-14 15:05:15 +00:00
Sergey Igushkin 7048cc3139 KT-MR-5666 Revert removal of default impl for relatedConfigurationNames 2022-02-14 15:05:14 +00:00
Sergey Igushkin 619381e462 KT-MR-5666 Get the older semantics of compileAllTask & outputs
This doesn't suffer from `compilation.allOutputs` not being configurable
and follows the previous implementation
2022-02-14 15:05:14 +00:00
Sergey Igushkin ce53f347a0 KT-MR-5666 Remove reverse mapping in K/N, as the platforms work in KPM 2022-02-14 15:05:13 +00:00
Sergey Igushkin f3606cdd9e KT-MR-5666 Model mapping: throw clearer error for non-MPP projects 2022-02-14 15:05:13 +00:00
Sergey Igushkin a37217809f KPM: Remove the workaround for excluding Android non-AAR variants
It is no longer needed with custom code for Android variants publication
setup.
2022-02-14 15:05:13 +00:00
Sergey Igushkin a574a1f6d2 KT-MR-5666 SourceSetMappedFragmentLocator
* fix choosing longest module name (did mistakenly choose shortest)
* fix missing return for single-part name
* add unit tests
2022-02-14 15:05:12 +00:00
Sergey Igushkin 5e8c74d3ad KT-MR-5666 Minor fixes, refactorings & formatting 2022-02-14 15:05:12 +00:00
Sergey Igushkin 97bb0110c3 KT-MR-5666 Sane default for newDependencyFilesHolder's dependencyFiles 2022-02-14 15:05:11 +00:00
Sergey Igushkin faf2f3e48d KT-MR-5666 Use SetProperty for artifacts in place of ListProperty 2022-02-14 15:05:11 +00:00
Sergey Igushkin b926f3ea2f KT-MR-5666 Keep dep graph utils internal; reuse transitive closure utils 2022-02-14 15:05:10 +00:00
Sergey Igushkin 7a4d81f87f Model mapping: remove interface delegation in AbstractKotlinCompilation 2022-02-14 15:05:10 +00:00
Sergey Igushkin a81049a180 Model mapping: support Android targets 2022-02-14 15:05:10 +00:00