Commit Graph

9997 Commits

Author SHA1 Message Date
sebastian.sellmair 00ed41a81e [Gradle][KPM] Implement FragmentGranularMetadataResolverFactory
The logic is intended to be reused in ide import related logic
2021-12-07 17:53:21 +00:00
sebastian.sellmair ea698838dd [Gradle][KPM] Minor: Reuse logic in common toModuleIdentifier function 2021-12-07 17:53:21 +00:00
sebastian.sellmair 66521de4e2 [Gradle][KPM] Minor: FragmentGranularMetadataResolver rename 'metadataExtractor'
This renaming shall disambiguate the projectStructureMetadataExtractor
from the 'metadataProvider'
2021-12-07 17:53:21 +00:00
Mikhael Bogdanov a1262a4ecd Rename JVM default flags 2021-12-06 14:20:25 +01:00
Mikhael Bogdanov ea58c858d1 JvmDefault. Support @JvmDefaultWithCompatibility annotation
#KT-48217 Fixed
2021-12-06 14:20:24 +01:00
Alexander Likhachev 5802ab1342 [Gradle, K/N] Use TCA-compliant API in KotlinNativeTargetConfigurator
#KT-47768 Fixed
2021-12-06 10:37:48 +00:00
Ilya Gorbunov eba6a4a000 KT-44089 Reflect Android SDK version to determine whether platform implementatoins are eligible
SDK version sanity check, suppress all reflection errors, duplicate SDK reflection code for more robustness
2021-12-06 12:24:45 +03:00
Ilya Gorbunov fe77046fe4 KT-44089 Try to use all known PlatformImplementation classes in Android
Currently platform method implementations loaded are limited by the
java.specification.version system property value, however that property
always returns 0.9 in Android.
2021-12-06 12:24:43 +03:00
Ilya Gorbunov 9c90d4e471 KT-50033 Add missing public API packages to module-info and setup a test
The test checks that new packages are not accidentally non-exported,
so each new stdlib package must be either exported or specified in that
test's expected non-exported package list.
2021-12-06 00:58:51 +00:00
Yahor Berdnikau 699671cb82 Ported forward additional changes for TaskOutputsBackup.
^KT-49782 Fixed
2021-12-03 21:24:34 +03:00
Anton Lakotka 550f5cf776 [Gradle] Mute Gradle Configuration Cache test for HMPP projects
Relates to #KT-49933
2021-12-03 17:54:56 +00:00
Anton Lakotka bdb94e282f [Gradle] Remove redundant HMPP Flags from integration tests
These flags are now set by default and hence no longer do any effect:
 * kotlin.mpp.enableGranularSourceSetsMetadata=true
 * kotlin.native.enableDependencyPropagation=false
 * kotlin.mpp.enableHierarchicalCommonization=true
2021-12-03 17:54:56 +00:00
Anton Lakotka c2ef443b0a [Gradle] Fix gradle integration tests after enabling HMPP by default 2021-12-03 17:54:56 +00:00
Anton Lakotka 6fd76a0ae6 [Gradle] Dont fail when resolving MetadataDependencies configuration
When HMPP project depends on non-mpp (ex. java) gradle project
Resolving *MetadataDependencies configurations should not fail due to
lack of Gradle's Kotlin MPP Extension.
Simply return null when no such extension found in non-mpp project.
2021-12-03 17:54:55 +00:00
Anton Lakotka 9a2f18581c [Gradle] Enable HMPP by default
Relates to KT-46721
2021-12-03 17:54:55 +00:00
Alexander Likhachev 1d2e60a2af [Gradle] Measure TESTS_EXECUTED & COMPILATION_STARTED metrics report time 2021-12-03 15:59:48 +00:00
Alexander Likhachev 59b6aefe67 [Gradle] Validate compiler classpath & invoke compiler in single action
#KT-50037 Fixed
2021-12-03 15:59:47 +00:00
Ilya Goncharov 12ea7a9092 [Gradle, JS] Use incremental compilation only for development in IR 2021-12-03 11:59:04 +03:00
Mikhael Bogdanov 0997207c7c Apply -Xjvm-default for specific modules only 2021-12-03 06:39:38 +01:00
Ilya Gorbunov 760e35d3b7 chore: update ant version for docs build 2021-12-02 20:59:46 +03:00
Ilya Gorbunov 64c3aef7ab Reduce the chance shuffle produces an identical permutation in test 2021-12-02 20:58:53 +03:00
Dmitry Petrov d5da130d4b KT-47939 FunInterfaceConstructorReference 2021-12-02 20:28:06 +03:00
Anastasiya Shadrina d47cf315e7 [Metadata] Add context receivers to metadata.proto
[Tests] Add JvmVersionRequirementTest
2021-12-02 20:24:20 +03:00
Anastasiya Shadrina e3f987459c [PSI, FE] Support functional types 2021-12-02 20:24:11 +03:00
Sergej Jaskiewicz 86cabf3bb7 [JS IR] Use Uint16Array as CharArray's storage 2021-12-02 12:39:41 +00:00
Sergej Jaskiewicz 67dfe7bed1 [JS IR] Make Char a value class (again)
#KT-35100 Fixed
2021-12-02 12:39:40 +00:00
Sergej Jaskiewicz 599f705842 [stdlib] Make @LowPriorityInOverloadResolution applicable to ctors 2021-12-02 12:39:40 +00:00
Yahor Berdnikau 2aa1c187d9 Revert "Set minimal supported Gradle version to 6.7.1."
Temporary until 1.6.20 release branching.

