Commit Graph

80925 Commits

Author SHA1 Message Date
Nikolay Krasko a5e445492f Move Bintray js-externals to Space (KTI-528) 2021-03-26 21:08:46 +03:00
Nikolay Krasko b903f87704 Drop kotin/kotlinx and kotlin/kotlinx.html bintray usages (KTI-528) 2021-03-26 21:08:45 +03:00
Nikolay Krasko 998a65d1cb Bump version of kotlinx.benchmark plugin 0.2.0-dev-7 -> 0.3.0 (KTI-528) 2021-03-26 21:08:43 +03:00
Nikolay Krasko 455773299b Minor: investigate j2objc-annotations:1.1 verification trace 2021-03-26 21:08:41 +03:00
Alexander Udalov c17b6c59f8 JVM IR: add isInlineClassType, use it instead of isInlined 2021-03-26 18:57:01 +01:00
Alexander Shabalin 770401801b Implement freezing in the new MM
Currently, it uses suboptimal storage for the freeze bit. This'll be revised later when we finalize stack objects handling in the new MM.
2021-03-26 15:00:14 +00:00
Mikhail Glukhikh 295858cf5c Rename FIR diagnostic to METHOD_OF_ANY_IMPLEMENTED_IN_INTERFACE 2021-03-26 17:06:00 +03:00
Mikhail Glukhikh 7d4b8587a3 Unite checks around supertypes in FirPrimaryConstructorSuperTypeChecker 2021-03-26 17:05:58 +03:00
Mikhail Glukhikh 221b6bd184 Drop usages of FirErrors.TYPE_PARAMETER_AS_SUPERTYPE 2021-03-26 17:05:57 +03:00
Aleksei.Cherepanov c74f471a82 Fix performance problem in KotlinTargetsIndex creation
Creation of KotlinTargetsIndex takes too long,
even if Java project doesn't have any Kotlin files.
Remove function hasJsStdLib, as it takes too much time
because of recursively checking all dependencies (migrate to facets)
Also fix tests: Add Kotlin JS facet, where its needed

#KT-34351 Fixed
2021-03-26 15:46:56 +03:00
Jinseong Jeon bfc7eb7bab FIR checker: fix REFERENCE_BY_QUALIFIED positioning strategy to consider callable reference 2021-03-26 15:19:10 +03:00
Jinseong Jeon 8d8ed4cc18 FIR checker: check if callable reference targets are allowed members 2021-03-26 15:19:10 +03:00
Tianyu Geng 6769ce0e2b FIR checker: check TOPLEVEL_TYPEALIASES_ONLY 2021-03-26 15:19:10 +03:00
Tianyu Geng 6ca005cd70 FIR IDE: fix IDE exception in presence of non-top-level type alias
Finding type alias doesn't work if it's not top level because the class
ID doesn't match. There doesn't seem to be a easy way to make it work
so this commit simply makes the IDE tolerate it.
2021-03-26 15:19:09 +03:00
Ivan Gavrilovic 19708cfa87 KAPT: Avoid evaluating apOptions from AGP too early
This is causing issues such as https://issuetracker.google.com/183423660.
Annotation processor options that are provided by the Android Gradle plugin
may contain references to files and file collections that are safe to
evaluate only at execution time. This change avoids eagerly creating
compiler plugin options for these options, as they are already a task input.

Test: AbstractKotlinAndroidGradleTests.testAgpNestedArgsNotEvaluatedDuringConfiguration

^KT-39715 In Progress
2021-03-26 15:14:35 +03:00
Ilya Kirillov 1123f97a15 FIR: ensure declaration is resolved to types in FirStandardOverrideChecker 2021-03-26 12:54:28 +01:00
Anton Yalyshev f7829d0bea Add change-notes for 1.5-M2 release 2021-03-26 14:08:58 +03:00
sebastian.sellmair e232a2be6c CommonizeLibcurlTest: Provide necessary native distribution dependencies 2021-03-26 10:55:25 +00:00
sebastian.sellmair 2b7866402d [Commonizer] Move KonanDistribution to :native:kotlin-klib-commonizer-api 2021-03-26 10:55:24 +00:00
sebastian.sellmair 6e3b1fd919 [Commonizer] RootMerger: Change priorities for typeResolver
This will prioritize classifiers from the following sources
in the provided order

