Commit Graph

62683 Commits

Author SHA1 Message Date
Ilya Goncharov 8fbfa8b819 [Gradle, JS] Migrate from singletons to classes 2020-03-06 16:07:11 +03:00
Ilya Goncharov 82de930574 [Gradle, JS] Consider transitivity in cache of npm dependencies 2020-03-06 16:07:11 +03:00
Ilya Goncharov 49814c438c [Gradle, JS] Fix naming 2020-03-06 16:07:10 +03:00
Ilya Goncharov 2eea8b0760 [Gradle, JS] Support transitive mode for npm dependencies
#KT-36196 fixed
2020-03-06 16:07:10 +03:00
Ilya Goncharov d108c8ef51 [Gradle, JS] Move logic of resolving NpmDependency to Npm Api
#KT-36196 fixed
2020-03-06 16:07:10 +03:00
Sergey Igushkin 90f4f5db26 Internal visibility between common source sets in Gradle (KT-37264)
In KotlinCompileCommon, pass the friendPaths and refinesPaths arguments

In KotlinNativeCompilation, add both friend and refined dependencies as
friends for now.

In getVisibleSourceSetsFromAssociateCompilations, exclude the metadata
compilations to avoid incorrect results (those compilations don't have
proper kotlin

Issue #KT-37264 Fixed
2020-03-06 15:56:41 +03:00
Sergey Igushkin 3858c8e1f8 Support friend internal visibility in K2Metadata compiler (KT-37264)
Add and handle the friend paths and refines paths compiler arguments;
Reuse klib dependency module descriptors in the resolver for project;

Issue #KT-37264
2020-03-06 15:56:40 +03:00
Natalia Selezneva 04c924a119 Remove idea-gradle-tooling-api.jar from IDEA 2020
Because gradle-6.1.jar is now bundled into idea-gradle plugin
2020-03-06 14:59:20 +03:00
Natalia Selezneva 33368590e4 KotlinDslScriptsModelResolver: return back requireTaskRunning override
It is required for collecting KotlinDslScriptsModels because we need to run `prepareKotlinBuildScriptModel` task before
2020-03-06 14:59:20 +03:00
Natalia Selezneva d063dbef10 Drop modification stamps for gradle scripts after project import
^KT-36763 Fixed
2020-03-06 14:59:19 +03:00
LepilkinaElena 61f5523805 Added Native-specific checker for properties of top level singletons (#3172) 2020-03-06 14:58:09 +03:00
Dmitry Petrov eba45d4f89 KT-36963 Deparenthesize !! argument when generating expression 2020-03-06 14:55:41 +03:00
Dmitry Petrov 71e4b0c9ad KT-31649 Use 'Any#hashCode' in generated hashCode if class has none 2020-03-06 14:55:40 +03:00
Vladimir Dolzhenko dc6be68a41 Handle properly lambda change in incremental analysis
Fixed #KT-37273
2020-03-06 11:12:33 +01:00
Igor Chevdar 93394656a3 [IR] Supported fake overrides in SAM lowering + enabled test 2020-03-06 12:47:00 +03:00
Georgy Bronnikov 56b983e625 Typo fix 2020-03-06 11:56:15 +03:00
Georgy Bronnikov 18d95bb670 JVM_IR: move BridgeLowering lower, remove special case for default arg stubs 2020-03-06 11:53:53 +03:00
Dmitriy Novozhilov af67aff303 [FIR] Support Clonable
#KT-36762 Fixed
2020-03-06 10:44:14 +03:00
Dmitriy Novozhilov 83d01fbaaa [FIR-TEST] Move fixed test from problems directory 2020-03-06 10:44:14 +03:00
Alexander Podkhalyuzin b6b0819f40 Revert "Since build updated for 193 branch due incompatibility"
This reverts commit 135ae32f
2020-03-06 10:30:49 +03:00
Alexander Podkhalyuzin 135ae32f75 Since build updated for 193 branch due incompatibility 2020-03-06 10:19:04 +03:00
Dmitriy Dolovov 17152899ac IDE perf tests for K/N: Produce duplicated *.kt files on demand 2020-03-06 10:14:54 +07:00
Dmitriy Dolovov 44c8a85241 IDE perf tests for K/N: Don't run tests on inapplicable host OSes 2020-03-06 10:14:47 +07:00
Dmitriy Dolovov 8635045a53 IDE perf tests for K/N: add more tests (Linux, AndroidNative) 2020-03-06 10:14:41 +07:00
Dmitriy Dolovov 80f2c091b4 IDE perf tests for K/N: keep Kotlin & Gradle versions in *.properties 2020-03-06 10:14:34 +07:00
Dmitriy Dolovov c4a89c0201 IDE perf tests for K/N: check successful Gradle project import 2020-03-06 10:14:28 +07:00
Steven Schäfer bb5a639153 JVM IR: Turn static callable references into singletons 2020-03-05 22:19:53 +03:00
Pavel Kirpichenkov ac5c255c20 [NI-TESTS] Add regression tests
^KT-33638 Obsolete

Add test for case mentioned in KT-33629.
Used to be runtime failure instead of error diagnostic.
2020-03-05 20:20:47 +03:00
Pavel Kirpichenkov dc42b20ae3 [NI] Use alternative to intersection type in public declarations
The new inference uses inferred intersection types normally, unlike the old inference.
However, intersection types in public declarations are approximated to supertype, which
potentially may give a less presice type, then it would be with the OI.
For non-related T1, T2 the NI approximates {T1 & T2} to Any in public declarations,
and if the OI was inferring T1 instead of the intersection type, it may lead to
less precise declaration type and related errors.

The solution is to remember an alternative for an intersection type when present.
Before approximation the alternative replaces the intersection type.

^KT-36249 Fixed
2020-03-05 20:20:47 +03:00
Dmitry Petrov 4038c758ca KT-37131 Record default arguments in argument adaptation
Also, don't adapt argument when expected type is base reflection type
(KCallable<T>, etc), since such types don't contain parameter types.
2020-03-05 19:32:39 +03:00
Vyacheslav Gerasimov 7c7245fbb9 Build: Add compiler.version to embedded in JPS sync 2020-03-05 18:10:17 +03:00
Vyacheslav Gerasimov 1cb52861b1 Build: Set captureTaskInputFiles for buildScan 2020-03-05 18:05:54 +03:00
Vyacheslav Gerasimov c77130d0f3 Build: Add test for reporting all gradle build cache misses
`kotlin.build.cache.check.enabled` will be used for cacheability testing
on teamcity
2020-03-05 18:05:54 +03:00
Vyacheslav Gerasimov b3f16cfc96 Build: Add test for dist artifacts manifests and compiler.version 2020-03-05 18:05:53 +03:00
Vyacheslav Gerasimov ebb75813f9 Build: Don't disable incremental compilation for CI
Using different incremental setting for KotlinCompile makes impossible
using caches built on CI since it is marked as @Input. Same property for
JavaCompile marked as @Internal.
We do clean checkout now so it shouldn't matter but we want to build
incrementally in some cases for Dev builds on CI.
2020-03-05 18:05:53 +03:00
Vyacheslav Gerasimov bab87c9837 Build: Extract compiler version to separate module to improve caching
Compiler version changes every build and makes impossible to reuse
caches for heavy tasks such as compiler proguard. We may fix that by
adding version module directly to the final jar.
2020-03-05 18:05:53 +03:00
Vyacheslav Gerasimov c2457cae60 Read KotlinCompilerVersion from resource file
Writing build number into a public constant field leads to poor gradle
cache reuse between different builds. Public constant value is a part of
public api and its changes affect inputs of dependent modules.
Extracting build number to resource file allows to ignore it from
runtime classpath which fixes same problem for KotlinCompile tasks
2020-03-05 18:05:53 +03:00
Vyacheslav Gerasimov f8437743c5 Build: Ignore META-INF/MANIFEST.MF from classpath normalization
We are writing build numbers there which breaks caching
2020-03-05 18:05:52 +03:00
Abduqodiri Qurbonzoda d5c851980c String.toBoolean() should be String?.toBoolean() #KT-14119 2020-03-05 17:53:29 +03:00
Dmitry Savvinov b8b1dd753c Add builtins_platform property to klib manifest 2020-03-05 17:27:38 +03:00
Dmitry Savvinov 8fcd98639d Minor: merge HierarchicalExpectActualMatchingTests into MultiplatformHighlightingTests 2020-03-05 17:27:19 +03:00
Konstantin Tskhovrebov 9eab75650c Remove target name from gradle test filters.
Issue #KT-36909 Fixed
2020-03-05 17:14:49 +03:00
Abduqodiri Qurbonzoda a32f742893 Inherit ReadWriteProperty from ReadOnlyProperty #KT-27729 2020-03-05 16:53:02 +03:00
Dmitriy Novozhilov 3742586209 [FIR-TEST] Unmute some blackbox tests 2020-03-05 16:48:48 +03:00
Dmitriy Novozhilov 2bce279a9e [FIR] Support smartcasts from lhs of boolean operator with jump in rhs 2020-03-05 16:48:48 +03:00
Dmitriy Novozhilov e3e7b40f85 [FIR] Fix determining coercion to Unit 2020-03-05 16:48:48 +03:00
Dmitriy Novozhilov 770dfb69ba [FIR] Analyze all statements in block except last one in independent mode
Some broken tests will be fixed in next commit
#KT-37176 Fixed
2020-03-05 16:48:47 +03:00
Dmitriy Novozhilov 1c728e8184 [FIR] Fix return expressions calculator
There was a problem that if las statement of lambda was a return
  expression from that lambda then result of return counted twice
2020-03-05 16:48:47 +03:00
Dmitriy Novozhilov 5f9876479e [FIR] Add saving of local context in anonymous functions for further resolve
#KT-37066 Fixed
2020-03-05 16:48:47 +03:00
Dmitriy Novozhilov 8023d04c61 [FIR] Add separate local scope for init blocks 2020-03-05 16:48:47 +03:00