This reverts commit 4c3404888a.

^KT-49733 Open
2021-12-02 15:05:54 +03:00
Ilya Muradyan 7283ea86af [scripting] Fix Kotlin reflection metadata for script constructors 2021-12-02 01:49:58 +03:00
mvicsokolova 93561a1a55 kotlinx.atomicfu compiler plugin for JS_IR backend (#4581)
* kotlinx.atomicfu compiler plugin for JS_IR

Support transformations of atomic operations introduced by the kotlinx.atomicfu library for the JS_IR backend. Compiler plugin is applied externally by the kotlinx.atomicfu gradle plugin.

* Apply compiler plugin for JS platform only

* New plugin test structure

* testGroupOutputDirPrefix changed
2021-12-01 22:33:13 +03:00
Viacheslav Kormushkin 077d10edef [KMM] Fixed project import failure in case of cocoapods integration
#KT-49931
2021-12-01 16:30:35 +00:00
Sergej Jaskiewicz e13b6b2a90 [JS IR] [runtime] Remove valueOf method from Long
This method was used for coercing `Long` values to JavaScript
`number`. However, it caused issues when `Long` values were
concatenated to a string (see KT-8666, KT-26706).
2021-12-01 12:36:34 +00:00
Ilya Goncharov 2e350a10bd [Gradle, JS] Windows environment for not ignoring scripts 2021-12-01 09:18:37 +00:00
Ilya Goncharov d4953cb51a [Gradle, JS] Separately add arguments for kotlin npm install
^KT-49902 fixed
2021-12-01 09:18:36 +00:00
Pavel Kunyavskiy 9b366af38b [K/N] Fix String.compareTo on unicode strings
^KT-49873
2021-12-01 07:51:27 +00:00
Alexander Udalov d3e9ea0aae Prepare kotlinx-metadata-jvm 0.4.1 for release 2021-12-01 01:05:22 +01:00
Morten Krogh-Jespersen 544689dc4f Add getter for syntheticMethodForDelegate in JvmExtensions 2021-12-01 01:05:22 +01:00
Alexander Udalov 8a7d86c4e5 Build: remove obsolete argument -Xskip-runtime-version-check
It was removed in KT-41664.
2021-11-30 17:13:10 +01:00
konstantin.tskhovrebov 3dd27b9b1f Add integration tests for new K/N library DSL. 2021-11-30 17:51:58 +03:00
konstantin.tskhovrebov 2e86fbd2b5 Add new DSL for configuring K/N xcframework artifact. 2021-11-30 17:51:57 +03:00
konstantin.tskhovrebov 43fe1e52c9 Add new DSL for configuring K/N fatframework artifact. 2021-11-30 17:51:57 +03:00
konstantin.tskhovrebov 3f40af10dc Add new DSL for configuring K/N framework artifact. 2021-11-30 17:51:56 +03:00
konstantin.tskhovrebov cfdd5673ee Add new DSL for configuring K/N library artifact. 2021-11-30 17:51:56 +03:00
konstantin.tskhovrebov 17fe4f67e5 Add new compilation independent KotlinNativeLinkArtifactTask. 2021-11-30 17:51:55 +03:00
konstantin.tskhovrebov bbc43cde74 Change FileCollection to List<File> for K/N argument builder. 2021-11-30 17:51:54 +03:00
Hung Nguyen 6ba1b2cc08 KT-45777: Don't include classpath snapshot dir in task output backup
for performance reasons: (1) the snapshots are too big, and (2) they are
usually updated only at the end of the task execution--in a failed task
run, they are usually unchanged and therefore don't need to be restored.
2021-11-30 13:59:19 +03:00
Hung Nguyen f52be5f471 KT-45777: Move classpath diffing to incremental Kotlin compiler (2/2)
as we need access to the lookup tracker to compute classpath changes
more efficiently and reduce the size of the saved classpath snapshot.

The previous commit only changed the files' paths, this
commit actually updates the files' contents.

Note that classpath snapshotting still happens in Gradle artifact
transforms. (However, the previous commit also moved the code for
classpath snapshotting together with the code for classpath diffing as
they are closely related.)
2021-11-30 13:59:13 +03:00
Hung Nguyen dfaf195e1d KT-45777: Move classpath diffing to incremental Kotlin compiler (1/2)
This commit only changes the files' paths, the next commit will update
the files' contents.

See the next commit for more context.
2021-11-30 13:59:12 +03:00
konstantin.tskhovrebov 14ee13c72e Register "embedAndSignAppleFrameworkForXcode" anytime but throw error without Xcode environment.
#KT-49971
2021-11-30 08:38:18 +00:00
Ilya Muradyan 6917ff7d2a [scripting] Move earlierScripts to the frontend descriptor
^KT-20488 fixed
2021-11-30 09:11:59 +03:00