Commit Graph

94066 Commits

Author SHA1 Message Date
Anton Lakotka becdb84bbb [Gradle] Replace usage of ResolvedConfiguration to ResolvedDependencyResult
ResolvedConfiguration is a legacy API that doesn't work with
Gradle Configuration Cache.
ResolvedDependencyResult is cacheable but lightweight.
2022-08-05 04:24:57 +00:00
Anton Lakotka ebe7544464 [Gradle] Make evaluation of rootCacheDirectory lazy in Native task
It was broken due to 91779c298e5a819345a09c5bc9cca1b7c4a18797
And this change makes it behave as it was before
adding support for Configuration Cache.
2022-08-05 04:24:57 +00:00
Anton Lakotka edd1d72609 [Gradle] Add support of configuration cache for CInteropProcess 2022-08-05 04:24:56 +00:00
Anton Lakotka 3f94a5ce53 [Gradle] Add Configuration Cache support for native tasks
* Replace `project.provider` that captures `project` inside lambda to
`lazy`. This is a workaround of this bug gradle/issues/20820
* Lift all the settings-like properties that was used during execution
to configuration phase

^KT-43293
2022-08-05 04:24:55 +00:00
Anton Lakotka 508235ce08 [Gradle] Make Kotlin Native tool runners GCC friendly
Remove project usage with either GradleExecutionContext or
associated Settings class.

Set of Setting classes are meant to be created upon configuration phase.
Therefore, they have to be easily serializable without heavy
payload. They also annotated for Input/Output checks.

^KT-43293
2022-08-05 04:24:55 +00:00
Anton Lakotka c6d32f7a60 [Gradle] Config Cache for platform commonizer task
^KT-49933
2022-08-05 04:24:54 +00:00
Anton Lakotka e8040fcf77 [Gradle] Replace project with GradleExecutionContext in KotlinToolRunner
Gradle Project cannot be used during Task Execution Phase with enabled
Configuration Cache. This change allows to avoid using Project.

^KT-43293
2022-08-05 04:24:53 +00:00
Alexander Likhachev ce72948a21 [Gradle] Remove the system property for compiler execution strategy
#KT-51831 Fixed
2022-08-04 23:28:37 +00:00
Simon Ogorodnik 2a16fe1d0f FIR: Fix overloading by type-arguments
In K1, upper bound violated causes candidate to have lower applicability
due to constraint errors, in K2 however constraint errors has to be
reported explicitly
2022-08-04 22:56:08 +02:00
Artem Kobzar 2d85eddeb9 [FIR] test: add a test case for reified inline functions with a same name in different packages. 2022-08-04 22:56:07 +02:00
Denis.Zharkov 11a26e540e Revert "KT-35811: Type parameter angle brackets followed by equal sign are parsed incorrectly if whitespace is missing"
This reverts commit a2077f9063.
2022-08-04 17:50:00 +02:00
Denis.Zharkov 2ae2a7e442 Revert "KT-8263: Conditional operators are not parsed correctly"
This reverts commit 85800b4f9f.
2022-08-04 17:49:42 +02:00
Ilya Kirillov 6be2483824 [Analysis API FIR] rethrow IndexNotReadyException 2022-08-04 14:33:44 +00:00
Igor Chevdar 5078d2eed8 [K/N] Added new output kind (will be used later)
PRELIMINARY_CACHE only builds additional (IR-based) info for a cache,
will be used later in per-file caches
2022-08-04 14:12:06 +00:00
Igor Chevdar b82554dea1 [utils][K/N] Added some util functions to File 2022-08-04 14:12:05 +00:00
Iven Krall 85800b4f9f KT-8263: Conditional operators are not parsed correctly 2022-08-04 11:24:09 +00:00
Iven Krall a2077f9063 KT-35811: Type parameter angle brackets followed by equal sign are parsed incorrectly if whitespace is missing 2022-08-04 11:24:08 +00:00
konstantin.tskhovrebov 9bec1a6358 [KT-53340] Cocoapods: change default framework linking type to DYNAMIC. 2022-08-04 10:08:37 +00:00
konstantin.tskhovrebov c12318a62e [KT-53340] Cocoapods fix: use 'schemeName' for pod build task name.
Project with several same subspecs was broken but test was green by accidence.
2022-08-04 10:08:36 +00:00
konstantin.tskhovrebov 96c0796296 [KT-53340] Cocoapods fix: configure linker for default frameworks.
There was a hidden problem: linker options was applied
only if `framework` dsl was used.
2022-08-04 10:08:35 +00:00
konstantin.tskhovrebov b58d2d72e7 [KT-53340] Cocoapods fix: apply config only to registered frameworks. 2022-08-04 10:08:35 +00:00
konstantin.tskhovrebov c37017641a [KT-53340] Cocoapods: delete deprecated frameworkName property. 2022-08-04 10:08:34 +00:00
konstantin.tskhovrebov 02e192c08a [KT-53340] Cocoapods: use framework name and linking type providers.
Providers don't require synchronization between real framework attribute
and local value.
2022-08-04 10:08:33 +00:00
Pavel Kirpichenkov 2a43247a8f [MPP] Remove explicit compilation config names from tests
KT-49877
2022-08-04 09:02:49 +00:00
Pavel Kirpichenkov 23151a5295 [MPP] Add android target to the name clash test
KT-49877
2022-08-04 09:02:48 +00:00
Pavel Kirpichenkov 5536cf1df1 [MPP] Update Android associate compilation dependencies handling
Don't add associate dependencies to test runtime classpath as it's managed by AGP
and might lead to duplicate dependencies and runtime problems.