1) Classifiers from the target's modulesProvider
2) Classifiers from the traget's direct dependencies
3) Classifiers from the more common dependencies
2021-03-26 10:55:24 +00:00
sebastian.sellmair 914ce22f6b [Minor] CommonizerIT: Optimize imports 2021-03-26 10:55:23 +00:00
sebastian.sellmair a0557ad937 CommonizerIT: Implement test commonizeInterop using posix APIs
^KT-45497
2021-03-26 10:55:22 +00:00
sebastian.sellmair 7f9fe6b332 [Commonizer] CInteropCommonizerTask: Provide custom/commonized native distribution dependencies
^KT-45497 Fixed
2021-03-26 10:55:22 +00:00
sebastian.sellmair e44877f562 [Commonizer] LibraryCommonizer: Allow passing dependencies for a shared target 2021-03-26 10:55:21 +00:00
sebastian.sellmair 096e715652 [Commonizer] Split CirTreeMerger into composable 'Mergers' 2021-03-26 10:55:21 +00:00
Ilya Chernikov 2f49e8e0af Fix parameter index on IR script generation in REPL scenario
Before it, the wrong index lead to the validation error when repl
script definition had c-tor parameters (see test)
2021-03-26 11:41:24 +01:00
Mikhail Glukhikh 648bf99842 FIR: temporarily drop parent manipulation code around super type entries 2021-03-26 13:05:42 +03:00
Jinseong Jeon ff4d193891 FIR checker: utilize unsubstitutedScope creation 2021-03-26 13:05:41 +03:00
Jinseong Jeon 9934cfbb00 FIR2IR: minimize scope processing in fake override generation 2021-03-26 13:05:41 +03:00
Jinseong Jeon c830aed946 FIR2IR: minimize scope processing in data class synthetic member generation 2021-03-26 13:05:41 +03:00
Ilya Matveev 22d6433cf6 [K/N][Gradle plugin] Do not propagate user.dir property to tools
In a Gradle process, the user.dir property is set to the directory
where the build was started. By default, if we start a child process
via project.javaexec, Gradle sets its working directory to the
directory of the current project. But passing Gradle's value of user.dir
to that process overrides this setting.

This makes tools started in a such way sensitive to directory the build
is started from.

This patch fixes this issue for K/N-related tools started
out-of-process by the MPP Gradle plugin. But this issue is still
relevant to in-process tool execution.
2021-03-26 12:38:28 +03:00
Ilya Matveev e56ac775ca [K/N][tests] Do not propagate user.dir property to compiler/cinterop
In a Gradle process, the user.dir property is set to the directory
where the build was started. By default, if we start a child process
via project.javaexec, Gradle sets its working directory to the
directory of the current project. But passing Gradle's value of user.dir
to that process overrides this setting.

This makes tools started in a such way sensitive to directory the build
is started from. Thus a test using relative paths may fail if it is
started from a wrong directory.

This patch fixes this issue for Kotlin/Native tests.
2021-03-26 12:38:27 +03:00
Victor Petukhov 9c38db754e Add compiler flag to enable strict mode for improvements in the type enhancement
^KT-45674 Fixed
2021-03-26 11:04:01 +03:00
Victor Petukhov 731e3ebae1 Rename LV ImprovementsAroundTypeEnhancement into TypeEnhancementImprovementsInStrictMode 2021-03-26 11:03:49 +03:00
nataliya.valtman df08ed2ac0 Recompile files which import companion constant
#KT-44741 Fixed
2021-03-26 10:27:52 +03:00
Ilya Kirillov 5485c372e8 FIR IDE: stop on fist exception in project perf tests 2021-03-25 20:53:53 +01:00
Ilya Kirillov 211ddd307c FIR IDE: highlight file before completion in perf test 2021-03-25 20:53:52 +01:00
Ilya Kirillov 49a4ec7f92 FIR IDE: add perf tests for completion 2021-03-25 20:53:51 +01:00
Ilya Kirillov a4cf21adef Add perf the same project perf tests used for FIR for fe10 plugin 2021-03-25 20:53:50 +01:00
Roman Golyshev a22a6b4338 FIR IDE: add basic project performance test 2021-03-25 20:53:49 +01:00
Ilya Kirillov baad0d698f FIR IDE: do not create KtFunctionalType by type-aliased functional type 2021-03-25 20:53:29 +01:00
Nikolay Krasko ddc12834cb Add dependency verification description to ReadMe.md 2021-03-25 21:53:27 +03:00
Vladimir Dolzhenko 51393d2d0f Fix compilation 2021-03-25 16:23:01 +01:00
Ilmir Usmanov 5e6f52009f JVM IR: IC coroutines: return boxed type from suspend function if
the function overrides function, returning type argument
 #KT-45451 Fixed
2021-03-25 16:21:55 +01:00
Simon Ogorodnik 0aca68e7c7 FIR: Add init time measurement to full pipeline 2021-03-25 18:05:51 +03:00
Pavel Punegov 991e5210ba Simplify further support for simulators by using target family 2021-03-25 13:06:13 +00:00
Pavel Punegov 5acd72d5a5 Update simulators: use fresh targets 2021-03-25 13:06:13 +00:00
Pavel Punegov 39b11f6ef0 Create simulator device in case it is missing on the host 2021-03-25 13:06:12 +00:00
sebastian.sellmair ad7c8b7a07 KotlinToolingMetadata: Disable 'kotlin.mpp.enableKotlinToolingMetadataArtifact' by default 2021-03-25 15:16:08 +03:00
sebastian.sellmair 37aedba7ef KotlinToolingMetadata: Handle incompatible schemaVersions during json parsing 2021-03-25 15:16:07 +03:00