KT-49877
2022-08-04 09:02:48 +00:00
Pavel Kirpichenkov 857d8aa8ae [MPP] Fix Android test-on-main dependencies
Add dependencies from associated compilations conventionally
for Android, as it's done for all other multiplatform targets.
It used to work unintentionally before because of the configuration
name clash between test compilation and its default source set.

KT-35916
KT-49877
2022-08-04 09:02:47 +00:00
Pavel Kirpichenkov 69bb85f71f [MPP] Disambiguate compilation and source set configurations
Add 'compilation' postfix to configuration names of compilations.
This is necessary to distinguish them from source set ones.
Without the change, default source sets of test compilations
and the test compilations themselves have the same name.
For instance, jvmTestImplementation was interpreted as
a configuration for a source set jvmTest and a compilation
with the same name. This leads to incorrect configuration
hierarchies and unexpected dependencies in them.

KT-35916
KT-49877
2022-08-04 09:02:44 +00:00
Ilya Gorbunov f91ea4b4d9 Add more tests for 'contains' in ranges #KT-52933
- ranges produced by 'rangeUntil' operator
- ranges of unsigned values
- more elements in ranges produced by `downTo`
2022-08-03 22:18:14 +00:00
Ilya Gorbunov a044555299 Do not run rangeUntil operator tests in old JVM BE #KT-52933 2022-08-03 22:18:12 +00:00
Sergej Jaskiewicz 5e34ae5e0d [IR] Print annotations in source range compiler tests 2022-08-03 16:45:56 +00:00
Sergej Jaskiewicz 9dc7fe24f6 [psi2ir] Emit source info for annotation parameters
We need this in the JS IR backend for annotations like
@JsFun and @JsPolyfill
2022-08-03 16:45:55 +00:00
Ilya Gorbunov 5fc6097eb6 Mark backing fields of rarely used charsets volatile #KT-53134 2022-08-03 15:51:18 +00:00
konstantin.tskhovrebov 20ed72152b [KT-53131] XCFramework: add missing watchosX86 target. 2022-08-03 17:48:44 +02:00
Aleksei.Cherepanov 92551b7685 Prevent overwriting output dir to empty string
#KTIJ-921 Fixed

Co-authored-by: Alexander Udalov <Alexander.Udalov@jetbrains.com>

Merge-request: KT-MR-6183
Merged-by: Aleksei Cherepanov <aleksei.cherepanov@jetbrains.com>
2022-08-03 14:46:32 +00:00
Artem Kobzar b9a80284c8 [K/JS] fix(TS): save type hierarchy for exported classes. 2022-08-03 14:16:30 +00:00
Svyatoslav Scherbina ce6c8a51ba Native: fix @ExportObjCClass with the new memory manager
Previous implementation of `@ExportObjCClass` relied on the fact that
initialization of top-level fields was eager, i.e. happened during
Kotlin runtime initialization, when Kotlin code is accesses for the
first time.

With the new MM, initialization of top-level fields became lazy, it
happens when the particular file is accessed for the first time.

This commit fixes `@ExportObjCClass` with the new MM by making the
initialization of particular top-level fields eager.

^KT-53373 Fixed
2022-08-03 12:40:02 +00:00
Dmitriy Novozhilov 70da19bd22 [Lombok K2] Fix name convention for @With on boolean fields
^KT-53451 Fixed
^KT-53370
2022-08-03 13:46:24 +03:00
Dmitriy Novozhilov 11f8e776af [Lombok K2] Fix generating @With methods for final fields
^KT-53370
2022-08-03 13:46:24 +03:00
Dmitriy Novozhilov 637d7678b8 [Lombok K1] Fix name convention for @With on boolean fields
^KT-53370 Fixed
2022-08-03 13:46:24 +03:00
Mikhail Glukhikh 166965e559 K2: fix internal visibility checks for overrides #KT-53197 Fixed 2022-08-03 07:52:14 +00:00
Sergey Bogolepov 40e3e9f6c7 [K/N] Disable compiler caches in case of -Xruntime-logs= flag
Otherwise compiler just ignores the flag.
2022-08-03 07:16:40 +00:00
Jinseong Jeon 009182af63 FIR LC: use the data path from the test base 2022-08-03 08:57:37 +02:00
Jinseong Jeon fc2f4d814e FIR LC: test exact annotation owner kind 2022-08-03 08:57:37 +02:00
Jinseong Jeon 91946651d2 FIR LC: fix potentially ignored visit in light parameter 2022-08-03 08:57:37 +02:00
Jinseong Jeon 199219483e FIR LC: set modifier list as a parent of light annotations
^KTIJ-22354 Fixed
2022-08-03 08:57:37 +02:00
Jinseong Jeon 79030c9252 FIR LC: remove redundant util in tests 2022-08-03 08:57:36 +02:00
Steven Schäfer 03aee58585 JVM IR: Avoid IrComposite in ReturnableBlockLowering (KT-53202) 2022-08-03 00:19:31 +02:00
konstantin.tskhovrebov c974ff8965 [KT-53392] Cocoapods: fix gradle task inputs. 2022-08-02 18:51:34 +02:00
Jinseong Jeon 6b0a5e2908 AA: register LLFir(Library|Builtin)SessionFactory 2022-08-02 17:33:45 +02:00